Chromium Code Reviews| Index: views/controls/textfield/native_textfield_gtk.cc |
| diff --git a/views/controls/textfield/native_textfield_gtk.cc b/views/controls/textfield/native_textfield_gtk.cc |
| index b52a50bbd22aac612229dbff80dc1316b25ed276..19437256d6c59187e5a7feff62aaadc8a6b1b3a6 100644 |
| --- a/views/controls/textfield/native_textfield_gtk.cc |
| +++ b/views/controls/textfield/native_textfield_gtk.cc |
| @@ -361,6 +361,18 @@ gboolean NativeTextfieldGtk::OnKeyPressEvent(GdkEventKey* event) { |
| } |
| // static |
| +gboolean NativeTextfieldGtk::OnActivateHandler( |
| + GtkWidget* widget, |
| + NativeTextfieldGtk* textfield) { |
| + return textfield->OnActivate(); |
| +} |
| + |
| +gboolean NativeTextfieldGtk::OnActivate() { |
| + return textfield_->GetParent()->AcceleratorPressed( |
| + Accelerator(app::VKEY_RETURN, false, false, false)); |
|
James Su
2010/12/01 18:35:56
It's probably better to call the widget's HandleKe
|
| +} |
| + |
| +// static |
| gboolean NativeTextfieldGtk::OnChangedHandler( |
| GtkWidget* widget, |
| NativeTextfieldGtk* textfield) { |
| @@ -409,6 +421,9 @@ void NativeTextfieldGtk::NativeControlCreated(GtkWidget* widget) { |
| } |
| g_signal_connect(widget, "key-press-event", |
| G_CALLBACK(OnKeyPressEventHandler), this); |
| + // In order to properly trigger Accelerators bound to VKEY_RETURN, we need to |
| + // send an event when the widget gets the activate signal. |
| + g_signal_connect(widget, "activate", G_CALLBACK(&OnActivateHandler), this); |
|
James Su
2010/12/01 18:35:56
Only GtkEntry has "activate" signal.
|
| } |
| //////////////////////////////////////////////////////////////////////////////// |