AppOutputStreamSlider: Fixed scrolling and added description if stream has no name.
[AdvancedVolumeMixer.git] / extension.js
blob504ff28573af9e090c06d57e2f2480bc634abb9b
1 // extension.js
2 // vi: et sw=2
3 //
4 // Advanced Volume Mixer
5 // Control programs' volume from gnome volume mixer applet.
6 //
7 // Author: Harry Karvonen <harry.karvonen@gmail.com>
8 //
10 const Main = imports.ui.main;
11 const Lang = imports.lang;
13 const AVM = imports.misc.extensionUtils.getCurrentExtension();
14 const Settings = AVM.imports.settings;
15 const Panel = AVM.imports.panel;
16 const Mixer = AVM.imports.mixer;
18 let menu;
19 let advMixer;
21 function init() {
22   menu = null;
23   advMixer = null;
24   Settings.init();
28 function enable() {
29   advMixer = new Mixer.AdvancedVolumeMixer();
30   menu = new Panel.AdvancedVolumeMixerStatusButton(advMixer);
31   Main.panel.addToStatusArea("AdvancedVolumeMixer", menu)
33   menu.setMixer(advMixer);
37 function disable() {
38   if (advMixer) {
39     advMixer.destroy();
40   }
41   advMixer = null;
43   if (menu) {
44     menu.destroy();
45   }
46   menu = null;