Matthew Kosarek
97c11cf89a
Implement Regular Windows for the win32 framework + add an example application for regular windows ( #173715 )
...
## What's new?
- Implement and test `_window_win32.dart`, the Win32 implementation of
`_window.dart` 🎉
- Wrote a bunch of tests in `window_win32_test.dart` which uses a mock
API barrier to mock the native Win32 layer
- Update `BaseWindowController` to extend `ChangeNotifier` and use it to
inform the `WindowScope` of when things change
- Made `RegularWindowController.empty()` a non-internal constructor, as
it is needed by implementations
- Added a _large_ example application for windowing where users can test
out different windowing concepts and see how they work!
To test, simply run the tests or try out the example app!
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-09-26 13:37:02 +00:00
..
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-07-30 18:40:09 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-14 18:06:57 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-04-09 03:31:31 +00:00
2025-07-07 17:58:32 +00:00
2025-07-09 21:22:48 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-08 18:47:17 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-11 15:27:56 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-22 22:38:17 +00:00
2025-08-12 22:07:18 +00:00
2025-08-08 18:47:17 +00:00
2025-08-14 19:53:20 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-15 22:40:14 +00:00
2025-09-21 03:52:34 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-14 18:06:57 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-06-25 19:12:23 +00:00
2025-08-14 19:53:20 +00:00
2025-07-07 17:58:32 +00:00
2025-07-30 18:40:09 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-24 21:58:08 +00:00
2025-07-07 17:58:32 +00:00
2025-08-14 19:53:20 +00:00
2025-09-24 21:58:08 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-04 18:27:19 +00:00
2025-08-29 01:11:25 +00:00
2025-08-04 22:32:22 +00:00
2025-08-27 22:17:05 +00:00
2025-07-07 17:58:32 +00:00
2025-09-17 17:50:04 +00:00
2025-07-07 17:58:32 +00:00
2025-08-27 22:17:05 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-19 18:43:11 +00:00
2025-07-07 17:58:32 +00:00
2025-09-24 02:00:54 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-07 19:30:24 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-14 22:49:04 +00:00
2025-07-14 22:49:04 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-03-05 17:41:20 +00:00
2025-07-07 17:58:32 +00:00
2025-07-31 16:06:07 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-05-29 17:30:32 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-09-02 20:25:08 +00:00
2025-05-27 19:39:24 +00:00
2025-07-07 17:58:32 +00:00
2025-08-08 18:47:17 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-04 21:05:27 +00:00
2025-06-12 21:26:00 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-04-29 20:58:29 +00:00
2025-04-29 20:58:29 +00:00
2025-04-29 20:58:29 +00:00
2025-04-29 20:58:29 +00:00
2025-04-29 20:58:29 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-08-27 08:17:40 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-09-12 22:19:41 +00:00
2025-09-24 21:30:16 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-08-04 22:32:22 +00:00
2025-08-15 22:40:14 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-05-23 00:02:01 +00:00
2025-09-12 22:19:41 +00:00
2025-08-04 22:32:22 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-27 22:17:05 +00:00
2025-07-07 17:58:32 +00:00
2025-08-26 05:11:45 +00:00
2025-07-07 17:58:32 +00:00
2025-07-08 17:18:58 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-23 23:56:48 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-08-14 19:53:20 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-24 02:04:24 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-07-07 17:58:32 +00:00
2025-09-26 13:37:02 +00:00
2025-07-07 17:58:32 +00:00