Docked dialogs lost focus indicator (shading of title bar) in trunk

Bug #950556 reported by su_v
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Gnome Development Library
New
Wishlist
Inkscape
Fix Released
Low
Alex Valavanis

Bug Description

Docked dialogs used to indicate if they had input focus by drawing the title bar in a darker shade. Current trunk lost this feature, probably with the merges of upstream changes in libgdl (alongside with the symbol in the title bar to minimize the dialog now pointing in the wrong direction).

Not being able to determine the current focus area easily often results in keyboard shortcuts getting caught in the dialog context instead of the canvas area (thus triggering other bugs, e.g. with the layers list).

Could this feature (or something similar) be restored, or will libgdl no longer allow this (and local changes in Inkscape had not been accepted upstream)?

Tested and reproduced with current trunk on
Mac OS X 10.5.8 (GTK+ 2.24.4, 2.24.10), X11 and Quartz backend
OS X 10.7.2 (GTK+ 2.24.10), X11 backend

Tags: regression ui
Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Forwarded upstream.

GDL completely changed its drawing routine a long time ago, and our patch no longer worked so I "temporarily" dropped it. The upstream developers are very helpful, and keen to adopt useful enhancements so if anyone has a way to fix this, we can probably push it into upstream GDL.

Changed in inkscape:
importance: Undecided → Low
status: New → Triaged
Changed in gdl:
importance: Unknown → Wishlist
status: Unknown → New
Revision history for this message
Alex Valavanis (valavanisalex) wrote :

I've committed a fix in lp:inkscape r11377. Note that focus is indicated around the grip using the focus indicator defined by the current style, rather than by explicitly changing the background colour.

Revision history for this message
Alex Valavanis (valavanisalex) wrote :

I've sent a similar patch upstream.

Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Note that it looks better in GTK+ 3! (see screenshot)

Changed in inkscape:
status: Triaged → Fix Released
assignee: nobody → Alex Valavanis (valavanisalex)
Revision history for this message
su_v (suv-lp) wrote :

The fix in revision 11377 apparently triggers a regression with current GTK2/Quartz 2.24.13 [1]:
1) The first time the preferences dialog is opened in the current session, it automatically reopens when closed. Doesn't happen after closing it a second time.
2) Detached dockable dialogs cause a constant CPU load (12-20%) while open, the CPU load goes back to normal when minimizing the dialog, or when attaching it to the main dock in the document window.

The regression seems limited to GTK2 builds with the Quartz backend: neither GTK2/X11 (2.24.13, no patches) nor the experimental GTK3 builds (GTK+/Quartz 3.6.2, GDL 3.6.2) are affected AFAICT.

Testing with available archived Quartz builds:
- not reproduced with r11376
- reproduced with r11378 and later revisions
- not reproduced with experimental GTK3 builds

Testing with current trunk (r11895):
(Partially) reverting the changes from r11377 (see attached diff) restores the old behavior wrt to the preferences dialog not properly closing and wrt to CPU usage for Quartz-based GTK2 builds (if GDK_WINDOWING_QUARTZ is defined) - please review: I can't tell what unintended side-effects the changes might introduce.

[1] possibly fueled by recent changes in GTK2:
- not reproduced with GTK+/Quartz 2.24.10 (+patches from git 2.24 branch up to da324fa2) on 32bit Mac OS X 10.5
- reproduced with GTK+/Quartz 2.24.13 (+patches from git 2.24 branch up to 35a9322e) on 64bit OS X 10.7.4

Revision history for this message
su_v (suv-lp) wrote :
Revision history for this message
su_v (suv-lp) wrote :

Regressions with Quartz-backend filed as separate report:
- Bug #1363998 “trunk: focus indicator for dockable dialogs introduced regressions with GTK2/Quartz (rev >= 11377)”
  <https://bugs.launchpad.net/inkscape/+bug/1363998>

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.