diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-04-04 18:30:08 +1100 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-04-04 18:30:08 +1100 |
| commit | aed36b160f3049e393f9a24b80ba6c8a5e9c558f (patch) | |
| tree | e9b6c9dbc81a49fc4a70abfd874022f2f161bf0b /src | |
| parent | bar: fix corners showing when not embedded style (diff) | |
| download | caelestia-shell-aed36b160f3049e393f9a24b80ba6c8a5e9c558f.tar.gz caelestia-shell-aed36b160f3049e393f9a24b80ba6c8a5e9c558f.tar.bz2 caelestia-shell-aed36b160f3049e393f9a24b80ba6c8a5e9c558f.zip | |
feat: uwsm app -> app2unit
Also xdg-open -> app2unit
Diffstat (limited to 'src')
| -rw-r--r-- | src/modules/bar.tsx | 17 | ||||
| -rw-r--r-- | src/modules/launcher/actions.tsx | 2 | ||||
| -rw-r--r-- | src/modules/launcher/modes.tsx | 2 | ||||
| -rw-r--r-- | src/modules/sidebar/modules/updates.tsx | 8 | ||||
| -rw-r--r-- | src/services/weather.ts | 2 | ||||
| -rw-r--r-- | src/utils/system.ts | 4 |
6 files changed, 19 insertions, 16 deletions
diff --git a/src/modules/bar.tsx b/src/modules/bar.tsx index 731e3e7..998a442 100644 --- a/src/modules/bar.tsx +++ b/src/modules/bar.tsx @@ -7,7 +7,7 @@ import { bindCurrentTime, osIcon } from "@/utils/system"; import type { AstalWidget } from "@/utils/types"; import { setupCustomTooltip } from "@/utils/widgets"; import ScreenCorner from "@/widgets/screencorner"; -import { execAsync, Variable } from "astal"; +import { execAsync, GLib, Variable } from "astal"; import { bind, kebabify } from "astal/binding"; import { App, Astal, Gtk, Widget } from "astal/gtk3"; import { bar as config } from "config"; @@ -294,13 +294,16 @@ const Network = ({ monitor }: { monitor: Monitor }) => ( const network = AstalNetwork.get_default(); if (event.button === Astal.MouseButton.PRIMARY) switchPane(monitor, "connectivity"); else if (event.button === Astal.MouseButton.SECONDARY) network.wifi.enabled = !network.wifi.enabled; - else if (event.button === Astal.MouseButton.MIDDLE) - execAsync("uwsm app -- gnome-control-center wifi").catch(() => { + else if (event.button === Astal.MouseButton.MIDDLE) { + if (GLib.find_program_in_path("gnome-control-center")) + execAsync("app2unit -- gnome-control-center wifi").catch(console.error); + else { network.wifi.scan(); execAsync( - "uwsm app -- foot -T nmtui -- fish -c 'sleep .1; set -e COLORTERM; TERM=xterm-old nmtui connect'" + "app2unit -- foot -T nmtui -- fish -c 'sleep .1; set -e COLORTERM; TERM=xterm-old nmtui connect'" ).catch(() => {}); // Ignore errors - }); + } + } }} setup={self => { const network = AstalNetwork.get_default(); @@ -399,7 +402,7 @@ const BluetoothDevice = ({ monitor, device }: { monitor: Monitor; device: AstalB else if (event.button === Astal.MouseButton.SECONDARY) device.disconnect_device((_, res) => device.disconnect_device_finish(res)); else if (event.button === Astal.MouseButton.MIDDLE) - execAsync("uwsm app -- blueman-manager").catch(console.error); + execAsync("app2unit -- blueman-manager").catch(console.error); }} setup={self => setupCustomTooltip(self, bind(device, "alias"))} > @@ -418,7 +421,7 @@ const Bluetooth = ({ monitor }: { monitor: Monitor }) => ( if (event.button === Astal.MouseButton.PRIMARY) switchPane(monitor, "connectivity"); else if (event.button === Astal.MouseButton.SECONDARY) AstalBluetooth.get_default().toggle(); else if (event.button === Astal.MouseButton.MIDDLE) - execAsync("uwsm app -- blueman-manager").catch(console.error); + execAsync("app2unit -- blueman-manager").catch(console.error); }} setup={self => { const bluetooth = AstalBluetooth.get_default(); diff --git a/src/modules/launcher/actions.tsx b/src/modules/launcher/actions.tsx index bdc99db..64f475a 100644 --- a/src/modules/launcher/actions.tsx +++ b/src/modules/launcher/actions.tsx @@ -149,7 +149,7 @@ const actions = (mode: Variable<Mode>, entry: Widget.Entry): ActionMap => ({ View: () => { const client = AstalHyprland.get_default().clients.find(c => c.class === "Todoist"); if (client) client.focus(); - else execAsync("uwsm app -- todoist").catch(console.error); + else execAsync("app2unit -- todoist").catch(console.error); }, }, }); diff --git a/src/modules/launcher/modes.tsx b/src/modules/launcher/modes.tsx index fd9569b..e278779 100644 --- a/src/modules/launcher/modes.tsx +++ b/src/modules/launcher/modes.tsx @@ -41,7 +41,7 @@ const FileResult = ({ path }: { path: string }) => ( execAsync([ "bash", "-c", - `dbus-send --session --dest=org.freedesktop.FileManager1 --type=method_call /org/freedesktop/FileManager1 org.freedesktop.FileManager1.ShowItems array:string:"file://${path}" string:"" || xdg-open "${path}"`, + `dbus-send --session --dest=org.freedesktop.FileManager1 --type=method_call /org/freedesktop/FileManager1 org.freedesktop.FileManager1.ShowItems array:string:'file://${path}' string:'' || app2unit -O '${path}'`, ]).catch(console.error); close(); }} diff --git a/src/modules/sidebar/modules/updates.tsx b/src/modules/sidebar/modules/updates.tsx index 3b159c6..e58d848 100644 --- a/src/modules/sidebar/modules/updates.tsx +++ b/src/modules/sidebar/modules/updates.tsx @@ -9,11 +9,11 @@ const constructItem = (label: string, exec: string, quiet = true) => const Update = (update: IUpdate) => { const menu = new Gtk.Menu(); - menu.append(constructItem("Open info in browser", `xdg-open '${update.url}'`, false)); - menu.append(constructItem("Open info in terminal", `uwsm app -- foot -H -- pacman -Qi ${update.name}`)); + menu.append(constructItem("Open info in browser", `app2unit -O '${update.url}'`, false)); + menu.append(constructItem("Open info in terminal", `app2unit -- foot -H -- pacman -Qi ${update.name}`)); menu.append(new Gtk.SeparatorMenuItem({ visible: true })); - menu.append(constructItem("Reinstall", `uwsm app -- foot -H -- yay -S ${update.name}`)); - menu.append(constructItem("Remove with dependencies", `uwsm app -- foot -H -- yay -Rns ${update.name}`)); + menu.append(constructItem("Reinstall", `app2unit -- foot -H -- yay -S ${update.name}`)); + menu.append(constructItem("Remove with dependencies", `app2unit -- foot -H -- yay -Rns ${update.name}`)); return ( <button diff --git a/src/services/weather.ts b/src/services/weather.ts index 1d9a2dd..3d3c5f0 100644 --- a/src/services/weather.ts +++ b/src/services/weather.ts @@ -370,7 +370,7 @@ export default class Weather extends GObject.Object { icon: "dialog-warning-symbolic", urgency: "critical", actions: { - "Get API key": () => execAsync(["xdg-open", "https://www.weatherapi.com"]).catch(print), + "Get API key": () => execAsync(`app2unit -O 'https://www.weatherapi.com'`).catch(print), }, }); } diff --git a/src/utils/system.ts b/src/utils/system.ts index 8ccb5d1..360a261 100644 --- a/src/utils/system.ts +++ b/src/utils/system.ts @@ -16,11 +16,11 @@ const execToCmd = (app: AstalApps.Application) => { export const launch = (app: AstalApps.Application) => { let now = Date.now(); - execAsync(["uwsm", "app", "--", app.entry]).catch(() => { + execAsync(["app2unit", "--", app.entry]).catch(() => { // Try manual exec if launch fails (exits with error within 1 second) if (Date.now() - now < 1000) { now = Date.now(); - execAsync(["uwsm", "app", "--", execToCmd(app)]).catch(() => { + execAsync(["app2unit", "--", execToCmd(app)]).catch(() => { // Fallback to regular launch if (Date.now() - now < 1000) { app.frequency--; // Decrement frequency cause launch also increments it |