[GTK3] Scrolling list view with the keyboard doesn't work

Bug #830258 reported by Matthew Paul Thomas
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
software-center (Ubuntu)
Fix Released
High
Matthew McGowan

Bug Description

software-center-gtk3 trunk r2155, Ubuntu Ocelot

1. Go to a list view, e.g. the "System" category.
2. Click on a list item near the bottom of the screen.
3. Press the Down key a few times.

What happens: Eventually the selection is not visible, because it is off the bottom of the window.
What should happen: The list scrolls to reveal the selected item each time.

This is an accessibility problem.

Tags: a11y
Changed in software-center (Ubuntu):
importance: Undecided → High
Revision history for this message
Esmaeil MIRZAEE (esmaeilmirzaee) wrote :

In Bug #524567, The scrolling is rather slow. There's a lot of flashing of "More Info" and "Install" buttons, visually trailing behind the highlighting of the selected item.

Revision history for this message
Matthew McGowan (mmcg069) wrote :

This bug is caused by the fact that we have a treeview (which implements its own scrollable interface) parented by a vbox itself parented by a viewport. This combination seems to break the treeview keyboard scrolling.

This widget arrangement was introduced to allow the appcount to be displayed at the bottom of the listview.

This is a tricky bug to fix as it stands. My proposal is to move the appcount into the header widget (the widget with the sort mode combobox) beneath the categorisation label. This way we can simplify the widget arrangement, in turn fixing this bug.

Moreover, while the appcount is probably not of huge interest to users, I believe the appcount in the header, where it is always visible makes more sense than hiding it at the bottom of a (potentially long) list.

I have linked a branch which demonstrates the proposal.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

Nice suggestion, but I think the number of items probably isn't nearly important enough to be shown that prominently.

Could the problem be fixed instead by making the heading and menu at the top, and the count at the bottom, scroll together with the list? I.e. they act as an unselectable first item for the list. That's what I'd half-imagined originally, though I see that I never made it explicit in a sketch. Would that avoid the need for the vbox?

If not, I think the next best solution is to drop the count altogether until the treeview breakage is fixed.

Revision history for this message
Matthew McGowan (mmcg069) wrote :

I can't come up with a simple fix for this issue, unless anyone else knows a nice way to solve this, i think we will have to go with mpt's plan C and drop the app count altogether for the time being. :(

See linked branch for the change.

Changed in software-center (Ubuntu):
status: New → In Progress
assignee: nobody → Matthew McGowan (mmcg069)
Changed in software-center (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.6 KiB)

This bug was fixed in the package software-center - 4.1.22

---------------
software-center (4.1.22) oneiric; urgency=low

  [ Gary Lasker ]
  * data/ubuntu-software-center.desktop.in,
    debian/rules,
    setup.py,
    software-center,
    software-center-gtk2,
    softwarecenter/toolkit.py:
    - launch the new UI using 'software-center', add script
      to launch the old version if feeling nostalgic (LP: #839257)
  * softwarecenter/ui/gtk3/views/appdetailsview_gtk.py:
    - fix incorrect ellipsize for title and summary in the
      details view (LP: #842271)
  * softwarecenter/ui/gtk3/panes/availablepane.py,
    softwarecenter/ui/gtk3/session/viewmanager.py:
    - hide the search field when in the purchase
      view (LP: #844883)
  * softwarecenter/ui/gtk3/views/catview_gtk.py:
    - don't create the what's new panel if we don't have the
      corresponding category (LP: #835129)
  * softwarecenter/ui/gtk3/panes/installedpane.py:
    - fix crash in rebuild_categorised_view while viewing
      installed items (LP: #834260)
  * test/gtk3/test_catview.py,
    test/gtk3/test_panes.py,
    test/test_addons.py,
    test/test_package_info.py:
    - fix unit tests
  * setup.py:
    - fix build error when merging authors list
  * merged lp:~gary-lasker/software-center/pyflakes-fixes, no
    user visible changes, only code cleanup
  * po/software-center.pot:
    - refresh .pot file

  [ Matthew McGowan ]
  * data/ui/gtk3/css/softwarecenter.css,
    softwarecenter/ui/gtk3/views/appdetailsview_gtk.py:
    - fix grey addon label, only pkgname should be grey
      (LP: #838607)
  * softwarecenter/ui/gtk3/widgets/description.py,
    softwarecenter/utils.py,
    test/test_description_norm.py:
    - description formatting improvements, update unit test
  * data/ui/gtk3/css/softwarecenter.css,
    softwarecenter/ui/gtk3/widgets/cellrenderers.py:
    - use css to set border-radius of cellrenderer button
  * softwarecenter/ui/gtk3/views/appview.py:
    - disable appcount display at the bottom of list views
      for now to allow keyboard scrolling to work (LP: #830258)
  * lp:~mmcg069/software-center/lobby-tweaks:
    - restore tile borders but disable the checkerboard
      rendering, color tweaks and other improvements to the
      title area visuals
  * merge lp:~mmcg069/software-center/image-data-cleanup:
    - cleanup unused image files (LP: #839736)
  * softwarecenter/ui/gtk3/panes/softwarepane.py:
    - fix doubled search results (LP: #840235)
  * softwarecenter/ui/gtk3/app.py:
    - fix "Copy Web Link" feature (LP: #830291)

  [ Andrea Cimitan ]
  * softwarecenter/ui/gtk3/widgets/symbolic_icons.py:
    - Fix blurriness of toolbar icons, reduce shadow alpha level

  [ Gabor Kelemen ]
  * po/POTFILES.in:
    - additional i18n fixes (LP: #836346)

  [ Kiwinote ]
  * remove the old webkit ui
  * remove the need for dummy-screenshot-ubuntu.png (LP: #837223)
  * data/ui/gtk3/SoftwareCenter.ui,
    softwarecenter/ui/gtk3/app.py:
    - make all the accelerators work again (LP: #640426, LP: #660050,
      LP: #828233, LP: #830238, LP: #834988, LP: #843682)
      also fixes (LP: #823094, LP: #837062)
  * softwarecenter/db/appfilter.py,
    softwarecenter/ui/...

Read more...

Changed in software-center (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.