RCFilters: Also set toplinks-collapsed class if no cookie
authorRoan Kattouw <roan.kattouw@gmail.com>
Mon, 25 Sep 2017 21:50:04 +0000 (14:50 -0700)
committerRoan Kattouw <roan.kattouw@gmail.com>
Mon, 25 Sep 2017 21:50:04 +0000 (14:50 -0700)
If the cookie was not set, the PHP code treated that as
"expanded", but the JS code treated it as "collapsed".
Fix the PHP code.

Bug: T176380
Change-Id: Iff9b865bd20a571ade2ae619cbb5b3a70629003c

includes/specials/SpecialRecentchanges.php

index 34a7714..8c2dd56 100644 (file)
@@ -658,7 +658,8 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
                        if ( $this->isStructuredFilterUiEnabled() ) {
                                // Check whether the widget is already collapsed or expanded
                                $collapsedState = $this->getRequest()->getCookie( 'rcfilters-toplinks-collapsed-state' );
-                               $collapsedClass = $collapsedState === 'collapsed' ? 'mw-rcfilters-toplinks-collapsed' : '';
+                               // Note that an empty/unset cookie means collapsed, so check for !== 'expanded'
+                               $collapsedClass = $collapsedState !== 'expanded' ? 'mw-rcfilters-toplinks-collapsed' : '';
 
                                $contentTitle = Html::rawElement( 'div',
                                        [ 'class' => 'mw-recentchanges-toplinks-title ' . $collapsedClass ],