GNOME Bugzilla – Bug 606883
Make eog GSEAL-compatible
Last modified: 2010-05-13 21:38:41 UTC
This is just a tracker bug to track what's left todo for eog being able to compile with GSEAL-enabled GLib/GTK+ libraries. See http://live.gnome.org/GnomeGoals/UseGseal for details. EogWindow: eog-window.c: In function 'eog_window_obtain_desired_size': eog-window.c:1381: error: 'GtkObject' has no member named 'flags' eog-window.c:1385: error: 'GtkWidget' has no member named 'allocation' eog-window.c:1386: error: 'GtkWidget' has no member named 'allocation' eog-window.c:1388: error: 'GtkObject' has no member named 'flags' eog-window.c:1392: error: 'GtkWidget' has no member named 'allocation' eog-window.c:1393: error: 'GtkWidget' has no member named 'allocation' eog-window.c:1399: error: 'GtkWidget' has no member named 'window' eog-window.c: In function 'eog_window_cmd_edit_toolbar': eog-window.c:2648: error: 'GtkDialog' has no member named 'vbox' eog-window.c:2661: error: 'GtkDialog' has no member named 'vbox' eog-window.c: In function 'eog_window_cmd_show_hide_bar': eog-window.c:2794: error: 'GtkObject' has no member named 'flags' eog-window.c:2804: error: 'GtkObject' has no member named 'flags' eog-window.c:2810: error: 'GtkObject' has no member named 'flags' eog-window.c: In function 'eog_window_drag_data_received': eog-window.c:4063: error: 'GtkSelectionData' has no member named 'target' eog-window.c:4069: error: 'GtkSelectionData' has no member named 'data' eog-window.c: In function 'eog_window_key_press': eog-window.c:4781: error: 'GtkContainer' has no member named 'focus_child' eog-window.c:4824: error: 'GtkContainer' has no member named 'focus_child' eog-window.c:4855: error: 'GtkContainer' has no member named 'focus_child' eog-window.c:4912: error: 'GtkContainer' has no member named 'focus_child' eog-window.c:4913: error: 'GtkObject' has no member named 'flags' EogSidebar: eog-sidebar.c: In function 'eog_sidebar_menu_position_under': eog-sidebar.c:243: error: 'GtkWidget' has no member named 'allocation' eog-sidebar.c:244: error: 'GtkWidget' has no member named 'allocation' eog-sidebar.c:244: error: 'GtkWidget' has no member named 'allocation' eog-sidebar.c: In function 'eog_sidebar_select_button_press_cb': eog-sidebar.c:260: error: 'GtkWidget' has no member named 'allocation' EogThumbNav eog-thumb-nav.c: In function 'eog_thumb_nav_scroll_event': eog-thumb-nav.c:91: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:91: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:91: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c:93: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c: In function 'eog_thumb_nav_adj_changed': eog-thumb-nav.c:112: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:112: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:112: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c: In function 'eog_thumb_nav_adj_value_changed': eog-thumb-nav.c:126: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:129: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:129: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:129: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c: In function 'eog_thumb_nav_scroll_step': eog-thumb-nav.c:150: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:151: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:151: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:151: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c:152: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:157: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c:157: error: 'GtkAdjustment' has no member named 'upper' eog-thumb-nav.c:157: error: 'GtkAdjustment' has no member named 'page_size' eog-thumb-nav.c:159: error: 'GtkAdjustment' has no member named 'value' eog-thumb-nav.c: In function 'eog_thumb_nav_init': eog-thumb-nav.c:360: error: 'GtkScrolledWindow' has no member named 'hscrollbar' EogScrollView: eog-scroll-view.c: In function 'update_scrollbar_values': eog-scroll-view.c:262: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:266: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:267: error: 'GtkAdjustment' has no member named 'page_increment' eog-scroll-view.c:268: error: 'GtkAdjustment' has no member named 'step_increment' eog-scroll-view.c:271: error: 'GtkAdjustment' has no member named 'lower' eog-scroll-view.c:272: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:273: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:273: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:273: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:273: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:274: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c:275: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c:291: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:292: error: 'GtkAdjustment' has no member named 'page_increment' eog-scroll-view.c:293: error: 'GtkAdjustment' has no member named 'step_increment' eog-scroll-view.c:295: error: 'GtkAdjustment' has no member named 'lower' eog-scroll-view.c:296: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:297: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:297: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:297: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:297: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:299: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c:300: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c: In function 'check_scrollbar_visibility': eog-scroll-view.c:383: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:384: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'paint_rectangle': eog-scroll-view.c:561: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:562: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'request_paint_area': eog-scroll-view.c:803: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:803: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:804: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:804: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'scroll_to': eog-scroll-view.c:865: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:865: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:865: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:865: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:871: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:871: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:871: error: 'GtkAdjustment' has no member named 'upper' eog-scroll-view.c:871: error: 'GtkAdjustment' has no member named 'page_size' eog-scroll-view.c:885: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:886: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:936: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c:937: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c: In function 'adjustment_changed_cb': eog-scroll-view.c:974: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c:974: error: 'GtkAdjustment' has no member named 'value' eog-scroll-view.c: In function 'set_zoom': eog-scroll-view.c:1050: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:1051: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'set_zoom_fit': eog-scroll-view.c:1100: error: 'GtkObject' has no member named 'flags' eog-scroll-view.c:1106: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:1107: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'display_key_press_event': eog-scroll-view.c:1152: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c:1153: error: 'GtkWidget' has no member named 'allocation' eog-scroll-view.c: In function 'eog_scroll_view_scroll_event': eog-scroll-view.c:1346: error: 'GtkAdjustment' has no member named 'page_increment' eog-scroll-view.c:1347: error: 'GtkAdjustment' has no member named 'page_increment' EogPrintPreview: eog-print-preview.c: In function 'get_current_image_coordinates': eog-print-preview.c:593: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c:594: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c: In function 'create_image_scaled': eog-print-preview.c:638: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c:639: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c: In function 'motion_notify_event_cb': eog-print-preview.c:920: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c:921: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c: In function 'eog_print_preview_draw': eog-print-preview.c:1005: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c:1006: error: 'GtkWidget' has no member named 'allocation' eog-print-preview.c: In function 'update_relative_sizes': eog-print-preview.c:1078: error: 'GtkWidget' has no member named 'allocation' EogCloseConfirmationDialog: eog-close-confirmation-dialog.c: In function 'eog_close_confirmation_dialog_init': eog-close-confirmation-dialog.c:181: error: 'GtkDialog' has no member named 'vbox' eog-close-confirmation-dialog.c: In function 'eog_close_confirmation_dialog_new': eog-close-confirmation-dialog.c:336: error: 'GtkWindow' has no member named 'group' eog-close-confirmation-dialog.c: In function 'build_single_img_dialog': eog-close-confirmation-dialog.c:440: error: 'GtkDialog' has no member named 'vbox' eog-close-confirmation-dialog.c: In function 'build_multiple_imgs_dialog': eog-close-confirmation-dialog.c:585: error: 'GtkDialog' has no member named 'vbox' EogPluginManager: eog-plugin-manager.c: In function 'menu_position_under_widget': eog-plugin-manager.c:571: error: 'GtkWidget' has no member named 'allocation' eog-plugin-manager.c:571: error: 'GtkWidget' has no member named 'allocation' eog-plugin-manager.c:573: error: 'GtkWidget' has no member named 'allocation' eog-plugin-manager.c:576: error: 'GtkWidget' has no member named 'allocation' eog-plugin-manager.c:576: error: 'GtkWidget' has no member named 'allocation' The toolbar editor will need porting as well, but as it's imported from libegg it might be already ported in another project. Also, we will need at least an replacement for GTK_WIDGET_REALIZED in GTK.
commit ac6f518e1870af98dc47389d695f7773debe3dda Author: Felix Riemann <friemann@gnome.org> Date: Wed Jan 13 22:15:14 2010 +0100 Make EogPrintPreview GSEAL-compatible commit f0837c4a76e5c95a140776e4421b3e094c306024 Author: Felix Riemann <friemann@gnome.org> Date: Wed Jan 13 19:53:48 2010 +0100 Make EogSidebar GSEAL-compatible
commit 35e354e9530e1915c0bca0653af378788c2369a7 Author: Felix Riemann <> Date: Sun Jan 17 13:58:55 2010 +0100 Make EogCloseConfirmationDialog GSEAL-compatible
commit b6aa6dd2209b09850a03bde1765e059b432eb6ed Author: Felix Riemann <> Date: Fri Jan 29 21:37:54 2010 +0100 Make EogWindow GSEAL-compatible as far as possible There are some GTK_WIDGET_REALIZED calls left for which there's no replacement yet in GTK+. commit d7a07bd0985e9540f869ebdfc6b4a950828c1df4 Author: Felix Riemann <> Date: Fri Jan 29 21:15:14 2010 +0100 Make EogPluginManager GSEAL-compatible
Setting Milestone field as this is a requirement form GNOME 2.32/3.0 per http://live.gnome.org/TwoPointThirtyone/
FWIW the copy of egg toolbar editor in epiphany has been updated to use accessor functions.
(In reply to comment #5) > FWIW the copy of egg toolbar editor in epiphany has been updated to use > accessor functions. Good to know, thanks.
Created attachment 158725 [details] [review] Patch for libegg code and EogWindow Bumps GTK requirement to 2.18 (some 2.20 code in the patch is ifdef'ed). Feel free to commit if you're fine with it.
Review of attachment 158725 [details] [review]: Thanks, Andre. Looks good. commit f10411901ad9b8d3a87f7e8ef4312d016a76407d Author: Andre Klapper <> Date: Wed Apr 14 17:24:49 2010 +0200 Make libegg code and EogWindow GSEAL-compatible. See bug 606883. I'll look into syncing the libegg part with the epiphany copy later. ::: cut-n-paste/toolbar-editor/egg-editable-toolbar.c @@ +1745,3 @@ + tmp_window = gtk_widget_get_window (widget); + gtk_widget_set_window (widget, pixmap); This didn't work correctly. It threw warnings and rendered incorrectly. I modified the whole separator image generation to use an GtkOffscreenWindow instead.
Just pushed: commit 15d23daf9b43d9cb632033518ec88458b26d61e8 Author: Felix Riemann <> Date: Sun May 9 22:16:12 2010 +0200 Make EogPluginEngine GSEAL-compatible Has a workaround for the different behaviour of gtk_window_get_group() that makes sure that the configure dialog and its parent share a window group of their own as before. Not sure if it's needed. Part of bug 606883. commit d53d169824923c4851f8b2abac520be10846415e Author: Felix Riemann <> Date: Sun May 9 21:19:25 2010 +0200 Make EogThumbNav GSEAL-compatible Part of bug 606883. This leaves EogScrollView which is a bit tricky.
Just finished EogScrollView commit 5078ea5e0a38c898c26f35fa8b22568f19ca72c6 Author: Felix Riemann <> Date: Thu May 13 21:37:41 2010 +0200 Finish making EogScrollView GSEAL-compatible. Eog should be completely GSEAL-compatible now. Completes bug 606883. commit 7dd81d8d4b1a67a89cb33880df48a63a464db4dd Author: Felix Riemann <> Date: Thu May 13 21:22:45 2010 +0200 Make the easy parts of EogScrollView GSEAL-compatible Part of bug 606883. We should be completely GSEAL-compatible (at least with GTK+ 2.20.1) now. :) This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.