From: Bartosz Dziewoński Date: Sat, 23 Aug 2014 18:19:18 +0000 (+0200) Subject: TablePager: Load images via CSS backgrounds rather than HTML s X-Git-Tag: 1.31.0-rc.0~14211 X-Git-Url: https://git.cyclocoop.org/%7B%24www_url%7Dadmin/compta/exercices/journal.php?a=commitdiff_plain;h=7443cd97bf9b1e02b11fd07bdf22618c7c4e19bb;p=lhc%2Fweb%2Fwiklou.git TablePager: Load images via CSS backgrounds rather than HTML s Moved files from directory: skins/common/images → resources/src/mediawiki/images and renamed: * arrow_disabled_last_25.png → pager-arrow-disabled-fastforward-ltr.png * arrow_disabled_first_25.png → pager-arrow-disabled-fastforward-rtl.png * arrow_disabled_right_25.png → pager-arrow-disabled-forward-ltr.png * arrow_disabled_left_25.png → pager-arrow-disabled-forward-rtl.png * arrow_last_25.png → pager-arrow-fastforward-ltr.png * arrow_first_25.png → pager-arrow-fastforward-rtl.png * arrow_right_25.png → pager-arrow-forward-ltr.png * arrow_left_25.png → pager-arrow-forward-rtl.png The new names are not very intuitive, but there's a mostly reasonable system behind them and we need names like this to have them automatically flipped for RTL styles. Bug: 69277 Change-Id: Ica34cdd5fcc9340a94fb5e60bb34c30266953dcb --- diff --git a/includes/pager/TablePager.php b/includes/pager/TablePager.php index 518540d677..3e061e9021 100644 --- a/includes/pager/TablePager.php +++ b/includes/pager/TablePager.php @@ -290,45 +290,23 @@ abstract class TablePager extends IndexPager { * @return string HTML */ public function getNavigationBar() { - global $wgStylePath; - if ( !$this->isNavigationBarShown() ) { return ''; } - $path = "$wgStylePath/common/images"; $labels = array( 'first' => 'table_pager_first', 'prev' => 'table_pager_prev', 'next' => 'table_pager_next', 'last' => 'table_pager_last', ); - $images = array( - 'first' => 'arrow_first_25.png', - 'prev' => 'arrow_left_25.png', - 'next' => 'arrow_right_25.png', - 'last' => 'arrow_last_25.png', - ); - $disabledImages = array( - 'first' => 'arrow_disabled_first_25.png', - 'prev' => 'arrow_disabled_left_25.png', - 'next' => 'arrow_disabled_right_25.png', - 'last' => 'arrow_disabled_last_25.png', - ); - if ( $this->getLanguage()->isRTL() ) { - $keys = array_keys( $labels ); - $images = array_combine( $keys, array_reverse( $images ) ); - $disabledImages = array_combine( $keys, array_reverse( $disabledImages ) ); - } $linkTexts = array(); $disabledTexts = array(); foreach ( $labels as $type => $label ) { $msgLabel = $this->msg( $label )->escaped(); - $linkTexts[$type] = Html::element( 'img', array( 'src' => "$path/{$images[$type]}", - 'alt' => $msgLabel ) ) . "
$msgLabel"; - $disabledTexts[$type] = Html::element( 'img', array( 'src' => "$path/{$disabledImages[$type]}", - 'alt' => $msgLabel ) ) . "
$msgLabel"; + $linkTexts[$type] = "
$msgLabel
"; + $disabledTexts[$type] = "
$msgLabel
"; } $links = $this->getPagingLinks( $linkTexts, $disabledTexts ); @@ -339,7 +317,9 @@ abstract class TablePager extends IndexPager { // We want every cell to have the same width. We could use table-layout: fixed; in CSS, // but it only works if we specify the width of a cell or the table and we don't want to. // There is no better way. - $s .= Html::rawElement( 'td', array( 'style' => "width: $width;" ), $links[$type] ) . "\n"; + $s .= Html::rawElement( 'td', + array( 'style' => "width: $width;", 'class' => "TablePager_nav-$type" ), + $links[$type] ) . "\n"; } $s .= Html::closeElement( 'tr' ) . Html::closeElement( 'table' ) . "\n"; return $s; diff --git a/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-ltr.png b/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-ltr.png new file mode 100644 index 0000000000..2a64fd03f9 Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-ltr.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-rtl.png b/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-rtl.png new file mode 100644 index 0000000000..78a493e68d Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-disabled-fastforward-rtl.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-disabled-forward-ltr.png b/resources/src/mediawiki/images/pager-arrow-disabled-forward-ltr.png new file mode 100644 index 0000000000..aa4fbf8c24 Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-disabled-forward-ltr.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-disabled-forward-rtl.png b/resources/src/mediawiki/images/pager-arrow-disabled-forward-rtl.png new file mode 100644 index 0000000000..83df068456 Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-disabled-forward-rtl.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-fastforward-ltr.png b/resources/src/mediawiki/images/pager-arrow-fastforward-ltr.png new file mode 100644 index 0000000000..caf5033156 Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-fastforward-ltr.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-fastforward-rtl.png b/resources/src/mediawiki/images/pager-arrow-fastforward-rtl.png new file mode 100644 index 0000000000..52b32a5aeb Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-fastforward-rtl.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-forward-ltr.png b/resources/src/mediawiki/images/pager-arrow-forward-ltr.png new file mode 100644 index 0000000000..3f8fee38b1 Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-forward-ltr.png differ diff --git a/resources/src/mediawiki/images/pager-arrow-forward-rtl.png b/resources/src/mediawiki/images/pager-arrow-forward-rtl.png new file mode 100644 index 0000000000..f363bf661c Binary files /dev/null and b/resources/src/mediawiki/images/pager-arrow-forward-rtl.png differ diff --git a/resources/src/mediawiki/mediawiki.pager.tablePager.css b/resources/src/mediawiki/mediawiki.pager.tablePager.css index fc73a9671a..4ae4792519 100644 --- a/resources/src/mediawiki/mediawiki.pager.tablePager.css +++ b/resources/src/mediawiki/mediawiki.pager.tablePager.css @@ -14,8 +14,57 @@ .TablePager_nav td { padding: 3px; text-align: center; + vertical-align: center; } .TablePager_nav a { text-decoration: none; } + +.TablePager_nav td.TablePager_nav-first .TablePager_nav-disabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-disabled-fastforward-rtl.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-prev .TablePager_nav-disabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-disabled-forward-rtl.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-next .TablePager_nav-disabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-disabled-forward-ltr.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-last .TablePager_nav-disabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-disabled-fastforward-ltr.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-first .TablePager_nav-enabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-fastforward-rtl.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-prev .TablePager_nav-enabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-forward-rtl.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-next .TablePager_nav-enabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-forward-ltr.png) center top no-repeat; +} + +.TablePager_nav td.TablePager_nav-last .TablePager_nav-enabled { + padding-top: 25px; + /* @embed */ + background: url(images/pager-arrow-fastforward-ltr.png) center top no-repeat; +} diff --git a/skins/common/images/arrow_disabled_first_25.png b/skins/common/images/arrow_disabled_first_25.png deleted file mode 100644 index 78a493e68d..0000000000 Binary files a/skins/common/images/arrow_disabled_first_25.png and /dev/null differ diff --git a/skins/common/images/arrow_disabled_last_25.png b/skins/common/images/arrow_disabled_last_25.png deleted file mode 100644 index 2a64fd03f9..0000000000 Binary files a/skins/common/images/arrow_disabled_last_25.png and /dev/null differ diff --git a/skins/common/images/arrow_disabled_left_25.png b/skins/common/images/arrow_disabled_left_25.png deleted file mode 100644 index 83df068456..0000000000 Binary files a/skins/common/images/arrow_disabled_left_25.png and /dev/null differ diff --git a/skins/common/images/arrow_disabled_right_25.png b/skins/common/images/arrow_disabled_right_25.png deleted file mode 100644 index aa4fbf8c24..0000000000 Binary files a/skins/common/images/arrow_disabled_right_25.png and /dev/null differ diff --git a/skins/common/images/arrow_first_25.png b/skins/common/images/arrow_first_25.png deleted file mode 100644 index 52b32a5aeb..0000000000 Binary files a/skins/common/images/arrow_first_25.png and /dev/null differ diff --git a/skins/common/images/arrow_last_25.png b/skins/common/images/arrow_last_25.png deleted file mode 100644 index caf5033156..0000000000 Binary files a/skins/common/images/arrow_last_25.png and /dev/null differ diff --git a/skins/common/images/arrow_left_25.png b/skins/common/images/arrow_left_25.png deleted file mode 100644 index f363bf661c..0000000000 Binary files a/skins/common/images/arrow_left_25.png and /dev/null differ diff --git a/skins/common/images/arrow_right_25.png b/skins/common/images/arrow_right_25.png deleted file mode 100644 index 3f8fee38b1..0000000000 Binary files a/skins/common/images/arrow_right_25.png and /dev/null differ