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

Unified Diff: tracing/tracing/ui/base/tab_view.html

Issue 2653693002: [tracing] Make tab-view rerender after reset/clear
Patch Set: Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tracing/tracing/ui/base/tab_view.html
diff --git a/tracing/tracing/ui/base/tab_view.html b/tracing/tracing/ui/base/tab_view.html
index 0818c83f91fcfb2346fb5841296fc4361fa5d561..2e59f25077b1b0b552ad302976887f467c967563 100644
--- a/tracing/tracing/ui/base/tab_view.html
+++ b/tracing/tracing/ui/base/tab_view.html
@@ -78,16 +78,16 @@ and limit users to having one option selected at a time.
</style>
<div id='tabs' hidden="[[tabsHidden]]">
charliea (OOO until 10-5) 2017/01/24 01:01:04 nit: consistently use " over ' It does indeed loo
hjd 2017/01/24 09:30:25 Done.
<label id=selection_description>[[label_]]</label>
- <template is=dom-repeat items=[[subViews_]]>
+ <template is=dom-repeat items=[[wrappedSubViews_]]>
<tab>
- <input type=radio name=tabs id$=[[computeRadioId_(item)]]
+ <input type=radio name=tabs id$="[[computeRadioId_(item.subView)]]"
on-change='onTabChanged_'
- checked$='[[isChecked_(item)]]' />
- <label for$=[[computeRadioId_(item)]]>
- <template is=dom-if if=[[item.tabIcon]]>
- <span style$='[[item.tabIcon.style]]'>[[item.tabIcon.text]]</span>
+ checked$="[[isChecked_(item.subView, selectedSubView_)]]" />
+ <label for$="[[computeRadioId_(item.subView)]]">
+ <template is=dom-if if="[[item.subView.tabIcon]]">
+ <span style$="[[item.subView.tabIcon.style]]">[[item.subView.tabIcon.text]]</span>
</template>
- [[item.tabLabel]]
+ [[item.subView.tabLabel]]
</label>
</tab>
</template>
@@ -113,6 +113,10 @@ Polymer({
type: Array,
value: () => []
},
+ wrappedSubViews_: {
+ type: Array,
+ computed: 'computeWrappedSubViews_(subViews_, subViews_.splices)',
+ },
tabsHidden: {
type: Boolean,
value: false,
@@ -138,6 +142,7 @@ Polymer({
},
set selectedSubView(subView) {
+ console.log('set selectedSubView', subView);
charliea (OOO until 10-5) 2017/01/24 01:01:04 nit: don't want console.logs in production code
hjd 2017/01/24 09:30:25 oops, I thought I removed that. Thanks!
if (subView === this.selectedSubView_)
return;
@@ -191,7 +196,7 @@ Polymer({
},
onTabChanged_: function(event) {
- this.selectedSubView = event.model.item;
+ this.selectedSubView = event.model.item.subView;
},
isChecked_: function(subView) {
@@ -264,6 +269,13 @@ Polymer({
// uniquify this ID by appending the tab's label with all spaces replaced
// by dashes (because spaces aren't allowed in HTML IDs).
return subView.tagName + '-' + subView.tabLabel.replace(/ /g, '-');
- }
+ },
+
+ computeWrappedSubViews_: function(subViews_) {
+ return subViews_.map((subView) => {
+ return { subView: subView };
charliea (OOO until 10-5) 2017/01/24 01:01:04 This can just be return { subView }; This match
hjd 2017/01/24 09:30:25 Yeah I keep forgetting :( Done.
+ });
+ },
+
});
</script>
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698