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

Unified Diff: resources/inspector/Panel.js

Issue 853002: Updating the Chromium reference build for Windows. The continuous... (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/reference_builds/chrome/
Patch Set: Added the symbol files back. Created 10 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « resources/inspector/ObjectProxy.js ('k') | resources/inspector/PanelEnablerView.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: resources/inspector/Panel.js
===================================================================
--- resources/inspector/Panel.js (revision 33840)
+++ resources/inspector/Panel.js (working copy)
@@ -1,347 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-WebInspector.Panel = function(createSidebar)
-{
- WebInspector.View.call(this);
- if (createSidebar)
- this._createSidebar();
-
- this.element.addStyleClass("panel");
-}
-
-WebInspector.Panel.prototype = {
- get toolbarItem()
- {
- if (this._toolbarItem)
- return this._toolbarItem;
-
- // Sample toolbar item as markup:
- // <button class="toolbar-item resources toggleable">
- // <div class="toolbar-icon"></div>
- // <div class="toolbar-label">Resources</div>
- // </button>
-
- this._toolbarItem = document.createElement("button");
- this._toolbarItem.className = "toolbar-item toggleable";
- this._toolbarItem.panel = this;
-
- if ("toolbarItemClass" in this)
- this._toolbarItem.addStyleClass(this.toolbarItemClass);
-
- var iconElement = document.createElement("div");
- iconElement.className = "toolbar-icon";
- this._toolbarItem.appendChild(iconElement);
-
- if ("toolbarItemLabel" in this) {
- var labelElement = document.createElement("div");
- labelElement.className = "toolbar-label";
- labelElement.textContent = this.toolbarItemLabel;
- this._toolbarItem.appendChild(labelElement);
- }
-
- return this._toolbarItem;
- },
-
- show: function()
- {
- WebInspector.View.prototype.show.call(this);
-
- var statusBarItems = this.statusBarItems;
- if (statusBarItems) {
- this._statusBarItemContainer = document.createElement("div");
- for (var i = 0; i < statusBarItems.length; ++i)
- this._statusBarItemContainer.appendChild(statusBarItems[i]);
- document.getElementById("main-status-bar").appendChild(this._statusBarItemContainer);
- }
-
- if ("_toolbarItem" in this)
- this._toolbarItem.addStyleClass("toggled-on");
-
- WebInspector.currentFocusElement = document.getElementById("main-panels");
- this._updateSidebarWidth();
- },
-
- hide: function()
- {
- WebInspector.View.prototype.hide.call(this);
-
- if (this._statusBarItemContainer && this._statusBarItemContainer.parentNode)
- this._statusBarItemContainer.parentNode.removeChild(this._statusBarItemContainer);
- delete this._statusBarItemContainer;
- if ("_toolbarItem" in this)
- this._toolbarItem.removeStyleClass("toggled-on");
- },
-
- attach: function()
- {
- if (!this.element.parentNode)
- document.getElementById("main-panels").appendChild(this.element);
- },
-
- searchCanceled: function(startingNewSearch)
- {
- if (this._searchResults) {
- for (var i = 0; i < this._searchResults.length; ++i) {
- var view = this._searchResults[i];
- if (view.searchCanceled)
- view.searchCanceled();
- delete view.currentQuery;
- }
- }
-
- WebInspector.updateSearchMatchesCount(0, this);
-
- if (this._currentSearchChunkIntervalIdentifier) {
- clearInterval(this._currentSearchChunkIntervalIdentifier);
- delete this._currentSearchChunkIntervalIdentifier;
- }
-
- this._totalSearchMatches = 0;
- this._currentSearchResultIndex = 0;
- this._searchResults = [];
- },
-
- performSearch: function(query)
- {
- // Call searchCanceled since it will reset everything we need before doing a new search.
- this.searchCanceled(true);
-
- var searchableViews = this.searchableViews;
- if (!searchableViews || !searchableViews.length)
- return;
-
- var parentElement = this.viewsContainerElement;
- var visibleView = this.visibleView;
- var sortFuction = this.searchResultsSortFunction;
-
- var matchesCountUpdateTimeout = null;
-
- function updateMatchesCount()
- {
- WebInspector.updateSearchMatchesCount(this._totalSearchMatches, this);
- matchesCountUpdateTimeout = null;
- }
-
- function updateMatchesCountSoon()
- {
- if (matchesCountUpdateTimeout)
- return;
- // Update the matches count every half-second so it doesn't feel twitchy.
- matchesCountUpdateTimeout = setTimeout(updateMatchesCount.bind(this), 500);
- }
-
- function finishedCallback(view, searchMatches)
- {
- if (!searchMatches)
- return;
-
- this._totalSearchMatches += searchMatches;
- this._searchResults.push(view);
-
- if (sortFuction)
- this._searchResults.sort(sortFuction);
-
- if (this.searchMatchFound)
- this.searchMatchFound(view, searchMatches);
-
- updateMatchesCountSoon.call(this);
-
- if (view === visibleView)
- view.jumpToFirstSearchResult();
- }
-
- var i = 0;
- var panel = this;
- var boundFinishedCallback = finishedCallback.bind(this);
- var chunkIntervalIdentifier = null;
-
- // Split up the work into chunks so we don't block the
- // UI thread while processing.
-
- function processChunk()
- {
- var view = searchableViews[i];
-
- if (++i >= searchableViews.length) {
- if (panel._currentSearchChunkIntervalIdentifier === chunkIntervalIdentifier)
- delete panel._currentSearchChunkIntervalIdentifier;
- clearInterval(chunkIntervalIdentifier);
- }
-
- if (!view)
- return;
-
- if (view.element.parentNode !== parentElement && view.element.parentNode && parentElement)
- view.detach();
-
- view.currentQuery = query;
- view.performSearch(query, boundFinishedCallback);
- }
-
- processChunk();
-
- chunkIntervalIdentifier = setInterval(processChunk, 25);
- this._currentSearchChunkIntervalIdentifier = chunkIntervalIdentifier;
- },
-
- jumpToNextSearchResult: function()
- {
- if (!this.showView || !this._searchResults || !this._searchResults.length)
- return;
-
- var showFirstResult = false;
-
- this._currentSearchResultIndex = this._searchResults.indexOf(this.visibleView);
- if (this._currentSearchResultIndex === -1) {
- this._currentSearchResultIndex = 0;
- showFirstResult = true;
- }
-
- var currentView = this._searchResults[this._currentSearchResultIndex];
-
- if (currentView.showingLastSearchResult()) {
- if (++this._currentSearchResultIndex >= this._searchResults.length)
- this._currentSearchResultIndex = 0;
- currentView = this._searchResults[this._currentSearchResultIndex];
- showFirstResult = true;
- }
-
- if (currentView !== this.visibleView)
- this.showView(currentView);
-
- if (showFirstResult)
- currentView.jumpToFirstSearchResult();
- else
- currentView.jumpToNextSearchResult();
- },
-
- jumpToPreviousSearchResult: function()
- {
- if (!this.showView || !this._searchResults || !this._searchResults.length)
- return;
-
- var showLastResult = false;
-
- this._currentSearchResultIndex = this._searchResults.indexOf(this.visibleView);
- if (this._currentSearchResultIndex === -1) {
- this._currentSearchResultIndex = 0;
- showLastResult = true;
- }
-
- var currentView = this._searchResults[this._currentSearchResultIndex];
-
- if (currentView.showingFirstSearchResult()) {
- if (--this._currentSearchResultIndex < 0)
- this._currentSearchResultIndex = (this._searchResults.length - 1);
- currentView = this._searchResults[this._currentSearchResultIndex];
- showLastResult = true;
- }
-
- if (currentView !== this.visibleView)
- this.showView(currentView);
-
- if (showLastResult)
- currentView.jumpToLastSearchResult();
- else
- currentView.jumpToPreviousSearchResult();
- },
-
- handleKeyEvent: function(event)
- {
- this.sidebarTree.handleKeyEvent(event);
- },
-
- _createSidebar: function()
- {
- this.sidebarElement = document.createElement("div");
- this.sidebarElement.className = "sidebar";
- this.element.appendChild(this.sidebarElement);
-
- this.sidebarResizeElement = document.createElement("div");
- this.sidebarResizeElement.className = "sidebar-resizer-vertical";
- this.sidebarResizeElement.addEventListener("mousedown", this._startSidebarDragging.bind(this), false);
- this.element.appendChild(this.sidebarResizeElement);
-
- this.sidebarTreeElement = document.createElement("ol");
- this.sidebarTreeElement.className = "sidebar-tree";
- this.sidebarElement.appendChild(this.sidebarTreeElement);
- this.sidebarTree = new TreeOutline(this.sidebarTreeElement);
- },
-
- _startSidebarDragging: function(event)
- {
- WebInspector.elementDragStart(this.sidebarResizeElement, this._sidebarDragging.bind(this), this._endSidebarDragging.bind(this), event, "col-resize");
- },
-
- _sidebarDragging: function(event)
- {
- this._updateSidebarWidth(event.pageX);
-
- event.preventDefault();
- },
-
- _endSidebarDragging: function(event)
- {
- WebInspector.elementDragEnd(event);
- },
-
- _updateSidebarWidth: function(width)
- {
- if (this.sidebarElement.offsetWidth <= 0) {
- // The stylesheet hasn't loaded yet or the window is closed,
- // so we can't calculate what is need. Return early.
- return;
- }
-
- if (!("_currentSidebarWidth" in this))
- this._currentSidebarWidth = this.sidebarElement.offsetWidth;
-
- if (typeof width === "undefined")
- width = this._currentSidebarWidth;
-
- width = Number.constrain(width, Preferences.minSidebarWidth, window.innerWidth / 2);
-
- this._currentSidebarWidth = width;
-
- this.sidebarElement.style.width = width + "px";
- this.setMainViewWidth(width);
- this.sidebarResizeElement.style.left = (width - 3) + "px";
-
- var visibleView = this.visibleView;
- if (visibleView && "resize" in visibleView)
- visibleView.resize();
- },
-
- setMainViewWidth: function(width)
- {
- // Should be implemented by ancestors.
- }
-}
-
-WebInspector.Panel.prototype.__proto__ = WebInspector.View.prototype;
« no previous file with comments | « resources/inspector/ObjectProxy.js ('k') | resources/inspector/PanelEnablerView.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698