summaryrefslogtreecommitdiffstats
path: root/src/widgets/gradient-selector.cpp
diff options
context:
space:
mode:
authorsu_v <suv-sf@users.sourceforge.net>2012-10-22 16:33:33 +0000
committer~suv <suv-sf@users.sourceforge.net>2012-10-22 16:33:33 +0000
commitf471e26bd16f8024c6756d7d018b5687ae90d821 (patch)
tree1208c12abe1d1f3d27301e5f7affaca5e5380b51 /src/widgets/gradient-selector.cpp
parentmerge from trunk (r11810) (diff)
parentupdate cmake files & make function static. (diff)
downloadinkscape-f471e26bd16f8024c6756d7d018b5687ae90d821.tar.gz
inkscape-f471e26bd16f8024c6756d7d018b5687ae90d821.zip
merge from trunk (r11821)
(bzr r11668.1.33)
Diffstat (limited to 'src/widgets/gradient-selector.cpp')
-rw-r--r--src/widgets/gradient-selector.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/widgets/gradient-selector.cpp b/src/widgets/gradient-selector.cpp
index dffda69e3..65608585b 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -336,6 +336,14 @@ void SPGradientSelector::onTreeSelection()
return;
}
+ if (!treeview->has_focus()) {
+ /* Workaround for GTK bug on Windows/OS X
+ * When the treeview initially doesn't have focus and is clicked
+ * sometimes get_selection()->signal_changed() has the wrong selection
+ */
+ treeview->grab_focus();
+ }
+
const Glib::RefPtr<Gtk::TreeSelection> sel = treeview->get_selection();
if (!sel) {
return;