Skip to content
This repository has been archived by the owner on May 1, 2024. It is now read-only.

[Tizen] Adds the Unified Theme Manager #11779

Merged
merged 1 commit into from
Aug 17, 2020

Conversation

rookiejava
Copy link
Collaborator

Description of Change

This PR adds a theme manager to efficiently and consistently manage values (parts, styles, etc.) that are dependent on the platform theme file from various profiles (Phone, TV, Watch, and so on) and Tizen products.

The constant values provided from the platform theme file (*.edc) are unified and managed through the ThemeConstants class. The ThemeConstants is composed of Style, Part, Signal, Resource, and ColorClass for each widget, and each item is also subdivided according to TargetIdiom.

ThemeManager is also newly added to make the each renderer implementation simpler and more intuitive. Instead of inconsistently hard-coded values in each renderer, you can use convenient and abstract utility methods provided by ThemeManager.

Issues Resolved

None

API Changes

namespace Xamarin.Forms.Platform.Tizen
Added:

  • class ThemeConstants
  • class ThemeManager
  • class FormsLayout and it's subclasses

namespace Xamarin.Forms.Platform.Tizen
Added:

  • class FormsWatchLayout and it's subclasses

Platforms Affected

-Tizen

Behavioral/Visual Changes

None

Before/After Screenshots

Not applicable

PR Checklist

  • Targets the correct branch
  • Tests are passing (or failures are unrelated)

@samhouts samhouts added this to In Review in vCurrent (4.8.0) Aug 14, 2020
@samhouts samhouts added this to In Review in Shell Aug 17, 2020
@samhouts samhouts added this to In Review in CarouselView Aug 17, 2020
@samhouts samhouts added this to In Review in CollectionView Aug 17, 2020
@samhouts samhouts added the API-change Heads-up to reviewers that this PR may contain an API change label Aug 17, 2020
@samhouts samhouts changed the base branch from 4.8.0 to 5.0.0 August 17, 2020 21:38
@samhouts samhouts merged commit 78b4b15 into xamarin:5.0.0 Aug 17, 2020
CollectionView automation moved this from In Review to Done Aug 17, 2020
CarouselView automation moved this from In Review to Done Aug 17, 2020
Shell automation moved this from In Review to Done Aug 17, 2020
vCurrent (4.8.0) automation moved this from In Review to Done Aug 17, 2020
@samhouts samhouts removed this from Done in vCurrent (4.8.0) Aug 17, 2020
@samhouts samhouts added this to Done in vNext+1 (5.0.0) Aug 17, 2020
@rookiejava
Copy link
Collaborator Author

@samhouts Can you cherry-pick this change to 4.8.0 branch? Upcoming PRs (including #11820) are dependent on this change, so it would be nice if it was applied in 4.8.0. (If not, we'll submit them all to the 5.0 branch.)

@samhouts
Copy link
Member

@rookiejava We're hoping to limit 4.8.0 to just regressions at this point, but I'm happy to make exceptions for you! It looks like #11820 is on 5.0.0, FYI, if you need that one retargeted. Thanks!

sung-su pushed a commit to sung-su/Xamarin.Forms that referenced this pull request Aug 20, 2020
@samhouts samhouts added this to Done in Sprint 175 Aug 24, 2020
@samhouts samhouts added this to the 4.8.0 milestone Aug 28, 2020
@samhouts samhouts added this to Done in vCurrent (4.8.0) Aug 28, 2020
@samhouts samhouts removed this from Done in CollectionView Nov 3, 2020
@samhouts samhouts removed this from Done in CarouselView Nov 3, 2020
@samhouts samhouts removed this from Done in Shell Nov 3, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
a/carouselview a/collectionview a/shell 🐚 API-change Heads-up to reviewers that this PR may contain an API change p/Tizen
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants