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

Side by Side Diff: chrome/browser/resources/file_manager/js/cws_container_client.js

Issue 23717007: [Files.app] Refinement events of suggest app dialog (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 years, 3 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 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 'use strict'; 5 'use strict';
6 6
7 /** 7 /**
8 * @param {WebView} webView Web View tag. 8 * @param {WebView} webView Web View tag.
9 * @param {string} ext File extension. 9 * @param {string} ext File extension.
10 * @param {string} mime File mime type. 10 * @param {string} mime File mime type.
(...skipping 29 matching lines...) Expand all
40 * @param {Event} event Message event. 40 * @param {Event} event Message event.
41 * @private 41 * @private
42 */ 42 */
43 CWSContainerClient.prototype.onMessage_ = function(event) { 43 CWSContainerClient.prototype.onMessage_ = function(event) {
44 if (event.origin != this.target_) 44 if (event.origin != this.target_)
45 return; 45 return;
46 46
47 var data = event.data; 47 var data = event.data;
48 switch (data['message']) { 48 switch (data['message']) {
49 case 'widget_loaded': 49 case 'widget_loaded':
50 // Do nothing. Waits for user action and next message. 50 this.onWidgetLoaded_();
51 break;
52 case 'widget_load_failed':
53 this.onWidgetLoadFailed_();
51 break; 54 break;
52 case 'before_install': 55 case 'before_install':
53 this.sendInstallRequest_(data['item_id']); 56 this.sendInstallRequest_(data['item_id']);
54 break; 57 break;
55 default: 58 default:
56 console.error('Unexpected message: ' + data['message'], data); 59 console.error('Unexpected message: ' + data['message'], data);
57 } 60 }
58 }; 61 };
59 62
60 /** 63 /**
61 * Called when receiving 'loadstop' event from the <wevview>. 64 * Called when receiving 'loadstop' event from the <wevview>.
62 * @param {Event} event Message event. 65 * @param {Event} event Message event.
63 * @private 66 * @private
64 */ 67 */
65 CWSContainerClient.prototype.onLoadStop_ = function(event) { 68 CWSContainerClient.prototype.onLoadStop_ = function(event) {
66 if (this.url_ == this.webView_.src && !this.loaded_) { 69 if (this.url_ == this.webView_.src && !this.loaded_) {
67 this.loaded_ = true; 70 this.loaded_ = true;
68 this.postInitializeMessage_(); 71 this.postInitializeMessage_();
69 } 72 }
70 }; 73 };
71 74
72 /** 75 /**
76 * Called when the widget is loaded successfully.
77 * @private
78 */
79 CWSContainerClient.prototype.onWidgetLoaded_ = function() {
80 this.dispatchEvent(new cr.Event('loaded'));
hirono 2013/08/30 09:06:19 Can we make the event names enum values? To do thi
yoshiki 2013/08/30 09:16:03 Done.
81 };
82
83 /**
84 * Called when the widget is failed to load.
85 * @private
86 */
87 CWSContainerClient.prototype.onWidgetLoadFailed_ = function() {
88 this.sendWidgetLoadFailed_();
89 };
90
91 /**
73 * Called when receiving the 'loadabort' event from <webview>. 92 * Called when receiving the 'loadabort' event from <webview>.
74 * @param {Event} event Message event. 93 * @param {Event} event Message event.
75 * @private 94 * @private
76 */ 95 */
77 CWSContainerClient.prototype.onLoadAbort_ = function(event) { 96 CWSContainerClient.prototype.onLoadAbort_ = function(event) {
78 this.sendWebviewLoadAbort_(); 97 this.sendWidgetLoadFailed_();
79 }; 98 };
80 99
81 /** 100 /**
82 * Called when the installation is completed from the suggest-app dialog. 101 * Called when the installation is completed from the suggest-app dialog.
83 * 102 *
84 * @param {boolean} result True if the installation is success, false if failed. 103 * @param {boolean} result True if the installation is success, false if failed.
85 * @param {string} itemId Item id to be installed. 104 * @param {string} itemId Item id to be installed.
86 */ 105 */
87 CWSContainerClient.prototype.onInstallCompleted = function(result, itemId) { 106 CWSContainerClient.prototype.onInstallCompleted = function(result, itemId) {
88 if (result) 107 if (result)
89 this.postInstallSuccessMessage_(itemId); 108 this.postInstallSuccessMessage_(itemId);
90 else 109 else
91 this.postInstallFailureMessage_(itemId); 110 this.postInstallFailureMessage_(itemId);
92 }; 111 };
93 112
94 /** 113 /**
95 * Send the abort event to the suggest-app dialog. 114 * Send the fail message to the suggest-app dialog.
96 * @private 115 * @private
97 */ 116 */
98 CWSContainerClient.prototype.sendWebviewLoadAbort_ = function() { 117 CWSContainerClient.prototype.sendWidgetLoadFailed_ = function() {
99 this.dispatchEvent(new cr.Event('webview-load-abort')); 118 this.dispatchEvent(new cr.Event('load-failed'));
100 }; 119 };
101 120
102 /** 121 /**
103 * Send the install request to the suggest-app dialog. 122 * Send the install request to the suggest-app dialog.
104 * 123 *
105 * @param {string} itemId Item id to be installed. 124 * @param {string} itemId Item id to be installed.
106 * @private 125 * @private
107 */ 126 */
108 CWSContainerClient.prototype.sendInstallRequest_ = function(itemId) { 127 CWSContainerClient.prototype.sendInstallRequest_ = function(itemId) {
109 var event = new cr.Event('install-request'); 128 var event = new cr.Event('install-request');
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 this.webView_.stop(); 220 this.webView_.stop();
202 }; 221 };
203 222
204 /** 223 /**
205 * Cleans the dialog by removing all handlers. 224 * Cleans the dialog by removing all handlers.
206 */ 225 */
207 CWSContainerClient.prototype.dispose = function() { 226 CWSContainerClient.prototype.dispose = function() {
208 this.abort(); 227 this.abort();
209 }; 228 };
210 229
OLDNEW
« no previous file with comments | « chrome/browser/resources/file_manager/css/file_manager.css ('k') | chrome/browser/resources/file_manager/js/file_manager.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698