<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=windows-1252">
  </head>
  <body smarttemplateinserted="true" bgcolor="#FFFFFF" text="#000000">
    <div id="smartTemplate4-template">
      <p><br>
      </p>
      <p>
        <blockquote type="cite"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">What
            other features do we depend on in XUL that I haven't listed?</span></blockquote>
        As Addon authors, overlays. And modeless dialogs of course. <br>
      </p>
      <p>I have a very important use case in that I overlay the
        _modeless_ password manager which should be floating across the
        current web page tab. The concept of a topmost, modeless window
        is very important IMHO as it clearly delineates between content
        (the insecure stuff that lives within the browser tab) and
        protected data (the chrome layer). I do not particularly want my
        passwords even just "seemingly" living on a floating panel
        within a content tab (even if iframe borders protect it).</p>
      <p>Another use case is a modeless option dialog (which I often use
        in Thunderbird addons) that is used to style the look of the
        host application GUI in real time. In Thunderbird, if this would
        be banished to a content tab, you would actually loose the
        context (a toolbar that is only visible in 3pane mode) and thus
        a preview into the changes that you are doing from the dialog. <br>
      </p>
      <p>I have am also doing this with a restartless
        Firefox/Thunderbird addon which introduces a topleftmost menu
        item (reminiscent of the old Fx menu button) while styling the
        windows-specific top menu. Again, there is a modeless XUL dialog
        for affecting changes.</p>
      <p>just my 2 cents, hope I am not misunderstood.<br>
          Axel<br>
      </p>
      <p><br>
      </p>
      <style type="text/css">
.myName:hover, .myName a:hover { font-size:13pt; text-shadow: 3px 3px 4px rgba(200,250,200,0.7);}
.moz-signature {opacity: 1.0 !important;}
.myName a { cursor: pointer !important; transition:font-size 0.5s;}
.myLogo {
        transition: all .4s ease-out;
}

.myLogo:hover {
  transform: scale(3) translate(-30px,-5px);
}
</style>
      <div id="mySignature" style="width: 65%; font:x-small verdana;
        color: #444; box-shadow: 4px 4px 9px -2px rgba(0,0,0,0.65);
        border-radius: 0.7em; padding: 0.8em 1.2em; border: 1px dashed
        #444; background: rgb(230,240,163); background:
        linear-gradient(to bottom, rgba(230,240,163,1)
        0%,rgba(210,230,56,1) 50%,rgba(195,216,37,1)
        51%,rgba(219,240,67,1) 100%);">
        <b class="myName" style="text-shadow: 1px 1px 2px #DDD;
          transition:font-size 0.5s;"><a
            href="mailto:axel.grude@gmail.com">Axel Grude</a></b>
        <br>
        Software Developer
        <br>
        Thunderbird Add-ons Developer
        <span style="color:#666666; font-size:xx-small">(<a
href="https://addons.mozilla.org/thunderbird/addon/quickfolders-tabbed-folders/">QuickFolders</a>,
          <a
            href="https://addons.mozilla.org/thunderbird/addon/quickfilters/">quickFilters</a>,
          <a
            href="https://addons.mozilla.org/firefox/addon/quickpasswords/">QuickPasswords</a>,
          <a
            href="https://addons.mozilla.org/thunderbird/addon/zombie-keys/">Zombie
            Keys</a>, <a
            href="https://addons.mozilla.org/thunderbird/addon/smarttemplate4/">SmartTemplate4</a>)</span>
        <br>
        AMO Editor<br>
        Visit my <a href="https://www.youtube.com/c/thunderbirddaily">YouTube
          Channel</a> for productivity tips
        <img style="margin-top: 1em; float: right; box-shadow: 1px 1px
          2px rgba(20, 20, 20, 0.4);" moz-do-not-send="false"
          class="myLogo" src="cid:part8.5D08AC15.3331F310@gmail.com"
          alt="Get Thunderbird!" height="15" width="94">
      </div>
    </div>
    <div id="smartTemplate4-quoteHeader">
      <style type="text/css" scoped="">
#newHeaderAG1 b { font-weight:bold; color: #990033; min-width: 4.5em; max-width:none; display:inline-block;}
</style>
      <blockquote type="cite" style="margin-bottom: -20px !important;
        padding-bottom:20px !important;">
        <div id="newHeaderAG1" style="font-size: x-small; padding:1em;
          background-color:rgba(220,220,240,0.4); border-radius:3px;"> <b>Subject:</b>Deprecating
          XUL in new UI<br>
          <b>From:</b>Dave Townsend <a
            href="mailto:dtownsend@mozilla.com"><dtownsend@mozilla.com></a><br>
          <b>To:</b>Dev-platform; Firefox Dev <br>
          <b>Sent: </b>Monday, 16/01/2017 20:43:28 20:43 GMT ST +0000
          [Week 3]<br>
        </div>
      </blockquote>
    </div>
    <blockquote class=" cite"
id="mid_CAPMxTNrvwff7c1PDEM_iY4OTwQ_7mLSHt5PYPmDm4OJQag9mtw_mail_gmail_com"
cite="mid:CAPMxTNrvwff7c1PDEM=iY4OTwQ-7mLSHt5PYPmDm4OJQag9mtw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div id="gmail-magicdomid39" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">One
            of the things I've been investigating since moving back to
            the desktop team is how we can remove XUL from the
            application as much as possible. The benefits for doing this
            are varied, some obvious examples:</span></div>
        <div id="gmail-magicdomid40" class="gmail-ace-line"><br>
        </div>
        <div id="gmail-magicdomid41" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            XUL is a proprietary standard and we barely maintain it.</span></div>
        <div id="gmail-magicdomid42" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            Shallower learning curve for new contributors who may
            already know and use HTML.</span></div>
        <div id="gmail-magicdomid43" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            HTML rendering is more optimized in the platform than XUL.</span></div>
        <div id="gmail-magicdomid44" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            Further integration of Servo code may require dropping XUL
            altogether.</span></div>
        <div id="gmail-magicdomid45" class="gmail-ace-line"><br>
        </div>
        <div id="gmail-magicdomid126" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">The
            necessary first step of reducing XUL use is to stop adding
            any more UI that uses XUL and here I'm talking about wholly
            new UI, additions to browser.xul and other existing UI are a
            separate concern. What do folks think about making this a
            rule for new projects in the near future?</span></div>
        <div id="gmail-magicdomid47" class="gmail-ace-line"><br>
        </div>
        <div id="gmail-magicdomid99" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">Of
            course there are some features missing from HTML that make
            this impossible in some cases right now. Some that I've
            already found:</span></div>
        <div id="gmail-magicdomid49" class="gmail-ace-line"><br>
        </div>
        <div id="gmail-magicdomid50" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            HTML has no support for popup panels like XUL does. The
            devtools team have been working around this but they are
            still dependent on XUL right now.</span></div>
        <div id="gmail-magicdomid51" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            iframe elements don't have the same capabilities that the
            XUL browser element does and we use that in some UI.</span></div>
        <div id="gmail-magicdomid52" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">*
            Top level menus on OSX are currently only able to be defined
            with XUL elements. This only affects UI that uses top-level
            windows and most of our new UI is in-content so may be less
            of an issue.</span></div>
        <div id="gmail-magicdomid53" class="gmail-ace-line"><br>
        </div>
        <div id="gmail-magicdomid237" class="gmail-ace-line"><span
            class="gmail-author-a-bz76ziz88zz122zz80zz122z2tz80zjz66zuz66zis">What
            other features do we depend on in XUL that I haven't listed?</span></div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
firefox-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:firefox-dev@mozilla.org">firefox-dev@mozilla.org</a>
<a class="moz-txt-link-freetext" href="https://mail.mozilla.org/listinfo/firefox-dev">https://mail.mozilla.org/listinfo/firefox-dev</a>
</pre>
    </blockquote>
    <br>
    <br>
  </body>
</html>