mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-01 06:35:42 +00:00
6148f170d7
BuiltinCommands.jsm was huge to avoid slowing things down by having many modules loading. To avoid splitting it up from slowing things down we want to delay loading commands. Create [add|remove]ItemsByModule to allow us to lazily add modules, and convert all command modules to use this. Then break up BuiltinCommands into a set of files, for each command, and do some refactoring to use JS files rather than JSMs and use "use strict". --HG-- rename : browser/devtools/commandline/Commands.jsm => browser/devtools/commandline/commands-index.js rename : browser/devtools/debugger/CmdDebugger.jsm => browser/devtools/debugger/debugger-commands.js rename : browser/devtools/inspector/CmdInspect.jsm => browser/devtools/inspector/inspector-commands.js rename : browser/devtools/responsivedesign/CmdResize.jsm => browser/devtools/responsivedesign/resize-commands.js rename : browser/devtools/scratchpad/CmdScratchpad.jsm => browser/devtools/scratchpad/scratchpad-commands.js rename : browser/devtools/styleeditor/CmdEdit.jsm => browser/devtools/styleeditor/styleeditor-commands.js rename : browser/devtools/tilt/CmdTilt.jsm => browser/devtools/tilt/tilt-commands.js
90 lines
2.9 KiB
JavaScript
90 lines
2.9 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
"use strict";
|
|
|
|
const { Cc, Ci, Cu } = require("chrome");
|
|
|
|
const BRAND_SHORT_NAME = Cc["@mozilla.org/intl/stringbundle;1"].
|
|
getService(Ci.nsIStringBundleService).
|
|
createBundle("chrome://branding/locale/brand.properties").
|
|
GetStringFromName("brandShortName");
|
|
|
|
const gcli = require("gcli/index");
|
|
|
|
exports.items = [
|
|
{
|
|
name: 'resize',
|
|
description: gcli.lookup('resizeModeDesc')
|
|
},
|
|
{
|
|
name: 'resize on',
|
|
description: gcli.lookup('resizeModeOnDesc'),
|
|
manual: gcli.lookupFormat('resizeModeManual2', [BRAND_SHORT_NAME]),
|
|
exec: gcli_cmd_resize
|
|
},
|
|
{
|
|
name: 'resize off',
|
|
description: gcli.lookup('resizeModeOffDesc'),
|
|
manual: gcli.lookupFormat('resizeModeManual2', [BRAND_SHORT_NAME]),
|
|
exec: gcli_cmd_resize
|
|
},
|
|
{
|
|
name: 'resize toggle',
|
|
buttonId: "command-button-responsive",
|
|
buttonClass: "command-button command-button-invertable",
|
|
tooltipText: gcli.lookup("resizeModeToggleTooltip"),
|
|
description: gcli.lookup('resizeModeToggleDesc'),
|
|
manual: gcli.lookupFormat('resizeModeManual2', [BRAND_SHORT_NAME]),
|
|
state: {
|
|
isChecked: function(aTarget) {
|
|
let browserWindow = aTarget.tab.ownerDocument.defaultView;
|
|
let mgr = browserWindow.ResponsiveUI.ResponsiveUIManager;
|
|
return mgr.isActiveForTab(aTarget.tab);
|
|
},
|
|
onChange: function(aTarget, aChangeHandler) {
|
|
let browserWindow = aTarget.tab.ownerDocument.defaultView;
|
|
let mgr = browserWindow.ResponsiveUI.ResponsiveUIManager;
|
|
mgr.on("on", aChangeHandler);
|
|
mgr.on("off", aChangeHandler);
|
|
},
|
|
offChange: function(aTarget, aChangeHandler) {
|
|
if (aTarget.tab) {
|
|
let browserWindow = aTarget.tab.ownerDocument.defaultView;
|
|
let mgr = browserWindow.ResponsiveUI.ResponsiveUIManager;
|
|
mgr.off("on", aChangeHandler);
|
|
mgr.off("off", aChangeHandler);
|
|
}
|
|
},
|
|
},
|
|
exec: gcli_cmd_resize
|
|
},
|
|
{
|
|
name: 'resize to',
|
|
description: gcli.lookup('resizeModeToDesc'),
|
|
params: [
|
|
{
|
|
name: 'width',
|
|
type: 'number',
|
|
description: gcli.lookup("resizePageArgWidthDesc"),
|
|
},
|
|
{
|
|
name: 'height',
|
|
type: 'number',
|
|
description: gcli.lookup("resizePageArgHeightDesc"),
|
|
},
|
|
],
|
|
exec: gcli_cmd_resize
|
|
}
|
|
];
|
|
|
|
function gcli_cmd_resize(args, context) {
|
|
let browserWindow = context.environment.chromeWindow;
|
|
let mgr = browserWindow.ResponsiveUI.ResponsiveUIManager;
|
|
mgr.handleGcliCommand(browserWindow,
|
|
browserWindow.gBrowser.selectedTab,
|
|
this.name,
|
|
args);
|
|
}
|