Skip to content

Activity indicator styles and shimmer placeholder modifier#2

Merged
sweetmans merged 12 commits into
developfrom
feature/activity-indicator-shimmer
Jun 19, 2026
Merged

Activity indicator styles and shimmer placeholder modifier#2
sweetmans merged 12 commits into
developfrom
feature/activity-indicator-shimmer

Conversation

@sweetmans

Copy link
Copy Markdown
Contributor

Summary

Adds two custom activity indicator styles (.orbital, .pulsing) alongside the existing .system default, plus a token-backed higShimmer modifier for redacted placeholder loading states.

Changes

Activity Indicator

  • HIGActivityIndicatorStyle: .system (default), .orbital, .pulsing
  • Token-backed sizing, colors, and motion via HIGActivityIndicatorTokens
  • Reduce Motion support for all styles

Shimmer

  • higShimmer(isActive:mode:) modifier with mask, overlay, and background modes
  • HIGShimmerTokens wired through HIGTheme (System, Brand, High Contrast, Preview)

Showcase

  • System sizes (small/medium/large)
  • Custom styles (orbital, pulsing)
  • Shimmer placeholder subsection under Activity Indicator

Docs & tests

  • DocC and requirements updated
  • Token tests for activity indicator and shimmer
  • Activity indicator snapshots re-captured

Test plan

  • swift build
  • swift test (47 tests)
  • Scripts/verify_component_token_usage.sh
  • Scripts/verify_docc_coverage.sh
  • Scripts/capture_showcase_snapshots.sh

sweetmans added 11 commits June 19, 2026 22:37
Introduce orbital and pulsing activity indicator styles alongside the
existing system ProgressView default, with token-backed sizing and motion.
Add higShimmer modifier for redacted placeholder loading states, wire
shimmer tokens through all themes, and expand the Activity Indicator
showcase with custom styles and a shimmer subsection.
Port the remaining eight Exyte indicator types (arcs, rotatingDots,
flickeringDots, scalingDots, opacityDots, equalizer, growingCircle,
gradient) with token-backed parameters, theme colors, and Reduce Motion
support. Expand showcase to demo all ten custom styles plus system.
Migrate PhotoPicker library and image loading from DispatchQueue to
actors (PhotosLibraryExecutor, PhotoKitCoordinator). Add CI guard that
fails on DispatchQueue and dispatch_* usage in Sources and Tests.
Use grep/find in all CI verification scripts so jobs pass without rg
installed. Link Requirements/ from README.md. Scope preview coverage to
public View types and fix PhotoPicker overlay naming.
Replace build-and-test.yml with pr-checks.yml: governance on ubuntu-latest,
macOS build/snapshots after governance passes. Add run_pr_checks.sh
orchestrators, SwiftPM cache, cancel-in-progress concurrency, PR template,
and include missing token/signing/sample-app guards. Finish rg removal in
remaining verify scripts.
Fix macOS PR Checks failure when ripgrep is not installed on the runner.
Snapshot PNGs are for README and GitHub Pages only. Drop snapshot diff
and manifest guards from CI; keep capture scripts for manual use.
Annotate PickerChrome button style helpers and ViewModifier bodies with
@mainactor, and cast .glass explicitly for iOS 26. Build thumbnail
request options inside PhotoKitCoordinator to avoid sending non-Sendable
PHImageRequestOptions across actor boundaries.
Remove GlassButtonStyle references that require the iOS 26 SDK unavailable
on CI runners. Runtime availability checks do not prevent compile-time type
resolution, so fall back to .bordered consistently across SDKs.
Bring back GlassButtonStyle usage with iOS 26 availability fallback to
.bordered. Delete the GitHub Actions PR Checks workflow and its
orchestrator scripts; update docs to list manual verification commands.
@sweetmans sweetmans enabled auto-merge (squash) June 19, 2026 16:24
@sweetmans sweetmans disabled auto-merge June 19, 2026 16:24
Resolve PhotoPicker actor conflicts by keeping allowsNetwork-based
caching API that builds PHImageRequestOptions inside PhotoKitCoordinator.
@sweetmans sweetmans merged commit 1274cc2 into develop Jun 19, 2026
@sweetmans sweetmans deleted the feature/activity-indicator-shimmer branch June 19, 2026 16:27
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.

1 participant