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

2991 Commits

Author SHA1 Message Date
cdwcgt
c164744064
Add ability to set preview time 2022-12-16 01:03:30 +09:00
Dean Herbert
b8904fe747 Move ImportParameters to better home 2022-12-13 21:41:26 +09:00
Dean Herbert
cb16d62700 Hook up ImportParameter flow with IModelImporter caller methods 2022-12-13 21:29:32 +09:00
cdwcgt
e02b8cb199
Group export methods into their respective managers 2022-12-11 18:30:24 +09:00
cdwcgt
a1fc33668c
Merge branch 'master' into export 2022-12-09 23:40:26 +09:00
Dean Herbert
5a69656764
Merge pull request #21496 from peppy/fix-zero-length-spinners
Fix being able to place zero-length spinners
2022-12-02 19:25:00 +09:00
Dan Balasescu
850931120d
Merge pull request #21479 from peppy/fix-wrong-last-hit-object-time
Fix some components not accounting for final hold notes in osu!mania beatmaps
2022-12-02 18:12:00 +09:00
Dean Herbert
d1296a22ce Update timeline blueprint's end time logic to better match new blueprint implementation 2022-12-02 17:57:15 +09:00
Dan Balasescu
a39bd634c4
Merge pull request #21405 from LumpBloom7/Editor-DrawableRuleset-Dependencies
Provide DrawableRulesetDependencies from HitObjectComposer
2022-12-02 17:31:31 +09:00
Dan Balasescu
d684aa75b8
Merge pull request #21477 from peppy/fix-mania-timeline-blueprint-colour
Fix osu!mania editor timeline showing bright-white blueprints
2022-12-02 16:55:29 +09:00
Dean Herbert
a2db0afe19 Avoid querying GetLastObjectTime twice in editor seek flow 2022-12-02 16:07:24 +09:00
Dean Herbert
8cf89fcb81 Use Highlight1 instead of dull grey 2022-12-02 15:30:47 +09:00
Dean Herbert
896f2d8f74 Fix multiple instances of last hitobject time being calculated incorrectly 2022-12-01 18:04:06 +09:00
Dean Herbert
f34a79b1a9 Set a better default colour for timeline blueprints when no colour information is available 2022-12-01 17:03:53 +09:00
Dean Herbert
bbf023cf68 Fix incorrect culture used when parsing timeline popup textbox content 2022-12-01 16:12:29 +09:00
Derrick Timmermans
5c8fce1c08
Remove extra blank line 2022-11-30 13:05:14 +01:00
Derrick Timmermans
6a61e70766
Expose Ruleset from HitObjectComposer instead 2022-11-30 12:17:58 +01:00
Dean Herbert
4215f4f5d7 Merge branch 'master' into Editor-DrawableRuleset-Dependencies 2022-11-30 17:42:46 +09:00
Dean Herbert
2a3b24d058 Avoid need for implicit null casting 2022-11-30 14:21:04 +09:00
Dean Herbert
0659c84341 Rename method to be more in line with project naming 2022-11-30 14:17:49 +09:00
Jai Sharma
7dbf379351 Don't use verbatim string literals 2022-11-29 18:22:07 +00:00
Derrick Timmermans
70c320b2e8
Provide ruleset dependencies only to Compose Placement Blueprints 2022-11-27 21:43:33 +01:00
Jai Sharma
218c04c174 Code quality 2022-11-27 03:23:08 +00:00
Jai Sharma
6000e14668 Correctly select issue row 2022-11-27 03:08:54 +00:00
Jai Sharma
3c56b9c93a Add OnRowSelected event to EditorTable 2022-11-27 02:47:54 +00:00
Jai Sharma
792334a190 Move Control Group timing data into it's own component 2022-11-27 02:47:02 +00:00
Jai Sharma
b6d7bec240 Remove #nullable disabled from EditorTable and it's derived classes 2022-11-27 02:45:56 +00:00
Jai Sharma
1a914d0df7 Remove #nullable disable from TimingScreen 2022-11-27 02:43:22 +00:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework 2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Bartłomiej Dach
fca3e7e39f
Merge branch 'master' into editor-seek-control-points 2022-11-24 21:53:47 +01:00
Dean Herbert
37f725bfa2 Reverse directionality of up/down traversal keys to match scroll 2022-11-24 13:55:58 +09:00
Bartłomiej Dach
30f9cc46a7
Protect offset and bpm adjustments from null selection too 2022-11-23 17:25:43 +01:00
Dean Herbert
9b9b8a5977 Add ability to seek between control points in editor using down/up arrows
Matches stable. Addresses #21376.
2022-11-23 15:59:32 +09:00
Dean Herbert
d146f86511 Fix crash when hitting 'T' to tap timing while no timing point is selected 2022-11-23 15:39:56 +09:00
cdwcgt
e37d30a373
refactor based on reviews
removed LegacyExportManager

Separated the method of CreateZip method and the default export method
2022-11-21 18:58:01 +09:00
Bartłomiej Dach
1269afd0c5
Merge pull request #21307 from frenzibyte/disable-scroll-speed-on-osu
Hide scroll speed control from effects section on rulesets which don't support it
2022-11-20 16:17:55 +01:00
Salman Ahmed
4b0ba86bd0 Identify scrolling rulesets using temporary DrawableRuleset instances 2022-11-20 04:12:52 +03:00
Bartłomiej Dach
c05c1625f2
Merge branch 'master' into editor-test-play-dont-retain-test-time 2022-11-19 12:09:04 +01:00
Salman Ahmed
60c424837b
Merge branch 'master' into disable-scroll-speed-on-osu 2022-11-19 12:13:45 +03:00
Salman Ahmed
2e3af97892 Remove unused using 2022-11-19 12:13:36 +03:00
Salman Ahmed
290369db47 Hide scroll speed slider on rulesets which don't support it 2022-11-19 06:42:27 +03:00
Salman Ahmed
016de2f5a0 Fix editor not always playing hitsounds with clock offsets applied 2022-11-19 05:15:22 +03:00
cdwcgt
4e457871f3
impossible null and remove storage 2022-11-19 01:03:22 +09:00
cdwcgt
4b29941b47
add LegacyExportManager 2022-11-18 20:00:00 +09:00
Salman Ahmed
90cd386323 Fix timeline potentially scrolling at extents while not dragging 2022-11-18 09:43:16 +03:00
Dean Herbert
a4e713a61f When returning to the editor after test play, use the original editor time rather than the point of exit 2022-11-17 12:36:24 +09:00
Dean Herbert
bfcd9e0f45 Don't seek to current editor location when location is close to (or before) the first object 2022-11-17 12:32:35 +09:00
Salman Ahmed
7a28a7f2a0 Move IGameplaySettings override to compose screen to keep test mode unaffected 2022-11-17 01:45:16 +03:00
cdwcgt
e1a21e0cf9
create a task to export to avoid block main thread
Code quality and remove some #nullable disable
2022-11-17 01:08:06 +09:00
Dean Herbert
ee6fffec5f Fix combo colour normalisation setting not applying to editor test play 2022-11-16 17:54:49 +09:00
Dan Balasescu
db25e9e9c8 Merge branch 'master' into combo-colour-brightness-limit 2022-11-11 15:31:28 +09:00
Dan Balasescu
94772a9cda
Merge pull request #21147 from peppy/fix-timeline-editor-crash
Fix editor hard crash when beatmap file specified out-of-range timeline zoom value
2022-11-10 22:59:55 +09:00
Dan Balasescu
606d42c679
Merge pull request #21184 from peppy/skinnable-things-cleanup
Skinnable class naming pass
2022-11-10 12:52:08 +09:00
Dan Balasescu
051f7f4c68
Merge pull request #21173 from peppy/toggle-hit-markers
Add the ability to toggle off hit marker displays in the editor
2022-11-10 12:23:53 +09:00
Dean Herbert
3547c04002
Merge branch 'master' into skinnable-things-cleanup 2022-11-10 12:09:32 +09:00
Dean Herbert
1aa0e40f2f Add "Component" prefix to lookup naming 2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b Rename ISkinComponent to ISkinLookup 2022-11-09 17:46:43 +09:00
Dean Herbert
4457648b1c Fix editor playing too many sounds when user performs a manual seek during playback 2022-11-09 17:42:33 +09:00
Dean Herbert
4448fcb3c8 Override combo colour brightness normalisation setting only in editor 2022-11-08 18:29:10 +09:00
Dean Herbert
ada039151b Add the ability to toggle off hit marker displays in the editor 2022-11-08 18:07:06 +09:00
Dean Herbert
9650ae1329 Limit editor background dim to 75% maximum 2022-11-08 17:20:37 +09:00
Dean Herbert
349d262c18 Remove commented unbind 2022-11-08 17:19:48 +09:00
Dean Herbert
b166e477c2
Merge branch 'master' into editor-background 2022-11-08 17:18:34 +09:00
Dean Herbert
f6d93fcd5a Fix editor hard crash when beatmap file specified out-of-range timeline zoom value 2022-11-07 12:54:02 +09:00
Dan Balasescu
fc191807c6 Fix velocity test failing with no audio device 2022-11-03 13:59:22 +09:00
Dean Herbert
0e502de8b4 Rename field to match usage 2022-11-02 18:04:42 +09:00
Dean Herbert
c3eb0c6330 Merge branch 'master' into editor-background 2022-11-02 17:43:38 +09:00
cdwcgt
9884618290
rename editorDim to editorBackgroundDim 2022-11-02 15:12:15 +09:00
Dean Herbert
2a88409dfe Fix time snap of sliders not matching when SV is not 1.0x
This regressed with https://github.com/ppy/osu/pull/20850 because the
function was used in other places which expect it to factor slider
velocity into the equation.

Rather than reverting, I've added a new argument, as based on the method
naming alone it was hard to discern whether SV should actually be
considered.

The reason for the change in #20850 was to avoid the SV coming in from a
reference object which may not have a correct SV in the first place. In
such cases, passing `false` to the function will give the expected
behaviour.
2022-11-01 15:12:58 +09:00
andy840119
a753369d3e Reuse function TimeAtPosition() and PositionAtTime(). 2022-10-30 17:21:50 +08:00
D.Headley
21d68bfb84 Delete unused button 2022-10-28 16:40:21 +02:00
cdwcgt
6991195d69
let editor dim different from gameplay dim 2022-10-26 15:22:57 +09:00
Dean Herbert
2016d33055 Offset start of distance snap grid drawing if reference object's start time doesn't align
Closes #20938.
2022-10-26 13:11:26 +09:00
Bartłomiej Dach
f5ca447b8e
Rename one more "{duplicate -> clone}" reference 2022-10-25 21:34:41 +02:00
Bartłomiej Dach
bcdf24b972
Merge branch 'master' into add-editor-object-clone 2022-10-25 21:33:52 +02:00
Dean Herbert
4d4f6e25ba Rename to "clone" instead of "duplicate" 2022-10-25 11:43:23 +09:00
Dean Herbert
1e579e06f8 Fix duplicate working incorrectly if there is no selection currently made 2022-10-25 11:42:12 +09:00
cdwcgt
a2682b3ce3
background dim settings for editor
View -> Background Dim

follow `DimLevel` and `BlurLevel`

Co-Authored-By: Dead_Bush_Sanpai <DeadBushSanpai@yandex.com>
2022-10-24 23:55:33 +09:00
cdwcgt
de881cc5cb
useless #nullable disable 2022-10-24 23:17:28 +09:00
Dean Herbert
1d5df15027 Add ability to use Shift+Number to set current beat divisor in editor 2022-10-24 15:20:15 +09:00
Dean Herbert
e72a71a28e Add simple editor "duplicate objects" key binding 2022-10-24 14:01:34 +09:00
Dean Herbert
849b50a38f
Use ToUpperInvariant for added safety
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-10-21 00:16:33 +09:00
Dean Herbert
372a655be1 Ensure placement uses currently selected bank 2022-10-19 21:39:51 +09:00
Dean Herbert
50e24ddd87 Add icon and radio button logic 2022-10-19 21:35:08 +09:00
Dean Herbert
9222cb379f Add sample bank suport to editor selection handler 2022-10-19 20:53:18 +09:00
Dean Herbert
6a7f6c76ff Fix osu! editor padding being applied to toolboxes
The result of https://github.com/ppy/osu/pull/20739 and https://github.com/ppy/osu/pull/20738 having unintended side effects when applied together.
2022-10-18 14:32:00 +09:00
Dan Balasescu
10aabfc650
Merge pull request #20739 from peppy/settings-toolbox
Adjust visuals of settings toolboxes (gameplay loading screen and editor)
2022-10-14 20:31:05 +09:00
Dean Herbert
15f9697c9f Roughly update design of editor buttons 2022-10-13 16:57:25 +09:00
Dean Herbert
c3902728f6 Reorganise beatmap snap control to work better in compact mode 2022-10-13 15:47:54 +09:00
Dean Herbert
a525b3f9f8 Reorder and rename toggle checkboxes to fit better 2022-10-13 15:44:33 +09:00
Dean Herbert
f6f5d33f53 Add slight padding to playfield (roughly matches stable) 2022-10-13 15:44:23 +09:00
Dean Herbert
ab24e87013
Merge branch 'master' into improve-drag-selection 2022-10-12 13:20:17 +09:00
ekrctb
fcb9e2cc00 Refactor blueprint container drag code 2022-10-11 22:39:53 +09:00
Dean Herbert
f41b79688f Avoid casting by accepting all Playfields but throwing on a bad choice 2022-10-11 16:54:41 +09:00
ekrctb
6ab29a62d0 Anchor drag box on time (catch, mania)
Not done for taiko because I cannot figure out how it should work with the overlapping scroll algorithm.
2022-10-11 14:23:17 +09:00
ekrctb
1a24762f9b Improve drag box selection logic
`AllowDeselectionDuringDrag` is remove.
Instead, selected hit objects are not automatically deselected
when clock is seeked to a later time (the hit object is dead).
Update drag box selection even if mouse is not moved
(in case clock is running or scroll wheel is used).
2022-10-11 14:11:45 +09:00
ekrctb
6164e0896a Don't reselect already selected items in SelectAll 2022-10-07 10:46:07 +09:00
ekrctb
29cc554632 Ensure blueprint is added for selected hit object 2022-10-06 13:59:54 +09:00
ekrctb
0d448e6cc8 Fix items without blueprints are not deselected 2022-10-06 13:50:56 +09:00
ekrctb
b0213c29e9 Use mid time instead of start time
It is closer to the old blueprint-based behavior
2022-10-05 22:19:22 +09:00
ekrctb
6753f6b01a Move AllowDeselectionDuringDrag down
Because it is now ignored in the timeline implementation anyways
2022-10-05 22:14:11 +09:00
ekrctb
3108c42ece Fix inspect issues 2022-10-05 22:04:43 +09:00
ekrctb
00b3d97f69 Improve timeline selection performance
But selecting a large number of hit objects is still very slow
because all DHOs must be added
and also `AddBlueprintFor` has quadratic behaviors
2022-10-05 21:58:05 +09:00
ekrctb
0613388aaa Make sure all selected items get deleted 2022-10-05 21:58:05 +09:00
ekrctb
0ffde02f79 Use hit object time for timeline selection 2022-10-05 21:51:01 +09:00
ekrctb
8d29e9e76b Move selection logic from DragBox to BlueprintContainer 2022-10-05 21:51:01 +09:00
Dean Herbert
58217b6839 Fix weird conditional 2022-09-27 20:09:21 +09:00
Dean Herbert
a9088d9231 Add assert/log output when too many ticks are being displayed 2022-09-27 17:18:46 +09:00
Dean Herbert
e227519b09 Don't attempt to render timeline ticks until DrawWidth is above zero 2022-09-27 17:18:46 +09:00
Dean Herbert
ccae721af2 Ensure ZoomableScrollContainer content isn't shown until zoom is set 2022-09-27 17:07:11 +09:00
Dean Herbert
9dc0eb7fd0 Remove unused static 2022-09-27 17:04:56 +09:00
Drison64
c075d3de08 Create a test and a check if initial zoom value of ZoomableScrollContainer is in range 2022-09-17 22:43:40 +02:00
Ondřej Vajďák
9d94343317
Update osu.Game/Screens/Edit/Compose/Components/Timeline/Timeline.cs
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-09-17 19:51:44 +02:00
Drison64
c8768eb399 Changed == to <= on TimelineZoom check 2022-09-17 19:00:50 +02:00
Drison64
3c7ea5c8fa Update 2022-09-17 18:57:09 +02:00
Drison64
0b6a77bc8b EditorBeatmap's TimelineZoom should never be zero 2022-09-17 15:59:42 +02:00
Dean Herbert
f53507828c Rename event to be more generic (and add comprehensive xmldoc) 2022-09-13 14:59:30 +09:00
OliBomby
fd48249eef fix with new event 2022-09-13 02:20:52 +02:00
OliBomby
718f8c4ee2 revert the fix 2022-09-13 01:09:42 +02:00
OliBomby
8400de4b2e invoking hitobject updated before invoking removed 2022-09-12 17:50:11 +02:00
Salman Ahmed
90207b6032
Merge branch 'master' into feature/EditorDeleteDiff 2022-09-06 18:48:06 +03:00
Dean Herbert
db15bd56e8 Invalidate working beatmap cache when calling DeleteDifficultyImmediately rather than in editor code 2022-09-06 18:12:47 +09:00
Dean Herbert
57954bb8f5 Enable nullability on TimelineHitObjectBlueprint 2022-09-05 14:50:43 +09:00
Dean Herbert
4f18105e9d Ensure next beatmap selected matches the menu ordering 2022-09-02 17:57:00 +09:00
Dean Herbert
840d1c4cd5 Disable delete difficulty menu item when only one difficulty is present 2022-09-02 17:14:48 +09:00
Dean Herbert
9fd8067e11 Tidy up dialog and deletion flow 2022-09-02 17:07:09 +09:00
Dean Herbert
605108c938 Refactor/rename deletion method to read better 2022-09-02 16:59:01 +09:00
Dean Herbert
b388428e1c
Merge branch 'master' into feature/EditorDeleteDiff 2022-09-02 16:48:38 +09:00
Dean Herbert
6a35b233e5 Merge branch 'master' into remove-dispose-updates 2022-09-01 23:03:19 +09:00
Dean Herbert
cfc7c32aff
Merge pull request #20009 from frenzibyte/fix-back-to-front-comparison
Adjust weirdly back-to-front fallback comparison in `HitObjectOrderedSelectionContainer`
2022-08-31 14:14:10 +09:00
Dean Herbert
2dafa041a7 Account for offset being applied to editor clock time in TestSceneEditorClock 2022-08-29 16:42:50 +09:00
Dean Herbert
a215d009fe Update Remove/RemoveRange/RemoveAll calls in line with framework changes 2022-08-29 15:57:40 +09:00
Salman Ahmed
3ff2058975 Fix back-to-front fallback comparison in HitObjectOrderedSelectionContainer 2022-08-29 09:23:53 +03:00
Dean Herbert
cd90536e4b Remove Track access in Timeline 2022-08-26 18:25:48 +09:00
Dean Herbert
12d6d6793c Move EditorClock processing to Update and always decouple 2022-08-26 18:08:43 +09:00
Dean Herbert
31e459364b Use FramedBeatmapClock in EditorClock 2022-08-26 17:28:58 +09:00
Dean Herbert
ec61a94dc9 Merge branch 'master' into no-gameplay-clock-gameplay-offset 2022-08-23 17:36:06 +09:00
Dean Herbert
af2e82d7d5 Move operation of setting GameplayClockContainer.StartTime to Reset call 2022-08-22 14:11:06 +09:00
Dean Herbert
cbdd870ecf
Merge pull request #19693 from its5Q/editor-localisation
Add localisation support for beatmap editor setup
2022-08-20 11:51:57 +09:00
its5Q
4c24d8ed58 Improve string consistency 2022-08-19 03:17:05 +10:00
Dan Balasescu
0cf3c5570a
Merge pull request #19800 from peppy/fix-editor-ear-rape
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor
2022-08-17 15:50:58 +09:00
Dean Herbert
6b9dec5996 Restore original event flow to allow for OnSuspend case to work correctly 2022-08-17 14:32:21 +09:00
Dean Herbert
8ce50e98a6 Move delegate debounce logic to Editor itself 2022-08-17 14:04:57 +09:00
Dean Herbert
ee153a345c Add a few more overlooked beatmap save states on setup screen modifications 2022-08-16 16:31:56 +09:00
Dean Herbert
ea50936d71 Fix slider ticks playing back at infinite rate while making changes to a slider in the editor 2022-08-16 15:27:58 +09:00
its5Q
e870ac6456 Fix code quality for CI 2022-08-16 15:51:54 +10:00
its5Q
797a8da996 Replace osu-web strings with new strings and merge to single file 2022-08-16 01:14:16 +10:00
Bartłomiej Dach
05ddfe7522
Merge branch 'master' into editor-setup-no-state-change 2022-08-14 18:21:31 +02:00
its5Q
2499b7f0cd Add localisation support for beatmap editor setup 2022-08-11 03:53:20 +10:00
Dean Herbert
ac99c1ad69 Migrate the majority of existing file lookups to use new extension methods 2022-08-10 16:01:16 +09:00
Dan Balasescu
c4b9b2a14b Merge branch 'master' into irenderer-glwrapper 2022-08-05 20:35:06 +09:00
Dean Herbert
de186f67e0 Limit metadata updates to once per frame 2022-08-02 22:02:30 +09:00
Dan Balasescu
b4e55f7309 Apply IRenderer changes 2022-08-02 19:50:57 +09:00
Dean Herbert
cc4cde2c79 Improve IBeatSyncProvider interface and reduce beatmap track dependence 2022-08-02 17:59:18 +09:00
Dean Herbert
efa3c3b757 Fix multiple cases of mutations at editor setup screen not triggering a state save 2022-08-02 16:47:37 +09:00
Dean Herbert
6e7c298aaf Fix changes to audio / background not triggering an editor state change 2022-08-01 16:53:49 +09:00
Dean Herbert
2f60f91a0e Fix editor potentially using a track post-disposal
This changes the editor to track the current track as it is *loaded* by
`MusicController`, rather than haphazardly following the current global
`WorkingBeatmap` (with a potentially unloaded track) or relying on local
immediate-load behaviour (as implemented in `ResourcesSection`).
2022-08-01 16:53:49 +09:00
Dean Herbert
acf9ad1429 Apply nullability to EffectPointVisualisation 2022-07-29 23:26:38 +09:00
Dean Herbert
8f1e3b0154 Fix editor summary timeline not responding to kiai changes correctly 2022-07-29 19:31:49 +09:00
Micahel Kelly
dd315ff97b Adds hard-delete for a beatmap diff 2022-07-27 21:21:16 +10:00
Micahel Kelly
3febd6d644 Dialogue touchups 2022-07-27 19:23:55 +10:00
Micahel Kelly
e6fad601cc Adds delete difficulty option to editor 2022-07-27 19:15:43 +10:00
Dan Balasescu
1b2158ff04 Remove unused method 2022-07-26 14:15:59 +09:00
Salman Ahmed
48bcf57066 Mark SetupZoom and parameterless ZoomableScrollContainer ctor as protected 2022-07-25 12:07:50 +03:00
Salman Ahmed
07c6b44864 Fix Timeline attempting to setup zoom with unloaded track 2022-07-25 12:07:50 +03:00
Salman Ahmed
123930306b Refactor ZoomableScrollContainer to allow setting up zoom range and initial zoom after load 2022-07-25 12:07:50 +03:00
Dan Balasescu
e1df50c8ff Fix timeline zoom focus point when using buttons 2022-07-22 17:03:05 +09:00
Dean Herbert
72916d708c
Merge pull request #19294 from peppy/fix-timeline-feedback-loop
Fix timeline `alt`+`scroll` zoom not correctly zooming to current mouse position
2022-07-22 16:05:38 +09:00
Dean Herbert
1774a96455
Merge pull request #19278 from Cwazywierdo/timeline-relative-zoom
Make editor timeline zoom relative to song length
2022-07-22 15:37:47 +09:00
Dean Herbert
6eb42d08ce Fix timeline zoom receiving feedback from bindable changes
This causes the focal point zooming to not work (as the focal point is
lost). There's no need to handle ongoing changes to
`BeatmapInfo.TimelineZoom` because it is not a property which is changed
at runtime.
2022-07-22 15:25:57 +09:00
Dean Herbert
4cec9a085a Combine both calls to use same pathway 2022-07-22 14:59:20 +09:00
Dean Herbert
f713253d1b Fix formatting inconsistencies in empty ctors 2022-07-22 14:00:29 +09:00
LukynkaCZE
ed94d7fce8 Fix requested changes 2022-07-22 02:46:17 +02:00
Adam Baker
997fe00cdc Fix zoom delta math 2022-07-21 17:29:13 -05:00
Adam Baker
d69dc457ba Extract zoom delta method 2022-07-21 17:28:43 -05:00
Adam Baker
a4f071fe53 Make zoom sensitivity relative to containers max zoom 2022-07-21 08:26:48 -05:00
LukynkaCZE
5987acfbca Fixed code formatting 2022-07-19 22:59:25 +02:00
LukynkaCZE
a00da279b7 Beatmap Editor Save Toast 2022-07-19 21:38:23 +02:00
Dean Herbert
7ac04d0478 Fix potential crash when exiting editor test mode 2022-07-14 01:00:18 +09:00
Dean Herbert
952d97c66e Update comment regarding LoadTrack safety 2022-07-13 19:02:22 +09:00
Joseph Madamba
834bb1f187 Fix editor playing object samples while paused after cancelling exit 2022-07-09 12:14:39 -07:00
Dean Herbert
98938821e5 Merge branch 'master' into beatmap-update-flow 2022-06-30 16:44:17 +09:00
Dean Herbert
569fde4b47 Add messages to all InvalidOperationExceptions
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
Dean Herbert
0ba29b6fa6 Use currentScreen instead to make sure the screen we care about is loaded 2022-06-27 18:28:00 +09:00
Dean Herbert
5a7d339cc8 Centralise and harden editor-ready-for-use check
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:

```csharp
05:19:07     osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07       Failed TestAddAudioTrack [161 ms]
05:19:07       Error Message:
05:19:07        TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07       Stack Trace:
05:19:07       --TearDown
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07        at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07        at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07        at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07        at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07        at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07        at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07        at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dean Herbert
7692bac35a Simplify refetch (and ensure to invalidate after processing) 2022-06-24 21:02:38 +09:00
Dean Herbert
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
Dean Herbert
ef258122d2 Move GetDifficultyRating helper method to StarDifficulty 2022-06-23 19:51:58 +09:00
Dean Herbert
97fcf8cec9
Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo 2022-06-23 04:02:24 +09:00
Jamie Taylor
950551f4fd
Fix metronome arm being stuck white when paused 'close enough' to center 2022-06-22 15:33:42 +09:00
Dean Herbert
b7b7de115f
Merge pull request #18744 from nekodex/new-metronome-sfx
New audio feedback for metronome
2022-06-21 17:16:41 +09:00
Dean Herbert
7d988da2c7
Merge pull request #18788 from peppy/editor-seek-constant-while-playing
Change editor seek-while-playing modifier to be BPM agnostic
2022-06-21 15:28:46 +09:00
Dean Herbert
a40ad6f784 Add slight transform when resetting arm from almost-zero 2022-06-21 15:07:35 +09:00
Dean Herbert
82c4d855d4 Rename sample variable to be easier to discern from other fields 2022-06-21 15:05:17 +09:00
Dean Herbert
16a9e18815 Adjust timing of latch to be more in sync with visuals 2022-06-21 15:02:53 +09:00
Dean Herbert
7b46d38318 Move colour fade back to where it was 2022-06-21 15:02:43 +09:00
Dean Herbert
3b79c632f5 Merge branch 'master' into new-metronome-sfx 2022-06-21 14:58:58 +09:00
Dean Herbert
42701757c3 Fix latch reset logic 2022-06-21 14:52:57 +09:00
Dean Herbert
72c0fc3fec
Merge pull request #18753 from frenzibyte/prevent-mistimed-metronome-beats
Fix metronome playing mistimed beat sounds on editor clock resume
2022-06-21 13:48:42 +09:00
Dean Herbert
c61e90d768 Change editor seek-while-playing modifier to be BPM agnostic 2022-06-21 13:07:50 +09:00
Dan Balasescu
046b848bcd Split group selection to separate method 2022-06-21 12:53:06 +09:00
Dan Balasescu
93ce6fc981 Remove redundant diff processing 2022-06-21 12:11:44 +09:00
Dan Balasescu
9763a58392 Change to use ReferenceEquals 2022-06-21 12:05:52 +09:00
Dan Balasescu
e0c82d11ab Convert == usages to ReferenceEquals 2022-06-20 16:56:19 +09:00
Dan Balasescu
ca287d0936 Fix group deselected when table is recreated 2022-06-20 16:56:19 +09:00
Dan Balasescu
a922ea9b01 Fix selection by directly comparing control points
Previously, all control points would get replaced, which led to
performance issues that was worked around in this PR. By comparing
control points, we're able to get good performance without requiring the
workaround.
2022-06-20 15:29:29 +09:00
Dan Balasescu
468e5fcbed Merge branch 'master' into editor-controlpoint-undo-redo 2022-06-20 13:47:01 +09:00
Bartłomiej Dach
3ab8158b92
Do not try to set ruleset from beatmap if it's a dummy 2022-06-19 20:08:39 +02:00
Bartłomiej Dach
93b3ede2a0
Always use beatmap ruleset in editor gameplay test mode
Fixes cases where opening a convertible beatmap (so any osu! beatmap)
with the game-global ruleset being set to anything but osu! would result
in opening the editor gameplay test mode with the game-global ruleset
rather than the beatmap's.
2022-06-19 19:30:40 +02:00
Salman Ahmed
a2e17941e5
Merge branch 'master' into timing-offset-adjust-seek-only-at-start 2022-06-19 01:27:44 +03:00
Dean Herbert
3902dc64f0 Fix adjusting offset via button seeking to timing point's offset unexpectedly
This was added with the intention of tracking the offset when already at
the start (the most common case when you're using the tap timing
wizard), but was also seeking when the user may be much further beyond
or before it.

Addresses https://github.com/ppy/osu/discussions/18741#discussioncomment-2975051.
2022-06-19 01:35:45 +09:00
Salman Ahmed
a5e5172b91 Fix BlueprintContainer eating input from skin editor buttons 2022-06-18 18:28:36 +03:00
Bartłomiej Dach
f6a3047596
Merge branch 'master' into editor-metadata-name-unification 2022-06-18 10:22:52 +02:00
Salman Ahmed
204348f327 Fix metronome playing mistimed beat sounds on editor clock resume 2022-06-18 04:49:44 +03:00
Salman Ahmed
8a1d11fefb Cancel previous metronome sound playback on pause 2022-06-18 04:07:21 +03:00
Jamie Taylor
1f78a4fadd
New audio feedback for metronome 2022-06-17 16:56:09 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Bartłomiej Dach
6ff6a3f5b3
Rename and document chooserPath 2022-06-16 21:51:31 +02:00
Salman Ahmed
db02cb81c5 Fix file chooser path not opening home directory initially 2022-06-16 20:48:17 +03:00
Salman Ahmed
47d0ecf5e8 Merge branch 'master' into editor-metadata-name-unification 2022-06-16 18:53:23 +03:00
Salman Ahmed
6aee689586 Fix previous file lookup not using metadata properties 2022-06-16 18:50:38 +03:00
Salman Ahmed
f1081db953 Fix background/track implicitly renamed on initial load 2022-06-16 18:48:32 +03:00
Salman Ahmed
2c35b1404b Use FileInfo as current bindable type 2022-06-15 19:29:09 +03:00
Salman Ahmed
1ff070f5ff Decouple LabelledFileChooser from LabelledTextBoxWithPopover 2022-06-15 17:45:31 +03:00
Dean Herbert
7571ab6c63 Merge branch 'master' into new-dialog-sfx 2022-06-15 19:47:00 +09:00
Dean Herbert
c27e5d1216 Fix editor still playing back sound when exiting with confirmation 2022-06-15 18:44:02 +09:00
Dean Herbert
713cff3403 Don't play editor exit sound when changing difficulties 2022-06-15 17:49:09 +09:00
Dean Herbert
fd4529aa7c Play editor exit sound if no confirmation buttons were shown during exit process 2022-06-15 17:37:54 +09:00
Dean Herbert
6136e4e27a Don't play exit sound if screen is in a non-resumable state when exiting 2022-06-15 17:37:25 +09:00
Dean Herbert
87bf53485a
Merge pull request #18649 from frenzibyte/selection-context-outside-bounds
Fix context menus not appearing when clicking outside of editor playfield's bounds
2022-06-15 17:08:09 +09:00
Salman Ahmed
6a8cf514e0 Update background/track file chooser to not display filename 2022-06-15 09:52:13 +03:00
Jamie Taylor
5e3ccf7087
Don't play 'back' sample when exiting Editor 2022-06-15 15:41:28 +09:00
Salman Ahmed
f3f0960335 Use unified filename for background and track during editor import 2022-06-15 09:02:48 +03:00
Salman Ahmed
d3feb07bc1 Split zoom updating to named method with value as optional 2022-06-15 07:57:16 +03:00
Salman Ahmed
268a7e1334 Fix ZoomableScrollContainer attempting to update zoom with overlapping range 2022-06-15 05:43:41 +03:00
Dan Balasescu
cc7943dfb1
Merge pull request #18687 from peppy/editor-repeat-behaviour-change-collapsing
Fix timing adjustment repeat buttons firing one change per repeat invocation
2022-06-14 20:24:13 +09:00
Dean Herbert
c30644328c Fix timing adjustment repeat buttons firing one change per repeat invocation 2022-06-14 19:21:02 +09:00
Dean Herbert
aeca138930 Fix ctrl-z in editor also seeking to start in addition to undo 2022-06-14 18:48:57 +09:00
Salman Ahmed
fa4930c586 Remove no longer necessary ReceivePositionalInputAt overrides in timeline components 2022-06-14 00:19:47 +03:00
Salman Ahmed
c49b8e4a5c Allow BlueprintContainer and SelectionHandler to receive input outside bounds 2022-06-14 00:19:15 +03:00
Salman Ahmed
9fc04924eb Revert "Provide context menu items at BlueprintContainer for out-of-bounds support"
This reverts commit 85fc218edf.
2022-06-14 00:02:02 +03:00
Dan Balasescu
f680f4d26b Apply refactorings from review 2022-06-13 17:36:32 +09:00
Dan Balasescu
c178e5d592 Add explanatory comment 2022-06-13 16:58:43 +09:00
Dan Balasescu
a8286bdf04 Fix assertion failures 2022-06-13 16:56:08 +09:00
Dan Balasescu
285e5abb41 Fix incorrect fallback value 2022-06-13 16:55:46 +09:00
Dan Balasescu
5a18547342
Compare by char
Co-authored-by: Berkan Diler <berkan.diler1@ingka.ikea.com>
2022-06-13 15:58:11 +09:00
Dan Balasescu
776e7c0c71 Work around performance issues 2022-06-13 15:45:08 +09:00
Dan Balasescu
7e7716f942 Support undo/redo for control points 2022-06-13 15:45:08 +09:00
Salman Ahmed
85fc218edf Provide context menu items at BlueprintContainer for out-of-bounds support 2022-06-11 20:53:53 +03:00
Dean Herbert
cd0e0fe70f Fix skin editor not accounting for aspect ratios in base-game sizing logic 2022-06-06 18:02:42 +09:00
Dan Balasescu
b897e1464f
Merge pull request #18462 from frenzibyte/fix-timeline-zooming
Fix timeline objects disappearing prematurely on wide-screens
2022-06-05 11:49:44 +09:00
Dan Balasescu
fcf51a6f51
Merge pull request #18530 from peppy/add-cloen-button
Change text on timing group add button when it is going to clone instead
2022-06-03 22:23:04 +09:00
Dean Herbert
debd1a59b0
Merge pull request #18539 from frenzibyte/repeating-button-behaviour
Share repeat implementation in `TimingAdjustButton` for timeline zoom buttons
2022-06-03 18:18:23 +09:00
Dan Balasescu
1c738e22ae
Merge pull request #18523 from peppy/tap-button
Add tap for BPM button
2022-06-03 18:11:10 +09:00
Dean Herbert
cd3edc869c Remove unnecessary nesting of IconButton and update design a touch 2022-06-03 17:00:00 +09:00
Dean Herbert
e779b460e4 Use Component instead of CompositeDrawable 2022-06-03 16:49:08 +09:00
Dean Herbert
678229fdab
Merge pull request #18536 from bdach/safe-file-chooser-textbox-disposal
Improve safety of file chooser textbox disposal
2022-06-03 13:50:41 +09:00
Dan Balasescu
dd93fc283b
Merge pull request #18531 from peppy/track-groups-better
Improve group tracking logic to avoid switching which point type unnecessarily
2022-06-03 13:04:54 +09:00
Salman Ahmed
b51e0a5047 Share button repeating logic with TimelineButton for better UX 2022-06-03 05:23:49 +03:00
Salman Ahmed
efbde06c11 Split button repeating logic from TimingAdjustButton to own component 2022-06-03 05:23:49 +03:00
Salman Ahmed
21385655fe Fix ZoomableScrollContainer not updating on parent size changes 2022-06-03 02:34:10 +03:00
Salman Ahmed
60fb5d5e6c Revert "Fix timeline objects disappearing prematurely on wide-screens"
This reverts commit 02baf9a97a.
2022-06-03 02:03:04 +03:00
Salman Ahmed
8471b24659 Merge branch 'master' into fix-timeline-zooming 2022-06-03 02:00:09 +03:00
Bartłomiej Dach
87ec2e490d
Merge branch 'master' into deselect-control-group 2022-06-03 00:47:06 +02:00
Bartłomiej Dach
cf9b78ea2a
Improve safety of FileChooserLabelledTextBox disposal 2022-06-02 20:38:14 +02:00
Bartłomiej Dach
ec24b32fa6
Add NRT coverage for FileChooserLabelledTextBox 2022-06-02 20:36:28 +02:00
Dean Herbert
ad3c093a08 Improve group tracking logic to avoid switching which point type unnecessarily 2022-06-02 18:33:09 +09:00
Dean Herbert
2fa4d46f73 Change text on timing group add button when it is going to clone instead
Also disables the button when it would otherwise have no effect.
2022-06-02 18:28:16 +09:00
Dean Herbert
0b125ade4c Allow clicking away to deselect the current control point group 2022-06-02 18:18:18 +09:00
Dean Herbert
5a0f716bf2 Fix timing screen crash when attempting to add group to self
Closes #18527.
2022-06-02 18:14:28 +09:00
Dean Herbert
ee4beefd95 Increase max taps to 128 for now
Will revisit this in the future with a more sound algorithm.
2022-06-02 17:27:52 +09:00
Dean Herbert
e75609dfb9 Increase taps to consider for better results for longer tap periods 2022-06-02 17:03:48 +09:00
Dean Herbert
4abfb35611 Improve light rotational alignment and increase light count to 8 2022-06-02 16:58:14 +09:00
Dean Herbert
060372a129 Split out transition length constants 2022-06-02 13:16:31 +09:00
Dean Herbert
15f8d318eb Add note about glow code (please look away) 2022-06-02 13:13:00 +09:00
Dean Herbert
ac3793f340 Move inline class to end and apply NRT 2022-06-02 13:10:50 +09:00
Dean Herbert
d99d37c0a6 Apply current track rate to calculated BPM 2022-06-02 13:06:18 +09:00
Dean Herbert
943e904c71 Fix reset happening on mouse down instead of mouse up
Also some reorganisation of file content for legibility
2022-06-02 12:58:44 +09:00
Dean Herbert
0c493dd359 Add key binding for tap button 2022-06-02 12:58:44 +09:00
Dean Herbert
781a1527b1 Adjust button metrics and move surrounding buttons to be more integrated 2022-06-02 12:58:43 +09:00
Dean Herbert
d4e88441ec Adjust metrics to make timing section fit better in editor 2022-06-02 11:57:06 +09:00
Dean Herbert
f3f7e28353 Ignore initial taps as they are generally inaccurate 2022-06-02 11:57:06 +09:00
Dean Herbert
b88bce9b8b Restart track playback when tapping to time 2022-06-02 11:57:06 +09:00
Dean Herbert
96ccd29bdc Don't play metronome click when tapping for timing 2022-06-02 11:57:06 +09:00
Dean Herbert
d47a3bb8e4 Use NRT and transfer BPM 2022-06-02 11:57:06 +09:00
Dean Herbert
a2d177d7d2 Add BPM display and tracking 2022-06-02 11:57:06 +09:00
Dean Herbert
3c7a04256f Add glow 2022-06-02 11:57:06 +09:00
Dean Herbert
c3ba7b2c3b Add lights 2022-06-02 11:57:06 +09:00
Dean Herbert
d12f6ea221 Add basics of tap button 2022-06-02 11:57:06 +09:00
Dean Herbert
453259df62
Merge pull request #18516 from peppy/metronome-sound
Add metronome sound
2022-06-02 07:38:42 +09:00
Dean Herbert
6b297bc6ed
Merge pull request #18502 from peppy/editor-timing-follow-current-time
Add automatic control point tracking to the timing screen
2022-06-02 07:37:03 +09:00
Bartłomiej Dach
c0001d7f00
Merge branch 'master' into metronome-sound 2022-06-01 22:32:48 +02:00
Bartłomiej Dach
d3b51c7387
Merge branch 'master' into editor-waveform-display-lock 2022-06-01 21:56:01 +02:00
Bartłomiej Dach
0723709bec
Merge branch 'master' into editor-offset-bpm-adjust-buttons 2022-06-01 21:25:18 +02:00
Bartłomiej Dach
801e11d841
Apply performance regression fix to effect section too 2022-06-01 20:25:56 +02:00
Bartłomiej Dach
6b709de2c2
Remove unused using directive 2022-06-01 20:18:02 +02:00
Bartłomiej Dach
a5d515dd0c
Merge branch 'master' into editor-new-control-point-is-bettert 2022-06-01 19:48:17 +02:00
Dean Herbert
534e8f8fac Only switch to found group if non-null 2022-06-01 20:20:48 +09:00
Dean Herbert
a4ec32b499 Add button sound effect 2022-06-01 18:15:16 +09:00
Dean Herbert
93b8c90ecc Apply frequency adjust to channel rather than sample for safety 2022-06-01 18:04:13 +09:00
Dean Herbert
0472881078 Fix null check only covering one of two calls 2022-06-01 18:03:03 +09:00
Dean Herbert
187acb0718 Simplify linq tracking logic 2022-06-01 17:57:53 +09:00
Dean Herbert
1293bbdbd9 Remove unnecessary null checks on Text property 2022-06-01 17:46:33 +09:00
Dean Herbert
8c54bd46bb Rename button to more appropriate name 2022-06-01 17:46:05 +09:00
Dean Herbert
b03b0c9303 Merge branch 'master' into editor-offset-bpm-adjust-buttons 2022-06-01 17:45:16 +09:00
Dean Herbert
c55c3325a4 Remove unused using statements 2022-06-01 17:43:40 +09:00
Dean Herbert
f3fd5bbfc1 Increase flash delay and ensure text is always shown immediately on lock 2022-06-01 16:05:29 +09:00
Dean Herbert
58ba92772c
Reword comment to read better
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-06-01 16:01:34 +09:00
Dean Herbert
eac014738f
Merge branch 'master' into editor-bottom-bar-shadow 2022-06-01 14:55:50 +09:00
Dean Herbert
6042cf1a3b Add metronome sound
Placeholder pending follow-up from @nekodex (which as discussed should
probably have a second sound for the metronome locking into "stopped"
position).
2022-06-01 14:43:39 +09:00
Dean Herbert
25941f6187
Use DeepClone instead of reflection call
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-06-01 10:47:45 +09:00
Dean Herbert
bc22079fdc Fix row selected colour flicker when changing offset rapidly 2022-05-31 22:02:30 +09:00
Dean Herbert
8240b645b4 Copy attribute types from currently selected control point to new placements 2022-05-31 21:50:12 +09:00
Dean Herbert
f99bcb23a0 Automatically make first control point added to beatmap have timing data 2022-05-31 21:50:08 +09:00
Dean Herbert
a940676fc2 Add adjustment buttons 2022-05-31 21:31:20 +09:00
Dean Herbert
475cc8174f Fix off-by-one display issue when adjusting offset 2022-05-31 18:41:44 +09:00
Dean Herbert
94194a04f2 Animate adjustments 2022-05-31 18:41:44 +09:00
Dean Herbert
51014b8748 Ensure offset changes are correctly tracked by the display, even when locked 2022-05-31 18:41:44 +09:00
Dean Herbert
c8f21ee8b2 Change WaveformComparisonDisplay to centre around a time offset rather than beat 2022-05-31 18:41:44 +09:00
Dean Herbert
6bc68ada43 Add ability to lock the WaveformComparison display to a current location 2022-05-31 18:41:44 +09:00
Dean Herbert
c0804803fd Add background to main waveform row 2022-05-31 18:35:52 +09:00
Dean Herbert
655780fd98 Fix regression in bpm textbox binding logic 2022-05-31 18:27:18 +09:00
Dean Herbert
ebb83a5e49 Add TODO about scroll behaviour which is missing 2022-05-31 15:10:55 +09:00
Dean Herbert
cf5da44492 Add automatic control point tracking to the timing screen 2022-05-31 15:00:30 +09:00
Dean Herbert
27efeb7d4e Fix TimingSection performing a beatmap save when switching bound timing points 2022-05-31 14:58:49 +09:00
Dan Balasescu
be998cdb0a
Merge pull request #18477 from frenzibyte/fix-timeline-context-menu
Fix context menu no longer opening for hitobjects in timeline
2022-05-30 11:49:06 +09:00
Bartłomiej Dach
c892ec83ef
Fix wrong sizing of editor timeline ticks 2022-05-29 20:15:17 +02:00
Salman Ahmed
9cc5df9b13 Fix context menu no longer open on hitobjects in timeline 2022-05-29 15:23:32 +03:00
Salman Ahmed
02baf9a97a Fix timeline objects disappearing prematurely on wide-screens 2022-05-28 17:45:38 +03:00
Dean Herbert
62266c72ea
Merge pull request #18448 from frenzibyte/editor-metronome-rate
Fix metronome speed not adjusted on different playback rates
2022-05-28 10:58:51 +09:00
Dean Herbert
4f2910cdb1
Merge pull request #18445 from frenzibyte/editor-background-colour
Darken background colour in "setup" and "verify" screens
2022-05-28 10:56:22 +09:00
Dean Herbert
68684f5fe7
Merge pull request #18446 from frenzibyte/editor-row-attribute-background
Update row attribute background colour to fit screen
2022-05-28 10:53:50 +09:00
Dean Herbert
93a8092da6 Increase usable width slightly further 2022-05-28 10:51:39 +09:00
Salman Ahmed
e12d188dad Fix metronome speed not adjusted on different playback rates 2022-05-28 04:10:39 +03:00
Salman Ahmed
d12e4928e6 Increase editor verify settings width to give more breathing space 2022-05-28 03:09:04 +03:00
Salman Ahmed
e71d907164 Update row attribute background colour to fit screen 2022-05-28 02:20:04 +03:00
Salman Ahmed
eec9248cde Darken background colour in "setup" and "verify" screens 2022-05-28 02:10:18 +03:00
Salman Ahmed
aee3e2a4ed Add shadow effect to editor's bottom bar 2022-05-28 01:58:55 +03:00
Bartłomiej Dach
e511c1dfff
Merge branch 'master' into use-normalised-precise-scrolling 2022-05-27 16:55:13 +02:00
Joseph Madamba
e551a53601 Fix checkmarks not showing on editor stateful menu items 2022-05-26 21:45:30 -07:00
Dean Herbert
fb586fe0b2 Merge branch 'master' into editor-bottom-bar-new-design 2022-05-26 18:32:28 +09:00
Dean Herbert
7f4ea5d522 Use left alignment and remove hacky text positioning code 2022-05-26 18:12:28 +09:00
Dean Herbert
acd554d918 Update time info and add bpm 2022-05-25 23:54:59 +09:00
Dean Herbert
2c61a9d3d1 Update bottom bar components to new design language (mostly) 2022-05-25 23:54:59 +09:00
Dean Herbert
8791e3b9ef Split BottomBar out of Editor 2022-05-25 23:54:59 +09:00
Dean Herbert
463b8130c8 Update editor screen switcher to match new design language 2022-05-25 22:31:27 +09:00
Dean Herbert
206f2ca208 Rename screen switcher control to be in line with naming expectations 2022-05-25 22:20:33 +09:00
Dean Herbert
c4cae7f677 Update EditorMenuBar to match new design language 2022-05-25 22:19:24 +09:00
Dan Balasescu
fb22801afb
Merge pull request #18388 from peppy/editor-timing-waveforms
Add waveform comparison view to editor timing screen
2022-05-25 20:15:25 +09:00
Dean Herbert
f1d4902be5 Remove unnecessary bindable cast 2022-05-25 19:25:23 +09:00
Dan Balasescu
f468d1eb16
Merge branch 'master' into editor-tidy-up 2022-05-25 11:58:34 +09:00
Bartłomiej Dach
5f6baaca13
Merge branch 'master' into editor-beat-divisor-size-static 2022-05-24 23:17:02 +02:00
Dan Balasescu
25f35b3408
Merge pull request #18394 from peppy/editor-beat-divisor-on-mouse-down
Handle beat divisor input on mouse down, rather than mouse up
2022-05-24 19:06:14 +09:00
Dan Balasescu
46b2f1ecc2
Merge pull request #18392 from peppy/editor-remove-triangle-button-usage
Remove `TriangleButton` usage in editor
2022-05-24 18:51:02 +09:00
Dean Herbert
0bcf8c846c Change editor colour scheme to aquamarine 2022-05-24 18:43:22 +09:00
Dean Herbert
648cee7106 Remove editor screen transitions for now 2022-05-24 18:43:22 +09:00
Dean Herbert
3f5ccd4db8 Update timing screen sections to newer design metrics 2022-05-24 18:43:22 +09:00
Dean Herbert
c02ec05056 Remove remaining usage of EditorRoundedScreen 2022-05-24 18:43:22 +09:00
Dean Herbert
1d196262d0 Remove unused OnTimelineLoaded flow 2022-05-24 18:43:22 +09:00
Dean Herbert
a905731053 Update timeline colours and paddings to match new designs 2022-05-24 18:43:22 +09:00
Dean Herbert
17206bbebf Update screen padding and colouring to better match new designs 2022-05-24 18:43:22 +09:00
Dean Herbert
a2bfd0ba41 Merge branch 'editor-remove-triangle-button-usage' into editor-combined 2022-05-24 18:43:02 +09:00
Dean Herbert
741cfcc614 Merge branch 'editor-beat-divisor-on-mouse-down' into editor-combined 2022-05-24 18:43:01 +09:00
Dean Herbert
3ace5f135e Adjust marker to match design proportions 2022-05-24 18:26:01 +09:00
Dean Herbert
3c2e57bf00 Update BeatDivisorControl to better match new designs and metrics 2022-05-24 18:26:01 +09:00
Dean Herbert
e6087f5f5b Handle beat divisor input on mouse down, rather than mouse up
It felt way too unresponsive.
2022-05-24 18:16:19 +09:00
Dean Herbert
4a88affd03 Move beat divisor tick size retrieval to static methods 2022-05-24 18:15:20 +09:00
Dean Herbert
a346990a8c Remove TriangleButton usage in editor 2022-05-24 18:13:09 +09:00
Dean Herbert
1137545d4a Fix Timeline potentially not updating visuals to correct state on first display 2022-05-24 18:11:05 +09:00
Dean Herbert
49a2173646 Avoid needlessly updating display (and add better documentation on chosen scale) 2022-05-24 14:36:44 +09:00
Dean Herbert
4fcdcef166 Add indexing on each wavefrom row 2022-05-24 14:36:44 +09:00
Dean Herbert
c1720c128d Dim rows which are not part of the active control point (and offset centre) 2022-05-24 14:36:44 +09:00
Dean Herbert
7040dec013 Fix disabled bindable woes by not using TimingControlPoint.DEFAULT 2022-05-24 14:36:44 +09:00
Dean Herbert
588c5d1583 Add initial waveform comparison display 2022-05-24 14:36:44 +09:00
Susko3
88217e0c98 Adjust ScrollDelta usages to account for normalised IsPrecise values 2022-05-23 20:22:27 +02:00
Dean Herbert
c9ea87e6be Revert easing for now 2022-05-23 00:03:42 +09:00
Dean Herbert
007582afb9 Remove unused usings resulting from namespace move 2022-05-22 23:55:33 +09:00
Dean Herbert
eabf578282 Use interface to convey beat sync information 2022-05-22 22:44:54 +09:00
Dean Herbert
9a780bcad3 Remove unused using 2022-05-21 21:56:05 +09:00
Dean Herbert
376549ce09 Use ToLocalisableString instead of CurrentCulture 2022-05-21 21:48:51 +09:00
Dean Herbert
8db80b92bb Fix metronome not using EditorBeatmap causing editor updates to not propagate immediately 2022-05-20 23:24:57 +09:00
Dean Herbert
82eb5fd2c9 Add centre line on weight 2022-05-20 17:30:04 +09:00
Dean Herbert
2e21d75b10 Move metronome into own class and rename to avoid conflict with mod sounds 2022-05-20 17:30:04 +09:00
Dean Herbert
cf97f4e409 Add centre marker 2022-05-20 17:30:04 +09:00
Dean Herbert
4712e512d7 Apply edge smoothness and make weight more accented 2022-05-20 17:30:04 +09:00
Dean Herbert
8487d2c48a Interpolate bpm label and fix incorrect angle logic 2022-05-20 17:30:04 +09:00
Dean Herbert
21072a26ef Add locking wedge 2022-05-20 17:30:04 +09:00
Dean Herbert
79878a4ec2 Metrics adjust and labelling 2022-05-20 17:30:04 +09:00
Dean Herbert
cf1ef28f72 Add taper and more correctly shaped weight 2022-05-20 17:30:04 +09:00
Dean Herbert
42179568f3 Initial animation pass on metronome 2022-05-20 17:30:04 +09:00
Dean Herbert
ce7be940e2 Setup basics for control and test 2022-05-20 17:30:04 +09:00
Dan Balasescu
64a371638e
Merge pull request #18236 from peppy/snap-unification
Add `enum` to snap method as alternative to multiple nested invocations
2022-05-20 11:35:05 +09:00
Dean Herbert
83e781d5a1 Allow localisation of PlaceholderText 2022-05-17 17:42:46 +09:00
Dean Herbert
17e0105c2c Fix interaction with popover when textbox is disabled 2022-05-17 17:33:54 +09:00
Dean Herbert
3ff0399281 Split out LabelledTextBoxWithPopover for reuse 2022-05-17 17:33:54 +09:00
Bartłomiej Dach
ab5c736da1
Merge branch 'master' into editor-readability 2022-05-13 21:10:48 +02:00
Dean Herbert
c4871ebcf4 Add editor track traversal keys (Z-V) 2022-05-14 02:50:51 +09:00
Dean Herbert
f22ff4e087 Remove editor animation toggling (replaced by overlap markers) 2022-05-12 19:28:56 +09:00
Dean Herbert
c0abce918f Add enum to snap method as alternative to mutliple nested invocations 2022-05-12 16:19:07 +09:00
Dan Balasescu
c54ca937c5 Fix CI inspections 2022-05-12 14:55:20 +09:00
Dean Herbert
f51607521c Fix distance snap providing zero-distance snaps incorrectly 2022-05-12 13:11:55 +09:00
Dean Herbert
5800d7e99d
Merge pull request #18220 from frenzibyte/control-popover-focus
Focus textbox upon opening control point popovers
2022-05-11 19:41:25 +09:00
Salman Ahmed
96db530de6 Focus textbox on control point popovers 2022-05-11 09:55:34 +03:00
Salman Ahmed
24432dffc4 Add support for focusing intermediate slider-textbox component 2022-05-11 09:53:04 +03:00
Salman Ahmed
0b597e712e Fix timeline not handling mouse down events 2022-05-11 09:39:27 +03:00
Bartłomiej Dach
cbd1169495
Move cache declarations of ISamplePlaybackDisabler to interface 2022-05-08 10:38:58 +02:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler to more general namespace 2022-05-08 10:38:58 +02:00
Bartłomiej Dach
202a603d72
Merge branch 'master' into distance-snap-grid-current-tiume 2022-05-07 08:49:30 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Dean Herbert
71758390b5 Fix time based distance grid alpha not correctly accounting for distance spacing multiplier 2022-05-07 13:37:36 +09:00
Salman Ahmed
723fce8174 Move inverting value to happen outside clamp
Looks to have no effect, but makes sense to happen outside instead.
2022-05-06 18:54:13 +03:00
Salman Ahmed
d78f1d158d Use GetEndTime() instead of StartTime
Companion to
246479bf34
2022-05-06 18:51:35 +03:00
Salman Ahmed
112496204d Make nested class private 2022-05-06 18:50:28 +03:00
Salman Ahmed
3077d398ef
Merge branch 'master' into distance-snap-grid-current-tiume 2022-05-06 18:20:22 +03:00
Salman Ahmed
144d33f0d2
Merge branch 'master' into distance-snapping-test 2022-05-06 17:29:27 +03:00
Bartłomiej Dach
29a3ab7e7a
Halve drag box padding
Allows the drag box borders to collapse in on themselves to a single
line if the drag selection has zero width or height.
2022-05-06 15:21:35 +02:00
Dean Herbert
fad1f727bb Fix editor drag box visuals 2022-05-06 20:34:44 +09:00
Dean Herbert
69592722f8 Highlight distance snap grid rings that are close to the current time value 2022-05-06 18:30:46 +09:00
Dean Herbert
118e58888b Rename incorrectly named variable (radius is not diameter) 2022-05-06 17:51:51 +09:00
Dean Herbert
37cbc79283 Fix clamping logic to always clamp to the last displayed tick 2022-05-06 17:09:38 +09:00
Dean Herbert
684fef7f8c Fix MaxIntervals incorrectly factoring distance spacing multipiler into snap calculation 2022-05-06 17:09:02 +09:00
Dean Herbert
246479bf34 Fix snap extent not working correctly on sliders (and providing incorrect time values) 2022-05-06 15:54:37 +09:00
Dean Herbert
32b40bdabf Rename DistanceBetweenTick to be plural 2022-05-06 15:45:36 +09:00
Dan Balasescu
39d10487b9
Merge branch 'master' into snapping-tidy-distance 2022-05-05 19:55:55 +09:00
Dean Herbert
e83604a1fc Merge branch 'master' into cache-at-interface 2022-05-05 18:54:24 +09:00
Dean Herbert
b9d8b7e413 Fix end time extent not being accounted for in new snap implementation 2022-05-05 18:49:12 +09:00
Dean Herbert
b2e9be70a5 Rewrite CircularDistanceSnapGrid snapping implementation to use snap provider 2022-05-05 17:52:36 +09:00
Dean Herbert
4c884aea5d Fix CircularDistanceSnapGrid returning an incorrect time value when distance spacing is not 1.0 2022-05-05 17:09:14 +09:00
Dean Herbert
786c7f14d3 Expose DistanceSpacingMultiplier to distance 2022-05-05 17:08:53 +09:00
Dean Herbert
de9b3d33eb Rename misleading DistanceSpacing variable 2022-05-05 17:08:09 +09:00
Dean Herbert
4226583afd Merge branch 'cache-at-interface' 2022-05-05 16:52:03 +09:00
Dean Herbert
19cf9dc20b Merge branch 'snapping-tidy-distance' 2022-05-05 16:51:32 +09:00
Dean Herbert
1c6a233cc0 Move snap provider caching to interfaces 2022-05-05 16:44:37 +09:00
Dean Herbert
b411b59006 Move IPlacementHandler caching to interface 2022-05-05 16:43:02 +09:00
Dean Herbert
977e6d8a80 Add xmldoc for IDistanceSnapProvider and related properties 2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
Dean Herbert
df530cb5ab Add highlighting to the position snap grid edges in addition to centre lines 2022-05-04 13:49:04 +09:00
Dean Herbert
0bb90c7b07 Fix gridline centering and ensure lines are always rendered using a fixed screen-space width 2022-05-04 13:41:55 +09:00
Huo Yaoyuan
7cf4dabe29 Fix IDE0005 and IDE0034 2022-05-03 13:09:19 +08:00
Salman Ahmed
173a6188eb Add back float cast to distance spacing computation 2022-04-29 08:41:37 +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
59cf3ff50f Move distancing methods from IPositionSnapProvider to IDistanceSnapProvider 2022-04-28 05:48:45 +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
832d37b2c2 Update screen transition events to use new event args 2022-04-22 00:52:44 +09:00
Joseph Madamba
5e5c8e78a6 Use existing web localisation for most hardcoded strings 2022-04-20 16:31:11 -07:00
Dean Herbert
043599081b Split out INotificationOverlay to allow for easier testing 2022-04-18 20:14:01 +09:00
Dean Herbert
e315313266 Split out IDialogOverlay to allow for easier testing 2022-04-18 18:36:26 +09:00
Dean Herbert
90093c1d9d Combine private skin variable into exposed one 2022-04-18 13:32:37 +09:00
Salman Ahmed
2cb217e06c Fix editor legacy beatmap skins not receiving transformer 2022-04-18 06:59:58 +03:00
Salman Ahmed
338d94626e Expose underlying skin of EditorBeatmapSkin 2022-04-18 06:44:39 +03:00
Dean Herbert
fbf0e5a45c Remove startFromSkipTarget parameter and update usages that required said behaviour 2022-04-13 14:25:43 +09:00
Bartłomiej Dach
e14d5b8adb
Remove unused using directives 2022-03-31 21:20:30 +02:00
CenTdemeern1
a6875383fc Rebind SaveState() to bpmTextEntry 2022-03-31 21:06:05 +02:00
CenTdemeern1
52d723aaa6 Remove BPM slider 2022-03-31 20:11:07 +02:00
Bartłomiej Dach
f3aad77239
Remove unused local variable 2022-03-22 22:00:24 +01:00
Bartłomiej Dach
a38bafab91
Remove unused using directive 2022-03-22 22:00:05 +01:00
Dean Herbert
61ddf1e6cf Disallow exiting the editor without saving (unless explicitly confirming) 2022-03-22 15:42:56 +09:00
Dean Herbert
f95bd89166 Revert editor exit behaviour to exit without changes for now 2022-03-22 14:46:57 +09:00
Dean Herbert
d811a70f4b Change button types on editor exit dialog to match purpose
Addresses https://github.com/ppy/osu/discussions/17363.
2022-03-21 16:06:59 +09:00
Dean Herbert
ba1642a680 Allow section headers to wrap 2022-03-16 17:19:08 +09:00
Dean Herbert
a0a033520f Rider no add licence headers 2022-03-15 16:48:14 +09:00
Dean Herbert
4ab5d6e3f0 Remove unnecessary FillFlowContainer from section 2022-03-15 16:47:08 +09:00
Dean Herbert
9e476ced63 Add EditorSidebar component 2022-03-15 16:38:00 +09:00
Dean Herbert
68aedd63a7 Move SelectionHandler's SelectedItems binding to the base implementation
Until now it was up to each implementation to connect
`BlueprintContainer` to its `SelectionHandler`, which didn't make much
sense at all.
2022-03-10 23:22:19 +09:00
Bartłomiej Dach
e1eeb9c6bb
Allow tabbing between textboxes in sample point popover 2022-03-06 01:43:56 +01:00
Dean Herbert
f15b8781bb Move editor mode selector out of EditorMenuBar to allow for better reuse 2022-03-02 20:05:01 +09:00
Dean Herbert
2be40f36f7 Reword popup text to read better (or more vaguely)
Removed some words but also don't mention "smaller" because it's...
musically incorrect and also functionally incorrect – entering 1/[8]
will result in 1/16 also being populated for instance.
2022-02-28 15:26:50 +09:00
Dean Herbert
368eadd8d1 Remove unused using statement 2022-02-28 15:24:02 +09:00
Dean Herbert
3634e12e66 Automatically focus divisor textbox and hide popover after successful change 2022-02-28 15:23:01 +09:00
Bartłomiej Dach
7de5dad4f0
Add test coverage for divisor behaviour 2022-02-27 19:23:02 +01:00
Bartłomiej Dach
423838a649
Add flow for specifying entirely custom snaps 2022-02-27 17:55:20 +01:00
Bartłomiej Dach
d0c01afc2e
Add flow for changing set of valid divisors between presets 2022-02-27 15:37:51 +01:00
Bartłomiej Dach
36137e0619
Add simple carousel divisor type selector 2022-02-27 15:37:51 +01: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
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty 2022-02-16 08:55:12 +09:00
Salman Ahmed
f5d0eb41cb Update further ChangeFocus usages 2022-02-15 02:42:39 +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
Bartłomiej Dach
e45a2ae0fc
Restructure difficulty copy flow to adapt to latest changes 2022-02-14 22:02:37 +01:00
Bartłomiej Dach
6221447164
Append copy suffix on creating copy of difficulty 2022-02-14 20:19:12 +01:00
Bartłomiej Dach
6fd663a718
Apply some renames to convey difference between creation options better 2022-02-13 14:01:23 +01:00
Bartłomiej Dach
a144d6f8d6
Fix beatmap skin properties not copying 2022-02-13 14:01:22 +01:00
Bartłomiej Dach
a2c2b2bbb3
Add flow for copying existing difficulty content 2022-02-13 14:01:20 +01:00
Salman Ahmed
6f0e32826c Standardise ordering/grouping of IRulesetInfo/RulesetInfos 2022-02-11 04:27:11 +03:00
Dean Herbert
ee1feae806
Remove unnecessary ruleset ordering
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-04 11:06:18 +09:00
Bartłomiej Dach
afc48d86df
Add failing test coverage for save after safeties addition 2022-02-02 21:57:10 +01:00
Bartłomiej Dach
4f1aac9345
Add safeties preventing creating multiple difficulties with same name 2022-02-02 21:57:09 +01:00
Bartłomiej Dach
0d51c015ad
Add basic test coverage for new difficulty creation 2022-02-02 21:55:34 +01:00
Bartłomiej Dach
dc96c4888b
Add support for creating new blank difficulties 2022-02-02 21:55:33 +01:00
Bartłomiej Dach
3386f038ba
Add new difficulty creation menu 2022-02-02 21:23:35 +01:00
Bartłomiej Dach
e2fcdc394b
Extract method for difficulty switch menu creation 2022-02-02 21:23:35 +01:00
Bartłomiej Dach
c6a65ccfed
Remove unused parameter from createContent()
No longer used since 513e470b52.
2022-02-01 21:35:40 +01:00
Dean Herbert
b3856c9005 Fix editor crashing on custom rulesets due to ChangeHandler not being supported
As per https://github.com/ppy/osu/discussions/16668, even without proper
saving support some ruleset developers do want to work on the editor.
This brings things back into a workable state.
2022-01-28 14:03:31 +09:00
Dean Herbert
91be77ad3d Fix null ref in ComposeScreen when ruleset doesn't provide a composer 2022-01-28 14:01:10 +09:00
Dean Herbert
a5d422e82c Merge branch 'master' into ruleset-id-fixes 2022-01-27 17:07:18 +09:00
Dean Herbert
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
Bartłomiej Dach
d760283665
Ensure edited beatmap is restored to a baseline state on exit 2022-01-26 21:15:49 +01:00
Dean Herbert
bdf215c576
Merge branch 'master' into improve-timeline-zoom 2022-01-26 03:40:53 +09:00
Salman Ahmed
4169e5592e Reword event handler name and update xmldoc 2022-01-25 19:36:19 +03:00
Salman Ahmed
d1cbdf63f0 Add support for reading/saving timeline zoom in editor 2022-01-25 18:57:39 +03:00
Salman Ahmed
f7f58b06a1 Fix beat divisor not saving in editor 2022-01-25 11:56:38 +03:00
Salman Ahmed
5a9524a74e Decrease default timeline zoom to "6 seconds visible" range 2022-01-25 10:43:51 +03:00
Bartłomiej Dach
bd748686fa
Adjust spacing of time signature numerator input box 2022-01-23 15:21:32 +01:00
Salman Ahmed
e4758c9dbb Mark LabelledTimeSignature as public 2022-01-23 10:14:37 +03:00
Bartłomiej Dach
54f7b1b8d0
Use new time signature control on timing screen 2022-01-22 20:50:32 +01:00
Bartłomiej Dach
f39f2c93b5
Add control for arbitrary-numerator time signatures 2022-01-22 20:50:31 +01:00
Bartłomiej Dach
735414bc49
Replace TimeSignatures enum with struct for storage of arbitrary meter 2022-01-22 20:50:31 +01:00
Dean Herbert
5f5765d6a2 Reduce redundancy time range to create a bit more visual blending on the timeline 2022-01-19 14:57:01 +09:00
Dean Herbert
03ac91a3ee Consider all points in a group to meet redundancy check 2022-01-19 14:56:44 +09:00
Dean Herbert
93cd07f7fb Merge branch 'master' into summary-timeline-control-point-optimisation 2022-01-19 14:50:45 +09:00
Dean Herbert
67bf95bc91 Remove all usage of AuthorString 2022-01-18 23:30:40 +09:00
Dean Herbert
d10d657073
Merge pull request #16421 from Susko3/textbox-AllowIme-false
Add `AllowIme => false` to text boxes where applicable
2022-01-18 18:02:47 +09:00
Dean Herbert
39c9c4985b
Merge branch 'master' into textbox-AllowIme-false 2022-01-18 17:03:51 +09:00
Dean Herbert
566d341b1e Split conditions out for readability 2022-01-16 22:04:29 +09:00
Dean Herbert
565611ee00 Fix typo in inline comment 2022-01-15 23:57:20 +09:00
Dean Herbert
236fa6da7e Rename ControlPointVisualisation interface type to be less specific 2022-01-15 23:56:00 +09:00
Dean Herbert
c5cae4e3ee Rename methods and add xmldoc 2022-01-15 23:55:11 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-15 14:45:42 +01:00
Dean Herbert
64c499d9d6 Revert unintended temporary commenting (was used during benchmarking) 2022-01-15 15:24:30 +09:00
Susko3
19467e58c1 Remove unused params from BDL methods 2022-01-15 01:06:39 +01:00
Dean Herbert
c64a919a9d Reduce number of redundant control points displayed on summary timeline
As pointed out in https://github.com/ppy/osu/discussions/16435, beatmaps
with too many control points (usually added via external automation
apps) could cause the lazer editor to grind to a halt.

The overheads here are mostly from the GL side. An eventual goal would
be to render this in a smarter way, rather than using thousands of
drawables. Until that, this optimisation should help reduce the overhead
by omitting control points in close proximity that are redundant for
display purposes.

I've tried to contain this in the display logic directly, with the goal
that it can be ripped out as fast as it was added. Certainly required
more changes than I hoped for, but I don't think it's too ugly.
2022-01-14 17:13:26 +09:00
Dean Herbert
51251e3204 Fix CI reported warnings 2022-01-12 22:39:00 +09:00
Dean Herbert
7509a9ff8f Update BeatmapModelManager.Save to work for editor scenarios 2022-01-12 17:49:11 +09:00
Dean Herbert
3811bd8520 Fix some null inspections 2022-01-12 17:00:16 +09:00
Dean Herbert
a3276758b8 Remove unnecessary re-query of beatmap set in editor menu construction 2022-01-12 17:00:16 +09:00
Dean Herbert
b8cd3cdbbc Various updates to ruleset and primary key usages to move closer to realm support 2022-01-12 16:57:13 +09:00
Dean Herbert
83cbee39de Mark cases where BeatmapSet is generally guaranteed to be non-null 2022-01-12 16:39:36 +09:00
Susko3
a0842838e7 Add AllowIme => false where applicable
Also adds `AllowWordNavigation => false` to password text box.
2022-01-12 00:15:17 +01:00
Bartłomiej Dach
d76c674abc
Add tooltip with relative rotation in degrees to rotation handles 2022-01-08 20:24:15 +01:00
Bartłomiej Dach
24d377fddb
Move implementation of drag handle operations to concrete classes 2022-01-08 20:24:00 +01:00
Bartłomiej Dach
9370e84460
Fix effect point multiplier text box displaying too much decimal digits 2022-01-08 16:12:52 +01:00
Dean Herbert
6779503e57 Refactor logic to avoid TimelineSelectionHandler having to block base calls 2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b Add global flip hotkeys 2022-01-05 16:48:07 +09:00
Dean Herbert
13cce50fa7 Remove existing handling of flip hotkeys 2022-01-05 16:30:42 +09:00
Joseph Madamba
7de43e3aba Fix most open compound words in identifiers being closed 2021-12-27 20:26:28 -08:00
Joseph Madamba
98524d60a4 Fix clear identifier typos 2021-12-27 20:26:28 -08:00
Bartłomiej Dach
7ab1c0c99d
Improve contrast of timeline blueprint foreground content for pastel combo colours 2021-12-21 12:54:17 +01:00
Dan Balasescu
63a017bc8e Use Array.Empty instead 2021-12-11 19:33:37 +09:00
Dean Herbert
c1b3ee6bb2 Fix editor not resetting mods when entering
Would leave the user potentially in a test mode that is in a weird
state (ie. if cinema mod was enabled). Eventually we'll add the ability
to choose mods for test play, but that will be done in a saner way.

Closes #15870.
2021-12-10 18:57:45 +09:00
Bartłomiej Dach
10dd64e07c
Fix being able to paste objects while composer is loading
Would lead to exceptions due to modification of `Beatmap.HitObjects`
during its enumeration by `DrawableRuleset`, which was happening as an
async load via `EditorScreenWithTimeline.CreateMainContent()`.
2021-12-07 21:00:25 +01:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
a7e4e7be3a Remove the ability to specify a filename in ReplaceFile 2021-11-29 18:11:51 +09:00
Dean Herbert
e2ebcf7a26 Remove unnecessary manager parameter
Confused why I added this in the first place..
2021-11-25 18:36:03 +09:00
Dean Herbert
cc1b91e4bd Split out legacy model export logic into LegacyModelExporter classes 2021-11-25 16:41:12 +09:00
Dean Herbert
0eea026afb Remove null checks on CreateInstance() calls 2021-11-24 12:23:09 +09:00
Dean Herbert
7599efac30 Update editor cases where repeat should not be handled 2021-11-18 13:13:36 +09:00
Dean Herbert
5471994450
Merge branch 'master' into sample-point-multiple 2021-11-15 14:13:58 +09:00
Bartłomiej Dach
6b4b6de554
Fix test gameplay starting in a hidden state 2021-11-13 22:11:00 +01:00
Bartłomiej Dach
2562412125
Propagate clock state from gameplay test back to editor 2021-11-13 22:11:00 +01:00
Bartłomiej Dach
d2ddc25ab3
Propagate clock state from editor to gameplay test 2021-11-13 22:10:59 +01:00
Bartłomiej Dach
9a19a516f9
Adjust spacings on sample point piece popover 2021-11-13 21:59:45 +01:00
Bartłomiej Dach
73ca1d39a2
Improve sample bank text box UX in case of multiple selection 2021-11-13 21:59:44 +01:00
Bartłomiej Dach
3fee6b0938
Add support for setting sample bank & volume for multiple objects at once 2021-11-13 21:24:59 +01:00
Bartłomiej Dach
9800cd4903
Add test coverage for sample control point piece operation 2021-11-13 18:14:50 +01:00
Dean Herbert
983d5a6cb8
Merge branch 'master' into difficulty-point-multiple 2021-11-13 23:47:12 +09:00
Bartłomiej Dach
5f2a789a6d
Ensure editor clock is stopped before testing gameplay 2021-11-13 14:01:00 +01:00
Bartłomiej Dach
eb8c5292d5
Ensure editor background is dimmed after return from gameplay test 2021-11-13 13:50:57 +01:00
Bartłomiej Dach
b47c0b63f4
Tweak loader transition when testing gameplay in editor 2021-11-13 13:39:18 +01:00
Bartłomiej Dach
a5ba3bd012
Move gameplay test pieces to own namespace 2021-11-13 13:39:17 +01:00
Bartłomiej Dach
e1c28ddd76
Adjust difficulty point popover content spacing 2021-11-12 23:32:12 +01:00
Bartłomiej Dach
d567d2be97
Fix multiple issues with textbox content display
- Sometimes would display too many decimal digits due to floating point
  representation errors.

- Placeholder would also look wrong if text was removed during a
  multiple (but determinate) selection.
2021-11-12 23:32:12 +01:00
Bartłomiej Dach
e55e2a1697
Allow to adjust slider velocity on multiple objects simultaneously 2021-11-12 23:32:11 +01:00
Bartłomiej Dach
7ba93aac27
Add test coverage for difficulty point piece operation 2021-11-12 22:16:09 +01:00
Dean Herbert
54ae307a3d Trigger test via button click when using keyboard shortcut 2021-11-12 14:42:33 +09:00
Dean Herbert
e891c0ce53 Add keyboard shortcut to start test mode in editor 2021-11-12 14:13:11 +09:00
Dean Herbert
321aa456a7 Adjust button size slightly 2021-11-12 14:04:34 +09:00
Bartłomiej Dach
c465bcb821
Ensure track is stopped on player completion 2021-11-11 20:54:36 +01:00
Bartłomiej Dach
385df51b06
Ensure editor test player is exited on completion 2021-11-11 20:54:36 +01:00
Bartłomiej Dach
59727ce836
Add minimal implementation of gameplay testing from editor 2021-11-11 20:54:35 +01:00
Bartłomiej Dach
32b5a736c8
Add preview gameplay button to bottom editor bar 2021-11-11 17:12:21 +01:00
Dean Herbert
51a353e12d Rename BeatmapInfo.Version to DifficultyName to match underlying interface 2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11 Rename BeatmapInfo.StarDifficulty to StarRating to match underlying interface 2021-11-11 17:19:46 +09:00
Bartłomiej Dach
b25ad8dfcb
Copy editor timestamp to OS clipboard even when triggered via menu bar
Would only work when triggered via Ctrl+C before, and not work at all
for Ctrl+X.
2021-11-10 12:49:10 +01:00
Bartłomiej Dach
5e31e890ae
Extract class for clipboard contents for DI purposes 2021-11-10 12:36:23 +01:00
Bartłomiej Dach
042b05a250
Move clipboard action availability logic down to editor screens 2021-11-09 19:54:37 +01:00
Bartłomiej Dach
286754f6f7
Move clipboard operation implementation down to current screen 2021-11-09 19:54:37 +01:00
Dean Herbert
ed07ee8c61 Update all existing usages of AuthorString/AuthorId
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
09701d0af1 Use explicit primitive type specification 2021-11-04 16:02:37 +09:00
Dean Herbert
0f4f1349db Merge branch 'master' into editor-context-menu-on-select 2021-11-04 15:59:06 +09:00
Bartłomiej Dach
11de924704
Use LocalisableStrings where possible to leverage localisable text flow 2021-11-02 21:42:02 +01:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Jason Won
c633e2e952 only propagate unmodified right click 2021-10-26 16:24:53 -04:00
Jason Won
f64fa65fd5 right click on unselected object shows context menu 2021-10-26 14:52:15 -04:00
Dean Herbert
c47497923a Schedule drag events for now 2021-10-15 19:52:44 +09:00
Dean Herbert
30c3fcb4ea Merge branch 'master' into slider-timeline-velcotiy-adjust-v2 2021-10-15 19:45:04 +09:00
Dean Herbert
3909fd8caa Fix wonkiness when dragging slider end at high input refresh rates 2021-10-15 19:43:57 +09:00
Dean Herbert
874d722820
Merge branch 'master' into fix-editor-difficulty-name-update 2021-10-15 11:14:45 +09:00
Dean Herbert
ad0732484f Just wait for metadata section to be loaded 2021-10-14 22:12:38 +09:00
smoogipoo
901f107b2e Merge branch 'master' into slider-timeline-velcotiy-adjust-v2 2021-10-14 17:25:51 +09:00
Dan Balasescu
fb9c3fe72e
Merge pull request #14619 from peppy/no-more-difficulty-control-points-info
Move `DifficultyControlPoint`s to be specified at a per-`HitObject` level
2021-10-14 17:24:32 +09:00
Dean Herbert
09536cd733 Add logging of WorkingBeatmapCache.Invalidate calls 2021-10-14 14:05:33 +09:00
Bartłomiej Dach
d067159435
Recolour elements of editor setup screen to match dropdown theming 2021-10-13 22:32:54 +02:00
Dean Herbert
02689a1b60 Use actual BeatmapInfo rather than PlayableBeatmap.BeatmapInfo for editor writes 2021-10-13 14:50:12 +09:00
smoogipoo
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
Dean Herbert
ef64c64f0b
Merge branch 'master' into popup-filter-effect 2021-10-07 18:56:07 +09:00
Dean Herbert
f98dd1b811
Merge branch 'master' into popup-filter-effect 2021-10-07 18:40:21 +09:00
Dean Herbert
0df409c050 Move difficulty copy to BeatmapModelManager.Save 2021-10-07 17:16:45 +09:00
Dean Herbert
4ca97bc60a
Merge branch 'master' into difficulty-move-to-beatmap 2021-10-06 16:14:21 +09:00
Dean Herbert
222997f2b9 Copy difficulty settings back out to BeatmapInfo on editor changes 2021-10-06 15:19:26 +09:00
Dean Herbert
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
Dean Herbert
d9849bcf49 Fix dragging on an editor file selection text box causing repeated popover display
Local fix and no tests as this is a pretty weird usage of `TextBox`.
We'll probably want to change it to not use a textbox eventually.

Closes #14969.
2021-10-06 13:15:05 +09:00
Dean Herbert
ec61c3c5ee Rename all remaining cases 2021-10-03 00:55:29 +09:00
Dean Herbert
ac471a0ec1 Merge branch 'no-more-difficulty-control-points-info' into slider-timeline-velcotiy-adjust-v2 2021-10-01 17:46:58 +09:00
Jamie Taylor
4d91204faf
Pause Editor sample playback while popup dialog is shown 2021-09-29 20:46:41 +09:00
Dean Herbert
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
Bartłomiej Dach
ca6cbca04a
Fix range selection crashing after non-mouse selection 2021-09-27 20:54:29 +02:00
Dean Herbert
df85092426 Resolve inner items early in process and rename variable 2021-09-27 14:24:17 +09:00
Dean Herbert
41fb3371e5
Merge branch 'master' into blueprint-container-sorting 2021-09-27 14:12:09 +09:00
Bartłomiej Dach
d3203f83dd
Add implementation of range selection 2021-09-26 20:12:26 +02:00
Bartłomiej Dach
81d160c85a
Add test covering expected UX of range selection 2021-09-26 19:27:47 +02:00
Bartłomiej Dach
6dc3e66c93
Include combo information when determining ordering if available 2021-09-26 15:52:25 +02:00
Bartłomiej Dach
a86b9893ac
Always re-sort blueprints before adding/removing one 2021-09-26 15:48:56 +02:00
Bartłomiej Dach
4e094b2127
Implement grid size toggling matching stable 2021-09-19 20:26:02 +02:00
Bartłomiej Dach
56e80a0706
Add rectangular position snap grid 2021-09-19 18:07:19 +02:00
smoogipoo
e8dea0138c Fix one more issue 2021-09-16 18:34:13 +09:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert
fa693bb8a8 Move MusicController adjustment set to inside OsuScreen itself (and result nullable) 2021-09-16 16:08:09 +09:00
AbstractQbit
318f0941ca Move all the "inherit previous AllowTrackAdjustments" logic into OsuScreen 2021-09-15 21:25:39 +03:00
Dean Herbert
931e873a7e
Merge branch 'master' into inheritable-allow-track-adjust 2021-09-15 22:26:13 +09:00
Dean Herbert
13f88cbc4e Fix EditorClock retaining a reference to potentially outdated ControlPointInfo 2021-09-14 23:56:57 +09:00
AbstractQbit
b9193aae6d Make IOsuScreen.AllowTrackAdjustments nullable
Allows for inheriting value from the previous screen if undefined
2021-09-14 17:37:57 +03:00
Dean Herbert
57f8ccca16 Remove nullability from EditorState properties
Also update the xmldoc to not be specific to difficulty switching
2021-09-14 23:36:28 +09:00
Dean Herbert
f8bdca542d Make restoring state a public call on Editor 2021-09-14 23:36:17 +09:00
Dean Herbert
2a894e7a3f Make EditorLoader state private 2021-09-14 23:26:02 +09:00
Dean Herbert
563bf92529 Also update the full object on sample changes to make them apply immediately 2021-09-14 19:21:23 +09:00
Dean Herbert
d825da3983 Add note about a better way to adjust velocity 2021-09-14 18:54:29 +09:00
Dean Herbert
e4dd59aee2 Add popovers to adjust SV and samples from the timeline 2021-09-14 18:51:22 +09:00
Dean Herbert
9d17f84681 Adjust timeline height to account for less global control points 2021-09-14 18:51:11 +09:00
Dean Herbert
9551e77553 Remove difficulty and sample sections from timing screen 2021-09-14 18:51:11 +09:00
Dean Herbert
87cfcf706e Add ability to change slider velocity with shift-drag 2021-09-14 18:26:17 +09:00
Dean Herbert
b19dc5e41f Remove all legacy ControlPoints when entering the editor 2021-09-14 18:26:16 +09:00
Dean Herbert
6015b5037a Display difficulty and sample control points associated with hitobjects 2021-09-14 18:26:16 +09:00
Bartłomiej Dach
35ee889e5b
Restore clipboard content after difficulty switch 2021-09-13 21:04:27 +02:00
Bartłomiej Dach
79d0f4835e
Add failing tests for preserving clipboard content 2021-09-13 21:03:30 +02:00
Bartłomiej Dach
3fc72271f1
Restore editor clock time after difficulty switch 2021-09-13 20:59:31 +02:00
Dean Herbert
65fdceee79
Merge branch 'master' into editor-test-scenes-through-loader 2021-09-13 14:02:55 +09:00
Bartłomiej Dach
345cde251d
Add "samples match playback rate" to editor setup screen 2021-09-12 16:54:17 +02:00
Bartłomiej Dach
22fa9a303e
Expose test helper for switching between difficulties 2021-09-12 13:55:48 +02:00
Bartłomiej Dach
8357efc74f
Make EditorTestScene go through EditorLoader 2021-09-12 13:26:04 +02:00
Dean Herbert
9edd010b1d Fix unnecessary background screen transition 2021-09-07 14:34:54 +09:00
Dean Herbert
7921ad4516 Add loading spinner in case load takes longer than expected 2021-09-07 14:34:47 +09:00
Dean Herbert
ddaa95a1ca Fix pushEditor function running twice on returning to loader 2021-09-07 14:34:18 +09:00
Bartłomiej Dach
5b9f37702b
Remove unnecessary delay before pushing editor from loader 2021-09-06 21:32:23 +02:00
Bartłomiej Dach
2d59008f52
Move screen management logic to EditorLoader 2021-09-06 21:30:50 +02:00
Bartłomiej Dach
bd7d6dd35d
Rename method 2021-09-06 21:27:17 +02:00
Dean Herbert
ce197b6322 Fix missing attribute text (and give slightly more space for "10.00x" cases 2021-09-06 21:40:30 +09:00
Dean Herbert
3c7a34bdbd Move mania-specific conversion to converter 2021-09-06 21:06:13 +09:00
Dean Herbert
52b6b05883 Update terminology in timing screen for now 2021-09-06 21:06:13 +09:00
Dean Herbert
0500cd578a Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-06 21:06:12 +09:00
Bartłomiej Dach
d6a47fd99c
Sort difficulties by ruleset and star rating in menu 2021-09-05 21:48:11 +02:00
Bartłomiej Dach
7012a1d934
Fix issues with main menu -> editor loader transition 2021-09-05 21:48:11 +02:00
Bartłomiej Dach
382269b362
Test staying on same difficulty due to unsaved changes 2021-09-05 21:48:10 +02:00
Bartłomiej Dach
c72523bc14
Add basic test for difficulty switching 2021-09-05 21:48:10 +02:00
Bartłomiej Dach
a9403b65b3
Eliminate dependency on OsuGame 2021-09-05 21:48:10 +02:00
Bartłomiej Dach
c397cc2027
Restructure proof of concept 2021-09-05 21:48:09 +02:00
Bartłomiej Dach
fe2520c599
Add intermediary screen to avoid going back to menus 2021-09-05 21:48:09 +02:00
Bartłomiej Dach
7befd030df
Minimal working example of switching difficulties 2021-09-05 21:48:09 +02:00
Bartłomiej Dach
90f0b6874f
Highlight current difficulty in switcher 2021-09-05 21:48:08 +02:00
Bartłomiej Dach
e8fb5d2e66
Add non-functional difficulty switcher to menu 2021-09-05 21:48:08 +02:00
Dean Herbert
e0ee2a5533 Change section title to read better 2021-09-05 13:34:57 +09:00
Dean Herbert
25420af078 Rename method to drop redundant ruleset suffix 2021-09-05 13:34:23 +09:00
Bartłomiej Dach
1a90fb1ef3
Fix cached property being assigned twice 2021-09-04 19:52:42 +02:00
Dean Herbert
f42131ff89 Add back editor functionality for now 2021-09-03 19:08:23 +09:00
Dean Herbert
d4e5a612ea Update IPositionalSnapProvider to take a HitObject as reference, rather than raw time
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +09:00
Dean Herbert
a3d9ab1e2e Move approach rate to EffectControlPoint 2021-09-03 16:58:16 +09:00
Dean Herbert
071c56e90b Update usages of DifficultyPointAt 2021-09-03 16:58:16 +09:00
Bartłomiej Dach
ce1912781e
Add extension point for ruleset-specific beatmap setup sections 2021-09-02 23:29:14 +02:00
Dan Balasescu
6c649b7bbe
Merge branch 'master' into no-more-sample-control-points-info 2021-09-02 18:09:05 +09:00
Dean Herbert
0319177c5c Fix pixels poking out of the top edge of editor setup screen 2021-09-01 16:46:19 +09:00
Dean Herbert
edf29e405b
Merge pull request #14581 from bdach/setup-screen-countdown-settings
Add countdown settings to setup screen
2021-09-01 15:35:46 +09:00
Bartłomiej Dach
5dc938cc9f
Update tests to match expectations 2021-08-31 22:41:47 +02:00
Bartłomiej Dach
04773b51bb
Remove countdown toggle transition for now
Tricky to get right and the design isn't final as is anyway, so leaving
*something* functioning as a best-effort for now.
2021-08-31 22:41:40 +02:00
Dean Herbert
ce0d7cce2d Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info 2021-08-31 14:40:54 +09:00
Dean Herbert
c25ab6835c Remove IJsonSerializable interface
Was pretty pointless and made it hard to use the custom serialisation
terms arbitrarily in tests.
2021-08-31 14:39:20 +09:00
Bartłomiej Dach
ddf9d2aa6c
Add test coverage 2021-08-30 22:55:58 +02:00
Bartłomiej Dach
eec9f6d191
Add countdown settings to design section 2021-08-30 22:51:41 +02:00
Dean Herbert
ccacf56dd8 Move to legacy namespace 2021-08-30 17:14:53 +09:00
Dean Herbert
7257aae7f2 Move samples to LegacyControlPointInfo 2021-08-30 17:14:53 +09:00
Bartłomiej Dach
fcc3e57d5d
Move overlay colour provider up to editor screen 2021-08-28 20:05:58 +02:00
Bartłomiej Dach
e94d96f250
Add local popover container to editor screens 2021-08-28 20:05:58 +02:00
Salman Ahmed
b4d6495f99 Fix editor skin providing container not providing playable beatmap 2021-08-25 17:52:36 +03:00
Salman Ahmed
3ad0b529fb Make EditorScreen inherit from VisibilityContainer rather than unsafe transforms 2021-08-25 17:14:52 +03:00
Bartłomiej Dach
ccf337bdc2
Merge branch 'master' into editor-setup-file-selector-popovers 2021-08-23 18:28:44 +02:00
Salman Ahmed
bd42d7aada Hide popover on file selection 2021-08-23 18:01:01 +03:00
Dean Herbert
c2c9a93e2c Show editor file choosers in a popover rather than inline
Supersedes and closes #14370.
Closes #14367.
2021-08-23 18:12:36 +09:00
Dean Herbert
2f6b95da39 Add descriptions for the remaining settings 2021-08-23 17:41:03 +09:00
Dean Herbert
1de84e1c98
Change description to include mention of video
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2021-08-23 17:34:19 +09:00
Bartłomiej Dach
2e80e2be51
Reword epilepsy warning description text 2021-08-22 21:47:37 +02:00
Bartłomiej Dach
9816af688e
Add basic design settings to setup screen 2021-08-22 17:43:20 +02:00
Dean Herbert
98357d51da
Merge pull request #14323 from minetoblend/editor-seek
Prevent seeking before mp3 start time while editor is playing
2021-08-20 13:28:20 +09:00
Salman Ahmed
8c5d99ab21 Override CreateInstance() in osu! bindable subclasses
Three bindables are left which don't have this overriden due to them
already not having a value-only constructor and not supporting
`GetBoundCopy()` properly:
 - `BeatmapDifficultyCache.BindableStarDifficulty`.
 - `TotalScoreBindable`
 - `TotalScoreStringBindable`

I could add support for them by passing the required data to them, as
they seem to be able to have that shared, but I'm hesitant to support
something which was already broken and never used, not sure.
2021-08-18 04:19:58 +03:00
Dean Herbert
f16468b706 Improve visibility of repeat ticks / drag areas on timeline 2021-08-17 18:17:55 +09:00
Marvin Schürz
78f9f4a230 Move time clamp to Seek/transformSeekTo methods 2021-08-16 20:39:09 +02:00
Dean Herbert
1c7cbc8621 Add missing readonly keyword to new bindable 2021-08-16 17:14:13 +09:00
Bartłomiej Dach
6108451449
Retrieve separated skin instance from working beatmap for editing 2021-08-15 21:18:09 +02:00
Bartłomiej Dach
81280dfd25
Use editable skin structure in combo colour picker 2021-08-15 21:18:08 +02:00
Bartłomiej Dach
0d64da8c63
Add skin providing container responding to beatmap skin edits 2021-08-15 21:18:08 +02:00
Bartłomiej Dach
df43e758ee
Add editable beatmap skin 2021-08-15 21:18:07 +02:00
Marvin Schürz
d287db7961 Clamping seekTime to beatmap length 2021-08-15 14:48:56 +02:00
Jamie Taylor
c1d8a7e2ad
Add and use 'Submit' select sample variant for particular components 2021-07-30 21:35:28 +09:00
Jamie Taylor
be3c02ff7f
Remove 'Soft' select sample variant usage (soft is the new default) 2021-07-30 21:35:27 +09:00
Bartłomiej Dach
0691c0dd63
Switch Colour{Display,Palette} to use Colour4 2021-07-29 23:14:32 +02:00
Henry Lin
89e8296eb1 Reset all types of adjustments in MusicController; Rename AllowRateAdjustments to AllowTrackAdjustments 2021-07-29 15:39:26 +08:00
Bartłomiej Dach
239b38a0ab
Reduce implicit conversions by using default 2021-07-27 21:46:29 +02:00
Lucas A
94877117b9 Apply changes in-line with framework changes. 2021-07-27 18:22:47 +02:00
Dean Herbert
50a2abbe7f
Merge pull request #12683 from frenzibyte/legacy-beatmap-combo-offset
Apply combo offsets "colour hax" only on beatmap skins
2021-07-23 14:30:18 +09:00
Salman Ahmed
7bc30b46ff Use BindValueChanged with last running immediately instead 2021-07-23 07:51:58 +03:00
Salman Ahmed
ee3791ccf2 Update colours once on TimelineHitObjectBlueprint 2021-07-23 06:25:56 +03:00
Salman Ahmed
523c154f15 Add ComboIndexWithOffsetsBindable and bind similar to ComboIndexBindable 2021-07-22 16:40:33 +03:00
Dean Herbert
29ffae4025
Merge pull request #13967 from nekodex/new-select-sounds
Add new 'soft' select sound variant and use it in some places
2021-07-22 16:21:03 +09:00
Dean Herbert
8b1202153a
Merge pull request #13951 from LumpBloom7/timeline-object-interactions
Make timeline blueprints outside of TimelineBlueprint boundaries interactable
2021-07-22 16:20:22 +09:00
Dean Herbert
957a0686ed Split out nested classes from TimelineBlueprintContainer
They got too big.
2021-07-22 15:48:08 +09:00
Dean Herbert
b5cc9010de Move resolved property to top of class 2021-07-22 15:39:01 +09:00
Jamie Taylor
507b53dc73
Use 'Soft' hover/select samples for EditorTable row selection 2021-07-21 22:02:40 +09:00
Derrick Timmermans
9d43ca122f
Allow context menus to be triggered as well 2021-07-21 12:04:09 +02:00
Derrick Timmermans
f85ff40a6b
Add back LeftMouse button check 2021-07-21 11:47:21 +02:00
Dean Herbert
adda96ac86
Merge pull request #13962 from ekrctb/platform-action
Adapt to framework `PlatformAction` type change
2021-07-21 18:17:38 +09:00
ekrctb
1bac471b49 Adapt to PlatformAction type change 2021-07-21 16:12:53 +09:00
ekrctb
1bff4373b3 Allow specifying flipping support of selection box different from scaling 2021-07-21 15:59:45 +09:00
Derrick Timmermans
a8cf6a6854
Fix slight Y position offset in HandleDrag 2021-07-20 23:00:58 +02:00
Derrick Timmermans
bfec87b082
Let TimelineBlueprintContainer only accept positional input within timeline quad 2021-07-20 22:30:50 +02:00
Derrick Timmermans
8b09ddbcd6
Merge branch 'ppy:master' into timeline-object-interactions 2021-07-20 16:36:39 +02:00
Salman Ahmed
1af230c48c Merge branch 'master' into refactor-combo-colour-retrieval 2021-07-20 10:08:25 +03:00
Dan Balasescu
f3bcaf7f11
Merge pull request #13929 from peppy/i-deep-cloneable
Create a deep clone of score for score submission purposes
2021-07-19 21:58:27 +09:00
Dean Herbert
bde35d9f21 Rename radio button classes to be local to editor 2021-07-19 16:57:12 +09:00
Dean Herbert
3c028ce05c Add IDeepCloneable interface and update existing CreateCopy methods to use it 2021-07-19 12:54:17 +09:00
Derrick Timmermans
2e2a2bdd99
Allow moving timeline selection when mousedown event is outside of blueprint container 2021-07-18 18:06:59 +02:00
Derrick Timmermans
ee220feecf
Avoid using guesses to determine whether inputs blocked 2021-07-18 16:04:23 +02:00
Dean Herbert
50eed26bd1 Rename radio button item to label 2021-07-17 02:32:23 +09:00
Dean Herbert
eac9b1ec7e Disable toolbox composition buttons when beatmap is not timed 2021-07-17 02:30:13 +09:00
Dean Herbert
3ae5f6707a Expose whether an EditorBeatmap has timing present or not via bindable 2021-07-17 02:30:00 +09:00
Dean Herbert
7a671754f2 Change RadioButton's object to a string 2021-07-17 02:29:31 +09:00
Derrick Timmermans
e35cff99c7
Pass on mouseDown input to timeline if no selection modification is made with that input 2021-07-16 17:21:43 +02:00
Derrick Timmermans
3e8a13bfbf
Allow interacting with timeline objects outside of drawable bounds 2021-07-16 16:16:34 +02:00
Bartłomiej Dach
f45418dde7 Replace game-side directory/file selector with framework extensions 2021-07-06 22:11:54 +02:00
Bartłomiej Dach
50c27d2635 Update usages of IHasTooltip in line with framework localisation changes 2021-06-25 19:10:04 +02:00
Dean Herbert
f62b4f2d24
Merge pull request #13617 from ekrctb/catch-editor
Add "placeholder" (pre-MVP) implementation of osu!catch editor
2021-06-23 14:00:34 +09:00
ekrctb
0b351c9922 Fix "possible NRE" inspection 2021-06-23 10:57:04 +09:00
ekrctb
eec4457473 Add [CanBeNull] to methods returning null by default 2021-06-23 09:40:07 +09:00
ekrctb
a9c7830252 Fix NRE when hit object blueprint is not implemented 2021-06-22 17:20:13 +09:00
Dean Herbert
4b45d8318e
Merge branch 'master' into transformers-per-skin 2021-06-16 16:37:28 +09:00
Dean Herbert
04413f1634
Merge pull request #13444 from peppy/editor-timeline-taiko-hit-colouring
Show osu!taiko centre/rim colouring in editor timeline
2021-06-11 15:10:24 +09:00
Dan Balasescu
97375d9625
Merge pull request #13438 from bdach/more-metadata-fields
Add remaining metadata fields to editor setup screen
2021-06-11 14:17:34 +09:00
Dean Herbert
bc3b7233ab Show osu!taiko centre/rim colouring in editor timeline
Closes #13443.
2021-06-11 14:17:30 +09:00
Dean Herbert
38bf04d7ff Give more space for time values to allow for negative offsets 2021-06-11 13:25:09 +09:00