Skip to content

Automatically Adjust Lightning & Swift Package Manager support#46

Merged
bdlukaa merged 11 commits intomasterfrom
rework
Dec 31, 2025
Merged

Automatically Adjust Lightning & Swift Package Manager support#46
bdlukaa merged 11 commits intomasterfrom
rework

Conversation

@bdlukaa
Copy link
Owner

@bdlukaa bdlukaa commented Dec 31, 2025

Fixes #43
Fixes #42

@gemini-code-assist
Copy link

Summary of Changes

Hello @bdlukaa, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request undertakes a significant rework of the system_theme Flutter plugin, focusing on modernizing its underlying infrastructure and improving its core functionality. Key changes include migrating the Android example to Kotlin DSL for Gradle and adopting Swift Package Manager for iOS and macOS, which simplifies build processes. Additionally, the plugin now offers more intelligent handling of accent color variants by automatically generating lightness adjustments when not natively provided, alongside more robust parsing for web-based color formats. These updates aim to enhance the plugin's stability, maintainability, and cross-platform consistency.

Highlights

  • Build System Modernization: The Android example project has been migrated to Kotlin DSL for Gradle, and the iOS/macOS platforms now leverage Swift Package Manager, streamlining dependency management and build configurations.
  • Enhanced Accent Color Handling: The plugin now automatically adjusts the lightness of accent color variants if the native platform doesn't provide them, with a new autoAdjustLightness flag for control. Web accent color parsing has also been made more robust to handle various CSS formats and alpha channels.
  • Expanded Test Coverage: New and comprehensive tests have been added to validate platform support, error handling (like MissingPluginException), custom fallback colors, and the new color variant generation logic.
  • Dependency and SDK Updates: The project's pubspec.yaml and pubspec.lock files have been updated to reflect a minimum SDK constraint of >=3.0.0 and the latest system_theme_web dependency.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This is a significant rework that modernizes the plugin by migrating to Gradle Kotlin DSL and Swift Package Manager, updating to Dart 3, and substantially improving the test suite. The new feature to automatically generate color variants when the platform doesn't provide them is a great addition. The code is much cleaner and more robust. I've identified a few minor issues: an inconsistent iOS deployment target in the podspec, some missing documentation in the README, and an opportunity to make the web color parsing even more robust.

@bdlukaa bdlukaa changed the title Rework Automatically Adjust Lightning & Swift Package Manager support Dec 31, 2025
@bdlukaa bdlukaa merged commit 8442ff2 into master Dec 31, 2025
@bdlukaa bdlukaa deleted the rework branch December 31, 2025 17:59
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.

[web] Range error when accessing accentColor Android: Namespace not specified.

1 participant