namespace CursorLang.Core.Models; /// /// Why the current layout has changed. /// public enum LayoutChangeReason { /// The user switched the layout in the active application. UserSwitched, /// The user moved to another application that has a layout of its own. ApplicationSwitched, } /// /// The data of a layout change event. /// public sealed class LayoutChangedEventArgs(KeyboardLayout layout, LayoutChangeReason reason) : EventArgs { public KeyboardLayout Layout { get; } = layout; public LayoutChangeReason Reason { get; } = reason; }