Skip to content

Adopt the filled Aperture logo and Expressive launch motion - #22

Merged
XDanfr merged 13 commits into
masterfrom
branding/expressive-aperture
Oct 15, 2026
Merged

XDanfr merged 13 commits into
masterfrom
branding/expressive-aperture

Conversation

@XDanfr

@XDanfr XDanfr commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Aperture uses the approved filled shutter mark across launch, the sidebar, Ambient Mode, launcher icons and TV banners. The shared Compose renderer preserves the approved geometry and calculates solid intersections while the shutter unfolds.

Launch, sidebar and poster-wall blades use the active theme’s Inverse Primary, intersections use On Primary, and the play symbol uses Primary. Material TV keeps the approved Aperture Purple palette. Each other theme supplies its own animated Inverse Primary, including Artwork Dynamic, using Google’s public MaterialColors tone-40 API. Launcher assets and exported branding retain the purple identity.

The Material You monochrome layer now uses one white tintable source colour with three alpha levels: play 100%, blades 72% and intersections 32%. Blade fill is masked out beneath the intersections, so their lower opacity remains visible after a launcher applies its theme tint. SVG masters, generated PNG/WebP density assets, and checks are updated.

Launch morphs a circle into a soft square, then into a softly rounded six-sided cookie. The cookie becomes the seed for the six blades, which unfold before the play symbol springs in. The launch, sidebar and Ambient logo spins use the original 650 ms ease-in-out turn, followed by a restrained four-degree settle using the official fast spatial motion token. Shape, scale and opacity use official Material 3 Expressive spatial/effects tokens and respect system animation scaling.

Cinematic Ambient Mode passes the displayed title’s artwork palette into the shared logo renderer: tone-40 blades, tone-20 overlaps and a tone-80 play/wordmark. All three roles transition with the title, with the app palette as the extraction fallback. Symmetrically rounded logo/clock surfaces use a uniform dark tint with restrained artwork colour and 32 dp blur of the actual backdrop. A shared artwork-only GraphicsLayer keeps foreground logos and text sharp. Older Android versions use a stronger tinted fallback when native blur is unavailable.

The TV banner now uses the approved Purple Spectrum direction: a dark-to-purple palette gradient with the sweeping corner shapes, while keeping the logo geometry and Outfit wordmark unchanged. The adaptive banner supplies that colourful background and the padded logo as separate layers, so Google TV can see the palette behind the artwork and all content stays within Android’s visible crop. Flat banners and both adaptive layers are generated at all five densities; onboarding artwork remains full-size.

Validation: Android debug build, unit tests and banner checks pass on commit 74fdf2f: build and tests · updated debug APK.

Website companion: https://github.com/XDanfr/xdan.me/pull/33.

Copilot AI balanced review requested due to automatic review settings October 14, 2026 17:43

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@XDanfr
XDanfr merged commit f2e1188 into master Oct 15, 2026
1 check passed
@XDanfr
XDanfr deleted the branding/expressive-aperture branch October 15, 2026 07:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants