1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-08 15:12:54 +08:00
Commit Graph

550 Commits

Author SHA1 Message Date
Dean Herbert
94ea003d90
Update game ScrollContainer usage in line with framework changes
See https://github.com/ppy/osu-framework/pull/6467.
2025-01-11 01:42:59 +09:00
Bartłomiej Dach
5c8ae6f851
Simplify editor "ternary button" structure
As I look into re-implementing the ability to choose combo colour for an
object (also known as "colourhax") from the editor UI, I stumble upon
these wretched ternary items again and sigh a deep sigh of annoyance.

The structure is overly rigid. `TernaryItem` does nothing that
`DrawableTernaryItem` couldn't, except make it more annoying to add
specific sub-variants of `DrawableTernaryItem` that could do more
things.

Yes you could sprinkle more levels of virtuals to
`CreateDrawableButton()` or something, but after all, as Saint Exupéry
says, "perfection is finally attained not when there is no longer
anything to add, but when there is no longer anything to take away."
So I'm leaning for taking one step towards perfection.
2025-01-09 13:41:22 +01:00
Bartłomiej Dach
98bb723438
Do not expose track directly in EditorClock
Intends to stop people from mutating it directly, and going through
`EditorClock` members like `AudioAdjustments` instead.
2025-01-07 11:40:18 +01:00
Andrei Zavatski
791ca915e4 Fix allocations in updateSamplePointContractedState 2025-01-07 00:48:58 +03:00
Andrei Zavatski
e8dc09f5bc Reduce HitSampleInfo constants allocations 2025-01-07 00:36:58 +03:00
Bartłomiej Dach
693db097ee
Take custom bank name length into account when collapsing sample point indicators
Would close https://github.com/ppy/osu/issues/31312.

Not super happy with the performance overhead of this, but this is
already a heuristic-based implementation to avoid every-frame
`.ChildrenOfType<>()` calls or similar, so not super sure how to do
better. The `Array.Contains()` check stands out in profiling, but
without it the indicators can collapse *too* eagerly sometimes.
2024-12-30 12:04:41 +01:00
Dean Herbert
086a34f5c0
Merge branch 'master' into beatmap-info-purge 2024-11-22 18:47:32 +09:00
Dean Herbert
54ca705680
Merge branch 'master' into hs-toggle2 2024-11-13 19:15:00 +09:00
Dean Herbert
9d65d394d3
Add ability to hide breaks from timeline
This was another IRL request from a mapper / team member. The rationale
here is that it can be very annoying to map with break time enabled if
you have a large gap in the beatmap you are trying to fill with
hitobjects, as you are placing objects on top of a very gray area.
2024-11-05 12:56:19 +09:00
Bartłomiej Dach
f2afec23f9
Merge branch 'master' into hs-toggle2 2024-11-01 18:44:33 +01:00
Bartłomiej Dach
8f48682d0a
Remove hide sample toggle
In line with feedback from
https://github.com/ppy/osu/pull/29896#issuecomment-2378676851.
2024-11-01 18:44:24 +01:00
OliBomby
eb61da4232 only consider hit objects which are visible in timeline for contracted state 2024-10-24 21:22:09 +02:00
Dean Herbert
5939c78760
Merge branch 'master' into auto-addition2 2024-10-23 15:53:07 +09:00
Dean Herbert
2103b3e186
Merge pull request #28863 from OliBomby/additions
Add toggles and hotkeys for configuring sample addition bank
2024-10-23 15:52:55 +09:00
Bartłomiej Dach
dbc2e78dd9
Fix timeline blueprints sometimes causing crashes due to current placement blueprint becoming unsorted
Closes https://github.com/ppy/osu/issues/30324.
2024-10-21 14:48:57 +02:00
OliBomby
22aef90cb7 dont contract samples for stacked objects 2024-10-20 00:07:40 +02:00
OliBomby
f137fed04e Update sample point contracted state each frame 2024-10-19 23:57:41 +02:00
OliBomby
c03017438e Use FinishTransforms to init visual state 2024-10-19 23:57:05 +02:00
OliBomby
48da758c39 contract sample point pieces based on smallest gap on the timeline
It finds the smallest distance between two sample point pieces on the alive timeline blueprints
2024-10-05 20:52:45 +02:00
OliBomby
0a78eb9628
Implement auto additions editor-only 2024-10-01 16:40:48 +09:00
Dean Herbert
1b4215576d
Merge branch 'master' into additions 2024-10-01 16:38:56 +09:00
Dean Herbert
9dcce67b81
Make points slightly smaller when contracted and fix width getting obliterated 2024-09-27 17:24:24 +09:00
Dean Herbert
ce41dc4629
Use bindable flow for zoom handling 2024-09-27 17:13:26 +09:00
OliBomby
34087a0f1a Reduce sample point pieces to pink dot if zoomed out 2024-09-19 16:20:26 +02:00
Bartłomiej Dach
f6195c5515
Add to existing selection when dragging with control pressed
Closes https://github.com/ppy/osu/issues/29023.
2024-09-18 15:18:13 +02:00
OliBomby
e4cfa7c86f Add view menu toggle for sample points 2024-09-17 11:27:23 +02:00
Dean Herbert
58fe502af4
Merge branch 'master' into beatmap-info-purge 2024-09-15 04:53:35 +09:00
OliBomby
ba0c4df2a9 Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-29 19:34:18 +02:00
OliBomby
8fe7ab131c dont seek on right-click, only on keyboard request 2024-08-29 19:34:14 +02:00
OliBomby
b5b4f915a9 Automatic seek to sample point on right-click 2024-08-27 19:40:33 +02:00
OliBomby
daad476593 Add float comparison leniency just in case 2024-08-27 19:04:16 +02:00
Dean Herbert
fb5fb78fd3
Move zero marker below control points to avoid common overlap scenario 2024-08-22 01:09:22 +09:00
Dean Herbert
843b10ef34
Add back incorrectly removed control point display toggle 2024-08-22 01:05:47 +09:00
OliBomby
423feadd64 Revert "add arrow indicator"
This reverts commit 1ce9e97fd4.
2024-08-21 14:12:58 +02:00
Dean Herbert
fef56cc29e
Remove expanding behaviour of timeline completely 2024-08-21 16:57:52 +09:00
Dean Herbert
7e6490133d
Adjust visuals of tick display (and fine tune some other timeline elements) 2024-08-21 16:46:14 +09:00
Dean Herbert
1a48a6f654
Reduce size of hit objects on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
3065f808a7
Simplify timing point display on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
a0002943a1
Adjust centre marker visuals a bit 2024-08-21 16:46:12 +09:00
OliBomby
1ce9e97fd4 add arrow indicator 2024-08-20 23:38:38 +02:00
OliBomby
ae6d855f8d Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-20 23:19:27 +02:00
Dean Herbert
b5a19707d0
Merge branch 'master' into additions 2024-08-08 03:31:11 +09:00
Dean Herbert
2d52bab77b
Always show timing points in timeline when at the timing screen
Supersedes https://github.com/ppy/osu/pull/29196.
2024-07-31 19:43:08 +09:00
Dean Herbert
e329427d6e
Apply nullability to Timeline 2024-07-31 19:28:32 +09:00
Dean Herbert
4983e5f33e
Merge pull request #29039 from bdach/multiple-selection-sample-popover
Make sample popover change properties of all samples in multiple selection
2024-07-24 22:49:20 +09:00
Bartłomiej Dach
1ed7e4b075
Make sample popover change properties of all samples in multiple selection
Closes https://github.com/ppy/osu/issues/28916.

The previous behaviour *may* have been intended, but it was honestly
quite baffling. This seems like a saner variant.
2024-07-24 12:15:12 +02:00
Dean Herbert
aed7ba9508
Change order of application to avoid bias to side with more room to drag
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-07-23 20:56:21 +09:00
Dean Herbert
cc4ed0ff3f
Use non-screen-space coordinates and add time-based drag ramping for better control 2024-07-23 18:59:22 +09:00
Bartłomiej Dach
38fc6f70f6
Add tolerance when drag-scrolling editor timeline
Closes https://github.com/ppy/osu/issues/28983.

While the direct cause of this is most likely mouse confine in
full-screen, it shouldn't/can't really be disabled just for this,
and I also get this on linux in *windowed* mode.

In checking other apps, adding some tolerance to this sort of
drag-scroll behaviour seems like a sane UX improvement anyways.
2024-07-23 11:10:18 +02:00
Dean Herbert
d707e29ff7
Merge branch 'master' into beatmap-info-purge 2024-07-23 12:09:32 +09:00