Title: [243272] trunk/Source/WebInspectorUI
- Revision
- 243272
- Author
- [email protected]
- Date
- 2019-03-20 19:27:35 -0700 (Wed, 20 Mar 2019)
Log Message
Web Inspector: Canvas: rework how Canvas.enable/Canvas.disable is used so that events are not sent when the Canvas tab isn't enabled
https://bugs.webkit.org/show_bug.cgi?id=195828
<rdar://problem/48941756>
Reviewed by Timothy Hatcher.
* UserInterface/Controllers/CanvasManager.js:
(WI.CanvasManager):
(WI.CanvasManager.prototype.initializeTarget):
(WI.CanvasManager.prototype.enable): Added.
(WI.CanvasManager.prototype.disable): Added.
* UserInterface/Views/CanvasTabContentView.js:
(WI.CanvasTabContentView):
(WI.CanvasTabContentView.prototype.closed): Added.
* UserInterface/Base/Test.js:
(WI.contentLoaded):
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (243271 => 243272)
--- trunk/Source/WebInspectorUI/ChangeLog 2019-03-21 02:23:21 UTC (rev 243271)
+++ trunk/Source/WebInspectorUI/ChangeLog 2019-03-21 02:27:35 UTC (rev 243272)
@@ -1,5 +1,26 @@
2019-03-20 Devin Rousso <[email protected]>
+ Web Inspector: Canvas: rework how Canvas.enable/Canvas.disable is used so that events are not sent when the Canvas tab isn't enabled
+ https://bugs.webkit.org/show_bug.cgi?id=195828
+ <rdar://problem/48941756>
+
+ Reviewed by Timothy Hatcher.
+
+ * UserInterface/Controllers/CanvasManager.js:
+ (WI.CanvasManager):
+ (WI.CanvasManager.prototype.initializeTarget):
+ (WI.CanvasManager.prototype.enable): Added.
+ (WI.CanvasManager.prototype.disable): Added.
+
+ * UserInterface/Views/CanvasTabContentView.js:
+ (WI.CanvasTabContentView):
+ (WI.CanvasTabContentView.prototype.closed): Added.
+
+ * UserInterface/Base/Test.js:
+ (WI.contentLoaded):
+
+2019-03-20 Devin Rousso <[email protected]>
+
Web Inspector: Sources: collapsing a section doesn't shrink the space used by that section
https://bugs.webkit.org/show_bug.cgi?id=196045
Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/CanvasManager.js (243271 => 243272)
--- trunk/Source/WebInspectorUI/UserInterface/Controllers/CanvasManager.js 2019-03-21 02:23:21 UTC (rev 243271)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/CanvasManager.js 2019-03-21 02:27:35 UTC (rev 243272)
@@ -31,11 +31,12 @@
{
super();
- WI.Frame.addEventListener(WI.Frame.Event.MainResourceDidChange, this._mainResourceDidChange, this);
-
+ this._enabled = false;
this._canvasIdentifierMap = new Map;
this._shaderProgramIdentifierMap = new Map;
this._importedRecordings = new Set;
+
+ WI.Frame.addEventListener(WI.Frame.Event.MainResourceDidChange, this._mainResourceDidChange, this);
}
// Target
@@ -42,6 +43,9 @@
initializeTarget(target)
{
+ if (!this._enabled)
+ return;
+
if (target.CanvasAgent) {
target.CanvasAgent.enable();
@@ -97,6 +101,32 @@
this.dispatchEventToListeners(WI.CanvasManager.Event.RecordingImported, {recording, initiatedByUser: true});
}
+ enable()
+ {
+ console.assert(!this._enabled);
+
+ this._enabled = true;
+
+ for (let target of WI.targets)
+ this.initializeTarget(target);
+ }
+
+ disable()
+ {
+ console.assert(this._enabled);
+
+ for (let target of WI.targets) {
+ if (target.CanvasAgent)
+ target.CanvasAgent.disable();
+ }
+
+ this._canvasIdentifierMap.clear();
+ this._shaderProgramIdentifierMap.clear();
+ this._importedRecordings.clear();
+
+ this._enabled = false;
+ }
+
setRecordingAutoCaptureFrameCount(enabled, count)
{
console.assert(!isNaN(count) && count >= 0);
Modified: trunk/Source/WebInspectorUI/UserInterface/Test/Test.js (243271 => 243272)
--- trunk/Source/WebInspectorUI/UserInterface/Test/Test.js 2019-03-21 02:23:21 UTC (rev 243271)
+++ trunk/Source/WebInspectorUI/UserInterface/Test/Test.js 2019-03-21 02:27:35 UTC (rev 243272)
@@ -129,6 +129,9 @@
WI.contentLoaded = function()
{
+ // Things that would normally get called by the UI, that we still want to do in tests.
+ WI.canvasManager.enable();
+
// Signal that the frontend is now ready to receive messages.
InspectorFrontendAPI.loadCompleted();
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CanvasTabContentView.js (243271 => 243272)
--- trunk/Source/WebInspectorUI/UserInterface/Views/CanvasTabContentView.js 2019-03-21 02:23:21 UTC (rev 243271)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CanvasTabContentView.js 2019-03-21 02:27:35 UTC (rev 243272)
@@ -58,6 +58,8 @@
this.element.addEventListener("dragover", this._handleDragOver.bind(this));
this.element.addEventListener("drop", this._handleDrop.bind(this));
+
+ WI.canvasManager.enable();
}
static tabInfo()
@@ -122,6 +124,13 @@
super.hidden();
}
+ closed()
+ {
+ WI.canvasManager.disable();
+
+ super.closed();
+ }
+
restoreStateFromCookie(cookie)
{
// FIXME: implement once <https://webkit.org/b/177606> is complete.
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes