Update Media widget
Now Media widget will search symbolic icons! It looks great!
This commit is contained in:
+9
-14
@@ -1,16 +1,12 @@
|
|||||||
import { bind } from "astal";
|
import { bind } from "astal";
|
||||||
import { Gtk, Widget } from "astal/gtk3";
|
import { Gtk, Widget } from "astal/gtk3";
|
||||||
import AstalMpris from "gi://AstalMpris";
|
import AstalMpris from "gi://AstalMpris";
|
||||||
|
import { getSymbolicIcon } from "../../scripts/apps";
|
||||||
|
import { getPlayers } from "../../scripts/player";
|
||||||
import { Separator, SeparatorProps } from "../Separator";
|
import { Separator, SeparatorProps } from "../Separator";
|
||||||
import { Windows } from "../../windows";
|
import { Windows } from "../../windows";
|
||||||
import { Clipboard } from "../../scripts/clipboard";
|
import { Clipboard } from "../../scripts/clipboard";
|
||||||
|
import { Sliders } from "../control-center/Sliders";
|
||||||
|
|
||||||
const playerIcons = {
|
|
||||||
spotify: "spotify-symbolic",
|
|
||||||
mpv: "mpv-symbolic",
|
|
||||||
Clapper: "com.github.rafostar.Clapper-symbolic"
|
|
||||||
}
|
|
||||||
|
|
||||||
export function Media(): Gtk.Widget {
|
export function Media(): Gtk.Widget {
|
||||||
|
|
||||||
@@ -92,13 +88,12 @@ export function Media(): Gtk.Widget {
|
|||||||
players[0] ? [
|
players[0] ? [
|
||||||
new Widget.Icon({
|
new Widget.Icon({
|
||||||
icon: bind(players[0], "busName").as((busName: string) => {
|
icon: bind(players[0], "busName").as((busName: string) => {
|
||||||
const splitName = busName.split('.').filter(str => str !== "");
|
const splitName = busName.split('.').filter(str => str !== "" && !str.toLowerCase().includes('instance'));
|
||||||
|
if (getSymbolicIcon(splitName[splitName.length - 1])) {
|
||||||
return playerIcons[
|
return getSymbolicIcon(splitName[splitName.length - 1]);
|
||||||
Object.keys(playerIcons).filter(icon =>
|
} else {
|
||||||
splitName[splitName.length - 1].includes(icon))?.[0] as keyof typeof playerIcons
|
return "folder-music-symbolic"
|
||||||
]
|
};
|
||||||
?? "folder-music-symbolic";
|
|
||||||
})
|
})
|
||||||
} as Widget.IconProps),
|
} as Widget.IconProps),
|
||||||
new Widget.Label({
|
new Widget.Label({
|
||||||
|
|||||||
Reference in New Issue
Block a user