Last modified: 2014-09-01 15:53:05 UTC

Wikimedia Bugzilla is closed!

Wikimedia has migrated from Bugzilla to Phabricator. Bug reports should be created and updated in Wikimedia Phabricator instead. Please create an account in Phabricator and add your Bugzilla email address to it.
Wikimedia Bugzilla is read-only. If you try to edit or create any bug report in Bugzilla you will be shown an intentional error message.
In order to access the Phabricator task corresponding to a Bugzilla report, just remove "static-" from its URL.
You could still run searches in Bugzilla or access your list of votes but bug reports will obviously not be up-to-date in Bugzilla.
Bug 46947 - Vector: Horizontal nav elements should be flipped with CSS instead of in HTML
Vector: Horizontal nav elements should be flipped with CSS instead of in HTML
Status: NEW
Product: MediaWiki skins
Classification: Unclassified
Vector (Other open bugs)
All All
: Normal normal
: ---
Assigned To: Nobody - You can work on this!
Depends on: 46956
Blocks: 34587 44881 48017
  Show dependency treegraph
Reported: 2013-04-06 13:34 UTC by Bartosz Dziewoński
Modified: 2014-09-01 15:53 UTC (History)
6 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Description Bartosz Dziewoński 2013-04-06 13:34:45 UTC
Vector first reverses the order of horizontal nav elements in HTML and then prevents flipping of float:left rules in CSS to make the interface looks the same in LTR and RTL environments.

Similar craziness is done to the search form - the input and the button are rendered in different order in LTR and RTL.

This causes e.g. bug 34587.

    // Reverse horizontally rendered navigation elements
    if ( $this->data['rtl'] ) {
      $this->data['view_urls'] =
        array_reverse( $this->data['view_urls'] );
      $this->data['namespace_urls'] =
        array_reverse( $this->data['namespace_urls'] );
      $this->data['personal_urls'] =
        array_reverse( $this->data['personal_urls'] );
    // If there's a series of elements, reverse them when in RTL mode
    } elseif ( $this->data['rtl'] ) {
      $elements = array_reverse( $elements );
    ... etc

    /* @noflip */
    div.vectorTabs {
      float: left;
      height: 2.5em;
    /* @noflip */
    div.vectorTabs ul {
      float: left;
    ... etc

Why would anyone do that is just mind-boggling to me. I assume it's a workaround for some IE6 bugs.
Comment 1 Trevor Parscal 2013-05-10 18:34:57 UTC
You should be careful to check, but this should be something we can get rid of now because it was actually an IE 5.5 workaround, and we no longer need to provide support for that browser since it's below the 0.1% market share threshold (currently at 0.05%) according to

Monobook in IE 5.5 would simply display the tabs in the wrong order - but I wasn't willing to accept that for Vector, so I ended up with this hack. Let's verify it's ok to remove for IE 6, and if all looks clear, get rid of this.
Comment 2 Gerrit Notification Bot 2013-08-31 20:24:47 UTC
Change 82100 had a related patch set uploaded by Matmarex:
Rewrite rendering of Vector simple search
Comment 3 Bartosz Dziewoński 2013-10-16 09:52:51 UTC
(The patch above only pokes with the search, not with the navigation.)
Comment 4 [no longer active user] 2013-10-16 09:59:39 UTC
This is definitely correct, important and needed. After this is fixed I should revert this so please fix it soon
Comment 5 Gerrit Notification Bot 2014-02-03 02:30:29 UTC
Change 82100 merged by jenkins-bot:
Rewrite rendering of Vector simple search

Note You need to log in before you can comment on or make changes to this bug.