Problems with builds up to 20050517

Discussion about official Mozilla Firefox builds
Post Reply
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Problems with builds up to 20050517

Post by ShareBird »

Builds up 20050517 breaks TabMix and my personal theme. It's a little bit difficult to explain. I'll try.

I use a customized Charamel Theme made by myself. Charamel uses to shape its tabs binding in this way, on global/globalBindings.xml:

Code: Select all

<binding id="tab" extends="chrome://global/content/bindings/tabbox.xml#tab">
<content>
  <xul:hbox class="tab-startcap" xbl:inherits="selected"/>
  <!-- <xul:hbox flex="1" class="tab-body" align="center" xbl:inherits="selected">-->
   <xul:hbox class="tab-icon">

      <xul:image xbl:inherits="validate,src=image" class="tab-icon-image" />

   </xul:hbox>
   <xul:label flex="1" xbl:inherits="value=label,crop,accesskey" crop="right" class="tab-text"/>
  <!--</xul:hbox>-->
  <xul:hbox class="tab-endcap" xbl:inherits="selected"/>
</content>
</binding>


TabMix has a hack to work with Charamel on content/tabmix/tab/tabmix.xml:

Code: Select all

  <!-- for TabX and MouseOverSelectTab
       original codes by Stephen Clavering
       modified by Hemiola SUN -->
  <binding id="browser-tab" display="xul:tab"
      extends="chrome://global/content/bindings/tabbox.xml#tab">
    <content>
      <xul:hbox class="tab-startcap" xbl:inherits="selected"/>  <!-- hack for Charamel Theme -->
      <xul:hbox class="tab-drag-indicator-left"/>
      <xul:stack class="tab-icon" xbl:inherits="src=image">
        <xul:image class="tab-site-icon" xbl:inherits="validate,src=image"/>
        <xul:image class="tab-protect-icon"/>
        <xul:image class="tab-lock-icon"/>
      </xul:stack>
      <xul:stack class="tab-text-container" flex="1">
        <xul:progressmeter class="tab-progress"
          flex="2"
          mode="normal" value="0"
          xbl:inherits="value=tab-progress"/>
        <xul:label class="tab-text" xbl:inherits="value=label,accesskey,crop,disabled" flex="2"/>
        <xul:hbox>
          <xul:spacer flex="1"/>
          <xul:toolbarbutton class="tabs-closebutton showhover" style="margin: 0; padding: 0"/>
        </xul:hbox>
      </xul:stack>
      <xul:toolbarbutton class="tabs-closebutton always" style="padding: 0"/>
      <xul:hbox class="tab-drag-indicator-right"/>
      <xul:hbox class="tab-endcap" xbl:inherits="selected"/>  <!-- hack for Charamel Theme -->
    </content>

    <implementation>

    <field name="mIsHover">
      false
    </field>
    <field name="mButtonId">
      0
    </field>
    <field name="mFocusId">
      0
    </field>
    <property name="mTabBrowser" readonly="true">
      <getter><![CDATA[
        if (!this._mTabBrowser) {
          var node = this.parentNode;
          while (node.localName != 'tabbrowser')
            node = node.parentNode;

          this._mTabBrowser = node;
        }

        return this._mTabBrowser;
      ]]></getter>
    </property>

    <property name="mouseHoverSelect" readonly="true">
      <getter><![CDATA[
        try {
          return gPref.getBoolPref("extensions.tabmix.mouseOverSelect");
        }
        catch(e) {
          return false;
        }
      ]]></getter>
    </property>
    <property name="mouseHoverSelectDelay" readonly="true">
      <getter><![CDATA[
        try {
          return gPref.getIntPref("extensions.tabmix.mouseOverSelectDelay");
        }
        catch(e) {
          return 250;
        }
      ]]></getter>
    </property>
    <property name="tabXDelay" readonly="true">
      <getter><![CDATA[
        try {
          return gPref.getIntPref("extensions.tabmix.tabXDelay");
        }
        catch(e) {
        return 0;
        }
      ]]></getter>
    </property>

    <property name="baseY">
      <getter><![CDATA[
        return this.boxObject.y+this.boxObject.height;
      ]]></getter>
    </property>

    <method name="onMouseOver">
      <parameter name="aEvent"/>
      <body><![CDATA[
        this.mIsHover = true;
        this.mButtonId = window.setTimeout(this.setShowButton, this.tabXDelay, this);
        if (this.mouseHoverSelect)
          this.mFocusId = window.setTimeout(this.doMouseHoverSelect, this.mouseHoverSelectDelay, this);
      ]]></body>
    </method>
    <method name="doMouseHoverSelect">
      <parameter name="aTab"/>
      <body><![CDATA[
        if ( aTab.mIsHover )
          aTab.mTabBrowser.selectedTab = aTab;
      ]]></body>
    </method>
    <method name="setShowButton">
      <parameter name="aTab"/>
      <body><![CDATA[
        if ( aTab.mIsHover )
          aTab.setAttribute("showbutton", "on");
      ]]></body>
    </method>

    <method name="onMouseOut">
      <parameter name="aEvent"/>
      <body><![CDATA[
        this.mIsHover = false;
        window.setTimeout(this.removeShowButton, this.tabXDelay, this);
        clearTimeout(this.mButtonId);
        if (this.mouseHoverSelect)
          clearTimeout(this.mFocusId);
      ]]></body>
    </method>
    <method name="removeShowButton">
      <parameter name="aTab"/>
      <body><![CDATA[
        if ( !aTab.mIsHover )
          aTab.setAttribute("showbutton", "off");
      ]]></body>
    </method>
    </implementation>

    <handlers>
      <handler event="mouseover">
      <![CDATA[
        this.onMouseOver(event);
      ]]>
      </handler>
      <handler event="mouseout">
      <![CDATA[
        this.onMouseOut(event);
      ]]>
      </handler>
      <handler event="click" button="0">
      <![CDATA[
        if ( event.originalTarget.className == "tabs-closebutton showhover" ||
             event.originalTarget.className == "tabs-closebutton always" )
          this.parentNode.parentNode.parentNode.parentNode.removeTab(this);
        else if ( this.ordinal == this.parentNode.selectedItem.ordinal )
          this.setAttribute("clickOnCurrent","true");
        else
          this.parentNode.selectedItem = this;
      ]]>
      </handler>
    </handlers>

  </binding>


It works just fine with build 20050516 but it doesn't work anymore with builds 20050517. All the appearances are lost, closebutton, progressmeter, etc...

I can't see on bonsai any modification that could cause this behaviour...

Can you guys help me with this???

Thanks
User avatar
Ria
Posts: 3550
Joined: March 21st, 2004, 3:25 am
Location: Netherlands

Post by Ria »

Hm, I tried both Charamel and Tab Mix but I see no troubles. The tabs show undamaged. Though the Options window is rubbish. But the new Report Broken Website window looks nice. OK it's gone now...
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Post by ShareBird »

The problem is that closebutton, progressmeter and drag and drop buttons don't appear anymore...
Silvermel - A Theme for Firefox and Thunderbird
YATT - Yet Another Theme Tutorial
Don't give a man a fish. Teach him how to fish instead.
User avatar
Ria
Posts: 3550
Joined: March 21st, 2004, 3:25 am
Location: Netherlands

Post by Ria »

O sorry, didn't read it right.. :D
User avatar
Ria
Posts: 3550
Joined: March 21st, 2004, 3:25 am
Location: Netherlands

Post by Ria »

I'm no perfectionist, but I don't see the progressmeter problem... I don't see the closebutton problem either, because I've TabX installed, and drap & drop-buttons: I can drag tabs but see no buttons. I don't see the new tab icon, but the empty icon looks also nice and it works evidently..
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Post by ShareBird »

I'm not sure how progressmeter works on Charamel, but on my theme all tis appearance stuff works great until build 20050516

Image

But stoped to work with build 20050517:

Image

Using a new profile with only TabMix and my theme Silvermel...
Greg K Nicholson
Posts: 1328
Joined: September 28th, 2003, 8:58 am
Contact:

Post by Greg K Nicholson »

Semi-off-topic: could you release that theme?
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Post by ShareBird »

Sorry, I don't have permissions to release it...
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Post by ShareBird »

I got it!!! :D

I needed to modify TabMix and add !important at content/tabmix/tab/tab.css on

Code: Select all

tab {
  -moz-binding: url(chrome://tabmix/content/tab/tabmix.xml#browser-tab)!important;
}


Now I can use the new trunks... :D

Thanks Ria for answer in this thread.

.
LadFromWales85
Posts: 15
Joined: September 6th, 2003, 2:44 pm
Location: Wales, UK
Contact:

Post by LadFromWales85 »

That theme looks very nice, uncluttered, just the way I like it, shame you won't give it us!
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Post by ShareBird »

Maybe you might try the original: Charamel 1.1.2...


.
Post Reply