GTK3 can't resize treeviewcolumn

Bug #1448969 reported by Marcin Szałowicz
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
GTK+
Fix Released
Medium
gtk+3.0 (Ubuntu)
Fix Released
Undecided
Lars Karlitski
Trusty
Fix Released
Undecided
Lars Karlitski
Utopic
Fix Released
Undecided
Lars Karlitski

Bug Description

This is a regression from 3.8 present until 3.12 (it is fixed on 3.14+).

Two issues regarding tree view columns:

1. When columns in a tree view are set to be resizeable and the horizontal scrollbar is shown, they cannot be resized.

2. When columns are of fixed width, the horizontal scrollbar is not visible when it should be.

The proposed fix is to backport a couple of reverts from gtk+ 3.14.

[Test Case]

For 1) Open nautilus and change it to list mode (Ctrl+1). Resize the window so that the horizontal scroll bar appears. The name column is not resizeable but should be with this fix applied.

For 2) Open gtk3-demo (from gtk-3-examples) and run the "Tree Store" demo (under "Tree View"). Resize the window so that content on the right gets hidden. No horizontal scrollbar becomes visible unless this fix is applied.

[Regression Potential]

Any application using gtk's tree view with visible columns is potentially affected. However, resizing columns is not a common operation and horizontal scrollbars should rarely be visible.

Revision history for this message
Marcin Szałowicz (lolek) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gtk+3.0 (Ubuntu):
status: New → Confirmed
Revision history for this message
Marcin Szałowicz (lolek) wrote :

Did a little more digging in, it seems that this commit 83e104b093f49ea452c25c370ce85cd247be4614 from https://github.com/GNOME/gtk.git fix the issues.
Tested on 14.04 32bit
Patch applied without any issues

Revision history for this message
Lars Karlitski (larsu) wrote :

Thanks for reporting and investigating this bug. Reverting the commit you mentioned breaks the GTK_POLICY_NEVER case for me (as mentioned in the commit message). Cherry-picking a couple of reverts from the 3.14 cycle seems to work though. Attached is a combined patch of those commits. I'd appreciate if you could test that one as well.

Changed in gtk+3.0 (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Lars Uebernickel (larsu)
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "0001-treeview-enable-column-resizing-with-horizontal-scro.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Iain Lane (laney)
Changed in gtk+3.0 (Ubuntu):
status: In Progress → Fix Released
Changed in gtk+3.0 (Ubuntu Trusty):
status: New → In Progress
Changed in gtk+3.0 (Ubuntu Utopic):
status: New → In Progress
Changed in gtk+3.0 (Ubuntu Trusty):
assignee: nobody → Lars Uebernickel (larsu)
Changed in gtk+3.0 (Ubuntu Utopic):
assignee: nobody → Lars Uebernickel (larsu)
Revision history for this message
Iain Lane (laney) wrote :

With an extra backport, the patch at least builds on trusty.

Could you please add SRU info to this bug?

Revision history for this message
Iain Lane (laney) wrote :

(The reporter of the duplicate bug [thanks again] added some SRU info there which you might want to base on)

Revision history for this message
Marcin Szałowicz (lolek) wrote :

it seems that this patch breaks the tests:

TEST: tree-relationships... (pid=26294)
  /a11y/tree/focus: FAIL
GTester: last random seed: R02S144251430f6c8f22272d1068c646ed59
(pid=26315)
  /a11y/tree/relations: FAIL
GTester: last random seed: R02S66403bd46325510041b96fa65ba6bc8e
(pid=26331)

tbh not sure why :/

Revision history for this message
Iain Lane (laney) wrote :

It's fixed in bzr. See the linked branch.

Revision history for this message
Iain Lane (laney) wrote :

14.04 package uploaded

Revision history for this message
Iain Lane (laney) wrote :

& 14.10 too

Lars Karlitski (larsu)
description: updated
Changed in gtk:
importance: Unknown → Medium
status: Unknown → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Marcin, or anyone else affected,

Accepted gtk+3.0 into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gtk+3.0/3.10.8-0ubuntu1.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

tags: added: trusty utopic
Changed in gtk+3.0 (Ubuntu Trusty):
status: In Progress → Fix Committed
tags: added: verification-needed
Changed in gtk+3.0 (Ubuntu Utopic):
status: In Progress → Fix Committed
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Marcin, or anyone else affected,

Accepted gtk+3.0 into utopic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gtk+3.0/3.12.2-0ubuntu15.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Revision history for this message
Marcin Szałowicz (lolek) wrote :

tested libgtk-3-0_3.10.8-0ubuntu1.5_amd64.deb

tags: added: verification-done
removed: verification-needed
Revision history for this message
Thiago Bellini (bellini666) wrote :

I don't understand why the work I've done on https://code.launchpad.net/~hackedbellini/gtk/fix_1427352/+merge/251508 was discarded.

The patch here and the testunit fix are basically a copy of what I've done there. Not saying that you copied it intentionally, but it is already there and merged since 2015-03-02).

My commit simply vanished from the repository: https://code.launchpad.net/~ubuntu-desktop/gtk/ubuntugtk3trusty

More info at https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/1427352 (note that even the bug is older than this one, and was marked as duplicated)

Revision history for this message
Iain Lane (laney) wrote : Re: [Bug 1448969] Re: GTK3 can't resize treeviewcolumn

On Sun, May 10, 2015 at 07:18:58PM -0000, Thiago Bellini wrote:
> I don't understand why the work I've done on
> https://code.launchpad.net/~hackedbellini/gtk/fix_1427352/+merge/251508
> was discarded.
>
> The patch here and the testunit fix are basically a copy of what I've
> done there. Not saying that you copied it intentionally, but it is
> already there and merged since 2015-03-02).
>
> My commit simply vanished from the repository:
> https://code.launchpad.net/~ubuntu-desktop/gtk/ubuntugtk3trusty

No. I merged the two versions of the same fix and then uploaded it.

You are credited in the changelog. Look:

  [ Thiago Bellini Ribeiro / Lars Uebernickel ]
  * debian/patches/0001-treeview-enable-column-resizing-with-horizontal-scro.patch:
    Cherry-pick some reverts from upstream to fix treeview column resizing
    with horizontal scrollbars shown.
    - Port of an upstream bug:
      https://bugzilla.gnome.org/show_bug.cgi?id=731054 (LP: #1448969)

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Revision history for this message
Thiago Bellini (bellini666) wrote :

@laney: Oh, now I see my confusion.

I could not find my commit on "bzr log", but I just noticed that it actually has a merge you did there. I'm more used to git, where a merge will display the merged commits on the log, and after not finding mine, I thought it went to the trash.

Sorry about that.

Anyway, I still didn't get why you needed to do this: http://bazaar.launchpad.net/~ubuntu-desktop/gtk/ubuntugtk3trusty/revision/345

From what I can tell, it basically merged revert-better-resize-of-expandable-columns.patch and revert-use-minumum-natural-size-semantics.patch into 0001-treeview-enable-column-resizing-with-horizontal-scro.patch. Is that all or is there something else done there?

Also, one of those patches (don't remember which one exactly) also had a fix for the testsuit issue you saw here (and you fixed by doing this http://bazaar.launchpad.net/~ubuntu-desktop/gtk/ubuntugtk3trusty/revision/346). Seeing that commit was one of the reasons I got confused, because I was sure I had fixed it before.

Revision history for this message
Chris J Arges (arges) wrote :

The following regressions have been found with this upload:

http://people.canonical.com/~ubuntu-archive/pending-sru.html:
autopkgtest for apport 2.14.1-0ubuntu3.10: Regression (Jenkins: public, private)
autopkgtest for deja-dup 30.0-0ubuntu4: Regression (Jenkins: public, private)
autopkgtest for gvfs 1.20.3-0ubuntu1.1: Regression (Jenkins: public, private)
autopkgtest for notify-osd 0.9.35+14.04.20140213-0ubuntu1: Regression (Jenkins: public, private)
autopkgtest for ubuntu-release-upgrader 1:0.220.7: Regression (Jenkins: public, private)
autopkgtest for update-manager 1:0.196.13: Regression (Jenkins: public, private)

Can somebody check all of these?
Thanks,

Revision history for this message
Iain Lane (laney) wrote :

On Wed, Jun 03, 2015 at 01:22:44PM -0000, Chris J Arges wrote:
> The following regressions have been found with this upload:
>
> http://people.canonical.com/~ubuntu-archive/pending-sru.html:
> autopkgtest for apport 2.14.1-0ubuntu3.10: Regression (Jenkins: public, private)
> autopkgtest for deja-dup 30.0-0ubuntu4: Regression (Jenkins: public, private)
> autopkgtest for gvfs 1.20.3-0ubuntu1.1: Regression (Jenkins: public, private)
> autopkgtest for notify-osd 0.9.35+14.04.20140213-0ubuntu1: Regression (Jenkins: public, private)
> autopkgtest for ubuntu-release-upgrader 1:0.220.7: Regression (Jenkins: public, private)
> autopkgtest for update-manager 1:0.196.13: Regression (Jenkins: public, private)
>
> Can somebody check all of these?

They all look variously like test harness issues or false negatives due
to the basline being unclean.

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk+3.0 - 3.10.8-0ubuntu1.5

---------------
gtk+3.0 (3.10.8-0ubuntu1.5) trusty; urgency=low

  [ Thiago Bellini Ribeiro / Lars Uebernickel ]
  * debian/patches/0001-treeview-enable-column-resizing-with-horizontal-scro.patch:
    Cherry-pick some reverts from upstream to fix treeview column resizing
    with horizontal scrollbars shown.
    - Port of an upstream bug:
      https://bugzilla.gnome.org/show_bug.cgi?id=731054 (LP: #1448969)

  [ Iain Lane ]
  * Cherry-pick b4282e5 too to fix testsuite.

 -- Thiago Bellini Ribeiro <email address hidden> Thu, 30 Apr 2015 12:58:28 +0100

Changed in gtk+3.0 (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
Chris J Arges (arges) wrote : Update Released

The verification of the Stable Release Update for gtk+3.0 has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk+3.0 - 3.12.2-0ubuntu15.3

---------------
gtk+3.0 (3.12.2-0ubuntu15.3) utopic; urgency=medium

  [ Thiago Bellini Ribeiro / Lars Uebernickel ]
  * debian/patches/0001-treeview-enable-column-resizing-with-horizontal-scro.patch:
    Cherry-pick some reverts from upstream to fix treeview column resizing
    with horizontal scrollbars shown.
    - Port of an upstream bug:
      https://bugzilla.gnome.org/show_bug.cgi?id=731054 (LP: #1448969)

  [ Iain Lane ]
  * Cherry-pick b4282e5 too to fix testsuite.

 -- Iain Lane <email address hidden> Thu, 30 Apr 2015 13:10:11 +0100

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

Duplicates of this bug

Other bug subscribers

Remote bug watches

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