Cinnamon-Extension automatisch aktivieren; README: Desktop-Integration explizit
- Neu cinnamon.rs: erweitert org.cinnamon enabled-extensions idempotent um ai-control-popup@local; Aufruf im SNI-Zweig von init_tray (is_cinnamon). - README: GNOME-/Cinnamon-Extension und KWin-Script mit Pfad und Aufgabe benannt, Auto-Aktivierung dokumentiert (inkl. GNOME-Randfall nach Erstinstallation); Cinnamon-X11-Aussage korrigiert (Initial-Fokus).
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
//! Der Klick-Weg unterscheidet sich je Desktop (GNOME-Extension vs.
|
||||
//! StatusNotifierItem), das Ergebnis ist überall dasselbe Popup-Fenster.
|
||||
|
||||
mod cinnamon;
|
||||
mod desktop;
|
||||
mod gnome;
|
||||
mod kwin;
|
||||
@@ -67,6 +68,13 @@ fn is_kde() -> bool {
|
||||
.unwrap_or(false)
|
||||
}
|
||||
|
||||
/// Cinnamon meldet sich je nach Session als „X-Cinnamon" oder „Cinnamon".
|
||||
fn is_cinnamon() -> bool {
|
||||
std::env::var("XDG_CURRENT_DESKTOP")
|
||||
.map(|d| d.to_uppercase().contains("CINNAMON"))
|
||||
.unwrap_or(false)
|
||||
}
|
||||
|
||||
// ---------- Secrets ----------
|
||||
|
||||
/// apiKeyHelper-Kommando eines apikey-Pools: liest den Key aus dem Keyring
|
||||
@@ -108,6 +116,10 @@ pub(crate) fn init_tray(app: &tauri::AppHandle, cb: TrayCallbacks) -> Result<(),
|
||||
// KDE-Wayland: das Popup-Positionieren übernimmt das KWin-Script.
|
||||
if is_kde() {
|
||||
kwin::enable_script();
|
||||
} else if is_cinnamon() {
|
||||
// Wayland-Platzierung + X11-Fokus kommen aus der Cinnamon-Extension;
|
||||
// sie liegt systemweit aus dem Paket, aktiviert wird pro Benutzer.
|
||||
cinnamon::enable_extension();
|
||||
}
|
||||
}
|
||||
Ok(())
|
||||
|
||||
Reference in New Issue
Block a user