Scrollbar not visible when it's the only child in a container

Bug #1188831 reported by Marc-Andre Laperle
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
overlay-scrollbar
New
Undecided
Unassigned
overlay-scrollbar (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

Using Ubuntu 13.04 (overlay-scrollbars 0.2.16+r359daily13.02.06-0ubuntu1). We have a GtkScrollbar that is managed "manually" in it's own container (GtkFixed). The size of the scrollbar is requested in order to allocate the right size for the container. However, because overlay scrollbar always request 0 width (or height for horizontal), the container is shrunk and the scrollbar is not visible. So, I think the scrollbar should at least request BAR_WIDTH when it knows it's alone in a container. There is also a problem with the scrollbar getting allocated to 0 position (x or y) and then being offset to -3 (BAR_SIZE) in hijacked_scrollbar_size_allocate. I think those should be clamped to be >= 0.

A bit of background:
The application demonstrating this bug is Eclipse using the Lttng plug-in. Eclipse uses the SWT library which interfaces with GTK. It maps GridLayout (a bit like a table) to GtkFixed containers. It allocates the cells by requesting the size of gtk widgets (gtk_xyz_size_request) then allocating the container size. The bug appears in the TMF events editor because a virtual table is used so the scrollar bar has to be managed "manually" in its own container.

I will submit a fix and screenshots.

Related branches

Revision history for this message
Marc-Andre Laperle (malaperle) wrote :
Revision history for this message
Marc-Andre Laperle (malaperle) wrote :
Changed in overlay-scrollbar (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Marc-Andre Laperle (malaperle) wrote :
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.