| Index: content/browser/renderer_host/render_widget_host_view_mac.mm
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| index b767f463fe3ca418e5fe52e2b215d30df5eb162f..3877ad0340fb8b5591e49a47351398a7d1d848e4 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| @@ -47,6 +47,8 @@
|
| #include "content/common/input_messages.h"
|
| #include "content/common/view_messages.h"
|
| #include "content/common/webplugin_geometry.h"
|
| +#include "content/public/browser/browser_context.h"
|
| +#include "content/public/browser/browser_plugin_guest_manager.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "content/public/browser/native_web_keyboard_event.h"
|
| #include "content/public/browser/notification_service.h"
|
| @@ -107,6 +109,23 @@ BOOL EventIsReservedBySystem(NSEvent* event) {
|
| return helper->map()->IsEventReserved(event);
|
| }
|
|
|
| +RenderWidgetHostViewMac* GetRenderWidgetHostViewToUse(
|
| + RenderWidgetHostViewMac* render_widget_host_view) {
|
| + WebContents* web_contents = render_widget_host_view->GetWebContents();
|
| + if (!web_contents)
|
| + return render_widget_host_view;
|
| + content::BrowserPluginGuestManager* guest_manager =
|
| + web_contents->GetBrowserContext()->GetGuestManager();
|
| + if (!guest_manager)
|
| + return render_widget_host_view;
|
| + content::WebContents* guest =
|
| + guest_manager->GetFullPageGuest(web_contents);
|
| + if (!guest)
|
| + return render_widget_host_view;
|
| + return static_cast<RenderWidgetHostViewMac*>(
|
| + guest->GetRenderWidgetHostView());
|
| +}
|
| +
|
| } // namespace
|
|
|
| // These are not documented, so use only after checking -respondsToSelector:.
|
| @@ -3282,11 +3301,11 @@ extern NSString *NSTextInputReplacementRangeAttributeName;
|
| }
|
|
|
| - (void)startSpeaking:(id)sender {
|
| - renderWidgetHostView_->SpeakSelection();
|
| + GetRenderWidgetHostViewToUse(renderWidgetHostView_.get())->SpeakSelection();
|
| }
|
|
|
| - (void)stopSpeaking:(id)sender {
|
| - renderWidgetHostView_->StopSpeaking();
|
| + GetRenderWidgetHostViewToUse(renderWidgetHostView_.get())->StopSpeaking();
|
| }
|
|
|
| - (void)cancelComposition {
|
|
|