diff --git a/glade/preferences_dialog.glade b/glade/preferences_dialog.glade
index c107f9f8f..285848715 100644
--- a/glade/preferences_dialog.glade
+++ b/glade/preferences_dialog.glade
@@ -2297,6 +2297,7 @@ HTTP W/ Auth
True
True
radio_open_folder_stock
+
@@ -2318,11 +2319,12 @@ HTTP W/ Auth
Nautilus
Thunar
-
+
True
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
False
+
@@ -2343,6 +2345,7 @@ Thunar
True
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+
diff --git a/src/dialogs.py b/src/dialogs.py
index 0d5212d7b..81f7dd277 100644
--- a/src/dialogs.py
+++ b/src/dialogs.py
@@ -47,7 +47,10 @@ class PreferencesDlg:
self.dialog.set_icon_from_file(common.get_pixmap("deluge32.png"))
self.glade.signal_autoconnect({
'toggle_ui': self.toggle_ui,
- 'on_btn_testport_clicked': self.TestPort
+ 'on_btn_testport_clicked': self.TestPort,
+ 'on_combo_file_manager_entry_focus_in_event': self.on_combo_file_manager_entry_focus_in_event,
+ 'on_txt_open_folder_location_focus_in_event': self.on_txt_open_folder_location_focus_in_event,
+ 'on_radio_open_folder_custom_focus_in_event': self.on_radio_open_folder_custom_focus_in_event
})
self.preferences = preferences
@@ -287,6 +290,15 @@ class PreferencesDlg:
self.glade.get_widget('spin_port_min').set_sensitive(True)
self.glade.get_widget('spin_port_max').set_sensitive(True)
+ def on_combo_file_manager_entry_focus_in_event(self, widget, event):
+ self.glade.get_widget("radio_open_folder_stock").set_active(True)
+
+ def on_txt_open_folder_location_focus_in_event(self, widget, event):
+ self.glade.get_widget("radio_open_folder_custom").set_active(True)
+
+ def on_radio_open_folder_custom_focus_in_event(self, widget, event):
+ self.glade.get_widget("txt_open_folder_location").grab_focus()
+
class MergeDlg:
def __init__(self):
self.glade = gtk.glade.XML(common.get_glade_file("merge_dialog.glade"),