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

Unified Diff: content/browser/renderer_host/gtk_im_context_wrapper.cc

Issue 9473001: Extract minimal RenderViewHost interface for embedders, leaving (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to LKGR. Created 8 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/gtk_im_context_wrapper.cc
diff --git a/content/browser/renderer_host/gtk_im_context_wrapper.cc b/content/browser/renderer_host/gtk_im_context_wrapper.cc
index 3ca6117cfbd9ecf5ba676b5a2f9848d8058ceb2d..df801947f91c54791309a6b9c632540587d8c58e 100644
--- a/content/browser/renderer_host/gtk_im_context_wrapper.cc
+++ b/content/browser/renderer_host/gtk_im_context_wrapper.cc
@@ -283,9 +283,10 @@ void GtkIMContextWrapper::OnFocusIn() {
// Enables RenderWidget's IME related events, so that we can be notified
// when WebKit wants to enable or disable IME.
- if (host_view_->GetRenderWidgetHost())
- static_cast<RenderWidgetHostImpl*>(
+ if (host_view_->GetRenderWidgetHost()) {
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->SetInputMethodActive(true);
+ }
}
void GtkIMContextWrapper::OnFocusOut() {
@@ -311,9 +312,10 @@ void GtkIMContextWrapper::OnFocusOut() {
is_composing_text_ = false;
// Disable RenderWidget's IME related events to save bandwidth.
- if (host_view_->GetRenderWidgetHost())
- static_cast<RenderWidgetHostImpl*>(
+ if (host_view_->GetRenderWidgetHost()) {
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->SetInputMethodActive(false);
+ }
}
#if !defined(TOOLKIT_VIEWS)
@@ -409,7 +411,8 @@ void GtkIMContextWrapper::ProcessUnfilteredKeyPressEvent(
void GtkIMContextWrapper::ProcessInputMethodResult(const GdkEventKey* event,
bool filtered) {
- RenderWidgetHostImpl* host = RenderWidgetHostImpl::FromRWHV(host_view_);
+ RenderWidgetHostImpl* host = RenderWidgetHostImpl::From(
+ host_view_->GetRenderWidgetHost());
if (!host)
return;
@@ -471,9 +474,10 @@ void GtkIMContextWrapper::ConfirmComposition() {
DCHECK(!is_in_key_event_handler_);
if (is_composing_text_) {
- if (host_view_->GetRenderWidgetHost())
- static_cast<RenderWidgetHostImpl*>(
+ if (host_view_->GetRenderWidgetHost()) {
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->ImeConfirmComposition();
+ }
// Reset the input method.
CancelComposition();
@@ -498,7 +502,7 @@ void GtkIMContextWrapper::HandleCommit(const string16& text) {
if (!is_in_key_event_handler_ && host_view_->GetRenderWidgetHost()) {
// Workaround http://crbug.com/45478 by sending fake key down/up events.
SendFakeCompositionKeyEvent(WebKit::WebInputEvent::RawKeyDown);
- static_cast<RenderWidgetHostImpl*>(
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->ImeConfirmComposition(text);
SendFakeCompositionKeyEvent(WebKit::WebInputEvent::KeyUp);
}
@@ -547,10 +551,10 @@ void GtkIMContextWrapper::HandlePreeditChanged(const gchar* text,
const std::vector<WebKit::WebCompositionUnderline>& underlines =
reinterpret_cast<const std::vector<WebKit::WebCompositionUnderline>&>(
composition_.underlines);
- static_cast<RenderWidgetHostImpl*>(
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->ImeSetComposition(
- composition_.text, underlines, composition_.selection.start(),
- composition_.selection.end());
+ composition_.text, underlines, composition_.selection.start(),
+ composition_.selection.end());
SendFakeCompositionKeyEvent(WebKit::WebInputEvent::KeyUp);
}
}
@@ -564,9 +568,10 @@ void GtkIMContextWrapper::HandlePreeditEnd() {
// If there is still a preedit text when firing "preedit-end" signal,
// we need inform webkit to clear it.
// It's only necessary when it's not in ProcessKeyEvent ().
- if (!is_in_key_event_handler_ && host_view_->GetRenderWidgetHost())
- static_cast<RenderWidgetHostImpl*>(
+ if (!is_in_key_event_handler_ && host_view_->GetRenderWidgetHost()) {
+ RenderWidgetHostImpl::From(
host_view_->GetRenderWidgetHost())->ImeCancelComposition();
+ }
}
// Don't set is_composing_text_ to false here, because "preedit_end"

Powered by Google App Engine
This is Rietveld 408576698