Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(108)

Side by Side Diff: chrome/browser/guestview/webview/webview_guest.h

Issue 166273014: Remove dependency on NotificationService for cros a11y settings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge ToT. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_ 5 #ifndef CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_
6 #define CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_ 6 #define CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_
7 7
8 #include "base/observer_list.h" 8 #include "base/observer_list.h"
9 #include "chrome/browser/extensions/tab_helper.h" 9 #include "chrome/browser/extensions/tab_helper.h"
10 #include "chrome/browser/guestview/guestview.h" 10 #include "chrome/browser/guestview/guestview.h"
11 #include "content/public/browser/notification_registrar.h" 11 #include "content/public/browser/notification_registrar.h"
12 #include "content/public/browser/web_contents_observer.h" 12 #include "content/public/browser/web_contents_observer.h"
13 13
14 #if defined(OS_CHROMEOS)
15 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
16 #endif
17
14 namespace extensions { 18 namespace extensions {
15 class ScriptExecutor; 19 class ScriptExecutor;
16 } // namespace extensions 20 } // namespace extensions
17 21
18 // A WebViewGuest is a WebContentsObserver on the guest WebContents of a 22 // A WebViewGuest is a WebContentsObserver on the guest WebContents of a
19 // <webview> tag. It provides the browser-side implementation of the <webview> 23 // <webview> tag. It provides the browser-side implementation of the <webview>
20 // API and manages the lifetime of <webview> extension events. WebViewGuest is 24 // API and manages the lifetime of <webview> extension events. WebViewGuest is
21 // created on attachment. That is, when a guest WebContents is associated with 25 // created on attachment. That is, when a guest WebContents is associated with
22 // a particular embedder WebContents. This happens on either initial navigation 26 // a particular embedder WebContents. This happens on either initial navigation
23 // or through the use of the New Window API, when a new window is attached to 27 // or through the use of the New Window API, when a new window is attached to
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 185
182 // Called when a redirect notification occurs. 186 // Called when a redirect notification occurs.
183 void LoadRedirect(const GURL& old_url, 187 void LoadRedirect(const GURL& old_url,
184 const GURL& new_url, 188 const GURL& new_url,
185 bool is_top_level); 189 bool is_top_level);
186 190
187 void AddWebViewToExtensionRendererState(); 191 void AddWebViewToExtensionRendererState();
188 static void RemoveWebViewFromExtensionRendererState( 192 static void RemoveWebViewFromExtensionRendererState(
189 content::WebContents* web_contents); 193 content::WebContents* web_contents);
190 194
195 #if defined(OS_CHROMEOS)
196 // Notification of a change in the state of an accessibility setting.
197 void OnAccessibilityStatusChanged(
198 const chromeos::AccessibilityStatusEventDetails& details);
199 #endif
200
191 void InjectChromeVoxIfNeeded(content::RenderViewHost* render_view_host); 201 void InjectChromeVoxIfNeeded(content::RenderViewHost* render_view_host);
192 202
193 ObserverList<extensions::TabHelper::ScriptExecutionObserver> 203 ObserverList<extensions::TabHelper::ScriptExecutionObserver>
194 script_observers_; 204 script_observers_;
195 scoped_ptr<extensions::ScriptExecutor> script_executor_; 205 scoped_ptr<extensions::ScriptExecutor> script_executor_;
196 206
197 content::NotificationRegistrar notification_registrar_; 207 content::NotificationRegistrar notification_registrar_;
198 208
199 // A counter to generate a unique request id for a permission request. 209 // A counter to generate a unique request id for a permission request.
200 // We only need the ids to be unique for a given WebViewGuest. 210 // We only need the ids to be unique for a given WebViewGuest.
(...skipping 11 matching lines...) Expand all
212 222
213 // Main frame ID of last committed page. 223 // Main frame ID of last committed page.
214 int64 main_frame_id_; 224 int64 main_frame_id_;
215 225
216 // Set to |true| if ChromeVox was already injected in main frame. 226 // Set to |true| if ChromeVox was already injected in main frame.
217 bool chromevox_injected_; 227 bool chromevox_injected_;
218 228
219 // Stores the current zoom factor. 229 // Stores the current zoom factor.
220 double current_zoom_factor_; 230 double current_zoom_factor_;
221 231
232 #if defined(OS_CHROMEOS)
233 // Subscription to receive notifications on changes to a11y settings.
234 scoped_ptr<chromeos::AccessibilityStatusSubscription>
235 accessibility_subscription_;
236 #endif
237
222 DISALLOW_COPY_AND_ASSIGN(WebViewGuest); 238 DISALLOW_COPY_AND_ASSIGN(WebViewGuest);
223 }; 239 };
224 240
225 #endif // CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_ 241 #endif // CHROME_BROWSER_GUESTVIEW_WEBVIEW_WEBVIEW_GUEST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698