SetAspectRatio should constrain the content area consistently across platforms
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
Research direction
Start at Window::SetAspectRatio and trace the platform-specific implementations, especially Windows WM_SIZING and programmatic resize handling, alongside Linux geometry hints and macOS contentAspectRatio. Done means the Flutter content area, rather than the whole window including non-client decorations, maintains the requested aspect ratio consistently across platforms.
Written by the indexing model from the issue text.
Description
Window::SetAspectRatio() behaves differently per platform:
- macOS constrains the content area (
contentAspectRatio), unless the content is full-size. - Windows constrains the whole window rect in
WM_SIZING, title bar and borders included, so the Flutter view ends up with a different ratio. - Linux uses geometry hints on the window, and users report the content not matching the ratio.
Expected: the ratio applies to the content area on all platforms. On Windows, subtract the non-client size before applying the ratio in WM_SIZING, and apply it to programmatic resizes too.
Background:
- leanflutter/window_manager#437: exclude the title bar from the aspect-ratio calculation
- leanflutter/window_manager#520: actual window ratio differs from the one set
- leanflutter/window_manager#566: setAspectRatio behaves differently on Windows and Linux
- Dominant language
- C++
- Stars
- 34
- Forks
- 7
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from libnativeapi/nativeapi
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#81 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#80 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 35/100
libnativeapi/nativeapi#79 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#78 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#77 ·
All issues in libnativeapi/nativeapi
Similar issues
-
AuTest Bug Tests
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
apache/trafficserver#13714 ·
-
bug build
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
facebookincubator/velox#19143 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tenstorrent/tt-metal#57393 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
objectionary/eo-graphs#74 ·