From ac21f4569fd047996576a60b09e1a8739b94c2cd Mon Sep 17 00:00:00 2001 From: Aly Raffauf Date: Wed, 10 Jun 2026 10:22:17 -0400 Subject: [PATCH] Add Chrome Extension to Advanced Settings Pane --- src/app.go | 1 + src/settings_advanced.go | 25 ++++++++++++++++++------- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/app.go b/src/app.go index 18d9156..5479603 100644 --- a/src/app.go +++ b/src/app.go @@ -18,6 +18,7 @@ const ( WebsiteURL = "https://switchyard.aly.codes/" IssueURL = "https://github.com/alyraffauf/switchyard/issues" DonateURL = "https://ko-fi.com/alyraffauf" + ChromeExtensionURL = "https://chromewebstore.google.com/detail/switchyard/ncehhpikkabfdcceimdhjjjodogflokc" FirefoxExtensionURL = "https://addons.mozilla.org/firefox/addon/switchyard/" ) diff --git a/src/settings_advanced.go b/src/settings_advanced.go index a60c0f1..e3ce6f6 100644 --- a/src/settings_advanced.go +++ b/src/settings_advanced.go @@ -109,16 +109,27 @@ func createAdvancedPage(win *adw.Window, cfg *Config) gtk.Widgetter { extensionGroup := adw.NewPreferencesGroup() extensionGroup.SetTitle("Browser Extension") - extensionRow := adw.NewActionRow() - extensionRow.SetTitle("Firefox Extension") - extensionRow.SetSubtitle("Open links in Switchyard directly from Firefox") - extensionRow.SetActivatable(true) - extensionRow.AddSuffix(gtk.NewImageFromIconName("adw-external-link-symbolic")) - extensionRow.ConnectActivated(func() { + firefoxRow := adw.NewActionRow() + firefoxRow.SetTitle("Firefox Extension") + firefoxRow.SetSubtitle("Open links in Switchyard directly from Firefox") + firefoxRow.SetActivatable(true) + firefoxRow.AddSuffix(gtk.NewImageFromIconName("adw-external-link-symbolic")) + firefoxRow.ConnectActivated(func() { launcher := gtk.NewURILauncher(FirefoxExtensionURL) launcher.Launch(context.Background(), &win.Window, nil) }) - extensionGroup.Add(extensionRow) + extensionGroup.Add(firefoxRow) + + chromeRow := adw.NewActionRow() + chromeRow.SetTitle("Chrome Extension") + chromeRow.SetSubtitle("Open links in Switchyard directly from Chrome") + chromeRow.SetActivatable(true) + chromeRow.AddSuffix(gtk.NewImageFromIconName("adw-external-link-symbolic")) + chromeRow.ConnectActivated(func() { + launcher := gtk.NewURILauncher(ChromeExtensionURL) + launcher.Launch(context.Background(), &win.Window, nil) + }) + extensionGroup.Add(chromeRow) content.Append(extensionGroup) -- 2.51.2