diff --git a/osu-framework b/osu-framework index 4d131fd0d9..269a1fd192 160000 --- a/osu-framework +++ b/osu-framework @@ -1 +1 @@ -Subproject commit 4d131fd0d997bee313de3fa33a45900637570ff0 +Subproject commit 269a1fd192c573d558a5ab0ff990a8b462947287 diff --git a/osu.Desktop/OpenTK.dll.config b/osu.Desktop/OpenTK.dll.config new file mode 100644 index 0000000000..627e9f6009 --- /dev/null +++ b/osu.Desktop/OpenTK.dll.config @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/osu.Desktop/osu.Desktop.csproj b/osu.Desktop/osu.Desktop.csproj index 934004dfde..fbc342d695 100644 --- a/osu.Desktop/osu.Desktop.csproj +++ b/osu.Desktop/osu.Desktop.csproj @@ -123,7 +123,10 @@ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\NuGet.Squirrel.dll True - + + $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll + True + $(SolutionDir)\packages\Splat.2.0.0\lib\Net45\Splat.dll True @@ -150,6 +153,7 @@ osu.licenseheader + diff --git a/osu.Desktop/packages.config b/osu.Desktop/packages.config index bdeaf1de89..be9b65f0c6 100644 --- a/osu.Desktop/packages.config +++ b/osu.Desktop/packages.config @@ -7,6 +7,7 @@ Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/maste + \ No newline at end of file diff --git a/osu.Game/Beatmaps/Drawables/BeatmapSetHeader.cs b/osu.Game/Beatmaps/Drawables/BeatmapSetHeader.cs index f8986b2ecd..e26dcac16b 100644 --- a/osu.Game/Beatmaps/Drawables/BeatmapSetHeader.cs +++ b/osu.Game/Beatmaps/Drawables/BeatmapSetHeader.cs @@ -36,7 +36,8 @@ namespace osu.Game.Beatmaps.Drawables new DelayedLoadContainer { RelativeSizeAxes = Axes.Both, - TimeBeforeLoad = 100, + TimeBeforeLoad = 300, + FinishedLoading = d => d.FadeInFromZero(400, EasingTypes.Out), Children = new[] { new PanelBackground(beatmap) diff --git a/osu.Game/OsuGame.cs b/osu.Game/OsuGame.cs index fdcc250d0f..66196670b8 100644 --- a/osu.Game/OsuGame.cs +++ b/osu.Game/OsuGame.cs @@ -199,7 +199,7 @@ namespace osu.Game { Depth = -3, OnHome = delegate { intro?.ChildScreen?.MakeCurrent(); }, - OnPlayModeChange = delegate (PlayMode m) { PlayMode.Value = m; }, + OnPlayModeChange = m => PlayMode.Value = m, }).LoadAsync(this, t => { PlayMode.ValueChanged += delegate { Toolbar.SetGameMode(PlayMode.Value); }; diff --git a/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs b/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs index be28857de6..d20564bd03 100644 --- a/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs +++ b/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs @@ -65,14 +65,13 @@ namespace osu.Game.Overlays.Toolbar foreach (PlayMode m in Ruleset.PlayModes) { - var localMode = m; modeButtons.Add(new ToolbarModeButton { Mode = m, Action = delegate { - SetGameMode(localMode); - OnPlayModeChange?.Invoke(localMode); + SetGameMode(m); + OnPlayModeChange?.Invoke(m); } }); } diff --git a/osu.Game/Screens/Select/BeatmapCarousel.cs b/osu.Game/Screens/Select/BeatmapCarousel.cs index e947d12f22..7443603c8b 100644 --- a/osu.Game/Screens/Select/BeatmapCarousel.cs +++ b/osu.Game/Screens/Select/BeatmapCarousel.cs @@ -181,7 +181,8 @@ namespace osu.Game.Screens.Select { if (!IsLoaded) return; - criteria = newCriteria ?? criteria ?? new FilterCriteria(); + if (newCriteria != null) + criteria = newCriteria; Action perform = delegate { @@ -202,6 +203,8 @@ namespace osu.Game.Screens.Select if (selectedGroup == null || selectedGroup.State == BeatmapGroupState.Hidden) SelectNext(); + else + selectGroup(selectedGroup); }; filterTask?.Cancel(); diff --git a/osu.Game/Screens/Select/FilterControl.cs b/osu.Game/Screens/Select/FilterControl.cs index d6537ca0d6..5445847da5 100644 --- a/osu.Game/Screens/Select/FilterControl.cs +++ b/osu.Game/Screens/Select/FilterControl.cs @@ -175,6 +175,7 @@ namespace osu.Game.Screens.Select if (osu != null) playMode.BindTo(osu.PlayMode); + playMode.ValueChanged += (s, e) => FilterChanged?.Invoke(CreateCriteria()); } protected override bool OnMouseDown(InputState state, MouseDownEventArgs args) => true; diff --git a/osu.Game/Screens/Select/SongSelect.cs b/osu.Game/Screens/Select/SongSelect.cs index 6eb26d22cb..656adf0d62 100644 --- a/osu.Game/Screens/Select/SongSelect.cs +++ b/osu.Game/Screens/Select/SongSelect.cs @@ -276,7 +276,7 @@ namespace osu.Game.Screens.Select initialAddSetsTask.Cancel(); } - private void playMode_ValueChanged(object sender, EventArgs e) => carousel.Filter(); + private void playMode_ValueChanged(object sender, EventArgs e) => Beatmap.PreferredPlayMode = playMode; private void changeBackground(WorkingBeatmap beatmap) { diff --git a/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs b/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs index 4d965bf3a5..b80f76d281 100644 --- a/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs +++ b/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs @@ -298,9 +298,7 @@ namespace osu.Game.Screens.Tournament private void speedTo(float value, double duration = 0, EasingTypes easing = EasingTypes.None) { DelayReset(); - - UpdateTransformsOfType(typeof(TransformScrollSpeed)); - TransformFloatTo(speed, value, duration, easing, new TransformScrollSpeed()); + TransformTo(speed, value, duration, easing, new TransformScrollSpeed()); } private enum ScrollState