mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-29 08:34:54 +00:00
ae2f5134b2
Implements https://wikimedia.mingle.thoughtworks.com/projects/mobile/cards/1626 Also, rename $el to $container so that it matches the docs. Change-Id: I9f41ec6fb88f6f21e698553216ccf2c3231589c1
79 lines
1.8 KiB
JavaScript
79 lines
1.8 KiB
JavaScript
/*!
|
|
* VisualEditor MediaWiki Initialization MobileViewTarget class.
|
|
*
|
|
* @copyright 2011-2014 VisualEditor Team and others; see AUTHORS.txt
|
|
* @license The MIT License (MIT); see LICENSE.txt
|
|
*/
|
|
|
|
/*global mw*/
|
|
|
|
/**
|
|
*
|
|
* @class
|
|
* @extends ve.init.mw.Target
|
|
*
|
|
* @constructor
|
|
* @param {jQuery} $container Container to render target into
|
|
* @param {Object} [config] Configuration options
|
|
* @cfg {number} [section] Number of the section target should scroll to
|
|
*/
|
|
ve.init.mw.MobileViewTarget = function VeInitMwMobileViewTarget( $container, config ) {
|
|
var currentUri = new mw.Uri();
|
|
config = config || {};
|
|
|
|
// Parent constructor
|
|
ve.init.mw.Target.call(
|
|
this, $container, mw.config.get( 'wgRelevantPageName' ), currentUri.query.oldid
|
|
);
|
|
|
|
this.section = config.section;
|
|
|
|
// Events
|
|
this.connect( this, {
|
|
'surfaceReady': 'onSurfaceReady'
|
|
} );
|
|
};
|
|
|
|
/* Inheritance */
|
|
|
|
OO.inheritClass( ve.init.mw.MobileViewTarget, ve.init.mw.Target );
|
|
|
|
/* Static Properties */
|
|
$.extend( ve.init.mw.Target.static.iconModuleStyles, {
|
|
'raster': [],
|
|
'vector': []
|
|
} );
|
|
|
|
ve.init.mw.MobileViewTarget.static.toolbarGroups = [
|
|
{ 'include': [ 'bold', 'italic' ] }
|
|
];
|
|
|
|
ve.init.mw.MobileViewTarget.static.surfaceCommands = [
|
|
'bold',
|
|
'italic'
|
|
];
|
|
|
|
/* Methods */
|
|
|
|
/**
|
|
* Once surface is ready ready, init UI.
|
|
*/
|
|
ve.init.mw.MobileViewTarget.prototype.onSurfaceReady = function () {
|
|
this.$document[0].focus();
|
|
this.restoreEditSection();
|
|
};
|
|
|
|
/**
|
|
* @inheritdoc
|
|
*/
|
|
ve.init.mw.MobileViewTarget.prototype.setUpToolbar = function () {
|
|
// Parent method
|
|
ve.init.mw.Target.prototype.setUpToolbar.call( this );
|
|
|
|
this.toolbar.$element
|
|
// FIXME shouldn't be using viewPageTarget styles
|
|
.addClass( 've-init-mw-viewPageTarget-toolbar' )
|
|
// Move the toolbar to the overlay header
|
|
.appendTo( '.overlay-header > .toolbar' );
|
|
};
|