Index: third_party/WebKit/Source/devtools/front_end/cookie_table/CookiesTable.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/cookie_table/CookiesTable.js b/third_party/WebKit/Source/devtools/front_end/cookie_table/CookiesTable.js |
index 0bea9c03cd4d5abb80fb3af9e8a784e5e2812424..ac61f582e64f6f8e0463e90334427846bc7b3b59 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/cookie_table/CookiesTable.js |
+++ b/third_party/WebKit/Source/devtools/front_end/cookie_table/CookiesTable.js |
@@ -36,13 +36,15 @@ CookieTable.CookiesTable = class extends UI.VBox { |
* @param {function(!SDK.Cookie, ?SDK.Cookie, function(?string))=} saveCallback |
* @param {function()=} refreshCallback |
* @param {function()=} selectedCallback |
+ * @param {function(!SDK.Cookie)=} deleteCallback |
* @param {string=} cookieDomain |
*/ |
- constructor(saveCallback, refreshCallback, selectedCallback, cookieDomain) { |
+ constructor(saveCallback, refreshCallback, selectedCallback, deleteCallback, cookieDomain) { |
super(); |
this._saveCallback = saveCallback; |
this._refreshCallback = refreshCallback; |
+ this._deleteCallback = deleteCallback; |
this._cookieDomain = cookieDomain; |
var editable = !!saveCallback; |
@@ -129,6 +131,11 @@ CookieTable.CookiesTable = class extends UI.VBox { |
return node ? node.cookie : null; |
} |
+ removeSelectedCookie() { |
+ if (this._dataGrid.selectedNode) |
+ this._onDeleteCookie(this._dataGrid.selectedNode); |
+ } |
+ |
/** |
* @override |
*/ |
@@ -313,13 +320,16 @@ CookieTable.CookiesTable = class extends UI.VBox { |
return node; |
} |
+ /** |
+ * @param {!DataGrid.DataGridNode} node |
+ */ |
_onDeleteCookie(node) { |
var cookie = node.cookie; |
- var neighbour = node.traverseNextNode() || node.traversePreviousNode(); |
+ var neighbour = node.traverseNextNode(true) || node.traversePreviousNode(true); |
if (neighbour) |
this._nextSelectedCookie = neighbour.cookie; |
- cookie.remove(); |
- this._refresh(); |
+ if (cookie && this._deleteCallback) |
+ this._deleteCallback(cookie); |
} |
/** |