Note that at this point we actaully do Xrays for all of our various
property types, except in worker code. The real substantive change
here is the change to what usedForXrays returns. The rest is minor
cleanup.
The extra indentaiton was necessary because we wanted hg/git to notice that webapp_clearBrowserData.js was actually a rename of test_webapp_clearBrowserData.html.
These new tests are disabled on Android because the test they're replacing, test_webapp_clearBrowserData.html, was also disabled on Android, and the new tests fail in the same way as the original test.
--HG--
rename : dom/indexedDB/test/test_webapp_clearBrowserData.html => dom/indexedDB/test/webapp_clearBrowserData.js
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".
There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id. This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.
I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process. I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.
The extra indentaiton was necessary because we wanted hg/git to notice that webapp_clearBrowserData.js was actually a rename of test_webapp_clearBrowserData.html.
These new tests are disabled on Android because the test they're replacing, test_webapp_clearBrowserData.html, was also disabled on Android, and the new tests fail in the same way as the original test.
--HG--
rename : dom/indexedDB/test/test_webapp_clearBrowserData.html => dom/indexedDB/test/webapp_clearBrowserData.js
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".
There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id. This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.
I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process. I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.