Fixes based on PR feedback

* The "Clear Overlay When Driving" avatar preference is obeyed.
* sensor reset will also center the ui.
This commit is contained in:
Anthony J. Thibault 2016-06-13 11:19:47 -07:00
parent ccf85c1f7c
commit ab4bef7d55
3 changed files with 6 additions and 4 deletions

View file

@ -4209,6 +4209,7 @@ void Application::resetSensors(bool andReload) {
DependencyManager::get<DdeFaceTracker>()->reset();
DependencyManager::get<EyeTracker>()->reset();
getActiveDisplayPlugin()->resetSensors();
_overlayConductor.centerUI();
getMyAvatar()->reset(andReload);
QMetaObject::invokeMethod(DependencyManager::get<AudioClient>().data(), "reset", Qt::QueuedConnection);
}

View file

@ -139,7 +139,7 @@ void OverlayConductor::update(float dt) {
switch (getState()) {
case Enabled:
if (qApp->isHMDMode() && headOutsideOverlay()) {
if (myAvatar->getClearOverlayWhenDriving() && qApp->isHMDMode() && headOutsideOverlay()) {
setState(DisabledByHead);
setEnabled(false);
}
@ -147,7 +147,7 @@ void OverlayConductor::update(float dt) {
setState(DisabledByToggle);
setEnabled(false);
}
if (drivingChanged && isDriving) {
if (myAvatar->getClearOverlayWhenDriving() && drivingChanged && isDriving) {
setState(DisabledByDrive);
setEnabled(false);
}
@ -192,7 +192,7 @@ void OverlayConductor::setEnabled(bool enabled) {
// if the new state is visible/enabled...
MyAvatar* myAvatar = DependencyManager::get<AvatarManager>()->getMyAvatar();
if (_enabled && myAvatar->getClearOverlayWhenDriving() && qApp->isHMDMode()) {
if (_enabled && qApp->isHMDMode()) {
centerUI();
}
}

View file

@ -20,13 +20,14 @@ public:
void setEnabled(bool enable);
bool getEnabled() const;
void centerUI();
private:
bool headOutsideOverlay() const;
bool updateAvatarHasDriveInput();
bool updateAvatarIsAtRest();
bool userWishesToHide() const;
bool userWishesToShow() const;
void centerUI();
enum State {
Enabled = 0,