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

548 Commits

Author SHA1 Message Date
Dean Herbert
c3d2648f85
Reword weird xmldoc
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-05-05 17:07:05 +09:00
Dean Herbert
1fce0da331 Reword slightly, to allow better conformity with IDistanceSnapProvider 2022-05-05 16:04:34 +09:00
Dean Herbert
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
Bartłomiej Dach
bf80dd864c
Merge branch 'master' into fix-editor-toolbox-click-through 2022-05-04 11:57:32 +02:00
Dean Herbert
4e0f899159 Rename value changed variable 2022-05-04 18:13:30 +09:00
Salman Ahmed
f5d4f02200 Use ToUpper for key binding text 2022-05-04 11:59:29 +03:00
Salman Ahmed
0b8fd2e39f Improve distance spacing toast inline with key binding changes 2022-05-04 11:43:19 +03:00
Dean Herbert
b325f0ee0b Combine editor toolbox container implementation and fix input blocking
Until now, toolbox scroll areas would block input from arriving behind
them, even when no visible element was clicked.

In addition, clicking on a button inside a toolbox would still send a
`MouseDown` event to things behind it. Specifically, the editor's
`HitObjectComposer` would receive these events and also place objects
when the user does not expect them to be placed.

This fixes another regression that occurred due to `ScrollContainer`s no
longer blocking input theirselves.
2022-05-04 17:41:30 +09:00
Salman Ahmed
3d2072498e Merge branch 'master' into distance-spacing-osd 2022-05-04 11:41:12 +03:00
Dean Herbert
a66743266f Remove unused ScrollingToolboxGroup class 2022-05-04 17:20:58 +09:00
Salman Ahmed
504ca5be31 Fix scrolling no longer adjusting distance spacing by amount 2022-05-04 09:52:33 +03:00
Salman Ahmed
813d6fed48 Split activation keybind to separate increase/decrease keybinds 2022-05-04 09:00:54 +03:00
Salman Ahmed
0dd2e1652c Mark OnScreenDisplay dependency as nullable 2022-05-03 11:15:28 +03:00
Salman Ahmed
b8287f3687 Display toast notification on editor distance spacing change 2022-05-03 10:30:32 +03:00
Salman Ahmed
521ec1a225 Add keybind for distance grid spacing activation 2022-05-03 10:15:24 +03:00
Salman Ahmed
fef94d49f4 Revert "Convert data type of DistanceSpacing to float"
This reverts commit 7aaa88cac2.
2022-04-29 08:02:07 +03:00
Salman Ahmed
abb88b0907 Move distance spacing application to DistanceSnapGrid 2022-04-28 10:54:38 +03:00
Salman Ahmed
7aaa88cac2 Convert data type of DistanceSpacing to float 2022-04-28 10:24:36 +03:00
Salman Ahmed
2e8372fe90 Minor cleanup
Just from reading diff.
2022-04-28 07:14:43 +03:00
Salman Ahmed
bfc6bfc91b Let CatchHitObjectComposer inherit from DistancedHitObjectComposer and hide control 2022-04-28 06:44:50 +03:00
Salman Ahmed
835898dd30 Introduce DistancedHitObjectComposer and supersede OsuToolboxComposite 2022-04-28 06:44:50 +03:00
Salman Ahmed
59cf3ff50f Move distancing methods from IPositionSnapProvider to IDistanceSnapProvider 2022-04-28 05:48:45 +03:00
Salman Ahmed
8ed39009fd Encapsulate distance spacing control handling to a "distance toolbox composite"
Encapsulated in a way which can allow further extensibility for the
right-side area of toolboxes.
2022-04-24 08:33:03 +03:00
Salman Ahmed
70a93c0e7e Move DistanceSpacingMultiplier bindable to its own IDistanceSnapProvider interface 2022-04-24 08:33:00 +03:00
Salman Ahmed
4f8f27a58b Merge branch 'master' into osu-distance-spacing 2022-04-24 05:23:30 +03:00
Dean Herbert
ea9495eb74 Update all existing calls to extension method with correct fallback handling 2022-03-29 16:51:30 +09:00
Dean Herbert
8d1ee28e67 Add settings modification UI to skin editor 2022-03-13 17:03:25 +09:00
Salman Ahmed
0992bec2c8 Change "distance spacing" multipler type to double
Avoids losing precision on initial load, causing an unnecessary
hash change in `EditorChangeHandler`.

Resolves test failures in `TestSceneEditorChangeStates`
(https://github.com/ppy/osu/runs/5192493482?check_suite_focus=true).
2022-02-16 03:28:12 +03:00
Salman Ahmed
868dcd20f5 Remove e.ShiftPressed handling for now
Broken on macOS, will be handled differently later on as discussed.
2022-02-15 02:21:53 +03:00
Salman Ahmed
528dc03b8c Expose distance spacing in IPositionSnapProvider for updating distance grid
Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
2022-02-15 02:21:53 +03:00
Salman Ahmed
19ee05c232 Add "distance spacing" multiplier for osu! ruleset
While osu!catch also implements a distance snap grid, it doesn't rely on
`GetBeatSnapDistanceAt` (unlike osu!), therefore it can't have the
"distance spacing" multiplier yet.
2022-02-15 02:21:53 +03:00
Dean Herbert
b9d9fc56af Move files to UI namespace 2022-02-14 17:51:39 +09:00
Dean Herbert
51251e3204 Fix CI reported warnings 2022-01-12 22:39:00 +09:00
Dean Herbert
eb70a1eeb7 Replace compatibility properties with direct references 2022-01-12 18:13:14 +09:00
Dean Herbert
3811bd8520 Fix some null inspections 2022-01-12 17:00:16 +09:00
Dean Herbert
cea9cab4dc Use ExpandingButtonContainer in editor composer 2022-01-06 21:10:45 +09:00
Dean Herbert
ef2a4aed9a Fix editor playfield not being centered correctly
This has come up multiple times, with mappers citing that they have
muscle memory for mapping based on the centre of the playfield being in
the centre of the window.

The original plan was to have a second toolbar on the right hand side of
the screen to balance the padding, but we're not at that point yet.
Easiest solution is to do what stable does and allow the left-hand
toolbar items to overlap the playfield underneath it.

In edge cases where the user is running at an aspect ratio that causes
overlaps, they can choose to collapse the toolbars down. We can probably
work on this UI/UX a bit more as we update designs to be more friendly
to such cases.
2022-01-05 16:05:18 +09:00
Bartłomiej Dach
5cbaa028eb
Use extracted ruleset config cache implementation in DI 2021-12-23 19:02:10 +01:00
Dean Herbert
59e763467f Move StoragePath implementation to an extension method 2021-11-19 16:08:38 +09:00
Naxesss
b888185799 Properly dispose of Stream in bg quality check 2021-11-10 05:06:11 +01:00
Dean Herbert
e43d91ad5d Fix another case of incorrect null checking in editor verification processing 2021-11-04 15:18:10 +09:00
Dean Herbert
1e73b09e57 Fix another couple of cases of incorrect string null/empty checking 2021-11-04 14:22:28 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
smoogipoo
aa380a11c1 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-14 12:02:10 +09:00
Bartłomiej Dach
c7db286b94
Merge branch 'master' into file-sanity-checks 2021-10-14 00:17:29 +02:00
Dean Herbert
82f7f99f37 Refactor to use scoped using (and also correctly dispose TagLib portion) 2021-10-12 10:46:26 +09:00
Naxesss
f2f97602f2 Dispose of video resource later
We need the Stream to stay open here because `StreamFileAbstraction` uses it later in the block.
2021-10-12 00:40:39 +02:00
Naxesss
47b4d03145 Dispose of Streams when used 2021-10-12 00:13:38 +02:00
Naxesss
ce69dd3588 Use Prescan flag for audio length check 2021-10-11 23:57:23 +02:00
Naxesss
8f093b9a11 Use TagLib instead of ManagedBass 2021-10-11 13:56:26 +02:00