API changes between maemo 3.2 and maemo 4.0
Toolkit
Hildon
Hildon has undergone big changes towards the Hildon 2.0. See the Hildon pages under gnome.org for a complete list of changes. As the main highlight Hildon 2.0 relies on a slightly modified GTK+ 2.10 instead of a heavily modified GTK+ 2.6. Glib also has been upgraded to 2.12, which is a minor upgrade.
Note also that Hildon Application Framework is now called Hildon and Maemo Desktop (same as maemo-af-desktop) has been renamed to Hildon Desktop.
Renamed packages:
- Hildon-fm -> libhildonfm2 (pkg-config name hildon-fm-2)
- Hildon-libs -> libhildon1 (pkg-config name hildon-1)
- Libossomime0 -> libhildonmime0
- Maemo-af-desktop -> hildon-desktop
- libosso-help -> libhildonhelp0 (pkg-config name hildon-help)
Removed packages:
- Lessertunjo & archtunjo (combined to hildon-games-wrapper)
- Hildon-lgpl & Hildon-libs (merged to libhildon1)
- Libhildonmenu0 (replaced with libhildondesktop0, pkg-config name libhildondesktop)
- Hildon-base-lib (GnomeVFS to be used instead)
- Hildon-status-bar-lib (statusbar plugins should link against libhildondesktop)
D-Bus
D-Bus has been upgraded to version 1.0.2. See changes from the ChangeLog in the D-Bus 1.0.2 release. The package name has been changed from libdbus-1-2 to libdbus-1-3.
Removed API items: dbus_connection_disconnect, dbus_g_thread_init.
Added API items: dbus_connection_get_g_connection.
Pango
Pango has been upgraded to version 2.14. Applications should not use pango directly, so this upgrade should not have any effect on them.
Libosso
- Added registration for locale change, setting new locale
- Added registration for display on/off/dimmed notifications
- Removed osso_tasknav_* and osso_application_initialize
GnomeVFS
GnomeVFS upgraded from 2.12 to 2.16. This is a minor upgrade.
Cairo
Cairo, a hardware acceleration capable 2D graphics library designed to produce consistent output on all medias, has been added to the maemo platform. The version used is 1.4.10.
Gtkhtml
Gtkhtml has been updated to version 3.9.1.
Libxml2
Libxml2 has been updated to version 2.6.27. This is a minor upgrade, see the ChangeLog in the package for changes.
GConf2
Gconf2 has been upgraded from 2.6 to 2.16.
Removed API items listed here for convenience:
- gconf_daemon_blow_away_locks
- gconf_get_daemon_dir
- gconf_get_lock_dir
- gconf_quote_percents
Multimedia
GStreamer
GStreamer has been upgraded to version 0.10.13. The playbin plugin should be used for all playback except RealAudio. It takes care of routing the audio and video to the proper sinks. GStreamer mpeg1demux removed. playbin to be used instead.
Connectivity
Added BlueZ audio support http://wiki.bluez.org/wiki/Audio. Removed IC API (osso-ic-oss, osso-ic-lib, osso-ic-dev), which was previously deprecated. Use ConIC API (libconic0) instead.
System software & core
HAL
- HAL added, with libhal as wrapper. Supported devices:
- MMC/SD cards
- USB mass storage
- keyboard (open/closed, exists/doesn’t exist)
- ambient light sensor
- camera status (open, closed)
glibc
glibc 2.3 upgraded to 2.5. NPTL taken into use, which might have effect on applications with specific needs for thread behaviour.