1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-05 13:47:26 +02:00

Restored go online/go offline functionality in AccountsWidget.

This is a stopgap measure until we refactor the Accounts stuff for easy
state management in resolvers and such. It is still better than the old
go online/go offline entry, but it ties the connected/disconnected state
of all non-SIP accounts to the state of the SIP accounts, without
changing the non-SIP accounts' enabled/disabled setting.
This means that as long as at least one SIP account is enabled, all
other non-SIP accounts will try to connect and Tomahawk will be
reported as "online" in the UI. Otherwise, when hitting "Disconnect All"
or disabling the last online SIP account, all non-SIP accounts will be
disconnected as well.
This commit is contained in:
Teo Mrnjavac
2012-10-20 20:51:23 +02:00
parent 022b11e7cb
commit 015a76f831

View File

@@ -19,6 +19,7 @@
#include "AccountListWidget.h" #include "AccountListWidget.h"
#include "accounts/AccountModel.h" #include "accounts/AccountModel.h"
#include "accounts/AccountManager.h"
#include "AccountWidget.h" #include "AccountWidget.h"
#include "utils/TomahawkUtilsGui.h" #include "utils/TomahawkUtilsGui.h"
@@ -214,7 +215,14 @@ AccountListWidget::updateToggleOnlineStateButton()
} }
end:; end:;
m_toggleOnlineButtonState = newState; if ( newState != m_toggleOnlineButtonState )
{
m_toggleOnlineButtonState = newState;
if ( newState )
Tomahawk::Accounts::AccountManager::instance()->connectAll();
else
Tomahawk::Accounts::AccountManager::instance()->disconnectAll();
}
m_toggleOnlineButton->setText( m_toggleOnlineButtonState ? tr( "Disconnect &All" ) m_toggleOnlineButton->setText( m_toggleOnlineButtonState ? tr( "Disconnect &All" )
: tr( "Connect &All" ) ); : tr( "Connect &All" ) );