EnhancedChangesList: Load style module via addModuleStyles()
authorFomafix <fomafix@googlemail.com>
Sun, 10 Feb 2019 15:04:57 +0000 (16:04 +0100)
committerFomafix <fomafix@googlemail.com>
Tue, 12 Feb 2019 00:29:36 +0000 (01:29 +0100)
This change avoids a flash of missing collapsible toggle icons while
loading.

Change-Id: I090b1622868f2e5a01ca783dfce3be16b7d6b525

includes/changes/EnhancedChangesList.php
includes/templates/EnhancedChangesListGroup.mustache
tests/phpunit/includes/changes/EnhancedChangesListTest.php

index 28b30d8..51a26ba 100644 (file)
@@ -77,12 +77,12 @@ class EnhancedChangesList extends ChangesList {
                $this->lastdate = '';
                $this->rclistOpen = false;
                $this->getOutput()->addModuleStyles( [
+                       'mediawiki.icon',
                        'mediawiki.special.changeslist',
                        'mediawiki.special.changeslist.enhanced',
                ] );
                $this->getOutput()->addModules( [
                        'jquery.makeCollapsible',
-                       'mediawiki.icon',
                ] );
 
                return '<div class="mw-changeslist">';
index 6037d37..6d9d6b0 100644 (file)
@@ -10,7 +10,7 @@
                                <div class="mw-rcfilters-ui-highlights-color-c5" data-color="c5"></div>
                        </div>
                </td>
-               <td><span class="mw-collapsible-toggle mw-collapsible-arrow mw-enhancedchanges-arrow mw-enhancedchanges-arrow-space"></span></td>
+               <td><span class="mw-collapsible-toggle mw-collapsible-arrow mw-enhancedchanges-arrow mw-enhancedchanges-arrow-space mw-collapsible-toggle-collapsed"></span></td>
                <td class="mw-changeslist-line-prefix">{{{ prefix }}}</td>
                <td class="mw-enhanced-rc" colspan="2">{{{ collectedRcFlags }}}&#160;{{ timestamp }}&#160;</td>
                <td class="mw-changeslist-line-inner">
index 420fe74..eff2c85 100644 (file)
@@ -26,6 +26,12 @@ class EnhancedChangesListTest extends MediaWikiLangTestCase {
 
                $styleModules = $enhancedChangesList->getOutput()->getModuleStyles();
 
+               $this->assertContains(
+                       'mediawiki.icon',
+                       $styleModules,
+                       'has mediawiki.icon'
+               );
+
                $this->assertContains(
                        'mediawiki.special.changeslist',
                        $styleModules,
@@ -46,7 +52,6 @@ class EnhancedChangesListTest extends MediaWikiLangTestCase {
                $modules = $enhancedChangesList->getOutput()->getModules();
 
                $this->assertContains( 'jquery.makeCollapsible', $modules, 'has jquery.makeCollapsible' );
-               $this->assertContains( 'mediawiki.icon', $modules, 'has mediawiki.icon' );
        }
 
        public function testBeginRecentChangesList_html() {