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

Side by Side Diff: chrome/browser/resources/options/website_settings.js

Issue 408493003: Show local storage usage on the Website Settings options page. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: No longer using std::end. Created 6 years, 5 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 cr.define('options', function() { 5 cr.define('options', function() {
6 /** @const */ var OptionsPage = options.OptionsPage; 6 /** @const */ var OptionsPage = options.OptionsPage;
7 /** @const */ var ArrayDataModel = cr.ui.ArrayDataModel; 7 /** @const */ var ArrayDataModel = cr.ui.ArrayDataModel;
8 8
9 ///////////////////////////////////////////////////////////////////////////// 9 /////////////////////////////////////////////////////////////////////////////
10 // WebsiteSettingsManager class: 10 // WebsiteSettingsManager class:
(...skipping 23 matching lines...) Expand all
34 /** @override */ 34 /** @override */
35 initializePage: function() { 35 initializePage: function() {
36 OptionsPage.prototype.initializePage.call(this); 36 OptionsPage.prototype.initializePage.call(this);
37 37
38 $('website-settings-overlay-confirm').onclick = 38 $('website-settings-overlay-confirm').onclick =
39 OptionsPage.closeOverlay.bind(OptionsPage); 39 OptionsPage.closeOverlay.bind(OptionsPage);
40 40
41 $('resourceType').onchange = function() { 41 $('resourceType').onchange = function() {
42 var target = event.target; 42 var target = event.target;
43 assert(target.tagName == 'SELECT'); 43 assert(target.tagName == 'SELECT');
44 chrome.send('updateOrigins', [target.value]); 44 if (target.value == 'storage')
45 chrome.send('updateLocalStorage');
46 else
47 chrome.send('updateOrigins', [target.value]);
45 }; 48 };
46 49
47 var searchBox = $('website-settings-search-box'); 50 var searchBox = $('website-settings-search-box');
48 searchBox.addEventListener('search', 51 searchBox.addEventListener('search',
49 this.handleSearchQueryChange_.bind(this)); 52 this.handleSearchQueryChange_.bind(this));
50 53
51 searchBox.onkeydown = function(e) { 54 searchBox.onkeydown = function(e) {
52 if (e.keyIdentifier == 'Enter') 55 if (e.keyIdentifier == 'Enter')
53 e.preventDefault(); 56 e.preventDefault();
54 }; 57 };
(...skipping 28 matching lines...) Expand all
83 * box. 86 * box.
84 * @private 87 * @private
85 */ 88 */
86 searchOrigins: function() { 89 searchOrigins: function() {
87 var filter = 90 var filter =
88 $('website-settings-search-box').value; 91 $('website-settings-search-box').value;
89 chrome.send('updateOriginsSearchResults', [filter]); 92 chrome.send('updateOriginsSearchResults', [filter]);
90 }, 93 },
91 94
92 /** 95 /**
96 * Populates the origin list with all origins that are using local storage.
97 * @private
98 */
99 populateLocalStorage_: function(originDict) {
100 var origins = Object.keys(originDict).map(function(origin) {
101 return {origin: origin,
Bernhard Bauer 2014/07/23 09:09:43 Nit: This still looks a bit awkward... Can you wri
Daniel Nishi 2014/07/23 16:01:11 Done.
102 usage: originDict[origin].usage,
103 usageString: originDict[origin].usageString};
104 });
105 origins.sort(function(first, second) {
106 return second.usage - first.usage;
107 });
108 this.originList_.dataModel = new ArrayDataModel(origins);
109 },
110
111 /**
93 * Handle and delay search query changes. 112 * Handle and delay search query changes.
94 * @param {!Event} e The event object. 113 * @param {!Event} e The event object.
95 * @private 114 * @private
96 */ 115 */
97 handleSearchQueryChange_: function() { 116 handleSearchQueryChange_: function() {
98 if (this.queryDelayTimerId_) 117 if (this.queryDelayTimerId_)
99 window.clearTimeout(this.queryDelayTimerId_); 118 window.clearTimeout(this.queryDelayTimerId_);
100 119
101 this.queryDelayTimerId_ = window.setTimeout(this.searchOrigins.bind(this), 120 this.queryDelayTimerId_ = window.setTimeout(this.searchOrigins.bind(this),
102 160); 121 160);
103 }, 122 },
104 }; 123 };
105 124
106 WebsiteSettingsManager.populateOrigins = function(originDict) { 125 WebsiteSettingsManager.populateOrigins = function(originDict) {
107 WebsiteSettingsManager.getInstance().populateOrigins_(originDict); 126 WebsiteSettingsManager.getInstance().populateOrigins_(originDict);
108 }; 127 };
109 128
129 WebsiteSettingsManager.populateLocalStorage = function(originDict) {
130 WebsiteSettingsManager.getInstance().populateLocalStorage_(originDict);
131 };
132
110 // Export 133 // Export
111 return { 134 return {
112 WebsiteSettingsManager: WebsiteSettingsManager 135 WebsiteSettingsManager: WebsiteSettingsManager
113 }; 136 };
114 }); 137 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698