| 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 "content/browser/renderer_host/render_widget_host_view_gtk.h" | 5 #include "content/browser/renderer_host/render_widget_host_view_gtk.h" |
| 6 | 6 |
| 7 // If this gets included after the gtk headers, then a bunch of compiler | 7 // If this gets included after the gtk headers, then a bunch of compiler |
| 8 // errors happen because of a "#define Status int" in Xlib.h, which interacts | 8 // errors happen because of a "#define Status int" in Xlib.h, which interacts |
| 9 // badly with net::URLRequestStatus::Status. | 9 // badly with net::URLRequestStatus::Status. |
| 10 #include "content/common/view_messages.h" | 10 #include "content/common/view_messages.h" |
| (...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 GdkEventConfigure* event, | 196 GdkEventConfigure* event, |
| 197 RenderWidgetHostViewGtk* host_view) { | 197 RenderWidgetHostViewGtk* host_view) { |
| 198 host_view->widget_center_valid_ = false; | 198 host_view->widget_center_valid_ = false; |
| 199 host_view->mouse_has_been_warped_to_new_center_ = false; | 199 host_view->mouse_has_been_warped_to_new_center_ = false; |
| 200 return FALSE; | 200 return FALSE; |
| 201 } | 201 } |
| 202 | 202 |
| 203 static gboolean OnKeyPressReleaseEvent(GtkWidget* widget, | 203 static gboolean OnKeyPressReleaseEvent(GtkWidget* widget, |
| 204 GdkEventKey* event, | 204 GdkEventKey* event, |
| 205 RenderWidgetHostViewGtk* host_view) { | 205 RenderWidgetHostViewGtk* host_view) { |
| 206 // ESC exits mouse lock. | |
| 207 if (host_view->mouse_locked_ && event->keyval == GDK_Escape) { | |
| 208 host_view->UnlockMouse(); | |
| 209 return TRUE; | |
| 210 } | |
| 211 // Force popups or fullscreen windows to close on Escape so they won't keep | 206 // Force popups or fullscreen windows to close on Escape so they won't keep |
| 212 // the keyboard grabbed or be stuck onscreen if the renderer is hanging. | 207 // the keyboard grabbed or be stuck onscreen if the renderer is hanging. |
| 213 bool should_close_on_escape = | 208 bool should_close_on_escape = |
| 214 (host_view->IsPopup() && host_view->NeedsInputGrab()) || | 209 (host_view->IsPopup() && host_view->NeedsInputGrab()) || |
| 215 host_view->is_fullscreen_; | 210 host_view->is_fullscreen_; |
| 216 if (should_close_on_escape && GDK_Escape == event->keyval) { | 211 if (should_close_on_escape && GDK_Escape == event->keyval) { |
| 217 host_view->host_->Shutdown(); | 212 host_view->host_->Shutdown(); |
| 218 } else { | 213 } else { |
| 219 // Send key event to input method. | 214 // Send key event to input method. |
| 220 host_view->im_context_->ProcessKeyEvent(event); | 215 host_view->im_context_->ProcessKeyEvent(event); |
| (...skipping 1176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1397 } | 1392 } |
| 1398 } | 1393 } |
| 1399 | 1394 |
| 1400 // static | 1395 // static |
| 1401 void RenderWidgetHostView::GetDefaultScreenInfo( | 1396 void RenderWidgetHostView::GetDefaultScreenInfo( |
| 1402 WebKit::WebScreenInfo* results) { | 1397 WebKit::WebScreenInfo* results) { |
| 1403 GdkWindow* gdk_window = | 1398 GdkWindow* gdk_window = |
| 1404 gdk_display_get_default_group(gdk_display_get_default()); | 1399 gdk_display_get_default_group(gdk_display_get_default()); |
| 1405 content::GetScreenInfoFromNativeWindow(gdk_window, results); | 1400 content::GetScreenInfoFromNativeWindow(gdk_window, results); |
| 1406 } | 1401 } |
| OLD | NEW |