Skip to content

Commit 265638e

Browse files
committed
Change fast passwords place for OSX
1 parent 3453de3 commit 265638e

6 files changed

+78
-10
lines changed

config.h.in

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66
#include <QDebug>
77
#endif
88

9-
#define DEFAULT_ICON_THEME "oxygen-internal"
9+
#define DEFAULT_ICON_THEME "classic-internal"

model/basketmodel.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -812,6 +812,7 @@ void BasketModel::reloadSettings()
812812
{
813813
QSettings set;
814814
itemsColor = set.value(tr("ItemColor"), QColor(Qt::darkBlue)).value<QColor>();
815+
emit primaryChanged();
815816
}
816817
void BasketModel::initRoot()
817818
{

src/mainwindow.cpp

+16-6
Original file line numberDiff line numberDiff line change
@@ -696,15 +696,25 @@ void MainWindow::generateContextPrimaries()
696696
}
697697

698698
if ( primaryActions->actions().size() > 0 ) {
699+
700+
bool inTray = true;
699701
#ifdef Q_WS_MAC
700-
foreach ( QAction *act, primaryActions->actions() ) {
701-
macDockMenu->addAction(act);
702+
QSettings set;
703+
QString fastPlace = set.value("FastPasswordsPlace", QString("dock")).toString();
704+
705+
if ( fastPlace.contains( QString("dock") ) ) {
706+
707+
foreach ( QAction *act, primaryActions->actions() ) {
708+
macDockMenu->addAction(act);
709+
}
710+
qt_mac_set_dock_menu(macDockMenu);
702711
}
703-
qt_mac_set_dock_menu(macDockMenu);
704-
#else
705-
trayIconMenu->insertActions(minimizeAction, primaryActions->actions());
706-
trayIconMenu->insertSeparator(minimizeAction);
712+
inTray = fastPlace.contains ( QString("tray") );
707713
#endif
714+
if ( inTray ) {
715+
trayIconMenu->insertActions(minimizeAction, primaryActions->actions());
716+
trayIconMenu->insertSeparator(minimizeAction);
717+
}
708718
}
709719
}
710720
void MainWindow::primaryActionsTriggered(QAction *act)

src/settingsdialog.cpp

+32-1
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,20 @@ SettingsDialog::SettingsDialog(QWidget *parent) :
4343
#endif
4444
m_ui->comboBoxIconTheme->addItem( trUtf8("Современная (oxygen)"), QString("oxygen-internal") );
4545
m_ui->comboBoxIconTheme->addItem( trUtf8("Классическая"), QString("classic-internal") );
46+
m_ui->comboBoxIconTheme->setCurrentIndex( getIconThemeIndex( iconTheme) );
4647

48+
/* Mac OS X fast passwords */
49+
#if defined(Q_WS_MAC)
50+
QString fastPlace = set.value(QString("FastPasswordsPlace"), QString("dock")).toString();
4751

48-
m_ui->comboBoxIconTheme->setCurrentIndex( getIconThemeIndex( iconTheme) );
52+
m_ui->comboBoxFastPasswords->addItem ( trUtf8("Dock + Tray"), QString("dock_tray") );
53+
m_ui->comboBoxFastPasswords->addItem ( trUtf8("Dock"), QString("dock") );
54+
m_ui->comboBoxFastPasswords->addItem ( trUtf8("Tray"), QString("tray") );
55+
56+
m_ui->comboBoxFastPasswords->setCurrentIndex( getFastPlace ( fastPlace ) );
57+
#else
58+
m_ui->groupBoxOSSpecified->hide();
59+
#endif
4960
}
5061
SettingsDialog::~SettingsDialog()
5162
{
@@ -110,6 +121,11 @@ void SettingsDialog::on_buttonBox_clicked(QAbstractButton* button)
110121
QString themeName = m_ui->comboBoxIconTheme->itemData(
111122
m_ui->comboBoxIconTheme->currentIndex() ).toString();
112123
set.setValue("IconTheme", themeName );
124+
#if defined(Q_WS_MAC)
125+
QString fastPlace = m_ui->comboBoxFastPasswords->itemData(
126+
m_ui->comboBoxFastPasswords->currentIndex() ).toString();
127+
set.setValue("FastPasswordsPlace", fastPlace);
128+
#endif
113129

114130
QIcon::setThemeName( themeName );
115131

@@ -160,3 +176,18 @@ int SettingsDialog::getIconThemeIndex (const QString &themeName) const
160176

161177
return it_idx;
162178
}
179+
#if defined(Q_WS_MAC)
180+
int SettingsDialog::getFastPlace ( const QString &place ) const
181+
{
182+
int idx = -1;
183+
if ( place == QString("dock_tray") )
184+
idx = 0;
185+
else if ( place == QString("dock") )
186+
idx = 1;
187+
else if ( place == QString("tray") )
188+
idx = 2;
189+
else
190+
idx = 1;
191+
return idx;
192+
}
193+
#endif

src/settingsdialog.h

+3
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ class SettingsDialog : public QDialog {
3131

3232
void setColorToItLabel(QColor &clr);
3333
int getIconThemeIndex(const QString &themeName) const;
34+
#if defined(Q_WS_MAC)
35+
int getFastPlace( const QString &place ) const;
36+
#endif
3437

3538
private slots:
3639
void on_buttonBox_clicked(QAbstractButton* button);

ui/settingsdialog.ui

+25-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<rect>
77
<x>0</x>
88
<y>0</y>
9-
<width>480</width>
10-
<height>364</height>
9+
<width>470</width>
10+
<height>541</height>
1111
</rect>
1212
</property>
1313
<property name="windowTitle">
@@ -174,6 +174,29 @@
174174
</layout>
175175
</widget>
176176
</item>
177+
<item>
178+
<widget class="QGroupBox" name="groupBoxOSSpecified">
179+
<property name="title">
180+
<string>Специфичные настройки</string>
181+
</property>
182+
<layout class="QVBoxLayout" name="verticalLayout_5">
183+
<item>
184+
<layout class="QHBoxLayout" name="horizontalLayout_6">
185+
<item>
186+
<widget class="QLabel" name="labelFastPassword">
187+
<property name="text">
188+
<string>Расположение &quot;быстрых паролей&quot;:</string>
189+
</property>
190+
</widget>
191+
</item>
192+
<item>
193+
<widget class="QComboBox" name="comboBoxFastPasswords"/>
194+
</item>
195+
</layout>
196+
</item>
197+
</layout>
198+
</widget>
199+
</item>
177200
<item>
178201
<spacer name="verticalSpacer">
179202
<property name="orientation">

0 commit comments

Comments
 (0)