diff --git a/data/images/add-contact.png b/data/images/add-contact.png
new file mode 100644
index 000000000..96341f292
Binary files /dev/null and b/data/images/add-contact.png differ
diff --git a/resources.qrc b/resources.qrc
index 31c2acd60..f2d25998b 100644
--- a/resources.qrc
+++ b/resources.qrc
@@ -150,5 +150,6 @@
data/images/scrollbar-horizontal-handle.png
data/images/subscribe-on.png
data/images/subscribe-off.png
+ data/images/add-contact.png
diff --git a/src/widgets/AccountWidget.cpp b/src/widgets/AccountWidget.cpp
index 05afef7af..7108990ca 100644
--- a/src/widgets/AccountWidget.cpp
+++ b/src/widgets/AccountWidget.cpp
@@ -87,54 +87,42 @@ AccountWidget::AccountWidget( QWidget* parent )
m_statusToggle = new SlideSwitchButton( this );
m_statusToggle->setContentsMargins( 0, 0, 0, 0 );
m_statusToggle->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Expanding );
- m_statusToggle->setFixedWidth( m_statusToggle->sizeHint().width() );
+ m_statusToggle->setFixedSize( m_statusToggle->sizeHint() );
QHBoxLayout *statusToggleLayout = new QHBoxLayout( this );
vLayout->addLayout( statusToggleLayout, 0, 1, 1, 1 );
statusToggleLayout->addStretch();
statusToggleLayout->addWidget( m_statusToggle );
//vLayout->addWidget( m_statusToggle, 0, 1 );
- UnstyledFrame* inviteContainer = new UnstyledFrame( this );
- vLayout->addWidget( inviteContainer, 1, 0 );
- inviteContainer->setFrameColor( QColor( 0x8c, 0x8c, 0x8c ) ); //from ProxyStyle
- inviteContainer->setFixedWidth( inviteContainer->logicalDpiX() * 2 );
- inviteContainer->setContentsMargins( 1, 1, 1, 2 );
- inviteContainer->setAttribute( Qt::WA_TranslucentBackground, false );
- inviteContainer->setStyleSheet( "background: white" );
+ m_inviteContainer = new UnstyledFrame( this );
+ vLayout->addWidget( m_inviteContainer, 1, 0 );
+ m_inviteContainer->setFrameColor( QColor( 0x8c, 0x8c, 0x8c ) ); //from ProxyStyle
+ m_inviteContainer->setFixedWidth( m_inviteContainer->logicalDpiX() * 2 );
+ m_inviteContainer->setContentsMargins( 1, 1, 1, 2 );
+ m_inviteContainer->setAttribute( Qt::WA_TranslucentBackground, false );
+ m_inviteContainer->setStyleSheet( "background: white" );
- QHBoxLayout* containerLayout = new QHBoxLayout( inviteContainer );
- inviteContainer->setLayout( containerLayout );
+ QHBoxLayout* containerLayout = new QHBoxLayout( m_inviteContainer );
+ m_inviteContainer->setLayout( containerLayout );
TomahawkUtils::unmarginLayout( containerLayout );
containerLayout->setContentsMargins( 1, 1, 0, 0 );
- m_addAccountIcon = new QLabel( inviteContainer );
+ m_addAccountIcon = new QLabel( m_inviteContainer );
m_addAccountIcon->setContentsMargins( 1, 0, 0, 0 );
- m_addAccountIcon->setPixmap( QIcon( RESPATH "images/user-avatar.png" ).pixmap( 16 ) );
+ m_addAccountIcon->setPixmap( QIcon( RESPATH "images/add-contact.png" ).pixmap( 16 ) );
m_addAccountIcon->setSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding );
m_addAccountIcon->setAlignment( Qt::AlignCenter );
containerLayout->addWidget( m_addAccountIcon );
- m_tweetMenuButton = new QToolButton( inviteContainer );
- m_tweetMenuButton->setContentsMargins( 1, 0, 0, 0 );
- m_tweetMenuButton->setIcon( QIcon( RESPATH "images/jump-link.png" ) );
- m_tweetMenuButton->setToolButtonStyle( Qt::ToolButtonIconOnly );
- m_tweetMenuButton->setPopupMode( QToolButton::InstantPopup );
- m_tweetMenuButton->setMenu( new QMenu() );
- m_tweetMenuButton->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding );
- m_tweetMenuButton->setFixedWidth( m_tweetMenuButton->sizeHint().height() ); //accommodate the menu indicator
- QString tweetMenuButtonSheet(
- "QToolButton { border: none; backgroud: white; }"
- "QToolButton::menu-indicator { left: 3px; }" );
- m_tweetMenuButton->setStyleSheet( tweetMenuButtonSheet );
- containerLayout->addWidget( m_tweetMenuButton );
-
- m_inviteEdit = new QLineEdit( inviteContainer );
+ m_inviteEdit = new QLineEdit( m_inviteContainer );
m_inviteEdit->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
containerLayout->addWidget( m_inviteEdit );
m_inviteEdit->setFrame( false );
+ idContainer->setFixedWidth( m_inviteContainer->width() );
m_inviteButton = new QPushButton( this );
m_inviteButton->setFixedWidth( m_inviteButton->logicalDpiX() * 0.8 );
+ m_inviteButton->setText( tr( "Invite" ) );
vLayout->addWidget( m_inviteButton, 1, 1 );
}
@@ -171,15 +159,8 @@ AccountWidget::update( const QPersistentModelIndex& idx, int accountIdx )
.value< QObject* >() );
if ( fac->factoryId() == "twitteraccount" )
{
- m_inviteButton->setText( tr( "Tweet" ) );
- m_addAccountIcon->setVisible( false );
- m_tweetMenuButton->setVisible( true );
- }
- else
- {
- m_inviteButton->setText( tr( "Invite" ) );
- m_tweetMenuButton->setVisible( false );
- m_addAccountIcon->setVisible( true );
+ m_inviteContainer->setVisible( false );
+ m_inviteButton->setVisible( false );
}
switch ( account->connectionState() )
diff --git a/src/widgets/AccountWidget.h b/src/widgets/AccountWidget.h
index 42194eb17..ff9177438 100644
--- a/src/widgets/AccountWidget.h
+++ b/src/widgets/AccountWidget.h
@@ -25,6 +25,7 @@
class AnimatedSpinner;
class ElidedLabel;
class SlideSwitchButton;
+class UnstyledFrame;
class QLabel;
class QLineEdit;
class QPushButton;
@@ -52,8 +53,8 @@ private:
SlideSwitchButton* m_statusToggle;
QLineEdit* m_inviteEdit;
QPushButton* m_inviteButton;
+ UnstyledFrame* m_inviteContainer;
QLabel* m_addAccountIcon;
- QToolButton* m_tweetMenuButton;
QPersistentModelIndex m_myFactoryIdx;
int m_myAccountIdx;
diff --git a/src/widgets/SlideSwitchButton.cpp b/src/widgets/SlideSwitchButton.cpp
index 8d6f66841..580755999 100644
--- a/src/widgets/SlideSwitchButton.cpp
+++ b/src/widgets/SlideSwitchButton.cpp
@@ -67,7 +67,6 @@ QSize
SlideSwitchButton::sizeHint()
{
QSize size = QPushButton::sizeHint();
- size.rheight() += 6; //margins
QFontMetrics fm( m_textFont );
int maxTextLength = qMax( fm.boundingRect( m_checkedText ).width(),
fm.boundingRect( m_uncheckedText ).width() );