overte-JulianGro/scripts/system/+android_interface/audio.js
2019-02-06 11:37:52 -08:00

71 lines
1.6 KiB
JavaScript

"use strict";
//
// audio.js
// scripts/system/
//
// Created by Gabriel Calero & Cristian Duarte on Jan 16, 2018
// Copyright 2018 High Fidelity, Inc.
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
(function() { // BEGIN LOCAL_SCOPE
var audiobar;
var audioButton;
var logEnabled = false;
function printd(str) {
if (logEnabled)
print("[audio.js] " + str);
}
function init() {
audiobar = new QmlFragment({
qml: "hifi/AudioBar.qml"
});
audioButton = audiobar.addButton({
icon: "icons/mic-unmute-a.svg",
activeIcon: "icons/mic-mute-a.svg",
text: "",
bgOpacity: 0.0,
hoverBgOpacity: 0.0,
activeHoverBgOpacity: 0.0,
activeBgOpacity: 0.0
});
onMuteToggled();
audioButton.clicked.connect(onMuteClicked);
audioButton.entered.connect(onMutePressed);
Audio.mutedChanged.connect(onMuteToggled);
}
function onMuteClicked() {
Audio.muted = !Audio.muted;
}
function onMutePressed() {
Controller.triggerHapticPulseOnDevice(Controller.findDevice("TouchscreenVirtualPad"), 0.1, 40.0, 0);
}
function onMuteToggled() {
printd("On Mute Toggled");
audioButton.isActive = Audio.muted; // Menu.isOptionChecked("Mute Microphone")
printd("Audio button is active: " + audioButton.isActive);
}
Script.scriptEnding.connect(function () {
if(audioButton) {
audioButton.clicked.disconnect(onMuteClicked);
audioButton.entered.disconnect(onMutePressed);
Audio.mutedChanged.connect(onMuteToggled);
}
});
init();
}()); // END LOCAL_SCOPE