| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "content/shell/browser/shell_platform_data_aura.h" | 5 #include "content/shell/browser/shell_platform_data_aura.h" |
| 6 | 6 |
| 7 #include "content/shell/browser/shell.h" | 7 #include "content/shell/browser/shell.h" |
| 8 #include "ui/aura/client/aura_constants.h" | 8 #include "ui/aura/client/aura_constants.h" |
| 9 #include "ui/aura/client/default_capture_client.h" | 9 #include "ui/aura/client/default_capture_client.h" |
| 10 #include "ui/aura/env.h" | 10 #include "ui/aura/env.h" |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 75 | 75 |
| 76 virtual ~MinimalInputEventFilter() { | 76 virtual ~MinimalInputEventFilter() { |
| 77 host_->window()->RemovePreTargetHandler(this); | 77 host_->window()->RemovePreTargetHandler(this); |
| 78 host_->window()->SetProperty(aura::client::kRootWindowInputMethodKey, | 78 host_->window()->SetProperty(aura::client::kRootWindowInputMethodKey, |
| 79 static_cast<ui::InputMethod*>(NULL)); | 79 static_cast<ui::InputMethod*>(NULL)); |
| 80 } | 80 } |
| 81 | 81 |
| 82 private: | 82 private: |
| 83 // ui::EventHandler: | 83 // ui::EventHandler: |
| 84 virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE { | 84 virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE { |
| 85 const ui::EventType type = event->type(); | 85 if (event->IsTranslated()) { |
| 86 if (type == ui::ET_TRANSLATED_KEY_PRESS || | |
| 87 type == ui::ET_TRANSLATED_KEY_RELEASE) { | |
| 88 // The |event| is already handled by this object, change the type of the | 86 // The |event| is already handled by this object, change the type of the |
| 89 // event to ui::ET_KEY_* and pass it to the next filter. | 87 // event to ui::ET_KEY_* and pass it to the next filter. |
| 90 static_cast<ui::TranslatedKeyEvent*>(event)->ConvertToKeyEvent(); | 88 event->SetTranslated(false); |
| 91 } else { | 89 } else { |
| 92 if (input_method_->DispatchKeyEvent(*event)) | 90 if (input_method_->DispatchKeyEvent(*event)) |
| 93 event->StopPropagation(); | 91 event->StopPropagation(); |
| 94 } | 92 } |
| 95 } | 93 } |
| 96 | 94 |
| 97 // ui::internal::InputMethodDelegate: | 95 // ui::internal::InputMethodDelegate: |
| 98 virtual bool DispatchKeyEventPostIME(const ui::KeyEvent& event) OVERRIDE { | 96 virtual bool DispatchKeyEventPostIME(const ui::KeyEvent& event) OVERRIDE { |
| 99 ui::TranslatedKeyEvent aura_event(event); | 97 ui::KeyEvent aura_event(event); |
| 98 aura_event.SetTranslated(true); |
| 100 ui::EventDispatchDetails details = | 99 ui::EventDispatchDetails details = |
| 101 host_->dispatcher()->OnEventFromSource(&aura_event); | 100 host_->dispatcher()->OnEventFromSource(&aura_event); |
| 102 return aura_event.handled() || details.dispatcher_destroyed; | 101 return aura_event.handled() || details.dispatcher_destroyed; |
| 103 } | 102 } |
| 104 | 103 |
| 105 aura::WindowTreeHost* host_; | 104 aura::WindowTreeHost* host_; |
| 106 scoped_ptr<ui::InputMethod> input_method_; | 105 scoped_ptr<ui::InputMethod> input_method_; |
| 107 | 106 |
| 108 DISALLOW_COPY_AND_ASSIGN(MinimalInputEventFilter); | 107 DISALLOW_COPY_AND_ASSIGN(MinimalInputEventFilter); |
| 109 }; | 108 }; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 134 | 133 |
| 135 void ShellPlatformDataAura::ShowWindow() { | 134 void ShellPlatformDataAura::ShowWindow() { |
| 136 host_->Show(); | 135 host_->Show(); |
| 137 } | 136 } |
| 138 | 137 |
| 139 void ShellPlatformDataAura::ResizeWindow(const gfx::Size& size) { | 138 void ShellPlatformDataAura::ResizeWindow(const gfx::Size& size) { |
| 140 host_->SetBounds(gfx::Rect(size)); | 139 host_->SetBounds(gfx::Rect(size)); |
| 141 } | 140 } |
| 142 | 141 |
| 143 } // namespace content | 142 } // namespace content |
| OLD | NEW |