Index: third_party/WebKit/Source/devtools/front_end/components/DockController.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/components/DockController.js b/third_party/WebKit/Source/devtools/front_end/components/DockController.js |
index f73e34324589c48f1a7aeaadbda0527a52b6db7c..6469699389dea0beba44d235a84d4290e4adf589 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/components/DockController.js |
+++ b/third_party/WebKit/Source/devtools/front_end/components/DockController.js |
@@ -27,39 +27,150 @@ |
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
- |
/** |
- * @constructor |
- * @extends {WebInspector.Object} |
- * @param {boolean} canDock |
+ * @unrestricted |
*/ |
-WebInspector.DockController = function(canDock) |
-{ |
+WebInspector.DockController = class extends WebInspector.Object { |
+ /** |
+ * @param {boolean} canDock |
+ */ |
+ constructor(canDock) { |
+ super(); |
this._canDock = canDock; |
- this._closeButton = new WebInspector.ToolbarButton(WebInspector.UIString("Close"), "delete-toolbar-item"); |
- this._closeButton.addEventListener("click", InspectorFrontendHost.closeWindow.bind(InspectorFrontendHost)); |
+ this._closeButton = new WebInspector.ToolbarButton(WebInspector.UIString('Close'), 'delete-toolbar-item'); |
+ this._closeButton.addEventListener('click', InspectorFrontendHost.closeWindow.bind(InspectorFrontendHost)); |
if (!canDock) { |
- this._dockSide = WebInspector.DockController.State.Undocked; |
- this._updateUI(); |
- return; |
+ this._dockSide = WebInspector.DockController.State.Undocked; |
+ this._updateUI(); |
+ return; |
} |
- this._states = [WebInspector.DockController.State.DockedToRight, WebInspector.DockController.State.DockedToBottom, WebInspector.DockController.State.Undocked]; |
- this._currentDockStateSetting = WebInspector.settings.moduleSetting("currentDockState"); |
+ this._states = [ |
+ WebInspector.DockController.State.DockedToRight, WebInspector.DockController.State.DockedToBottom, |
+ WebInspector.DockController.State.Undocked |
+ ]; |
+ this._currentDockStateSetting = WebInspector.settings.moduleSetting('currentDockState'); |
this._currentDockStateSetting.addChangeListener(this._dockSideChanged, this); |
- this._lastDockStateSetting = WebInspector.settings.createSetting("lastDockState", "bottom"); |
+ this._lastDockStateSetting = WebInspector.settings.createSetting('lastDockState', 'bottom'); |
if (this._states.indexOf(this._currentDockStateSetting.get()) === -1) |
- this._currentDockStateSetting.set("right"); |
+ this._currentDockStateSetting.set('right'); |
if (this._states.indexOf(this._lastDockStateSetting.get()) === -1) |
- this._currentDockStateSetting.set("bottom"); |
+ this._currentDockStateSetting.set('bottom'); |
+ } |
+ |
+ initialize() { |
+ if (!this._canDock) |
+ return; |
+ |
+ this._titles = [ |
+ WebInspector.UIString('Dock to right'), WebInspector.UIString('Dock to bottom'), |
+ WebInspector.UIString('Undock into separate window') |
+ ]; |
+ this._dockSideChanged(); |
+ } |
+ |
+ _dockSideChanged() { |
+ this.setDockSide(this._currentDockStateSetting.get()); |
+ } |
+ |
+ /** |
+ * @return {string} |
+ */ |
+ dockSide() { |
+ return this._dockSide; |
+ } |
+ |
+ /** |
+ * @return {boolean} |
+ */ |
+ canDock() { |
+ return this._canDock; |
+ } |
+ |
+ /** |
+ * @return {boolean} |
+ */ |
+ isVertical() { |
+ return this._dockSide === WebInspector.DockController.State.DockedToRight; |
+ } |
+ |
+ /** |
+ * @param {string} dockSide |
+ * @suppressGlobalPropertiesCheck |
+ */ |
+ setDockSide(dockSide) { |
+ if (this._states.indexOf(dockSide) === -1) |
+ dockSide = this._states[0]; |
+ |
+ if (this._dockSide === dockSide) |
+ return; |
+ |
+ if (this._dockSide) |
+ this._lastDockStateSetting.set(this._dockSide); |
+ |
+ this._savedFocus = document.deepActiveElement(); |
+ var eventData = {from: this._dockSide, to: dockSide}; |
+ this.dispatchEventToListeners(WebInspector.DockController.Events.BeforeDockSideChanged, eventData); |
+ console.timeStamp('DockController.setIsDocked'); |
+ this._dockSide = dockSide; |
+ this._currentDockStateSetting.set(dockSide); |
+ InspectorFrontendHost.setIsDocked( |
+ dockSide !== WebInspector.DockController.State.Undocked, this._setIsDockedResponse.bind(this, eventData)); |
+ this._updateUI(); |
+ this.dispatchEventToListeners(WebInspector.DockController.Events.DockSideChanged, eventData); |
+ } |
+ |
+ /** |
+ * @param {{from: string, to: string}} eventData |
+ */ |
+ _setIsDockedResponse(eventData) { |
+ this.dispatchEventToListeners(WebInspector.DockController.Events.AfterDockSideChanged, eventData); |
+ if (this._savedFocus) { |
+ this._savedFocus.focus(); |
+ this._savedFocus = null; |
+ } |
+ } |
+ |
+ /** |
+ * @suppressGlobalPropertiesCheck |
+ */ |
+ _updateUI() { |
+ var body = document.body; // Only for main window. |
+ switch (this._dockSide) { |
+ case WebInspector.DockController.State.DockedToBottom: |
+ body.classList.remove('undocked'); |
+ body.classList.remove('dock-to-right'); |
+ body.classList.add('dock-to-bottom'); |
+ break; |
+ case WebInspector.DockController.State.DockedToRight: |
+ body.classList.remove('undocked'); |
+ body.classList.add('dock-to-right'); |
+ body.classList.remove('dock-to-bottom'); |
+ break; |
+ case WebInspector.DockController.State.Undocked: |
+ body.classList.add('undocked'); |
+ body.classList.remove('dock-to-right'); |
+ body.classList.remove('dock-to-bottom'); |
+ break; |
+ } |
+ this._closeButton.setVisible(this._dockSide !== WebInspector.DockController.State.Undocked); |
+ } |
+ |
+ _toggleDockSide() { |
+ if (this._lastDockStateSetting.get() === this._currentDockStateSetting.get()) { |
+ var index = this._states.indexOf(this._currentDockStateSetting.get()) || 0; |
+ this._lastDockStateSetting.set(this._states[(index + 1) % this._states.length]); |
+ } |
+ this.setDockSide(this._lastDockStateSetting.get()); |
+ } |
}; |
WebInspector.DockController.State = { |
- DockedToBottom: "bottom", |
- DockedToRight: "right", |
- Undocked: "undocked" |
+ DockedToBottom: 'bottom', |
+ DockedToRight: 'right', |
+ Undocked: 'undocked' |
}; |
// Use BeforeDockSideChanged to do something before all the UI bits are updated, |
@@ -68,165 +179,40 @@ WebInspector.DockController.State = { |
/** @enum {symbol} */ |
WebInspector.DockController.Events = { |
- BeforeDockSideChanged: Symbol("BeforeDockSideChanged"), |
- DockSideChanged: Symbol("DockSideChanged"), |
- AfterDockSideChanged: Symbol("AfterDockSideChanged") |
-}; |
- |
-WebInspector.DockController.prototype = { |
- initialize: function() |
- { |
- if (!this._canDock) |
- return; |
- |
- this._titles = [WebInspector.UIString("Dock to right"), WebInspector.UIString("Dock to bottom"), WebInspector.UIString("Undock into separate window")]; |
- this._dockSideChanged(); |
- }, |
- |
- _dockSideChanged: function() |
- { |
- this.setDockSide(this._currentDockStateSetting.get()); |
- }, |
- |
- /** |
- * @return {string} |
- */ |
- dockSide: function() |
- { |
- return this._dockSide; |
- }, |
- |
- /** |
- * @return {boolean} |
- */ |
- canDock: function() |
- { |
- return this._canDock; |
- }, |
- |
- /** |
- * @return {boolean} |
- */ |
- isVertical: function() |
- { |
- return this._dockSide === WebInspector.DockController.State.DockedToRight; |
- }, |
- |
- /** |
- * @param {string} dockSide |
- * @suppressGlobalPropertiesCheck |
- */ |
- setDockSide: function(dockSide) |
- { |
- if (this._states.indexOf(dockSide) === -1) |
- dockSide = this._states[0]; |
- |
- if (this._dockSide === dockSide) |
- return; |
- |
- if (this._dockSide) |
- this._lastDockStateSetting.set(this._dockSide); |
- |
- this._savedFocus = document.deepActiveElement(); |
- var eventData = { from: this._dockSide, to: dockSide }; |
- this.dispatchEventToListeners(WebInspector.DockController.Events.BeforeDockSideChanged, eventData); |
- console.timeStamp("DockController.setIsDocked"); |
- this._dockSide = dockSide; |
- this._currentDockStateSetting.set(dockSide); |
- InspectorFrontendHost.setIsDocked(dockSide !== WebInspector.DockController.State.Undocked, this._setIsDockedResponse.bind(this, eventData)); |
- this._updateUI(); |
- this.dispatchEventToListeners(WebInspector.DockController.Events.DockSideChanged, eventData); |
- }, |
- |
- /** |
- * @param {{from: string, to: string}} eventData |
- */ |
- _setIsDockedResponse: function(eventData) |
- { |
- this.dispatchEventToListeners(WebInspector.DockController.Events.AfterDockSideChanged, eventData); |
- if (this._savedFocus) { |
- this._savedFocus.focus(); |
- this._savedFocus = null; |
- } |
- }, |
- |
- /** |
- * @suppressGlobalPropertiesCheck |
- */ |
- _updateUI: function() |
- { |
- var body = document.body; // Only for main window. |
- switch (this._dockSide) { |
- case WebInspector.DockController.State.DockedToBottom: |
- body.classList.remove("undocked"); |
- body.classList.remove("dock-to-right"); |
- body.classList.add("dock-to-bottom"); |
- break; |
- case WebInspector.DockController.State.DockedToRight: |
- body.classList.remove("undocked"); |
- body.classList.add("dock-to-right"); |
- body.classList.remove("dock-to-bottom"); |
- break; |
- case WebInspector.DockController.State.Undocked: |
- body.classList.add("undocked"); |
- body.classList.remove("dock-to-right"); |
- body.classList.remove("dock-to-bottom"); |
- break; |
- } |
- this._closeButton.setVisible(this._dockSide !== WebInspector.DockController.State.Undocked); |
- }, |
- |
- _toggleDockSide: function() |
- { |
- if (this._lastDockStateSetting.get() === this._currentDockStateSetting.get()) { |
- var index = this._states.indexOf(this._currentDockStateSetting.get()) || 0; |
- this._lastDockStateSetting.set(this._states[(index + 1) % this._states.length]); |
- } |
- this.setDockSide(this._lastDockStateSetting.get()); |
- }, |
- |
- __proto__: WebInspector.Object.prototype |
+ BeforeDockSideChanged: Symbol('BeforeDockSideChanged'), |
+ DockSideChanged: Symbol('DockSideChanged'), |
+ AfterDockSideChanged: Symbol('AfterDockSideChanged') |
}; |
/** |
- * @constructor |
* @implements {WebInspector.ActionDelegate} |
+ * @unrestricted |
*/ |
-WebInspector.DockController.ToggleDockActionDelegate = function() |
-{ |
-}; |
- |
-WebInspector.DockController.ToggleDockActionDelegate.prototype = { |
- /** |
- * @override |
- * @param {!WebInspector.Context} context |
- * @param {string} actionId |
- * @return {boolean} |
- */ |
- handleAction: function(context, actionId) |
- { |
- WebInspector.dockController._toggleDockSide(); |
- return true; |
- } |
+WebInspector.DockController.ToggleDockActionDelegate = class { |
+ /** |
+ * @override |
+ * @param {!WebInspector.Context} context |
+ * @param {string} actionId |
+ * @return {boolean} |
+ */ |
+ handleAction(context, actionId) { |
+ WebInspector.dockController._toggleDockSide(); |
+ return true; |
+ } |
}; |
/** |
- * @constructor |
* @implements {WebInspector.ToolbarItem.Provider} |
+ * @unrestricted |
*/ |
-WebInspector.DockController.CloseButtonProvider = function() |
-{ |
-}; |
- |
-WebInspector.DockController.CloseButtonProvider.prototype = { |
- /** |
- * @override |
- * @return {?WebInspector.ToolbarItem} |
- */ |
- item: function() |
- { |
- return WebInspector.dockController._closeButton; |
- } |
+WebInspector.DockController.CloseButtonProvider = class { |
+ /** |
+ * @override |
+ * @return {?WebInspector.ToolbarItem} |
+ */ |
+ item() { |
+ return WebInspector.dockController._closeButton; |
+ } |
}; |
/** |