File tree Expand file tree Collapse file tree 2 files changed +11
-9
lines changed Expand file tree Collapse file tree 2 files changed +11
-9
lines changed Original file line number Diff line number Diff line change @@ -157,12 +157,16 @@ class DwdsVmClient {
157
157
158
158
client.registerServiceCallback ('ext.dwds.sendEvent' , (event) async {
159
159
var type = event['type' ] as String ;
160
+ var payload = event['payload' ] as Map <String , dynamic >;
160
161
switch (type) {
161
- case 'DevtoolsReady ' :
162
+ case 'DevtoolsEvent ' :
162
163
{
163
- emitEvent (DwdsEvent .debuggerReady (DateTime .now ()
164
- .difference (dwdsStats.debuggerStart)
165
- .inMilliseconds));
164
+ var screen = payload == null ? null : payload['screen' ];
165
+ if (screen == 'debugger' && dwdsStats.isFirstDebuggerReady ()) {
166
+ emitEvent (DwdsEvent .debuggerReady (DateTime .now ()
167
+ .difference (dwdsStats.debuggerStart)
168
+ .inMilliseconds));
169
+ }
166
170
}
167
171
}
168
172
return {'result' : Success ().toJson ()};
Original file line number Diff line number Diff line change @@ -88,9 +88,7 @@ void main() {
88
88
await events;
89
89
});
90
90
91
- test (
92
- 'can receive DevtoolsReady event and emit DEBUGGER_READY '
93
- 'event through service extension' , () async {
91
+ test ('can receive DevtoolsEvent and emit DEBUGGER_READY event' , () async {
94
92
var events = expectLater (
95
93
context.testServer.dwds.events,
96
94
emitsThrough (predicate ((DwdsEvent event) =>
@@ -99,8 +97,8 @@ void main() {
99
97
100
98
var response = await context.debugConnection.vmService
101
99
.callServiceExtension ('ext.dwds.sendEvent' , args: {
102
- 'type' : 'DevtoolsReady ' ,
103
- 'payload' : {},
100
+ 'type' : 'DevtoolsEvent ' ,
101
+ 'payload' : {'screen' : 'debugger' },
104
102
});
105
103
expect (response.type, 'Success' );
106
104
await events;
You can’t perform that action at this time.
0 commit comments