Bug 642404 <autocomplete disablehistory="false"> displays incorrectly on Linux; switch SeaMonkey (and Thunderbird) to use enablehistory="true" instead r=Standard8 a=LegNeato
authorNeil Rashbrook <neil@parkwaycc.co.uk>
Thu, 14 Apr 2011 00:38:25 +0100
changeset 63430 5c6fac18848d5b55833394ba996125b4d91238c8
parent 63429 dbbd7e5541cf5b3ee9ec42a4a4a77bd27023a698
child 63431 647a0e97f960299c77b8c9c7fb1f648e25fcf8bd
push id72
push userneil@parkwaycc.co.uk
push dateWed, 13 Apr 2011 23:38:42 +0000
reviewersStandard8, LegNeato
bugs642404
milestone2.0.1pre
Bug 642404 <autocomplete disablehistory="false"> displays incorrectly on Linux; switch SeaMonkey (and Thunderbird) to use enablehistory="true" instead r=Standard8 a=LegNeato DONTBUILD
xpfe/components/autocomplete/resources/content/autocomplete.css
xpfe/components/autocomplete/resources/content/autocomplete.xml
--- a/xpfe/components/autocomplete/resources/content/autocomplete.css
+++ b/xpfe/components/autocomplete/resources/content/autocomplete.css
@@ -12,16 +12,24 @@
 .autocomplete-result-popup[hidden="true"] {
   visibility: hidden;
 }
 
 .autocomplete-tree {
   -moz-user-focus: ignore;
 }
 
+.autocomplete-history-dropmarker {
+  display: none;
+}
+
+.autocomplete-history-dropmarker[enablehistory="true"] {
+  display: -moz-box;
+}
+
 /* The following rule is here to fix bug 96899 (and now 117952).  
    Somehow trees create a situation
    in which a popupset flows itself as if its popup child is directly within it
    instead of the placeholder child that should actually be inside the popupset.
    This is a stopgap measure, and it does not address the real bug.  */
 popupset {
   max-width: 0px;
   width: 0px;
--- a/xpfe/components/autocomplete/resources/content/autocomplete.xml
+++ b/xpfe/components/autocomplete/resources/content/autocomplete.xml
@@ -24,17 +24,17 @@
           <html:input anonid="input" class="autocomplete-textbox textbox-input"
                       flex="1" allowevents="true"
                       xbl:inherits="tooltiptext=inputtooltiptext,onfocus,onblur,value,type,maxlength,disabled,size,readonly,placeholder,tabindex,accesskey,mozactionhint,userAction"/>
         </xul:hbox>
         <children includes="hbox"/>
       </xul:hbox>
 
       <xul:dropmarker class="autocomplete-history-dropmarker" allowevents="true"
-                      xbl:inherits="open,hidden=disablehistory" anonid="historydropmarker"/>
+                      xbl:inherits="open,enablehistory" anonid="historydropmarker"/>
 
       <xul:popupset>
         <xul:panel type="autocomplete" anonid="popup"
                    ignorekeys="true" noautofocus="true" level="top"
                    xbl:inherits="for=id,nomatch"/>
       </xul:popupset>
       
       <children includes="menupopup"/>
@@ -50,17 +50,16 @@
 
         // listen for menubar activation
         window.top.addEventListener("DOMMenuBarActive", this.mMenuBarListener, true);
 
         // set default property values
         this.ifSetAttribute("timeout", 50);
         this.ifSetAttribute("maxrows", 5);
         this.ifSetAttribute("showpopup", true);
-        this.ifSetAttribute("disablehistory", true);
         this.ifSetAttribute("disableKeyNavigation", true);
         
         // initialize the search sessions
         if (this.hasAttribute("autocompletesearch"))
           this.initAutoCompleteSearch();
         if (this.hasAttribute("searchSessions"))
           this.initSearchSessions();
         
@@ -1003,17 +1002,17 @@
               if (!aEvent.altKey) {
                 this.clearTimer();
                 killEvent = this.keyNavigation(aEvent);
                 break;
               }
             // Alt+Down falls through to history popup toggling code
               
             case KeyEvent.DOM_VK_F4:
-              if (!aEvent.ctrlKey && !aEvent.shiftKey && this.getAttribute("disablehistory") != "true") {
+              if (!aEvent.ctrlKey && !aEvent.shiftKey && this.getAttribute("enablehistory") == "true") {
                 var historyPopup = document.getAnonymousElementByAttribute(this, "anonid", "historydropmarker");
                 if (historyPopup)
                   historyPopup.showPopup();
                 else
                   historyPopup.hidePopup();
               }
               break;
             case KeyEvent.DOM_VK_PAGE_UP: