summaryrefslogtreecommitdiffstats
path: root/chrome_frame/chrome_frame_activex.cc
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-02 00:00:59 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-02 00:00:59 +0000
commit2b8fd32897bb674a71f09fd3ec91675b9a627181 (patch)
treef35be1cd41fcaef337f7b019433324889a9209f7 /chrome_frame/chrome_frame_activex.cc
parent750b7affd8971908b2d89712a0ec815bcc3e0537 (diff)
downloadchromium_src-2b8fd32897bb674a71f09fd3ec91675b9a627181.zip
chromium_src-2b8fd32897bb674a71f09fd3ec91675b9a627181.tar.gz
chromium_src-2b8fd32897bb674a71f09fd3ec91675b9a627181.tar.bz2
Fixes the following issue
Ensures Alt and Alt + character keys work correctly in ChromeFrame. There were two issues here:- a. Chrome would not forward unhandled Keyup messages. For the curious this carries WM_SYSKEYUP which is needed for Alt key to work. b. WM_SYSCHAR is not handled by the TranslateAccelerator function in IOleControlSite and IBrowserService2::v_MayTranslateAccelerator MSHTML does the same thing and also dispatches the message. We need to understand this better. For now we just post the message back to our parent which works. This fixes http://code.google.com/p/chromium/issues/detail?id=22996 Bug=22996 Review URL: http://codereview.chromium.org/257019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27803 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/chrome_frame_activex.cc')
-rw-r--r--chrome_frame/chrome_frame_activex.cc28
1 files changed, 1 insertions, 27 deletions
diff --git a/chrome_frame/chrome_frame_activex.cc b/chrome_frame/chrome_frame_activex.cc
index e58a961..9999fb7 100644
--- a/chrome_frame/chrome_frame_activex.cc
+++ b/chrome_frame/chrome_frame_activex.cc
@@ -51,32 +51,6 @@ LRESULT ChromeFrameActivex::OnCreate(UINT message, WPARAM wparam, LPARAM lparam,
return 0;
}
-void ChromeFrameActivex::OnAcceleratorPressed(int tab_handle,
- const MSG& accel_message) {
- DCHECK(m_spInPlaceSite != NULL);
- // Allow our host a chance to handle the accelerator.
- // This catches things like Ctrl+F, Ctrl+O etc, but not browser
- // accelerators such as F11, Ctrl+T etc.
- // (see AllowFrameToTranslateAccelerator for those).
- HRESULT hr = TranslateAccelerator(const_cast<MSG*>(&accel_message));
- if (hr != S_OK)
- hr = AllowFrameToTranslateAccelerator(accel_message);
-
- DLOG(INFO) << __FUNCTION__ << " browser response: "
- << StringPrintf("0x%08x", hr);
-
- // Last chance to handle the keystroke is to pass it to chromium.
- // We do this last partially because there's no way for us to tell if
- // chromium actually handled the keystroke, but also since the browser
- // should have first dibs anyway.
- if (hr != S_OK && automation_client_.get()) {
- TabProxy* tab = automation_client_->tab();
- if (tab) {
- tab->ProcessUnhandledAccelerator(accel_message);
- }
- }
-}
-
HRESULT ChromeFrameActivex::GetContainingDocument(IHTMLDocument2** doc) {
ScopedComPtr<IOleContainer> container;
HRESULT hr = m_spClientSite->GetContainer(container.Receive());
@@ -280,7 +254,7 @@ STDMETHODIMP ChromeFrameActivex::Load(IPropertyBag* bag, IErrorLog* error_log) {
const wchar_t g_activex_mixed_content_error[] = {
L"data:text/html,<html><body><b>ChromeFrame Security Error<br><br>"
L"Cannot navigate to HTTP url when document URL is HTTPS</body></html>"};
-
+
STDMETHODIMP ChromeFrameActivex::put_src(BSTR src) {
GURL document_url(GetDocumentUrl());
if (document_url.SchemeIsSecure()) {