alecpl
2009-04-09 432a614ab6e01ea5bd8876a267de67a9ee3fd544
- Fix drag&drop with scrolling on IE (#1485786)


3 files modified
14 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/js/app.js 11 ●●●●● patch | view | raw | blame | history
program/js/list.js 2 ●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail
===========================
- Fix drag&drop with scrolling on IE (#1485786)
- Fix adding signature separator in html mode (#1485350)
- Fix opening attachment marks message as read (#1485803)
- Fix 'temp_dir' does not support relative path under Windows (#1484529)
program/js/app.js
@@ -53,7 +53,6 @@
  this.env.bin_path = './bin/';
  this.env.blankpage = 'program/blank.gif';
  // set environment variable(s)
  this.set_env = function(p, value)
    {
@@ -1182,6 +1181,9 @@
  this.drag_start = function(list)
  {
       this.initialBodyScrollTop = bw.ie ? 0 : window.pageYOffset;
       this.initialMailBoxScrollTop = document.getElementById("mailboxlist-container").scrollTop;
    var model = this.task == 'mail' ? this.env.mailboxes : this.env.address_sources;
    this.drag_active = true;
@@ -1213,10 +1215,17 @@
    {
    if (this.gui_objects.folderlist && this.env.folder_coords)
      {
      // offsets to compensate for scrolling while dragging a message
      var boffset = bw.ie ? -document.documentElement.scrollTop : this.initialBodyScrollTop;
      var moffset = this.initialMailBoxScrollTop-document.getElementById('mailboxlist-container').scrollTop;
      var toffset = -moffset-boffset;
      var li, pos, mouse;
      mouse = rcube_event.get_mouse_pos(e);
      pos = this.env.folderlist_coords;
      mouse.y += toffset;
      // if mouse pointer is outside of folderlist
      if (mouse.x < pos.x1 || mouse.x >= pos.x2 
        || mouse.y < pos.y1 || mouse.y >= pos.y2)
program/js/list.js
@@ -774,7 +774,7 @@
  if (this.drag_active && this.draglayer)
  {
    var pos = rcube_event.get_mouse_pos(e);
    this.draglayer.move(pos.x+20, pos.y-5);
    this.draglayer.move(pos.x+20, bw.ie ? pos.y-5+document.documentElement.scrollTop : pos.y-5);
    this.trigger_event('dragmove', e);
  }