From 886772eb39331ebd21a1f86944f1273be9f9280e Mon Sep 17 00:00:00 2001 From: Seth Alves Date: Wed, 22 May 2019 11:27:14 -0700 Subject: [PATCH 01/10] only worry about Ubuntu major versions when selecting Qt package --- hifi_vcpkg.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hifi_vcpkg.py b/hifi_vcpkg.py index 3df714e6f9..ee42eef14f 100644 --- a/hifi_vcpkg.py +++ b/hifi_vcpkg.py @@ -265,10 +265,10 @@ endif() #url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-macos.tar.gz?versionId=QrGxwssB.WwU_z3QCyG7ghP1_VjTkQeK' url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-macos.tar.gz' elif platform.system() == 'Linux': - if platform.linux_distribution()[1] == '16.04': + if platform.linux_distribution()[1][:3] == '16.': #url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-ubuntu-16.04.tar.gz?versionId=c9j7PW4uBDPLif7DKmgIhorh9WBMjZRB' url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-ubuntu-16.04.tar.gz' - elif platform.linux_distribution()[1] == '18.04': + elif platform.linux_distribution()[1][:3] == '18.': #url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-ubuntu-18.04.tar.gz?versionId=Z3TojPFdb5pXdahF3oi85jjKocpL0xqw' url = 'https://hifi-public.s3.amazonaws.com/dependencies/vcpkg/qt5-install-5.12.3-ubuntu-18.04.tar.gz' else: From d75fe040385b5e42dc103260cc41b83e1ec9b237 Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Wed, 22 May 2019 16:24:40 -0700 Subject: [PATCH 02/10] Fix BUGZ-311 --- interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml index 96dbc5e180..fc11451b5b 100644 --- a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml +++ b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml @@ -216,6 +216,7 @@ Flickable { width: parent.width - inputLevel.width checked: selectedHMD text: model.devicename + wrapLabel: false ButtonGroup.group: inputDeviceButtonGroup onClicked: { AudioScriptingInterface.setStereoInput(false); // the next selected audio device might not support stereo @@ -315,6 +316,7 @@ Flickable { width: parent.width checked: selectedDesktop text: model.devicename + wrapLabel: false ButtonGroup.group: outputDeviceButtonGroup onClicked: { AudioScriptingInterface.setOutputDevice(model.info, true); // `false` argument for Desktop mode setting From 0d0a9fbd09881a02ceb6a28a40a0999df408dcb3 Mon Sep 17 00:00:00 2001 From: Ken Cooke Date: Thu, 23 May 2019 07:54:08 -0700 Subject: [PATCH 03/10] Never return more than maxSamples from the audio ringbuffer --- libraries/audio/src/InboundAudioStream.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libraries/audio/src/InboundAudioStream.cpp b/libraries/audio/src/InboundAudioStream.cpp index 5ac3996029..3964c9a6ed 100644 --- a/libraries/audio/src/InboundAudioStream.cpp +++ b/libraries/audio/src/InboundAudioStream.cpp @@ -366,8 +366,9 @@ int InboundAudioStream::popSamples(int maxSamples, bool allOrNothing) { _consecutiveNotMixedCount++; //Kick PLC to generate a filler frame, reducing 'click' lostAudioData(allOrNothing ? (maxSamples - samplesAvailable) / _ringBuffer.getNumFrameSamples() : 1); - samplesPopped = _ringBuffer.samplesAvailable(); - if (samplesPopped) { + samplesAvailable = _ringBuffer.samplesAvailable(); + if (samplesAvailable > 0) { + samplesPopped = std::min(samplesAvailable, maxSamples); popSamplesNoCheck(samplesPopped); } else { // No samples available means a packet is currently being From ba3282e12b034e2b2ec48a6b579b763b7a7dbc58 Mon Sep 17 00:00:00 2001 From: Ken Cooke Date: Thu, 23 May 2019 08:03:59 -0700 Subject: [PATCH 04/10] Fix rounding error in allOrNothing mode --- libraries/audio/src/InboundAudioStream.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/libraries/audio/src/InboundAudioStream.cpp b/libraries/audio/src/InboundAudioStream.cpp index 3964c9a6ed..7a81b8a67a 100644 --- a/libraries/audio/src/InboundAudioStream.cpp +++ b/libraries/audio/src/InboundAudioStream.cpp @@ -364,9 +364,17 @@ int InboundAudioStream::popSamples(int maxSamples, bool allOrNothing) { // buffer calculations. setToStarved(); _consecutiveNotMixedCount++; - //Kick PLC to generate a filler frame, reducing 'click' - lostAudioData(allOrNothing ? (maxSamples - samplesAvailable) / _ringBuffer.getNumFrameSamples() : 1); + + // use PLC to generate extrapolated audio data, to reduce clicking + if (allOrNothing) { + int samplesNeeded = maxSamples - samplesAvailable; + int packetsNeeded = (samplesNeeded + _ringBuffer.getNumFrameSamples() - 1) / _ringBuffer.getNumFrameSamples(); + lostAudioData(packetsNeeded); + } else { + lostAudioData(1); + } samplesAvailable = _ringBuffer.samplesAvailable(); + if (samplesAvailable > 0) { samplesPopped = std::min(samplesAvailable, maxSamples); popSamplesNoCheck(samplesPopped); From 135dc7f2b18dbbd34c8d01ac07631c5f58224c17 Mon Sep 17 00:00:00 2001 From: Ken Cooke Date: Thu, 23 May 2019 08:54:47 -0700 Subject: [PATCH 05/10] assert() on over-filling the audio callback buffer --- libraries/audio-client/src/AudioClient.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/audio-client/src/AudioClient.cpp b/libraries/audio-client/src/AudioClient.cpp index cef6adcab0..da948f9917 100644 --- a/libraries/audio-client/src/AudioClient.cpp +++ b/libraries/audio-client/src/AudioClient.cpp @@ -2162,6 +2162,8 @@ qint64 AudioClient::AudioOutputIODevice::readData(char * data, qint64 maxSize) { } bytesWritten = framesPopped * AudioConstants::SAMPLE_SIZE * deviceChannelCount; + assert(bytesWritten <= maxSize); + } else { // nothing on network, don't grab anything from injectors, and just return 0s memset(data, 0, maxSize); @@ -2174,7 +2176,6 @@ qint64 AudioClient::AudioOutputIODevice::readData(char * data, qint64 maxSize) { _audio->_audioFileWav.addRawAudioChunk(reinterpret_cast(scratchBuffer), bytesWritten); } - int bytesAudioOutputUnplayed = _audio->_audioOutput->bufferSize() - _audio->_audioOutput->bytesFree(); float msecsAudioOutputUnplayed = bytesAudioOutputUnplayed / (float)_audio->_outputFormat.bytesForDuration(USECS_PER_MSEC); _audio->_stats.updateOutputMsUnplayed(msecsAudioOutputUnplayed); From 053576e29fd09f275b87c7a6ce689b845af2fc72 Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 23 May 2019 11:31:42 -0700 Subject: [PATCH 06/10] Move SimplifiedUI folder and create new defaultScripts.js --- scripts/simplifiedUI/defaultScripts.js | 41 +++++++++++++++++++ .../simplifiedUI/images/inputDeviceMuted.svg | 0 .../simplifiedUI/images/outputDeviceMuted.svg | 0 .../modules/defaultLocalEntityProps.js | 0 .../resources/modules/entityMaker.js | 0 .../resources/modules/nameTagListManager.js | 0 .../resources/modules/objectAssign.js | 0 .../resources/modules/pickRayController.js | 0 .../resources/modules/textHelper.js | 0 .../simplifiedNametag/simplifiedNametag.js | 0 .../simplifiedStatusIndicator.js | 0 .../{system => }/simplifiedUI/simplifiedUI.js | 2 +- 12 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 scripts/simplifiedUI/defaultScripts.js rename scripts/{system => }/simplifiedUI/images/inputDeviceMuted.svg (100%) rename scripts/{system => }/simplifiedUI/images/outputDeviceMuted.svg (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/defaultLocalEntityProps.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/entityMaker.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/nameTagListManager.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/objectAssign.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/pickRayController.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/resources/modules/textHelper.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedNametag/simplifiedNametag.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedStatusIndicator/simplifiedStatusIndicator.js (100%) rename scripts/{system => }/simplifiedUI/simplifiedUI.js (99%) diff --git a/scripts/simplifiedUI/defaultScripts.js b/scripts/simplifiedUI/defaultScripts.js new file mode 100644 index 0000000000..0911c6518a --- /dev/null +++ b/scripts/simplifiedUI/defaultScripts.js @@ -0,0 +1,41 @@ +"use strict"; +/* jslint vars: true, plusplus: true */ + +// +// defaultScripts.js +// +// Authors: Zach Fox +// Created: 2019-05-23 +// Copyright 2019 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 +// +var DEFAULT_SCRIPTS_PATH_PREFIX = ScriptDiscoveryService.defaultScriptsPath + "/"; + + +var DEFAULT_SCRIPTS_SEPARATE = [ + DEFAULT_SCRIPTS_PATH_PREFIX + "system/controllers/controllerScripts.js", + Script.resolvePath("simplifiedUI.js") +]; +function loadSeparateDefaults() { + for (var i in DEFAULT_SCRIPTS_SEPARATE) { + Script.load(DEFAULT_SCRIPTS_SEPARATE[i]); + } +} + + +var DEFAULT_SCRIPTS_COMBINED = [ + DEFAULT_SCRIPTS_PATH_PREFIX + "system/request-service.js", + DEFAULT_SCRIPTS_PATH_PREFIX + "system/progress.js", + DEFAULT_SCRIPTS_PATH_PREFIX + "system/away.js" +]; +function runDefaultsTogether() { + for (var i in DEFAULT_SCRIPTS_COMBINED) { + Script.include(DEFAULT_SCRIPTS_COMBINED[i]); + } + loadSeparateDefaults(); +} + + +runDefaultsTogether(); diff --git a/scripts/system/simplifiedUI/images/inputDeviceMuted.svg b/scripts/simplifiedUI/images/inputDeviceMuted.svg similarity index 100% rename from scripts/system/simplifiedUI/images/inputDeviceMuted.svg rename to scripts/simplifiedUI/images/inputDeviceMuted.svg diff --git a/scripts/system/simplifiedUI/images/outputDeviceMuted.svg b/scripts/simplifiedUI/images/outputDeviceMuted.svg similarity index 100% rename from scripts/system/simplifiedUI/images/outputDeviceMuted.svg rename to scripts/simplifiedUI/images/outputDeviceMuted.svg diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/defaultLocalEntityProps.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/defaultLocalEntityProps.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/defaultLocalEntityProps.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/defaultLocalEntityProps.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/entityMaker.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/entityMaker.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/entityMaker.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/entityMaker.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/nameTagListManager.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/nameTagListManager.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/nameTagListManager.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/nameTagListManager.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/objectAssign.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/objectAssign.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/objectAssign.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/objectAssign.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/pickRayController.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/pickRayController.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/pickRayController.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/pickRayController.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/resources/modules/textHelper.js b/scripts/simplifiedUI/simplifiedNametag/resources/modules/textHelper.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/resources/modules/textHelper.js rename to scripts/simplifiedUI/simplifiedNametag/resources/modules/textHelper.js diff --git a/scripts/system/simplifiedUI/simplifiedNametag/simplifiedNametag.js b/scripts/simplifiedUI/simplifiedNametag/simplifiedNametag.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedNametag/simplifiedNametag.js rename to scripts/simplifiedUI/simplifiedNametag/simplifiedNametag.js diff --git a/scripts/system/simplifiedUI/simplifiedStatusIndicator/simplifiedStatusIndicator.js b/scripts/simplifiedUI/simplifiedStatusIndicator/simplifiedStatusIndicator.js similarity index 100% rename from scripts/system/simplifiedUI/simplifiedStatusIndicator/simplifiedStatusIndicator.js rename to scripts/simplifiedUI/simplifiedStatusIndicator/simplifiedStatusIndicator.js diff --git a/scripts/system/simplifiedUI/simplifiedUI.js b/scripts/simplifiedUI/simplifiedUI.js similarity index 99% rename from scripts/system/simplifiedUI/simplifiedUI.js rename to scripts/simplifiedUI/simplifiedUI.js index 351372613b..d3bc2830cd 100644 --- a/scripts/system/simplifiedUI/simplifiedUI.js +++ b/scripts/simplifiedUI/simplifiedUI.js @@ -5,7 +5,7 @@ // simplifiedUI.js // // Authors: Wayne Chen & Zach Fox -// Created on: 5/1/2019 +// Created: 2019-05-01 // Copyright 2019 High Fidelity, Inc. // // Distributed under the Apache License, Version 2.0. From dc370d676acc520aea8b4b50a2dcba1e58ccaa35 Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 23 May 2019 13:07:47 -0700 Subject: [PATCH 07/10] Fix BUGZ-203 --- scripts/simplifiedUI/simplifiedUI.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/scripts/simplifiedUI/simplifiedUI.js b/scripts/simplifiedUI/simplifiedUI.js index d3bc2830cd..a6183c5ab9 100644 --- a/scripts/simplifiedUI/simplifiedUI.js +++ b/scripts/simplifiedUI/simplifiedUI.js @@ -103,6 +103,8 @@ var AVATAR_APP_PRESENTATION_MODE = Desktop.PresentationMode.NATIVE; var AVATAR_APP_WIDTH_PX = 480; var AVATAR_APP_HEIGHT_PX = 615; var avatarAppWindow = false; +var POPOUT_SAFE_MARGIN_X = 30; +var POPOUT_SAFE_MARGIN_Y = 30; function toggleAvatarApp() { if (avatarAppWindow) { avatarAppWindow.close(); @@ -119,6 +121,10 @@ function toggleAvatarApp() { size: { x: AVATAR_APP_WIDTH_PX, y: AVATAR_APP_HEIGHT_PX + }, + position: { + x: Math.max(Window.x + POPOUT_SAFE_MARGIN_X, Window.x + Window.innerWidth / 2 - AVATAR_APP_WIDTH_PX / 2), + y: Math.max(Window.y + POPOUT_SAFE_MARGIN_Y, Window.y + Window.innerHeight / 2 - AVATAR_APP_HEIGHT_PX / 2) } }); @@ -181,6 +187,10 @@ function toggleSettingsApp() { size: { x: SETTINGS_APP_WIDTH_PX, y: SETTINGS_APP_HEIGHT_PX + }, + position: { + x: Math.max(Window.x + POPOUT_SAFE_MARGIN_X, Window.x + Window.innerWidth / 2 - SETTINGS_APP_WIDTH_PX / 2), + y: Math.max(Window.y + POPOUT_SAFE_MARGIN_Y, Window.y + Window.innerHeight / 2 - SETTINGS_APP_HEIGHT_PX / 2) } }); From da011fd042a63df1719f7c27301a39f1d3c83015 Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 23 May 2019 13:37:25 -0700 Subject: [PATCH 08/10] Fix BUGZ-312; fix BUGZ-311 --- .../simplifiedUI/settingsApp/audio/Audio.qml | 23 +++++++------------ .../hifi/simplifiedUI/settingsApp/vr/VR.qml | 14 +++++------ 2 files changed, 14 insertions(+), 23 deletions(-) diff --git a/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml b/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml index 9ac72fa3cd..1b5f571d96 100644 --- a/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml +++ b/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml @@ -60,7 +60,7 @@ Flickable { HifiStylesUit.GraphikRegular { id: volumeControlsTitle text: "Volume Controls" - Layout.maximumWidth: parent.width + Layout.preferredWidth: parent.width height: paintedHeight size: 22 color: simplifiedUI.colors.text.white @@ -68,8 +68,7 @@ Flickable { SimplifiedControls.Slider { id: peopleVolume - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin height: 30 labelText: "People Volume" @@ -96,8 +95,7 @@ Flickable { SimplifiedControls.Slider { id: environmentVolume - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: 2 height: 30 labelText: "Environment Volume" @@ -125,8 +123,7 @@ Flickable { SimplifiedControls.Slider { id: systemSoundVolume - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: 2 height: 30 labelText: "System Sound Volume" @@ -212,8 +209,7 @@ Flickable { ListView { id: inputDeviceListView - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin interactive: false height: contentItem.height @@ -228,7 +224,7 @@ Flickable { id: inputDeviceCheckbox anchors.left: parent.left width: parent.width - inputLevel.width - height: paintedHeight + height: 16 wrapLabel: false checked: selectedDesktop text: model.devicename @@ -278,7 +274,6 @@ Flickable { id: testYourMicButton enabled: !HMD.active - anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin width: 160 height: 32 @@ -313,8 +308,7 @@ Flickable { ListView { id: outputDeviceListView - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin interactive: false height: contentItem.height @@ -329,7 +323,7 @@ Flickable { id: outputDeviceCheckbox anchors.left: parent.left width: parent.width - height: paintedHeight + height: 16 checked: selectedDesktop text: model.devicename wrapLabel: false @@ -381,7 +375,6 @@ Flickable { id: testYourSoundButton enabled: !HMD.active - anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin width: 160 height: 32 diff --git a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml index fc11451b5b..d869f82e12 100644 --- a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml +++ b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml @@ -198,8 +198,7 @@ Flickable { ListView { id: inputDeviceListView - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin interactive: false height: contentItem.height @@ -214,6 +213,7 @@ Flickable { id: inputDeviceCheckbox anchors.left: parent.left width: parent.width - inputLevel.width + height: 16 checked: selectedHMD text: model.devicename wrapLabel: false @@ -263,7 +263,6 @@ Flickable { id: testYourMicButton enabled: HMD.active - anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin width: 160 height: 32 @@ -298,8 +297,7 @@ Flickable { ListView { id: outputDeviceListView - anchors.left: parent.left - anchors.right: parent.right + Layout.preferredWidth: parent.width Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin interactive: false height: contentItem.height @@ -314,12 +312,13 @@ Flickable { id: outputDeviceCheckbox anchors.left: parent.left width: parent.width - checked: selectedDesktop + height: 16 + checked: selectedHMD text: model.devicename wrapLabel: false ButtonGroup.group: outputDeviceButtonGroup onClicked: { - AudioScriptingInterface.setOutputDevice(model.info, true); // `false` argument for Desktop mode setting + AudioScriptingInterface.setOutputDevice(model.info, true); // `true` argument for VR mode setting } } } @@ -365,7 +364,6 @@ Flickable { id: testYourSoundButton enabled: HMD.active - anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin width: 160 height: 32 From 940c122f461f4b363c10503d772b312962a2346f Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Thu, 23 May 2019 13:38:54 -0700 Subject: [PATCH 09/10] clear _otherAvatarsToChangeInPhysics after processing it --- interface/src/avatar/AvatarManager.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/interface/src/avatar/AvatarManager.cpp b/interface/src/avatar/AvatarManager.cpp index 80b9762213..f153f66799 100755 --- a/interface/src/avatar/AvatarManager.cpp +++ b/interface/src/avatar/AvatarManager.cpp @@ -521,6 +521,7 @@ void AvatarManager::buildPhysicsTransaction(PhysicsEngine::Transaction& transact } } } + _otherAvatarsToChangeInPhysics.clear(); } void AvatarManager::handleProcessedPhysicsTransaction(PhysicsEngine::Transaction& transaction) { @@ -645,7 +646,7 @@ void AvatarManager::clearOtherAvatars() { } void AvatarManager::deleteAllAvatars() { - assert(_otherAvatarsToChangeInPhysics.empty()); + _otherAvatarsToChangeInPhysics.clear(); QReadLocker locker(&_hashLock); AvatarHash::iterator avatarIterator = _avatarHash.begin(); while (avatarIterator != _avatarHash.end()) { From 78fdd2d6738d18449e5a799244859b63e0905104 Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 23 May 2019 14:25:06 -0700 Subject: [PATCH 10/10] Fix BUGZ-336 --- .../hifi/simplifiedUI/settingsApp/audio/Audio.qml | 14 +++++--------- .../qml/hifi/simplifiedUI/settingsApp/vr/VR.qml | 14 +++++--------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml b/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml index 9ac72fa3cd..c43f432582 100644 --- a/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml +++ b/interface/resources/qml/hifi/simplifiedUI/settingsApp/audio/Audio.qml @@ -251,6 +251,7 @@ Flickable { } SimplifiedControls.Button { + id: audioLoopbackButton property bool audioLoopedBack: AudioScriptingInterface.getLocalEcho() function startAudioLoopback() { @@ -266,17 +267,14 @@ Flickable { } } - Timer { - id: loopbackTimer - interval: 8000 - running: false - repeat: false - onTriggered: { + Component.onDestruction: stopAudioLoopback(); + + onVisibleChanged: { + if (!visible) { stopAudioLoopback(); } } - id: testYourMicButton enabled: !HMD.active anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin @@ -285,10 +283,8 @@ Flickable { text: audioLoopedBack ? "STOP TESTING" : "TEST YOUR MIC" onClicked: { if (audioLoopedBack) { - loopbackTimer.stop(); stopAudioLoopback(); } else { - loopbackTimer.restart(); startAudioLoopback(); } } diff --git a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml index 96dbc5e180..549c4aced5 100644 --- a/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml +++ b/interface/resources/qml/hifi/simplifiedUI/settingsApp/vr/VR.qml @@ -235,6 +235,7 @@ Flickable { } SimplifiedControls.Button { + id: audioLoopbackButton property bool audioLoopedBack: AudioScriptingInterface.getLocalEcho() function startAudioLoopback() { @@ -250,17 +251,14 @@ Flickable { } } - Timer { - id: loopbackTimer - interval: 8000 - running: false - repeat: false - onTriggered: { + Component.onDestruction: stopAudioLoopback(); + + onVisibleChanged: { + if (!visible) { stopAudioLoopback(); } } - id: testYourMicButton enabled: HMD.active anchors.left: parent.left Layout.topMargin: simplifiedUI.margins.settings.settingsGroupTopMargin @@ -269,10 +267,8 @@ Flickable { text: audioLoopedBack ? "STOP TESTING" : "TEST YOUR MIC" onClicked: { if (audioLoopedBack) { - loopbackTimer.stop(); stopAudioLoopback(); } else { - loopbackTimer.restart(); startAudioLoopback(); } }