Remove the Accessibility Tab completely from the app (#79)

See
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/27

The Accessibility tab was made redundant with the implementation of the
new playspace/room/universe tab in
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/60

The tab inherited from the PttController class, which required changes
in order to work with the new IVRInput system. See
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/51
for more about the IVRInput system.

Removing the page now at an early state is going to make it easier to
refactor the PttController since only one class is inheriting it,
instead of two. Since the Accessibility tab is going to be removed
anyway, it makes sense to remove it now.
This commit is contained in:
username223
2019-02-03 12:33:43 -06:00
committed by ykeara
parent 05fca0e17d
commit ca67502fc5
10 changed files with 0 additions and 420 deletions
@@ -1,136 +0,0 @@
#include "AccessibilityTabController.h"
#include <QQuickWindow>
#include "../overlaycontroller.h"
// application namespace
namespace advsettings
{
void AccessibilityTabController::initStage1()
{
setTrackingUniverse( vr::VRCompositor()->GetTrackingSpace() );
auto settings = OverlayController::appSettings();
settings->beginGroup( getSettingsName() );
auto value = settings->value( "heightOffset", m_heightOffset );
settings->endGroup();
if ( value.isValid() && !value.isNull() )
{
m_heightOffset = value.toFloat();
emit heightOffsetChanged( m_heightOffset );
}
reloadPttConfig();
}
void AccessibilityTabController::initStage2( OverlayController* var_parent,
QQuickWindow* var_widget )
{
this->parent = var_parent;
this->widget = var_widget;
}
void AccessibilityTabController::setTrackingUniverse( int value )
{
if ( m_trackingUniverse != value )
{
reset();
m_trackingUniverse = value;
}
}
float AccessibilityTabController::heightOffset() const
{
return m_heightOffset;
}
void AccessibilityTabController::setHeightOffset( float value, bool notify )
{
if ( std::abs( m_heightOffset - value ) > 0.001 )
{
modHeightOffset( value - m_heightOffset, notify );
}
}
void AccessibilityTabController::modHeightOffset( float value, bool notify )
{
parent->AddOffsetToUniverseCenter(
( vr::TrackingUniverseOrigin ) m_trackingUniverse, 1, -value, false );
m_heightOffset += value;
auto settings = OverlayController::appSettings();
settings->beginGroup( getSettingsName() );
settings->setValue( "heightOffset", m_heightOffset );
settings->endGroup();
settings->sync();
if ( notify )
{
emit heightOffsetChanged( m_heightOffset );
}
}
void AccessibilityTabController::onPttStart()
{
m_toggleHeightOffset = m_heightOffset;
parent->AddOffsetToUniverseCenter(
( vr::TrackingUniverseOrigin ) m_trackingUniverse,
1,
m_toggleHeightOffset,
false );
}
void AccessibilityTabController::onPttStop()
{
parent->AddOffsetToUniverseCenter(
( vr::TrackingUniverseOrigin ) m_trackingUniverse,
1,
-m_toggleHeightOffset,
false );
}
void AccessibilityTabController::onPttDisabled()
{
if ( pttActive() )
{
stopPtt();
}
m_toggleHeightOffset = 0;
}
void AccessibilityTabController::reset()
{
std::lock_guard<std::recursive_mutex> lock( eventLoopMutex );
vr::VRChaperoneSetup()->RevertWorkingCopy();
parent->AddOffsetToUniverseCenter(
( vr::TrackingUniverseOrigin ) m_trackingUniverse,
1,
m_heightOffset,
false,
false );
vr::VRChaperoneSetup()->CommitWorkingCopy( vr::EChaperoneConfigFile_Live );
m_heightOffset = 0.0f;
emit heightOffsetChanged( m_heightOffset );
}
void AccessibilityTabController::eventLoopTick(
vr::ETrackingUniverseOrigin universe )
{
if ( !eventLoopMutex.try_lock() )
{
return;
}
if ( settingsUpdateCounter >= k_accessibilitySettingsUpdateCounter )
{
if ( parent->isDashboardVisible() )
{
setTrackingUniverse( ( int ) universe );
}
settingsUpdateCounter = 0;
}
else
{
settingsUpdateCounter++;
}
checkPttStatus();
eventLoopMutex.unlock();
}
} // namespace advsettings
@@ -1,54 +0,0 @@
#pragma once
#include "PttController.h"
class QQuickWindow;
// application namespace
namespace advsettings
{
// forward declaration
class OverlayController;
class AccessibilityTabController : public PttController
{
Q_OBJECT
Q_PROPERTY( float heightOffset READ heightOffset WRITE setHeightOffset
NOTIFY heightOffsetChanged )
private:
OverlayController* parent;
QQuickWindow* widget;
int m_trackingUniverse = ( int ) vr::TrackingUniverseStanding;
float m_heightOffset = 0.0f;
float m_toggleHeightOffset = 0.0f;
unsigned settingsUpdateCounter = 0;
QString getSettingsName() override
{
return "accessibilitySettings";
}
void onPttStart() override;
void onPttStop() override;
void onPttDisabled() override;
public:
void initStage1();
void initStage2( OverlayController* parent, QQuickWindow* widget );
void eventLoopTick( vr::ETrackingUniverseOrigin universe );
float heightOffset() const;
public slots:
void setTrackingUniverse( int value );
void setHeightOffset( float value, bool notify = true );
void modHeightOffset( float value, bool notify = true );
void reset();
signals:
void heightOffsetChanged( float value );
};
} // namespace advsettings