| Index: third_party/WebKit/Source/devtools/front_end/timeline/TransformController.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/timeline/TransformController.js b/third_party/WebKit/Source/devtools/front_end/timeline/TransformController.js
|
| deleted file mode 100644
|
| index 2c0d0f73f501c7b95bf038fee3969b7a83e36d81..0000000000000000000000000000000000000000
|
| --- a/third_party/WebKit/Source/devtools/front_end/timeline/TransformController.js
|
| +++ /dev/null
|
| @@ -1,333 +0,0 @@
|
| -/*
|
| - * Copyright 2014 The Chromium Authors. All rights reserved.
|
| - * Use of this source code is governed by a BSD-style license that can be
|
| - * found in the LICENSE file.
|
| - */
|
| -
|
| -/**
|
| - * @constructor
|
| - * @extends {WebInspector.Object}
|
| - * @param {!Element} element
|
| - * @param {boolean=} disableRotate
|
| - */
|
| -WebInspector.TransformController = function(element, disableRotate)
|
| -{
|
| - this._shortcuts = {};
|
| - this.element = element;
|
| - if (this.element.tabIndex < 0)
|
| - this.element.tabIndex = 0;
|
| - this._registerShortcuts();
|
| - WebInspector.installDragHandle(element, this._onDragStart.bind(this), this._onDrag.bind(this), this._onDragEnd.bind(this), "move", null);
|
| - element.addEventListener("keydown", this._onKeyDown.bind(this), false);
|
| - element.addEventListener("keyup", this._onKeyUp.bind(this), false);
|
| - element.addEventListener("mousewheel", this._onMouseWheel.bind(this), false);
|
| - this._minScale = 0;
|
| - this._maxScale = Infinity;
|
| -
|
| - this._controlPanelToolbar = new WebInspector.Toolbar("transform-control-panel");
|
| -
|
| - /** @type {!Object<string, !WebInspector.ToolbarToggle>} */
|
| - this._modeButtons = {};
|
| - if (!disableRotate) {
|
| - var panModeButton = new WebInspector.ToolbarToggle(WebInspector.UIString("Pan mode (X)"), "pan-toolbar-item");
|
| - panModeButton.addEventListener("click", this._setMode.bind(this, WebInspector.TransformController.Modes.Pan));
|
| - this._modeButtons[WebInspector.TransformController.Modes.Pan] = panModeButton;
|
| - this._controlPanelToolbar.appendToolbarItem(panModeButton);
|
| - var rotateModeButton = new WebInspector.ToolbarToggle(WebInspector.UIString("Rotate mode (V)"), "rotate-toolbar-item");
|
| - rotateModeButton.addEventListener("click", this._setMode.bind(this, WebInspector.TransformController.Modes.Rotate));
|
| - this._modeButtons[WebInspector.TransformController.Modes.Rotate] = rotateModeButton;
|
| - this._controlPanelToolbar.appendToolbarItem(rotateModeButton);
|
| - }
|
| - this._setMode(WebInspector.TransformController.Modes.Pan);
|
| -
|
| - var resetButton = new WebInspector.ToolbarButton(WebInspector.UIString("Reset transform (0)"), "center-toolbar-item");
|
| - resetButton.addEventListener("click", this.resetAndNotify.bind(this, undefined));
|
| - this._controlPanelToolbar.appendToolbarItem(resetButton);
|
| -
|
| - this._reset();
|
| -}
|
| -
|
| -/** @enum {symbol} */
|
| -WebInspector.TransformController.Events = {
|
| - TransformChanged: Symbol("TransformChanged")
|
| -}
|
| -
|
| -/**
|
| - * @enum {string}
|
| - */
|
| -WebInspector.TransformController.Modes = {
|
| - Pan: "Pan",
|
| - Rotate: "Rotate",
|
| -}
|
| -
|
| -WebInspector.TransformController.prototype = {
|
| - /**
|
| - * @return {!WebInspector.Toolbar}
|
| - */
|
| - toolbar: function()
|
| - {
|
| - return this._controlPanelToolbar;
|
| - },
|
| -
|
| - _onKeyDown: function(event)
|
| - {
|
| - if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Shift.code) {
|
| - this._toggleMode();
|
| - return;
|
| - }
|
| -
|
| - var shortcutKey = WebInspector.KeyboardShortcut.makeKeyFromEventIgnoringModifiers(event);
|
| - var handler = this._shortcuts[shortcutKey];
|
| - if (handler && handler(event))
|
| - event.consume();
|
| - },
|
| -
|
| - _onKeyUp: function(event)
|
| - {
|
| - if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Shift.code)
|
| - this._toggleMode();
|
| - },
|
| -
|
| - _addShortcuts: function(keys, handler)
|
| - {
|
| - for (var i = 0; i < keys.length; ++i)
|
| - this._shortcuts[keys[i].key] = handler;
|
| - },
|
| -
|
| - _registerShortcuts: function()
|
| - {
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.ResetView, this.resetAndNotify.bind(this));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.PanMode, this._setMode.bind(this, WebInspector.TransformController.Modes.Pan));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.RotateMode, this._setMode.bind(this, WebInspector.TransformController.Modes.Rotate));
|
| - var zoomFactor = 1.1;
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.ZoomIn, this._onKeyboardZoom.bind(this, zoomFactor));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.ZoomOut, this._onKeyboardZoom.bind(this, 1 / zoomFactor));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.Up, this._onKeyboardPanOrRotate.bind(this, 0, -1));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.Down, this._onKeyboardPanOrRotate.bind(this, 0, 1));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.Left, this._onKeyboardPanOrRotate.bind(this, -1, 0));
|
| - this._addShortcuts(WebInspector.ShortcutsScreen.LayersPanelShortcuts.Right, this._onKeyboardPanOrRotate.bind(this, 1, 0));
|
| - },
|
| -
|
| - _postChangeEvent: function()
|
| - {
|
| - this.dispatchEventToListeners(WebInspector.TransformController.Events.TransformChanged);
|
| - },
|
| -
|
| - _reset: function()
|
| - {
|
| - this._scale = 1;
|
| - this._offsetX = 0;
|
| - this._offsetY = 0;
|
| - this._rotateX = 0;
|
| - this._rotateY = 0;
|
| - },
|
| -
|
| - _toggleMode: function()
|
| - {
|
| - this._setMode(this._mode === WebInspector.TransformController.Modes.Pan ? WebInspector.TransformController.Modes.Rotate : WebInspector.TransformController.Modes.Pan);
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.TransformController.Modes} mode
|
| - */
|
| - _setMode: function(mode)
|
| - {
|
| - if (this._mode === mode)
|
| - return;
|
| - this._mode = mode;
|
| - this._updateModeButtons();
|
| - this.element.focus();
|
| - },
|
| -
|
| - _updateModeButtons: function()
|
| - {
|
| - for (var mode in this._modeButtons)
|
| - this._modeButtons[mode].setToggled(mode === this._mode);
|
| - },
|
| -
|
| - /**
|
| - * @param {!Event=} event
|
| - */
|
| - resetAndNotify: function(event)
|
| - {
|
| - this._reset();
|
| - this._postChangeEvent();
|
| - if (event)
|
| - event.preventDefault();
|
| - this.element.focus();
|
| - },
|
| -
|
| - /**
|
| - * @param {number} minScale
|
| - * @param {number} maxScale
|
| - */
|
| - setScaleConstraints: function(minScale, maxScale)
|
| - {
|
| - this._minScale = minScale;
|
| - this._maxScale = maxScale;
|
| - this._scale = Number.constrain(this._scale, minScale, maxScale);
|
| - },
|
| -
|
| - /**
|
| - * @param {number} minX
|
| - * @param {number} maxX
|
| - * @param {number} minY
|
| - * @param {number} maxY
|
| - */
|
| - clampOffsets: function(minX, maxX, minY, maxY)
|
| - {
|
| - this._offsetX = Number.constrain(this._offsetX, minX, maxX);
|
| - this._offsetY = Number.constrain(this._offsetY, minY, maxY);
|
| - },
|
| -
|
| - /**
|
| - * @return {number}
|
| - */
|
| - scale: function()
|
| - {
|
| - return this._scale;
|
| - },
|
| -
|
| - /**
|
| - * @return {number}
|
| - */
|
| - offsetX: function()
|
| - {
|
| - return this._offsetX;
|
| - },
|
| -
|
| - /**
|
| - * @return {number}
|
| - */
|
| - offsetY: function()
|
| - {
|
| - return this._offsetY;
|
| - },
|
| -
|
| - /**
|
| - * @return {number}
|
| - */
|
| - rotateX: function()
|
| - {
|
| - return this._rotateX;
|
| - },
|
| -
|
| - /**
|
| - * @return {number}
|
| - */
|
| - rotateY: function()
|
| - {
|
| - return this._rotateY;
|
| - },
|
| -
|
| - /**
|
| - * @param {number} scaleFactor
|
| - * @param {number} x
|
| - * @param {number} y
|
| - */
|
| - _onScale: function(scaleFactor, x, y)
|
| - {
|
| - scaleFactor = Number.constrain(this._scale * scaleFactor, this._minScale, this._maxScale) / this._scale;
|
| - this._scale *= scaleFactor;
|
| - this._offsetX -= (x - this._offsetX) * (scaleFactor - 1);
|
| - this._offsetY -= (y - this._offsetY) * (scaleFactor - 1);
|
| - this._postChangeEvent();
|
| - },
|
| -
|
| - /**
|
| - * @param {number} offsetX
|
| - * @param {number} offsetY
|
| - */
|
| - _onPan: function(offsetX, offsetY)
|
| - {
|
| - this._offsetX += offsetX;
|
| - this._offsetY += offsetY;
|
| - this._postChangeEvent();
|
| - },
|
| -
|
| - /**
|
| - * @param {number} rotateX
|
| - * @param {number} rotateY
|
| - */
|
| - _onRotate: function(rotateX, rotateY)
|
| - {
|
| - this._rotateX = rotateX;
|
| - this._rotateY = rotateY;
|
| - this._postChangeEvent();
|
| - },
|
| -
|
| - /**
|
| - * @param {number} zoomFactor
|
| - */
|
| - _onKeyboardZoom: function(zoomFactor)
|
| - {
|
| - this._onScale(zoomFactor, this.element.clientWidth / 2, this.element.clientHeight / 2);
|
| - },
|
| -
|
| - /**
|
| - * @param {number} xMultiplier
|
| - * @param {number} yMultiplier
|
| - */
|
| - _onKeyboardPanOrRotate: function(xMultiplier, yMultiplier)
|
| - {
|
| - var panStepInPixels = 6;
|
| - var rotateStepInDegrees = 5;
|
| -
|
| - if (this._mode === WebInspector.TransformController.Modes.Rotate) {
|
| - // Sic! _onRotate treats X and Y as "rotate around X" and "rotate around Y", so swap X/Y multiplers.
|
| - this._onRotate(this._rotateX + yMultiplier * rotateStepInDegrees, this._rotateY + xMultiplier * rotateStepInDegrees);
|
| - } else {
|
| - this._onPan(xMultiplier * panStepInPixels, yMultiplier * panStepInPixels);
|
| - }
|
| - },
|
| -
|
| - /**
|
| - * @param {!Event} event
|
| - */
|
| - _onMouseWheel: function(event)
|
| - {
|
| - /** @const */
|
| - var zoomFactor = 1.1;
|
| - /** @const */
|
| - var mouseWheelZoomSpeed = 1 / 120;
|
| - var scaleFactor = Math.pow(zoomFactor, event.wheelDeltaY * mouseWheelZoomSpeed);
|
| - this._onScale(scaleFactor, event.clientX - this.element.totalOffsetLeft(), event.clientY - this.element.totalOffsetTop());
|
| - },
|
| -
|
| - /**
|
| - * @param {!Event} event
|
| - */
|
| - _onDrag: function(event)
|
| - {
|
| - if (this._mode === WebInspector.TransformController.Modes.Rotate) {
|
| - this._onRotate(this._oldRotateX + (this._originY - event.clientY) / this.element.clientHeight * 180, this._oldRotateY - (this._originX - event.clientX) / this.element.clientWidth * 180);
|
| - } else {
|
| - this._onPan(event.clientX - this._originX, event.clientY - this._originY);
|
| - this._originX = event.clientX;
|
| - this._originY = event.clientY;
|
| - }
|
| - },
|
| -
|
| - /**
|
| - * @param {!MouseEvent} event
|
| - */
|
| - _onDragStart: function(event)
|
| - {
|
| - this.element.focus();
|
| - this._originX = event.clientX;
|
| - this._originY = event.clientY;
|
| - this._oldRotateX = this._rotateX;
|
| - this._oldRotateY = this._rotateY;
|
| - return true;
|
| - },
|
| -
|
| - _onDragEnd: function()
|
| - {
|
| - delete this._originX;
|
| - delete this._originY;
|
| - delete this._oldRotateX;
|
| - delete this._oldRotateY;
|
| - },
|
| -
|
| - __proto__: WebInspector.Object.prototype
|
| -}
|
|
|