Juanpe / SkeletonView

☠️ An elegant way to show users that something is happening and also prepare them to which contents they are awaiting
MIT License
12.5k stars 1.1k forks source link

Skeleton color's are incorrect when device and app's theme is different #556

Open rahulVermaSimpplr opened 3 months ago

rahulVermaSimpplr commented 3 months ago

Description

When the device theme is set to dark mode and the application's theme is configured to light mode using the code - overrideUserInterfaceStyle = .light, the skeleton component still renders in dark theme colors. This behavior is inconsistent with the app's theme and creates a visual inconsistency for users. Similarly, when the device theme is light and the app's theme is dark, the skeleton component should adapt to the light theme colors defined by the application. However, it continues to display in dark theme colors, leading to an inconsistent user experience.

What type of issue is this? (place an x in one of the [ ])

Requirements (place an x in each of the [ ])


Bug Report

Filling out the following details about bugs will help us solve your issue sooner.

SkeletonView Environment:

SkeletonView version: - 1.30.4 Xcode version: - tried on multiple versions - 15.0 & 15.2 & 15.3 Swift version: swift 5.9 & 5.10

Steps to reproduce:

Please replace this with the steps to reproduce the behavior.

  1. Set the device theme to dark mode.
  2. Configure the app's theme to light mode using overrideUserInterfaceStyle = .light.
  3. Observe the skeleton component rendering in dark theme colors instead of light theme colors.

Expected result:

  1. When the app's theme is set to light mode using overrideUserInterfaceStyle = .light, the skeleton component should render in light theme colors regardless of the device's theme settings.
  2. Conversely, when the app's theme is dark, the skeleton component should adapt to display in dark theme colors to maintain consistency with the overall app theme.

Actual result:

  1. Currently, when the app's theme is set to light mode using overrideUserInterfaceStyle = .light, the skeleton component renders in dark theme colors, which is inconsistent with the app's light theme.
  2. Similarly, when the app's theme is dark, the skeleton component continues to display in dark theme colors, rather than adapting to the app's dark theme settings.

Attachments:

Screenshot 2024-03-07 at 7 01 58 PM

Simulator Screenshot - iPhone 15 Pro - 2024-03-07 at 18 37 31

Simulator Screenshot - iPhone 15 Pro - 2024-03-07 at 18 43 50