Repository navigation
fix: reach the shell palette through Commons.Color - #67
Merged
Merged
Conversation
Qt 6.12 adds a Color type to QtQuick that shadows the shell's Color singleton for any file that refers to it unqualified. Omarchy moved its own QML to an aliased qs.Commons import and asks plugins to do the same; this changes all 110 references in the overlay. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
elberacasa
force-pushed
the
fix/qualify-commons-color
branch
from
October 11, 2026 00:36
1350843 to
435c89b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Qt 6.12 adds a
Colortype toQtQuick. In any QML file that imports bothQtQuickandqs.Commons, a bareColor.menu.textthen resolves to Qt's type instead of the shell's palette singleton, and the overlay loses its theme colors.Omarchy moved its own shell to an aliased import in omacom/omarchy@b83d3df and documents the same change for third-party plugins (
docs/omarchy-shell.md, "Theme tokens"): fixing the host shell does not change a plugin's import scope. Omarchy's temporary workaround that pinsQtQuickimports to 6.11 (omacom/omarchy@51717f1) buys time but is not the documented path.Changes
Commons.Color.*, withimport qs.Commons as Commonsbeside the existing import.PixelMark.qmlused nothing else fromqs.Commons, so it keeps only the aliased import. The other files still useStyle,UtilorBorderunqualified, as Omarchy's guide allows.Color.reference is left inplugin/.Checks
The aliased import is plain QML, so this works on today's Qt 6.11 as well as 6.12.
CommonsandUimodules (Qt 6.11.2, Quickshell 0.3.1), this branch andnextbehave the same:PixelMark,Icon,DpiTrack,SensitivityPanel,ActionLibraryandDeviceCanvasinstantiate with no binding warnings.IndicatorandOmalogicompile. They are not created because they start the helper.Commons.Colorresolves to the theme's palette.🤖 Generated with Claude Code