diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-09-22 10:37:47 +0300 |
---|---|---|
committer | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-09-22 09:07:02 +0000 |
commit | 1c2adf47697214ec5596d800dc38e9f88cd763ca (patch) | |
tree | 662e8386b1c812cb0ab15872064120ae3549a257 | |
parent | 535dc058d67ce9600acc2e2c110f9917f9ef1add (diff) |
Enable scroll bars on side widget
If the dynamic page list becomes too long to fit the current window
height, enable scrolling instead of forcing the user to resize the
window.
Task-number: QTIFW-1966
Change-Id: Ifc1f1424d3e626c5378a1ed65194489387ad0bed
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
-rw-r--r-- | src/libs/installer/packagemanagergui.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp index 0ad9c90d3..52719922a 100644 --- a/src/libs/installer/packagemanagergui.cpp +++ b/src/libs/installer/packagemanagergui.cpp @@ -340,12 +340,10 @@ PackageManagerGui::PackageManagerGui(PackageManagerCore *core, QWidget *parent) m_pageListWidget->setFrameShape(QFrame::NoFrame); m_pageListWidget->setMinimumWidth(200); // The widget should be view-only but we do not want it to be grayed out, - // so instead of calling setEnabled(false), do not accept keyboard focus - // and disable delivery of mouse events. + // so instead of calling setEnabled(false), do not accept focus. m_pageListWidget->setFocusPolicy(Qt::NoFocus); - m_pageListWidget->setAttribute(Qt::WA_TransparentForMouseEvents); m_pageListWidget->setSelectionMode(QAbstractItemView::NoSelection); - m_pageListWidget->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + m_pageListWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); QVBoxLayout *sideWidgetLayout = new QVBoxLayout(sideWidget); @@ -467,6 +465,8 @@ void PackageManagerGui::updatePageListWidget() QFont currentItemFont = item->font(); currentItemFont.setBold(true); item->setFont(currentItemFont); + // Current item should be always visible on the list + m_pageListWidget->scrollToItem(item); } else if (!visitedPages().contains(id)) { item->setFlags(item->flags() & ~Qt::ItemIsEnabled); } |