1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-06 09:07:25 +08:00
osu-lazer/osu.Game/Overlays
Bartłomiej Dach 25e38560ce
Fix placeholder drawables on beatmap listing not always hiding correctly
`BeatmapListingOverlay.addContentToPlaceholder()`, in order to make
transitions between different beatmap listing content (whether it is
actual cards, or placeholders for no beatmaps found/supporter-specific
filters chosen), would set `BypassAutoSizeAxes = Y` on content as it is
fading out, to make the transition smoother. The property in question
was supposed to be getting restored to `None` on the next show.

In testing scenarios, it sometimes turned out that this wasn't the case,
therefore making the placeholders effectively not show - while they
were present and fully opaque, they would be the only child of
an auto-sized container with `BypassAutoSizeAxes = Y`, so the parent
auto-sized to a zero height, which logically follows from the premise,
but is not what was desired.

This in turn was caused by the fact that the `BypassAutoSizeAxes = Y`
set was scheduled, and sometimes it would be scheduled in such a way
that the drawable would cease to be present on the next frame due to its
alpha being past the cutoff point of 0.0001. Therefore the scheduled set
would not execute until the *next* time the placeholder was shown,
therefore causing the bug.

Fix by ensuring that the placeholder drawables are always present if
their schedulers have any tasks enqueued, on top of the usual checks of
alpha and scale performed via the base implementation.
2021-12-22 15:05:23 +01:00
..
AccountCreation Update ScreenEntry colour usage to update correctly on language change 2021-11-02 21:42:03 +01:00
BeatmapListing Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
BeatmapSet Use OnlineID instead of legacy IDs for equality and lookups 2021-12-10 16:11:48 +09:00
Changelog Merge branch 'master' into use-class-rename 2021-11-07 15:41:00 +01:00
Chat Fix LinkFlowContainer not creating user links supporting full IUser specification 2021-11-08 14:17:47 +09:00
Comments Merge branch 'master' into use-class-rename 2021-11-07 15:41:00 +01:00
Dashboard Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dialog Use LocalisableStrings where possible to leverage localisable text flow 2021-11-02 21:42:02 +01:00
Login Recolour a few other existing dropdowns with same hover & selection colours 2021-10-19 22:47:18 +02:00
MedalSplash
Mods Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Music Merge pull request #15772 from peppy/remove-model-list-inits 2021-11-24 16:41:19 +09:00
News Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Notifications Add failing test case 2021-11-09 13:34:36 +01:00
OSD Fix toast popups spamming samples when adjusting osu!mania scroll speed during gameplay 2021-12-15 12:45:23 +09:00
Profile Rename BeatmapCard{ => Normal} 2021-12-21 08:26:21 +01:00
Rankings Rename BeatmapCard{ => Normal} 2021-12-21 08:26:21 +01:00
Settings Merge branch 'master' into fix-realm-post-storage-migration-failure 2021-12-17 00:19:46 +01:00
Toolbar Ensure correct disabled ruleset callback scheduling in ruleset selector 2021-11-27 15:28:23 +01:00
Volume Remove usage of key repeat helper method 2021-11-18 13:13:36 +09:00
Wiki Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
AccountCreationOverlay.cs Ensure account creation overlay is shown after logout 2020-12-25 15:40:39 +01:00
BeatmapListingOverlay.cs Fix placeholder drawables on beatmap listing not always hiding correctly 2021-12-22 15:05:23 +01:00
BeatmapSetOverlay.cs Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
BreadcrumbControlOverlayHeader.cs Allow null for breadcrumb control 2021-07-17 20:33:26 +08:00
ChangelogOverlay.cs Update UI cases where repeat should not be handled 2021-11-18 13:13:36 +09:00
ChatOverlay.cs Don't show multiplayer channels in chat overlay 2021-12-16 16:41:47 +09:00
DashboardOverlay.cs Implement TabbableOnlineOverlay component 2021-01-18 21:22:50 +03:00
DialogOverlay.cs Update UI cases where repeat should not be handled 2021-11-18 13:13:36 +09:00
FullscreenOverlay.cs Add localisation support to overlay header title/description 2021-04-21 14:37:29 +09:00
HoldToConfirmOverlay.cs Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
INamedOverlayComponent.cs Add localisation support to overlay header title/description 2021-04-21 14:37:29 +09:00
LoginOverlay.cs Move login panel related files to own namespace and tidy up class nesting 2021-09-17 18:34:16 +09:00
MedalOverlay.cs Remove redundant arguments 2021-07-05 23:52:39 +08:00
MusicController.cs Update cases where equality can be used instead of primary key equality 2021-11-24 12:49:57 +09:00
NewsOverlay.cs Pass fetch more action in via ctor to avoid potential nullref 2021-05-26 22:49:39 +09:00
NotificationOverlay.cs Move sample playback debounce time to central const 2021-09-05 13:25:10 +09:00
NowPlayingOverlay.cs Ensure correct disabled beatmap callback scheduling in now playing overlay 2021-11-27 14:36:34 +01:00
OnlineOverlay.cs Hoist scroll cache declaration to original place of definition 2021-06-07 11:18:18 +02:00
OnScreenDisplay.cs Fix toast popups spamming samples when adjusting osu!mania scroll speed during gameplay 2021-12-15 12:45:23 +09:00
OverlayActivation.cs
OverlayColourProvider.cs Add colour provider for multiplayer usage 2021-08-12 19:47:26 +09:00
OverlayHeader.cs Centralise fetching of overlay component titles and textures 2020-09-03 16:34:58 +09:00
OverlayHeaderBackground.cs
OverlayPanelDisplayStyleControl.cs Update mapper usages with LocalisableDescription 2021-07-31 01:47:14 +03:00
OverlayRulesetSelector.cs Revert initial ruleset value logic 2021-08-23 13:28:21 +03:00
OverlayRulesetTabItem.cs Update ruleset selector design 2020-03-24 22:14:15 +01:00
OverlayScrollContainer.cs Move action to private named method to avoid null inspection 2021-11-05 03:51:08 +03:00
OverlaySidebar.cs create abstract class OverlaySidebar 2021-06-04 00:12:13 +07:00
OverlaySortTabControl.cs fix checkbox sounds not being used for certain checkboxes 2021-06-18 21:00:08 +09:00
OverlayStreamControl.cs Adjust class naming 2020-03-04 23:08:58 +03:00
OverlayStreamItem.cs Localise friends online status stream control. 2021-06-30 21:16:21 +02:00
OverlayTabControl.cs add sound to tab controls 2021-06-18 19:16:00 +09:00
OverlayTitle.cs Add localisation support to overlay header title/description 2021-04-21 14:37:29 +09:00
OverlayView.cs Revert "Allow OverlayView fetching with no API requests required" 2020-12-18 01:27:58 +03:00
RankingsOverlay.cs Add missing null checks 2021-10-05 17:59:38 +09:00
RestoreDefaultValueButton.cs Remove doubled-up opacity specification 2021-10-18 19:43:48 +02:00
SettingsOverlay.cs Move ruleset settings to own section 2021-10-12 14:58:43 +09:00
SettingsPanel.cs Share sidebar colouring logic by splitting out SidebarIconButton 2021-10-10 00:34:12 +02:00
SettingsSubPanel.cs Remove HoverTarget shared state update path 2021-10-10 11:55:47 +09:00
SortDirection.cs Remove unused classes and replace overlay in game 2020-04-21 16:38:47 +09:00
TabbableOnlineOverlay.cs Add login placeholder logic to OnlineOverlay 2021-02-18 18:07:24 +09:00
TabControlOverlayHeader.cs Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
UserProfileOverlay.cs Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
VolumeOverlay.cs Let selection container handle manual selection changes 2021-07-06 13:24:18 +02:00
WaveOverlayContainer.cs Use unique samples for Dialog, NowPlaying, SettingsPanel and WaveOverlay pop-in/pop-out 2021-02-10 16:04:47 +09:00
WikiOverlay.cs Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00