- Add identifier to
DefaultToolbarto fix assertion failure on macOS 10.15 and 12.x (thanks to @cbenhagen).
- Add
setWindowMinSizeandsetWindowMaxSizemethods toWindowManipulatorto allow setting the minimum and maximum window size (thanks to @defuncart).
- Prevent
_titlebarHeightfrom being set to a negative value when drag resizing the window (thanks to @CodeEagle).
- Migrate away from deprecated interfaces.
- Set Flutter version constraint to
">=3.27.0".
- Undo the migration away from deprecated interfaces, as it caused incompatibilities with older Flutter versions.
- Add support for Swift Package Manager. (Thanks to @EchoEllet!)
- Migrate away from deprecated interfaces.
- Add missing documentation to
WindowManipulator.updateToolbarPassthroughViewandWindowManipulator.removeToolbarPassthroughView.
- Provide support for older Swift compiler versions.
- Add
miniaturizeWindowmethod (thanks @parkerhutchinson).
- Fix nil being found when unwrapping an Optional value when
resetis called beforestartinMainFlutterWindowManipulator.swift.
- Add
MacosToolbarPassthroughto allow for the creation of so-called “passthrough views” on the toolbar that relay mouse events to the Flutter application (thanks to @Andre-lbc and @adiletcool).
- Add instructions on how to setup macos_window_utils for macOS Monterey and earlier versions.
- Add support for a blocking toolbar, that is, a special kind of toolbar that blocks double clicks from the user and allows for UI elements to be placed inside a blocked area (thanks to @cbenhagen and @Andre-lbc).
- Add the following window methods:
preventWindowClosureallowWindowClosureisWindowClosureAllowedcloseWindowperformClose
- Add methods to retrieve or manipulate the window’s size and position.
- Add
overrideStandardWindowButtonPositionandgetStandardWindowButtonPositiontoWindowManipulatorto allow getting and setting the position of standard window buttons.
- Fix typo in README.
- Add
isMainWindowgetter to WindowManipulator.
- Fix multiple
FlutterViewControllers being created, which prevented the apps from exiting properly on Flutter 3.10.
- Make macos_window_utils work without modifications to
MainFlutterWindow.swift.
- Hotfix: Fix accidental breaking change in directory structure in 1.1.0.
- Add an abstract
NSWindowDelegatethat can be used to listen to events provided by NSWindowDelegate such as window resizing, moving, exposing, and minimizing. The following methods are currently supported:- Managing Sheets
windowWillBeginSheetwindowDidEndSheet
- Sizing Windows
windowWillResizewindowDidResizewindowWillStartLiveResizewindowDidEndLiveResize
- Minimizing Windows
windowWillMiniaturizewindowDidMiniaturizewindowDidDeminiaturize
- Zooming Window
windowWillUseStandardFramewindowShouldZoom
- Managing Full-Screen Presentation
windowWillEnterFullScreenwindowDidEnterFullScreenwindowWillExitFullScreenwindowDidExitFullScreen
- Moving Windows
windowWillMovewindowDidMovewindowDidChangeScreenwindowDidChangeScreenProfilewindowDidChangeBackingProperties
- Closing Windows
windowShouldClosewindowWillClose
- Managing Key Status
windowDidBecomeKeywindowDidResignKey
- Managing Main Status
windowDidBecomeMainwindowDidResignMain
- Exposing Windows
windowDidExpose
- Managing Occlusion State
windowDidChangeOcclusionState
- Managing Presentation in Version Browsers
windowWillEnterVersionBrowserwindowDidEnterVersionBrowserwindowWillExitVersionBrowserwindowDidExitVersionBrowser
- Managing Sheets
- Add an
NSAppPresentationOptionsclass that allows the window's fullscreen presentation options to be modified.
- Fix incompatibility with Flutter 3.7.0.
- Add
setLevelmethod. - Add the following
order*methods:orderOutorderBackorderFrontorderFrontRegardless
- Add methods to modify the window's
styleMaskproperty. - Improve documentation.
- Improve “Getting started” section in the project's readme.
- Improve documentation formatting.
- Initial version.