SimpleToolkit is a .NET MAUI library of helpers and simple, fully customizable controls, such as SimpleShell - custom Shell implementation that allows you to create unique navigation experiences.
As of this release:
SimpleShell
automatically calls the DisconnectHandler()
method on all handlers of pages that are being removed from a navigation stack. For example, when you pop a page from a navigation stack, the DisconnectHandler()
method is called on its handler. This behavior can be disabled on a per-page basis with the new SimpleShell.ShouldAutoDisconnectPageHandler
attached property.
When SimpleShell.ShellGroupContainerTemplate
property value is changed on currently selected ShellItem
or ShellSection
, the container is recreated immediately.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v4.0.0...v4.1.0-simpleshell
With .NET 8 release comes a new major version of SimpleToolkit. The main focus of this new version has been SimpleShell
and of course an upgrade to .NET 8.
SimpleShell
As of this release, SimpleShell
got a bit more stable and received quite a lot of new features.
The most significant one is platform-specific page transitions. With these transitions it is easier to achieve platform-specific look and feel of your SimpleShell
applications. SimpleShell
even comes with some predefined platform-specific transitions which are used by default. See updated documentation for more information.
ShellSectionContainer
has been replaced by ShellGroupContainer
which can be used not only on Tab
elements (ShellSection
s) but also on FlyoutItem
and TabBar
elements (ShellItem
s). See updated documentation for more information.
New FlyoutItems
and TabBars
bindable properties have been added to the SimpleShell
class.
The Shell.PresentationMode
attached property now affects whether the transition animation is played or not.
The documentation has been updated overall to make it a bit clearer how things work. Attention was paid to the SimpleShell
documentation in particular.
This update comes with lots of breaking changes in both SimpleToolkit.Core and SimpleToolkit.SimpleShell. However, these changes have been focused primarily on controls implementations (for example handlers have been changed a lot) and API of the controls have not changed much.
These are the most significant changes:
ShellSectionContainer
has been renamed to ShellGroupContainer
.
The UseSimpleShell()
method currently takes a boolean usePlatformTransitions
parameter, which defaults to true
and controls whether platform-specific animated transitions between pages are used. If you want to use the original way of defining page transition animations in SimpleShell
, set this parameter to false
.
The SetTransition()
method takes an object implementing the ISimpleShellTransition
interface instead of a SimpleShellTransition
instance.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v3.0.0...v4.0.0
After some time, a new major version of SimpleToolkit is available. The main focus of this new version has been SimpleShell
and cleanup of the project.
SimpleShell
As of this release, SimpleShell received several new features which overall help in creating various navigation experiences - in particular RootPageContainer
and ShellSectionContainer
. These containers allow to define views that wrap only root pages. They are typically well suited for definition of tab bars, app bars, floating buttons and other controls that are shared between root pages.
Page transitions API also received an update. Now we are able to specify an easing of a transition animation and access quite a lot more useful properties in SimpleShellTransitionArgs
to make more complex transitions.
https://github.com/RadekVyM/SimpleToolkit/assets/65116078/694efb22-2a1f-4ec2-b169-307499357ae4
See updated documentation for more information.
This update comes with lots of breaking changes in both SimpleToolkit.Core and SimpleToolkit.SimpleShell. However, these changes have been focused primarily on controls implementations and API of the controls have not changed much except for SimpleShell
- RootPageOverlay
has been replaced by RootPageContainer
.
The deprecated constructor and extension method for creating and setting page transitions have been removed. Rest of constructors and extension methods has been expanded with aforementioned properties.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v2.1.0-simpleshell...v3.0.0
As of this release:
Navigation.PopToRootAsync()
in SimpleShell
works now.CombinedWith()
extension method for SimpleShellTransition
was added. This method allows you to combine two transitions into one. Check out documentation for more information.SimpleShellTransition
and one overload of the SetTransition()
extension method have been marked as obsolete.Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v2.0.0...v2.1.0-simpleshell
SimpleToolkit has been updated to .NET 7.
⚠ Warning: Previous versions of SimpleToolkit.SimpleShell do not work in .NET 7 MAUI applications on Android because of a change in the framework.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v1.1.0...v2.0.0
As of this release, SimpleShell
allows you to define custom transitions between pages during navigation.
See documentation for more information.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v1.0.0...v1.1.0
This version of SimpleToolkit consists of:
Shell
that lets you easily create custom navigation experience in your .NET MAUI applicationsFull Changelog: https://github.com/RadekVyM/SimpleToolkit/compare/v1.0.0-preview1...v1.0.0
The first release of SimpleToolkit.
Full Changelog: https://github.com/RadekVyM/SimpleToolkit/commits/v1.0.0-preview1