Changeset 929


Ignore:
Timestamp:
01/09/08 21:10:59 (11 years ago)
Author:
ray
Message:
  • #1115 Dialogs not working on firefox 3
  • #1127 InsertImage? and probably other things using insertNodeAtSelection() not working in FF3
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/Extended.html

    r901 r929  
    9797    body_height = pos.y + bottom.offsetHeight; 
    9898  } 
    99   window.dialogArguments = opener.Dialog._arguments; 
     99  if (!window.dialogArguments && opener.Dialog._arguments) 
     100  { 
     101    window.dialogArguments = opener.Dialog._arguments; 
     102  } 
    100103  if (!document.all) { 
    101104    window.sizeToContent(); 
  • trunk/examples/ext_example-menu.php

    r901 r929  
    111111 
    112112function Dialog(url, action, init) { 
    113   if (typeof init == "undefined") { 
    114     init = window;      // pass this window object by default 
    115   } 
    116   Dialog._geckoOpenModal(url, action, init); 
     113        if (typeof init == "undefined") { 
     114                init = window;  // pass this window object by default 
     115        } 
     116        if (typeof window.showModalDialog == 'function') 
     117        { 
     118                Dialog._return = action; 
     119                var r = window.showModalDialog(url, init, "dialogheight=10;dialogheight=10;scroll=no;resizable=yes"); 
     120        } 
     121        else 
     122        { 
     123                Dialog._geckoOpenModal(url, action, init); 
     124        } 
    117125}; 
    118126 
  • trunk/modules/Dialogs/dialog.js

    r694 r929  
    2828                init = window;  // pass this window object by default 
    2929        } 
    30         Dialog._geckoOpenModal(url, action, init); 
     30        if (typeof window.showModalDialog == 'function') 
     31        { 
     32                Dialog._return = function(retVal) { 
     33                        if (typeof action == 'function') action (retVal); 
     34                } 
     35                var r = window.showModalDialog(url, init, "dialogheight=10;dialogwidth=10;resizable=yes"); 
     36        } 
     37        else 
     38        { 
     39                Dialog._geckoOpenModal(url, action, init); 
     40        } 
    3141} 
    3242 
  • trunk/modules/Gecko/Gecko.js

    r901 r929  
    396396Xinha.prototype.insertNodeAtSelection = function(toBeInserted) 
    397397{ 
     398  if ( toBeInserted.ownerDocument != this._doc ) // as of FF3, Gecko is strict regarding the ownerDocument of an element 
     399  { 
     400    try  
     401        { 
     402                toBeInserted = this._doc.adoptNode( toBeInserted ); 
     403        } catch (e) {} 
     404  } 
    398405  var sel = this.getSelection(); 
    399406  var range = this.createRange(sel); 
     
    404411  var pos = range.startOffset; 
    405412  var selnode = toBeInserted; 
     413   
    406414  switch ( node.nodeType ) 
    407415  { 
  • trunk/plugins/ExtendedFileManager/assets/dialog.js

    r677 r929  
    1616 
    1717function Dialog(url, action, init) { 
    18     if (typeof init == "undefined") { 
    19         init = window;  // pass this window object by default 
    20     } 
    21     Dialog._geckoOpenModal(url, action, init); 
     18        if (typeof init == "undefined") { 
     19                init = window;  // pass this window object by default 
     20        } 
     21        if (typeof window.showModalDialog == 'function') 
     22        { 
     23                Dialog._return = action; 
     24                var r = window.showModalDialog(url, init, "dialogheight=10;dialogwidth=10;resizable=yes"); 
     25        } 
     26        else 
     27        { 
     28                Dialog._geckoOpenModal(url, action, init); 
     29        } 
    2230} 
    2331 
  • trunk/plugins/ImageManager/assets/dialog.js

    r677 r929  
    1919                init = window;  // pass this window object by default 
    2020        } 
    21         Dialog._geckoOpenModal(url, action, init); 
     21        if (typeof window.showModalDialog == 'function') 
     22        { 
     23                Dialog._return = action; 
     24                var r = window.showModalDialog(url, init, "dialogheight=10;dialogwidth=10;resizable=yes"); 
     25        } 
     26        else 
     27        { 
     28                Dialog._geckoOpenModal(url, action, init); 
     29        } 
    2230} 
    2331 
  • trunk/popups/popup.js

    r877 r929  
    5555    head.appendChild(link); 
    5656  } 
    57         window.dialogArguments = opener.Dialog._arguments; 
     57  if (!window.dialogArguments && opener.Dialog._arguments) 
     58  { 
     59    window.dialogArguments = opener.Dialog._arguments; 
     60  } 
     61   
    5862 
    5963  var page = Xinha.pageSize(window); 
Note: See TracChangeset for help on using the changeset viewer.