Overview of Changes in 4.11.2, 09-05-2023
=========================================

* GtkGLArea:
 - Add an allowed-apis property

* GtkListBox:
 - Fix a problem with gtk_list_box_remove_all

* Add the GtkSectionModel interface, and implement it in most
  of our list models

* GtkListView:
 - Support displaying sections

* GtkCenterBox:
 - Add a shrink-center-last property

* GtkButton, GtkMenuButton:
 - Add a can-shrink property

* GtkPopover:
 - Fix problems with grabs

* GtkFileChooser:
 - Fix a problem with removing files
 - Make the date, time and location columns work
 - Fix filtering in the save entry popup
 - A few memory leak fixes
 - Handle webdav in the pathbar

* GtkBox:
 - Support baselines in vertical orientation with GtkBox:baseline-child

* Dialogs:
 - Destroy windows promptly when the async callback finishes
 - Detect absence of the OpenURI portal and fall back

* Theme:
 - Add explicit style classes to a number of widgets
 - Fix some contrast issues in the dark theme

* Accessibility:
 - Fix alert dialogs in the a11y tree
 - Improve accessibility of GtkShortcutsWindow

* Layout:
 - Some fixes to baseline alignment
 - Separate GTK_ALIGN_BASELINE_CENTER and _FILL

* CSS:
 - Fix a crash with color transitions

* GSK:
 - Fix problems with negative scales
 - Improve scaling of offscreens for (cross-fades, masks, blends)

* GL:
 - Add GdkGLTextureBuilder, a more flexible api for creating textures
 - Support setting update regions for GL textures
 - Ensure that we work with GLES 2

* Vulkan:
 - More fixes to the experimental Vulkan renderer
 - Rework glyph caching

* Wayland:
 - Don't destroy wl_surfaces on hide
 - Plug leaks of compositor-side resources

* X11:
 - Fix artifacts in gnome-shell frame decorations

* Windows:
 - Fix GL context initialization

* Inspector:
 - Improve the action list
 - Improve the accessibility pane
 - Fix a crash

* Tools:
 - gtk4-node-editor: Improve scaling
 - gtk4-node-editor: Preserve aspect ratio of textures
 - gtk4-node-editor: Add some smarter editing
 - gtk4-demo: Make the stylus demo work with mice

* Deprecations:
 - gtk_widget_get_allocated_width/height/baseline
 - GTK_ALIGN_BASELINE

* Translation updates
 Bulgarian
 Chinese (China)
 Friulian
 Galician
 Hebrew
 Persian
 Polish
 Portuguese
 `Russian
 Turkish


Overview of Changes in 4.11.1, 03-04-2023
=========================================

* GtkLabel, GtkLinkButton:
 - Make file:// uris work again

* GtkListView/GtkColumnView/GtkGridView:
 - Fix clipping issues
 - Handle focus movement better
 - Introduce ::tab-behavior properties
 - Introduce GtkListItem::focusable
 - Introduce GtkColumnViewCell
 - Introduce row factories in GtkColumnView
 - Make list grid and column views inert when not rendering

* Drag-and-Drop:
 - Support resizing drag surfaces, using the new
   GdkDragSurface::compute-size signal

* Theme:
 - Port .boxed-list style from Adwaita
 - Make insensitive pictures appear grayed out

* Accessibility:
 - Fix memory leaks
 - Fix a crash

* GDK:
 - Add gdk_surface_get_scale to get the fractional scale
 - Use fractional scales on Wayland with cairo
 - Use fractional scales on Wayland with GL if GDK_DEBUG=gl-fractional
   is set. This support is still experimental

* GSK:
 - Allow limiting texture sizes with GSK_MAX_TEXTURE_SIZE
 - Use samplers for GL texture filtering
 - Fix problems with texture slicing
 - Avoid re-uploading textures when possible
 - Use mipmaps when it is beneficial

* Wayland:
 - Fix handling of Drag hotspots
 - Fix a crash with cursor size 0
 - Support absolute paths in WAYLAND_DISPLAY
 - Use the fractional scale protocol
 - Use a viewporter to set buffer scale

* Windows:
 - Fix problems with WGL

* Vulkan:
 - Some fixes to the experimental Vulkan renderer
 - Support fractional scaling

* Debugging:
 - Show more Wayland-specific information in the inspector

* Deprecations:
 - gtk_widget_translate_coordinates
 - gdk_surface_create_similar_surface

* Documentation:
 - Add a section on coordinate systems

* Build:
 - Require wayland-protocols 1.31

* Translation updates
 - British English
 - Bulgarian
 - Chinese (China)
 - Dutch
 - French
 - Persian
 - Russian


Overview of Changes in 4.10.1, 14-03-2023
=========================================

* GtkFileChooser
 - Improve search performance
 - Be safe against pathless files
 - Fix memory leaks
 - Only show local files in recent files
 - Show most recent files first
 - Make files non-selectable in selet_folder mode

* GtkListView / GtkColumnView / GtkGridView
 - Fix scrolling problems
 - Support CSS border-spacing

* GtkComboBox
 - Fix a size allocation problem

* gtk
 - Size allocation fixes

* Accessibility
 - Miscellaneous property fixes and improvements

* Wayland
 - Fix an ordering problem in surface disposal

* Windows
 - Fix Visual Studio build with older GLib

* Translation updates
 Basque
 Bulgarian
 Catalan
 Czech
 Danish
 Finnish
 Friulian
 Galician
 Georgian
 Hungarian
 Lithuanian
 Polish
 Portuguese
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.10.0, 04-03-2023
=========================================

* GtkTextView
 - Document hanging indentation

* GtkListView
 - Fix a size allocation problem

* GtkFileChooser
 - Fix paned behavior
 - Fix a crash

* GtkText
 - Fix various problems with undo

* Accessibility
 - Make some getters transfer-full
 - Allow setting accessible parents and siblings
 - Add a role for toggle buttons
 - Miscellaneous property fixes and improvements

* gtk
 - Improve the handling resize-during-size-allocate

* gdk
 - Introduce GdkTextureDownloader and use it
 - Make gdk_texture_get_format public

* gsk
 - Make mask nodes more versatile
 - Improve the GL implementation for texture scale nodes

* X11
 - Fix key handling during DND

* Tools
 - gtk-builder-tool: Try harder to handle templates
 - gtk-builder-tool: Prefer properties over <child>

* Translation updates
 Basque
 Belarusian
 Bulgarian
 Indonesian
 Galician
 Georgian
 German
 Hebrew
 Lithuanian
 Portuguese
 Spanish
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.9.4, 12-02-2023
========================================

* Printing:
 - Add a CPDB backend
 - Drop the lpr backend

* GtkFileDialog:
 - Robustness fixes

* GtkScaleButton:
 - Add an 'active' property

* GtkSearchEntry:
 - Add placeholder text

* Fix conflicting type names between gtk and gio

* Gsk:
 - Settable filtering for scaled textures
 - Add mask nodes
 - Some robustness and crash fixes

* Wayland:
 - Handle dispatch failing in more places

* Deprecations:
 - GtkVolumeButton

* Translation updates:
 Belarusian
 Chinese (Taiwan)
 Georgian
 Turkish
 Ukrainian


Overview of Changes in 4.9.3, 04-02-2023
========================================

* Add GtkUriLauncher, as replacement for gtk_show_uri

* Add GdkMonitor::description

* Fix problems with tooltip sizing

* Deprecations:
 - GtkStatusbar
 - GtkAssistant
 - GtkLockButton
 - gtk_gesture_set_sequence_state

* GtkColumnView:
 - Only create widgets for visible columns

* GtkFileDialog:
 - Drop shortcut folders API

* GtkCalendar:
 - Make marked days work again

* GtkSwitch:
 - Make state and active independently settable

* GtkFileChooser:
 - Fix a crash with DND
 - Fix excessively wide sidebar
 - Make context menus work again

* Accessibility:
 - Make GtkAccessible public, so it can be implemented outside GTK
 - Support accessible implementation for editables

* CSS:
 - Fix randomly stopping CSS animations

* GL:
 - Fix synchronization with GStreamer
 - Fix problems with 3rd party GL in the same thread

* Wayland:
 - Fix startup notification with xdg_activation

* Broadway:
 - Implement modal windows

* macOS:
 - Make DND work

* Build:
 - Require graphene 1.10
 - Require gobject-introspection 1.72

* Translation updates
 Catalan
 Galician
 German
 Hebrew
 Indonesian
 Portuguese
 Russian
 Spanish
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.9.2, 26-12-2022
========================================

* GtkFileChooserWidget:
 - Add a grid view

* GtkText, GtkTextView:
 - Fix activation of the on-screen keyboard
 - Prevent unexpected text direction changes

* GtkCenterBox:
 - Add properties for children

* GtkTreeExpander:
 - Add a hide-expander property

* GtkStringList:
 - Add a construct-only strings property

* GtkBuilder:
 - Support parsing Pango attributes in string form

* GtkGestureStylus:
 - Add a stylus-only property

* GtkFileLauncher:
 - New async-style api to replace gtk_show_uri

* GtkColorDialog, GtkFontDialog, GtkFileDialog,
  GtkAlertDialog:
 - APIs have seen some tweaks
 - Prefer portals when available
 - Fixes for cancellation

* Add GDK_DEBUG=no-portals

* Improve file DND with remote files

* GtkInfoBar has been deprecated

* gtk_widget_show/hide have been deprecated

* gtk_show_uri has been deprecated

* Wayland:
 - Fix button mask handling
 - Fix problems with cursor size on hi-dpi screens
 - Support newer versions of some protocols
 - Fix handling of surrounding text in input methods

* X11:
 - Fix some ordering problems with surface destruction

* Windows:
 - Improved system settings integration
 - Fix window resizing work with native decorations
 - Include a full hicolor index.theme file as a resource

* Translation updates
 Croatian
 Dutch
 Hungarian
 Interlingua
 Persian
 Turkish
 Ukrainian


Overview of Changes in 4.9.1, 31-10-2022
========================================

Note that deprecations are an early outlook at changes
that will appear in an eventual GTK 5 release, which is
still far away. We are introducing deprecations in 4.10
as a way to give users time to adapt, and to provide
feedback on our plans.

* GtkTreeView, GtkIconView, GtkComboBox and
  auxiliary classes have been deprecated

* GtkEntryCompletion has been deprecated

* GtkStyleContext has been deprecated

* gtk_render_ and gtk_snapshot_render_ APIs
  have been deprecated

* GtkAppChooser widgets have been deprecated

* GtkMessageDialog has been deprecated and
  replaced by a new async dialog API

* GtkDialog has been deprecated

* GtkColorChooser, GtkFontChooser, GtkFileChooser
  interfaces and their implementations have been
  deprecated. A new family of async dialog APIs
  has been introduced to replace them

* GtkColorDialog, GtkFontDialog, GtkFileDialog
  and GtkAlertDialog are new dialog classes with
  a consistent and well-bindable API

* GtkMountOperation:
 - Fix the dialog to look reasonable
 - Make it work under non-X11

* GtkStringSorter:
 - Support different collation methods

* Accessibility:
 - Introduce GtkAccessibleRange and implement it

* Debugging:
 - Unify formatting for debug output
 - Make make debug options available in
   non-debug builds

* Increase the memory limit for the jpeg loader to 1G

* Translation updates:
 Abkhazian
 Basque
 Bulgarian
 Croatian
 Friulian
 Georgian
 German
 Hungarian
 Russian
 Turkish


Overview of Changes in 4.8.1, 16-09-2022
========================================

* Input:
 - Fix problems with input method interactions that caused
   dead keys not to work
 - Accept single-key compose sequences (these are used with
   some keyboard layouts)

* GtkColumnView:
 - Flip column order in right-to-left context

* GtkGridView:
 - Fix problems with rubberbanding

* GtkFileChooser:
 - Fix positioning of popovers in the places view
 - Make ~ and . keyboard shortcuts work again

* gsk:
 - Make glyph upload more similar to icons

* Make file transfer via portals work, this fixes file
  copy/paste and dnd in flatpaks

* Translation updates:
 Catalan
 Chinese (China)
 Chinese (Taiwan)
 Latvian


Overview of Changes in 4.8.0, 06-09-2022
========================================

* GtkTreeView:
 - Fix a problem with scrolling animations
 - Fix some event handling problems
 - Drop unreachable code

* GtkText:
 - Respect the no-emoji input hint fully

* GtkEmojiChooser:
 - Fix arrow key navigation

* GtkFontChooser:
 - Improve the handling of OpenType font features

* GtkTreeListModel:
 - Fix handling of collapsed child nodes

* GtkInscription:
 - Fix accessible name

* Theme:
 - Fix placeholder text in HighContrast

* Increase the memory limit for the jpeg loader to 300M

* Miscellaneous memory leak fixes

* Wayland:
 - Refator handling of text protocol client updates

* Windows:
 - Support high-resolution scroll wheel events
 - Generate GdkWin32.gir
 - Implement color picking

* Translation updates
 Abkhazian
 Basque
 Brazilian Portuguese
 Bulgarian
 Catalan
 Chinese (China)
 Croatian
 Czech
 Danish
 Dutch
 Galician
 Georgian
 German
 Hungarian
 Icelandic
 Indonesian
 Korean
 Latvian
 Lithuanian
 Persian
 Polish
 Portuguese
 Russian
 Serbian
 Spanish
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.7.2, 10-08-2022
========================================

* GtkTextView:
 - Fix child positioning with gutters

* GtkText:
 - Update placeholder visibility when necessary

* GtkPicture:
 - Add a content-fit property

* GtkPopover:
 - Fix a size allocation problem with the arrow

* GtkTreeView:
 - Fix a problem with DND

* GtkTreePopover:
 - Support scrolling

* GtkGridView:
 - Fix issues with rubberband selection

* GtkLabel:
 - Add a tabs property

* GtkSnapshot:
 - Make GtkSnapshot work from bindings

* GtkScrolledWindow:
 - Scroll at a reasonable speed

* GtkPaned:
 - Avoid an infinite loop

* GtkWindow:
 - Improve generation and handling of crossing events

* CSS:
 - Fix handling of certain transform values

* Media support:
 - Add audio support to the ffmpeg backend
 - Avoid oom with pathological jpeg images

* GDK:
 - Fix handling of touchpad hold events
 - Add support for hi-resolution scroll events

* X11:
 - Fix preferred action for DND

* Windows:
 - Fix DND

* List models:
 - Fix items-changed emission
 - Add more list model tests

* Demos:
 - Add a winning sound to game demos
 - Make app icons work uninstalled

* Translation updates:
 Abkhazian
 Basque
 Catalan
 Georgian
 German
 Indonesian
 Occitan
 Persian
 Portuguese
 Russian
 Spanish
 Ukrainian


Overview of Changes in 4.7.1, 12-07-2022
========================================

* GtkInscription:
 - A new label-like widget for use in list views

* GtkColorChooser:
 - Style improvements

* GtkFontChooser:
 - Improve support for OpenType features a bit

* GtkLabel:
 - Allow selectable labels to be activated via mnemonic

* GtkTextView:
 - Implement GetCharacterExtents for accessibility

* GtkStack:
 - Fix a poblem with stack page accessibility

* GtkListView:
 - Cull listitems that are out of view
 - Make all our list models implement ::n-items and
   ::item-type properties

* Translations:
 - Stop translating property nicks and blurbs
 - Fix extracting translations from ui files

* Debugging:
 - Support GTK_DEBUG=invert-text-dir
 - Allow inspecting inspectors
 - Replace GTK_USE_PORTAL with GDK_DEBUG=portals
 - Improve responsiveness of the inspector

* CSS:
 - Allow fractional letterspacing

* Theme:
 - Improve legibility of selectable labels

* Demos:
 - Improve the font features demo
 - Add demos for GtkInscription

* Wayland:
 - Freeze popups when hidden
 - Only send smooth scroll events for tablet tools
 - Make scaled cursor image have the right size
 - Fix problems with the activation protocol
 - Don't force the HighContrast icon theme
 - Support xdg_toplevel.bounds

* X11:
 - Always update the shadoe size

* Windows:
 - Improve touchpad support by using DirectManipulation
 - Add more directories to the builtin hicolor icon theme

* Translation updates:
 Basque
 Catalan
 Chinese (China)
 Galician
 German
 Lithuanian
 Nepali
 Occitan
 Persian
 Polish
 Portuguese
 Russian
 Serbian
 Spanish
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.7.0, 07-05-2022
========================================

* GtkTextView:
 - Reduce overdraws

* GtkViewport:
 - Default scroll-to-focus to TRUE

* GtkText:
 - Stop blinking when we lose focus

* GtkSearchEntry:
 - Make search delay configurable

* GtkPopoverMenu:
 - Fix RTL positioning of buttons

* GtkLabel:
 - Fix focus keynav with links

* GtkFileChooser:
 - Prevent undesirable completion popups
 - Fix a corner case in save mode
 - Keep the portal filechooser alive long enough

* GtkCheckButton:
 - Allow setting a custom child

* GtkEditableLabel:
 - Make the :editing property writable

* GtkColumnView:
 - Various optimizations to improve scrolling performance

* GtkTreeStore:
 - Allow populating tree stores from ui files

* GtkBoxLayout:
 - Avoid infinite loops

* CSS:
 - Optimize reordering within the same parent

* Emoji:
 - Update to CLDR v40 / Unicode 14
 - Add more locales

* Input:
 - Add scroll unit handling
 - Handle display changes in GtkIMMultiContext
 - Always populate GDK_AXIS_X/Y in event history
 - Don't crash for large compose tables

* Accessibility:
 - Fix a crash at start when orca is running

* Theme:
 - Refresh icons
 - Fix selection in vertical spin buttons
 - Fix selection in editable labels

* gdk:
 - Optimize pixel format conversions
 - Use EGL_KHR_swap_buffers_with_damage for NVidia

* gsk:
 - Handle large viewports
 - Prepare texture libraries for glyphy rendering
 - Don't leak big glyphs in the glyph cache
 - Align offscreen rendering with th pixel grid
 - Check for half-float support before using it

* Wayland:
 - Use xdg-activation protocol
 - Fix text caret coordinates
 - Fix on-screen keyboard activation

* MacOS:
 - Fix sluggish and reversed scrolling
 - Improve monitor detection
 - Event handling fixes
 - Fix keyboard input on popovers
 - Support OpenGL-based video playback
 - Suport fullscreen
 - Improve native filechoooser size allocation
 - Use CALayer and IOSurface for rendering
 - Use a per-monitor CVDisplayLink
 - Fix kinetic scrolling
 - Improve window placement
 - Improve multi-monitor handling
 - Start applications in the foreground
 - Fix cursor blink time

* Windows:
 - Fix preedit window placement on HiDPI

* Tools:
 - gtk4-builder-tool: Don't require a display for all commands
 - gtk4-builder-tool: Add a screenshot command
 - gtk4-node-editor: Install this utility

* Debugging:
 - inspector: Show more application data
 - inspector: Allow viewing PangoAttrList properties

* Documentation:
 - Use the gtk-builder-tool to generate screenshots

* Build:
 - Fix cross-compilation
 - Fix build on aarch64
 - Fix build with gcc 12

* Translation updates
 Basque
 Brazilian Portuguese
 British English
 Catalan
 Chinese (China)
 Chinese (Taiwan)
 Croatian
 Czech
 Danish
 Finnish
 Galician
 Georgian
 German
 Hebrew
 Hungarian
 Indonesian
 Italian
 Kazakh
 Korean
 Latvian
 Lithuanian
 Norwegian Bokmål
 Persian
 Polish
 Portuguese
 Russian
 Serbian
 Slovak
 Slovenian
 Spanish
 Swedish
 Turkish
 Ukrainian


Overview of Changes in 4.6.1, 11-02-2022
========================================

* GtkFontChooser:
 - Stop using PangoFc api
 - Fix a crash
 - Use new HarfBuzz api

* GtkMenuButton:
 - Update accessible description

* GtkTextView:
 - Fix intra-widget dnd

* Printing:
 - Fix an fd leak

* Input:
 - Make sure input methods get focus-in events
 - Always flush events to avoid scroll event pileup
 - Support hold events
 - Update keysyms from libxkbcommon

* Theme:
 - Improve text selection legibility

* Introspection:
 - Add missing nullable annotations everywhere

* Build:
 - Make stack noexec again
 - Avoid symbol leaks
 - Drop unneeded script data

* Windows:
 - Stop using WM_SYNCPAINT
 - Relax check for GL 3.x legacy contexts
 - Use native apis for language names
 - Rewrite the keymap code
 - Use the GL renderer by default

* Wayland:
 - Fix support for the new high-contrast setting
 - Avoid redundant scale changes
 - Fix DND hotspot handling
 - Don't always restore the saved size when floating

* MacOS:
 - Various performance improvements

* Translation updates:
 Brazilian Portuguese
 Catalan
 Chinese (China)
 Galician
 Hebrew
 Japanese
 Lithuanian
 Persian
 Polish
 Portuguese
 Russian
