From 02fd2e97f2c8a53bf2344e6fa8b14769cb15ee38 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Thu, 16 Jan 2025 16:35:37 +1100 Subject: refactor: move ts to src Also move popupwindow to own file --- src/utils/mpris.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/utils/mpris.ts (limited to 'src/utils/mpris.ts') diff --git a/src/utils/mpris.ts b/src/utils/mpris.ts new file mode 100644 index 0000000..e0cc111 --- /dev/null +++ b/src/utils/mpris.ts @@ -0,0 +1,16 @@ +import { GLib } from "astal"; +import AstalMpris from "gi://AstalMpris"; + +const hasPlasmaIntegration = GLib.find_program_in_path("plasma-browser-integration-host") !== null; + +export const isRealPlayer = (player?: AstalMpris.Player) => + player !== undefined && + // Player closed + player.identity !== null && + // Remove unecessary native buses from browsers if there's plasma integration + !(hasPlasmaIntegration && player.busName.startsWith("org.mpris.MediaPlayer2.firefox")) && + !(hasPlasmaIntegration && player.busName.startsWith("org.mpris.MediaPlayer2.chromium")) && + // playerctld just copies other buses and we don't need duplicates + !player.busName.startsWith("org.mpris.MediaPlayer2.playerctld") && + // Non-instance mpd bus + !(player.busName.endsWith(".mpd") && !player.busName.endsWith("MediaPlayer2.mpd")); -- cgit v1.2.3-freya