Chromium Code Reviews| Index: chrome/browser/renderer_host/chrome_render_view_host_observer.cc |
| diff --git a/chrome/browser/renderer_host/chrome_render_view_host_observer.cc b/chrome/browser/renderer_host/chrome_render_view_host_observer.cc |
| index 91da264e0ab545f3eb2f1a97974b80e51963fef4..aed43323c9a2e3da42308218bda590b695fd5b46 100644 |
| --- a/chrome/browser/renderer_host/chrome_render_view_host_observer.cc |
| +++ b/chrome/browser/renderer_host/chrome_render_view_host_observer.cc |
| @@ -5,9 +5,11 @@ |
| #include "chrome/browser/renderer_host/chrome_render_view_host_observer.h" |
| #include "base/command_line.h" |
| +#include "base/utf_string_conversions.h" |
| #include "chrome/browser/extensions/extension_service.h" |
| #include "chrome/browser/net/predictor.h" |
| #include "chrome/browser/profiles/profile.h" |
| +#include "chrome/browser/simple_message_box.h" |
| #include "chrome/common/chrome_notification_types.h" |
| #include "chrome/common/chrome_switches.h" |
| #include "chrome/common/extensions/extension_messages.h" |
| @@ -18,7 +20,10 @@ |
| #include "content/public/browser/render_process_host.h" |
| #include "content/public/browser/render_view_host.h" |
| #include "content/public/browser/render_view_host_delegate.h" |
| +#include "content/public/browser/render_widget_host_view.h" |
| #include "content/public/browser/site_instance.h" |
| +#include "grit/generated_resources.h" |
| +#include "ui/base/l10n/l10n_util.h" |
| using content::ChildProcessSecurityPolicy; |
| using content::RenderViewHost; |
| @@ -70,6 +75,8 @@ bool ChromeRenderViewHostObserver::OnMessageReceived( |
| IPC_BEGIN_MESSAGE_MAP(ChromeRenderViewHostObserver, message) |
| IPC_MESSAGE_HANDLER(ChromeViewHostMsg_FocusedEditableNodeTouched, |
| OnFocusedEditableNodeTouched) |
| + IPC_MESSAGE_HANDLER(ChromeViewHostMsg_GetTalkPermission, |
| + OnGetTalkPermission) |
| IPC_MESSAGE_UNHANDLED(handled = false) |
| IPC_END_MESSAGE_MAP() |
| return handled; |
| @@ -177,3 +184,18 @@ void ChromeRenderViewHostObserver::OnFocusedEditableNodeTouched() { |
| content::Source<RenderViewHost>(render_view_host()), |
| content::NotificationService::NoDetails()); |
| } |
| + |
| +void ChromeRenderViewHostObserver::OnGetTalkPermission( |
| + const ppapi::HostResource& resource) { |
| +#if defined(USE_AURA) |
| + string16 title = l10n_util::GetStringUTF16( |
| + IDS_GTALK_SCREEN_SHARE_DIALOG_TITLE); |
| + string16 message = l10n_util::GetStringUTF16( |
| + IDS_GTALK_SCREEN_SHARE_DIALOG_MESSAGE); |
| + int32_t result = browser::ShowYesNoBox( |
| + render_view_host()->GetView()->GetNativeView(), title, message); |
| + |
| + Send(new ChromeViewMsg_GetTalkPermissionACK( |
|
jam
2012/03/15 02:05:26
what you're doing here is basically a sync IPC, so
brettw
2012/03/15 17:44:32
I talked to John and we can keep this async. I thi
varunjain
2012/03/15 17:54:15
Done.
varunjain
2012/03/15 17:54:15
reverted to async
|
| + render_view_host()->GetRoutingID(), resource, result)); |
| +#endif |
| +} |