This page lists all changes between upstream GTK+ 2.6 and maemo-gtk 2.6. The changes have been identified on a per-file basis. GtkContributions lists all changes on a per-feature basis.
Related Pages
Maemo/Gtk26Rationales - Discussion of omitting or rejecting upstream submissions
Maemo/Gtk210Migration - Gtk+-2.10 Migration steps
Maemo/Gtk210Changes - Maemo-2-10 changes/contributions
Maemo/GtkBackports - Upstream improvement backports to maemo-gtk
Maemo/GtkContributions - Upstream Gtk+ contribution list by feature
Related Resources
http://mxr.maemo.org/diablo-20080625/source/gtk+2.0-2.10.12/ - LXR access to maemo-gtk
https://stage.maemo.org/svn/maemo/projects/haf/trunk/gtk+/ - SVN access to maemo-gtk (account: guest/guest)
http://cvs.gnome.org/viewcvs/gtk+/ - HEAD version of upstream Gtk+
http://bugs.gnome.org/ - GNOME bugzilla
https://stage.maemo.org/svn/maemo/projects/haf/branches/gtk+/patches/ - Individual patches (account: guest/guest)
gtk-2.6.10-maemo-code-bp.diff.gz - Diff between maemo-gtk trunk revision 1277 and Gtk+-2.6.10, cleaned up and whitespace corrected.
splitpatch-gtk-2-6.sh - Script to split up Gtk+ patches.
Status by file
 ) Progress indicators: 
 unmergable; 
 change maemo-gtk/glib; 
 move to hildon-libs; 
 done; 
 in progress (upstream); |   | outstanding; M ) Migration advice or porting advice to upgrade to future Gtk+ versions 
FILE
 M
Comments
configure.in
 -
removed DISABLE_KEYBOARD_SHORTCUTS legacy
gdk/gdkinternals.h
 gdk/gdkpango.c
 -
(display close) 85715
gdk/gdkscreen.c
 -
(display close) 85715
gdk/gdkscreen.h
 -
(active window / window stack) 320881
gdk/gdkwindow.c
 -
(display close) 85715
gdk/gdkwindow.h
 -
(get type hint) 320872
gdk/x11/gdkdisplay-x11.c
 -
(display close) 85715
gdk/x11/gdkdnd-x11.c
 -
reverted to upstream
gdk/x11/gdkevents-x11.c
 -
(display close) 85715
gdk/x11/gdkim-x11.c
 -
332317 disable gdk complaining about xlib locales
gdk/x11/gdkkeys-x11.c
 -
(display close) 85715
gdk/x11/gdkscreen-x11.c
 -
(display close) 85715
gdk/x11/gdkscreen-x11.c
 -
(active window / window stack) 320881
gdk/x11/gdkvisual-x11.c
 -
(display close) 85715
gdk/x11/gdkwindow-x11.c
 -
(get type hint) 320872
gdk-pixbuf/io-ico.c
 -
reverted to upstream
gdk-pixbuf/io-jpeg.c
 -
excessive memory use by JPEG loader 305894
gdk-pixbuf/io-xpm.c
 -
contains changes from gtk+ 2.8 only
gtk/gtkbutton.c
 327202 child-spacing facility added to upstream (of type GtkBorder)
gtk/gtkbutton.c
 327202 new ::inner-border property in upstream needs back-merge to maemo
gtk/gtkbutton.c
 -
R05 ::keyboard-button should be removed from maemo-gtk; ::label can be used instead (has been backed out)
gtk/gtkbutton.c
 -
R30 child-offset-y property (OSSO_FONT_HACK)
gtk/gtkbutton.c
minimum-width property
gtk/gtkbutton.c
 R06 listboxheader / separator-height properties (for treeview titles)
gtk/gtkbutton.c
detail / automatic-detail properties
gtk/gtkbutton.c
 gtk/gtkbutton.h
 gtk/gtkcalendar.c
 (button timeouts) 142582
gtk/gtkcalendar.c
  R02 should be completely moved to hildon libs
gtk/gtkcalendar.h
  R02 should be completely moved to hildon libs
gtk/gtkcellrendererpixbuf.c
 -
changes backfolded to gtk+ 2.8
gtk/gtkcellrenderertext.c
 -
forced ellipsation should be backed out (and has been)
gtk/gtkcellrenderertext.c
 R08 Padding changes (should be set using xpad/ypad properties)
gtk/gtkcellrenderertext.c
 R07 Render prelight state cell as normal state
gtk/gtkcellrenderertoggle.c
 R23 checkbox-mode property
gtk/gtkcellrenderertoggle.c
 R08 Set toggle width to 26 (added indicator-size property in gtk+ 2.9, which defaults to 12)
gtk/gtkcellrenderertoggle.c
 R08 Padding changes (should be set using xpad/ypad properties)
gtk/gtkcellview.c
 distribute shrinkage across cells if too little space was allocated 350815
gtk/gtkcellview.c
 R25 make gtk_cell_view_set_cell_data() public
gtk/gtkcellview.h
 R25 make gtk_cell_view_set_cell_data() public
gtk/gtkcheckbutton.c
reconfiguring indicator size
gtk/gtkcheckbutton.c
configurable (focus) padding
gtk/gtkcheckbutton.c
alternative focus frame drawing (should be made themable?)
gtk/gtkcheckbutton.c
 R03 Hildon Caption Control workaround (move to hildonlibs)
gtk/gtkcheckbutton.c
  R14 useless addition of check_button_clicked/check_button_update_state (to be removed)
gtk/gtkcombobox.c
 additional style properties for arrow drawing 357950
gtk/gtkcombobox.c
 separator width adjustments 332022
gtk/gtkcombobox.c
 R34 arrow sensitivity adjustment
gtk/gtkcombobox.c
  -
the code should use gtk_widget_grab_focus() and not call combobox_grab_focus directly
gtk/gtkcombobox.c
 focus handling changes that make comboboxentry grab focus on entries - should be backed out once gtk_widget_grab_focus() is used all over the place
gtk/gtkcombobox.c
 focus and keyboard handling changes should go to hildon-libs
gtk/gtkcombobox.c
 navigate rows on left/right instead of up/down 358293 358329
gtk/gtkcomboboxentry.c
  -
forced ellipsation should be backed out (and has been)
gtk/gtkcontainer.c
 315645 tap-and-hold implementation (gtkwidget.c)
gtk/gtkcontainer.c
 -
focus chain sort order changes
gtk/gtkcontainer.c
 widget type specific focus chain order alterations should move to hildonlibs
gtk/gtkcontainer.c
 questionable grab_focus() changes
gtk/gtkdialog.c
 cosmetic and focus changes should go to hildon-libs
gtk/gtkdnd.c
 pen dragging (drag selection) needed by gtktreeview.c, covered by rubberbanding patch 80127
gtk/gtkdnd.h
 pen dragging (drag selection) needed by gtktreeview.c, covered by rubberbanding patch 80127
gtk/gtkentry.c
 truncate multiline pastes 322252
gtk/gtkentry.c
  autocap property (deprecated, should be removed from maemo-gtk)
gtk/gtkentry.c
  input-mode IM property proying (deprecated, should be removed from maemo-gtk)
gtk/gtkentry.c
hildon-input-mode IM property proxying
gtk/gtkentry.c
 horizontal-border and vertical-border style properties 333922
gtk/gtkentry.c
icon-width style property (purpose icon)
gtk/gtkentry.c
 show-last-char style property (for password entries) 334560
gtk/gtkentry.c
use IM show()/hide() API
gtk/gtkentry.c
  -
R31 cursor placement on focus_in
gtk/gtkentry.c
  R17 don't select all on grab_focus
gtk/gtkentry.c
  -
R35 popup menu changes
gtk/gtkentry.c
::invalid_input() signal
gtk/gtkentry.h
::invalid_input() signal
gtk/gtkenums.h
 -
R36 enum GtkIconSize: new hildon icon sizes
gtk/gtkenums.h
enum GtkInvalidInputType: new enum
gtk/gtkfilesystem.c
 export _gtk_file_system_create() in hildon namespace (gtk-2-10 exports the symbol, HEAD doesn't contain the change yet)
gtk/gtkfilesystem.h
 export _gtk_file_system_create() in hildon namespace (ditto)
gtk/gtkframe.c
  R19 move cosmetic changes to theme engine and hildon-libs
gtk/gtk.h
 -
rich text copy & paste 324177
gtk/gtkhashtable.c
 refcountable hashtable 114355 HashTable objects
gtk/gtkhashtable.h
 refcountable hashtable 114355HashTable objects
gtk/gtkhbbox.c
 R27 GTK_BUTTONBOX_HETEROGENOUS packing style
gtk/gtkhbbox.c
 R27 OssoGtkButtonAttachFlags stuff (hildonlike property)
gtk/gtkhseparator.c
 themeable separators 332022
gtk/gtkhseparator.h
 -
forgotten merge from gtk+ 2.6.10
gtk/gtkiconfactory.c
  -
R36 register hildon icon sizes
gtk/gtkicontheme.c
 -
.ani support
gtk/gtkicontheme.c
 don't prefer builtin (stock) icons
gtk/gtkicontheme.c
  R26 icon scaling
gtk/gtkimage.c
 -
(always unref pixbuf in expose) fix is in gtk+ 2.8
gtk/gtkimage.c
 -
immediate painting in anim timeout 321444
gtk/gtkimcontext.c
show()/hide() virtual functions
gtk/gtkimcontext.h
show()/hide() virtual functions
gtk/gtkimmulticontext.c
show()/hide() method proxying
gtk/gtkimmulticontext.c
input-mode, autocap, visibility, use-show-hide properties proxying
gtk/gtkimmulticontext.c
global IM setting
gtk/gtkimmulticontext.h
global IM setting
gtk/gtklabel.c
 removed DISABLE_KEYBOARD_SHORTCUTS legacy
gtk/gtklabel.c
 width-for-height allocation workaround
gtk/gtklabel.c
auto ellipsize non-wrapping labels when allocated too little space (introduce GtkWidget::auto-ellipsize for this)
gtk/gtklabel.c
 runtime locale changes (unfinished)
gtk/gtklabel.h
 runtime locale changes
gtk/gtkmain.c
 ::insensitive-press; should be fixed by reworking tooltips upstream instead 65490
gtk/gtkmenu.c
 scroll on click 323028
gtk/gtkmenu.c
 double-arrows property 323028
gtk/gtkmenu.c
 -
horizontal-padding property 323036
gtk/gtkmenu.c
 -
GtkMenuShell's take-focus property is in gtk+ 2.8
gtk/gtkmenu.c
 -
333632 MENU_SCROLL_ARROW_HEIGHT as style property
gtk/gtkmenu.c
 R20 change window type to TOPLEVEL
gtk/gtkmenu.c
 R33 modify style if parent is GtkMenuBar
gtk/gtkmenu.c
set menu transient on currently active window
gtk/gtkmenu.c
 R32 connect to visibility_notify_event and pop down appropriately
gtk/gtkmenu.c
variuos context menu related changes
gtk/gtkmenu.c
_gtk_menu_enable_context_menu_behavior() (used by Gtkwidget)
gtk/gtkmenu.h
_gtk_menu_enable_context_menu_behavior() (used by GtkWidget)
gtk/gtkmenuitem.c
 -
GtkMenuShell's take-focus property is in gtk+ 2.8
gtk/gtkmenuitem.c
 themeable separators 332022
gtk/gtkmenuitem.c
on select/deselect, queue draws on parent menu item
gtk/gtkmenuitem.c
drawing changes if item has submenu with selected item
gtk/gtkmenuitem.c
size changes (ARROW_SPACE / HEIGHT_INCREMENT)
gtk/gtkmenuitem.c
don't draw focus around submenu indicator
gtk/gtkmenuitem.c
don't open submenu on keyboard navigation
gtk/gtkmenuitem.c
open submenus on ::activate() instead
gtk/gtkmenuitem.c
_gtk_menu_item_popdown_submenu() (used by GtkMenuShell)
gtk/gtkmenuitem.h
_gtk_menu_item_popdown_submenu() (used by GtkMenuShell)
gtk/gtkmenushell.c
 -
take-focus property is in gtk+ 2.8
gtk/gtkmenushell.c
 R04 needless introduction of ::close signal
gtk/gtkmenushell.c
 R04 back-out Escape+F4 menu cancellation changes
gtk/gtkmenushell.c
 gtk/gtkmenushell.c
_gtk_menu_shell_set_first_click() (used by GtkMenu)
gtk/gtkmenushell.c
activate submenu on button_press
gtk/gtkmenushell.c
check timeout before activating on button_release
gtk/gtkmenushell.c
 don't wrap around when doing keyboard navigation 309291
gtk/gtkmenushell.c
pop down submenu when returning via keyboard navigation
gtk/gtkmenushell.c
various submenu placement changes
gtk/gtkmenushell.h
 -
take-focus property is in gtk+ 2.8
gtk/gtkmenushell.h
  R04 needless introduction of ::close signal
gtk/gtknotebook.c
 (button timeouts) 142582
gtk/gtknotebook.c
 additional style properties 325282
gtk/gtknotebook.c
 focus and (keyboard) navigation changes 322640 (it has been decided not to use wrapping here)
gtk/gtknotebook.c
 property default changes should go into hildon-libs
gtk/gtkprogressbar.c
  additional style properties (::xspacing ::yspacing)
gtk/gtkprogress.c
 -
clear background for transparent images
gtk/gtkradiobutton.c
 don't select button on cursor navigation 334742
gtk/gtkradiobutton.c
changed indicator drawing
gtk/gtkrange.c
 (button timeouts) 142582
gtk/gtkrange.c
 (insensitive arrows) 321056
gtk/gtkrange.c
 gtk/gtkrange.c
minimum-bars-visible property
gtk/gtkrange.c
 two-part-through style property 342249
gtk/gtkrange.c
stream-indicator-padding style property
gtk/gtkrange.c
arrow-paint-box-layout style property (arrow images)
gtk/gtkrange.c
 draw-through-under-steppers style property 342339
gtk/gtkrange.c
 stream-indicator property/API 349808
gtk/gtkrange.c
 stream-position property/API 349808
gtk/gtkrange.h
 stream-indicator API 349808
gtk/gtkrange.h
 stream-position API 349808
gtk/gtkrbtree.c
 -
relevant changes comitted to upstream
gtk/gtkrc.c
 -
(rc file mtime) backfolded to gtk+ 2.8
gtk/gtkrc.c
 logical colors 114355
gtk/gtkrc.c
 order of rc file parsing 324073
gtk/gtkrc.c
 use of osso_g_scanner_cache_open()
gtk/gtkrc.h
 logical colors 114355
gtk/gtkscrolledwindow.c
 R29 scrollbar-dislocation style property
gtk/gtkscrolledwindow.c
 gtk/gtkselection.c
 -
reverted to upstream
gtk/gtkseparator.c
 themeable separators 332022
gtk/gtkseparatortoolitem.c
 themeable separators 332022
gtk/gtkseparatortoolitem.h
 themeable separators 332022
gtk/gtksettings.c
 button timeouts 142582
gtk/gtksettings.c
 hildon-keyboard-navigation property (used by calendar only)
gtk/gtkspinbutton.c
 button timeouts 142582
gtk/gtkstyle.c
 logical colors 114355
gtk/gtkstyle.c
  R26 icon scaling changes
gtk/gtkstyle.h
 logical colors 114355
gtk/gtktable.c
  R27 OssoGtkButtonAttachFlags stuff
gtk/gtktextbuffer.c
 rich text copy & paste 324177
gtk/gtktextbuffer.h
 rich text copy & paste 324177
gtk/gtktextbufferserialize.c
 rich text copy & paste 324177
gtk/gtktextbufferserialize.h
 rich text copy & paste 324177
gtk/gtktextview.c
  autocap and input-mode IM properties proxying (deprecated, should be removed from maemo-gtk)
gtk/gtktextview.c
hildon-input-mode IM property proxying
gtk/gtktextview.c
 autocap style property (was removed from maemo-gtk)
gtk/gtktextview.c
 gtk/gtktextview.c
use IM show()/hide() API
gtk/gtktextview.c
  R31 cursor placement on focus_in
gtk/gtktextview.c
don't reset IM on backspace
gtk/gtktextview.c
 -
complete redraw on width change is in gtk+ 2.8
gtk/gtktextview.h
 -
complete redraw on width change is in gtk+ 2.8
gtk/gtktoolbar.c
 disable animations 142582
gtk/gtktoolbar.c
 -
max-child-expand style property 340722
gtk/gtktoolbutton.c
 interpolate icons with GDK_INTERP_NEAREST
gtk/gtktoolbutton.c
 insensitive-press 65490
gtk/gtktoolbutton.h
 insensitive-press 65490
gtk/gtktreemodelfilter.c
 -
(ref counting changes and some refactoring to better monitor the child model) backfolded to gtk+ 2.9
gtk/gtktreemodelsort.c
 -
(ref counting fixes, optimizations) backfolded to gtk+ 2.9
gtk/gtktreeprivate.h
 -
Structures in this file are backfolded with other features automatically
gtk/gtktreeselection.c
 -
exports API for unselectable rows / support unselecting insensitive nodes (backfolded to gtk+ 2.9)
gtk/gtktreeselection.c
 R11 behavioral changes for cursor == selected node behavior
gtk/gtktreeview.c
 Insensitive rows -- (row_insensitive signal) 65490
gtk/gtktreeview.c
 -
Insensitive rows -- (unselect rows which become insensitive)
gtk/gtktreeview.c
 R09 R10 Insensitive rows -- (cursor cannot move to or expand insensitive rows)
gtk/gtktreeview.c
 Support for drawing dotted lines (reimplementation for upstream) 106406
gtk/gtktreeview.c
 "Force list kludge" property (This workaround is for hildon specific and not needed in upstream)
gtk/gtktreeview.c
 R23 Checkbox mode/Multiple selection using tickmarks
gtk/gtktreeview.c
 315645 Tap-and-hold-query support
gtk/gtktreeview.c
 Configurable expander/level indentation 80869
gtk/gtktreeview.c
 Disable expander arrows 80869
gtk/gtktreeview.c
 Drag selection (rubberbanding) 80127
gtk/gtktreeview.c
  -
Tap on row expands/collapse row on button_release (can be done outside of tree view)
gtk/gtktreeview.c
 -
Postpone row selection and activation to button_release (part of rubberbanding, not sure how it will be done upstream) 80127
gtk/gtktreeview.c
 Tap on row activates, for multiple selection all selected rows all activated (can be done outside of tree view)
gtk/gtktreeview.c
 Keybinding changes (maybe support for turning off certain keybindings in keythemes)
gtk/gtktreeview.c
 R12 Empty views cannot gain focus
gtk/gtktreeview.c
 R08 Headers are invisible by default (this default should be changed outside of gtktreeview.c)
gtk/gtktreeview.c
 R11 Cursors follows selection changes, when mode != selection-multiple
gtk/gtktreeview.c
 R12 Cursor cannot move left/right
gtk/gtktreeview.c
 Key binding changes. (should be done in a keytheme, instead of in gtktreeview.c. Might need to add support for disabling keybindings in a keytheme).
gtk/gtktreeview.c
 R15 When a tree view is not in a scrolled window with hscroll, columns are truncated
gtk/gtktreeview.c
 R13 Commented out _clamp_column_visible (used by _move_cursor_left_right)
gtk/gtktreeview.c
 Ignore CTRL and SHIFT (should be backed out)
gtk/gtktreeview.c
 -
validate_visible_area() changes (looks like this change was partly taken from gtk+ 2.8, maemo might suffer from pre gtk+ 2.8 scrolling bugs)
gtk/gtktreeview.c
 R12 Focus drawing changes, disabled row spanning focus rectangle
gtk/gtktreeview.c
 R18 Add passive focus style property
gtk/gtktreeview.c
 Support for left, right, middle drop indicators 333760
gtk/gtktreeview.c
 Support for left, right, middle cell background drawing 333760
gtk/gtktreeview.c
  Only one node in a branch can be in expanded state at a time
gtk/gtktreeview.c
 Scroll to expanding row (can be done outside of tree view)
gtk/gtktreeview.c
 Double click handling code (in button_press) commented out, should be uncommented
gtk/gtktreeviewcolumn.c
 R23 Addition of _gtk_tree_view_column_has_activable_cell (used for the checkbox mode)
gtk/gtkviewport.c
 frame cosmetics should move to hildon-libs
gtk/gtkvseparator.c
 themeable separators 332022
gtk/gtkwidget.c
 alterations to focus history + GtkEntry selection logic
gtk/gtkwidget.c
 R16 GtkWidgetPriv should be allocated on demand
gtk/gtkwidget.c
 315645 tap-and-hold animation support
gtk/gtkwidget.c
 315645 tap-and-hold implementation (gtkcontainer.c)
gtk/gtkwidget.c
    ::insensitive-press; should be fixed by reworking tooltips upstream 65490
gtk/gtkwidget.c
 R22 prev_focus_widget setting on button press/release and enter/leave notify
gtk/gtkwidget.h
 -
API to enable hildon focus behaviour (unimplemented in gtkwidget.c)
gtk/gtkwidget.h
 ::insensitive-press; should be fixed by reworking tooltips upstream 65490
gtk/gtkwindow.c
 R22 prev_focus_widget keeping/api
gtk/gtkwindow.h
 R22 prev_focus_widget keeping/api
gtk/maemo-gtk-im-switch.c
  standalone maemo utility, should move to hildon-libs
gtk/Makefile.am
 serializable textbuffer and ref-countable hashtable additions
gtk/updateiconcache.c
 -
.ani support
gtk/xdgmime/xdgmime.c
 move const string to .rodata (invalid ABI change)
gtk/xdgmime/xdgmime.h
 move const string to .rodata (invalid ABI change)
Status by feature
The maemo Gtk+ feature contribution list has been moved to Maemo/GtkContributions.