1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-18 21:02:54 +08:00
Commit Graph

394 Commits

Author SHA1 Message Date
Bartłomiej Dach
e2fcdc394b
Extract method for difficulty switch menu creation 2022-02-02 21:23:35 +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
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
Salman Ahmed
f7f58b06a1 Fix beat divisor not saving in editor 2022-01-25 11:56:38 +03: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
a3276758b8 Remove unnecessary re-query of beatmap set in editor menu construction 2022-01-12 17:00:16 +09:00
Dean Herbert
83cbee39de Mark cases where BeatmapSet is generally guaranteed to be non-null 2022-01-12 16:39:36 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +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
7599efac30 Update editor cases where repeat should not be handled 2021-11-18 13:13:36 +09: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
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
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
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
ebe58cee11 Rename BeatmapInfo.StarDifficulty to StarRating to match underlying interface 2021-11-11 17:19:46 +09: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
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
09536cd733 Add logging of WorkingBeatmapCache.Invalidate calls 2021-10-14 14:05:33 +09:00
Dean Herbert
02689a1b60 Use actual BeatmapInfo rather than PlayableBeatmap.BeatmapInfo for editor writes 2021-10-13 14:50:12 +09:00
Jamie Taylor
4d91204faf
Pause Editor sample playback while popup dialog is shown 2021-09-29 20:46:41 +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
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
f8bdca542d Make restoring state a public call on Editor 2021-09-14 23:36:17 +09:00
Bartłomiej Dach
35ee889e5b
Restore clipboard content after difficulty switch 2021-09-13 21:04:27 +02:00
Bartłomiej Dach
3fc72271f1
Restore editor clock time after difficulty switch 2021-09-13 20:59:31 +02:00
Bartłomiej Dach
22fa9a303e
Expose test helper for switching between difficulties 2021-09-12 13:55:48 +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
Bartłomiej Dach
d6a47fd99c
Sort difficulties by ruleset and star rating in menu 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
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
Salman Ahmed
3ad0b529fb Make EditorScreen inherit from VisibilityContainer rather than unsafe transforms 2021-08-25 17:14:52 +03:00
Bartłomiej Dach
6108451449
Retrieve separated skin instance from working beatmap for editing 2021-08-15 21:18:09 +02:00
Henry Lin
89e8296eb1 Reset all types of adjustments in MusicController; Rename AllowRateAdjustments to AllowTrackAdjustments 2021-07-29 15:39:26 +08:00
ekrctb
1bac471b49 Adapt to PlatformAction type change 2021-07-21 16:12:53 +09:00
Dean Herbert
3c028ce05c Add IDeepCloneable interface and update existing CreateCopy methods to use it 2021-07-19 12:54:17 +09:00
Dean Herbert
dbfaaecd9c Reword comment to not mention tests driectly 2021-05-20 15:39:29 +09:00
Dean Herbert
a639132825 Avoid doing any re-fetch on beatmap from test scenes 2021-05-19 17:58:28 +09:00
Dean Herbert
44e22b31a9 Refactor editor exit sequence to avoid any scenario where a dialog could go stray 2021-05-19 16:51:54 +09:00
Dean Herbert
b36c991ba1 Fix single case of incorrect usage 2021-05-14 12:04:38 +09:00
Salman Ahmed
fc2a527e9d Revert "Guard against potentially null track if ever"
This reverts commit b1134c3857.
2021-05-07 09:57:08 +03:00
Salman Ahmed
7c4e54a1d4 Unrevert null-colaescing/conditionals removal 2021-05-07 09:54:14 +03:00
Salman Ahmed
b1134c3857 Guard against potentially null track if ever 2021-05-07 08:30:50 +03:00
Salman Ahmed
37f44d2e37 Revert wrong not-null track changes
This reverts commit f9d99a9882.
This reverts commit 71547bece0.
2021-05-07 08:28:44 +03:00
Salman Ahmed
71547bece0 Remove any null-coalescing/conditionals in WorkingBeatmap.Track usages 2021-05-07 07:46:23 +03:00
Salman Ahmed
539643c72b Set loadable beatmap track to clock immediately in BDL
This reverts commit 84da247002.

Use loadable beatmap track for clock directly in BDL
2021-05-07 07:21:56 +03:00
Salman Ahmed
84da247002 Fix editor clock using the wrong beatmap track on creation 2021-05-07 05:32:55 +03:00
Dean Herbert
9d8f0c854d Setup configuration item for editor hit animations 2021-04-21 18:05:40 +09:00
Dean Herbert
c6c91cd9a5 Refactor WaveformOpacityMenuItem to not receive whole config 2021-04-21 18:05:26 +09:00
Dean Herbert
7654df94f6
Merge pull request #12395 from frenzibyte/fix-cinema-ignore-settings
Fix beatmap background displayed if storyboard is hidden on "Cinema" mod
2021-04-14 14:31:03 +09:00
Salman Ahmed
36510309d1 Merge EnableUserDim and IgnoreUserSettings to one bindable 2021-04-13 10:58:56 +03:00
Dean Herbert
14bd5bdc77 Merge branch 'master' into verify-tab 2021-04-12 15:14:37 +09:00
Bartłomiej Dach
4df7ff21c7 Fix editor arrow seek snapping not updating after control point changes
The editor clock, which is responsible for performing the seek, was not
aware of changes in control points due to reading from the wrong
beatmap. `loadableBeatmap` is not actually changed by any of the editor
components; `playableBeatmap` and `editorBeatmap` are.

For now this is changed to use `playableBeatmap`. A better follow-up
would be to use `editorBeatmap`, but it would probably be best to move
the beat snap bindable into `EditorBeatmap` first.
2021-04-03 14:02:46 +02:00
Dean Herbert
690debe507
Merge pull request #12030 from LeNitrous/editor-platform-clipboard-copy 2021-03-29 19:31:16 +09:00
Naxess
d58ef5310b Add verify tab
Currently empty, but works.
2021-03-28 17:36:22 +02:00
Nathan Alo
c96321206a fix appveyor complaints 2021-03-26 16:17:24 +08:00
Nathan Alo
2bea69456e remove implementations 2021-03-26 15:24:33 +08:00
Nathan Alo
51e0304c54 properly format strings per ruleset 2021-03-17 18:31:09 +08:00
Nathan Alo
133ff085a5 refactor code 2021-03-17 18:06:40 +08:00
Nathan Alo
8046b5a818 set text to platform clipboard on copy 2021-03-17 17:35:49 +08:00
Dean Herbert
3b6a1180b6 Remove non-accessed field 2021-03-17 17:02:11 +09:00
Dean Herbert
c7740d1181 Fix opening the editor occasionally causing a hard crash due to incorrect threading logic
Setting one of the global screen `Bindable`s (in this case, `Beatmap`)
is not valid from anywhere but the update thread. This changes the order
in which things happen during the editor startup process to ensure
correctness.

Closes #11968.
2021-03-17 15:52:25 +09:00
Dan Balasescu
c70dd2edfc
Merge pull request #11569 from peppy/fix-editor-new-beatmap-crash
Fix a potential crash when exiting the editor before a new beatmap is added to the database
2021-02-01 21:01:51 +09:00
Dean Herbert
4ac362ee1a Move cloning local to editor 2021-01-25 18:29:00 +09:00
Dean Herbert
b44bd8c4ee Remove unused using statement 2021-01-22 18:03:33 +09:00
Dean Herbert
a9c8f9bd4a Fix a potential crash when exiting the editor before a new beatmap is added to the database 2021-01-22 17:47:38 +09:00
Dean Herbert
2cfd1e8b47
Merge branch 'master' into fix-control-point-pollution 2021-01-08 00:02:45 +09:00
Dean Herbert
b3f08b29ca Ensure that all changes to screen backgrounds are on the correct thread 2021-01-05 15:22:50 +09:00
Dean Herbert
b4a779108e Ensure working beatmap is reloaded on exiting the editor 2021-01-04 16:37:49 +09:00
Dean Herbert
83f1350d7d Fix editor background not being correctly cleaned up on forced exit
Closes #11214. Should be pretty obvious why.
2020-12-21 17:49:11 +09:00
Dean Herbert
e84dab8589 Move new beatmap construction above beat divisor binding 2020-12-02 14:36:52 +09:00
Dean Herbert
2b268ee012 Fix editor beat snapping not working correctly when starting with a new beatmap 2020-12-01 16:16:26 +09:00
Dean Herbert
d4c6d6275e Fix volume not being adjustable in the editor using alt-scroll
We do this in other places so I think it's fine to handle like this for
now (until we come up with a better global solution).

Closes #10958.
2020-11-25 16:46:22 +09:00
Bartłomiej Dach
e078b78dcc Ensure callbacks don't fire when restoring default beatmap 2020-11-07 20:59:57 +01:00
Dean Herbert
7e4314684b Add editor waveform opacity selection to menu 2020-11-03 16:01:14 +09:00
Dean Herbert
351acce698 Merge branch 'master' into fix-editor-bindable-crash 2020-10-28 13:34:54 +09:00
Dean Herbert
01b576c861 Fix editor crash on exit when forcing exit twice in a row 2020-10-28 13:32:39 +09:00
Dean Herbert
e0ad005cc1 Move editor sample disabling logic to editor class (and support screen switching) 2020-10-27 14:33:44 +09:00
Dean Herbert
aea31d1582 Fix editor not seeking by full beat when track is playing
This is expected behaviour as my osu-stable, and I still stand behind
the reasoning behind it.

Closes #10519.
2020-10-16 13:07:00 +09:00
Dan Balasescu
ecfb7e94c5
Merge branch 'master' into fix-editor-batch-handling 2020-10-09 20:06:06 +09:00
Dean Herbert
68039cff40 Set beatmap to sane default on exiting editor 2020-10-09 13:12:48 +09:00
Dean Herbert
38babf3de5 Update usages of ChangeHandler to EditorBeatmap where relevant 2020-10-08 18:04:07 +09:00
Dean Herbert
09f5e9c9eb Use batch change application in many places that can benefit from it 2020-10-06 22:10:07 +09:00
Dean Herbert
3ce234d552 Seek at 4x normal speed when holding shift
This matches osu-stable 1:1. Not sure if it feels better or not but
let's stick with what people are used to for the time being.
2020-10-06 17:47:25 +09:00
Dean Herbert
9ca0e48acc Change exit logic to be more test-friendly 2020-10-04 23:57:28 +09:00
Dean Herbert
02e4f3ddaf Fix the editor saving new beatmaps even when the user chooses not to 2020-10-04 23:47:16 +09:00
Dean Herbert
d6f3beffb6 Use existing bindable flow instead 2020-09-29 12:50:17 +09:00
Dean Herbert
4f0c0ea5f9 Fix hit samples playing while paused / seeking in the editor 2020-09-28 18:17:47 +09:00
Dan Balasescu
e828cf1607
Merge branch 'master' into editor-load-audio 2020-09-25 14:49:54 +09:00
Dean Herbert
44a6637c36 Use SingleOrDefault 2020-09-25 12:20:37 +09:00
Dean Herbert
978f6edf38 Add basic track reloading support while inside the editor 2020-09-24 20:56:35 +09:00
Dean Herbert
158d307126 Avoid destroying editor screens when changing between modes 2020-09-24 17:03:54 +09:00
Dean Herbert
3062fe4411 Add editor key bindings to switch between screens 2020-09-22 15:55:25 +09:00
Dean Herbert
692f2c8489 Simplify debounced update pathway 2020-09-14 14:58:00 +09:00
Dean Herbert
320e314356 Use minimum start time to handle SelectedHitObjects not being sorted 2020-09-13 22:53:30 +09:00
Dean Herbert
c573392bb2 Remove completed todo 2020-09-13 22:31:59 +09:00
Dean Herbert
1a9f0ac16a Select new objects 2020-09-12 21:23:12 +09:00
Dean Herbert
2d9b0acabe Fix empty selection via keyboard shortcuts crashing 2020-09-12 21:23:10 +09:00
Dean Herbert
001cd1194c Consume BindCollectionChanged 2020-09-11 22:53:03 +09:00
Dean Herbert
08be45c9e7 Merge branch 'master' into editor-clipboard 2020-09-11 20:35:05 +09:00
Dean Herbert
2858296c25 Avoid editor confirm-save dialog looping infinitely when using keyboard shortcut to exit
Will now exit without saving if the keyboard shortcut is activated twice
in a row, as expected.

Closes #10136.
2020-09-11 19:58:37 +09:00
Dean Herbert
de3d8e83e1 Add keyboard shortcuts 2020-09-11 19:55:41 +09:00
Dean Herbert
7d7401123c Add initial implementation of editor clipboard 2020-09-11 19:54:20 +09:00
Dean Herbert
c6e72dabd3 Add test coverage 2020-09-09 20:04:25 +09:00
Dean Herbert
327179a81e Expose unsaved changes state 2020-09-09 19:42:03 +09:00
Dean Herbert
6f067ff300 Only show confirmation if changes have been made since last save 2020-09-09 19:40:41 +09:00
Dean Herbert
ac0c4fcb8c Add prompt to save beatmap on exiting editor 2020-09-09 19:31:19 +09:00
Dean Herbert
a501df954b Avoid multiple editor screens potentially loading on top of each other 2020-09-08 19:52:05 +09:00
smoogipoo
9ab6d584d3 Merge branch 'master' into editor-new-beatmap 2020-09-07 14:30:41 +09:00
Dean Herbert
fba253f131 Take user argument in CreateNew method parameters 2020-09-04 13:17:43 +09:00
Dean Herbert
d849f7f2b5 Use the local user's username when saving a new beatmap 2020-09-03 13:20:23 +09:00
Dean Herbert
e032844570 Start with a fresh beatmap when entering editor from main menu 2020-09-03 13:20:23 +09:00
Craftplacer
9835d98942 Merge remote-tracking branch 'upstream/master' into combo-colors 2020-09-01 17:39:35 +02:00
Dean Herbert
bee01bdd38 Fix first scroll wheel in editor incorrectly advancing twice 2020-08-31 18:01:16 +09:00
Craftplacer
db413686bb Add BeatmapSkin to EditorBeatmap 2020-08-30 21:12:45 +02:00
Craftplacer
f5c82d41eb Remove if-cast 2020-08-30 16:06:48 +02:00
Craftplacer
e6646b9877 Resolve review comments 2020-08-23 15:08:02 +02:00
Craftplacer
48bdbb0cfb Use existing field in Editor 2020-08-15 23:46:10 +02:00
Craftplacer
c4a7fac760 Add required parameters and other various changes 2020-08-15 22:03:24 +02:00
Dean Herbert
e96e558728 Fix reversing scroll direction not always behaving as expected 2020-07-17 16:03:23 +09:00
Dean Herbert
d18eb663b1 Add tweening seek support to EditorClock 2020-05-22 16:47:52 +09:00
Dean Herbert
dd09d7830d Cache and resolve editor clock as EditorClock in all cases 2020-05-22 16:44:06 +09:00
smoogipoo
e1142b424d Fix test failures 2020-04-22 18:14:21 +09:00
smoogipoo
9c22d2f1dd Use platform bindings for editor actions 2020-04-22 17:41:24 +09:00
smoogipoo
9e2be6f2f4 Remove bindable to promote one-way access 2020-04-16 13:25:08 +09:00
smoogipoo
ce21cfbb03 Use bindables in menu items 2020-04-15 16:17:34 +09:00
smoogipoo
14eca3655b Add change state handling to the editor 2020-04-09 21:22:07 +09:00
Dan Balasescu
f390c1995d
Apply comment suggestions
Co-Authored-By: Dean Herbert <pe@ppy.sh>
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-16 11:29:28 +09:00
smoogipoo
c33ca6e99c Decorate usages with exception management 2020-03-13 14:28:11 +09:00