| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <gdk/gdkkeysyms.h> | 5 #include <gdk/gdkkeysyms.h> |
| 6 #include <gtk/gtk.h> | 6 #include <gtk/gtk.h> |
| 7 | 7 |
| 8 #include "views/controls/textfield/native_textfield_gtk.h" | 8 #include "views/controls/textfield/native_textfield_gtk.h" |
| 9 | 9 |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 377 gboolean NativeTextfieldGtk::OnKeyPressEventHandler( | 377 gboolean NativeTextfieldGtk::OnKeyPressEventHandler( |
| 378 GtkWidget* widget, | 378 GtkWidget* widget, |
| 379 GdkEventKey* event, | 379 GdkEventKey* event, |
| 380 NativeTextfieldGtk* textfield) { | 380 NativeTextfieldGtk* textfield) { |
| 381 return textfield->OnKeyPressEvent(event); | 381 return textfield->OnKeyPressEvent(event); |
| 382 } | 382 } |
| 383 | 383 |
| 384 gboolean NativeTextfieldGtk::OnKeyPressEvent(GdkEventKey* event) { | 384 gboolean NativeTextfieldGtk::OnKeyPressEvent(GdkEventKey* event) { |
| 385 Textfield::Controller* controller = textfield_->GetController(); | 385 Textfield::Controller* controller = textfield_->GetController(); |
| 386 if (controller) { | 386 if (controller) { |
| 387 KeyEvent key_event(event); | 387 KeyEvent key_event(reinterpret_cast<GdkEvent*>(event)); |
| 388 return controller->HandleKeyEvent(textfield_, key_event); | 388 return controller->HandleKeyEvent(textfield_, key_event); |
| 389 } | 389 } |
| 390 return false; | 390 return false; |
| 391 } | 391 } |
| 392 | 392 |
| 393 // static | 393 // static |
| 394 gboolean NativeTextfieldGtk::OnActivateHandler( | 394 gboolean NativeTextfieldGtk::OnActivateHandler( |
| 395 GtkWidget* widget, | 395 GtkWidget* widget, |
| 396 NativeTextfieldGtk* textfield) { | 396 NativeTextfieldGtk* textfield) { |
| 397 return textfield->OnActivate(); | 397 return textfield->OnActivate(); |
| 398 } | 398 } |
| 399 | 399 |
| 400 gboolean NativeTextfieldGtk::OnActivate() { | 400 gboolean NativeTextfieldGtk::OnActivate() { |
| 401 GdkEvent* event = gtk_get_current_event(); | 401 GdkEvent* event = gtk_get_current_event(); |
| 402 if (!event || event->type != GDK_KEY_PRESS) | 402 if (!event || event->type != GDK_KEY_PRESS) |
| 403 return false; | 403 return false; |
| 404 | 404 |
| 405 GdkEventKey* key_event = reinterpret_cast<GdkEventKey*>(event); | 405 GdkEventKey* key_event = reinterpret_cast<GdkEventKey*>(event); |
| 406 gboolean handled = false; | 406 gboolean handled = false; |
| 407 | 407 |
| 408 Textfield::Controller* controller = textfield_->GetController(); | 408 Textfield::Controller* controller = textfield_->GetController(); |
| 409 if (controller) { | 409 if (controller) { |
| 410 KeyEvent views_key_event(key_event); | 410 KeyEvent views_key_event(event); |
| 411 handled = controller->HandleKeyEvent(textfield_, views_key_event); | 411 handled = controller->HandleKeyEvent(textfield_, views_key_event); |
| 412 } | 412 } |
| 413 | 413 |
| 414 WidgetGtk* widget = static_cast<WidgetGtk*>(GetWidget()); | 414 WidgetGtk* widget = static_cast<WidgetGtk*>(GetWidget()); |
| 415 if (!handled && widget) | 415 if (!handled && widget) |
| 416 handled = widget->HandleKeyboardEvent(key_event); | 416 handled = widget->HandleKeyboardEvent(key_event); |
| 417 | 417 |
| 418 return handled; | 418 return handled; |
| 419 } | 419 } |
| 420 | 420 |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 482 // static | 482 // static |
| 483 NativeTextfieldWrapper* NativeTextfieldWrapper::CreateWrapper( | 483 NativeTextfieldWrapper* NativeTextfieldWrapper::CreateWrapper( |
| 484 Textfield* field) { | 484 Textfield* field) { |
| 485 if (NativeTextfieldViews::IsTextfieldViewsEnabled()) { | 485 if (NativeTextfieldViews::IsTextfieldViewsEnabled()) { |
| 486 return new NativeTextfieldViews(field); | 486 return new NativeTextfieldViews(field); |
| 487 } | 487 } |
| 488 return new NativeTextfieldGtk(field); | 488 return new NativeTextfieldGtk(field); |
| 489 } | 489 } |
| 490 | 490 |
| 491 } // namespace views | 491 } // namespace views |
| OLD | NEW |