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

Unified Diff: samples/third_party/todomvc_performance/js_todomvc/elements/td-item.html

Issue 204733004: Added TodoMVC startup benchmarks. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 9 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
Index: samples/third_party/todomvc_performance/js_todomvc/elements/td-item.html
diff --git a/samples/third_party/todomvc_performance/js_todomvc/elements/td-item.html b/samples/third_party/todomvc_performance/js_todomvc/elements/td-item.html
new file mode 100755
index 0000000000000000000000000000000000000000..2cc13a3dd91bc543987a2741099560c39104777f
--- /dev/null
+++ b/samples/third_party/todomvc_performance/js_todomvc/elements/td-item.html
@@ -0,0 +1,47 @@
+<link rel="import" href="../components/polymer/polymer.html">
+<link rel="import" href="td-input.html">
+
+<polymer-element name="td-item" extends="li" attributes="item editing" on-blur="{{commitAction}}">
+ <template>
+ <link rel="stylesheet" href="td-item.css">
+ <div class="view {{ {completed: item.completed, editing: editing} | tokenList }}" hidden?="{{editing}}" on-dblclick="{{editAction}}">
+ <input type="checkbox" class="toggle" checked="{{item.completed}}" on-click="{{itemChangeAction}}">
+ <label>{{item.title}}</label>
+ <button class="destroy" on-click="{{destroyAction}}"></button>
+ </div>
+ <input is="td-input" id="edit" class="edit" value="{{item.title}}" hidden?="{{!editing}}" on-td-input-commit="{{commitAction}}" on-td-input-cancel="{{cancelAction}}">
+ </template>
+ <script>
+ (function() {
+ Polymer('td-item', {
+ editing: false,
+ editAction: function() {
+ this.editing = true;
+ // schedule focus for the end of microtask, when the input will be visible
+ this.asyncMethod(function() {
+ this.$.edit.focus();
+ });
+ },
+ commitAction: function() {
+ if (this.editing) {
+ this.editing = false;
+ this.item.title = this.item.title.trim();
+ if (this.item.title === '') {
+ this.destroyAction();
+ }
+ this.fire('td-item-changed');
+ }
+ },
+ cancelAction: function() {
+ this.editing = false;
+ },
+ itemChangeAction: function() {
+ this.fire('td-item-changed');
+ },
+ destroyAction: function() {
+ this.fire('td-destroy-item', this.item);
+ }
+ });
+ })();
+ </script>
+</polymer-element>

Powered by Google App Engine
This is Rietveld 408576698