| OLD | NEW | 
|     1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |     1 // Copyright (c) 2012 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 "chrome/browser/ui/gtk/location_bar_view_gtk.h" |     5 #include "chrome/browser/ui/gtk/location_bar_view_gtk.h" | 
|     6  |     6  | 
|     7 #include <algorithm> |     7 #include <algorithm> | 
|     8 #include <string> |     8 #include <string> | 
|     9 #include <vector> |     9 #include <vector> | 
|    10  |    10  | 
| (...skipping 1691 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1702   return true; |  1702   return true; | 
|  1703 } |  1703 } | 
|  1704  |  1704  | 
|  1705 void LocationBarViewGtk::PageActionViewGtk::ConnectPageActionAccelerator() { |  1705 void LocationBarViewGtk::PageActionViewGtk::ConnectPageActionAccelerator() { | 
|  1706   const ExtensionSet* extensions = owner_->browser()->profile()-> |  1706   const ExtensionSet* extensions = owner_->browser()->profile()-> | 
|  1707       GetExtensionService()->extensions(); |  1707       GetExtensionService()->extensions(); | 
|  1708   const Extension* extension = |  1708   const Extension* extension = | 
|  1709       extensions->GetByID(page_action_->extension_id()); |  1709       extensions->GetByID(page_action_->extension_id()); | 
|  1710   window_ = owner_->browser()->window()->GetNativeHandle(); |  1710   window_ = owner_->browser()->window()->GetNativeHandle(); | 
|  1711  |  1711  | 
|  1712   // Iterate through all the keybindings and see if one is assigned to the |  1712   const Extension::ExtensionKeybinding* command = | 
|  1713   // pageAction. |  1713       extension->page_action_command(); | 
|  1714   const std::vector<Extension::ExtensionKeybinding>& commands = |  1714   if (command) { | 
|  1715       extension->keybindings(); |  | 
|  1716   for (size_t i = 0; i < commands.size(); ++i) { |  | 
|  1717     if (commands[i].command_name() != |  | 
|  1718         extension_manifest_values::kPageActionKeybindingEvent) |  | 
|  1719       continue; |  | 
|  1720  |  | 
|  1721     // Found the browser action shortcut command, register it. |  1715     // Found the browser action shortcut command, register it. | 
|  1722     keybinding_.reset(new ui::AcceleratorGtk( |  1716     keybinding_.reset(new ui::AcceleratorGtk( | 
|  1723         commands[i].accelerator().key_code(), |  1717         command->accelerator().key_code(), | 
|  1724         commands[i].accelerator().IsShiftDown(), |  1718         command->accelerator().IsShiftDown(), | 
|  1725         commands[i].accelerator().IsCtrlDown(), |  1719         command->accelerator().IsCtrlDown(), | 
|  1726         commands[i].accelerator().IsAltDown())); |  1720         command->accelerator().IsAltDown())); | 
|  1727  |  1721  | 
|  1728     accel_group_ = gtk_accel_group_new(); |  1722     accel_group_ = gtk_accel_group_new(); | 
|  1729     gtk_window_add_accel_group(window_, accel_group_); |  1723     gtk_window_add_accel_group(window_, accel_group_); | 
|  1730  |  1724  | 
|  1731     gtk_accel_group_connect( |  1725     gtk_accel_group_connect( | 
|  1732         accel_group_, |  1726         accel_group_, | 
|  1733         keybinding_->GetGdkKeyCode(), |  1727         keybinding_->GetGdkKeyCode(), | 
|  1734         keybinding_->gdk_modifier_type(), |  1728         keybinding_->gdk_modifier_type(), | 
|  1735         GtkAccelFlags(0), |  1729         GtkAccelFlags(0), | 
|  1736         g_cclosure_new(G_CALLBACK(OnGtkAccelerator), this, NULL)); |  1730         g_cclosure_new(G_CALLBACK(OnGtkAccelerator), this, NULL)); | 
|  1737  |  1731  | 
|  1738     // Since we've added an accelerator, we'll need to unregister it before |  1732     // Since we've added an accelerator, we'll need to unregister it before | 
|  1739     // the window is closed, so we listen for the window being closed. |  1733     // the window is closed, so we listen for the window being closed. | 
|  1740     registrar_.Add(this, |  1734     registrar_.Add(this, | 
|  1741                    chrome::NOTIFICATION_WINDOW_CLOSED, |  1735                    chrome::NOTIFICATION_WINDOW_CLOSED, | 
|  1742                    content::Source<GtkWindow>(window_)); |  1736                    content::Source<GtkWindow>(window_)); | 
|  1743     break; |  | 
|  1744   } |  1737   } | 
|  1745 } |  1738 } | 
|  1746  |  1739  | 
|  1747 void LocationBarViewGtk::PageActionViewGtk::DisconnectPageActionAccelerator() { |  1740 void LocationBarViewGtk::PageActionViewGtk::DisconnectPageActionAccelerator() { | 
|  1748   if (accel_group_) { |  1741   if (accel_group_) { | 
|  1749     gtk_accel_group_disconnect_key( |  1742     gtk_accel_group_disconnect_key( | 
|  1750         accel_group_, |  1743         accel_group_, | 
|  1751         keybinding_.get()->GetGdkKeyCode(), |  1744         keybinding_.get()->GetGdkKeyCode(), | 
|  1752         static_cast<GdkModifierType>(keybinding_.get()->modifiers())); |  1745         static_cast<GdkModifierType>(keybinding_.get()->modifiers())); | 
|  1753     gtk_window_remove_accel_group(window_, accel_group_); |  1746     gtk_window_remove_accel_group(window_, accel_group_); | 
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1819     GdkModifierType modifier, |  1812     GdkModifierType modifier, | 
|  1820     void* user_data) { |  1813     void* user_data) { | 
|  1821   PageActionViewGtk* view = static_cast<PageActionViewGtk*>(user_data); |  1814   PageActionViewGtk* view = static_cast<PageActionViewGtk*>(user_data); | 
|  1822   if (!gtk_widget_get_visible(view->widget())) |  1815   if (!gtk_widget_get_visible(view->widget())) | 
|  1823     return FALSE; |  1816     return FALSE; | 
|  1824  |  1817  | 
|  1825   GdkEventButton event = {}; |  1818   GdkEventButton event = {}; | 
|  1826   event.button = 1; |  1819   event.button = 1; | 
|  1827   return view->OnButtonPressed(view->widget(), &event); |  1820   return view->OnButtonPressed(view->widget(), &event); | 
|  1828 } |  1821 } | 
| OLD | NEW |