Bug 480306 - Cannot enter password on gmail login using the soft keyboard. r=ginn.chen,blassey,pavlov sr=pavlov
authorAntonio Gomes (tonikitoo) <tonikitoo@gmail.com>
Mon, 04 May 2009 10:59:53 -0400
changeset 27972 8c64012db5eed8c1f0ad74a6b258045b2c867c4f
parent 27968 c2ba27e9e639eeeae9b54bf5a436e78777ee906e
child 27973 9f7007400c515ff66ad059442bee31b4466642fc
push id6814
push usertonikitoo@gmail.com
push dateMon, 04 May 2009 15:10:56 +0000
treeherdermozilla-central@9f7007400c51 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersginn, pavlov
bugs480306
milestone1.9.2a1pre
Bug 480306 - Cannot enter password on gmail login using the soft keyboard. r=ginn.chen,blassey,pavlov sr=pavlov
widget/src/gtk2/nsWindow.cpp
--- a/widget/src/gtk2/nsWindow.cpp
+++ b/widget/src/gtk2/nsWindow.cpp
@@ -6702,17 +6702,18 @@ IM_commit_cb(GtkIMContext *aContext,
 
     LOGIM(("IM_commit_cb\n"));
 
     gKeyEventCommitted = PR_TRUE;
 
     // if gFocusWindow is null, use the last focused gIMEFocusWindow
     nsRefPtr<nsWindow> window = gFocusWindow ? gFocusWindow : gIMEFocusWindow;
 
-    if (!window || IM_get_input_context(window) != aContext)
+    if (!window || IM_get_input_context(window) != aContext &&
+        !(window->mIMEData && window->mIMEData->mEnabled == nsIWidget::IME_STATUS_PASSWORD)) 
         return;
 
     /* If IME doesn't change they keyevent that generated this commit,
        don't send it through XIM - just send it as a normal key press
        event. */
 
     if (gKeyEvent) {
         char keyval_utf8[8]; /* should have at least 6 bytes of space */