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

Unified Diff: chrome/browser/renderer_host/render_widget_host_view_gtk.h

Issue 149755: This change list improves IME support on Linux. Many corner cases that were n... Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 11 years, 5 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
« no previous file with comments | « no previous file | chrome/browser/renderer_host/render_widget_host_view_gtk.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/renderer_host/render_widget_host_view_gtk.h
===================================================================
--- chrome/browser/renderer_host/render_widget_host_view_gtk.h (版本 21138)
+++ chrome/browser/renderer_host/render_widget_host_view_gtk.h (工作副本)
@@ -9,6 +9,7 @@
#include <vector>
#include "base/gfx/native_widget_types.h"
+#include "base/scoped_ptr.h"
#include "chrome/browser/renderer_host/render_widget_host_view.h"
#include "chrome/common/owned_widget_gtk.h"
#include "chrome/common/render_messages.h"
@@ -16,6 +17,8 @@
#include "webkit/glue/webcursor.h"
class RenderWidgetHost;
+// A conveience wrapper class for GtkIMContext;
+class RenderWidgetHostViewGtkIMContext;
typedef struct _GtkClipboard GtkClipboard;
typedef struct _GtkSelectionData GtkSelectionData;
@@ -116,33 +119,13 @@
// stay open.
bool is_popup_first_mouse_release_;
- // The GtkIMContext object.
- // In terms of the DOM event specification Appendix A
- // <http://www.w3.org/TR/DOM-Level-3-Events/keyset.html>,
- // GTK uses a GtkIMContext object for the following two purposes:
- // 1. Composing Latin characters (A.1.2), and;
- // 2. Composing CJK characters with an IME (A.1.3).
- // Many JavaScript pages assume composed Latin characters are dispatched to
- // their onkeypress() handlers but not dispatched CJK characters composed
- // with an IME. To emulate this behavior, we should monitor the status of
- // this GtkIMContext object and prevent sending Char events when a
- // GtkIMContext object sends a "commit" signal with the CJK characters
- // composed by an IME.
- GtkIMContext* im_context_;
+ // Whether or not this widget was focused before shadowed by another widget.
+ // Used in OnGrabNotify() handler to track the focused state correctly.
+ bool was_focused_before_grab_;
- // Whether or not the above GtkIMContext is composing a CJK text with an IME.
- // The GtkIMContext object sends a "preedit_start" before it starts composing
- // a CJK text and a "preedit_end" signal after it finishes composing it.
- // On the other hand, the GtkIMContext object doesn't send them when
- // composing Latin texts. So, we monitor the above signals to check whether
- // or not the GtkIMContext object is composing a CJK text.
- bool im_is_composing_cjk_text_;
+ // A conveience wrapper object for GtkIMContext;
+ scoped_ptr<RenderWidgetHostViewGtkIMContext> im_context_;
- // Represents the current modifier-key state.
- // This state is used when GtkIMContext signal handlers create Char events
- // because they don't use the GdkEventKey objects and cannot get the state.
- int im_modifier_state_;
-
// Helper class that lets us allocate plugin containers and move them.
GtkPluginContainerManager plugin_container_manager_;
« no previous file with comments | « no previous file | chrome/browser/renderer_host/render_widget_host_view_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698