- Scaling 16px base pour ultrawide 3440x1440 - Bar: CPU/RAM/GPU visible, media single player (skip playerctld), network tooltip LAN/WAN IPv4 - Volume: class module pour sizing cohérent - Battery: désactivé (PC fixe) - Clock: tooltip calendrier + uptime - BrainPower: panel enrichi (focus, session, intentions, todos, repos git, derniers commits) - App: BrainPower sur moniteur principal uniquement - Heartbeat: Layer.TOP pour compatibilité COSMIC
34 lines
844 B
TypeScript
34 lines
844 B
TypeScript
import app from "ags/gtk3/app"
|
|
import style from "./style.scss"
|
|
import Heartbeat from "./widget/Heartbeat"
|
|
import Bar from "./widget/Bar"
|
|
import BrainPower from "./widget/panels/BrainPower"
|
|
|
|
app.start({
|
|
css: style,
|
|
main() {
|
|
const monitors = app.get_monitors()
|
|
for (const monitor of monitors) {
|
|
Heartbeat(monitor)
|
|
Bar(monitor)
|
|
}
|
|
// Brain Power on primary monitor only
|
|
const primary = monitors[0]
|
|
if (primary) BrainPower(primary)
|
|
},
|
|
requestHandler(request: any, res: (response: any) => void) {
|
|
const cmd = String(request)
|
|
if (cmd.includes("toggle-brain")) {
|
|
const win = app.get_window("brain-power")
|
|
if (win) {
|
|
win.visible = !win.visible
|
|
res("toggled")
|
|
} else {
|
|
res("window not found")
|
|
}
|
|
} else {
|
|
res(`unknown: '${cmd}'`)
|
|
}
|
|
},
|
|
})
|