From 8e6136f0b3b39abcc1c67855b153f9ee47718cc1 Mon Sep 17 00:00:00 2001 From: Ed Sanders Date: Tue, 6 Sep 2016 13:45:36 -0700 Subject: [PATCH] Preserve font size in ApiSandbox when going fullscreen 'mw-body-content' class must be added to the wrapper. Change-Id: I2d85f535c8252f350a3d3a6810de23294368aa54 --- .../mediawiki.special.apisandbox.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/resources/src/mediawiki.special/mediawiki.special.apisandbox.js b/resources/src/mediawiki.special/mediawiki.special.apisandbox.js index 5c3715db02..99591ff4a4 100644 --- a/resources/src/mediawiki.special/mediawiki.special.apisandbox.js +++ b/resources/src/mediawiki.special/mediawiki.special.apisandbox.js @@ -580,6 +580,8 @@ init: function () { var $toolbar; + ApiSandbox.isFullscreen = false; + $content = $( '#mw-apisandbox' ); windowManager = new OO.ui.WindowManager(); @@ -658,17 +660,21 @@ * Toggle "fullscreen" mode */ toggleFullscreen: function () { - var $body = $( document.body ); + var $body = $( document.body ), + $ui = $( '#mw-apisandbox-ui' ); + + ApiSandbox.isFullscreen = !ApiSandbox.isFullscreen; - $body.toggleClass( 'mw-apisandbox-fullscreen' ); - if ( $body.hasClass( 'mw-apisandbox-fullscreen' ) ) { + $body.toggleClass( 'mw-apisandbox-fullscreen', ApiSandbox.isFullscreen ); + $ui.toggleClass( 'mw-body-content', ApiSandbox.isFullscreen ); + if ( ApiSandbox.isFullscreen ) { fullscreenButton.setLabel( mw.message( 'apisandbox-unfullscreen' ).text() ); fullscreenButton.setTitle( mw.message( 'apisandbox-unfullscreen-tooltip' ).text() ); - $body.append( $( '#mw-apisandbox-ui' ) ); + $body.append( $ui ); } else { fullscreenButton.setLabel( mw.message( 'apisandbox-fullscreen' ).text() ); fullscreenButton.setTitle( mw.message( 'apisandbox-fullscreen-tooltip' ).text() ); - $content.append( $( '#mw-apisandbox-ui' ) ); + $content.append( $ui ); } ApiSandbox.resizePanel(); }, @@ -680,7 +686,7 @@ var height = $( window ).height(), contentTop = $content.offset().top; - if ( $( document.body ).hasClass( 'mw-apisandbox-fullscreen' ) ) { + if ( ApiSandbox.isFullscreen ) { height -= panel.$element.offset().top - $( '#mw-apisandbox-ui' ).offset().top; panel.$element.height( height - 1 ); } else { -- 2.20.1