172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// Use of this source code is governed by a BSD-style license that can be 3731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// found in the LICENSE file. 4731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "chrome/browser/ui/gtk/info_bubble_accelerators_gtk.h" 6731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 7731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick#include <gdk/gdkkeysyms.h> 8731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick#include <glib.h> 9731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 10731df977c0511bca2206b5f333555b1205ff1f43Iain Merricknamespace { 11731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// Listing of the accelerators that are either handled or forwarded by 12731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// info bubbles. Any accelerators that are not explicitly listed here 13731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// are ignored and silently dropped. This table is expected to change 14731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// after discussion over which accelerators should be addressed in 15731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// info bubbles. For a complete listing of accelerators that are used 16731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// in chrome consult accelerators_gtk.cc 17731df977c0511bca2206b5f333555b1205ff1f43Iain Merrickstruct InfoBubbleAcceleratorGtk InfoBubbleAcceleratorGtkTable[] = { 18731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Tab/window controls. 19731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick { GDK_w, GDK_CONTROL_MASK}, 20731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 21731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Navigation / toolbar buttons. 22731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick { GDK_Escape, GdkModifierType(0)} 23731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick}; 24731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 25731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick} // namespace 26731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 27731df977c0511bca2206b5f333555b1205ff1f43Iain MerrickInfoBubbleAcceleratorGtkList InfoBubbleAcceleratorsGtk::GetList() { 28731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick InfoBubbleAcceleratorGtkList accelerators; 29731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick for (size_t i = 0; i < arraysize(InfoBubbleAcceleratorGtkTable); ++i) { 30731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick accelerators.push_back(InfoBubbleAcceleratorGtkTable[i]); 31731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } 32731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 33731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick return accelerators; 34731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick} 35