@@ -58,10 +58,11 @@ def wrapper(*args):
5858FIREFOX_SNAP_PROFILES_DIR = os .path .expanduser ("~/snap/firefox/common/.mozilla/firefox" )
5959LIBREWOLF_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/io.gitlab.librewolf-community/data/ice/librewolf" )
6060WATERFOX_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/net.waterfox.waterfox/data" )
61+ FLOORP_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/one.ablaze.floorp/data" )
6162EPIPHANY_PROFILES_DIR = os .path .join (ICE_DIR , "epiphany" )
6263FALKON_PROFILES_DIR = os .path .join (ICE_DIR , "falkon" )
6364ICONS_DIR = os .path .join (ICE_DIR , "icons" )
64- BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK , BROWSER_TYPE_FIREFOX_SNAP , BROWSER_TYPE_LIBREWOLF_FLATPAK , BROWSER_TYPE_WATERFOX_FLATPAK , BROWSER_TYPE_CHROMIUM , BROWSER_TYPE_EPIPHANY , BROWSER_TYPE_FALKON = range (8 )
65+ BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK , BROWSER_TYPE_FIREFOX_SNAP , BROWSER_TYPE_LIBREWOLF_FLATPAK , BROWSER_TYPE_WATERFOX_FLATPAK , BROWSER_TYPE_FLOORP_FLATPAK , BROWSER_TYPE_CHROMIUM , BROWSER_TYPE_EPIPHANY , BROWSER_TYPE_FALKON = range (9 )
6566
6667class Browser :
6768
@@ -227,7 +228,10 @@ def get_supported_browsers():
227228 Browser (BROWSER_TYPE_CHROMIUM , "Naver Whale" , "naver-whale-stable" , "/usr/bin/naver-whale-stable" ),
228229 Browser (BROWSER_TYPE_CHROMIUM , "Yandex (Flatpak)" , "/var/lib/flatpak/exports/bin/ru.yandex.Browser" , "/var/lib/flatpak/exports/bin/ru.yandex.Browser" ),
229230 Browser (BROWSER_TYPE_CHROMIUM , "Yandex (Flatpak)" , ".local/share/flatpak/exports/bin/ru.yandex.Browser" , ".local/share/flatpak/exports/bin/ru.yandex.Browser" ),
230- Browser (BROWSER_TYPE_CHROMIUM , "Thorium" , "thorium-browser" , "/usr/bin/thorium-browser" )
231+ Browser (BROWSER_TYPE_CHROMIUM , "Thorium" , "thorium-browser" , "/usr/bin/thorium-browser" ),
232+ Browser (BROWSER_TYPE_FIREFOX , "Floorp" , "floorp" , "/usr/bin/floorp" ),
233+ Browser (BROWSER_TYPE_FLOORP_FLATPAK , "Floorp (Flatpak)" , "/var/lib/flatpak/exports/bin/one.ablaze.floorp" , "/var/lib/flatpak/exports/bin/one.ablaze.floorp" ),
234+ Browser (BROWSER_TYPE_FLOORP_FLATPAK , "Floorp (Flatpak)" , ".local/share/flatpak/exports/bin/one.ablaze.floorp" , ".local/share/flatpak/exports/bin/one.ablaze.floorp" )
231235 ]
232236
233237 def delete_webbapp (self , webapp ):
@@ -337,6 +341,27 @@ def get_exec_string(self, browser, codename, custom_parameters, icon, isolate_pr
337341 " --no-remote" )
338342 if privatewindow :
339343 exec_string += " --private-window"
344+ if custom_parameters :
345+ exec_string += " {}" .format (custom_parameters )
346+ exec_string += " \" " + url + "\" " + "'"
347+ # Create a Firefox profile
348+ shutil .copytree ('/usr/share/webapp-manager/firefox/profile' , firefox_profile_path , dirs_exist_ok = True )
349+ if navbar :
350+ shutil .copy ('/usr/share/webapp-manager/firefox/userChrome-with-navbar.css' ,
351+ os .path .join (firefox_profile_path , "chrome" , "userChrome.css" ))
352+ elif browser .browser_type == BROWSER_TYPE_FLOORP_FLATPAK :
353+ # Floorp flatpak
354+ firefox_profiles_dir = FLOORP_FLATPAK_PROFILES_DIR
355+ firefox_profile_path = os .path .join (firefox_profiles_dir , codename )
356+ exec_string = ("sh -c 'XAPP_FORCE_GTKWINDOW_ICON=\" " + icon + "\" " + browser .exec_path +
357+ " --class WebApp-" + codename +
358+ " --name WebApp-" + codename +
359+ " --profile " + firefox_profile_path +
360+ " --no-remote" )
361+ if privatewindow :
362+ exec_string += " --private-window"
363+ if custom_parameters :
364+ exec_string += " {}" .format (custom_parameters )
340365 exec_string += " \" " + url + "\" " + "'"
341366 # Create a Firefox profile
342367 shutil .copytree ('/usr/share/webapp-manager/firefox/profile' , firefox_profile_path , dirs_exist_ok = True )
0 commit comments