diff options
author | lionel.g.landwerlin <lionel.g.landwerlin@intel.com> | 2015-08-24 14:26:57 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-08-24 21:27:40 +0000 |
commit | 63f0e25e37e32f84652883f02c3997f80a5a061c (patch) | |
tree | faf3549ee07c4505134a7bcd81ddfd3b53e1ebaf /extensions/renderer | |
parent | b48815ca35b565e6ca372640ac25f79ee1a84c7e (diff) | |
download | chromium_src-63f0e25e37e32f84652883f02c3997f80a5a061c.zip chromium_src-63f0e25e37e32f84652883f02c3997f80a5a061c.tar.gz chromium_src-63f0e25e37e32f84652883f02c3997f80a5a061c.tar.bz2 |
extensions: windows: list app windows of the current extension
When window types filter was added to the chrome.windows API, the
behavior of the API changed to not list the extension's own
application windows.
This CL reverts back to the original behavior of the API :
When no window types filter is given, all normal and popup windows are
listed and additionally the current extension's application and panel
windows are also listed. But application and panel windows of other
extensions are not.
The addition to the original behavior is :
When a window types filter is given, all windows regardless of what
extension created them, will be listed and filtered using the given
window types.
BUG=518745
Review URL: https://codereview.chromium.org/1287653002
Cr-Commit-Position: refs/heads/master@{#345182}
Diffstat (limited to 'extensions/renderer')
-rw-r--r-- | extensions/renderer/event_bindings.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/extensions/renderer/event_bindings.cc b/extensions/renderer/event_bindings.cc index a468ad9..229a1c8 100644 --- a/extensions/renderer/event_bindings.cc +++ b/extensions/renderer/event_bindings.cc @@ -103,6 +103,15 @@ EventFilteringInfo ParseFromObject(v8::Local<v8::Object> object, v8::Local<v8::Value> window_types_value(object->Get(window_types)); info.SetWindowType(*v8::String::Utf8Value(window_types_value)); } + + v8::Local<v8::String> window_exposed( + v8::String::NewFromUtf8(isolate, "windowExposedByDefault")); + if (object->Has(window_exposed)) { + v8::Local<v8::Value> window_exposed_value(object->Get(window_exposed)); + info.SetWindowExposedByDefault( + window_exposed_value.As<v8::Boolean>()->Value()); + } + return info; } |