* Broadway: - we install a separate server: broadwayd
* Theming: - Improve touch text handle theming - Always draw background of menuitems - The default font is no longer handled like a custom style sheet that overrides everything, but as the initial value. This is the same behavior as in web browsers. - It is now possible to set font-family and font-size like other CSS properties, and relative font sizes are supported. Font sizes in CSS can be specified as numbers or with keywords like xx-small, medium, smaller, larger,... - GtkFrame now draws a background - Opacity can be set on any GtkWidget, not just toplevels
* Geometry management - Size groups now handle height-for-width - Fix corner cases in label size allocation - Invisible widgets now return a size of 0x0. This is an experimental change that makes GtkWidget::visible essentially behave the same way that "display: none" does in CSS. If you want the effect of CSS's "visibility: hidden", you can use a GtkNotebook with an empty page
* Accessibility - Entry icons are now accessible - We install headers for accessible implementations of GTK+ widgets. This makes it possible to implement accessibility for third-party widgets by subclassing the proper GTK+ implementation. To do so, include gtk/gtk-a11y.h
* Touch - We support touch friendly popups on entries and text views in place of context menus, on touch devices
* Printing - The print dialog now shows printers that are discovered using avahi, if configured with --enable-avahi-browsing
* GtkTreeView and GtkIconView allow single-click activation
* We now support the Window Manager frame synchronization protocol draft (when running under a WM that supports it). This means applications will throttle their drawing cycle to what the compositor is drawing, and the compositor will never render half-updated windows, for seamless resizing and improves smoothness in drawing. See https://mail.gnome.org/archives/wm-spec-list/2013-January... and the articles at http://blog.fishsoup.net/ for more details.
* Performance improvements - Size allocation has been optimized, by avoiding excessive resizing in various situations. - The performance of size groups has been improved. - Text rendering in GtkLabel and other widgets has been optimized to avoid excessive recreation of Pango layouts. - Icon loading overhead was reduced by caching of GtkIconInfo. - The CSS is now keeping a tree of selectors to speed up matchinh.
* Deprecations and removals: - Custom CSS properties have been deprecated - Support for color schemes has been removed - gtk_style_provider_get_style, gtk_style_provider_get_icon_factory - GtkGradient and GtkSymbolicColor - All the padding style properties in menus - gtk_style_context_set_direction() has been deprecated in favour of state flags for text direction: GTK_STATE_FLAG_LTR/RTL - gtk_window_set_opacity has been deprecated in favor of gtk_widget_set_opacity
* GtkIconInfo has changed from being a boxed type to a GObject. This is technically an ABI change, but basically all existing code will keep working if its used as a boxed type, and its not possible to instantiate GtkIconInfos outside Gtk, so this is not expected to be a big problem.
GTK+ 3.8.0 发布,支持 Wayland 1.0
GTK+ 3.8.0 发布了,该版本支持 Wayland 1.0,此外还包含很多新特性和性能方面的提升。
包括:
* Wayland:
- we support Wayland 1.0 now
* Broadway:
- we install a separate server: broadwayd
* Theming:
- Improve touch text handle theming
- Always draw background of menuitems
- The default font is no longer handled like a custom style sheet
that overrides everything, but as the initial value. This is the
same behavior as in web browsers.
- It is now possible to set font-family and font-size like other
CSS properties, and relative font sizes are supported. Font
sizes in CSS can be specified as numbers or with keywords
like xx-small, medium, smaller, larger,...
- GtkFrame now draws a background
- Opacity can be set on any GtkWidget, not just toplevels
* Geometry management
- Size groups now handle height-for-width
- Fix corner cases in label size allocation
- Invisible widgets now return a size of 0x0. This is an experimental
change that makes GtkWidget::visible essentially behave the same way
that "display: none" does in CSS. If you want the effect of CSS's
"visibility: hidden", you can use a GtkNotebook with an empty page
* Accessibility
- Entry icons are now accessible
- We install headers for accessible implementations of GTK+ widgets.
This makes it possible to implement accessibility for third-party
widgets by subclassing the proper GTK+ implementation. To do so,
include gtk/gtk-a11y.h
* Touch
- We support touch friendly popups on entries and text views
in place of context menus, on touch devices
* Printing
- The print dialog now shows printers that are discovered
using avahi, if configured with --enable-avahi-browsing
* GtkTreeView and GtkIconView allow single-click activation
* We now support the Window Manager frame synchronization protocol
draft (when running under a WM that supports it). This means
applications will throttle their drawing cycle to what the compositor
is drawing, and the compositor will never render half-updated windows,
for seamless resizing and improves smoothness in drawing.
See https://mail.gnome.org/archives/wm-spec-list/2013-January...
and the articles at http://blog.fishsoup.net/ for more details.
* Performance improvements
- Size allocation has been optimized, by avoiding excessive
resizing in various situations.
- The performance of size groups has been improved.
- Text rendering in GtkLabel and other widgets has been optimized
to avoid excessive recreation of Pango layouts.
- Icon loading overhead was reduced by caching of GtkIconInfo.
- The CSS is now keeping a tree of selectors to speed up matchinh.
* Deprecations and removals:
- Custom CSS properties have been deprecated
- Support for color schemes has been removed
- gtk_style_provider_get_style, gtk_style_provider_get_icon_factory
- GtkGradient and GtkSymbolicColor
- All the padding style properties in menus
- gtk_style_context_set_direction() has been deprecated in favour
of state flags for text direction: GTK_STATE_FLAG_LTR/RTL
- gtk_window_set_opacity has been deprecated in favor of
gtk_widget_set_opacity
* GtkIconInfo has changed from being a boxed type to a GObject. This
is technically an ABI change, but basically all existing code
will keep working if its used as a boxed type, and its not
possible to instantiate GtkIconInfos outside Gtk, so this is not
expected to be a big problem.
完整内容:https://git.gnome.org/browse/gtk+/plain/NEWS?id=3.8.0