Skip to content
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

🧪 [Experiment] Shimmer #390

Open
6 of 20 tasks
niels9001 opened this issue Mar 8, 2023 · 2 comments · Fixed by #391
Open
6 of 20 tasks

🧪 [Experiment] Shimmer #390

niels9001 opened this issue Mar 8, 2023 · 2 comments · Fixed by #391
Labels
experiment 🧪 Used to track issues that are experiments (or their linked discussions)
Projects

Comments

@niels9001
Copy link
Collaborator

niels9001 commented Mar 8, 2023

Approved from Discussion

#381

Problem Statement

A way to indicate to the user that certain parts of the screen are loading.

Overview

This experiment adds the following components:

  • Shimmer: a loading indication control

Using

You can try it out via the NuGet Packages here:

UWP
https://dev.azure.com/dotnet/CommunityToolkit/_artifacts/feed/CommunityToolkit-Labs/NuGet/CommunityToolkit.Labs.Uwp.Shimmer
WinUI 3
https://dev.azure.com/dotnet/CommunityToolkit/_artifacts/feed/CommunityToolkit-Labs/NuGet/CommunityToolkit.Labs.WinUI.Shimmer

Read more about Preview Packages here.

Code

<labs:Shimmer Width="96" Height="96" />

Result
Shimmer

Docs & samples
https://github.com/CommunityToolkit/Labs-Windows/blob/main/components/Shimmer/samples

Additional info

TO DO

  • Add sample of using an ItemSelector to swap out a loading template with the loaded content.

FUTURE

  • It'd be really cool to investigate if we could make this easier to use, though I think that'll have to be an 8.1 thing, and this is basically just the raw component that knows how to fill a space and shimmer, eh?
  • Can we skip the XAML resource file and do something with a ContentPresenter or make it attachable to an UI element (like AttachedShadow?

Implementation Requirements

  • Working Prototype
  • Feature Complete
  • Documentation
  • Samples
  • Unit Tests
  • Community Feedback / Usage Testimonies

Tested Platforms

  • UWP
  • WinAppSDK / WinUI 3
  • Web Assembly (WASM)
  • Android
  • iOS
  • MacOS
  • Linux / GTK

Technical Review

  • Accessibility Audit
  • API/Naming Review
  • Code Quality/Style
  • Dependency Review
  • Design/Style Review
  • Final Approval

Community Help?

Yes

@niels9001 niels9001 added the experiment 🧪 Used to track issues that are experiments (or their linked discussions) label Mar 8, 2023
@niels9001 niels9001 added this to To do in Labs Launch via automation Mar 8, 2023
@niels9001 niels9001 added this to the Initial Release milestone Mar 8, 2023
@michael-hawker michael-hawker linked a pull request Mar 8, 2023 that will close this issue
Labs Launch automation moved this from To do to Done Mar 10, 2023
Labs Launch automation moved this from Done to In progress Mar 10, 2023
@dpaulino
Copy link

I'm using this and it works great. Question tho: how to make a perfectly round shimmer?

@JohnnyWestlake
Copy link

JohnnyWestlake commented May 31, 2024

Suggestion: turn this into a Brush instead, allowing all instances to share the same internal composition animation and brush to optimise performance and resource usage (rather than every single usage creating it's own brushes and animations).

Logic and internal implementation would largely stay the same.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
experiment 🧪 Used to track issues that are experiments (or their linked discussions)
Projects
Labs Launch
In progress
Status: Done
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants