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 669687 - spell checking menu has lot of empty space
spell checking menu has lot of empty space
Status: RESOLVED NOTGNOME
Product: gtk+
Classification: Platform
Component: Widget: Other
3.3.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2012-02-08 16:06 UTC by Sebastien Bacher
Modified: 2012-02-08 22:40 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastien Bacher 2012-02-08 16:06:59 UTC
Using gedit 3.3.3:
- start gedit
- check the "highlight misspelled words" option
- type a buggy word, i.e "bog"
- right click on it

what happens:
the menu open has 

"undo
redo
----
spelling suggestions >
<white line>
<white line>
<white line>
<white line>
<white line>
<white line>"

stdout gets those warnings:

"Gtk-WARNING **: drawing failure for widget `GtkMenuItem': invalid matrix (not invertible)

Gtk-WARNING **: drawing failure for widget `GtkMenu': invalid matrix (not invertible)

Gtk-WARNING **: drawing failure for widget `GtkMenuItem': invalid matrix (not invertible)

Gtk-WARNING **: drawing failure for widget `GtkMenu': invalid matrix (not invertible)

Gtk-WARNING **: drawing failure for widget `GtkMenuItem': invalid matrix (not invertible)

Gtk-WARNING **: drawing failure for widget `GtkMenu': invalid matrix (not invertible)"
Comment 1 Ignacio Casal Quinteiro (nacho) 2012-02-08 16:09:29 UTC
I do not have this problem with 3.2 so it feels to me like a gtk+ bug.
Comment 2 Sebastien Bacher 2012-02-08 16:10:19 UTC
stacktrace of the warning:

"#0  g_log (log_domain=0x53563b "Gtk", log_level=G_LOG_LEVEL_WARNING, format=0x601bfc "drawing failure for widget `%s': %s") at /build/buildd/glib2.0-2.31.16/./glib/gmessages.c:788
  • #1 _gtk_widget_draw_internal
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 5743
  • #2 _gtk_widget_draw_internal
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 5707
  • #3 gtk_container_propagate_draw
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 3362
  • #4 gtk_container_draw_child
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 3209
  • #5 gtk_menu_shell_forall
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkmenushell.c line 1223
  • #6 gtk_container_forall
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 2034
  • #7 gtk_container_draw
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 3226
  • #8 gtk_menu_draw
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkmenu.c line 3098
  • #9 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkmarshalers.c line 85
  • #10 gtk_widget_draw_marshaller
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 821
  • #11 g_type_class_meta_marshal
    at /build/buildd/glib2.0-2.31.16/./gobject/gclosure.c line 885
  • #12 g_closure_invoke
    at /build/buildd/glib2.0-2.31.16/./gobject/gclosure.c line 774
  • #13 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.31.16/./gobject/gsignal.c line 3340
  • #14 g_signal_emit_valist
    at /build/buildd/glib2.0-2.31.16/./gobject/gsignal.c line 3043
  • #15 g_signal_emit
    at /build/buildd/glib2.0-2.31.16/./gobject/gsignal.c line 3090
  • #16 _gtk_widget_draw_internal
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 5731
  • #17 _gtk_widget_draw_internal
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 5707
  • #18 gtk_widget_send_expose
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkwidget.c line 5991
  • #19 gtk_main_do_event
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkmain.c line 1606
  • #20 _gdk_event_emit
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkevents.c line 71
  • #21 _gdk_window_process_updates_recurse
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 3894
  • #22 _gdk_window_process_updates_recurse
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 3939
  • #23 _gdk_window_process_updates_recurse
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 3939
  • #24 _gdk_window_process_updates_recurse
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 3939
  • #25 gdk_x11_window_process_updates_recurse
    at /build/buildd/gtk+3.0-3.3.14/./gdk/x11/gdkwindow-x11.c line 4779
  • #26 gdk_window_process_updates_internal
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 4080
  • #27 gdk_window_process_all_updates
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdkwindow.c line 4211
  • #28 gtk_container_idle_sizer
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 1684
  • #29 gdk_threads_dispatch
    at /build/buildd/gtk+3.0-3.3.14/./gdk/gdk.c line 745
  • #30 g_idle_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 4629
  • #31 g_main_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 2510
  • #32 g_main_context_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3047
  • #33 g_main_context_iterate
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3118
  • #34 g_main_context_iterate
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3055
  • #35 g_main_loop_run
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3312
  • #36 gtk_main
    at /build/buildd/gtk+3.0-3.3.14/./gtk/gtkmain.c line 1167
  • #37 main

Comment 3 Ignacio Casal Quinteiro (nacho) 2012-02-08 16:13:32 UTC
btw this works for me with jhbuild
Comment 4 Sebastien Bacher 2012-02-08 16:13:57 UTC
indeed, it seems a gtk issue, it doesn't happen when ldpreloading gtk 3.3.10 rather than the current version
Comment 5 Sebastien Bacher 2012-02-08 16:16:58 UTC
> btw this works for me with jhbuild

when did you build your gtk? it seems a recent issue if 3.3.10 didn't have it yet
Comment 6 Sebastien Bacher 2012-02-08 21:30:54 UTC
the issue seems a recent gtk breakage
Comment 7 Sebastien Bacher 2012-02-08 21:53:28 UTC
ok, IRC discussion suggests it's rather a theming issue, I opened
https://bugs.launchpad.net/ubuntu/+source/light-themes/+bug/929138
Comment 8 Matthias Clasen 2012-02-08 22:40:31 UTC
It sounds like it is related to recent changes in gtkmenu wrt to workarea and
scrolling. But the theme is almost certainly involved as well, seeing as you
are getting a cairo error out of the ::draw handler.

I can't reproduce this here with Adwaita or Raleigh.