1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-07 01:07:20 +08:00

2809 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