Dean Herbert
cdcb10e0e7
Fix timeline centre point being ever-so-slight off
2023-07-21 15:26:41 +09:00
Dean Herbert
f489dbd7a9
Reduce width of right toolbar ever so slightly (and use more shared constants)
2023-07-21 14:39:15 +09:00
Dean Herbert
ca3d1538ae
Merge branch 'master' into editor-metrics
2023-07-21 14:26:32 +09:00
Bartłomiej Dach
07e0a703d7
Adjust inline comment
2023-07-20 20:51:39 +02:00
Bartłomiej Dach
708dd355cd
Merge branch 'master' into editor-cyclic-selection
2023-07-20 20:19:46 +02:00
Bartłomiej Dach
511948ba56
Add xmldoc to ApplySelectionOrder()
2023-07-20 19:16:04 +02:00
Dean Herbert
cf3949c9e2
Fix double-click handling when cyclic selection is enabled
...
Removes the limitations of cyclic selection as a result.
2023-07-19 17:21:20 +09:00
Dean Herbert
5ade093c5a
Change editor to always perform selection of closest object
2023-07-19 16:56:16 +09:00
Dean Herbert
57abb15724
Update design of timeline centre marker and adjust surrounding paddings
2023-07-14 16:37:57 +09:00
Dean Herbert
00e9746174
Implement longer design for timing point piece
2023-07-14 16:37:56 +09:00
Dean Herbert
01750dd091
Update metrics of checkboxes and backgrounds to match design better
2023-07-14 14:29:02 +09:00
Dean Herbert
5b2e704264
Move beat divisor control inside of TimelineArea
and adjust metrics to match design
2023-07-14 14:19:04 +09:00
Dean Herbert
ebaf63b764
Apply NRT to timeline related classes
2023-07-14 14:04:12 +09:00
Dean Herbert
56acc9e3dd
Change BeatDivisorControl
to retrive bindable divisor via DI
2023-07-14 14:03:25 +09:00
Bartłomiej Dach
9eec1337b3
Use slightly different condition for better UX
2023-07-01 21:39:08 +02:00
Bartłomiej Dach
183777f8df
Fix edge cases where selection buttons go outside playfield bounds
...
Addresses
https://github.com/ppy/osu/discussions/23599#discussioncomment-6300885 .
2023-07-01 21:27:17 +02:00
Bartłomiej Dach
e4e08c0f5f
Fix selection handlers eating hotkey presses they didn't handle
2023-06-28 20:48:22 +02:00
Dean Herbert
29376ffcc0
Trigger state change when flipping via hotkey in the editor
...
This will trigger a change even if nothing happens. But I think that's
okay (not easy to avoid) because the change handler should be aware that
nothing changed, if anything.
Closes https://github.com/ppy/osu/issues/24065 .
2023-06-28 13:52:51 +09:00
Bartłomiej Dach
9be2d9d62e
Fix hotkey presses generating unnecessary undo history
...
The buttons don't check whether the operation they correspond to is
possible to perform in the current state of the selection box, so not
checking `Can{Reverse,Rotate}` causes superfluous undo states to be
added without any real changes if an attempt is made to reverse or
rotate a selection that cannot be reversed or rotated.
2023-06-27 22:25:04 +02:00
Bartłomiej Dach
17ed45d07c
Mention hotkeys in button tooltips
2023-06-27 22:04:15 +02:00
Bartłomiej Dach
54280f06be
Switch to == true
2023-06-27 22:02:15 +02:00
Bartłomiej Dach
ad3a470eaf
Enable NRT in SelectionBox
2023-06-27 22:01:44 +02:00
Dean Herbert
c6d952abe3
Add support for Ctrl
+ <
/ >
to rotate selection in editor
...
As discussed in https://github.com/ppy/osu/discussions/24048 .
2023-06-27 17:01:41 +09:00
Dean Herbert
7ddbf4eaa7
Add a visual effect when keyboard shortcuts are used to trigger selection box buttons
2023-06-27 17:01:13 +09:00
Dean Herbert
df5b389629
Manual fixes to reduce warnings to zero
2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Dean Herbert
84fc6e92db
Fix slightly incorrect calculations
2023-06-19 20:23:46 +09:00
Dean Herbert
4314f9f46a
Merge branch 'master' into fix-distance-snap-grid-centering
2023-06-19 20:22:09 +09:00
Bartłomiej Dach
28696f595f
Privatise setter
2023-06-16 16:24:07 +02:00
Dean Herbert
d965d39c44
Fix distance snap grid circles not correctly being centered on snap point
2023-06-16 17:21:32 +09:00
Dean Herbert
36954e55ad
Fix incorrect mapping when distance spacing is not 1.0x
2023-06-16 17:15:45 +09:00
Dean Herbert
78b2e6f3df
Add setting to limit distance snapping to current time
...
As discussed in https://github.com/ppy/osu/discussions/23815#discussioncomment-6124116 .
2023-06-09 15:54:33 +09:00
Bartłomiej Dach
4b3b22f046
Merge branch 'master' into beat-divisor-better-defaults
2023-06-08 20:35:03 +02:00
Dean Herbert
c1743dbe1d
Select all text when popover is initially shown
...
Depends on https://github.com/ppy/osu-framework/pull/5823 .
2023-06-09 02:27:22 +09:00
Bartłomiej Dach
3c8f387a6c
Remove unused method
2023-06-07 23:38:06 +02:00
Bartłomiej Dach
d9281ac8c7
Remove unused virtual
spec
2023-06-07 23:38:06 +02:00
Dean Herbert
3a01498789
Use existing next/previous methods (and remove looping behaviour)
2023-06-08 01:01:29 +09:00
Dean Herbert
2c89af608a
Add ability to cycle beat snap divisor using hotkeys
...
Defaults to Ctrl+Shift+Wheel (as per stable).
Closes #23785 .
2023-06-07 17:15:15 +09:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
OliBomby
3f96795bbf
fix merge conflict
2023-06-02 01:02:35 +02:00
Olivier Schipper
3f7bebfda4
Merge branch 'master' into edit-nodesample
2023-06-02 00:57:15 +02:00
OliBomby
848f0e305e
Change position of sliderbody hitsound piece for less overlap
2023-06-02 00:55:37 +02:00
OliBomby
da516b9039
Change purple to darker pink
2023-06-02 00:50:21 +02:00
Bartłomiej Dach
c2d89a32a9
Adjust inline comment
2023-06-01 21:18:00 +02:00
Andrei Zavatski
03eb7c7830
Fix nullability
2023-06-01 21:21:01 +03:00
Andrei Zavatski
949fe32740
Use combined area of children as a mask instead
2023-06-01 15:32:17 +03:00
Dean Herbert
32207d4112
Remember the last used custom divisor when cycling divisor types
2023-06-01 17:11:49 +09:00
Dean Herbert
bcde2cbc73
Apply NRT to BeatDivisorControl
2023-06-01 16:58:14 +09:00
OliBomby
eb8ac89513
rename sample update logic and add xmldoc for clarity
2023-06-01 09:50:14 +02:00
OliBomby
1eb9b8e135
added xmldoc and renamed GetSamples
2023-06-01 09:34:21 +02:00
Dean Herbert
f52ed41f10
Use better defaults of 1/4 and 1/6 when cycling types
2023-06-01 16:28:03 +09:00
OliBomby
63d9be9523
merge updateAdditionBankPlaceholderText and updateAdditionBankActivated
2023-06-01 09:27:04 +02:00
OliBomby
9e78a6b34e
hide addition bank field when no additions active
2023-05-31 20:00:45 +02:00
OliBomby
fede432969
Make relevantObject and relevantSamples instance variables
2023-05-31 20:00:19 +02:00
OliBomby
b7bc49b1f4
Fix regressed bank inheriting behaviour on node samples
2023-05-31 16:28:43 +02:00
OliBomby
7a46b7b961
Invert colors
2023-05-31 14:33:06 +02:00
Andrei Zavatski
d119447a10
Fix editor timeline hitobjects popping in
2023-05-30 16:41:42 +03:00
Dean Herbert
114f12a790
Adjust CreateHitSampleInfo
to handle additions correctly, rather than implementing locally
2023-05-30 14:04:02 +09:00
Dean Herbert
4a81d068af
Merge branch 'master' into edit-nodesample
2023-05-30 14:03:43 +09:00
Dean Herbert
725734bc03
Merge pull request #23649 from peppy/keep-selection-buttons-on-screen
...
Ensure editor selection buttons remain on screen when selection is near edge
2023-05-26 20:51:45 +09:00
Bartłomiej Dach
96fe7cbe54
Merge branch 'master' into sample-set-controls
2023-05-25 21:58:16 +02:00
Bartłomiej Dach
7d8f08c0ea
Fix ComposeBlueprintContainer
briefly assigning auto
bank
...
Seems to have had no consequence due to the way
`AutomaticBankAssignment` works (that flag is checked in
`PlacementBlueprint.UpdateTimeAndPosition()`, which runs essentially
every frame), but let's avoid putting it there at all ever.
2023-05-25 21:49:29 +02:00
Bartłomiej Dach
3ad5f8b9c9
Polish a few extreme edge cases
2023-05-25 16:39:54 +02:00
Dean Herbert
949de35664
Ensure selection is reset after immediately deleting objects
...
Closes https://github.com/ppy/osu/issues/23518 .
2023-05-25 23:20:32 +09:00
Bartłomiej Dach
beeca5a8dd
Use alternative layouting implementation
2023-05-25 16:17:44 +02:00
Dean Herbert
1049257b56
Simplify SelectionHandler
's DeselectAll
implementation
...
We are already doing other operations in this class directly on `SelectedItems`, so might as well change this one to match
2023-05-25 18:46:31 +09:00
Dean Herbert
1e14b02493
Fix bindable feedback loop
2023-05-25 17:58:38 +09:00
Bartłomiej Dach
578a0e7494
Merge branch 'master' into beat-divisor-visual-improvements
2023-05-24 22:28:26 +02:00
Dean Herbert
b14b1072c2
Allow deselecting any selection in the editor using the Back
binding (escape key)
2023-05-24 19:24:14 +09:00
Dean Herbert
3b9e1e8a94
Ensure editor selection buttons remain on screen when selection is near edge
...
Addresses https://github.com/ppy/osu/discussions/23599 .
2023-05-24 19:16:53 +09:00
Dean Herbert
3a05dffa50
Add "auto" bank selection during placement
2023-05-24 17:11:12 +09:00
Dean Herbert
fc22c75464
Don't use switch
for single case
statement
2023-05-24 16:14:05 +09:00
Dean Herbert
a9ba16a2be
Update to support non-control-point sample changes
2023-05-24 14:20:38 +09:00
Dean Herbert
298989ffd2
Merge branch 'master' into sample-set-controls
2023-05-24 14:03:04 +09:00
Dean Herbert
561b759bf9
Tidy up implementation and ensure non-solid ticks start at zero alpha
2023-05-24 13:49:29 +09:00
Dean Herbert
8f1f1955df
Merge pull request #66 from Gyoshi/beat-divisor-visual-improvements
...
Add ghost ticks to exhibit current divisor on `BeatDivisorControl`
2023-05-24 13:41:48 +09:00
Gyoshi
7fe19d1992
Last
instead of Max
divisor to match code elsewhere
2023-05-23 18:45:49 +02:00
Gyoshi
c5ef3ae181
Code styling
2023-05-23 18:44:20 +02:00
Gyoshi
b5f8093941
Use RangePadding
to align mouse with slider
2023-05-23 18:16:14 +02:00
Gyoshi
7b1e8ede54
Small format
2023-05-23 15:11:27 +02:00
Gyoshi
1b32370c6a
Remove duplicate code by making GetDivisorForBeatIndex
method more general
2023-05-23 15:05:38 +02:00
Gyoshi
37a796306d
Small format & comment
2023-05-23 14:30:35 +02:00
Johannes vd Berg
ebda35c3c9
Add ghost ticks to exhibit current divisor on BeatDivisorControl
2023-05-23 12:57:25 +02:00
Bartłomiej Dach
afdddb0195
Merge pull request #23582 from peppy/placement-blueprint-timeline-combo-fixes
...
Fix timeline blueprint display not showing correct combo number / colour during placement
2023-05-20 15:02:55 +02:00
Dean Herbert
214d7e07fa
Add TODO regarding failing stack display code
2023-05-17 17:52:17 +09:00
Dean Herbert
9563d4f730
Fix weird purple tint on placement object in timeline
2023-05-17 17:26:19 +09:00
Dean Herbert
87ff28b022
Update beat divisor control to show ticks in more visually correct locations
...
As proposed in https://github.com/ppy/osu/discussions/23527 .
2023-05-17 16:34:12 +09:00
Dean Herbert
dc51d5ecf3
Rename GetSampleInfo
to better describe what method does
...
Also add full xmldoc
2023-05-17 14:07:48 +09:00
Dean Herbert
d9ae822966
Fix bank not correctly being assigned when adding sample additions in editor
2023-05-16 18:52:52 +09:00
Dean Herbert
70e248b927
Force placement of in-progress object when changing tools in the editor
2023-05-12 16:06:01 +09:00
Dean Herbert
2085833a84
Fix missing delegate unsubscribe
2023-05-09 17:08:03 +09:00
Dean Herbert
944da06c10
Rename slider multiplier variable back for now
2023-05-09 16:58:19 +09:00
OliBomby
dd0fceaec6
add addition bank
2023-05-08 16:12:03 +02:00
OliBomby
7260dcac60
fix crash on multiselect and node sample piece popup
2023-05-08 15:57:30 +02:00
OliBomby
bb8285e2ef
cleanup code duplication
2023-05-08 15:14:25 +02:00
OliBomby
4c36530435
allow editing additions in sample point piece
2023-05-08 15:08:40 +02:00
OliBomby
88d840a60d
fix assigned hitsounds dont have bank or volume
2023-05-08 14:42:15 +02:00
OliBomby
3b5bae7742
Abbreviate common bank names on timeline
2023-05-08 13:16:30 +02:00
OliBomby
e945846759
Add node sample pieces to timeline blueprint
2023-05-08 13:10:24 +02:00
OliBomby
32f945d304
fix updating wrong samples
2023-05-08 13:08:28 +02:00
OliBomby
cb7b747d52
create NodeSamplePointPiece
2023-05-08 12:38:53 +02:00
OliBomby
b447018e5b
remove editor beatmap
2023-05-08 11:55:58 +02:00
OliBomby
244ca4e8c7
Remove dependency on SamplesBindable
2023-05-08 11:55:17 +02:00
Dean Herbert
a6cb1f90e4
Change difficulty popover inspector display (yet again)
...
I think this makes the most sense of the iterations I've tested so far, albeit maybe being a touch too verbose.
2023-05-08 13:43:23 +09:00
Dean Herbert
a91edd68d9
Show post-multiplied velocity in main hit object inspector
2023-05-08 13:42:25 +09:00
Dean Herbert
d9dd35c020
Show base velocity in slider adjustment popover
2023-05-08 13:13:09 +09:00
Dean Herbert
31de4de720
Remove median/mode slider velocity display
...
The intention was to give an idea of what the most common velocity of
the beatmap is, but in hindsight, because the "base" velocity is being
set elsewhere this doesn't make sense. It will/should be 1.0x.
Showing this range is still valuable, though.
2023-05-08 13:13:09 +09:00
Bartłomiej Dach
e808a47811
Fix delegate leak
2023-05-05 20:33:27 +02:00
Bartłomiej Dach
f536238554
Use shorter copy
2023-05-05 20:30:50 +02:00
Dean Herbert
b7a287869a
Add display of beatmap slider velocity when adjusting
2023-05-05 15:57:38 +09:00
Dean Herbert
cc70d89bf9
Move editor inspector classes out of ruleset namespace
2023-05-05 15:57:38 +09:00
Dean Herbert
6b017ac05f
Merge pull request #23308 from OliBomby/sample-control-points
...
Remove SampleControlPoint and DifficultyControlPoint from HitObject
2023-05-03 14:21:51 +09:00
Dean Herbert
8a536c1cdb
Fix non-block namespace usage
2023-05-02 15:09:24 +09:00
OliBomby
1dc34ee25d
fix infinite repeat count when adjusting length of 0 length slider
2023-05-01 15:48:54 +02:00
OliBomby
608fa3cc73
Merge remote-tracking branch 'upstream/master' into sample-control-points
2023-04-30 19:47:03 +02:00
OliBomby
c44f71a737
remove all regular usage of DifficultyControlPoint
2023-04-26 17:55:38 +02:00
OliBomby
87ca0f5335
Update SamplePointPiece.cs
2023-04-26 13:45:58 +02:00
OliBomby
e4b64bdc3e
clean up code stuff
2023-04-25 19:06:29 +02:00
OliBomby
755ad25dbe
clean code
2023-04-25 18:27:20 +02:00
OliBomby
c23a7b014e
add missing }
2023-04-25 18:17:07 +02:00
OliBomby
065464d90c
Fixed DifficultyPointPiece
2023-04-25 18:12:53 +02:00
Dean Herbert
9f4b1f0f24
Always round editor rotation to integer values
2023-04-20 14:30:01 +09:00
Bartłomiej Dach
73bd0feef5
Fix incorrectly implemented localisation
2023-04-10 15:03:33 +02:00
Bartłomiej Dach
6fec476147
Simplify snap implementation
2023-04-10 14:55:30 +02:00
Dean Herbert
8d2e852ffd
Fix overbearing key down handling
2023-04-08 22:30:36 +09:00
Dean Herbert
a1fc4def1d
Remove redundant method override
2023-04-08 22:18:07 +09:00
Micha Lehmann
3c4a25e53f
Fix tooltip text not resetting when ending an editor rotation
2023-04-08 14:28:52 +02:00
Micha Lehmann
580d5745c0
Add "(snapped)" to the tooltip when snap-rotating in the editor
2023-04-08 14:15:49 +02:00
Dean Herbert
f72dd86b42
Fix code quality issues and avoid updating bindable twice per operation
2023-04-08 10:40:36 +09:00
Micha Lehmann
c827c2810b
Improve editor selection rotation value wrapping
...
This fixes two issues the previous algorithm had:
1. A half-turn rotation used to show up as -180°.
2. Rotating more than 180° in one drag event would overwhelm it
and cause the value to go outside its range.
This comes at the cost of a negligible performance hit,
since a division (modulo) is performed instead of just addition/subtraction.
2023-04-08 01:30:29 +02:00
Micha Lehmann
f1de560d57
Snap editor selection rotation when holding shift
2023-04-08 01:30:29 +02:00
Dean Herbert
e31a90e043
Don't cycle selection when more than one items are selected
2023-03-21 21:31:10 +09:00
Dean Herbert
1cf870d956
Add test coverage and fix fail case where a drag selection ends incorrectly with cyclic selection
2023-03-15 15:16:48 +09:00
Dean Herbert
4f7be332f3
Revert isDraggingBlueprint
to field
2023-03-08 19:24:03 +09:00
Dean Herbert
245c3c025c
Refactor endClickSelection
to reduce nesting
2023-03-08 19:23:32 +09:00
Dean Herbert
21bdbb20e6
Add optional support for cyclic selection to BlueprintContainer
2023-03-07 14:22:12 +09:00
Dean Herbert
16d94b4ea2
Improve visuals of skin blueprint
2023-02-17 18:19:46 +09:00
Dean Herbert
b437501b0f
Fix beatmap editor positional nudging not being undoable
2023-02-03 17:28:58 +09:00
Bartłomiej Dach
7483967157
Merge branch 'master' into SliderEnd-Snap
2023-01-23 21:33:16 +01:00
Bartłomiej Dach
1f40b2daf6
Clean up xmldocs
2023-01-23 21:22:18 +01:00
Wleter
f8d8a627b8
change property name
2023-01-18 22:00:39 +01:00
Wleter
40e99069fc
fix typos and newlines
2023-01-18 21:43:09 +01:00
Wleter
ab78dd0436
add collection of selection points.
2023-01-18 21:34:23 +01:00
Wleter
c9375c056e
revert back name change
2023-01-18 15:54:24 +01:00
Dean Herbert
ecb4727aec
Fix formatting issues
2023-01-18 17:33:14 +09:00
Wleter
788033e1b8
fix unnecessary newline
2023-01-17 21:13:54 +01:00
Wleter
b8e6a2d87b
filter currentEndPointPositions
2023-01-17 20:41:49 +01:00
ansel
8777d5349b
Use existing strings
2023-01-15 14:39:34 +03:00
ansel
78e562903d
Localise part of editor
2023-01-15 01:50:47 +03:00
Dylan Nantz
6028abff39
Code Quality
2023-01-13 10:16:52 -05:00
Dylan Nantz
5dd0aaccef
Merge branch 'master' of https://github.com/ppy/osu into 18469
2023-01-13 09:54:29 -05:00
Dylan Nantz
e38075c4ef
Use PlacementState to check juice stream placement
2023-01-13 09:37:23 -05:00
ansel
2365b065a4
Enable nullability for editor components
2023-01-12 18:07:54 +03:00
Wleter
98ffcd33c7
Merge branch 'ppy:master' into SliderEnd-Snap
2023-01-10 21:22:13 +01:00
Wleter
88060a3ea0
add snapping for slider's end
2023-01-10 21:21:09 +01:00
Dean Herbert
c0cfa66510
Merge pull request #21754 from Feodor0090/waveform-invalidate
...
Reload waveform on track replacement in editor
2023-01-06 19:57:27 +08:00
Salman Ahmed
0cb9b79834
Fix ZoomableScrollContainer
potentially not updating content width on setup
2022-12-23 00:56:38 +03:00
Salman Ahmed
30de9ba795
Dispose previous waveform on track reload
2022-12-23 00:35:59 +03:00
ansel
f2e8776529
Bind to clock instead of music controller
2022-12-22 15:35:53 +03:00
ansel
7089bb6c23
Listen for track reload in timeline
2022-12-22 01:23:59 +03:00
Dean Herbert
4a7d7c6ed9
Use MaxBy
in all locations that can and update inspection level to match dotnet-build
2022-12-19 16:47:10 +09:00
Dean Herbert
27c497145f
Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0
2022-12-16 18:16:26 +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
Dean Herbert
8cf89fcb81
Use Highlight1
instead of dull grey
2022-12-02 15:30:47 +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
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
Derrick Timmermans
70c320b2e8
Provide ruleset dependencies only to Compose Placement Blueprints
2022-11-27 21:43:33 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Salman Ahmed
90cd386323
Fix timeline potentially scrolling at extents while not dragging
2022-11-18 09:43:16 +03: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
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
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
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
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
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
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 Playfield
s 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
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
Dean Herbert
57954bb8f5
Enable nullability on TimelineHitObjectBlueprint
2022-09-05 14:50:43 +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
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
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
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
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
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dean Herbert
f71f6302fd
Remove unnecessary null
casts
2022-06-24 14:50:11 +09:00
Dan Balasescu
e0c82d11ab
Convert == usages to ReferenceEquals
2022-06-20 16:56:19 +09:00
Salman Ahmed
a5e5172b91
Fix BlueprintContainer
eating input from skin editor buttons
2022-06-18 18:28:36 +03:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +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
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
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
Salman Ahmed
85fc218edf
Provide context menu items at BlueprintContainer
for out-of-bounds support
2022-06-11 20:53:53 +03: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
Dean Herbert
cd3edc869c
Remove unnecessary nesting of IconButton
and update design a touch
2022-06-03 17:00:00 +09:00
Salman Ahmed
b51e0a5047
Share button repeating logic with TimelineButton
for better UX
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
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
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
Dean Herbert
a905731053
Update timeline colours and paddings to match new designs
2022-05-24 18:43:22 +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
1137545d4a
Fix Timeline
potentially not updating visuals to correct state on first display
2022-05-24 18:11:05 +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
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
0b597e712e
Fix timeline not handling mouse down events
2022-05-11 09:39:27 +03: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
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