1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 04:57:27 +08:00
Commit Graph

3088 Commits

Author SHA1 Message Date
schiavoanto
cf23c6668c Added background color to hide beatmap background 2024-09-08 15:59:23 +02:00
schiavoanto
2bc6547d49 Code quality fix: added type 2024-09-07 16:23:23 +02:00
schiavoanto
32de8e9b2d Fixed ControlPointTable items being blocked by buttons 2024-09-07 16:15:00 +02:00
Bruno Heredia
3b81ad4cbf
Fix scroll speed slider defaulting to 0.01 2024-09-07 01:44:40 -03:00
Bartłomiej Dach
130802e480
Add hotkey hints to editor menus 2024-09-04 12:16:54 +02:00
Bartłomiej Dach
0c4f5bcdaa
Decouple editor main menu items from DrawableOsuMenuItem
It didn't ever really make sense for it to be sharing the implementation
details of that (e.g. colouring of primary/dangerous actions), and with
the hotkey display things got outright hacky, so I'm decoupling it
entirely.
2024-09-04 12:16:52 +02:00
Bartłomiej Dach
3acc5fe5a0
Integrate hotkey display into drawable menu items 2024-09-04 11:58:10 +02:00
Andrei Zavatski
837fa1b8dc Use FastCircle for kiai visualisation 2024-08-31 17:32:24 +03:00
Andrei Zavatski
501ea68a21 Merge branch 'master' into fast-circle 2024-08-31 17:31:30 +03:00
Dean Herbert
6b8b49e4f1
Simplify scroll speed point display code now that it only serves one purpose 2024-08-31 13:14:56 +09:00
Andrei Zavatski
225418dbb3 Rework kiai handling in summary timeline 2024-08-31 01:59:40 +03:00
Andrei Zavatski
f5a2b5ea03 Use FastCircle in demanding places in the editor 2024-08-30 17:45:26 +03: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
Dan Balasescu
4e8fb0dcab
Merge branch 'master' into scroll-speed-std 2024-08-30 00:41:05 +09:00
Dan Balasescu
fec8fa46fa
Merge pull request #29533 from bdach/fix-sample-bank-stuff-again
Fix incorrect bank set / sample addition logic
2024-08-29 21:36:26 +09: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
OliBomby
71044a0766 fix difference in sample time calculation 2024-08-27 19:02:40 +02:00
OliBomby
2de5ecceb8 Merge remote-tracking branch 'upstream/master' into scroll-speed-std 2024-08-22 20:17:14 +02:00
OliBomby
ad8e7f1897 Fix scroll speed visualisation missing on start kiai effect points
They were being drawn far offscreen because the width of the kiai multiplied with the X coordinate of the scroll speed vis.
2024-08-22 20:17:09 +02:00
OliBomby
998b5fdc12 Add property EditorShowScrollSpeed to Ruleset 2024-08-22 19:53:34 +02:00
OliBomby
adbdb39e9f move public member to top of file 2024-08-22 19:18:38 +02:00
OliBomby
0db068e423 allow repeating on seek actions 2024-08-22 19:15:53 +02:00
Bartłomiej Dach
df94c22a29
Merge pull request #29545 from peppy/timeline-redesign-in-circles
Further timeline usability tweaks
2024-08-22 08:39:34 +02:00
Bartłomiej Dach
d33f4837fa
Merge pull request #29532 from bdach/redesign-timing-table-tracking
Redesign timing table tracking
2024-08-22 08:21:39 +02:00
Dean Herbert
9df12e3d87
Move seek button to left to differentiate mutating operations 2024-08-22 14:15:36 +09:00
Dean Herbert
a943000579
Merge pull request #29435 from OliBomby/improve-snaps
Fix timeline snapping ignoring nearby timing points
2024-08-22 01:36:30 +09: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
Bartłomiej Dach
c4f08b42ab
Use colours to distinguish buttons better 2024-08-21 09:05:33 +02: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
Bartłomiej Dach
bb964e32fa
Fix crash on attempting to edit particular beatmaps
Closes https://github.com/ppy/osu/issues/29492.

I'm not immediately sure why this happened, but some old locally
modified beatmaps in my local realm database have a `BeatDivisor` of 0
stored, which is then passed to
`BindableBeatDivisor.SetArbitraryDivisor()`, which then blows up.

To stop this from happening, just refuse to use values outside of a sane
range.
2024-08-20 13:51:58 +02:00
Bartłomiej Dach
c9f1ef5361
Fix incorrect bank set / sample addition logic
Closes https://github.com/ppy/osu/issues/29361.

Typical case of a few early-returns gone wrong leading to `NodeSamples`
not being checked correctly.
2024-08-20 12:37:01 +02:00
Dean Herbert
a633fcdb49
Merge branch 'master' into redesign-timing-table-tracking 2024-08-20 19:16:03 +09:00
Bartłomiej Dach
f0ddb6daa4
Merge pull request #29445 from OliBomby/transparent-break
Make break periods in bottom timeline transparent
2024-08-20 11:46:02 +02:00
Bartłomiej Dach
a33294ac42
Redesign timing table tracking
- On entering the screen, the timing point active at the current instant
  of the map is selected. This is the *only* time where the selected
  point is changed automatically for the user.

- The ongoing automatic tracking of the relevant point after the initial
  selection is *gone*. Even knowing the fact that it was supposed to
  track the supposedly relevant "last selected type" of control point,
  I always found the tracking to be fairly arbitrary in how it works.
  Removing this behaviour also incidentally fixes
  https://github.com/ppy/osu/issues/23147.

  In its stead, to indicate which timing groups are having an effect,
  they receive an indicator line on the left (coloured using the
  relevant control points' representing colours), as well as a slight
  highlight effect.

- If there is no control point selected, the table will autoscroll to
  the latest timing group, unless the user manually scrolled the table
  before.

- If the selected control point changes, the table will autoscroll to
  the newly selected point, *regardless* of whether the user manually
  scrolled the table before.

- A new button is added which permits the user to select the latest
  timing group. As per the point above, this will autoscroll the user
  to that group at the same time.
2024-08-20 11:14:42 +02:00
Dean Herbert
bccc797bcb
Move break display to background of summary timeline 2024-08-20 17:45:44 +09:00
Bartłomiej Dach
373ff47a94
Remove dead row attribute classes
These aren't shown on the control point table since difficulty and
sample control points were moved into objects.
2024-08-20 09:53:40 +02:00
Andrei Zavatski
3cd5820b5b Make PositionSnapGrid a BufferedContainer 2024-08-17 10:34:39 +03:00
OliBomby
621c4d65a3 Hide scroll speed in effect row attribute 2024-08-16 14:43:33 +02:00
OliBomby
b253d8ecbf Hide scroll speed in bottom timeline 2024-08-16 14:43:09 +02:00
OliBomby
5624c1d304 Make break periods in bottom timeline transparent 2024-08-16 13:22:09 +02:00
OliBomby
3a84409546 Use TimingPointAfter for seeking check 2024-08-16 01:36:51 +02:00
Dean Herbert
b5f615882f
Ensure the "Change Difficulty" menu uses up-to-date difficulty names
Closes https://github.com/ppy/osu/issues/29391.
2024-08-15 17:25:30 +09:00
Bartłomiej Dach
06c2952fe8
Merge branch 'master' into grids-3 2024-08-12 13:55:35 +02:00
Dean Herbert
8fdd94090b
Show object inspector values during placement 2024-08-09 18:02:37 +09:00
Bartłomiej Dach
437812eebe
Merge pull request #29279 from normalid-awa/bugfix/editor/delete-operation-wont-close-the-menu
Close context menus when deselecting items in editor
2024-08-07 13:25:13 +02:00
Dan Balasescu
c574551ee0
Simplify caching 2024-08-06 16:02:36 +09:00
Dan Balasescu
b91461e661
Refactor + CI fixes 2024-08-06 15:17:52 +09:00
jkh675
cb877b7675 Close the menu when selecting other object 2024-08-06 13:09:48 +08:00
jkh675
75c0c6a5f9 Make the OsuContextMenu nullable in SelectionHandler 2024-08-05 16:32:49 +08:00
Dean Herbert
0557b9ab79
Allow placement deletion with middle mouse
This is in addition to Shift + Right-click.

I thik middle mouse feels more natural and is a good permanent solution
to this issue.

Note that this also *allows triggering the context menu from placement
mode*. Until now it's done nothing. This may be annoying to users with
muscle memory but I want to make the change and harvest feedback. I
think showing the context menu is more correct behaviour (although
arguably it should return to placement mode on dismiss?).
2024-08-05 14:25:09 +09:00
jkh675
b32d97b4c0 Remove decreapted property 2024-08-04 21:27:25 +08:00
jkh675
2145368d17 Merge EditorContextMenuContainer into OsuContextMenuContainer 2024-08-04 21:00:43 +08:00
jkh675
7c83d6a883 Cleanup code 2024-08-04 19:56:41 +08:00
jkh675
5d31171fb0 Fix code quality 2024-08-04 19:43:43 +08:00
jkh675
3cc5466774 Refactor the code to follow IoC principle and more flexible 2024-08-04 19:39:06 +08:00
jkh675
27d6c4cecb Implement on beatmap editor 2024-08-04 19:16:14 +08:00
jkh675
5c5fcd7e7e Allow key event pass through selection handler 2024-08-04 19:11:21 +08:00
jkh675
1ff0c7cb46 Replace original menu container with custom one 2024-08-04 19:10:49 +08:00
jkh675
83aeb27c73 Replace original menu container to the custom one 2024-08-04 19:08:31 +08:00
jkh675
de6d8e7eb7 Add the custom context menu to handle the key event 2024-08-04 19:07:35 +08:00
Dean Herbert
548fd9cbf9
Show breaks behind objects in timeline
Closes https://github.com/ppy/osu/issues/29227.
2024-08-01 19:47:44 +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
Salman Ahmed
621f4dfece Enforce new line between X/Y coordinate in editor position inspector 2024-07-30 02:45:21 +03: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
aded31bd07
Merge pull request #29021 from bdach/editor-breaks-respect-time-preempt
Respect pre-empt time when auto-generating breaks
2024-07-24 15:21:12 +09: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
Bartłomiej Dach
c3062f96ee
Fix autogenerated breaks not invalidating on change to pre-empt time 2024-07-23 13:38:50 +02:00
Bartłomiej Dach
088e8ad0a2
Respect pre-empt time when auto-generating breaks
Closes https://github.com/ppy/osu/issues/28703.
2024-07-23 13:30:13 +02: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
c2cc85e6f0
Use purple again for kiai time specifically 2024-07-19 19:59:38 +09:00
Dean Herbert
c4de2bbb60
Ignore "too many ticks" in timeline (triggers in normal cases) 2024-07-19 19:57:47 +09:00
Dean Herbert
5ee645ac8f
Increase opacity of control points slightly 2024-07-19 19:50:21 +09:00
Bartłomiej Dach
4dd225fdc8
Fix compose blueprint container not unsubscribing from event
Closes https://github.com/ppy/osu/issues/28938.

This is related to reloading the composer on timing point changes in
scrolling rulesets. The lack of unsubscription from this would cause
blueprints to be created for disposed composers via the
`hitObjectAdded()` flow.

The following line looks as if a sync load should be forced on a newly
created placement blueprint:

    da4d37c4ad/osu.Game/Screens/Edit/Compose/Components/ComposeBlueprintContainer.cs (L364)

however, it is not the case if the parent
(`placementBlueprintContainer`) is disposed, which it would be in this
case. Therefore, the blueprint stays `NotLoaded` rather than `Ready`,
therefore it never receives its DI dependencies, therefore it dies on
an `EditorBeatmap` nullref.
2024-07-19 08:32:36 +02:00
Salman Ahmed
a570949459 Fix selection box initialy visible despite no items selected 2024-07-19 03:00:44 +03:00
Bartłomiej Dach
ad2db3f853
Merge pull request #28882 from peppy/update-framework
Update framework
2024-07-16 12:28:51 +02:00
Dean Herbert
f1325386f0
Fix summary timeline timing points having x position applied twice 2024-07-16 18:32:54 +09:00
Dean Herbert
4ad7d900c1
Fix incorrect editor screen padding 2024-07-16 18:20:33 +09:00
Bartłomiej Dach
217b01d303
Apply tooltip to bookmark pieces too
Bookmarks don't show on real beatmaps, but they do show in test scenes
(namely `TestSceneEditorSummaryTimeline`).

Also does some more changes to adjust the markers to the latest updates
to other markers.
2024-07-12 11:12:20 +02:00
Dean Herbert
2453e2fd00
Fix nullability issue 2024-07-12 18:11:23 +09:00
Bartłomiej Dach
5e00995948
Merge branch 'master' into tooltips 2024-07-12 11:01:03 +02:00
Bartłomiej Dach
518dc17518
Merge pull request #28788 from bdach/timeline-redesign
Redesign editor timelines to address most frequent user complaints
2024-07-12 10:58:59 +02:00
Dean Herbert
4be5d056c5
Reduce opacity of centre marker slightly 2024-07-12 17:23:48 +09:00
Dean Herbert
d2cb07b157
Add a bit more padding between node overlays and hitobjects in timeline 2024-07-12 17:22:36 +09:00
Dean Herbert
2454722601
Add tooltips to summary timeline display 2024-07-12 16:39:41 +09:00
Dean Herbert
275e7aa451
Adjust timeline centre marker visuals and bring in front of ticks 2024-07-12 16:37:03 +09:00
Dean Herbert
ca2fc72959
Adjust timeline centre marker visuals and bring in front of ticks 2024-07-12 16:29:40 +09:00
Dean Herbert
f65ab6736d
Adjust breaks in timeline to be centered with waveform / hitobjects 2024-07-12 15:45:58 +09:00