After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 368234 - Incorrect tabs rendering during reorder with rounded themes
Incorrect tabs rendering during reorder with rounded themes
Status: RESOLVED OBSOLETE
Product: gtk+
Classification: Platform
Component: Widget: GtkNotebook
2.10.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
: 488809 499187 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-10-31 11:22 UTC by Carlos Garnacho
Modified: 2018-02-10 03:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
workaround (741 bytes, patch)
2006-10-31 11:24 UTC, Carlos Garnacho
committed Details | Review

Description Carlos Garnacho 2006-10-31 11:22:21 UTC
I'm not really sure if this bug belongs to gtk+ or gtk-engines, but I've got the feeling that it belongs to gtk+, as the engines methods should only care to paint what they're told (in this case tabs) independently of the context.

Now the bug: when tabs reordering happens, the dragged tab is painted to a rectangular GdkWindow, if the theme paints rounded tabs, black corners can be seen during the operation.

I'm going to attach a workaround that previously paints the window with bg[GTK_STATE_NORMAL], ideally those would have to be transparent (or the window shaped), but I've found the following issues:

1) GdkWindow obeying alpha transparencies in a cairo_t requires an ARGB colormap and compositing enabled, otherwise it paints a black region.
2) gdk_window_shape_combine_mask() is hard to use here, the tab is painted inside the engine and (AFAICS) we can't guess reliably the GdkBitmap mask from a cairo_t

for a fix that works in most of the environments, couldn't parts with alpha 0.0 in the cairo_t be treated as the shape mask? Maybe this belongs to a distinct bug to gdk, I'll attach the workaround...
Comment 1 Carlos Garnacho 2006-10-31 11:24:15 UTC
Created attachment 75718 [details] [review]
workaround
Comment 2 Baptiste Mille-Mathias 2007-05-21 16:01:23 UTC
Hello dear gtk+ maintainers,

would it be possible to review the patch previously attached ?

thank you.
Comment 3 Philip Withnall 2007-05-26 16:37:14 UTC
Patch 75718 applies cleanly. Reviewing it would take little time.

(Working on http://mail.gnome.org/archives/gtk-devel-list/2007-March/msg00148.html)
Comment 4 Carlos Garnacho 2007-10-21 15:46:10 UTC
*** Bug 488809 has been marked as a duplicate of this bug. ***
Comment 5 Christian Persch 2007-11-23 15:39:30 UTC
*** Bug 499187 has been marked as a duplicate of this bug. ***
Comment 6 Jakub 'Livio' Rusinek 2007-12-22 18:23:29 UTC
I've noticed good rendering in Firefox, but Firefox is not using GTK natively, so this is funny :> .
Comment 7 Jakub 'Livio' Rusinek 2007-12-22 18:30:20 UTC
Video: http://up.wklej.org/download.php?id=900c563bfd2c48c16701acca83ad858a
Comment 8 Matthias Clasen 2008-08-02 02:43:05 UTC
The workaround looks ok to me, as long as you add a comment explaining that this is a a workaround to make themes with rounded tabs not look bad during dnd.
Comment 9 Carlos Garnacho 2008-08-04 14:52:52 UTC
Thanks! just committed it with a big fat FIXME :), but I think the underlying problem of this bug still remains, should we keep this open?
Comment 10 Matthias Clasen 2018-02-10 03:33:20 UTC
We're moving to gitlab! As part of this move, we are closing bugs that haven't seen activity in more than 5 years. If this issue is still imporant to you and
still relevant with GTK+ 3.22 or master, please consider creating a gitlab issue
for it.