Files
gnome-asus-kbd-rgb/extension/extension.js
2025-12-21 06:55:49 +01:00

60 lines
1.6 KiB
JavaScript

// extension.js - Point d'entrée de l'extension GNOME Shell ASUS RGB Keyboard
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js';
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
import {KeyboardRGBIndicator} from './ui.js';
/**
* Extension ASUS Keyboard RGB Control
*/
export default class AsusKeyboardRGBExtension extends Extension {
constructor(metadata) {
super(metadata);
this._indicator = null;
this._settings = null;
}
/**
* Active l'extension
*/
enable() {
console.log('Activation de l\'extension ASUS Keyboard RGB');
try {
// Charger les settings
this._settings = this.getSettings();
// Créer l'indicateur dans le panneau
this._indicator = new KeyboardRGBIndicator(this._settings);
// Ajouter au panneau (à droite, avant les menus système)
Main.panel.addToStatusArea(
this.metadata.uuid,
this._indicator,
1,
'right'
);
console.log('Extension ASUS Keyboard RGB activée avec succès');
} catch (e) {
console.error('Erreur lors de l\'activation de l\'extension:', e);
}
}
/**
* Désactive l'extension
*/
disable() {
console.log('Désactivation de l\'extension ASUS Keyboard RGB');
if (this._indicator) {
this._indicator.destroy();
this._indicator = null;
}
this._settings = null;
console.log('Extension ASUS Keyboard RGB désactivée');
}
}