X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=README;h=ccde59a76cf97866f567ec804265e43def349d73;hb=f2527e8d07a1a3bb255e219c0830474c2863c561;hp=89bec61fcc1e03a1811a6dc4b13fdff96aa51f2e;hpb=58a1af804c9f1a1dac9737b3e41f771555f06673;p=~andy%2Fgtk diff --git a/README b/README index 89bec61fc..ccde59a76 100644 --- a/README +++ b/README @@ -1,7 +1,7 @@ General Information =================== -This is GTK+ version 2.7.0. GTK+ is a multi-platform toolkit for +This is GTK+ version 2.13.5. GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites. @@ -20,13 +20,244 @@ The official web site is: Information about mailing lists can be found at http://www.gtk.org/mailinglists.html + Installation ============ See the file 'INSTALL' -Release notes -============= + +Release notes for 2.14 +====================== + +* gtkitemfactory.h is now completely deprecated. + As gtkactiongroup.h and gtkstock.h no longer include the gtkitemfactory.h + header, this might break application using gtk_item_factory_* symbols + without including gtkitemfactory.h - even though this behaviour has never + been supported in the first place. + +* The GtkFileSystem semi-private interface has been removed. + The GTK+ filechooser implementation now uses GIO directly, which has + rendered external filesystem implementations unnecessary. Consequently, + the GtkFileSystem interface is no longer available, nor the filechooser + will load any GtkFileSystem implementation. + +* gtk_adjustment_set_value() now correctly clamps the passed value to + [lower...upper-page_size] instead of just to [lower...upper]. + This has the potential to break some corner cases, however these + cases would set page_size to a value != 0 which suggests they want + it honored. All manual clamping in code calling set_value() can now + be safely removed. + +Release notes for 2.12 +====================== + +* gtk_about_dialog_get/set_name() were deprecated in favour of + gtk_about_dialog_get/set_program_name(), the GtkAboutDialog now uses the + "program-name" property instead of the conflicting "name" property. + +* The gdk-pixbuf tiff loader now requires libtiff 3.6.0 or later. + +* Support for Windows 9x/ME has officially been removed. It hasn't worked + since 2.6 anyway. + +* The GtkTextBufferTargetInfo enumeration values have been changed from + G_MAXUINT-0, G_MAXUINT-1, G_MAXUINT-2, etc, to -1, -2, -3 to stay within + ANSI C limits. + +* A change in the handling of _NET_WM_USER_TIME properties on toplevel + windows can cause deadlock problems with window managers that are using + GDK for drawing decorations. In particular, metacity <= 2.18.0 is affected + by this. The problem has been fixed in metacity 2.18.1. + +* Semi-private GtkTextLayout api has changed: new GtkTextLayout method + invalidate_cursors(), and new functions gtk_text_layout_invalidate_cursors() + and gtk_text_layout_cursors_changed(), which should be used in place of + gtk_text_layout_invalidate() and gtk_text_layout_changed() if invalidation + is due to marks moved or changed selection; new GtkTextLineDisplay structure + member. Source compatibility is preserved; binary compatibility may break + only if GtkTextLineDisplay structure was created on stack or as a part + of another structure (in particular GnomeCanvas and its clones do not need + recompiling). + +* Another new signal has been added to GtkNotebook. The new signal + is called create-window, so this name can no longer be used for signals + in objects derived from GtkNotebook. + +* The gtk_notebook_set/get_group_id() functions were found to be insufficient + and have been deprecated in favour of gtk_notebook_set/get_group(). + +* The move-focus signal has been moved to GtkWidget, to unify the + various implementations of this signal in specific widgets. Great care + has been taken to make sure that all code using this signal continues + to work. + +* An unused and hardly visible GtkFrame has been removed from the menu + widget hierarchy when GtkComboBox::appears-as-list style property is + set. Any RC file applying a different style to any widget below the + widget path "gtk-combobox-popup-window.GtkFrame" should take into + account that the frame no longer exists. + +* The external print preview application used by GtkPrintOperationPreview + is now passed the print settings on the command line with the + --print-settings parameter pointing to a temp file containing the + settings. The preview application assumes ownership of the file and + should delete it once it does not need it anymore. The --print-settings + commandline option is understood by Evince 0.9.0 and newer. To use a + different print preview application, change the gtk-print-preview-command + setting in your gtkrc file, e.g. gtk-print-preview-command = "ggv %f" + +* GtkMenuShell is now defined as an abstract type. It was already + documented as an abstract class, and there is little reason to + instantiate it. + +* The GtkTooltips struct (this is the old tooltips API) is now considered + private. Code that used to access this struct, in particular the + tips_data_list field, will need to change. All of the old tooltips + API has been deprecated in favour of a new implementation and + API. This affects all of the gtk_tooltips_ functions, and functions + which take a GtkTooltips argument, such as gtk_tool_item_set_tooltip() + and gtk_menu_tool_button_set_arrow_tooltip(). + +* The memory management of the GtkRecentManager object has been changed, + as using the screen didn't guarantee that the singleton instance was + correctly destroyed. The screen-related functions have been deprecated, + and should not be used anymore; the GtkRecentManager instance returned by + the gtk_recent_manager_get_default() function is guaranteed to be valid + for the entire lifetime of an application. + +* A number of interfaces that have been superseded by newer interfaces for + a long time have finally been deprecated. This includes + gtk_widget_ref/unref(), gtk_rc_style_ref/unref() and the old file selector. + +* The various coordinate systems in use in GtkTreeView widgets have + been clarified in the documentation, and in the cause of doing so, + the functions gtk_tree_view_widget_to_tree_coords() and + gtk_tree_view_tree_to_widget_coords() have been deprecated in + favour of a new family of gtk_tree_view_convert_ functions. + +* gtk_menu_item_remove_submenu() has been deprecated in favour of + gtk_menu_item_set_submenu (..., NULL). + +* gtk_default_draw_check() has been fixed to really decrease the + indicator size by one pixel to ensure an odd size instead of + accidentially increasing it. + Consequently, gtk_cell_renderer_toggle_render() could be fixed to + not subtract 1 from the size passed to gtk_paint_option(), which + was just a workaround for above off-by-two for even sizes (theme + engines now get the real indicator size passed). + The default toggle size of GtkCheckMenuItem and GtkCellRendererToggle + has been changed to 13 to be consistent with GtkCheckButton. + The only visible change with default settings is that the indicator in + GtkCellRendererToggle has changed its size from 11 to 13 and is now + consistent with menus and toggle buttons. + +* GTK+ has always required that gtk_init() (or a variant thereof) is + called before any other GTK+ function. Some applications call functions + like gtk_clipboard_get() to check if they need to call gtk_init(), + anyway. A change in GLib 2.14 has recently broken this unsupported + practise. It is worth pointing out that calling gtk_init() twice + does no harm. + + +Release notes for 2.10 +====================== + +* The hexadecimal Unicode input feature has been reworked. It no longer + blocks the use of the sixteen Ctrl-Shift- key sequences. Now + it only uses Ctrl-Shift-u. + +* A memory leak in GtkStyle handling has been fixed. This may expose bugs + in third-party widgets which forget to call gtk_style_attach() in their + realize functions. + +* Range widgets like GtkScrollbar now render their arrows insensitive + when the slider is at the end. Applications which react to arrow + clicks even if the slider is at the end may want to use the new + gtk_range_set_[upper/lower]_stepper_sensitivity() functions to + prevent the arrows from being rendered insensitive. + +* GtkObject now uses the "floating reference" support in GObject. + GTK_OBJECT_IS_FLOATING() will still work, but direct checking + of the GTK_FLOATING flag will no longer detect the floating + reference. Details about floating references can be found in the docs: + http://developer.gnome.org/doc/API/2.0/gobject/gobject-The-Base-Object-Type.html#floating-ref + +* Accelerators like (_F) are now stripped from labels when they are + displayed in toolbars. If this is not wanted, the feature can be + suppressed by inserting a Unicode control character, e.g ZWNJ. + +* The pixbuf theme engine can now customize expanders (in GtkTreeView + and GtkExpander) and resize grips, using the new EXPANDER and + RESIZE_GRIP function values. + +* Dialogs created by gtk_about_dialog_new() no longer hide automatically + when the user clicks close. It is the applications responsibility to + hide or destroy the dialog. + +* Several new signals have been added to GtkNotebook. Care has been taken + to choose signal names which do not collide with signals added by well-known + derived classes. The names which can no longer be used for signals in + objects derived from GtkNotebook are page-reordered, page-removed and + page-added. + +* Due to the interface changes in the file chooser backend interface, + the GTK+ ABI version has been bumped to 2.10.0. Third-party filesystem + backends have to be ported to the new interface, other modules, such as + theme engines, input method modules or pixbuf loaders have to be rebuilt + so that they are installed in the right place for GTK+ to find them. + + +Release notes for 2.8 +===================== + +* GTK+ 2.8 and Pango 1.10 require the cairo library. + +* The default theme has been renamed to "Raleigh". Existing configurations + specifying the "Default" theme name should still work. + +* The GtkTreeView::enable-search property has been changed to control + only typeahead search, not the C-f keybinding to start an interactive + search. To turn off interactive searching completely, you have to + set GtkTreeView::search-column to -1. + +* The restriction on using the same cell renderer in multiple columns + of a GtkTreeView is now more strictly enforced. + +* In GTK+ 2.8, GtkCalendar uses nl_langinfo() (if available) to determine + the first day of the week. Thus, it is possible to select the first day + of the week independently from the language, by setting LC_TIME. + +* In GTK+ 2.8, the gtk-update-icon-cache utility includes image data + in the icon caches, which will make the icon cache files larger than + the one produced by GTK+ 2.6. This change will reduce the memory + overhead of icon themes at runtime, since all GTK+ applications can + share the image data in memory. + +* In 2.8, GDK emits GdkEventGrabBroken events when a keyboard or pointer + grab is broken. On X11, this can happen if the same application grabs + again, or if the window used for the grab becomes unviewable. It happens + more often on Win32. Applications which use grabs should pay attention + to these events and do the necessary cleanups when the grab is lost. +* The GIOChannel code for sockets on win32 has been rewritten. + Applications who make non-trivial use of GIOChannels on win32 should + be watched for possible problems. + +* GLib 2.8 uses atomic operations to implement reference counting, thus + g_object_ref/unref, g_closure_ref/sink/unref and g_iochannel_ref/unref + can be used without locking in multithreaded applications. Note that + other modifications, like concurrent setting of properties still require + locking. + +* g_convert() and related character set conversion functions have been + fixed to emit pending shift states and to not cache iconv descriptors + across multiple calls, since that is problematic for some encodings. + Note that these functions are not suitable for streaming conversions; + use g_iconv() to do streaming conversion. + + +Release notes for 2.6 +===================== * GTK+ 2.6 supports clipboard persistency. To make use of this feature, a clipboard manager following the specification at @@ -108,6 +339,7 @@ Release notes consideration, and use the gstdio wrappers to access files whose names have been constructed from strings returned from GTK+ or GLib. + How to report bugs ================== @@ -141,6 +373,7 @@ In the bug report please include: it will be more useful if the stacktrace is produced running the test program with the --sync command line option. + Patches =======