💥 fix(clipboard): issues with special characters on Clipboard.copyAsync()

This commit is contained in:
retrozinndev
2025-08-18 18:44:46 -03:00
parent db73023ac9
commit 49ded11c51
5 changed files with 54 additions and 38 deletions
+14 -1
View File
@@ -1,4 +1,5 @@
import { createRoot, createState, onCleanup } from "ags";
import { Accessor, createConnection, createRoot, createState, onCleanup } from "ags";
import { decoder } from "./utils";
import GObject from "ags/gobject";
import AstalMpris from "gi://AstalMpris";
@@ -54,6 +55,18 @@ export function initPlayer(): void {
});
}
export function accessMediaUrl(player: AstalMpris.Player): Accessor<string|undefined> {
return createConnection(player.get_meta("xesam:url"),
[player, "notify::metadata", () => player.get_meta("xesam:url")]
).as(url => {
const byteString = url?.get_data_as_bytes();
return byteString ?
decoder.decode(byteString.toArray())
: undefined;
})
}
export function disposePlayer(): void {
if(disposeFun) {
disposeFun();