1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 23:42:54 +08:00
Commit Graph

2812 Commits

Author SHA1 Message Date
Dean Herbert
0eb533f2fd
Merge pull request #28444 from bdach/scrolling-ruleset-editor-reloads
Reload scrolling hitobject composer on control point changes
2024-06-20 15:15:26 +09:00
Dean Herbert
a718af8af5
Adjust break colours to match closer to stable 2024-06-19 22:02:10 +08:00
Bartłomiej Dach
617c1341d7
Make (Manual)BreakPeriod a class again
CodeFileSanity doesn't like records and it being a record wasn't doing
much anymore anyway.
2024-06-19 14:53:09 +02:00
Dean Herbert
00443403b6
Merge branch 'master' into break-autogeneration 2024-06-19 21:49:17 +09:00
Dean Herbert
32a7885f10
Merge pull request #28523 from bdach/break-display-and-adjustment
Display breaks on editor timeline & allow manually adjusting their duration
2024-06-19 21:48:54 +09:00
Dean Herbert
00a866b699
Change colour to match bottom timeline (and adjust tween sligthly) 2024-06-19 20:30:43 +08:00
Bartłomiej Dach
2d9c3fbed2
Remove no-longer-necessary null propagation 2024-06-19 11:21:57 +02:00
Bartłomiej Dach
7311a7ffd7
Purge manual breaks if they intersect with an actual hitobject 2024-06-19 10:51:37 +02:00
Bartłomiej Dach
7ed587b783
Fix summary timeline not reloading properly on break addition/removal 2024-06-19 10:26:01 +02:00
Bartłomiej Dach
58701b17f8
Add patcher support for breaks 2024-06-19 10:22:14 +02:00
Bartłomiej Dach
4022a8b06c
Implement automatic break period generation 2024-06-19 10:22:06 +02:00
Bartłomiej Dach
1f692f5fc7
Make BreakPeriod a struct 2024-06-19 09:01:33 +02:00
Bartłomiej Dach
6a6ccbc09f
Make list of breaks bindable 2024-06-19 07:44:03 +02:00
Bartłomiej Dach
f88f05717a
Fix bottom timeline break visualisations not updating 2024-06-18 15:54:34 +02:00
Bartłomiej Dach
814f1e552f
Implement ability to manually adjust breaks 2024-06-18 15:51:29 +02:00
Bartłomiej Dach
a9e662a2b6
Add break display to editor timeline 2024-06-18 14:55:59 +02:00
Bartłomiej Dach
659505f711
Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
Bartłomiej Dach
8a4ae5d23d
Null-propagate all calls to GetContainingFocusManager() 2024-06-18 07:30:46 +02:00
Dean Herbert
316125d47a
Merge pull request #23443 from OliBomby/edit-nodesample
Make NodeSamples editable
2024-06-18 11:12:02 +09:00
Bartłomiej Dach
7cfe8d8df2
Reduce editor opacity of several editor components when hovering over composer
Addresses https://github.com/ppy/osu/discussions/24384.
2024-06-17 12:14:28 +02:00
Bartłomiej Dach
07f1994a13
Align beat snap control width with right toolbox 2024-06-17 11:47:37 +02:00
Bartłomiej Dach
f7910f774d
Remove redundant type spec 2024-06-17 10:54:52 +02:00
Bartłomiej Dach
03049d45bb
Remove stuff that looks bad after moving timeline toggle controls 2024-06-17 10:23:00 +02:00
Bartłomiej Dach
b42752c9f0
Move timeline toggle controls to "view" menu 2024-06-17 10:16:40 +02:00
Bartłomiej Dach
51c598627a
Move out section header component from editor
This sort of thing has been showing up on flyte designs more and more
so I want to start using it more over that rather ugly "overlined" text
that's there on multiplayer screens right now.
2024-06-12 11:43:40 +02:00
Dean Herbert
90481223dd
Merge pull request #28445 from bdach/mania-key-count-change-force-reload
Attempt full editor reload on key count change
2024-06-12 14:42:59 +09:00
Dan Balasescu
39b219bacc
Merge pull request #28441 from bdach/fix-editor-stacking-not-applying-immediately
Fix stack leniency not applying immediately after change
2024-06-12 12:24:28 +09:00
OliBomby
869cd40195 Fixed samples without additions contributing to common addition bank while not having an editable addition bank 2024-06-11 21:31:18 +02:00
OliBomby
12dd60736a remove code already covered by updatePrimaryBankState 2024-06-11 21:20:42 +02:00
Bartłomiej Dach
922837dd3a
Reload scrolling composer on control point changes 2024-06-11 12:01:35 +02:00
Bartłomiej Dach
da53a11d3c
Attempt full editor reload on key count change 2024-06-11 11:31:49 +02:00
Bartłomiej Dach
3afe98612c
Add RestoreState() to IEditorChangeHandler 2024-06-11 11:31:30 +02:00
Bartłomiej Dach
25b2dfa601
Fix stack leniency not applying immediately after change 2024-06-10 14:34:22 +02:00
Bartłomiej Dach
7d5dc750e5
Use slightly lighter shade of pink for alternative colour 2024-06-10 12:04:52 +02:00
Bartłomiej Dach
0efa028e0a
Restructure popover updates to be more centralised 2024-06-10 11:55:51 +02:00
Bartłomiej Dach
1d6b7e9c9b
Refactor further to address code quality complaints 2024-06-10 10:30:30 +02:00
Bartłomiej Dach
e13e9abda9
Disallow running save-related operations concurrently
Closes https://github.com/ppy/osu/issues/25426.

Different approach to prior ones, this just disables the relevant
actions when something related to save/export is going on. Still ends up
being convoluted because many things you wouldn't expect to touch save
do touch save, so it's not just a concern between export and save
specifically.
2024-06-07 08:13:51 +02:00
OliBomby
e873698221 Add some in-depth xmldoc to GetSamples 2024-06-06 14:57:25 +02:00
OliBomby
fcc8671cbd undo useless change 2024-06-06 14:50:24 +02:00
OliBomby
71ce400359 Fix wasteful recreating of container 2024-06-06 14:48:17 +02:00
Bartłomiej Dach
7a8a37dae6
Use established constants 2024-06-06 13:42:31 +02:00
Bartłomiej Dach
86b13074a0
Merge branch 'master' into edit-nodesample 2024-06-06 13:42:25 +02:00
Dean Herbert
212be6b9a7
Merge branch 'master' into grids-1 2024-06-05 15:20:04 +09:00
Bartłomiej Dach
ecfcf7a2c0
Add xmldoc mention about performance overhead of PerformOnSelection() 2024-06-04 10:36:30 +02:00
Bartłomiej Dach
f13ca28d5e
Fix performance overhead from ternary state bindable callbacks when selection is changing
Closes https://github.com/ppy/osu/issues/28369.

The reporter of the issue was incorrect; it's not the beat snap grid
that is causing the problem, it's something far stupider than that.

When the current selection changes,
`EditorSelectionHandler.UpdateTernaryStates()` is supposed to update the
state of ternary bindables to reflect the reality of the current
selection. This in turn will fire bindable change callbacks for said
ternary toggles, which heavily use `EditorBeatmap.PerformOnSelection()`.

The thing about that method is that it will attempt to check whether any
changes were actually made to avoid producing empty undo states, *but*
to do this, it must *serialise out the entire beatmap to a stream* and
then *binary equality check that* to determine whether any changes were
actually made:

	7b14c77e43/osu.Game/Screens/Edit/EditorChangeHandler.cs (L65-L69)

As goes without saying, this is very expensive and unnecessary, which
leads to stuff like keeping a selection box active while a taiko beatmap
is playing under it dog slow. So to attempt to mitigate that, add
precondition checks to every single ternary callback of this sort to
avoid this serialisation overhead.

And yes, those precondition checks use linq, and that is *still* faster
than not having them.
2024-06-04 10:32:12 +02:00
Bartłomiej Dach
4fcb902341
Merge branch 'master' into grids-1 2024-06-03 12:33:51 +02:00
Bartłomiej Dach
4c881b5633
Use better name if we're renaming 2024-05-29 09:40:29 +02:00
OliBomby
d143a697d2 refactor CanScaleFromPlayfieldOrigin and GetClampedScale to derived class 2024-05-28 17:12:16 +02:00
OliBomby
8eb23f8a60 remove redundant CanScaleFromSelectionOrigin 2024-05-28 16:19:57 +02:00
OliBomby
a89ba33b47 rename CanScaleSelectionOrigin/PlayfieldOrigin to make clear its not the origin being scaled 2024-05-28 16:14:16 +02:00