diff options
Diffstat (limited to 'devtools/client')
-rw-r--r-- | devtools/client/locales/en-US/storage.properties | 2 | ||||
-rw-r--r-- | devtools/client/shared/widgets/TableWidget.js | 24 | ||||
-rw-r--r-- | devtools/client/storage/ui.js | 12 |
3 files changed, 37 insertions, 1 deletions
diff --git a/devtools/client/locales/en-US/storage.properties b/devtools/client/locales/en-US/storage.properties index 3efd7c84a..7e7e656ab 100644 --- a/devtools/client/locales/en-US/storage.properties +++ b/devtools/client/locales/en-US/storage.properties @@ -53,8 +53,10 @@ table.headers.sessionStorage.value=Value table.headers.Cache.url=URL table.headers.Cache.status=Status +table.headers.indexedDB.uniqueKey=Unique key table.headers.indexedDB.name=Key table.headers.indexedDB.db=Database Name +table.headers.indexedDB.storage=Storage table.headers.indexedDB.objectStore=Object Store Name table.headers.indexedDB.value=Value table.headers.indexedDB.origin=Origin diff --git a/devtools/client/shared/widgets/TableWidget.js b/devtools/client/shared/widgets/TableWidget.js index 96c020230..84645b5b1 100644 --- a/devtools/client/shared/widgets/TableWidget.js +++ b/devtools/client/shared/widgets/TableWidget.js @@ -719,6 +719,10 @@ TableWidget.prototype = { if (hiddenColumns.includes(id) || privateColumns.includes(id)) { // Hide the column. this.columns.get(id).toggleColumn(); + + if (privateColumns.includes(id)) { + this.columns.get(id).private = true; + } } } this.sortedOn = sortOn; @@ -978,6 +982,9 @@ module.exports.TableWidget = TableWidget; * The displayed string on the column's header. */ function Column(table, id, header) { + // By default cells are visible in the UI. + this._private = false; + this.tbody = table.tbody; this.document = table.document; this.window = table.window; @@ -1061,6 +1068,23 @@ Column.prototype = { }, /** + * Get the private state of the column (visibility in the UI). + */ + get private() { + return this._private; + }, + + /** + * Set the private state of the column (visibility in the UI). + * + * @param {Boolean} state + * Private (true or false) + */ + set private(state) { + this._private = state; + }, + + /** * Sets the sorted value */ set sorted(value) { diff --git a/devtools/client/storage/ui.js b/devtools/client/storage/ui.js index 1241d0120..946db68a2 100644 --- a/devtools/client/storage/ui.js +++ b/devtools/client/storage/ui.js @@ -573,7 +573,7 @@ StorageUI.prototype = { }, /** - * Populates the selected entry from teh table in the sidebar for a more + * Populates the selected entry from the table in the sidebar for a more * detailed view. */ displayObjectSidebar: Task.async(function* () { @@ -615,6 +615,11 @@ StorageUI.prototype = { let otherProps = itemProps.filter( e => !["name", "value", "valueActor"].includes(e)); for (let prop of otherProps) { + let column = this.table.columns.get(prop); + if (column && column.private) { + continue; + } + let cookieProp = COOKIE_KEY_MAP[prop] || prop; // The pseduo property of HostOnly refers to converse of isDomain property rawObject[cookieProp] = (prop === "isDomain") ? !item[prop] : item[prop]; @@ -626,6 +631,11 @@ StorageUI.prototype = { } else { // Case when displaying IndexedDB db/object store properties. for (let key in item) { + let column = this.table.columns.get(key); + if (column && column.private) { + continue; + } + mainScope.addItem(key, {}, true).setGrip(item[key]); this.parseItemValue(key, item[key]); } |