Remove old desktop width C++ code

This commit is contained in:
Vasily
2019-03-31 22:31:26 +02:00
committed by username223
parent ab901e90fc
commit cba76f6846
2 changed files with 1 additions and 161 deletions
@@ -13,8 +13,6 @@
// application namespace
namespace advsettings
{
constexpr auto steamDesktopOverlaykey = "valve.steam.desktop";
void UtilitiesTabController::initStage1()
{
#ifdef _WIN32
@@ -28,13 +26,10 @@ void UtilitiesTabController::initStage1()
auto qAlarmIsModal = settings->value( "alarmIsModal", m_alarmIsModal );
auto qAlarmHour = settings->value( "alarmHour", 0 );
auto qAlarmMinute = settings->value( "alarmMinute", 0 );
auto qDesktopWidth = settings->value( "desktopWidth", 4.0 );
settings->endGroup();
m_alarmEnabled = qAlarmEnabled.toBool();
m_alarmIsModal = qAlarmIsModal.toBool();
m_alarmTime = QTime( qAlarmHour.toInt(), qAlarmMinute.toInt() );
setUpDesktopOverlay( qDesktopWidth.toFloat() );
}
void UtilitiesTabController::initStage2( OverlayController* var_parent,
@@ -311,42 +306,6 @@ void UtilitiesTabController::eventLoopTick()
{
if ( settingsUpdateCounter >= k_utilitiesSettingsUpdateCounter )
{
vr::VROverlayHandle_t pOverlayHandle;
auto error = vr::VROverlay()->FindOverlay( steamDesktopOverlaykey,
&pOverlayHandle );
if ( error == vr::VROverlayError_None )
{
if ( !m_steamDesktopOverlayAvailable )
{
m_steamDesktopOverlayAvailable = true;
emit steamDesktopOverlayAvailableChanged(
m_steamDesktopOverlayAvailable );
}
float width;
error = vr::VROverlay()->GetOverlayWidthInMeters( pOverlayHandle,
&width );
if ( error != vr::VROverlayError_None )
{
LOG( ERROR )
<< "Could not read overlay width of \""
<< steamDesktopOverlaykey << "\": "
<< vr::VROverlay()->GetOverlayErrorNameFromEnum( error );
}
else
{
setSteamDesktopOverlayWidth( width, true, false );
}
}
else
{
if ( m_steamDesktopOverlayAvailable )
{
m_steamDesktopOverlayAvailable = false;
emit steamDesktopOverlayAvailableChanged(
m_steamDesktopOverlayAvailable );
}
}
if ( m_alarmEnabled && m_alarmTime.isValid() )
{
auto now = QTime::currentTime();
@@ -558,104 +517,4 @@ void UtilitiesTabController::eventLoopTick()
}
}
bool steamDesktopOverlayExists()
{
vr::VROverlayHandle_t pOverlayHandle = 0;
auto error = vr::VROverlay()->FindOverlay( steamDesktopOverlaykey,
&pOverlayHandle );
if ( error != vr::VROverlayError_None )
{
LOG( DEBUG ) << "Could not find overlay \"" << steamDesktopOverlaykey
<< "\": "
<< vr::VROverlay()->GetOverlayErrorNameFromEnum( error );
return false;
}
return true;
}
void UtilitiesTabController::setUpDesktopOverlay( float desktopWidthInMeters )
{
auto setOverlayVariablesSuccess = [this, desktopWidthInMeters]() {
m_steamDesktopOverlayAvailable = true;
setSteamDesktopOverlayWidth( desktopWidthInMeters, true, true );
LOG( INFO ) << "Found overlay \"" << steamDesktopOverlaykey << "\".";
};
if ( steamDesktopOverlayExists() )
{
setOverlayVariablesSuccess();
return;
}
constexpr auto timeBetweenAdditionalAttempts = std::chrono::seconds( 1 );
constexpr auto maxAttempts = 7;
for ( int attempts = 0; attempts < maxAttempts; ++attempts )
{
std::this_thread::sleep_for( timeBetweenAdditionalAttempts );
if ( steamDesktopOverlayExists() )
{
setOverlayVariablesSuccess();
return;
}
}
LOG( INFO ) << "Could not find overlay \"" << steamDesktopOverlaykey
<< "\" after " << maxAttempts << " extra attempts.";
}
bool UtilitiesTabController::steamDesktopOverlayAvailable() const
{
return m_steamDesktopOverlayAvailable;
}
float UtilitiesTabController::steamDesktopOverlayWidth() const
{
return m_steamDesktopOverlayWidth;
}
void UtilitiesTabController::setSteamDesktopOverlayWidth( float width,
bool notify,
bool notifyOpenVr )
{
if ( std::abs( m_steamDesktopOverlayWidth - width ) > 0.01f )
{
m_steamDesktopOverlayWidth = width;
auto settings = OverlayController::appSettings();
settings->beginGroup( "utilitiesSettings" );
settings->setValue( "desktopWidth", m_steamDesktopOverlayWidth );
settings->endGroup();
if ( notifyOpenVr )
{
vr::VROverlayHandle_t pOverlayHandle;
auto error = vr::VROverlay()->FindOverlay( steamDesktopOverlaykey,
&pOverlayHandle );
if ( error != vr::VROverlayError_None )
{
LOG( ERROR )
<< "Could not find overlay \"" << steamDesktopOverlaykey
<< "\": "
<< vr::VROverlay()->GetOverlayErrorNameFromEnum( error );
}
else
{
error = vr::VROverlay()->SetOverlayWidthInMeters(
pOverlayHandle, m_steamDesktopOverlayWidth );
if ( error != vr::VROverlayError_None )
{
LOG( ERROR )
<< "Could not modify overlay width of \""
<< steamDesktopOverlaykey << "\": "
<< vr::VROverlay()->GetOverlayErrorNameFromEnum(
error );
}
}
}
if ( notify )
{
emit steamDesktopOverlayWidthChanged( m_steamDesktopOverlayWidth );
}
}
}
} // namespace advsettings
+1 -20
View File
@@ -25,16 +25,8 @@ class UtilitiesTabController : public QObject
NOTIFY alarmTimeHourChanged )
Q_PROPERTY( int alarmTimeMinute READ alarmTimeMinute WRITE
setAlarmTimeMinute NOTIFY alarmTimeMinuteChanged )
Q_PROPERTY(
bool steamDesktopOverlayAvailable READ steamDesktopOverlayAvailable
NOTIFY steamDesktopOverlayAvailableChanged )
Q_PROPERTY(
float steamDesktopOverlayWidth READ steamDesktopOverlayWidth WRITE
setSteamDesktopOverlayWidth NOTIFY steamDesktopOverlayWidthChanged )
private:
void setUpDesktopOverlay( float desktopWidthInMeters );
OverlayController* m_parent;
QQuickWindow* m_widget;
@@ -44,8 +36,7 @@ private:
bool m_alarmIsModal = true;
QTime m_alarmTime;
QTime m_alarmLastCheckTime;
bool m_steamDesktopOverlayAvailable = false;
float m_steamDesktopOverlayWidth = 4.0f;
vr::VROverlayHandle_t m_batteryOverlayHandles[vr::k_unMaxTrackedDeviceCount]
= { 0 };
int m_batteryState[vr::k_unMaxTrackedDeviceCount];
@@ -64,9 +55,6 @@ public:
int alarmTimeHour() const;
int alarmTimeMinute() const;
bool steamDesktopOverlayAvailable() const;
float steamDesktopOverlayWidth() const;
public slots:
void sendKeyboardInput( QString input );
void sendKeyboardEnter();
@@ -86,18 +74,11 @@ public slots:
void modAlarmTimeHour( int value, bool notify = true );
void modAlarmTimeMinute( int value, bool notify = true );
void setSteamDesktopOverlayWidth( float width,
bool notify = true,
bool notifyOpenVr = true );
signals:
void alarmEnabledChanged( bool enabled );
void alarmIsModalChanged( bool modal );
void alarmTimeHourChanged( int hour );
void alarmTimeMinuteChanged( int min );
void steamDesktopOverlayAvailableChanged( bool available );
void steamDesktopOverlayWidthChanged( float width );
};
} // namespace advsettings