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

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

Issue 2372303003: DevTools: introduce external service client (behind experiment). (Closed)
Patch Set: external linter Created 4 years, 2 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
1 /* 1 /*
2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. 2 * Copyright (C) 2008 Apple Inc. All Rights Reserved.
3 * Copyright (C) 2011 Google Inc. All Rights Reserved. 3 * Copyright (C) 2011 Google Inc. All Rights Reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 146
147 _processWasShown: function() 147 _processWasShown: function()
148 { 148 {
149 if (this._inNotification()) 149 if (this._inNotification())
150 return; 150 return;
151 this.restoreScrollPositions(); 151 this.restoreScrollPositions();
152 this._notify(this.wasShown); 152 this._notify(this.wasShown);
153 this._callOnVisibleChildren(this._processWasShown); 153 this._callOnVisibleChildren(this._processWasShown);
154 }, 154 },
155 155
156 _processWasDetachedFromHierarchy: function()
157 {
158 this._notify(this.wasDetachedFromHierarchy);
159 var copy = this._children.slice();
160 for (var widget of copy)
161 widget._processWasDetachedFromHierarchy();
162 },
163
156 _processWillHide: function() 164 _processWillHide: function()
157 { 165 {
158 if (this._inNotification()) 166 if (this._inNotification())
159 return; 167 return;
160 this.storeScrollPositions(); 168 this.storeScrollPositions();
161 169
162 this._callOnVisibleChildren(this._processWillHide); 170 this._callOnVisibleChildren(this._processWillHide);
163 this._notify(this.willHide); 171 this._notify(this.willHide);
164 this._isShowing = false; 172 this._isShowing = false;
165 }, 173 },
(...skipping 27 matching lines...) Expand all
193 }, 201 },
194 202
195 wasShown: function() 203 wasShown: function()
196 { 204 {
197 }, 205 },
198 206
199 willHide: function() 207 willHide: function()
200 { 208 {
201 }, 209 },
202 210
211 wasDetachedFromHierarchy: function()
212 {
213 },
214
203 onResize: function() 215 onResize: function()
204 { 216 {
205 }, 217 },
206 218
207 onLayout: function() 219 onLayout: function()
208 { 220 {
209 }, 221 },
210 222
211 /** 223 /**
212 * @param {!Element} parentElement 224 * @param {!Element} parentElement
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 // Update widget hierarchy. 343 // Update widget hierarchy.
332 if (this._parentWidget) { 344 if (this._parentWidget) {
333 var childIndex = this._parentWidget._children.indexOf(this); 345 var childIndex = this._parentWidget._children.indexOf(this);
334 WebInspector.Widget.__assert(childIndex >= 0, "Attempt to remove non -child widget"); 346 WebInspector.Widget.__assert(childIndex >= 0, "Attempt to remove non -child widget");
335 this._parentWidget._children.splice(childIndex, 1); 347 this._parentWidget._children.splice(childIndex, 1);
336 if (this._parentWidget._defaultFocusedChild === this) 348 if (this._parentWidget._defaultFocusedChild === this)
337 this._parentWidget._defaultFocusedChild = null; 349 this._parentWidget._defaultFocusedChild = null;
338 this._parentWidget.childWasDetached(this); 350 this._parentWidget.childWasDetached(this);
339 var parent = this._parentWidget; 351 var parent = this._parentWidget;
340 this._parentWidget = null; 352 this._parentWidget = null;
353 this._processWasDetachedFromHierarchy();
341 } else { 354 } else {
342 WebInspector.Widget.__assert(this._isRoot, "Removing non-root widget from DOM"); 355 WebInspector.Widget.__assert(this._isRoot, "Removing non-root widget from DOM");
343 } 356 }
344 }, 357 },
345 358
346 detachChildWidgets: function() 359 detachChildWidgets: function()
347 { 360 {
348 var children = this._children.slice(); 361 var children = this._children.slice();
349 for (var i = 0; i < children.length; ++i) 362 for (var i = 0; i < children.length; ++i)
350 children[i].detach(); 363 children[i].detach();
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after
767 { 780 {
768 WebInspector.Widget.__assert(!child.__widgetCounter && !child.__widget, "Att empt to remove element containing widget via regular DOM operation"); 781 WebInspector.Widget.__assert(!child.__widgetCounter && !child.__widget, "Att empt to remove element containing widget via regular DOM operation");
769 return WebInspector.Widget._originalRemoveChild.call(this, child); 782 return WebInspector.Widget._originalRemoveChild.call(this, child);
770 } 783 }
771 784
772 Element.prototype.removeChildren = function() 785 Element.prototype.removeChildren = function()
773 { 786 {
774 WebInspector.Widget.__assert(!this.__widgetCounter, "Attempt to remove eleme nt containing widget via regular DOM operation"); 787 WebInspector.Widget.__assert(!this.__widgetCounter, "Attempt to remove eleme nt containing widget via regular DOM operation");
775 WebInspector.Widget._originalRemoveChildren.call(this); 788 WebInspector.Widget._originalRemoveChildren.call(this);
776 } 789 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698