-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add precise scaling control to osu! editor #28309
Conversation
having rotate on |
The hotkey 200% needs to change. This feature is not so central to the editor that it should be allowed to take up a letter without modifiers. I'd probably do something either close to Ctrl-S (because scale) or Ctrl-R (because next to the rotation binding) location-wise. Maybe something like Ctrl-T. |
osu.Game/Screens/Edit/Compose/Components/SelectionScaleHandler.cs
Outdated
Show resolved
Hide resolved
osu.Game/Screens/Edit/Compose/Components/SelectionScaleHandler.cs
Outdated
Show resolved
Hide resolved
…the origin being scaled
Forgot that Ctrl-T was taken by the game-global toolbar already, so it wasn't working.
Seems good enough. I've done a round of cleanups but nothing super worth mentioning in there. Well maybe aside the hotkey changing - Ctrl-T was already taken by the game-global toolbar and thus wasn't working so I did Ctrl-E instead. Head-canon that it's E for scalE, but that's kinda stretching and I just wanted to have it close to Ctrl-R and Ctrl-S I guess. |
This PR adds the scale popover tool from osu! stable to lazer. I tried to mimic the original functionality as closely as possible, and in some aspects improve it.
I also added a hotkey for the scaling tool which is
S
. Unfortunately more logical hotkeys likeCtrl+S
andCtrl+Shift+S
are already taken.The maximum value of the scale slider is determined based on the current choice of origin and axis. The maximum value will always be the maximum scaling value that still keeps the scaling objects on screen.
I also slightly changed how the rotation popover works. Now it will automatically select the text in the textbox input, so the user can instantly type the value they want after opening the tool.