summaryrefslogtreecommitdiffstats
path: root/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js')
-rw-r--r--third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js b/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js
new file mode 100644
index 0000000000..c814e5fa73
--- /dev/null
+++ b/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/emberjs/app/controllers/application.js
@@ -0,0 +1,20 @@
+import Ember from 'ember';
+
+export default Ember.Controller.extend({
+ repo: Ember.inject.service(),
+ remaining: Ember.computed.filterBy('model', 'completed', false),
+ completed: Ember.computed.filterBy('model', 'completed'),
+ actions: {
+ createTodo(e) {
+ if (e.keyCode === 13 && !Ember.isBlank(e.target.value)) {
+ this.get('repo').add({ title: e.target.value.trim(), completed: false });
+ e.target.value = '';
+ }
+ },
+
+ clearCompleted() {
+ this.get('model').removeObjects(this.get('completed'));
+ this.get('repo').persist();
+ }
+ }
+});