-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lp1719474 Follow-up: Fix navigation usability issues in sidebar tree #1620
Conversation
I've found a better solution by correctly distinguishing clicks and key presses. This avoids the timeout when clicking and we can choose a timeout that works best just for scrolling. I also forgot to mention that this usability issue also effects keyboard navigation within the sidebar tree, i.e. you can test the behavior without a controller just with your keyboard! Stay tuned... |
I've increased the timeout to 300 ms which works very well for me in most situations. |
Did a forced update to avoid changes in WLibrarySidebar that were unnecessary. |
Works good and LGTM. |
@@ -210,6 +210,8 @@ void Library::bindSidebarWidget(WLibrarySidebar* pSidebarWidget) { | |||
connect(m_pSidebarModel, SIGNAL(selectIndex(const QModelIndex&)), | |||
pSidebarWidget, SLOT(selectIndex(const QModelIndex&))); | |||
connect(pSidebarWidget, SIGNAL(pressed(const QModelIndex&)), | |||
m_pSidebarModel, SLOT(pressed(const QModelIndex&))); | |||
connect(pSidebarWidget, SIGNAL(clicked(const QModelIndex&)), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change causes that the activate() is called twice.
From the discussion in #1619
A timeout of
250300 ms still feels responsive and scrolling slowly through the list of playlists and crates is possible. This new timeout is now used for every LibraryFeatureas a default, unless customized in a derived class!