==============
Version 3.26.3
==============

Changes in this release:

 • A number of fixes to DzlSignalGroup to be more re-entrant safe
   and handle disposal cycles better.
 • DzlPreferences is more aggressive about protecting against
   widget disposal.
 • A static inline dzl_clear_signal_handler() was backported for
   use in other backports from master.
 • A number of protections were added to DzlDirectoryReaper to
   protect against potentially following through symlinks.
 • Max age in DzlDirectoryReaper was changed to always ensure
   a positive value for use in date comparisons.
 • A leak of GFile instances in the directory reaper was fixed.

It's recommended that all distributions update to this release.

==============
Version 3.26.2
==============

Changes in this release:

 • Progress menu button will now avoid spinning in some conditions.
 • Leak fixed in DzlTree text rendering.
 • Shortcut mneumonics are now properly activated.
 • Fixes to avoid various deprecated API.
 • A number of leaks detected by ASAN were fixed.
 • The directory reaper handles various mtime comparisons more
   correctly now.
 • Some G-I annotations were improved.
 • DzlMenuMerger is more flexible with input.
 • Some performance improvements when dealing with CSS and other
   resources paths.

It's recommended that all distributions update to this release.

==============
Version 3.26.1
==============

Changes in this release:

 • icons: avoid thrashing the GtkIconTheme on startup
 • prefs: track destruction state of pref widgets
 • macros: add a few internally used macros to public API
 • trie: various alignment fixes for Win32 and Win64
 • tests: crib some test data for portable tests
 • file-chooser-entry: be lazy with dialog construction

==============
Version 3.26.0
==============

This is our first stable release! Thanks to everyone involved in making
that happen!

Changes in this release:

 • Fix tab/shift+tab to change focus when using shortcut manager.
 • Manually set marshaller and va marshallers on DzlTreeBuilder
   which helps slightly with performance of signal emission.
 • Various Mingw build fixes.

===============
Version 3.25.92
===============

Changes in this release:

 • Enforce GNU11 C standard when configuring project.
 • DzlApplicationWindow automatically queries the shortcut manager.
 • The shortcut manager now checks GtkApplication registered accelerators
   providing an improved migration strategy for applications.
 • Lifecycle tests were removed from the test-fuzzy-index as they were
   racy via delayed disposal of threaded workers. This should fix unit
   tests for various distributions on less common hardware.
 • Menu buttons now remove the proper section item when handling GMenuModel
   changes.
 • Our meson-based build system now checks if version-script is supported
   and only applies the ABI map in that case. We may consider switching to
   export macros in the future.
 • Counters are now disabled on Windows.
 • Various compiler pre-processor checks have been improved.
 • A fallback for strcasecmp() is included for Windows.
 • DzlSuggestion will now use intern'd strings for icon-names to help
   reduce the number of duplicate strings in memory.
 • Various CSS styling refinements.
 • DzlListBox fixed a lingering pointer to the cached row during disposal.
   This fixes a crash that would occur if GObjectClass.dispose() was called
   multiple times.

===============
Version 3.25.91
===============

Changes in this release:

 • DzlDirectoryReaper now properly removes recursive directories
 • DzlListStoreAdapter is a new GListModel->GtkTreeModel adapter
 • DzlSignalGroup had an overzealous assertion which was removed
   and corner case handled.
 • DzlShortcutTheme properly handles closure chain parse failure case
 • DzlShortcutManager can handle DzlShortcutEntry that are not static
   allocations.

===============
Version 3.25.90
===============

Changes in this release:

 • DzlSignalGroup and DzlBIndingGroup were made LGPLv2.1+ so they can be
   copied into projects that cannot link against libdazzle.
 • DzlDockBin got a number of bug fixes.
 • Various compilation fixes for less used compilers.
 • DzlTree gained support for "expanded icon names".
 • DzlTree has a new "always-expand" property to ensure it stays expanded.
 • DzlDockStack no longer requires homogeneous sized children.
 • DzlStackList transition animations have been tweaked to more closely
   reflect physical locality.
 • Calculated animation duration was sped up 1.5x.

==============
Version 3.25.5
==============

We are quickly releasing a followup to 3.25.4 to fix a number of bugs with
the shortcut engine that were found as Builder transitioned to it.

 • DzlShortcutManager is not in control of event delivery. This allows the
   capture/bubble phase to act as expected and still integrate with
   GtkBindingSet.
 • DzlSuggestionEntry now properly places the popover window when using the
   X11 backend.
 • Various license blurbs have been updated to reflect reality.

Thanks to everyone who was quick to report bugs.

==============
Version 3.25.4
==============

We are mid-development cycle for GNOME 3.26 and so as you can imagine, we are
busy adding the features we need to libdazzle. Given how early the project is,
the pace of development has been quite rapid.

 • Updated build system to make things easier to maintain.
 • Soname and libtool-like versioning has been added. Like GObject and Gtk,
   we don't intend on bumping this when we break ABI during development
   snapshots. Only in the stable series.
 • Consistent LGPL-2.1+ usage.
 • DzlJoinedMenu is a new GMenuModel implementation that allows you to
   concatenate multiple GMenuModel implementations. This can be useful
   in various plugin scenarios.
 • DzlMultiPaned has gone through more improvements. We know of a few more
   that need to be shaken out before 3.26, but things are stabilizing.
 • Utilities to proxy action groups between GtkWidgets.
 • WIN64 build fixes for DzlTrie.
 • Examples have been added for DzlApplication and the CPU graph.
 • Many theming improvements.
 • DzlDockBin now tries to unpin a panel when animating out. This can give
   the effect of smoother transitions where the cost of resizing the main
   window content is high (such as with textviews).
 • Utilities for insertion with GtkListStore have been added.
 • DzlPropertiesGroup is a new GActionGroup that can help simplify exposing
   groups of properties on a single object as a GActionGroup.
 • The DzlMenuMerger can now perform multi-phase sorting to increase the
   chances of ideal placement with before/after among multiple menu items.
 • A new DzlMenuButton has been added that has a consistent style for a few
   forms of MenuButton type scenarios. It can have icons, accelerators and
   we expect in the future to keep the accelerator in sync with the active
   shortcut theme. Some extended attributes with menus.ui are used.
 • DzlSuggestionEntry now supports a position function which can specify being
   relative to the window or to the entry widget. Various position functions
   are provided as a convenience.
 • The shortcut engine has gained support for CAPTURE/BUBBLE semantics.
 • The shortcut engine has gained support for specifying global shortcuts
   which can be activated outside the chain of focus.

We hope you enjoy using libdazzle!


==============
Version 3.25.3
==============

This is our first release of libdazzle. While we would love for a perfect first
release, we expect you'll find issues. So please help us get things stable as
we move towards GNOME 3.26.

Our focus is building a utility kit GNOME applications. If you want to see
practical examples of using Dazzle, we suggestion looking at the GNOME Builder
project which uses Dazzle extensively.
