WindowManipulator is completely based on static methods. This seems to create at least three limitations:
Developers can't use Dart's built-in builder syntax:
WindowManipulator
..makeTitlebarTransparent()
..enableFullSizeContentView()
..etc
It seems unlikely that this API will work in a world with multiple windows.
The implementation can't be replaced with a fake version for tests.
All of these issues could be alleviated by using a typical singleton implementation: WindowManipulator.instance or WindowManipulator.primary, etc.
WindowManipulatoris completely based on static methods. This seems to create at least three limitations:Developers can't use Dart's built-in builder syntax:
It seems unlikely that this API will work in a world with multiple windows.
The implementation can't be replaced with a fake version for tests.
All of these issues could be alleviated by using a typical singleton implementation:
WindowManipulator.instanceorWindowManipulator.primary, etc.