@@ -83,7 +83,7 @@ def __init__(self, parent):
8383 def initsetupDialog_closed (self , w , response ):
8484 if response == 'next' or response == 'ok-syncthing' : # open the Gtk.FileDialog in the GNOME Online accounts case
8585 if self .get_button_type == 'set-button' :
86- self .parent . select_pb_folder ( w )
86+ self ._select_pb_folder ( )
8787 else :
8888 self .cloud_dialog .select_folder_to_sync (w )
8989 self .almost_done ()
@@ -102,6 +102,21 @@ def initsetupDialog_closed(self, w, response):
102102 settings ["periodic-import" ] = "Daily2"
103103 self .parent ._open_CloudDialog ()
104104
105+ # Select folder for periodic saving
106+ def _select_pb_folder (self ):
107+ def save_selected (source , res , data ):
108+ try :
109+ folder = source .select_folder_finish (res )
110+ except :
111+ return
112+ self .folder_pb = folder .get_path ()
113+ settings ["periodic-saving-folder" ] = self .folder_pb
114+
115+ self .pb_chooser = Gtk .FileDialog .new ()
116+ self .pb_chooser .set_modal (True )
117+ self .pb_chooser .set_title (_ ("Choose custom folder for periodic saving" ))
118+ self .pb_chooser .select_folder (self .parent , None , save_selected , None )
119+
105120 # Set the Rclone setup command
106121 def _get_service (self , comborow , GParamObject ):
107122 self .set_body ("" )
@@ -197,11 +212,11 @@ def __init__(self, parent):
197212 ## translate the periodic-saving key to the user language
198213 pb = next ((key for key , value in {_ ("Never" ): "Never" , _ ("Daily" ): "Daily" , _ ("Weekly" ): "Weekly" , _ ("Monthly" ): "Monthly" }.items () if settings ["periodic-saving" ] == value ), None )
199214 self .ps_row = Adw .ActionRow .new ()
200- self .ps_row .set_title (f'{ _ ("Periodic saving" )} ( { _ ( "Interval" ) } ) ' )
215+ self .ps_row .set_title (f'{ _ ("Periodic saving" )} ' )
201216 self .ps_row .set_use_markup (True )
202217 self .ps_row .add_suffix (self .ps_button )
203- self .ps_row .set_subtitle (f'<span color="red"> { _ ("Never" )} </span> ' if settings ["periodic-saving" ] == "Never"
204- else f'<span color="green"> { pb } </span> ' )
218+ self .ps_row .set_subtitle (f'❌ { _ ("Never" )} ' if settings ["periodic-saving" ] == "Never"
219+ else f'✅ { pb } ' )
205220 self .ps_button .add_css_class ('suggested-action' ) if settings ["periodic-saving" ] == "Never" else None
206221
207222 # Create this file to set expanding the "Periodic saving" row in the More options dialog
@@ -227,7 +242,7 @@ def check_filesystem_fnc(self):
227242
228243 # Check if periodic saving is set to "Never"
229244 if settings ["periodic-saving" ] == "Never" :
230- folder = f' { _ ( "Interval" ) } : { _ ( "Never" ) } '
245+ folder = ""
231246 # Check if the filesystem is not FUSE
232247 elif check_fs_result == "You didn't select the cloud drive folder!" :
233248 err = _ ("You didn't select the cloud drive folder!" )
@@ -246,7 +261,6 @@ def update_gui(self):
246261 self .file_row = Adw .ActionRow ()
247262 self .file_row .set_title (_ ("Periodic saving file" ))
248263 self .file_row .set_subtitle (folder )
249- self .file_row .add_suffix (Gtk .Image .new_from_icon_name ("network-wired-symbolic" )) if "red" not in folder else None
250264 self .file_row .set_subtitle_lines (8 )
251265 self .file_row .set_use_markup (True )
252266 self .file_row .set_subtitle_selectable (True )
0 commit comments