From 6ced21990622c2ed952fb0edca13ebe2775b26f6 Mon Sep 17 00:00:00 2001 From: dirtydishes Date: Tue, 26 May 2026 22:56:50 -0400 Subject: [PATCH] Fade player controls without movement --- Dreamio/NativePlayerViewController.swift | 10 ++----- ...2026-05-26-center-play-pause-contrast.html | 30 +++++++++++++++++++ 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/Dreamio/NativePlayerViewController.swift b/Dreamio/NativePlayerViewController.swift index 652c253..48b7dd6 100644 --- a/Dreamio/NativePlayerViewController.swift +++ b/Dreamio/NativePlayerViewController.swift @@ -733,16 +733,10 @@ final class NativePlayerViewController: UIViewController { private func revealControls() { controlsContainer.isUserInteractionEnabled = true closeButton.isUserInteractionEnabled = true - let animations = { + controlsContainer.transform = .identity + UIView.animate(withDuration: 0.22, delay: 0, options: [.curveEaseOut]) { self.controlsContainer.alpha = 1 self.closeButton.alpha = 1 - self.controlsContainer.transform = .identity - } - if UIAccessibility.isReduceMotionEnabled { - animations() - } else { - controlsContainer.transform = CGAffineTransform(translationX: 0, y: 8).scaledBy(x: 0.98, y: 0.98) - UIView.animate(withDuration: 0.22, delay: 0, options: [.curveEaseOut], animations: animations) } scheduleControlsHide() } diff --git a/docs/turns/2026-05-26-center-play-pause-contrast.html b/docs/turns/2026-05-26-center-play-pause-contrast.html index ff51049..abdaf31 100644 --- a/docs/turns/2026-05-26-center-play-pause-contrast.html +++ b/docs/turns/2026-05-26-center-play-pause-contrast.html @@ -410,6 +410,36 @@

No new Beads issue or PR was created for this small visual follow-up.

+
+

New Changes as of 2026-05-26 22:56

+

Summary of changes

+

Removed the positional/scale reveal motion from the native player controls. Tapping to show or hide controls now only fades the controls and close button in or out.

+

Why this change was made

+

The controls reveal animation felt overdone for a transient playback overlay. A simple opacity transition keeps the UI calmer while preserving clear visibility.

+

Code diffs

+
+
Dreamio/NativePlayerViewController.swift — controls tap animation
+
- let animations = {
+-     self.controlsContainer.alpha = 1
+-     self.closeButton.alpha = 1
+-     self.controlsContainer.transform = .identity
+- }
+- if UIAccessibility.isReduceMotionEnabled {
+-     animations()
+- } else {
+-     controlsContainer.transform = CGAffineTransform(translationX: 0, y: 8).scaledBy(x: 0.98, y: 0.98)
+-     UIView.animate(withDuration: 0.22, delay: 0, options: [.curveEaseOut], animations: animations)
+- }
++ controlsContainer.transform = .identity
++ UIView.animate(withDuration: 0.22, delay: 0, options: [.curveEaseOut]) {
++     self.controlsContainer.alpha = 1
++     self.closeButton.alpha = 1
++ }
+
+

Related issues or PRs

+

No new Beads issue or PR was created for this focused playback UI adjustment.

+
+

Follow-up Work