diff --git a/src/MainWindow.vala b/src/MainWindow.vala index 10e02af36..76a96c3f8 100644 --- a/src/MainWindow.vala +++ b/src/MainWindow.vala @@ -76,6 +76,7 @@ namespace Scratch { public const string ACTION_FIND_GLOBAL = "action-find-global"; public const string ACTION_OPEN = "action-open"; public const string ACTION_OPEN_FOLDER = "action-open-folder"; + public const string ACTION_OPEN_FOLDER_ACCEL = "o"; public const string ACTION_COLLAPSE_ALL_FOLDERS = "action-collapse-all-folders"; public const string ACTION_ORDER_FOLDERS = "action-order-folders"; public const string ACTION_GO_TO = "action-go-to"; @@ -207,8 +208,8 @@ namespace Scratch { action_accelerators.set (ACTION_FIND_PREVIOUS, "g"); action_accelerators.set (ACTION_FIND_GLOBAL + "::", "f"); action_accelerators.set (ACTION_OPEN, "o"); - action_accelerators.set (ACTION_OPEN_FOLDER, "o"); - action_accelerators.set (ACTION_REVERT, "o"); + action_accelerators.set (ACTION_OPEN_FOLDER + "::", ACTION_OPEN_FOLDER_ACCEL); + action_accelerators.set (ACTION_REVERT, "r"); action_accelerators.set (ACTION_SAVE, "s"); action_accelerators.set (ACTION_SAVE_AS, "s"); action_accelerators.set (ACTION_GO_TO, "i"); diff --git a/src/Widgets/ChooseProjectButton.vala b/src/Widgets/ChooseProjectButton.vala index 3b035c5b2..b7b8f00fa 100644 --- a/src/Widgets/ChooseProjectButton.vala +++ b/src/Widgets/ChooseProjectButton.vala @@ -75,6 +75,7 @@ public class Code.ChooseProjectButton : Gtk.MenuButton { action_name = Scratch.MainWindow.ACTION_PREFIX + Scratch.MainWindow.ACTION_OPEN_FOLDER, action_target = new Variant.string (""), icon_name = "folder-open-symbolic", + accel_string = Scratch.MainWindow.ACTION_OPEN_FOLDER_ACCEL }; var clone_button = new PopoverMenuItem (_("Clone Git Repository…")) { diff --git a/src/Widgets/PopoverMenuItem.vala b/src/Widgets/PopoverMenuItem.vala index 72461986f..65d43e7e2 100644 --- a/src/Widgets/PopoverMenuItem.vala +++ b/src/Widgets/PopoverMenuItem.vala @@ -12,7 +12,18 @@ public class Code.PopoverMenuItem : Gtk.Button { /** * The icon name for the button */ - public string icon_name { get; set; } + private Gtk.Image gtk_image; + public string icon_name { + set { + gtk_image.icon_name = value; + } + } + private Granite.AccelLabel accel_label; + public string accel_string { + set { + accel_label.accel_string = value; + } + } public PopoverMenuItem (string text) { Object (text: text); @@ -23,13 +34,12 @@ public class Code.PopoverMenuItem : Gtk.Button { } construct { - var image = new Gtk.Image (); - - var label = new Granite.AccelLabel (text); + gtk_image = new Gtk.Image (); + accel_label = new Granite.AccelLabel (text); var box = new Gtk.Box (HORIZONTAL, 6); - box.add (image); - box.add (label); + box.add (gtk_image); + box.add (accel_label); child = box; @@ -41,8 +51,5 @@ public class Code.PopoverMenuItem : Gtk.Button { popover.popdown (); } }); - - bind_property ("action-name", label, "action-name"); - bind_property ("icon-name", image, "icon-name"); } }