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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/resources/CookieItemsView.js

Issue 2466123002: DevTools: reformat front-end code to match chromium style. (Closed)
Patch Set: all done Created 4 years, 1 month 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 /* 1 /*
2 * Copyright (C) 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2009 Joseph Pecoraro 3 * Copyright (C) 2009 Joseph Pecoraro
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright 11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the 12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution. 13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
15 * its contributors may be used to endorse or promote products derived 15 * its contributors may be used to endorse or promote products derived
16 * from this software without specific prior written permission. 16 * from this software without specific prior written permission.
17 * 17 *
18 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */ 28 */
29 /**
30 * @unrestricted
31 */
32 WebInspector.CookieItemsView = class extends WebInspector.SimpleView {
33 constructor(treeElement, cookieDomain) {
34 super(WebInspector.UIString('Cookies'));
29 35
30 /** 36 this.element.classList.add('storage-view');
31 * @constructor
32 * @extends {WebInspector.SimpleView}
33 */
34 WebInspector.CookieItemsView = function(treeElement, cookieDomain)
35 {
36 WebInspector.SimpleView.call(this, WebInspector.UIString("Cookies"));
37 37
38 this.element.classList.add("storage-view"); 38 this._deleteButton = new WebInspector.ToolbarButton(WebInspector.UIString('D elete'), 'delete-toolbar-item');
39 this._deleteButton.setVisible(false);
40 this._deleteButton.addEventListener('click', this._deleteButtonClicked, this );
39 41
40 this._deleteButton = new WebInspector.ToolbarButton(WebInspector.UIString("D elete"), "delete-toolbar-item"); 42 this._clearButton = new WebInspector.ToolbarButton(WebInspector.UIString('Cl ear'), 'clear-toolbar-item');
41 this._deleteButton.setVisible(false); 43 this._clearButton.setVisible(false);
42 this._deleteButton.addEventListener("click", this._deleteButtonClicked, this ); 44 this._clearButton.addEventListener('click', this._clearButtonClicked, this);
43 45
44 this._clearButton = new WebInspector.ToolbarButton(WebInspector.UIString("Cl ear"), "clear-toolbar-item"); 46 this._refreshButton = new WebInspector.ToolbarButton(WebInspector.UIString(' Refresh'), 'refresh-toolbar-item');
45 this._clearButton.setVisible(false); 47 this._refreshButton.addEventListener('click', this._refreshButtonClicked, th is);
46 this._clearButton.addEventListener("click", this._clearButtonClicked, this);
47
48 this._refreshButton = new WebInspector.ToolbarButton(WebInspector.UIString(" Refresh"), "refresh-toolbar-item");
49 this._refreshButton.addEventListener("click", this._refreshButtonClicked, th is);
50 48
51 this._treeElement = treeElement; 49 this._treeElement = treeElement;
52 this._cookieDomain = cookieDomain; 50 this._cookieDomain = cookieDomain;
53 51
54 this._emptyWidget = new WebInspector.EmptyWidget(cookieDomain ? WebInspector .UIString("This site has no cookies.") : WebInspector.UIString("By default cooki es are disabled for local files.\nYou could override this by starting the browse r with --enable-file-cookies command line flag.")); 52 this._emptyWidget = new WebInspector.EmptyWidget(
53 cookieDomain ?
54 WebInspector.UIString('This site has no cookies.') :
55 WebInspector.UIString(
56 'By default cookies are disabled for local files.\nYou could ove rride this by starting the browser with --enable-file-cookies command line flag. '));
55 this._emptyWidget.show(this.element); 57 this._emptyWidget.show(this.element);
56 58
57 this.element.addEventListener("contextmenu", this._contextMenu.bind(this), t rue); 59 this.element.addEventListener('contextmenu', this._contextMenu.bind(this), t rue);
58 }; 60 }
59 61
60 WebInspector.CookieItemsView.prototype = { 62 /**
61 /** 63 * @override
62 * @override 64 * @return {!Array.<!WebInspector.ToolbarItem>}
63 * @return {!Array.<!WebInspector.ToolbarItem>} 65 */
64 */ 66 syncToolbarItems() {
65 syncToolbarItems: function() 67 return [this._refreshButton, this._clearButton, this._deleteButton];
66 { 68 }
67 return [this._refreshButton, this._clearButton, this._deleteButton];
68 },
69 69
70 wasShown: function() 70 /**
71 { 71 * @override
72 this._update(); 72 */
73 }, 73 wasShown() {
74 this._update();
75 }
74 76
75 willHide: function() 77 /**
76 { 78 * @override
77 this._deleteButton.setVisible(false); 79 */
78 }, 80 willHide() {
81 this._deleteButton.setVisible(false);
82 }
79 83
80 _update: function() 84 _update() {
81 { 85 WebInspector.Cookies.getCookiesAsync(this._updateWithCookies.bind(this));
82 WebInspector.Cookies.getCookiesAsync(this._updateWithCookies.bind(this)) ; 86 }
83 }, 87
88 /**
89 * @param {!Array.<!WebInspector.Cookie>} allCookies
90 */
91 _updateWithCookies(allCookies) {
92 this._cookies = this._filterCookiesForDomain(allCookies);
93
94 if (!this._cookies.length) {
95 // Nothing to show.
96 this._emptyWidget.show(this.element);
97 this._clearButton.setVisible(false);
98 this._deleteButton.setVisible(false);
99 if (this._cookiesTable)
100 this._cookiesTable.detach();
101 return;
102 }
103
104 if (!this._cookiesTable)
105 this._cookiesTable =
106 new WebInspector.CookiesTable(false, this._update.bind(this), this._sh owDeleteButton.bind(this));
107
108 this._cookiesTable.setCookies(this._cookies);
109 this._emptyWidget.detach();
110 this._cookiesTable.show(this.element);
111 this._treeElement.subtitle = String.sprintf(
112 WebInspector.UIString('%d cookies (%s)'), this._cookies.length, Number.b ytesToString(this._totalSize));
113 this._clearButton.setVisible(true);
114 this._deleteButton.setVisible(!!this._cookiesTable.selectedCookie());
115 }
116
117 /**
118 * @param {!Array.<!WebInspector.Cookie>} allCookies
119 */
120 _filterCookiesForDomain(allCookies) {
121 var cookies = [];
122 var resourceURLsForDocumentURL = [];
123 this._totalSize = 0;
84 124
85 /** 125 /**
86 * @param {!Array.<!WebInspector.Cookie>} allCookies 126 * @this {WebInspector.CookieItemsView}
87 */ 127 */
88 _updateWithCookies: function(allCookies) 128 function populateResourcesForDocuments(resource) {
89 { 129 var url = resource.documentURL.asParsedURL();
90 this._cookies = this._filterCookiesForDomain(allCookies); 130 if (url && url.securityOrigin() === this._cookieDomain)
131 resourceURLsForDocumentURL.push(resource.url);
132 }
133 WebInspector.forAllResources(populateResourcesForDocuments.bind(this));
91 134
92 if (!this._cookies.length) { 135 for (var i = 0; i < allCookies.length; ++i) {
93 // Nothing to show. 136 var pushed = false;
94 this._emptyWidget.show(this.element); 137 var size = allCookies[i].size();
95 this._clearButton.setVisible(false); 138 for (var j = 0; j < resourceURLsForDocumentURL.length; ++j) {
96 this._deleteButton.setVisible(false); 139 var resourceURL = resourceURLsForDocumentURL[j];
97 if (this._cookiesTable) 140 if (WebInspector.Cookies.cookieMatchesResourceURL(allCookies[i], resourc eURL)) {
98 this._cookiesTable.detach(); 141 this._totalSize += size;
99 return; 142 if (!pushed) {
143 pushed = true;
144 cookies.push(allCookies[i]);
145 }
100 } 146 }
147 }
148 }
149 return cookies;
150 }
101 151
102 if (!this._cookiesTable) 152 clear() {
103 this._cookiesTable = new WebInspector.CookiesTable(false, this._upda te.bind(this), this._showDeleteButton.bind(this)); 153 this._cookiesTable.clear();
154 this._update();
155 }
104 156
105 this._cookiesTable.setCookies(this._cookies); 157 _clearButtonClicked() {
106 this._emptyWidget.detach(); 158 this.clear();
107 this._cookiesTable.show(this.element); 159 }
108 this._treeElement.subtitle = String.sprintf(WebInspector.UIString("%d co okies (%s)"), this._cookies.length,
109 Number.bytesToString(this._totalSize));
110 this._clearButton.setVisible(true);
111 this._deleteButton.setVisible(!!this._cookiesTable.selectedCookie());
112 },
113 160
114 /** 161 _showDeleteButton() {
115 * @param {!Array.<!WebInspector.Cookie>} allCookies 162 this._deleteButton.setVisible(true);
116 */ 163 }
117 _filterCookiesForDomain: function(allCookies)
118 {
119 var cookies = [];
120 var resourceURLsForDocumentURL = [];
121 this._totalSize = 0;
122 164
123 /** 165 _deleteButtonClicked() {
124 * @this {WebInspector.CookieItemsView} 166 var selectedCookie = this._cookiesTable.selectedCookie();
125 */ 167 if (selectedCookie) {
126 function populateResourcesForDocuments(resource) 168 selectedCookie.remove();
127 { 169 this._update();
128 var url = resource.documentURL.asParsedURL(); 170 }
129 if (url && url.securityOrigin() === this._cookieDomain) 171 }
130 resourceURLsForDocumentURL.push(resource.url);
131 }
132 WebInspector.forAllResources(populateResourcesForDocuments.bind(this));
133 172
134 for (var i = 0; i < allCookies.length; ++i) { 173 _refreshButtonClicked(event) {
135 var pushed = false; 174 this._update();
136 var size = allCookies[i].size(); 175 }
137 for (var j = 0; j < resourceURLsForDocumentURL.length; ++j) {
138 var resourceURL = resourceURLsForDocumentURL[j];
139 if (WebInspector.Cookies.cookieMatchesResourceURL(allCookies[i], resourceURL)) {
140 this._totalSize += size;
141 if (!pushed) {
142 pushed = true;
143 cookies.push(allCookies[i]);
144 }
145 }
146 }
147 }
148 return cookies;
149 },
150 176
151 clear: function() 177 _contextMenu(event) {
152 { 178 if (!this._cookies.length) {
153 this._cookiesTable.clear(); 179 var contextMenu = new WebInspector.ContextMenu(event);
154 this._update(); 180 contextMenu.appendItem(WebInspector.UIString('Refresh'), this._update.bind (this));
155 }, 181 contextMenu.show();
156 182 }
157 _clearButtonClicked: function() 183 }
158 {
159 this.clear();
160 },
161
162 _showDeleteButton: function()
163 {
164 this._deleteButton.setVisible(true);
165 },
166
167 _deleteButtonClicked: function()
168 {
169 var selectedCookie = this._cookiesTable.selectedCookie();
170 if (selectedCookie) {
171 selectedCookie.remove();
172 this._update();
173 }
174 },
175
176 _refreshButtonClicked: function(event)
177 {
178 this._update();
179 },
180
181 _contextMenu: function(event)
182 {
183 if (!this._cookies.length) {
184 var contextMenu = new WebInspector.ContextMenu(event);
185 contextMenu.appendItem(WebInspector.UIString("Refresh"), this._updat e.bind(this));
186 contextMenu.show();
187 }
188 },
189
190 __proto__: WebInspector.SimpleView.prototype
191 }; 184 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698