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

Side by Side Diff: runtime/bin/vmservice/client/lib/src/elements/isolate_summary.html

Issue 271153002: Add pause/resume for isolates in vmservice/observatory. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: gen js Created 6 years, 7 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 <head> 1 <head>
2 <link rel="import" href="action_link.html">
2 <link rel="import" href="function_ref.html"> 3 <link rel="import" href="function_ref.html">
3 <link rel="import" href="isolate_ref.html"> 4 <link rel="import" href="isolate_ref.html">
4 <link rel="import" href="observatory_element.html"> 5 <link rel="import" href="observatory_element.html">
5 <link rel="import" href="script_inset.html"> 6 <link rel="import" href="script_inset.html">
6 <link rel="import" href="script_ref.html"> 7 <link rel="import" href="script_ref.html">
7 </head> 8 </head>
8 <polymer-element name="isolate-summary" extends="observatory-element"> 9 <polymer-element name="isolate-summary" extends="observatory-element">
9 <template> 10 <template>
10 <link rel="stylesheet" href="packages/observatory/src/elements/css/shared.cs s"> 11 <link rel="stylesheet" href="packages/observatory/src/elements/css/shared.cs s">
11 <style>
12 .counters {
13 display: flex;
14 flex-direction: row;
15 justify-content: center;
16 }
17 .counter {
18 margin: 10px;
19 }
20 </style>
21 <div class="flex-row"> 12 <div class="flex-row">
22 <div class="flex-item-fixed-1-12"><img src="packages/observatory/src/eleme nts/img/isolate_icon.png"></div> 13 <div class="flex-item-10-percent">
23 <div class="flex-item-fixed-1-12">{{ isolate.mainPort }}</div> 14 <img src="packages/observatory/src/elements/img/isolate_icon.png">
24 <div class="flex-item-fixed-4-12">
25 <div class="flex-row">
26 <isolate-ref ref="{{ isolate }}"></isolate-ref>
27 </div>
28 <div class="flex-row">
29 <small>
30 (<a href="{{ isolate.rootLib.hashLink }}">library</a>)
31 (<a href="{{ isolate.relativeHashLink('debug/breakpoints') }}">break points</a>)
32 (<a href="{{ isolate.relativeHashLink('profile') }}">profile</a>)
33 </small>
34 </div>
35 </div> 15 </div>
36 16 <div class="flex-item-10-percent">
37 <div class="flex-item-fixed-2-12"> 17 <isolate-ref ref="{{ isolate }}"></isolate-ref>
38 <a href="{{ isolate.relativeHashLink('allocationprofile') }}">
39 {{ isolate.newHeapUsed | formatSize }}/{{ isolate.oldHeapUsed | format Size }}
40 </a>
41 ( <a href="{{ isolate.relativeHashLink('heapmap') }}">map</a> )
42 </div> 18 </div>
43 <div class="flex-item-fixed-2-12"> 19 <div class="flex-item-20-percent">
44 <template if="{{ isolate.topFrame == null }}"> 20 <isolate-run-state isolate="{{ isolate }}"></isolate-run-state>
45 idle 21 </div>
46 </template> 22 <div class="flex-item-50-percent">
47 <template if="{{ isolate.topFrame != null }}"> 23 <isolate-location isolate="{{ isolate }}"></isolate-location>
48 run 24 </div>
49 </template> 25 <div class="flex-item-10-percent">
50 ( <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack trace</a> )
51 </div> 26 </div>
52 </div> 27 </div>
53 28
54 <div class="counters"> 29 <div class="flex-row">
55 <template repeat="{{ key in isolate.counters.keys }}"> 30 <div class="flex-item-20-percent"></div>
56 <div class="counter">{{ key }} ({{ isolate.counters[key] }})</div> 31 <div class="flex-item-60-percent">
57 </template> 32 <hr>
33 </div>
34 <div class="flex-item-20-percent"></div>
58 </div> 35 </div>
59 36
60 <template if="{{ isolate.topFrame != null }}"> 37 <isolate-shared-summary isolate="{{ isolate }}"></isolate-shared-summary>
61 <script-inset script="{{ isolate.topFrame['script'] }}" 38
62 pos="{{ isolate.topFrame['tokenPos'] }}"> 39 </template>
63 <function-ref ref="{{ isolate.topFrame['function'] }}"></function-ref> 40 </polymer-element>
41
42 <polymer-element name="isolate-run-state" extends="observatory-element">
43 <template>
44 <template if="{{ isolate.pauseEvent != null }}">
45 <strong>paused</strong>
46 <action-link callback="{{ resume }}" label="resume"></action-link>
47 </template>
48
49 <template if="{{ isolate.running }}">
50 <strong>running</strong>
51 <action-link callback="{{ pause }}" label="pause"></action-link>
52 </template>
53
54 <template if="{{ isolate.idle }}">
55 <strong>idle</strong>
56 </template>
57
58 <template if="{{ isolate.loading }}">
59 <strong>loading...</strong>
60 </template>
61 </template>
62 </polymer-element>
63
64 <polymer-element name="isolate-location" extends="observatory-element">
65 <template>
66 <template if="{{ isolate.pauseEvent != null }}">
67 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateCreated' }}">
68 at isolate start
69 </template>
70 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateShutdown' }}">
71 at isolate exit
72 </template>
73 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateInterrupted' } }">
74 at
75 <function-ref ref="{{ isolate.topFrame['function'] }}">
76 </function-ref>
64 (<script-ref ref="{{ isolate.topFrame['script'] }}" 77 (<script-ref ref="{{ isolate.topFrame['script'] }}"
65 pos="{{ isolate.topFrame['tokenPos'] }}"></script-ref>) 78 pos="{{ isolate.topFrame['tokenPos'] }}"></script-ref>)
66 </script-inset> 79 </template>
80 <template if="{{ isolate.pauseEvent['eventType'] == 'BreakpointReached' }} ">
81 at breakpoint {{ isolate.pauseEvent['breakpoint']['id'] }}
82 <function-ref ref="{{ isolate.topFrame['function'] }}">
83 </function-ref>
84 (<script-ref ref="{{ isolate.topFrame['script'] }}"
85 pos="{{ isolate.topFrame['tokenPos'] }}"></script-ref>)
86 </template>
67 </template> 87 </template>
88
89 <template if="{{ isolate.running }}">
90 at
91 <function-ref ref="{{ isolate.topFrame['function'] }}">
92 </function-ref>
93 (<script-ref ref="{{ isolate.topFrame['script'] }}"
94 pos="{{ isolate.topFrame['tokenPos'] }}"></script-ref>)
95 </template>
96
68 </template> 97 </template>
69 <script type="application/dart" src="isolate_summary.dart"></script>
70 </polymer-element> 98 </polymer-element>
99
100 <polymer-element name="isolate-shared-summary" extends="observatory-element">
101 <template>
102 <style>
103 .errorBox {
104 background-color: #f5f5f5;
105 border: 1px solid #ccc;
106 padding: 10px;
107 font-family: consolas, courier, monospace;
108 font-size: 1em;
109 line-height: 1.2em;
110 white-space: pre;
111 }
112 </style>
113 <link rel="stylesheet" href="packages/observatory/src/elements/css/shared.cs s">
114 <template if="{{ isolate.error != null }}">
115 <div class="content-centered">
116 <pre class="errorBox">{{ isolate.error.message }}</pre>
117 <br>
118 </div>
119 </template>
120 <div class="flex-row">
121 <div class="flex-item-10-percent">
122 </div>
123 <div class="flex-item-40-percent">
124 <isolate-counter-chart counters="{{ isolate.counters }}"></isolate-count er-chart>
125 </div>
126 <div class="flex-item-40-percent">
127 <div class="memberList">
128 <div class="memberItem">
129 <div class="memberName">new heap</div>
130 <div class="memberValue">
131 {{ isolate.newHeapUsed | formatSize }}
132 of
133 {{ isolate.newHeapCapacity | formatSize }}
134 </div>
135 </div>
136 <div class="memberItem">
137 <div class="memberName">old heap</div>
138 <div class="memberValue">
139 {{ isolate.oldHeapUsed | formatSize }}
140 of
141 {{ isolate.oldHeapCapacity | formatSize }}
142 </div>
143 </div>
144 </div>
145 <br>
146 <div class="memberItem">
147 <div class="memberValue">
148 See <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack t race</a>
149 </div>
150 </div>
151 <div class="memberItem">
152 <div class="memberValue">
153 See <a href="{{ isolate.relativeHashLink('profile') }}">cpu profil e</a>
154 </div>
155 </div>
156 <div class="memberList">
157 <div class="memberItem">
158 <div class="memberValue">
159 See <a href="{{ isolate.relativeHashLink('allocationprofile') }} ">allocation profile</a>
160 </div>
161 </div>
162 <div class="memberItem">
163 <div class="memberValue">
164 See <a href="{{ isolate.relativeHashLink('heapmap') }}">heap map </a>
165 </div>
166 </div>
167 </div>
168 </div>
169 <div class="flex-item-10-percent">
170 </div>
171 </div>
172 </template>
173 </polymer-element>
174
175 <polymer-element name="isolate-counter-chart" extends="observatory-element">
176 <template>
177 <div id="counterPieChart" style="height: 200px"></div>
178 </template>
179 </polymer-element>
180
181 <script type="application/dart" src="isolate_summary.dart"></script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698