8000 Fix letterbox overlay potentially fading incorrectly during seeks by peppy · Pull Request #33111 · ppy/osu · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Fix letterbox overlay potentially fading incorrectly during seeks #33111

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 13, 2025

Conversation

peppy
Copy link
Member
@peppy peppy commented May 13, 2025

Pushing this out with zero testing as a "probably fixes" #33108.

Previous logic would mean that the start value of the fade-in may not be zero depending on current state, leaving the final alpha state incorrect after a rewind beyond the start time.

Hope for an immediate merge with no further testing based on "yeah that's probably correct".

@bdach bdach self-requested a review May 13, 2025 06:14
@bdach
Copy link
Collaborator
bdach commented May 13, 2025

Hope for an immediate merge with no further testing based on "yeah that's probably correct".

I did not listen to this, because this fix made no sense to me, and I'll let you be the judge of whether that was the correct move, because as far as I can tell (from the fact that I reproduced the issue) this diff does nothing and the actual fix is

diff --git a/osu.Game/Screens/Play/LetterboxOverlay.cs b/osu.Game/Screens/Play/LetterboxOverlay.cs
index 565806528a..6bfcf454ed 100644
--- a/osu.Game/Screens/Play/LetterboxOverlay.cs
+++ b/osu.Game/Screens/Play/LetterboxOverlay.cs
@@ -12,6 +12,8 @@ namespace osu.Game.Screens.Play
 {
     public partial class LetterboxOverlay : CompositeDrawable
     {
+        public override bool RemoveCompletedTransforms => false;
+
         public required BreakTracker BreakTracker { get; init; }
 
         private readonly Container fadeContainer;

Copy link
Collaborator
@bdach bdach left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above

@peppy
Copy link
Member Author
peppy commented May 13, 2025

I explicitly do not want to use that flag on new components, so I'll reassess this.

this diff does nothing

it definitely doesn't do nothing, the logic behind the fix is sound.

8000

@bdach
Copy link
Collaborator
bdach commented May 13, 2025

It doesn't fix the issue that I'm seeing, that's for sure.

@peppy peppy force-pushed the fix-letterbox-rewind branch from abb657d to 866333c Compare May 13, 2025 08:07
@peppy
Copy link
Member Author
peppy commented May 13, 2025

I've gone with the RemoveCompletedTransforms solution. I'm generally against using this where we have a bunch of transforms that are stored over the full gameplay session, but this component no longer does that so it seems fine (see FinishTransforms call).

Pushing this out with zero testing as a "probably fixes"
ppy#33108.

Previous logic would mean that the start value of the fade-in may not be
zero depending on current state, leaving the final alpha state incorrect
after a rewind beyond the start time.
@peppy peppy force-pushed the fix-letterbox-rewind branch from 866333c to 83891b1 Compare May 13, 2025 08:09
@bdach bdach merged commit 464ad4e into ppy:master May 13, 2025
10 checks passed
@peppy peppy deleted the fix-letterbox-rewind branch May 15, 2025 06:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0