From 694a79e161d2b4e6dac1853fb45b57547630975e Mon Sep 17 00:00:00 2001 From: retrozinndev Date: Fri, 18 Apr 2025 21:42:22 -0300 Subject: [PATCH] :boom: ags(control-center/bluetooth): pair before device connection --- ags/widget/control-center/pages/Bluetooth.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/ags/widget/control-center/pages/Bluetooth.ts b/ags/widget/control-center/pages/Bluetooth.ts index 13261bf..efe614b 100644 --- a/ags/widget/control-center/pages/Bluetooth.ts +++ b/ags/widget/control-center/pages/Bluetooth.ts @@ -85,7 +85,20 @@ export const BluetoothPage: Page = new Page({ function DeviceWidget(dev: AstalBluetooth.Device): Gtk.Widget { return new Widget.Button({ - onClick: () => dev.connected ? dev.disconnect_device(null) : dev.connect_device(null), + onClick: () => { + if(dev.paired) { + dev.connected ? + dev.disconnect_device(null) + : dev.connect_device(null); + + return; + } + + dev.pair(); + dev.connected ? + dev.disconnect_device(null) + : dev.connect_device(null); + }, className: bind(dev, "connected").as((connected) => connected ? "connected" : ""), child: new Widget.Box({ className: "device",