Bug 78609

Summary: Web Inspector: [InspectorIndexedDB] Add IndexedDB TreeElement to resources panel.
Product: WebKit Reporter: Vsevolod Vlasov <vsevik>
Component: Web Inspector (Deprecated)Assignee: Vsevolod Vlasov <vsevik>
Status: RESOLVED FIXED    
Severity: Normal CC: apavlov, bweinstein, joepeck, keishi, loislo, pfeldman, pmuellr, rik, timothy, webkit.review.bot, yurys
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 75386    
Attachments:
Description Flags
Patch
none
Patch
yurys: review+
Screenshot none

Description Vsevolod Vlasov 2012-02-14 09:12:53 PST
Add IndexedDB TreeElement to resources panel.
Show databases, object stores and indexes hierarchy.
Put this functionality behind experimental setting.
Comment 1 Vsevolod Vlasov 2012-02-14 13:50:42 PST
Created attachment 127036 [details]
Patch
Comment 2 Vsevolod Vlasov 2012-02-15 06:11:57 PST
Created attachment 127172 [details]
Patch
Comment 3 WebKit Review Bot 2012-02-15 06:16:09 PST
Attachment 127172 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/update-webkit']" exit_code: 9

Updating OpenSource
From git://git.webkit.org/WebKit
 + 26c3dbf...35ee224 master     -> origin/master  (forced update)
Partial-rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc ...
Currently at 107809 = 26c3dbf4d929380fdd9660a6218cc2abc86f8070
r107806 = 35ee22447c69292de5be6ed45c2410bff7ce3dca
Done rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc
	M	LayoutTests/platform/chromium-linux/tables/mozilla/bugs/bug11026-expected.png
	M	LayoutTests/platform/chromium-linux/tables/mozilla/bugs/bug10565-expected.png
	M	LayoutTests/platform/chromium-linux/tables/mozilla/bugs/bug1188-expected.png
	M	LayoutTests/platform/chromium/test_expectations.txt
	A	LayoutTests/platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug11026-expected.png
	A	LayoutTests/platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug10565-expected.png
	M	LayoutTests/platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug1188-expected.png
	D	LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug11026-expected.png
	D	LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug10565-expected.png
	M	LayoutTests/platform/chromium-mac-leopard/tables/mozilla/bugs/bug11026-expected.png
	M	LayoutTests/platform/chromium-mac-leopard/tables/mozilla/bugs/bug10565-expected.png
	M	LayoutTests/platform/chromium-mac-leopard/tables/mozilla/bugs/bug1188-expected.png
	M	LayoutTests/platform/chromium-win/tables/mozilla/bugs/bug1188-expected.png
	M	LayoutTests/platform/chromium-win/tables/mozilla/bugs/bug11026-expected.png
	M	LayoutTests/platform/chromium-win/tables/mozilla/bugs/bug10565-expected.png
	M	LayoutTests/ChangeLog
W: -empty_dir: trunk/LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug10565-expected.png
W: -empty_dir: trunk/LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug11026-expected.png
107807 = cd492113759b3acf3e51434935a37ee8efc9ac66 already exists! Why are we refetching it?
 at /usr/lib/git-core/git-svn line 5210

Died at Tools/Scripts/update-webkit line 164.


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Vsevolod Vlasov 2012-02-15 06:23:44 PST
Created attachment 127173 [details]
Screenshot
Comment 5 Yury Semikhatsky 2012-02-15 06:39:39 PST
Comment on attachment 127172 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=127172&action=review

> Source/WebCore/inspector/front-end/ResourcesPanel.js:307
> +        var securityOrigin = /** @type {string} */ event.data.securityOrigin;

All these methods may be extracted into IndexedDBTree or something else isolated from the rest ResourcesPanel.

> Source/WebCore/inspector/front-end/ResourcesPanel.js:323
> +    _idbDatabaseTreeElement: function(securityOrigin, databaseName)

securityOrigin and databaseName are mostly used together, consider encapsulating them in a class.

> Source/WebCore/inspector/front-end/ResourcesPanel.js:1586
> +        if (!this._indexedDBModelCreated) {

Should this check be in createIndexedDBModel so that other clients couldn't create new instance?

> Source/WebCore/inspector/front-end/ResourcesPanel.js:1676
> +            this._idbIndexTreeElements[index.name].update(index);

The index tree element update doesn't seem to do anything useful, is it just not implemented yet?

> Source/WebCore/inspector/front-end/ResourcesPanel.js:1701
> +    this._securityOrigin = securityOrigin;

Should this be replaced with this._index = index? None of the fields is used.
Comment 6 Vsevolod Vlasov 2012-02-16 05:30:20 PST
Committed r107925: <http://trac.webkit.org/changeset/107925>