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

2509 Commits

Author SHA1 Message Date
Dean Herbert
b6b8c51657 Remove DragLayer dependency on MaskContainer 2018-04-04 18:20:32 +09:00
Dean Herbert
c2d371797e Fix unbind failure 2018-04-04 17:38:34 +09:00
Dean Herbert
c712b29b5b Rename dragBox to dragLayer 2018-04-04 16:24:27 +09:00
Dean Herbert
4196bb8c24 Move selection logic to MaskContainer 2018-04-04 16:24:13 +09:00
Dean Herbert
d453c2589a Add an explanatory comment for weird override 2018-04-04 16:02:20 +09:00
Dean Herbert
788bfde002
Merge branch 'master' into selectionlayer-rewrite 2018-04-04 15:38:27 +09:00
smoogipoo
4f19059e55 DragBox -> DragLayer 2018-04-03 21:29:49 +09:00
Dean Herbert
ddba7254ca Merge remote-tracking branch 'upstream/master' into linq 2018-04-03 13:05:08 +09:00
Dean Herbert
57b4cdaf85
Merge branch 'master' into selectionlayer-rewrite 2018-04-03 03:05:42 +09:00
smoogipoo
69e2d4fd22 Make CarouselRoot a nested class 2018-04-02 15:24:08 +09:00
Dan Balasescu
6f88a80bde
Merge branch 'master' into alt-eagerselect 2018-04-02 15:18:22 +09:00
smoogipoo
82a847b820 Extract random selection logic into CarouselRoot 2018-04-02 15:16:10 +09:00
Dan Balasescu
32832304a7
Merge branch 'master' into fix-songselect-exit-notimplemented 2018-04-02 13:53:41 +09:00
Huo Yaoyuan
b842f682eb Use Linq.Append and Prepend. 2018-04-02 12:06:34 +08:00
Endrik Tombak
7e30375443 Use selectNextRandom instead 2018-03-30 10:46:46 +03:00
smoogipoo
f1f7d978ec Add some comments 2018-03-30 16:28:59 +09:00
smoogipoo
69a7ddbf1e Fix ordering of display/input of HitObjectMasks 2018-03-30 16:28:49 +09:00
smoogipoo
53541a5c8d Add license header 2018-03-30 15:53:31 +09:00
smoogipoo
5d0a636cc4 Rename SelectionBox -> Selection 2018-03-30 15:51:38 +09:00
smoogipoo
1dca1663c3 Handle all selection events within SelectionBox (incl. single-mask) 2018-03-30 15:50:55 +09:00
smoogipoo
082e5e4949 Reduce iterations of DragBox 2018-03-30 15:06:52 +09:00
Dean Herbert
31ade986a7 Scren async changes in line with framework changes
Makes editor not stutter on load, amongst other screens.
2018-03-30 14:58:11 +09:00
Endrik Tombak
3f65e3a7e3 Make selection at random when last was null 2018-03-30 00:15:32 +03:00
smoogipoo
6b2ca36657 Add license header 2018-03-29 22:52:42 +09:00
smoogipoo
d9c5a0c6d1 Fix position editing not working 2018-03-29 22:38:44 +09:00
smoogipoo
4446aeaa0d Commenting + cleanup of HitObjectMask/HitObjectMaskLayer 2018-03-29 22:38:28 +09:00
smoogipoo
d8f26f2260 Make HitObjectMaskLayer not iterate through all masks when deselecting 2018-03-29 22:22:42 +09:00
smoogipoo
1018711cc9 Cleanup SelectionBox 2018-03-29 22:20:56 +09:00
smoogipoo
346de77776 Cleanup DragBox 2018-03-29 22:13:28 +09:00
smoogipoo
04874bcda4 "overlay" -> "mask" 2018-03-29 22:09:22 +09:00
smoogipoo
6d4f94756e Rewrite the way drag + click selections happen
The general idea here is that we need the masks to handle mouse down events, as they need to handle the drag (mousedown -> drag immediately).

I've rewritten the editor selections to use events, as there are some 3 different components that handle/trigger selections in different ways.

1. All selections/deselections now propagate through `HitObjectMask.Select()`/`HitObjectMask.Deselect()`.
2. Components that react to changes in the selection bind to the masks' `Selected`/`Deselected` events, and track them/change their states locally.
3. Masks provide a `SingleSelectionRequested` event which is invoked on the mouse-down event. Various components bind to this event to perform state changes locally in this scenario.
4. `DragBox` now handles all drag input locally. It triggers `Select`/`Deselect` on the masks it needs to.
5. `SelectionBox` handles the display of itself locally.
6. `SelectionBox` handles movement of groups of masks locally.
7. `HitObjectMasks` handles movement of itself locally.
2018-03-29 22:07:23 +09:00
smoogipoo
6314694557 Make HitObjectMaskLayer always create masks for all objects 2018-03-29 17:13:45 +09:00
FreezyLemon
46d859a660 exit player earlier if a dummy map is loaded 2018-03-25 13:25:48 +02:00
smoogipoo
097ab66182 Fix resharper error 2018-03-25 01:54:25 +09:00
Dean Herbert
0e669c9a3f Fix many warnings 2018-03-24 18:23:22 +09:00
smoogipoo
ffa712dccb Fix post-merge issues 2018-03-24 15:19:45 +09:00
smoogipoo
c29f7a4333 Merge remote-tracking branch 'origin/master' into netstandard 2018-03-24 14:49:46 +09:00
Dean Herbert
e47aa0edc0
Merge branch 'master' into fix-background-fade 2018-03-24 03:40:13 +09:00
Dan Balasescu
9ab3610b95
Merge branch 'master' into fix-player-disposal 2018-03-23 20:45:42 +09:00
smoogipoo
afdab7895a Fix beatmap background fade not being updated on retry
Fixes #2287
2018-03-23 20:41:38 +09:00
Dean Herbert
b56eee1927 Fix background loaded player never being disposed if early exit occurs 2018-03-23 15:04:40 +09:00
Dean Herbert
d4aeb3d00b Fix BeatmapCarousel's flush not correctly applying selection changes
They may have been delayed until the next Update, which is too late in this case.
2018-03-23 12:10:13 +09:00
FreezyLemon
a3d8048aca abort loading and exit player for dummy maps 2018-03-22 21:46:35 +01:00
Dean Herbert
92d8781bf0
Merge branch 'master' into beat-snap-divisor 2018-03-22 20:14:50 +09:00
smoogipoo
2b7d22c4ea Very slightly reduce size of slider bar to increase bottom padding 2018-03-22 20:11:55 +09:00
smoogipoo
090c78bf10 Merge remote-tracking branch 'origin/master' into fix-player-loader 2018-03-22 20:00:21 +09:00
Dan Balasescu
ab9505652b Merge branch 'master' into skin--completion 2018-03-22 16:44:00 +09:00
Dean Herbert
dade52d15d Fix vertical padding 2018-03-22 16:15:14 +09:00
Dean Herbert
a4804f47a9 Merge branch 'master' into beat-snap-divisor 2018-03-22 16:06:26 +09:00
Dean Herbert
5f1bb8d753
Merge branch 'master' into fix-player-loader 2018-03-22 15:46:37 +09:00
Dan Balasescu
13a3c728dc
Merge branch 'master' into fix-dummy-ruleset 2018-03-22 15:29:43 +09:00
smoogipoo
3f3f57e51e Use cached vertexbatch add delegate 2018-03-22 15:13:38 +09:00
Dean Herbert
917334a39a Move cancel code to exit paths for screen 2018-03-22 13:01:40 +09:00
Dean Herbert
e0b74a357a Fix osu! logo making hover beat sounds when not visible 2018-03-22 03:31:14 +09:00
Dean Herbert
8f71d53c17 Fix retry not allowing continuing beyond PlayerLoader
Resolves #2265.
2018-03-22 02:10:31 +09:00
Dean Herbert
62229300c4 Fix DummyRuleset getting selected
Resolves #2261.
2018-03-22 00:26:48 +09:00
Dean Herbert
271c082606 Adjust colour assignment 2018-03-21 16:25:32 +09:00
Dean Herbert
48142602ea Adjust text size to match design 2018-03-21 16:04:43 +09:00
Dean Herbert
63f0419d6a Apply minor fixes 2018-03-21 15:40:43 +09:00
Dean Herbert
8ac660b0c6 Fixes for keyboard handling and general code quality 2018-03-20 22:25:15 +09:00
Dean Herbert
aa8b0d017c Adjust colours and spacing 2018-03-20 21:59:56 +09:00
Dean Herbert
dac1ba21db Make keyboard control work 2018-03-20 21:38:22 +09:00
Dean Herbert
045610dbfe Adjust styling and colours 2018-03-20 21:31:17 +09:00
Dean Herbert
c2eb32c0e9 DrawableBeatDivisor -> BeatDivisorControl 2018-03-20 20:10:27 +09:00
Dean Herbert
6fd650777c Move value change logic to bindable
Also add drag support
2018-03-20 20:09:55 +09:00
Dean Herbert
9ad4e9284a Add skin source fallback chain 2018-03-20 16:40:11 +09:00
smoogipoo
50192b21e3 Give DrawableBeatDivisor a ctor 2018-03-20 13:57:25 +09:00
smoogipoo
b1d09500f2 Integrate beat snap divisor into editor seeking 2018-03-19 20:42:06 +09:00
smoogipoo
c5eab7a227 Actually rename to DrawableBeatDivisor... 2018-03-19 20:34:24 +09:00
smoogipoo
5ecbc5612c Integrate with dependency injection 2018-03-19 20:33:58 +09:00
smoogipoo
4c0ccffe08 Merge remote-tracking branch 'origin/master' into beat-snap-divisor 2018-03-19 20:23:15 +09:00
smoogipoo
df0b8a24c5 Rename + renamespace 2018-03-19 20:21:19 +09:00
smoogipoo
879dbc75b5 Nest TickContainer in BeatSnapVisualiser 2018-03-19 20:20:29 +09:00
smoogipoo
b25c564ecb Integrate into editor's compose screen 2018-03-19 20:14:58 +09:00
smoogipoo
32fecc6ff4 Adjust icon scale + text 2018-03-19 20:14:34 +09:00
smoogipoo
e96dad441d Offset the icon buttons a little bit to look a bit more centered
Maybe it's just me, but this is really triggering me.
2018-03-19 20:14:13 +09:00
smoogipoo
c86ddb7ee3 Add slight easing to marker movements 2018-03-19 19:57:02 +09:00
smoogipoo
fbc92bfa01 Add previous/next divisor button actions 2018-03-19 19:55:49 +09:00
smoogipoo
070db63157 Privatise tick to TickContainer 2018-03-19 19:52:22 +09:00
smoogipoo
7182442b21 Add divisor text 2018-03-19 19:49:57 +09:00
smoogipoo
6b035e8c53 Add basic structure/layout for the beat snap visualiser 2018-03-19 19:46:26 +09:00
Dean Herbert
4b812279bb
Merge branch 'master' into fix-editor-clocks 2018-03-19 19:06:38 +09:00
smoogipoo
8d4c9eda48 Fix attempting to add selection boxes with no selection
E.g. because DrawableSpinner doesn't (currently) create an overlay, SelectionBox was being constructed with 0 hitobjects and then calculating a non-finite size for itself.
2018-03-19 18:00:11 +09:00
smoogipoo
e25d1f6982 Pass down editor clocks through DI 2018-03-19 16:27:52 +09:00
Dean Herbert
4b83278cf4
Merge branch 'master' into fix-editor-clocks 2018-03-16 23:32:54 +09:00
Dean Herbert
4411758ff7
Merge branch 'master' into fix-autoplay-button-deselect 2018-03-16 17:31:14 +09:00
smoogipoo
b27b6c7eb7 Merge branch 'master' into cursor-trail 2018-03-16 14:43:27 +09:00
smoogipoo
d05947ef48 Pass adjustable clocks to components, rather than relying on the track 2018-03-15 18:19:28 +09:00
smoogipoo
c8f6a6980b Move clock construction to Editor 2018-03-15 17:27:37 +09:00
smoogipoo
5e742eb466 Move editor constructions to BDL load 2018-03-15 17:10:08 +09:00
Dean Herbert
cdf435aedd
Merge branch 'master' into DoNotMoveToPlayerWhileDragging 2018-03-15 11:14:30 +09:00
Dean Herbert
8d433cb4bf
Merge branch 'master' into cursor-trail 2018-03-15 11:14:21 +09:00
Dean Herbert
551b67ac16
Merge branch 'master' into fix-autoplay-button-deselect 2018-03-14 21:46:19 +09:00
Dean Herbert
a0691168cb Merge remote-tracking branch 'upstream/master' into editor-hitobject-movement 2018-03-14 15:35:24 +09:00
Dean Herbert
81f82d98a1 Rework a lot of naming and structure 2018-03-14 15:18:21 +09:00
Dean Herbert
ea649f9650 Avoid scheduling during non-current screen 2018-03-14 12:09:19 +09:00
Dean Herbert
ef8d595914 Apply formatting changes 2018-03-14 11:44:19 +09:00
Dean Herbert
c3a3d76b88 Merge remote-tracking branch 'upstream/master' into DoNotMoveToPlayerWhileDragging 2018-03-14 11:43:33 +09:00
Dean Herbert
13f64a1d12
Merge branch 'master' into cursor-trail 2018-03-14 11:42:40 +09:00
FreezyLemon
95c84ea7fe remove (now) unnecessary line 2018-03-12 23:00:06 +01:00
FreezyLemon
ddc1f03a96 deselect autoplay button after ctrl-enter play
before, the mod was removed, but the button was still active
2018-03-12 22:35:45 +01:00
smoogipoo
33c721bcbb Fix post-merge errors 2018-03-12 09:51:32 +09:00
smoogipoo
6e51b74890 Merge remote-tracking branch 'origin/master' into rewrite-break-overlay 2018-03-12 09:47:05 +09:00
Dean Herbert
487a03d0d7
Merge branch 'master' into cursor-trail 2018-03-11 02:07:05 +09:00
Dean Herbert
db2a663234 Use private instead of protected 2018-03-11 01:26:03 +09:00
naoey
56730247e3
Merge branch 'fix-unplayable-beatmaps' of github.com:naoey/osu into fix-unplayable-beatmaps 2018-03-09 19:40:00 +05:30
naoey
2c0488b1f1
Invert bool, add test, and handle ruleset change. 2018-03-09 19:39:28 +05:30
Dean Herbert
9ad9fc5aa9
Merge branch 'master' into fix-unplayable-beatmaps 2018-03-09 21:39:48 +09:00
naoey
d04f47718f
Make song select choose random when initial selection fails.
- Revert TestCasePlaySongSelect to master
2018-03-09 17:36:55 +05:30
naoey
25fb527cc7
Remove previous fix and move filtered logic to carousel.
- Add an optional bool parameter to SelectBeatmap to skip selecting
filtered maps
2018-03-09 15:51:00 +05:30
Dean Herbert
6d91889ca6 Move player-specific configuration bindables back to player 2018-03-08 22:16:47 +09:00
Dean Herbert
94ed4ab01b Add debouncing to player loading
Allows the mouse to temporarily exit and re-enter overlay elements without triggering a load
2018-03-08 20:28:55 +09:00
Dean Herbert
d3e91024a7 Block player enter when a drag initiates from an overlaying container 2018-03-08 18:16:23 +09:00
TocoToucan
2cb197d0c4 Replace ConfigureBackgroundUpdate with OnEntering 2018-03-08 11:35:00 +03:00
Dean Herbert
8f3f886805
Merge branch 'master' into PlayerBase 2018-03-08 16:12:12 +09:00
Dean Herbert
81c1ec2005
Merge branch 'master' into fix-unplayable-beatmaps 2018-03-08 13:02:57 +09:00
Dean Herbert
91c984ed97
Merge branch 'master' into rewrite-break-overlay 2018-03-08 09:31:59 +09:00
Dean Herbert
81b778fdcf
Merge branch 'master' into cursor-trail 2018-03-08 09:31:42 +09:00
pdrapoport
3731cbe5eb Removing "mouse wheel disabled" checkbox from visual settings gameplay menu 2018-03-07 14:20:59 +01:00
Dean Herbert
6a768e378a
Merge branch 'master' into rewrite-break-overlay 2018-03-07 17:00:34 +09:00
smoogipoo
78d73d4c11 Additional fixes for flow ordering after framework changes 2018-03-06 17:20:58 +09:00
smoogipoo
148551afa2 osu!-side changes in-line with framework layout changes 2018-03-06 14:12:37 +09:00
TocoToucan
697ad63d72 Resolve merge conflicts 2018-03-05 22:24:25 +03:00
Dean Herbert
4aafc2228e Improve skip button behaviour when mouse buttons are down 2018-03-06 00:53:40 +09:00
Dean Herbert
d115c56742 Avoid using input blocking 2018-03-06 00:27:55 +09:00
Dean Herbert
792a3ac469 SkipButton -> SkipOverlay 2018-03-06 00:10:53 +09:00
Dean Herbert
53edfedfc8 Remove unneeded HighFrequencyMousePosition from GameplayMenuOverlay 2018-03-05 19:43:57 +09:00
Dean Herbert
7d11e55d06 Only block mouse input when the shaded portion of the SkipButton is hovered 2018-03-05 19:43:33 +09:00
Dean Herbert
c6c55c40ed Rewrite BreakOverlay
No longer relies on Schedule calls (could not be rewound).
Also no longer sucks.
2018-03-04 00:51:24 +09:00
naoey
a57dc154f9
More specific tests. 2018-03-03 20:34:29 +05:30
naoey
307147a8a3
Merge remote-tracking branch 'upstream/master' into fix-unplayable-beatmaps 2018-03-03 16:10:22 +05:30
naoey
fb724ca8a7
Make song select ensure current beatmap is always playable in the active ruleset.
- Add a to TestCasePlaySongSelect testing this scenario
2018-03-03 16:09:24 +05:30
Dean Herbert
bd510e5356 Merge remote-tracking branch 'upstream/master' into clock-fixes 2018-03-02 21:01:53 +09:00
Dean Herbert
6dc9411a90 Don't use BufferedContainer for OsuLogo
Minor performance improvement. Not sure why this was done but it's not required any more.
2018-03-01 16:01:42 +09:00
Dean Herbert
bda673e6fe
Merge branch 'master' into player-reduced-parallax 2018-02-28 23:15:25 +09:00
Dan Balasescu
33a64cb497
Merge branch 'master' into fix-multiple-tracks-playing 2018-02-28 22:53:02 +09:00
Dan Balasescu
25c748ed45
Merge branch 'master' into fix-player-exit 2018-02-28 22:05:44 +09:00
Dean Herbert
f9faf8e3d8 Localise offset clock usage out of Player as much as possible 2018-02-28 22:01:52 +09:00
Dean Herbert
01fcf9c813 Update in line with framework changes 2018-02-28 22:01:48 +09:00
Dan Balasescu
b898226a91
Merge branch 'master' into fix-mod-select 2018-02-28 21:52:07 +09:00
Dan Balasescu
a3d26d7d55
Merge branch 'master' into fix-song-select-iteration 2018-02-28 21:40:25 +09:00
Dean Herbert
08497427fd
Merge branch 'master' into fix-multiple-tracks-playing 2018-02-28 15:32:16 +09:00
Dean Herbert
bc0bbd2e3b
Merge branch 'master' into reduce-transforms 2018-02-28 14:39:31 +09:00
Dean Herbert
4a52db14d1 Fix depth of already-visible panels not being updates after a sorting change 2018-02-28 14:18:25 +09:00
Dean Herbert
dd6cf1379e Reduce parallax effect during gameplay
This also cleans up some shared code in OsuScreen.
2018-02-28 11:42:47 +09:00
Dean Herbert
0cd049c6b0 Rely less on zero-duration transform helpers
They have huge overheads.

See ppy/osu-framework#1411.
2018-02-28 11:00:54 +09:00
Dean Herbert
510ecd7c87 Ensure selection is finalised before exiting song select
Resolves #2080.
2018-02-28 00:07:28 +09:00
Dean Herbert
f64afc738d Fix incorrect exit block conditional
Resolves #2130.
2018-02-27 23:59:34 +09:00
Dean Herbert
84a8fbe0b3 Fix null ref 2018-02-27 21:26:06 +09:00
Dean Herbert
034875be47 Fix bindings not being unbound on ModSelect
Resolves #2018.
Closes #2079.
2018-02-27 20:45:32 +09:00