1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 23:02:56 +08:00
Commit Graph

1587 Commits

Author SHA1 Message Date
Dean Herbert
d1c68cb92b Simplify content creation of Timeline / TimelineArea 2021-04-14 21:03:52 +09:00
Dean Herbert
be08b9d1ef Combine logic of Difficulty and Timing pieces where feasible 2021-04-14 20:55:34 +09:00
Dean Herbert
afbb674e52 TopLeft align check buttons so they don't move while interacting with them 2021-04-14 20:54:35 +09:00
Dean Herbert
99f05253fd Adjust timeline sizing to closer match designs (but not 1:1 yet) 2021-04-14 20:54:35 +09:00
Dean Herbert
f9b1b7fe25 Update SamplePointPiece design 2021-04-14 20:54:35 +09:00
Dean Herbert
a8df2388eb Update design for TimingControlPoint 2021-04-14 20:11:47 +09:00
Dean Herbert
1209c9fa32 Allow timeline to expand in height when control points are to be displayed 2021-04-14 20:10:50 +09:00
Dean Herbert
26110cd777 Fix timeline not receiving input (being eaten by composer) 2021-04-14 18:17:27 +09:00
Dean Herbert
a314f90d37 Allow timeline to govern the size of the rest of the editor content 2021-04-14 18:17:27 +09:00
Dean Herbert
e543db9bee Use additive blending for background box
Doesn't make a huge difference but this was intended.
2021-04-14 14:56:28 +09:00
Dean Herbert
b7d2821b55 Display the centre marker above the waveform
Gives it a bit more visibility. This is where it was meant to sit, but
didn't consider using a proxy drawable to make it work previously.
2021-04-14 14:52:48 +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
Dean Herbert
21e8e5fbca Move common table layout logic into EditorTable abstract class 2021-04-13 23:26:19 +09:00
Dean Herbert
0edc1a850d Split out common EditorTable base class 2021-04-13 23:05:58 +09:00
Dean Herbert
1ff4e2076f Merge branch 'master' into verify-tab 2021-04-13 23:05:48 +09:00
Andrei Zavatski
e601141be2 Simplify ExtendableCircle component 2021-04-13 14:57:02 +03:00
Dan Balasescu
1505a38164
Merge pull request #12396 from peppy/update-timeline-slider-apperance
Update timeline slider/spinner apperance
2021-04-13 20:47:44 +09:00
Dan Balasescu
b2aa46690d
Merge pull request #12389 from peppy/fix-editor-ctrl-drag-deselection
Fix ctrl-dragging on an existing selection unexpectedly causing deselection
2021-04-13 20:38:29 +09:00
Dean Herbert
464fc02875 Fix some styling issues with the verify screen layout 2021-04-13 19:55:17 +09:00
Dean Herbert
03ba04e8ce Split out general checks into its own verifier class (and remove static usage) 2021-04-13 19:50:22 +09:00
Dean Herbert
e7b0042a60 Remove unnecessary hover / shadow logic 2021-04-13 19:30:20 +09:00
Dean Herbert
b2c17979de Update colours of all overlay components in one swoop (based off combo colour) 2021-04-13 19:26:20 +09:00
Dean Herbert
495fdd8d65 Update drag area display to match new design logic 2021-04-13 19:26:20 +09:00
Dean Herbert
109ee395bf Fix input and remove outdated hover logic 2021-04-13 19:26:20 +09:00
Dean Herbert
00f235760d Update visual appearance of timeline blueprints to close match new designs 2021-04-13 19:26:20 +09:00
Naxess
60c2494b31 Make BeatmapVerifier an interface 2021-04-13 10:40:56 +02:00
Salman Ahmed
36510309d1 Merge EnableUserDim and IgnoreUserSettings to one bindable 2021-04-13 10:58:56 +03:00
Dean Herbert
27e851c2ee Also adjust height 2021-04-13 16:43:29 +09:00
Dean Herbert
ebf97ff48f Update timeline ticks to use width as a differentiation method, rather than height 2021-04-13 16:29:35 +09:00
Dean Herbert
66e74da2b7 Fix regression in quick delete mouse action blocking 2021-04-13 13:03:14 +09:00
Naxess
008dbc7dd6 Reverse IssueType ordering
Reversed both in the enum and where it's displayed, so ends up the same in the end.
2021-04-12 15:49:13 +02:00
Naxess
1c69829ad4 Fix Template.Origin -> Check 2021-04-12 15:47:58 +02:00
Dean Herbert
cc2acf5e54 Fix ctrl-dragging on an existing selection causing deselection of the hovered object 2021-04-12 19:05:23 +09:00
Dean Herbert
b5954a55ad Remove empty <returns> xmldoc 2021-04-12 17:46:14 +09:00
Naxess
a2fc9c398f Rename CreateChecker -> CreateBeatmapVerifier 2021-04-12 10:08:30 +02:00
Naxess
65ebdd8f7a Move check origin from IssueTemplate to Issue
As a result we can also make check an interface, and need to provide the check itself when constructing an issue.
2021-04-12 10:08:08 +02:00
Dean Herbert
8bf85d737c Change Metadata into a get property 2021-04-12 15:52:29 +09:00
Dean Herbert
3551322f1d Fix formatting of colour getter 2021-04-12 15:52:18 +09:00
Dean Herbert
1c553b5d48 Checker -> BeatmapVerifier 2021-04-12 15:29:05 +09:00
Dean Herbert
14bd5bdc77 Merge branch 'master' into verify-tab 2021-04-12 15:14:37 +09:00
Naxess
7d40b01722 Remove old todo 2021-04-10 15:18:15 +02:00
Naxess
747e0f00dc Improve table formatting 2021-04-10 13:10:05 +02:00
Naxess
3a4f2e3d7e Show table even if no issues 2021-04-10 13:09:16 +02:00
Naxess
c995eca029 Remove todo
Doesn't really matter in the end, as only one checker will run at a time in this case.
2021-04-10 13:05:24 +02:00
Naxess
6d3cf78e4a Add issue selection
This mainly helps with keeping track of which issue was clicked, since doing so switches tab.
2021-04-10 13:04:39 +02:00
Naxess
d1007ff26a Move components to more appropriate spot 2021-04-10 13:02:22 +02:00
Naxess
43174b708c Remove visibility settings
Can look into this later, not really important for a first iteration.
2021-04-10 12:58:40 +02:00
Naxess
bab36e529a Update UI with new components 2021-04-07 14:38:43 +02:00
Naxess
b24ce66a0d Add check/issue classes 2021-04-07 14:35:33 +02:00
Dean Herbert
d4c55070e7
Merge pull request #12283 from bdach/setup-screen-design-refresh
Refresh setup screen appearance to be closer to design
2021-04-06 18:33:34 +09:00
Dean Herbert
9d0839be8f Remove no longer necessary FinishTranforms call 2021-04-06 15:35:07 +09:00
Dean Herbert
316a557a99 Split select area background into own class to reduce hover state complexity 2021-04-06 15:34:34 +09:00
Dean Herbert
7d301a6336 Improve timeline hover display before time zero with a gradient fade 2021-04-06 14:34:16 +09:00
Dean Herbert
35dd1c68aa Fix drag/selection events not propagating correctly to TimelineBlueprintContainer when before time zero 2021-04-06 14:34:16 +09:00
Dean Herbert
8ff13845d1 Add marker showing where 00:00:000 is 2021-04-06 14:24:22 +09:00
Bartłomiej Dach
0a1417bc67 Swap order of background/audio track changing methods
Mostly for quality of reviewing (restores previous order) and more
consistency overall.
2021-04-04 13:10:12 +02:00
Bartłomiej Dach
a0f0ae7979 Adjust spacings in resources section 2021-04-04 12:53:51 +02:00
Bartłomiej Dach
f2d4ca7676 Add background chooser text box 2021-04-04 12:50:50 +02:00
Bartłomiej Dach
9394af32f5 Move drag & drop support logic to chooser component 2021-04-04 12:34:52 +02:00
Bartłomiej Dach
294d911426 Move background chooser to header 2021-04-03 20:53:07 +02:00
Bartłomiej Dach
61f9eb51c4 Split background chooser to own component 2021-04-03 20:36:30 +02:00
Bartłomiej Dach
3572178bdc Add tab control to setup screen header 2021-04-03 20:13:20 +02:00
Bartłomiej Dach
95d7e6c74b Explicitly associate setup sections with titles 2021-04-03 19:58:49 +02:00
Bartłomiej Dach
bdd1072dce Adjust colours and spacing to be closer to design 2021-04-03 18:52:50 +02: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
hbnrmx
824fb9f398 reopen FileSelector in the directory of the previous selection 2021-04-02 18:01:26 +02:00
hbnrmx
438f3e6349 move fallback text to PlaceholderText 2021-04-02 17:57:21 +02:00
Dan Balasescu
f8c1dfe57f
Merge branch 'master' into editor-fix-speed-multiplier-precision 2021-03-31 17:17:25 +09:00
Dean Herbert
90c75a64cf Fix legacy control point precision having an adverse effect on the editor 2021-03-30 15:24:11 +09:00
Dan Balasescu
d2ef0ba644
Merge branch 'master' into add-editor-nudging-support 2021-03-30 14:34:43 +09:00
Dan Balasescu
1bb9f018a0
Merge branch 'master' into fix-timeline-depth-ordering 2021-03-29 20:47:47 +09:00
Dan Balasescu
3cf6a3f56d
Merge pull request #12076 from peppy/add-timeline-stacking-support
Implement editor timeline stacking support
2021-03-29 20:44:52 +09:00
Dean Herbert
690debe507
Merge pull request #12030 from LeNitrous/editor-platform-clipboard-copy 2021-03-29 19:31:16 +09:00
Dean Herbert
3909eda095 Avoid using a StringBuilder 2021-03-29 18:51:28 +09:00
Dean Herbert
90ab765cf5 Reorder methods and surround with region 2021-03-29 18:46:32 +09:00
Nathan Alo
cdb779f764 move copy logic inside ComposeScreen 2021-03-29 17:30:23 +08:00
Naxess
d58ef5310b Add verify tab
Currently empty, but works.
2021-03-28 17:36:22 +02:00
Nathan Alo
21398e25b5 null check composer and ensure the correct start time from selected hit objects 2021-03-27 10:02:21 +08:00
Nathan Alo
c96321206a fix appveyor complaints 2021-03-26 16:17:24 +08:00
Nathan Alo
71a0616861 remove extra semi colons 2021-03-26 15:34:45 +08:00
Nathan Alo
374f8c5e22 move to compose namespace and add license header 2021-03-26 15:33:28 +08:00
Dean Herbert
cb48e5f158 Fix timeline not visually ordering hitobjects in a stable way 2021-03-26 16:33:18 +09:00
Nathan Alo
b8b7eb4c4b refactor logic to its own component and handle hit object to string conversion to its ruleset-specific composers 2021-03-26 15:25:20 +08:00
Nathan Alo
2bea69456e remove implementations 2021-03-26 15:24:33 +08:00
Dean Herbert
77969bb223 Merge branch 'master' into add-timeline-stacking-support 2021-03-26 16:17:10 +09:00
Dean Herbert
f6647de769 Add support for nudging objects in the editor using ctrl+arrow keys
Closes #12042.
2021-03-25 19:56:28 +09:00
Dean Herbert
8d4ff867bf Fix barlines showing up in the osu!mania editor's timeline 2021-03-25 16:30:31 +09:00
Dean Herbert
9fdd23b134 Fix various issues with stacking 2021-03-25 16:28:30 +09:00
Dean Herbert
bdc783b55f Merge branch 'master' into add-timeline-stacking-support 2021-03-25 15:28:30 +09:00
Dean Herbert
7b3336783f
Stabilise ordering instead of simple reversing
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-25 15:24:59 +09:00
Bartłomiej Dach
dd48b68f8a Ensure selected blueprints are given selection priority 2021-03-19 22:44:33 +01:00
Dean Herbert
71a361337d
Add comment regarding usage of Reverse()
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-03-19 21:57:48 +09:00
Dan Balasescu
e72205eea2
Merge pull request #12080 from peppy/add-25-playback-editor
Change editor speed adjust to adjust frequency (and restore 25% option)
2021-03-19 21:04:12 +09:00
Dean Herbert
8955071703 Change editor speed adjust to adjust frequency 2021-03-19 20:01:45 +09:00
Dean Herbert
9be7981e0d Adjust timeline ticks to be more visible 2021-03-19 19:45:00 +09:00
Dean Herbert
563a0584d5 Implement editor timeline stacking support 2021-03-19 18:48:51 +09:00
Dean Herbert
32c571fc94 Adjust keyboard step to be something sensible 2021-03-19 17:13:30 +09:00
Dean Herbert
711d895a04
Merge pull request #8238 from voidedWarranties/editor-song-end 2021-03-19 16:32:23 +09:00
voidedWarranties
b9761c8196 Further simplify logic 2021-03-18 16:20:31 -07:00
voidedWarranties
df6570ebf5 Improve logic and add previously failing test
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-17 15:48:55 -07:00
Bartłomiej Dach
2e63c2ce20 Fix selection box operation hotkeys not registering in change handler
Could lead to crashes after reversing a note cluster and playing it
back.

The root cause of the crash was that the hotkey operations were not ran
inside of an editor change handler operation. This, in turn, caused the
autoplay replay to not be regenerated after flipping an object cluster,
therefore finally manifesting as a hard crash due to negative time
offsets appearing in judgement results, which interfered with the
default implementation of note lock.

Note that this incidentally also fixes the fact that selection box
hotkey operations (reverse and flip) did not handle undo/redo.
2021-03-17 22:17:42 +01:00
Bartłomiej Dach
a691291ae8 Merge branch 'master' into editor-song-end 2021-03-17 18:18:19 +01:00
Dan Balasescu
5a7e416495
Merge pull request #12027 from peppy/new-beatmap-empty-fields
Don't fill beatmap metadata with template values on creating a new beatmap
2021-03-17 19:36:21 +09: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
d0e61e5b4d Put back the label 2021-03-17 17:14:04 +09:00
Dean Herbert
3b6a1180b6 Remove non-accessed field 2021-03-17 17:02:11 +09:00
Dean Herbert
5adc675862 Focus artist textbox on entering song setup if fields are empty 2021-03-17 16:57:14 +09:00
Dean Herbert
eda891223c Start the editor with empty artist/creator/difficulty name fields 2021-03-17 16:47:12 +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
Dean Herbert
cd1c1bf534 Centralise cases of performing actions on the current selection
By moving this to a central location, we can avoid invoking the
EditorChangeHandler when there is no selection made. This helps
alleviate the issue pointed out in
https://github.com/ppy/osu/issues/11901, but not fix it completely.
2021-02-26 14:15:13 +09:00
Dean Herbert
e9730d4782 Move default sample addition to inside PlacementBlueprint
This isn't actually required to fix the behaviour but it does feel like
a better place to put this logic.
2021-02-11 17:16:18 +09:00
smoogipoo
3ce605b5e5 Small refactoring to use .Trim() instead 2021-02-09 12:00:03 +09:00
Joehu
414e05affd Fix editor effect attribute tooltip having unnecessary whitespace when only one is enabled 2021-02-08 10:16:16 -08:00
Dean Herbert
0dd1b1026c
Merge pull request #11495 from smoogipoo/more-accurate-most-common-bpm
Make most common BPM more accurate
2021-02-08 20:08:58 +09:00
smoogipoo
69ca440ae5 Merge branch 'master' into more-accurate-most-common-bpm 2021-02-08 18:40:58 +09:00
Joehu
5e7823b289 Fix attributes content being zero size and disappearing after being half off-screen 2021-02-08 01:37:34 -08:00
Joehu
6b26a18a23 Fix attributes header not being aligned with content in editor timing mode 2021-02-08 01:34:32 -08:00
Vincent Maggioli
96652e07cd
Merge branch 'master' into zero-spinner-slider 2021-02-05 09:40:55 -05:00
vmaggioli
5061231e59
Switch to beat length 2021-02-05 09:39:14 -05: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
Dan Balasescu
30f7e4c794
Merge branch 'master' into fix-timeline-parts-working-beatmap 2021-01-25 21:22:45 +09:00
Dean Herbert
b489e92c9e Fix TimelineParts not using correct beatmap 2021-01-25 18:44:36 +09:00
Dean Herbert
4ac362ee1a Move cloning local to editor 2021-01-25 18:29:00 +09:00
Dean Herbert
f054b38105 Merge branch 'master' into revert-beatmap-controlpointinfo-cloning 2021-01-25 18:25:53 +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
Dan Balasescu
04095cd5b9
Merge branch 'master' into fix-editor-scroll-interruption 2021-01-21 17:46:18 +09:00
Dan Balasescu
9eb74e86ed
Apply comment suggestion
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-01-21 17:40:15 +09:00
vmaggioli
5ee3a5f230
Use AlmostEquals 2021-01-20 13:00:25 -05:00
vmaggioli
ce3c2f07dc
Fix zero length spinners and sliders 2021-01-20 12:19:52 -05:00
Bartłomiej Dach
1d7be6a604 Merge branch 'master' into android-multiple-import-support-suppot 2021-01-16 23:13:11 +01:00
Dean Herbert
d6e6b4bbee Revert forced cloning of ControlPointInfo
This reverts commit 3c3e860dbc.

Closes https://github.com/ppy/osu/issues/11491.
2021-01-15 17:34:59 +09:00
Dean Herbert
831c06a3c7 Expose and consume boolean covering whether an ongoing smooth seek is running 2021-01-15 16:14:38 +09:00
Dean Herbert
04fa32bc34 Rename and add xmldoc for smooth seeking method 2021-01-15 16:14:21 +09:00
Dean Herbert
ed78be825f Fix editor timeline not snapping on non-precise wheel scroll
For wheel input with precision, we still prefer exact tracking for now.
May change this in the future based on feedback from mappers, but it
makes little sense to do non-snapped scrolling when input is coming from
a non-precise source.
2021-01-15 15:47:42 +09:00
smoogipoo
c6e9a6cd5a Make most common BPM more accurate 2021-01-15 14:28:49 +09:00
Dean Herbert
2cfd1e8b47
Merge branch 'master' into fix-control-point-pollution 2021-01-08 00:02:45 +09:00
Dean Herbert
3c3e860dbc Move ControlPointInfo copying to base Beatmap.Clone method (and remove setter) 2021-01-07 23:52:04 +09:00
Dean Herbert
77b55212a3 Change access of beatmap to use working for consistency in file 2021-01-07 19:11:51 +09:00
Dean Herbert
42643fbaf6 Use already resolved EditorBeatmap rather than resolving a second time locally 2021-01-07 19:10:19 +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
6b8e1913ee Fix dependency not always available due to nested LoadComponentAsync call 2021-01-05 13:27:45 +09:00
Dean Herbert
b7dd54847f Move resolved usage of WorkingBeatmap in editor components as local as possible to avoid misuse 2021-01-04 16:56:37 +09:00
Dean Herbert
7fdf876b4c Fix editor timing screen mutating the WorkingBeatmap instead of EditorBeatmap 2021-01-04 16:38:15 +09:00
Dean Herbert
b4a779108e Ensure working beatmap is reloaded on exiting the editor 2021-01-04 16:37:49 +09:00
Dean Herbert
ba4e411422 Clone and copy ControlPointInfo when retrieving a playable beatmap 2021-01-04 16:37:07 +09:00
Lucas A
7ae4979882 Fix merge conflicts. 2020-12-27 13:52:45 +01:00
Dean Herbert
9de42f8646
Merge pull request #11238 from peppy/editor-timeline-selection-ux
Improve drag and selection UX on editor timeline
2020-12-22 12:58:24 +09:00
Dean Herbert
423c6158e1 Highlight timeline drag area when hovered for better visibility 2020-12-21 18:10:11 +09:00
Dean Herbert
d1be7c23d9 Increase height of timeline drag area 2020-12-21 18:09:56 +09:00
Dean Herbert
d11d754715 Increase size of circle display on timeline 2020-12-21 18:09:37 +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
Bartłomiej Dach
f1878eff63 Use yet another solution leveraging padding 2020-12-18 23:45:42 +01:00
Graham Johnson
122250f454 replace drag cirle function with dictionary 2020-12-18 10:45:23 -05:00
Dean Herbert
9079d33412 X before Y for sanity 2020-12-18 11:20:21 +09:00
Dean Herbert
44f4ed4fd3 Fix spacing 2020-12-18 11:19:40 +09:00
Graham Johnson
a0235a06e6 update comment 2020-12-17 19:40:21 -05:00
Graham Johnson
a01ed1827a Align the drag circles on the selction box in the editor to be on the center of the border 2020-12-17 19:34:16 -05:00
Lucas A
5d7294451f Refactor Import() overload to take a list of import tasks instead. 2020-12-16 14:28:16 +01:00
Graham Johnson
7d2b77cdbd improve selection box rotation UX 2020-12-13 07:58:58 -05:00
Dean Herbert
eb38bc4b4c Add the ability to import into ArchiveModelManagers from a stream 2020-12-07 18:09:18 +09:00
Dan Balasescu
297283491a
Merge pull request #11031 from peppy/editor-fix-beat-snapping-new-beatmap
Fix editor beat snapping not working correctly when starting with a new beatmap
2020-12-02 15:17:09 +09:00
Dean Herbert
71a121389b
Merge pull request #11033 from smoogipoo/immutable-hit-samples
Make HitSampleInfo immutable
2020-12-02 14:44:26 +09:00
Dean Herbert
d6e0dc2216 Merge branch 'master' into editor-fix-beat-snapping-new-beatmap 2020-12-02 14:37:00 +09:00
Dean Herbert
e84dab8589 Move new beatmap construction above beat divisor binding 2020-12-02 14:36:52 +09:00
Dan Balasescu
878ded4dd6
Merge pull request #11032 from peppy/editor-fix-ticks-updating-after-timing-change
Fix timeline not updating ticks correctly after arbitrary timing control point changes
2020-12-02 10:58:44 +09:00
Pennek
477de1bab0 change min/max values 2020-12-02 01:11:24 +01:00
Bartłomiej Dach
94a8784e04 Allow editor change handler to be null 2020-12-01 20:08:31 +01:00
Dean Herbert
190c6ef45e Fix timeline not updating ticks correctly after arbitrary timing control point changes 2020-12-01 16:44:08 +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
smoogipoo
5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00
Dean Herbert
c17d67bc7d Merge branch 'master' into editor-beat-snap-always 2020-11-30 18:34:38 +09:00
Dan Balasescu
5a276f8577
Merge branch 'master' into fix-editor-reapply-same-state-change 2020-11-30 13:34:03 +09:00
Dean Herbert
7e34c5e239 Fix state application always checking newest state for early abort, rather than current 2020-11-27 16:57:11 +09:00
Dean Herbert
7edbba58f7 Avoid updating hitobjects unnecessarily for start time changes
This was firing regardless of whether the start time was changed, such
as where beat snap provided the same time the object already has.

The case where a change actually occurs is already handled by
EditorBeatmap (see `startTimeBindables`), so it turns out this local
handling is not required at all.
2020-11-27 16:31:06 +09:00
Dean Herbert
741902f1b3
Merge pull request #10971 from smoogipoo/fix-timeline-combo-colour
Fix timeline blueprints sometimes not receiving combo colours
2020-11-26 19:47:21 +09:00
Dean Herbert
da6bccc812 Apply beat snap if positional snap doesn't give a time result 2020-11-26 19:20:51 +09:00
Dean Herbert
91592cf32d Expose EditorClock for consumption 2020-11-26 19:20:39 +09:00
Dean Herbert
9811c46e35 Rename application method to better describe what it actually does 2020-11-26 19:16:18 +09:00
smoogipoo
e53f849aa0 Completely separate combo colours from DHOs 2020-11-26 18:14:25 +09:00
smoogipoo
f562854feb Fix timeline objects sometimes not receiving combo colours 2020-11-26 17:22:22 +09:00
Dan Balasescu
aad6cf4ad3
Merge branch 'master' into editor-multiple-object-positional-snap 2020-11-26 17:06:47 +09:00
Dean Herbert
0ddeff648d Fix incorrect index lookup on non-ordered selections 2020-11-25 17:25:54 +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
Dean Herbert
c9a41f9dae Make all objects in selection candidates for spatial snapping
Closes #10898.
2020-11-24 17:35:54 +09:00
Dean Herbert
bd1dad5477 Remove null allowance for now 2020-11-24 15:54:27 +09:00
Dean Herbert
3ed7868801 Scroll editor setup screen to file selector on display
Previously the file selector would potentially display off-screen,
making for confusing UX.

Closes #10942.
2020-11-23 13:49:14 +09:00
Bartłomiej Dach
6356b2dde9 Prevent editor from crashing for rulesets with no compose screen implementation 2020-11-19 22:11:52 +01:00
smoogipoo
f00c23b4a0 Add comment + xmldoc 2020-11-18 13:37:15 +09:00
smoogipoo
783c172b5d Make sealed and cleanup comparator 2020-11-18 13:33:22 +09:00
smoogipoo
58c8184ad7 Define blueprint order similarly to hitobjects 2020-11-17 22:56:31 +09:00
Dean Herbert
7b79b9b9c1
Merge branch 'master' into fix-quick-delete-crash 2020-11-16 13:54:54 +09:00
Bartłomiej Dach
399a1a16a0 Refactor beginClickSelection in a slightly different way 2020-11-15 21:06:47 +01:00
kamp
1db303b159 Revert beginClickSelection logic 2020-11-15 16:54:48 +01:00
Bartłomiej Dach
8a78d408db Add more missed null checks 2020-11-14 15:52:12 +01:00
Bartłomiej Dach
610ed99ae3 Add null checks to unguarded resolved-as-null fields 2020-11-14 14:52:58 +01:00
kamp
4d2bc790fd Fix crash on shift+right-click deleting objects 2020-11-14 13:20:16 +01:00
smoogipoo
0219aff7bc Add timeline visible range adjustment 2020-11-13 17:10:29 +09:00
smoogipoo
3957697c48 Add pooling support to the editor 2020-11-13 17:08:20 +09:00
smoogipoo
4ef2e9548c Pass HitObjectComposer to BlueprintContainer via ctor 2020-11-13 16:59:37 +09:00
Bartłomiej Dach
546249b071 Temporarily fix crash on deleting control point groups 2020-11-10 21:32:47 +01:00
Dean Herbert
de6fcd1792 Fix BlueprintContainer triggering assert when left and right mouse button are pressed together 2020-11-10 17:16:28 +09:00
Dean Herbert
a012105dac Fix editor quick delete being triggerable from left mouse button
Closes https://github.com/ppy/osu/issues/10629.
2020-11-10 16:54:37 +09:00
Dan Balasescu
a2877fb00a
Merge pull request #10730 from peppy/fix-patcher-no-object-crash
Fix legacy patcher crash on no objects present
2020-11-09 18:51:00 +09:00
Bartłomiej Dach
ddbd6df24d Unbind bindable lists for general safety 2020-11-07 20:59:57 +01:00
Bartłomiej Dach
e078b78dcc Ensure callbacks don't fire when restoring default beatmap 2020-11-07 20:59:57 +01:00
Dean Herbert
b0052210b6 Add asserts of HitObjects indices 2020-11-08 00:18:38 +09:00
Dan Balasescu
ea2fd831ab
Merge branch 'master' into editor-slider-control-point-quick-delete 2020-11-05 00:38:42 +09:00
Dean Herbert
d19b799f44 Invert boolean logic 2020-11-04 17:53:03 +09:00
Dan Balasescu
3322c2bbc5
Merge branch 'master' into ios-editor-crash-fix 2020-11-04 15:56:40 +09:00
Dean Herbert
487a5ecdba Replace all usage of IBindableList.GetBoundCopy 2020-11-04 15:29:14 +09:00
Dan Balasescu
42c543f5b9
Merge branch 'master' into fix-editor-play-after-drag 2020-11-04 14:45:20 +09:00
Bartłomiej Dach
3bb86ce127
Merge branch 'master' into editor-waveform-opacity 2020-11-03 23:04:19 +01:00
Bartłomiej Dach
13f729916a
Merge branch 'master' into editor-timeline-scroll-mousewheel 2020-11-03 22:27:35 +01:00
Bartłomiej Dach
ddf0d75c38 Don't fall through to seek if handling zoom 2020-11-03 21:49:21 +01:00
Bartłomiej Dach
4b528e80d0 Use AltPressed shorthand 2020-11-03 21:49:04 +01:00
Bartłomiej Dach
18428dff8e Ensure hotkey actions are executable in handler 2020-11-03 18:01:12 +01:00
Dean Herbert
83c004bbde Add key bindings for flip and reverse patterns 2020-11-03 21:10:31 +09:00
Dean Herbert
9f333ac58a Add the ability to delete slider control points using shift+right click
Closes https://github.com/ppy/osu/issues/10672.

In two minds about how this should be implemented but went in this
direction initially. The other way would be to add local handling of
Shift-Right Click inside PathControlPointPiece (which is already doing
mouse handling itself).
2020-11-03 20:46:33 +09:00
Dean Herbert
c2ffc18379 Change editor timeline mouse wheel handling to scroll by default (and zoom with alt held) 2020-11-03 16:30:11 +09:00
Dean Herbert
0dcb4ea441 Add handling of opacity to timeline waveform display 2020-11-03 16:07:01 +09:00
Dean Herbert
7e4314684b Add editor waveform opacity selection to menu 2020-11-03 16:01:14 +09:00
Dean Herbert
6bf35d5767 Fix editor menu not supporting stateful item drawables 2020-11-03 16:00:07 +09:00
Dean Herbert
34aa59f237 Fix editor clock not always remaining stopped when dragging timeline
Closes https://github.com/ppy/osu/issues/10461.
2020-11-03 15:00:01 +09:00
Dean Herbert
ab308d28d2 Debounce calls to UpdateTernaryStates
Just something I noticed in passing recently which may help with
reducing performance overhead of some batch operations.
2020-11-03 01:08:36 +09:00
smoogipoo
3956a0669a Fix editor seek transform seeking too much 2020-11-02 21:08:58 +09:00
Dan Balasescu
8a768669ad
Merge pull request #10606 from FamousPig/fix-timeline-drag-select-weirdness
Fix timeline zoom during drag-select causing unexpected behaviour
2020-11-02 13:04:26 +09:00
Dan Balasescu
5ae3da9399
Merge branch 'master' into fix-timeline-drag-select-weirdness 2020-11-02 11:18:37 +09:00
Bartłomiej Dach
432282e8de Use alternative solution to avoid storing last zoom 2020-11-01 21:25:05 +01:00
Dean Herbert
1f8d627af4
Merge branch 'master' into shift-delete-all-selected 2020-11-01 23:03:01 +09:00
Bartłomiej Dach
007c27d3ff Schedule visibility update once per frame 2020-10-31 14:45:11 +01:00
Bartłomiej Dach
d74c19e2d7 Shorten show/hide code 2020-10-31 13:54:02 +01:00
Bartłomiej Dach
3322b8a7ea Run OnSelectionChanged() on each change 2020-10-31 13:54:02 +01:00
Bartłomiej Dach
003994ab75 Bind UpdateVisibility() directly to source of truth 2020-10-31 13:54:02 +01:00
Bartłomiej Dach
129b1bc6d3 Delete all selected objects if shift-clicked on one 2020-10-31 11:46:25 +01:00
Dan Balasescu
8ccc3c2ec8
Merge pull request #10596 from charlie-gray/right-click-circle-delete
Add support for deleting objects when Shift is held down
2020-10-29 11:37:22 +09:00
Bartłomiej Dach
a1696942f0 Merge branch 'master' into right-click-circle-delete 2020-10-28 22:12:14 +01:00
Bartłomiej Dach
202fe09306 Group selection actions back up in SelectionHandler 2020-10-28 22:06:48 +01: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
Leon Gebler
0ddf840a63 Merge branch 'master' into fix-timeline-drag-select-weirdness 2020-10-27 15:31:55 +01:00
Leon Gebler
983a2774e8 Code Formatting 2020-10-27 15:09:10 +01:00
Leon Gebler
064c50c3ac Expose currentZoom to fix selection box wiggle 2020-10-27 14:38:35 +01:00
Dan Balasescu
26a7545534
Merge branch 'master' into fix-editor-samples-not-pausing-screen-swap 2020-10-27 21:29:16 +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
3c2e2f29bc Remove unused using statement 2020-10-27 13:17:44 +09:00
Dean Herbert
27c1a4c4d3 Move right-click deletion logic to be handled at a SelectionBlueprint level 2020-10-27 12:53:54 +09:00
Dean Herbert
e1f578c590 Change editor timing screen seek behaviour to only occur on clicking table rows
Previously it would react to any selection changed event, which could in
lude time changes (which is done by removing then adding the
ControlPointGroup).

Closes #10590.
2020-10-27 12:28:12 +09:00
Bartłomiej Dach
3f8c4c57d0 Fix code style issues & restructure 2020-10-26 22:16:28 +01:00
Charlie
255bb9d100 fixed issue with returns 2020-10-26 14:52:59 -05:00
Charlie
ccaf6560ec formatting 2020-10-26 14:30:37 -05:00
Charlie
1239670566 moved right click shift delete functionality to HandleSelectionRequested + reduced func size 2020-10-26 14:28:53 -05:00
Charlie
ead3c19567 added function so circle is deleted when shift+right click 2020-10-26 13:40:42 -05:00
Leon Gebler
704f8cc4f2 Fix selection box wandering off into the distance 2020-10-26 18:45:03 +01:00
Dean Herbert
8273715bde
Merge pull request #9484 from FlashyReese/visible-playfield-boundary 2020-10-20 19:43:41 +09:00
Dean Herbert
22bde43106
Merge branch 'master' into visible-playfield-boundary 2020-10-19 18:05:28 +09:00
Dean Herbert
79a17b2371 Reapply waveform colour fix 2020-10-19 16:57:08 +09:00
Dan Balasescu
829241a9f0
Merge pull request #10521 from peppy/fix-editor-seek-interval-when-playing
Fix editor not seeking by full beat when track is playing
2020-10-16 13:55:03 +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
Dean Herbert
88f74921fb Update with new r# inspections 2020-10-16 12:49:39 +09:00
Dean Herbert
b0f8a7794a Make SelectionHandler require EditorBeatmap presence 2020-10-09 21:44:10 +09:00
Dean Herbert
681e88af40
Merge branch 'master' into editor-fix-button-states-after-paste 2020-10-09 20:51:09 +09:00
Dan Balasescu
ecfb7e94c5
Merge branch 'master' into fix-editor-batch-handling 2020-10-09 20:06:06 +09:00
Dan Balasescu
07f19342d1
Merge pull request #10428 from peppy/editor-reset-newcombo-on-placement
Reset new combo button state after successful placement
2020-10-09 19:48:47 +09:00
Dan Balasescu
bcc096ee49
Merge pull request #10446 from peppy/fix-timeline-tick-bar-lines
Fix bar lines ("down beat" as people call it) showing up too often in timeline
2020-10-09 19:24:29 +09:00
Dan Balasescu
62690e4873
Merge pull request #10432 from peppy/editor-reverse-pattern
Add "reverse pattern" support to editor selection handler
2020-10-09 19:19:24 +09:00
Dean Herbert
3838f405dd Fix missed usages 2020-10-09 18:50:05 +09:00
Dean Herbert
edaf6db5c6 Reference EditorBeatmap directly for selected objects 2020-10-09 18:44:23 +09:00
Dean Herbert
21c6242f90 Fix bar lines ("down beat" as people call it) showing up too often in timeline 2020-10-09 18:35:44 +09:00
Dan Balasescu
a1226ccaa2
Merge pull request #10440 from peppy/fix-editor-song-after-exit
Fix editor playing deleted beatmap's track on exit-without-save
2020-10-09 17:58:31 +09:00
Dean Herbert
5d888f687a Account for the width of points so they don't suddenly appear at timeline edges 2020-10-09 16:49:51 +09:00
Dean Herbert
ceb1494c33 Only run regeneration when passing a new min/max tick boundary 2020-10-09 16:47:29 +09:00
Dean Herbert
017a8ce496 Only recalculate when display actually changes 2020-10-09 15:57:31 +09:00
Dean Herbert
9baf704942 Add local pooling to TimelineTickDisplay 2020-10-09 15:48:24 +09:00
Dean Herbert
68039cff40 Set beatmap to sane default on exiting editor 2020-10-09 13:12:48 +09:00
Dean Herbert
825e10ec8c Add reverse handler button to selection box 2020-10-09 06:32:23 +09:00
Dean Herbert
eacc7dca9a Fix SliderPath not handling Clear correctly 2020-10-09 06:31:59 +09:00
Dean Herbert
85b33fffd0 Fix incorrect comments 2020-10-09 05:14:44 +09:00
Dean Herbert
5966205037 Fix ternary button states not updating correctly after a paste operation 2020-10-09 04:31:45 +09:00
Dean Herbert
e7eda19b07 Reset new combo button state after successful placement 2020-10-09 03:31:01 +09:00
Dean Herbert
4ccd751604 Further simplify non-transactional change logic 2020-10-08 18:42:53 +09:00
Dean Herbert
3114174e09 Add missing non-transactional SaveState calls 2020-10-08 18:41:03 +09:00
Dean Herbert
afed832b19 Tidy up EditorBeatmap slightly 2020-10-08 18:06:49 +09:00
Dean Herbert
1027b608ff Copy list content before firing events to avoid pollution 2020-10-08 18:04:07 +09:00
Dean Herbert
38babf3de5 Update usages of ChangeHandler to EditorBeatmap where relevant 2020-10-08 18:04:07 +09:00
Dean Herbert
b2d93f799f Hook ChangeHandler to transactional events rather than individual ones 2020-10-08 18:04:07 +09:00
Dean Herbert
0781fbd443 Make EditorBeatmap implement TransactionalCommitComponent 2020-10-08 18:04:07 +09:00
Dean Herbert
a9bca671d0 Make component and add hooking events 2020-10-08 18:04:07 +09:00
Dean Herbert
ce04daf053 Split transaction handling code out into base class 2020-10-08 18:04:07 +09:00
Dean Herbert
ef092de9ba Add missing UpdateHitObject calls and move local to usages (not via bindables) 2020-10-08 18:04:07 +09:00
Bartłomiej Dach
ac44f6f679 Ensure control point group exists after move
If the control point group moved was empty, it would not be created due
to a lack of ControlPointInfo.Add() calls.
2020-10-07 23:10:28 +02:00
Bartłomiej Dach
b1029a124c Move event subscription to LoadComplete
Prevents attempting to read from the `colours` field before it is
actually injected.
2020-10-07 22:57:20 +02:00
Dan Balasescu
f206ea96ce
Merge pull request #10391 from peppy/editor-setup-screen-difficulty-adjust
Add difficulty adjustment settings to editor setup screen
2020-10-07 16:33:10 +09:00
Dean Herbert
a6d1484ad5 Add arbirary precision specification for now 2020-10-07 14:26:01 +09:00
Dan Balasescu
2ef5a34ace
Merge branch 'master' into editor-beatmap-batch-change-support 2020-10-07 14:08:49 +09:00
Dean Herbert
c1a8fe01ef Fix postprocess order in batch events 2020-10-07 11:09:45 +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
14c734c244 Add a very simple method of applying batch changes to EditorBeatmap 2020-10-06 22:10:07 +09:00