From 6d31af676eb4761880fdb1f63612efc31a5604b2 Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Sat, 30 Jun 2012 18:25:09 +0300 Subject: [PATCH] Fix keyboard focus issues on Main window --- src/mainwindow.cpp | 1 - src/transferlistfilterswidget.h | 8 ++++++-- src/transferlistwidget.cpp | 3 +++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 80b6a90c9..ba3ddb040 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -164,7 +164,6 @@ MainWindow::MainWindow(QWidget *parent, const QStringList& torrentCmdLine) : QMa // Transfer List tab transferList = new TransferListWidget(hSplitter, this, QBtSession::instance()); - transferList->setFocusPolicy(Qt::NoFocus); properties = new PropertiesWidget(hSplitter, this, transferList); transferListFilters = new TransferListFiltersWidget(vSplitter, transferList); hSplitter->addWidget(transferList); diff --git a/src/transferlistfilterswidget.h b/src/transferlistfilterswidget.h index bc42d31d2..786a3df9e 100644 --- a/src/transferlistfilterswidget.h +++ b/src/transferlistfilterswidget.h @@ -65,6 +65,9 @@ public: setAcceptDrops(true); setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); setStyleSheet("QListWidget { background: transparent; border: 0 }"); +#if defined(Q_WS_MAC) + setAttribute(Qt::WA_MacShowFocusRect, false); +#endif } // Redefine addItem() to make sure the list stays sorted @@ -162,6 +165,9 @@ public: // Height is fixed (sizeHint().height() is used) setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); setStyleSheet("QListWidget { background: transparent; border: 0 }"); +#if defined(Q_WS_MAC) + setAttribute(Qt::WA_MacShowFocusRect, false); +#endif } protected: @@ -203,14 +209,12 @@ public: vLayout->addWidget(torrentsLabel); statusFilters = new StatusFiltersWidget(this); vLayout->addWidget(statusFilters); - statusFilters->setFocusPolicy(Qt::NoFocus); QLabel *labelsLabel = new QLabel(tr("Labels")); labelsLabel->setIndent(2); labelsLabel->setFont(font); vLayout->addWidget(labelsLabel); labelFilters = new LabelFiltersList(this); vLayout->addWidget(labelFilters); - labelFilters->setFocusPolicy(Qt::NoFocus); setLayout(vLayout); labelFilters->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); statusFilters->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); diff --git a/src/transferlistwidget.cpp b/src/transferlistwidget.cpp index a14e79b69..851e3f6b9 100644 --- a/src/transferlistwidget.cpp +++ b/src/transferlistwidget.cpp @@ -107,6 +107,9 @@ TransferListWidget::TransferListWidget(QWidget *parent, MainWindow *main_window, setItemsExpandable(false); setAutoScroll(true); setDragDropMode(QAbstractItemView::DragOnly); +#if defined(Q_WS_MAC) + setAttribute(Qt::WA_MacShowFocusRect, false); +#endif // Default hidden columns if (!column_loaded) {