Jdlrobson has uploaded a new change for review. https://gerrit.wikimedia.org/r/181702
Change subject: Hygiene: Kill closeOnBack property and OverlayManager FIXMEs ...................................................................... Hygiene: Kill closeOnBack property and OverlayManager FIXMEs All overlays now use the overlay manager and all future overlays should also use the overlay manager Thus all overlays should close on back. Move methods needed by search from Overlay to SearchOverlay and attempt to kill them in a future patch Update out of date FIXMEs. Change-Id: Ifb048a60106cf141d91c4ca1478a8e0c4efa7836 --- M javascripts/Overlay.js M javascripts/Router.js M javascripts/modules/mediaViewer/ImageOverlay.js M javascripts/modules/search/SearchOverlay.js 4 files changed, 19 insertions(+), 39 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/MobileFrontend refs/changes/02/181702/1 diff --git a/javascripts/Overlay.js b/javascripts/Overlay.js index 52d7457..3d6c93a 100644 --- a/javascripts/Overlay.js +++ b/javascripts/Overlay.js @@ -22,11 +22,6 @@ */ hasFixedHeader: true, /** - * FIXME: remove when OverlayManager used everywhere - * @type {Boolean} - */ - closeOnBack: false, - /** * Is overlay fullscreen * @type {Boolean} */ @@ -104,11 +99,7 @@ this.$( '.cancel, .confirm, .initial-header .back' ).on( 'click', function ( ev ) { ev.preventDefault(); ev.stopPropagation(); - if ( self.closeOnBack ) { - window.history.back(); - } else { - self.hide(); - } + window.history.back(); } ); // stop clicks in the overlay from propagating to the page // (prevents non-fullscreen overlays from being closed when they're tapped) @@ -144,33 +135,11 @@ }, /** - * Hide self when the route is visited - * @method - * @private - * FIXME: remove when OverlayManager used everywhere - */ - _hideOnRoute: function () { - var self = this; - M.router.once( 'route', function ( ev ) { - if ( !self.hide() ) { - ev.preventDefault(); - self._hideOnRoute(); - } - } ); - }, - - /** * Attach overlay to current view and show it. * @method */ show: function () { var self = this; - - // FIXME: remove when OverlayManager used everywhere - if ( this.closeOnBack ) { - this._hideOnRoute(); - } - this.$el.appendTo( this.appendTo ); this.scrollTop = document.body.scrollTop; diff --git a/javascripts/Router.js b/javascripts/Router.js index ede71d4..ffde8ed 100644 --- a/javascripts/Router.js +++ b/javascripts/Router.js @@ -1,3 +1,4 @@ +// FIXME: Merge this code with OverlayManager ( function ( M, $ ) { var key, @@ -11,7 +12,6 @@ * @param {String} hash String to match * @param {Object} entry Entry object * @returns {Boolean} Whether hash matches entry.path - * FIXME: remove when OverlayManager used everywhere */ function matchRoute( hash, entry ) { var match = hash.match( entry.path ); @@ -71,7 +71,6 @@ Router.prototype[ key ] = EventEmitter.prototype[ key ]; } - // FIXME: remove when OverlayManager used everywhere /** * Check the current route and run appropriate callback if it matches. * @method @@ -86,7 +85,6 @@ /** * Bind a specific callback to a hash-based route, e.g. - * FIXME: remove when OverlayManager used everywhere * * @example * route( 'alert', function () { alert( 'something' ); } ); diff --git a/javascripts/modules/mediaViewer/ImageOverlay.js b/javascripts/modules/mediaViewer/ImageOverlay.js index 03e9017..a23fc8d 100644 --- a/javascripts/modules/mediaViewer/ImageOverlay.js +++ b/javascripts/modules/mediaViewer/ImageOverlay.js @@ -18,7 +18,6 @@ hasFixedHeader: false, className: 'overlay media-viewer', template: mw.template.get( 'mobile.mediaViewer', 'Overlay.hogan' ), - closeOnBack: true, /** * @inheritdoc diff --git a/javascripts/modules/search/SearchOverlay.js b/javascripts/modules/search/SearchOverlay.js index c684a04..f7cf980 100644 --- a/javascripts/modules/search/SearchOverlay.js +++ b/javascripts/modules/search/SearchOverlay.js @@ -50,7 +50,22 @@ searchContentNoResultsMsg: mw.msg( 'mobile-frontend-search-content-no-results' ), action: mw.config.get( 'wgScript' ) }, - closeOnBack: false, + + /** + * Hide self when the route is visited + * @method + * @private + * FIXME: Remove when search registers route with overlay manager + */ + _hideOnRoute: function () { + var self = this; + M.router.once( 'route', function ( ev ) { + if ( !self.hide() ) { + ev.preventDefault(); + self._hideOnRoute(); + } + } ); + }, /** @inheritdoc */ initialize: function ( options ) { @@ -58,10 +73,9 @@ Overlay.prototype.initialize.call( this, options ); this.api = new SearchApi(); - // FIXME: horrible, remove when we get overlay manager + // FIXME: Remove when search registers route with overlay manager // we need this because of the focus/delay hack in search.js M.router.once( 'route', function () { - self.closeOnBack = true; self._hideOnRoute(); } ); }, -- To view, visit https://gerrit.wikimedia.org/r/181702 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifb048a60106cf141d91c4ca1478a8e0c4efa7836 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/MobileFrontend Gerrit-Branch: master Gerrit-Owner: Jdlrobson <jrob...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits