github fyne-io/fyne v2.2.0
v2.2.0 - System tray, web driver and JSON themes :)

latest releases: v2.5.2, v2.5.2-rc1, v2.5.1...
2 years ago

The exciting v2.2.0 is finally here and it has a long list of improvements bundled in.
Top of the exciting features are sure to be the support for desktop system tray menus, the ability to run your Fyne apps through a web browser (technical preview - not feature complete) and also to specify themes more easily using JSON resources.

Highlighted additions

  • Add SetIcon method on ToolbarAction (#2475)
  • Access compiled app metadata using new App.Metadata() method
  • Add support for System tray icon and menu (#283)
  • Support for Android Application Bundle (.aab) (#2663)
  • Initial support for OpenBSD and NetBSD
  • Add keyboard shortcuts to menu (#682)
  • Add technical preview of web driver and fyne serve command
  • Added iossimulator build target (#1917)
  • Allow dynamic themes via JSON templates (#211)
  • Custom hyperlink callback (#2979)
  • Add support for .ico file when compiling for windows (#2412)
  • Add binding.NewStringWithFormat (#2890)
  • Add Entry.SetMinRowsVisible
  • Add Menu.Refresh() and MainMenu.Refresh() (#2853)
  • Packages for Linux and BSD now support installing into the home directory
  • Add .RemoveAll() to containers
  • Add an AllString validator for chaining together string validators

Changes

There are also a few changes that may be of note for some developers - there is a small chance you might need to update some code as a result, but none of them are breaking changes:

  • Toolbar item constructors now return concrete types instead of ToolbarItem
  • Low importance buttons no longer draw button color as a background
  • ProgressBar widget height is now consistent with other widgets
  • Include check in DocTabs menu to show current tab
  • Don't call OnScrolled if offset did not change (#2646)
  • Prefer ANDROID_NDK_HOME over the ANDROID_HOME ndk-bundle location (#2920)
  • Support serialisation / deserialisation of the widget tree (#5)
  • Better error reporting / handling when OpenGL is not available (#2689)
  • Memory is now better reclaimed on Android when the OS requests it
  • Notifications on Linux and BSD now show the application icon
  • Change listeners for preferences no longer run when setting the same value
  • The file dialog now shows extensions in the list view for better readability
  • Many optimisations and widget performance enhancements
  • Updated various dependencies to their latest versions

So there you go. There are many, many bug fixes as well but we didn't want to bore you with them - just check the bug tracker :).
Let us know how you get on and have a great time building even more awesome apps!

Don't miss a new fyne release

NewReleases is sending notifications on new releases.