summaryrefslogtreecommitdiffstats
path: root/extensions/common/event_matcher.h
diff options
context:
space:
mode:
authorfsamuel@chromium.org <fsamuel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 02:31:40 +0000
committerfsamuel@chromium.org <fsamuel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 02:31:40 +0000
commita97472a4d37cd0fae0fea068fc695cd886d0e6f1 (patch)
tree8fd3a2a7182465094f3fb40e6132178024cfd20b /extensions/common/event_matcher.h
parent5a9e5cfdd75a2f5f994687395ce34ae5d0154e24 (diff)
downloadchromium_src-a97472a4d37cd0fae0fea068fc695cd886d0e6f1.zip
chromium_src-a97472a4d37cd0fae0fea068fc695cd886d0e6f1.tar.gz
chromium_src-a97472a4d37cd0fae0fea068fc695cd886d0e6f1.tar.bz2
<webview>: Don't attempt to dispatch events to all app windows.
This CL associates a routingId with each event listener. This ensures that when dispatching events from the browser process, only event listeners associated with the current RenderView are fired. BUG=166165 Test=manually by opening a two Chrome app windows in the same app with webviews Verify that there is no error spew in either console output. Review URL: https://chromiumcodereview.appspot.com/18858005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210725 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'extensions/common/event_matcher.h')
-rw-r--r--extensions/common/event_matcher.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/extensions/common/event_matcher.h b/extensions/common/event_matcher.h
index dadb6ef..7843fce 100644
--- a/extensions/common/event_matcher.h
+++ b/extensions/common/event_matcher.h
@@ -18,7 +18,8 @@ class EventFilteringInfo;
// MatchNonURLCriteria() - URL matching is handled by EventFilter.
class EventMatcher {
public:
- explicit EventMatcher(scoped_ptr<base::DictionaryValue> filter);
+ EventMatcher(scoped_ptr<base::DictionaryValue> filter,
+ int routing_id);
~EventMatcher();
// Returns true if |event_info| satisfies this matcher's criteria, not taking
@@ -32,6 +33,8 @@ class EventMatcher {
int GetInstanceID() const;
+ int GetRoutingID() const;
+
base::DictionaryValue* value() const {
return filter_.get();
}
@@ -44,6 +47,8 @@ class EventMatcher {
// The valid filter keys are event-specific.
scoped_ptr<base::DictionaryValue> filter_;
+ int routing_id_;
+
DISALLOW_COPY_AND_ASSIGN(EventMatcher);
};