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

Side by Side Diff: runtime/bin/vmservice/client/deployed/web/index_devtools.html

Issue 145323002: Post-meetup feature extravaganza. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 10 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 | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE html><html><head><script src="packages/shadow_dom/shadow_dom.debug.js" ></script> 1 <!DOCTYPE html><html><head><script src="packages/shadow_dom/shadow_dom.debug.js" ></script>
2 <script src="packages/custom_element/custom-elements.debug.js"></script> 2 <script src="packages/custom_element/custom-elements.debug.js"></script>
3 <script src="packages/browser/interop.js"></script> 3 <script src="packages/browser/interop.js"></script>
4 4
5 <title>Dart VM Observatory</title> 5 <title>Dart VM Observatory</title>
6 <meta charset="utf-8"> 6 <meta charset="utf-8">
7 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c ss"> 7 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c ss">
8 8
9 <script src="index_devtools.html_bootstrap.dart.js"></script> 9 <script src="index_devtools.html_bootstrap.dart.js"></script>
10 10
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 </div> 66 </div>
67 </template> </polymer-element><polymer-element name="function-ref" extends="ser vice-ref"> 67 </template> </polymer-element><polymer-element name="function-ref" extends="ser vice-ref">
68 <template> 68 <template>
69 <a title="{{ hoverText }}" href="{{ url }}">{{ name }}</a> 69 <a title="{{ hoverText }}" href="{{ url }}">{{ name }}</a>
70 </template> 70 </template>
71 71
72 </polymer-element><polymer-element name="instance-ref" extends="service-ref"> 72 </polymer-element><polymer-element name="instance-ref" extends="service-ref">
73 <template> 73 <template>
74 <div> 74 <div>
75 <template if="{{ (ref['type'] == 'null') }}"> 75 <template if="{{ (ref['type'] == 'null') }}">
76 {{ "null" }} 76 unexpected null
77 </template> 77 </template>
78 <template if="{{ (ref['type'] != 'null') }}"> 78 <template if="{{ (ref['type'] == '@Null') }}">
79 <a href="{{ url }}">{{ name }} </a> 79 {{ name }}
80 </template>
81 <template if="{{ (ref['type'] != 'null') &amp;&amp; ref['type'] != '@Null' }}" >
82 <a href="{{ url }}">{{ name }} </a>
80 </template> 83 </template>
81 </div> 84 </div>
82 </template> 85 </template>
83 86
84 </polymer-element><polymer-element name="library-ref" extends="service-ref"> 87 </polymer-element>
88 <polymer-element name="library-ref" extends="service-ref">
85 <template> 89 <template>
86 <a href="{{ url }}">{{ name }}</a> 90 <a href="{{ url }}">{{ name }}</a>
87 </template> 91 </template>
88 92
89 </polymer-element><polymer-element name="class-view" extends="observatory-elemen t"> 93 </polymer-element><polymer-element name="class-view" extends="observatory-elemen t">
90 <template> 94 <template>
91 <div class="row"> 95 <div class="row">
92 <div class="col-md-8 col-md-offset-2"> 96 <div class="col-md-8 col-md-offset-2">
93 <div class="panel panel-warning"> 97 <div class="panel panel-warning">
94 <div class="panel-heading"> 98 <div class="panel-heading">
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 </tbody> 295 </tbody>
292 </table> 296 </table>
293 </div> 297 </div>
294 </div> 298 </div>
295 </div> 299 </div>
296 </div> 300 </div>
297 </template> 301 </template>
298 302
299 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e lement"> 303 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e lement">
300 <template> 304 <template>
301 » <div class="row"> 305 <div class="row">
302 » <div class="col-md-1">
303 <img src="img/isolate_icon.png" class="img-polaroid">
304 » </div>
305 » <div class="col-md-1">{{ isolate }}</div>
306 » <div class="col-md-10">{{ name }}</div>
307 » </div>
308 » <div class="row">
309 » <div class="col-md-2"></div>
310 » <div class="col-md-1">
311 » » <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac e') }}">Stacktrace</a>
312 » </div>
313 <div class="col-md-1"> 306 <div class="col-md-1">
314 <a href="{{ app.locationManager.relativeLink(isolate, 'library') }}">Lib rary</a> 307 <img src="packages/observatory/src/observatory_elements/img/isolate_icon .png" class="img-polaroid">
315 </div> 308 </div>
316 <div class="col-md-1"> 309
317 <a href="{{ app.locationManager.relativeLink(isolate, 'debug/breakpoints ') }}">Breakpoints</a> 310 <div class="col-md-1">{{ isolate.name }}</div>
311
312 <!-- TODO(turnidge): Use function-ref when it can take isolate param -->
313 <div class="col-md-4">
314
315 <div class="row">
316 <template if="{{ isolate.entry['id'] != null }}">
317 <a href="{{ app.locationManager.relativeLink(isolate.id, isolate.ent ry['id']) }}">
318 {{ isolate.entry['name'] }}
319 </a>
320 </template>
321 <template if="{{ isolate.entry['id'] == null }}">
322 <!-- fred -->
323 root isolate
324 </template>
325 </div>
326
327 <div class="row">
328 <small>
329 (<a href="{{ app.locationManager.relativeLink(isolate.id, isolate.ro otLib) }}">library</a>)
330 (<a href="{{ app.locationManager.relativeLink(isolate.id, 'debug/bre akpoints') }}">breakpoints</a>)
331 (<a href="{{ app.locationManager.relativeLink(isolate.id, 'profile') }}">profile</a>)
332 </small>
333 </div>
318 </div> 334 </div>
319 <div class="col-md-1"> 335
320 <a href="{{ app.locationManager.relativeLink(isolate, 'profile') }}">Pro file</a> 336 <div class="col-md-2">
337 <div class="row">
338 <div class="col-md-3">{{ isolate.timers['total'] | formatTime }}</div>
339 <div class="col-md-1"></div>
340 <div class="col-md-3"><p class="text-muted">total</p></div>
341 </div>
342 <div class="row">
343 <div class="col-md-3">{{ isolate.timers['dart'] | formatTime }}</div>
344 <div class="col-md-1"></div>
345 <div class="col-md-3"><p class="text-muted">dart</p></div>
346 </div>
347 <div class="row">
348 <div class="col-md-3">{{ isolate.timers['compile'] | formatTime }}</di v>
349 <div class="col-md-1"></div>
350 <div class="col-md-3"><p class="text-muted">compile</p></div>
351 </div>
352 <div class="row">
353 <div class="col-md-3">{{ isolate.timers['gc'] | formatTime }}</div>
354 <div class="col-md-1"></div>
355 <div class="col-md-3"><p class="text-muted">gc</p></div>
356 </div>
357 <div class="row">
358 <div class="col-md-3">{{ isolate.timers['init'] | formatTime }}</div>
359 <div class="col-md-1"></div>
360 <div class="col-md-3"><p class="text-muted">init</p></div>
361 </div>
321 </div> 362 </div>
322 <div class="col-md-1"> 363 <div class="col-md-2">
323 <a href="{{ app.locationManager.relativeLink(isolate, 'allocationprofile ') }}">Allocation Profile</a> 364 <a href="{{ app.locationManager.relativeLink(isolate.id, 'allocationprof ile') }}">
365 {{ isolate.newHeapUsed | formatSize }}/{{ isolate.oldHeapUsed | format Size }}
366 </a>
324 </div> 367 </div>
325 » <div class="col-md-8"></div> 368 <div class="col-md-2">
369 <template if="{{ isolate.topFrame == null }}">
370 idle
371 </template>
372 <template if="{{ isolate.topFrame != null }}">
373 run
374 </template>
375 ( <a href="{{ app.locationManager.relativeLink(isolate.id, 'stacktrace') }}">stack trace</a> )
376 </div>
377 </div>
378 <div class="row">
379 <div class="col-md-3">
380 </div>
381 <div class="col-md-6">
382 <template if="{{ isolate.topFrame != null }}">
383 <a href="{{ app.locationManager.relativeLink(isolate.id, isolate.topFr ame['function']['id']) }}">
384 {{ isolate.topFrame['function']['user_name'] }}
385 </a>
386 (<a href="{{ app.locationManager.relativeLink(isolate.id, isolate.topF rame['script']['id']) }}">
387 {{ isolate.topFrame | fileAndLine }}
388 </a>)
389 <br>
390 <pre>{{ isolate.topFrame['line'] }} &nbsp; {{ isolate.topFrame['lineSt ring'] }}</pre>
391 </template>
392 </div>
393 <div class="col-md-3">
394 </div>
326 </div> 395 </div>
327 </template> 396 </template>
328 397
329 </polymer-element> 398 </polymer-element>
330 <polymer-element name="isolate-list" extends="observatory-element"> 399 <polymer-element name="isolate-list" extends="observatory-element">
331 <template> 400 <template>
401 <button type="button" on-click="{{refresh}}">Refresh</button>
332 <ul class="list-group"> 402 <ul class="list-group">
333 <template repeat="{{ isolate in app.isolateManager.isolates.values }}"> 403 <template repeat="{{ isolate in app.isolateManager.isolates.values }}">
334 <li class="list-group-item"> 404 <li class="list-group-item">
335 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso late.name }}"></isolate-summary> 405 <isolate-summary app="{{ app }}" isolate="{{ isolate }}"></isolate-summa ry>
336 </li> 406 </li>
337 </template> 407 </template>
338 </ul> 408 </ul>
339 (<a href="{{ app.locationManager.absoluteLink('cpu') }}">cpu</a>) 409 (<a href="{{ app.locationManager.absoluteLink('cpu') }}">cpu</a>)
340
341 </template> 410 </template>
342 411
343 </polymer-element><polymer-element name="instance-view" extends="observatory-ele ment"> 412 </polymer-element>
413 <polymer-element name="instance-view" extends="observatory-element">
344 <template> 414 <template>
345 <div class="row"> 415 <div class="row">
346 <div class="col-md-8 col-md-offset-2"> 416 <div class="col-md-8 col-md-offset-2">
347 <div class="panel panel-warning"> 417 <div class="panel panel-warning">
348 <div class="panel-heading"> 418 <div class="panel-heading">
349 Instance of 419 Instance of
350 <class-ref app="{{ app }}" ref="{{ instance['class'] }}"></class-ref> 420 <class-ref app="{{ app }}" ref="{{ instance['class'] }}"></class-ref>
351 </div> 421 </div>
352 <div class="panel-body"> 422 <div class="panel-body">
353 <template if="{{ instance['error'] == null }}"> 423 <template if="{{ instance['error'] == null }}">
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 </td> 543 </td>
474 <td> 544 <td>
475 <class-ref app="{{ app }}" ref="{{ cls }}" internal=""></class-ref> 545 <class-ref app="{{ app }}" ref="{{ cls }}" internal=""></class-ref>
476 </td> 546 </td>
477 </tr> 547 </tr>
478 </tbody> 548 </tbody>
479 </table> 549 </table>
480 550
481 </template> 551 </template>
482 552
483 </polymer-element><polymer-element name="heap-profile" extends="observatory-elem ent"> 553 </polymer-element>
554 <polymer-element name="heap-profile" extends="observatory-element">
484 <template> 555 <template>
485 <div> 556 <div>
486 <button type="button" on-click="{{refreshData}}">Refresh</button> 557 <button type="button" on-click="{{refreshData}}">Refresh</button>
487 </div> 558 </div>
488 <div> 559 <div>
489 <span>New Space </span> 560 <span>New Space </span>
490 <span>{{ status(true) }}</span> 561 <span>{{ status(true) }}</span>
491 </div> 562 </div>
492 <div> 563 <div>
493 <span>Old Space </span> 564 <span>Old Space </span>
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
540 <td style="font-family: consolas, courier, monospace;font-size: 1em; line-height: 1.2em;white-space: nowrap;">{{line.line}}</td> 611 <td style="font-family: consolas, courier, monospace;font-size: 1em; line-height: 1.2em;white-space: nowrap;">{{line.line}}</td>
541 <td width="99%" style="font-family: consolas, courier, monospace;fon t-size: 1em;line-height: 1.2em;">{{line.text}}</td> 612 <td width="99%" style="font-family: consolas, courier, monospace;fon t-size: 1em;line-height: 1.2em;">{{line.text}}</td>
542 </tr> 613 </tr>
543 </tbody> 614 </tbody>
544 </table> 615 </table>
545 </div> 616 </div>
546 </div> 617 </div>
547 </div> 618 </div>
548 </template> 619 </template>
549 620
550 </polymer-element><polymer-element name="stack-trace" extends="observatory-eleme nt"> 621 </polymer-element><polymer-element name="stack-frame" extends="observatory-eleme nt">
551 <template> 622 <template>
552 <div class="alert alert-info">Stack Trace</div> 623 <div class="row">
553 <table class="table table-hover"> 624 <div class="col-md-1"></div>
554 <thead> 625 <div class="col-md-1">
555 <tr> 626 #{{ frame['depth'] }}
556 <th>Depth</th> 627 </div>
557 <th>Function</th> 628 <div class="col-md-9">
558 <th>Script</th> 629 <function-ref app="{{ app }}" ref="{{ frame['function'] }}"></function-r ef>
559 <th>Line</th> 630 ( <script-ref app="{{ app }}" ref="{{ frame['script'] }}"></script-ref>: {{ frame['line'] }} )
560 </tr> 631 </div>
561 </thead> 632 <div class="col-md-1"></div>
562 <tbody> 633 </div>
563 <tr template="" repeat="{{ frame in trace['members'] }}"> 634
564 <td></td> 635 <template repeat="{{ v in frame['vars'] }}">
565 <td><function-ref app="{{ app }}" ref="{{ frame['function'] }}"></functi on-ref></td> 636 <div class="row">
566 <td><script-ref app="{{ app }}" ref="{{ frame['script'] }}"></script-ref ></td> 637 <div class="col-md-3"></div>
567 <td>{{ frame['line'] }}</td> 638 <div class="col-md-1">
568 </tr> 639 {{ v['name'] }}
569 </tbody> 640 </div>
570 </table> 641 <div class="col-md-6">
642 <instance-ref app="{{ app }}" ref="{{ v['value'] }}"></instance-ref>
643 </div>
644 <div class="col-md-2"></div>
645 </div>
646 </template>
647
571 </template> 648 </template>
572 649
573 </polymer-element><polymer-element name="message-viewer" extends="observatory-el ement"> 650 </polymer-element>
651 <polymer-element name="stack-trace" extends="observatory-element">
652 <template>
653 <template if="{{ trace['members'].isEmpty }}">
654 <div class="col-md-1"></div>
655 <div class="col-md-11">
656 <em>No stack</em>
657 </div>
658 </template>
659 <template if="{{ trace['members'].isNotEmpty }}">
660 <ul class="list-group">
661 <template repeat="{{ frame in trace['members'] }}">
662 <li class="list-group-item">
663 <stack-frame app="{{ app }}" frame="{{ frame }}"></stack-frame>
664 </li>
665 </template>
666 </ul>
667 </template>
668 </template>
669
670 </polymer-element>
671 <polymer-element name="message-viewer" extends="observatory-element">
574 <!-- 672 <!--
575 This is a big switch statement which instantiates the custom element 673 This is a big switch statement which instantiates the custom element
576 designated to display the message type. 674 designated to display the message type.
577 --> 675 -->
578 <template> 676 <template>
579 <!-- If the message type is an IsolateList --> 677 <!-- If the message type is an IsolateList -->
580 <template if="{{ messageType == 'IsolateList' }}"> 678 <template if="{{ messageType == 'IsolateList' }}">
581 <isolate-list app="{{ app }}"></isolate-list> 679 <isolate-list app="{{ app }}"></isolate-list>
582 </template> 680 </template>
583 <!-- If the message type is a StackTrace --> 681 <!-- If the message type is a StackTrace -->
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
706 <isolate-profile app="{{ app }}"></isolate-profile> 804 <isolate-profile app="{{ app }}"></isolate-profile>
707 </template> 805 </template>
708 <template if="{{ app.locationManager.profile == false }}"> 806 <template if="{{ app.locationManager.profile == false }}">
709 <response-viewer app="{{ app }}"></response-viewer> 807 <response-viewer app="{{ app }}"></response-viewer>
710 </template> 808 </template>
711 </template> 809 </template>
712 810
713 </polymer-element> 811 </polymer-element>
714 <observatory-application devtools="true"></observatory-application> 812 <observatory-application devtools="true"></observatory-application>
715 813
716 </body></html> 814 </body></html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698