Commit a2b796b
committed
Fix portrait controller layout and touch targets
- Portrait gameplay now uses a VStack with a top game viewport and a bottom
controller deck, instead of full-screen game with overlay.
- Game viewport height is min(width * 3/4, height * 0.55) for aspect-correct
sizing while keeping the controller deck usable.
- Portrait no longer blanket-ignores safe area; top safe area is respected so
OSD text stays below the Dynamic Island. Bottom safe area is ignored so
controller buttons remain usable near the home indicator.
- Menu button is placed via .overlay(alignment: .topTrailing) in portrait.
- PSBtn and PadBtn now have a minimum 55x55 pt touch target regardless of
visual skin size. The UIKitPadPressSurface UIButton and the DragGesture
both cover the expanded target while the visual button stays unchanged.
- PadLayoutStore gains resetAll() which resets both portrait and landscape
group positions and all per-button overrides. Visibility is not reset.
- PadLayoutEditView Reset All button calls resetAll() so it correctly resets
both orientations and per-button positions. Undo and Cancel still work.1 parent 55fddb3 commit a2b796b
4 files changed
Lines changed: 73 additions & 28 deletions
File tree
- app/src/main/swift
- Models
- Views
- Settings
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
338 | 338 | | |
339 | 339 | | |
340 | 340 | | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
341 | 350 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
90 | | - | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
91 | 94 | | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
92 | 98 | | |
93 | | - | |
94 | | - | |
95 | | - | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
96 | 105 | | |
97 | | - | |
98 | 106 | | |
99 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
100 | 115 | | |
101 | 116 | | |
102 | 117 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
252 | 252 | | |
253 | 253 | | |
254 | 254 | | |
255 | | - | |
| 255 | + | |
256 | 256 | | |
257 | 257 | | |
258 | 258 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
917 | 917 | | |
918 | 918 | | |
919 | 919 | | |
| 920 | + | |
| 921 | + | |
920 | 922 | | |
921 | | - | |
922 | | - | |
| 923 | + | |
| 924 | + | |
923 | 925 | | |
924 | 926 | | |
| 927 | + | |
925 | 928 | | |
926 | | - | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
927 | 936 | | |
928 | | - | |
929 | | - | |
930 | | - | |
931 | | - | |
| 937 | + | |
932 | 938 | | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
933 | 946 | | |
934 | | - | |
935 | | - | |
936 | | - | |
937 | 947 | | |
938 | 948 | | |
939 | 949 | | |
| |||
981 | 991 | | |
982 | 992 | | |
983 | 993 | | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
984 | 997 | | |
985 | | - | |
986 | | - | |
| 998 | + | |
| 999 | + | |
987 | 1000 | | |
988 | 1001 | | |
| 1002 | + | |
989 | 1003 | | |
990 | | - | |
| 1004 | + | |
| 1005 | + | |
| 1006 | + | |
| 1007 | + | |
| 1008 | + | |
| 1009 | + | |
| 1010 | + | |
991 | 1011 | | |
992 | | - | |
993 | | - | |
994 | | - | |
995 | | - | |
| 1012 | + | |
996 | 1013 | | |
| 1014 | + | |
| 1015 | + | |
| 1016 | + | |
| 1017 | + | |
| 1018 | + | |
| 1019 | + | |
| 1020 | + | |
997 | 1021 | | |
998 | | - | |
999 | | - | |
1000 | | - | |
1001 | 1022 | | |
1002 | 1023 | | |
1003 | 1024 | | |
| |||
0 commit comments