b36b40cb34
Remove unnecessary double specification
2021-05-26 15:20:47 +09:00
65649e5a62
Prevent skin editor crash when scaling 0 area drawables
...
Some skinnable drawables can have 0 width or height in certain
cases, leading to division by 0 and a crash when the position is
updated.
2021-05-24 21:36:42 +02:00
45c6a9ca91
Merge branch 'refactor-selection-rotate-logic' into fix-flip-logic-discrepancy
2021-05-22 21:17:58 +09:00
7d88a19d7f
Remove unnecessary field storage of origin reference
2021-05-22 21:03:40 +09:00
34a5b22b79
Merge branch 'master' into refactor-selection-rotate-logic
2021-05-22 20:52:28 +09:00
485728ca4e
Merge pull request #12866 from peppy/refactor-selection-scale-logic
...
Add proper scaling support to skin editor
2021-05-22 20:07:03 +09:00
bb2fae55ce
Merge branch 'master' into refactor-selection-rotate-logic
2021-05-21 19:19:54 +09:00
0d575f5728
Remove incorrect (and unintended) modulus logic
2021-05-21 15:06:53 +09:00
f9d51656b6
Fix scaling of rotated items not behaving in an understandable way
2021-05-21 15:02:36 +09:00
7845d07dd5
Merge pull request #12886 from peppy/fix-skin-editor-context-menu-sticking
...
Fix skin editor context menus not dismissing when clicking away
2021-05-20 21:03:35 +09:00
1848bd902d
Fix skin editor context menus not dismissing when clicking away
2021-05-20 19:51:07 +09:00
df5970fab4
Create base implementations of the two most common TernaryStateMenuItem
s
2021-05-20 19:34:53 +09:00
20f1ef4318
Extract common implementation of updating drawable position from screen space pos
2021-05-20 18:35:13 +09:00
6f75c59760
Fix flip logic not using the full selection quad
2021-05-20 18:31:51 +09:00
95c78b9185
Split out common selection quad logic
2021-05-20 18:24:25 +09:00
27e81d6504
Implement proper rotation algorithm for skin editor
2021-05-20 18:21:16 +09:00
eb5db8ff03
Disable border display on skin editor to avoid crashes
...
This wasn't being displayed correctly anyway, so rather than fixing
let's just remove it for now.
Closes #12868 .
2021-05-20 02:01:46 +09:00
a55879e511
Fix oversights in scale algorithm
2021-05-20 01:47:31 +09:00
14af86d6c5
Use the same code path for all scaling
2021-05-19 21:46:41 +09:00
6a3c58b9ad
Implement proper scaling algorithms
2021-05-19 19:58:55 +09:00
d661e98fa6
Move common functionality out of OsuSelectionHandler
and implement flip support
2021-05-18 18:34:06 +09:00
c80e736712
Change SkinBlueprint
to use the origin point as the selection point
...
Not sure how this feels, but it makes using the same point throughout
the editor possible, which I think is the correct way forward for now.
2021-05-18 18:33:06 +09:00
ea4dfd3374
Merge pull request #12842 from peppy/song-progress-skinnable
...
Add layout customisation support for `SongProgress`
2021-05-17 20:15:01 +09:00
42d2711dc6
Use ShouldBeConsideredForInput
instead of ReceivePositionalInputAtSubTree
2021-05-17 19:29:59 +09:00
60f3e628bc
Fix song progress being interactable inside toolbox button
2021-05-17 19:05:22 +09:00
0d7a349500
Exclude interfaces from skinnable types
2021-05-17 18:16:09 +09:00
3d3c5028e6
Trim unnecessary array copy
2021-05-14 22:33:26 +02:00
d09da02673
Fix deleting skin elements not saving out to skin
...
Closes https://github.com/ppy/osu/issues/12786 .
2021-05-14 16:03:22 +09:00
46e7d9e0ed
Randomise the values displayed in the skinning toolbox
...
To stop the spam of "WYSI" comments everywhere. I guess I underestimated
the negative effect this would have.
2021-05-14 12:15:58 +09:00
6a64a705b8
Merge branch 'master' into skin-blueprint-aspect-lock
2021-05-13 17:53:00 +02:00
25b1443c50
Remove dead branch and mark implementation as temporary
...
The previous implementation was checking if the `x0` or `x2` anchors
were selected to decide on which way to transfer the drawable's scale,
but that check actually ends up being always true for corner anchors. To
visualise, this is how the corner anchors correspond to `Anchor` flags:
x0 x1 x2
| | |
y0 -O---O---O-
| | |
y1 -O---+---O-
| | |
y2 -O---O---O-
| | |
The Os indicate where the reference anchors are on a selection box.
The first conditional eliminates the middle ones, which makes sense.
But after excluding them from further deliberations (marking via X):
x0 x1 x2
| | |
y0 -O---X---O-
| | |
y1 -X---+---X-
| | |
y2 -O---X---O-
| | |
The remaining anchors always have `x0` or `x2` set. So to avoid
confusion, just always transfer one way for now. At some point this
should be torn out in favour of an actual implementation of the desired
behaviour.
2021-05-13 17:50:12 +02:00
0fa90a80d4
Merge branch 'master' into skin-blueprint-aspect-lock
2021-05-13 23:38:53 +09:00
3ecbb9ec4b
Merge branch 'master' into skin-blueprint-anchor-origin
2021-05-13 23:38:04 +09:00
98830dadda
Merge pull request #12762 from peppy/skin-blueprint-visual-improvements
...
Improve the visual appearance of skin editor blueprints
2021-05-13 23:37:21 +09:00
cef39eb4fa
Merge pull request #12766 from peppy/stable-anchor-origin
...
Keep component positions stable when changing anchor/origin
2021-05-13 23:36:40 +09:00
6c12cae105
Remove unnecessary property
2021-05-13 22:25:11 +09:00
c57a2f43fa
Merge branch 'master' into skin-blueprint-visual-improvements
2021-05-13 22:22:42 +09:00
4cf4817ad2
Remove redundant parens
2021-05-13 22:11:58 +09:00
d2fdd1e521
Merge branch 'master' into stable-anchor-origin
2021-05-13 22:06:21 +09:00
67f795cfa6
Merge branch 'master' into save-on-forced-exit
2021-05-13 22:00:38 +09:00
b939318922
Merge branch 'skin-serialisation' into skin-editor-default-placement-location
2021-05-13 19:09:34 +09:00
e5f765d1a8
Fix broken exception message
2021-05-13 19:06:58 +09:00
bda0ea463a
Merge branch 'skin-serialisation' into save-on-forced-exit
2021-05-13 19:05:47 +09:00
07e475cd13
Fix skin blueprint box drawing incorrectly when both scale and rotation are applied
2021-05-13 18:54:40 +09:00
df77b28b48
Add a flimsy guard against null parent to avoid crashes on exit sequence
2021-05-13 18:39:21 +09:00
9f8e6979dd
Fix display of skin blueprints when flipped
2021-05-13 18:00:25 +09:00
1cda55393e
Add aspect ratio locking and flip support to skin editor
2021-05-13 17:51:57 +09:00
106fa97a11
Rename SkinnableElementTargetContainer
to SkinnableTargetContainer
2021-05-13 17:07:38 +09:00
7921dc7ece
Rename ISkinnableComponent
to ISkinnableDrawable
2021-05-13 17:06:00 +09:00
cdcd31b546
Replace ISkinSerialisable
with IsEditable
property
2021-05-13 17:03:17 +09:00