Migrating to 2026 February
Introduction
This page discusses breaking changes and other considerations when migrating from 2026 January to 2026 February . Note that due to last-minute bug fixes, the version was released on March 1.
Upgrading Gum Tool
To upgrade the Gum tool:
Download Gum.zip from the release on Github: https://github.com/vchelaru/Gum/releases/tag/Release_March_01_2026
Delete the old tool from your machine
Unzip the gum tool to the same location as to not break any file associations
To upgrade the Gum tool, it depends on your current version of gum.
Your Gum version < 2026
Download the latest
setup_gum_linux.shscript to your home directory https://github.com/vchelaru/Gum/blob/master/setup_gum_linux.shMake it executable
chmod +x ./setup_gum_linux.shRe-run the
./setup_gum_linux.shscript:It will create a new folder/wine-prefix
~/.wine_gum_dotnet8It will create a new
~/bin/gumscript with anupgradeoption for future upgrades
Errors and Resolutions:
If you get an error about
gum wine prefix directory already existsthen you can either rename your old directory, or install gum to a different wine prefix with./setup_gum_linux.sh ~/.my_wine_prefix
Your Gum version >= 2026
Run the upgrade
gum upgradeor~/bin/gum upgrade
Upgrading Runtime
Upgrade your Gum NuGet packages to version 2026.3.1.1. For more information, see the NuGet packages for your particular platform:
MonoGame - https://www.nuget.org/packages/Gum.MonoGame/
SkiaSharp - https://www.nuget.org/packages/Gum.SkiaSharp/
If using GumCommon directly, you can update the GumCommon NuGet:
If using the Apos.Shapes library, update the library for your target platform:
Gum.Shapes.MonoGame - https://www.nuget.org/packages/Gum.Shapes.MonoGame
Gum.Shapes.KNI - https://www.nuget.org/packages/Gum.Shapes.KNI
For other platforms you need to build Gum from source
See below for breaking changes and updates.
[Breaking] Cursor Visual Interaction Uses Only HasEvents
Previous versions of the Gum runtime would interact with a visual if its HasEvents property was set to true and also if it has any events such as Click assigned. This behavior was confusing and did not respect the HasEvents property. Now, a visual will react to (and consume) events if its HasEvents property is set to true.
Most projects will not be affected by this; however, projects which explicitly set HasEvents to true on a visual will now have events consumed by that visual.
This is most likely a problem if a Standard Element in the Gum tool (such as NineSlice) has its Has Events variable set to true on the Standard Element itself, which makes this value true for all instances of Standard Element.
FlatRedBall continues to use the old behavior, so this change does not break FlatRedBall projects.
Furthermore, the old behavior can still be enabled by explicitly calling this code after initializing Gum.
Note that this old behavior can cause confusion when working with visual elements so keeping the old behavior is not recommended.
Furthermore, the following runtimes now default to HasEvents set to false. Previously these were set to true by default:
NineSliceRuntime
PolygonRuntime
TextRuntime
[Breaking] Gum UI Default Forms Controls
If your project is using the default Forms controls, or if you have created your own custom forms controls, you may need to make the following changes or clicks will not be registered:
PasswordBox
Change PasswordBox.ClipContainer Has Events to false.

TextBox
Change TextBox.ClipContainer Has Events to false.

Last updated
Was this helpful?

