aboutsummaryrefslogtreecommitdiffstats
path: root/includes/specials/SpecialAllPages.php
diff options
context:
space:
mode:
authorGlaisher <glaisher.wiki@gmail.com>2015-11-09 21:50:53 +0500
committerGlaisher <glaisher.wiki@gmail.com>2015-11-09 22:28:37 +0500
commit0968cce3f78b81dc32b0db097b5a6a61fffc5ce9 (patch)
treead715e33148462afc0acb665ab2f9f2bc8e02747 /includes/specials/SpecialAllPages.php
parentcfdf523008736d6ec9b8a7b512ea7f204ac54afb (diff)
downloadmediawikicore-0968cce3f78b81dc32b0db097b5a6a61fffc5ce9.tar.gz
mediawikicore-0968cce3f78b81dc32b0db097b5a6a61fffc5ce9.zip
Don't apply CSS columns if less than 3 results were found on AllPages & PrefixIndex
If there are less than 3 entries, the browser still tries to render as it would appear as if there are 3 columns, so the final rendering is broken. So don't apply CSS columns and just show a normal list if there are less than 3 results. This also matches the behavior of CategoryViewer. Bug: T117887 Change-Id: Ie6ac0e1174ff8cc14008f39a91c95bcd6f616353
Diffstat (limited to 'includes/specials/SpecialAllPages.php')
-rw-r--r--includes/specials/SpecialAllPages.php10
1 files changed, 7 insertions, 3 deletions
diff --git a/includes/specials/SpecialAllPages.php b/includes/specials/SpecialAllPages.php
index 244627008577..190fe8f739b2 100644
--- a/includes/specials/SpecialAllPages.php
+++ b/includes/specials/SpecialAllPages.php
@@ -205,8 +205,7 @@ class SpecialAllPages extends IncludableSpecialPage {
);
if ( $res->numRows() > 0 ) {
- $out = Html::openElement( 'div', array( 'class' => 'mw-allpages-body' ) );
- $out .= Html::openElement( 'ul', array( 'class' => 'mw-allpages-chunk' ) );
+ $out = Html::openElement( 'ul', array( 'class' => 'mw-allpages-chunk' ) );
while ( ( $n < $this->maxPerPage ) && ( $s = $res->fetchObject() ) ) {
$t = Title::newFromRow( $s );
@@ -222,7 +221,12 @@ class SpecialAllPages extends IncludableSpecialPage {
$n++;
}
$out .= Html::closeElement( 'ul' );
- $out .= Html::closeElement( 'div' );
+
+ if ( $res->numRows() > 2 ) {
+ // Only apply CSS column styles if there's more than 2 entries.
+ // Otherwise, rendering is broken as "mw-allpages-body"'s CSS column count is 3.
+ $out = Html::rawElement( 'div', array( 'class' => 'mw-allpages-body' ), $out );
+ }
} else {
$out = '';
}