Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/ui/Drawer.js

Issue 2205123003: DevTools: introduce view locations, allow opening views by id. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review comments addressed Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2009 Joseph Pecoraro
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
15 * its contributors may be used to endorse or promote products derived
16 * from this software without specific prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */
29
30 /**
31 * @constructor
32 * @extends {WebInspector.VBox}
33 * @param {!WebInspector.SplitWidget} splitWidget
34 */
35 WebInspector.Drawer = function(splitWidget)
36 {
37 WebInspector.VBox.call(this);
38 this.element.id = "drawer-contents";
39
40 this._splitWidget = splitWidget;
41 splitWidget.hideDefaultResizer();
42 splitWidget.setSidebarWidget(this);
43 this.setMinimumSize(0, 27);
44
45 this._extensibleTabbedPane = new WebInspector.ExtensibleTabbedPane("drawer-v iew", true);
46 this._extensibleTabbedPane.enableMoreTabsButton();
47 var tabbedPane = this._extensibleTabbedPane.tabbedPane();
48
49 var toolbar = new WebInspector.Toolbar("drawer-close-toolbar");
50 var closeButton = new WebInspector.ToolbarButton(WebInspector.UIString("Clos e drawer"), "delete-toolbar-item");
51 closeButton.addEventListener("click", this.closeDrawer.bind(this));
52 toolbar.appendToolbarItem(closeButton);
53 tabbedPane.appendAfterTabStrip(toolbar.element);
54
55 splitWidget.installResizer(tabbedPane.headerElement());
56 this._extensibleTabbedPane.show(this.element);
57 }
58
59 WebInspector.Drawer.prototype = {
60 /**
61 * @param {string} id
62 * @param {boolean=} immediate
63 */
64 showView: function(id, immediate)
65 {
66 this._innerShow(immediate || false);
67 WebInspector.userMetrics.drawerShown(id);
68 this._extensibleTabbedPane.showTab(id);
69 },
70
71 showDrawer: function()
72 {
73 this._innerShow(false);
74 },
75
76 /**
77 * @param {boolean} immediate
78 */
79 _innerShow: function(immediate)
80 {
81 if (!this.isShowing())
82 this._splitWidget.showBoth(!immediate);
83 this._extensibleTabbedPane.focus();
84 },
85
86 closeDrawer: function()
87 {
88 if (!this.isShowing())
89 return;
90 WebInspector.restoreFocusFromElement(this.element);
91 this._splitWidget.hideSidebar(true);
92 },
93
94 __proto__: WebInspector.VBox.prototype
95 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698