Skip to content

Adjust Hotkey Design #3394

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

Merged
merged 12 commits into from
Mar 30, 2025
Merged

Conversation

onesounds
Copy link
Contributor

What's the PR

  • A background has been added to shortcut key displays.
  • Relevant styles have been added.
  • Adjustments have been made to the theme design.
  • The color for the Discord theme has been adjusted.
  • The Darker Glass theme has been removed and will be replaced with the Rider theme for existing users.

Copy link

gitstream-cm bot commented Mar 28, 2025

🥷 Code experts: no user but you matched threshold 10

onesounds has most 👩‍💻 activity in the files.
onesounds has most 🧠 knowledge in the files.

See details

Flow.Launcher/Resources/Dark.xaml

Activity based on git-commit:

onesounds
MAR 10 additions & 8 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/Resources/Light.xaml

Activity based on git-commit:

onesounds
MAR 8 additions & 7 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/ResultListBox.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 66%

Flow.Launcher/Themes/Base.xaml

Activity based on git-commit:

onesounds
MAR 35 additions & 54 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 67%

Flow.Launcher/Themes/BlurBlack Darker.xaml

Activity based on git-commit:

onesounds
MAR 12 additions & 10 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 69%

Flow.Launcher/Themes/BlurBlack.xaml

Activity based on git-commit:

onesounds
MAR 10 additions & 7 deletions
FEB 1 additions & 1 deletions
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 68%

Flow.Launcher/Themes/BlurWhite.xaml

Activity based on git-commit:

onesounds
MAR 27 additions & 15 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 74%

Flow.Launcher/Themes/Cyan Dark.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 91%

Flow.Launcher/Themes/Darker Glass.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/Themes/Discord Dark.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/Themes/League.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/Themes/Midnight.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 83%

Flow.Launcher/Themes/Nord Darker.xaml

Activity based on git-commit:

onesounds
MAR
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 68%

Flow.Launcher/Themes/Pink.xaml

Activity based on git-commit:

onesounds
MAR 48 additions & 51 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 100%

Flow.Launcher/Themes/Win10System.xaml

Activity based on git-commit:

onesounds
MAR 6 additions & 2 deletions
FEB
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 80%

Flow.Launcher/Themes/Win11Light.xaml

Activity based on git-commit:

onesounds
MAR 6 additions & 6 deletions
FEB 5 additions & 1 deletions
JAN
DEC
NOV
OCT

Knowledge based on git-blame:
onesounds: 98%

To learn more about /:\ gitStream - Visit our Docs

This comment has been minimized.

Copy link

gitstream-cm bot commented Mar 28, 2025

Be a legend 🏆 by adding a before and after screenshot of the changes you made, especially if they are around UI/UX.

Copy link
Contributor

coderabbitai bot commented Mar 28, 2025

📝 Walkthrough

Walkthrough

This pull request updates multiple XAML resource and theme files in Flow.Launcher. New color brush resources have been added for hotkeys in both dark and light themes, while several hotkey style definitions are now updated to inherit from base styles using the BasedOn attribute. Additionally, many style properties—including padding, margin, font size, and border colors—have been reformatted or adjusted. The changes are additive and focus on improving visual consistency and clarity across the application’s UI elements.

Changes

File(s) Change Summary
Flow.Launcher/Resources/Dark.xaml, Flow.Launcher/Resources/Light.xaml Added new SolidColorBrush resources for hotkey foreground and background colors.
Flow.Launcher/ResultListBox.xaml Replaced the hotkey TextBlock with a wrapping Border and updated the selected item style trigger.
Flow.Launcher/Themes/Base.xaml Reduced hotkey font size from 15 to 12 and introduced new border-based hotkey styles.
Flow.Launcher/Themes/BlurBlack Darker.xaml, .../BlurBlack.xaml, .../BlurWhite.xaml Added a ResultMargin resource and updated hotkey styles to inherit from base styles via BasedOn.
Flow.Launcher/Themes/Cyan Dark.xaml Updated the BorderBrush color in the WindowBorderStyle.
Flow.Launcher/Themes/Darker Glass.xaml Modified QueryBox and suggestion box styles, updated WindowBorderStyle, added SeparatorStyle and HighlightStyle, and adjusted various foreground and layout properties.
Flow.Launcher/Themes/Discord Dark.xaml Changed padding and margin formatting; updated background, border, and hotkey styles to use base styles.
Flow.Launcher/Themes/League.xaml Converted padding and margin formats and updated hotkey styles to use the BasedOn attribute.
Flow.Launcher/Themes/Midnight.xaml Updated padding, margin, and BorderBrush color in styles (e.g., WindowBorderStyle).
Flow.Launcher/Themes/Nord Darker.xaml Changed margin formatting in SeparatorStyle and updated hotkey styles with base style inheritance and a new foreground.
Flow.Launcher/Themes/Pink.xaml Updated hotkey styles to use the BasedOn attribute and removed fixed font size, maintaining consistent foreground.
Flow.Launcher/Themes/Win10System.xaml Updated hotkey styles with base inheritance and reduced font size from 13 to 11.
Flow.Launcher/Themes/Win11Light.xaml Changed hotkey styles by updating font size, switching to NewHotkeyForeground, and adding border-based background styles.
Flow.Launcher/Themes/Circle System.xaml, .../Dracula.xaml, .../SlimLight.xaml, .../Sublime.xaml, .../Ubuntu.xaml Updated padding formatting for QueryBoxStyle and QuerySuggestionBoxStyle across multiple themes, removing vertical padding.

Suggested labels

enhancement, kind/ui

Suggested reviewers

  • Jack251970

Poem

I'm a bunny in the code garden,
Hopping through XAML with a joyful heart.
Colors bloom like carrots in vibrant rows,
Styles now dance in a refined art.
I nibble on changes with a happy start! 🥕


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 20f2fec and 9e11c9c.

📒 Files selected for processing (12)
  • Flow.Launcher/Themes/Circle System.xaml (2 hunks)
  • Flow.Launcher/Themes/Cyan Dark.xaml (3 hunks)
  • Flow.Launcher/Themes/Darker Glass.xaml (4 hunks)
  • Flow.Launcher/Themes/Discord Dark.xaml (6 hunks)
  • Flow.Launcher/Themes/Dracula.xaml (2 hunks)
  • Flow.Launcher/Themes/League.xaml (5 hunks)
  • Flow.Launcher/Themes/Midnight.xaml (7 hunks)
  • Flow.Launcher/Themes/Pink.xaml (1 hunks)
  • Flow.Launcher/Themes/SlimLight.xaml (2 hunks)
  • Flow.Launcher/Themes/Sublime.xaml (2 hunks)
  • Flow.Launcher/Themes/Ubuntu.xaml (2 hunks)
  • Flow.Launcher/Themes/Win10System.xaml (3 hunks)
✅ Files skipped from review due to trivial changes (2)
  • Flow.Launcher/Themes/Dracula.xaml
  • Flow.Launcher/Themes/Circle System.xaml
🚧 Files skipped from review as they are similar to previous changes (7)
  • Flow.Launcher/Themes/League.xaml
  • Flow.Launcher/Themes/Cyan Dark.xaml
  • Flow.Launcher/Themes/Darker Glass.xaml
  • Flow.Launcher/Themes/Discord Dark.xaml
  • Flow.Launcher/Themes/Midnight.xaml
  • Flow.Launcher/Themes/Pink.xaml
  • Flow.Launcher/Themes/Win10System.xaml
🔇 Additional comments (6)
Flow.Launcher/Themes/Ubuntu.xaml (2)

35-35: Good UI adjustment to standardize vertical padding

The removal of top padding in both QueryBoxStyle and QuerySuggestionBoxStyle creates a more compact and consistent appearance across different themes. This change appears to be part of a broader effort to standardize the padding values throughout the application.

Also applies to: 46-46


35-35: Good UI adjustment to standardize vertical padding

The removal of top padding in both QueryBoxStyle and QuerySuggestionBoxStyle creates a more compact and consistent appearance across different themes. This change appears to be part of a broader effort to standardize the padding values throughout the application.

Also applies to: 46-46

Flow.Launcher/Themes/Sublime.xaml (2)

24-24: Consistent padding adjustment to improve text alignment

The removal of top padding (changing from "0,4,66,0" to "0,0,66,0") in both text box styles aligns with the same changes made in other theme files. This improves visual consistency across the application's various themes and creates a cleaner text alignment.

Also applies to: 33-33


24-24: Consistent padding adjustment to improve text alignment

The removal of top padding (changing from "0,4,66,0" to "0,0,66,0") in both text box styles aligns with the same changes made in other theme files. This improves visual consistency across the application's various themes and creates a cleaner text alignment.

Also applies to: 33-33

Flow.Launcher/Themes/SlimLight.xaml (2)

30-30: Standardized padding for consistent text box appearance

The removal of top padding from "0,2,42,0" to "0,0,42,0" in both query styles aligns with similar changes across other theme files. This is part of a systematic effort to create a more consistent UI experience while maintaining the theme-specific horizontal spacing (42px right padding).

Also applies to: 40-40


30-30: Standardized padding for consistent text box appearance

The removal of top padding from "0,2,42,0" to "0,0,42,0" in both query styles aligns with similar changes across other theme files. This is part of a systematic effort to create a more consistent UI experience while maintaining the theme-specific horizontal spacing (42px right padding).

Also applies to: 40-40


🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai plan to trigger planning for file edits and PR creation.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
Flow.Launcher/Themes/Cyan Dark.xaml (1)

59-59: Updated BorderBrush Color in WindowBorderStyle

The BorderBrush value is updated from #09181e to #1e292f. This change appears intended to harmonize the window border color with the overall refreshed theme aesthetics. Please verify that the new color provides sufficient contrast against the background (#0f1f26) and aligns with the visual consistency across other themes in the application—especially given the PR’s emphasis on enhancing UI visibility and design.

Flow.Launcher/Themes/Base.xaml (1)

387-390: Remember to address the typo in this style name.

This style has a typo in its name ("Seleceted" instead of "Selected") as noted in the comment above it. While you've correctly updated its font size, consider renaming this style in a future PR for better code maintainability.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 697fb72 and f8aee15.

📒 Files selected for processing (16)
  • Flow.Launcher/Resources/Dark.xaml (2 hunks)
  • Flow.Launcher/Resources/Light.xaml (1 hunks)
  • Flow.Launcher/ResultListBox.xaml (2 hunks)
  • Flow.Launcher/Themes/Base.xaml (1 hunks)
  • Flow.Launcher/Themes/BlurBlack Darker.xaml (2 hunks)
  • Flow.Launcher/Themes/BlurBlack.xaml (2 hunks)
  • Flow.Launcher/Themes/BlurWhite.xaml (2 hunks)
  • Flow.Launcher/Themes/Cyan Dark.xaml (1 hunks)
  • Flow.Launcher/Themes/Darker Glass.xaml (4 hunks)
  • Flow.Launcher/Themes/Discord Dark.xaml (5 hunks)
  • Flow.Launcher/Themes/League.xaml (5 hunks)
  • Flow.Launcher/Themes/Midnight.xaml (7 hunks)
  • Flow.Launcher/Themes/Nord Darker.xaml (2 hunks)
  • Flow.Launcher/Themes/Pink.xaml (1 hunks)
  • Flow.Launcher/Themes/Win10System.xaml (1 hunks)
  • Flow.Launcher/Themes/Win11Light.xaml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: gitStream.cm
🔇 Additional comments (54)
Flow.Launcher/Resources/Light.xaml (1)

54-55: New color resources added for hotkey styling

The addition of these two color resources is aligned with the PR objectives to enhance the visual presentation of shortcut key displays. The semi-transparent black colors are appropriate for a light theme:

  • NewHotkeyForeground with 37% opacity provides good contrast for text
  • BasicHotkeyBGColor with 4% opacity creates a subtle background that won't overwhelm the UI
Flow.Launcher/Resources/Dark.xaml (1)

61-62: Good addition of hotkey-specific color resources!

These new color brushes enhance the visual presentation of shortcut keys as mentioned in the PR objectives. The semi-transparent white colors (#44FFFFFF for foreground and #13FFFFFF for background) are appropriate for the dark theme, providing subtle contrast without being too prominent.

Flow.Launcher/Themes/Base.xaml (6)

353-356: Good adjustment to hotkey font size.

Reducing the font size from 15 to 12 for the base hotkey style makes the text more proportionate for the new background container being added in this PR.


357-360: Good consistency in hotkey selected state styling.

The selected state mirrors the same font size reduction as the normal state, maintaining visual consistency when items are selected.


361-366: Excellent addition of hotkey background style.

The new background style with semi-transparent background (#138A8A8A) and rounded corners (4px) creates a distinct visual element for hotkeys that will improve readability and user experience.


367-372: Good background styling for selected state.

The selected state background maintains the same visual properties as the normal state, providing consistency in the hotkey appearance.


373-380: Well-structured style inheritance pattern.

The ItemHotkeyBGStyle properly inherits from BaseItemHotkeyBGStyle while allowing for theme-specific overrides, following good XAML practices for maintainability.


381-384: Clean implementation of selected background style.

The selected background style follows the same inheritance pattern as its non-selected counterpart, maintaining consistency in the styling architecture.

Flow.Launcher/ResultListBox.xaml (2)

68-85: Great enhancement to hotkey display with background container.

Wrapping the hotkey TextBlock with a Border provides proper visual distinction for keyboard shortcuts. The approach preserves the existing visibility binding through the Border's Visibility property, ensuring the functionality remains unchanged while the presentation is improved.


218-218: Good handling of selected state styling.

Adding the style setter for the HotkeyBG element in the selected state ensures proper visual feedback when an item is selected, which improves the overall UI consistency.

Flow.Launcher/Themes/Win11Light.xaml (3)

158-161: Good refinement of hotkey typography for Win11Light theme.

Adjusting the font size from 12 to 11 and using the dynamic NewHotkeyForeground resource improves the visual harmony of hotkeys in this theme. The smaller font size works well with the added background container.


162-165: Good consistency in selected state styling.

The selected state maintains the same refined font size and color treatment as the normal state, ensuring visual consistency for users.


166-177: Well-implemented theme-specific background styles.

These styles properly inherit from the base styles while specifying a theme-appropriate background color using BasicHotkeyBGColor. This implementation follows good practices by centralizing shared properties in base styles while allowing for theme-specific customization.

Flow.Launcher/Themes/League.xaml (2)

14-14: Good formatting consistency for spacing in property values.

Changing from comma-separated to space-separated format (0,0,66,00 0 66 0) improves consistency with WPF's preferred formatting style across multiple properties.

Also applies to: 29-29, 60-60, 148-148


114-119: Good refactoring to use style inheritance.

Adding the BasedOn attribute to inherit from base styles (BaseItemHotkeyStyle and BaseItemHotkeySelectedStyle) improves maintainability by centralizing common properties while preserving theme-specific overrides for color.

Also applies to: 120-125

Flow.Launcher/Themes/BlurBlack.xaml (3)

17-17: The ResultMargin addition ensures consistent spacing.

Adding this thickness resource helps maintain consistent spacing between result items, improving the overall visual hierarchy and readability of search results.


146-152: Good refactoring of ItemHotkeyStyle to inherit from base style.

This change improves code maintainability by inheriting properties from the base style while preserving theme-specific foreground color and opacity settings. This pattern of style inheritance helps ensure consistency across multiple themes.


153-159: Good refactoring of ItemHotkeySelectedStyle to inherit from base style.

Similar to the previous change, this refactoring improves maintainability while keeping theme-specific foreground and opacity intact. This approach ensures visual consistency for selected hotkeys.

Flow.Launcher/Themes/Pink.xaml (2)

116-121: Good refactoring of ItemHotkeyStyle to inherit from base style.

The change to inherit from BaseItemHotkeyStyle while maintaining the theme-specific pink foreground (#ed92c9) ensures visual consistency with the Pink theme while benefiting from common styling defined in the base style.


122-127: Good refactoring of ItemHotkeySelectedStyle to inherit from base style.

Similar to the previous change, this refactoring improves maintainability by inheriting from BaseItemHotkeySelectedStyle while preserving the theme-specific pink foreground color.

Flow.Launcher/Themes/BlurBlack Darker.xaml (3)

18-18: The ResultMargin addition ensures consistent spacing.

This thickness resource maintains consistent spacing between result items, improving visual hierarchy and ensuring a uniform appearance across different themes.


149-155: Good refactoring of ItemHotkeyStyle to inherit from base style.

This change improves code maintainability by inheriting from BaseItemHotkeyStyle while preserving the theme's specific foreground color and lower opacity setting (0.2), which fits with the "Darker" theme variant.


156-162: Good refactoring of ItemHotkeySelectedStyle to inherit from base style.

This refactoring improves maintainability by inheriting from BaseItemHotkeySelectedStyle while keeping the theme-specific lower opacity setting for selected hotkeys, maintaining the darker aesthetic.

Flow.Launcher/Themes/Win10System.xaml (2)

116-122: Good refactoring with appropriate font size adjustment.

The change to inherit from BaseItemHotkeyStyle while reducing the font size to 11px improves the visual presentation of hotkeys in the Windows 10 style. The smaller font size is appropriate for hotkey display and aligns with the Windows 10 design language.


123-129: Good refactoring with appropriate font size adjustment for selected hotkeys.

Similar to the previous change, this refactoring improves style inheritance while reducing the font size to 11px for selected hotkeys. The smaller font size works well for hotkey displays while maintaining consistency with the Windows 10 system theme.

Flow.Launcher/Themes/BlurWhite.xaml (3)

17-17: Added consistent result margin resource.

Adding a standard ResultMargin resource helps maintain consistent spacing across UI elements.


153-159: Improved hotkey style inheritance.

The hotkey style now inherits from the base style, which promotes better code reuse and consistency across themes. This change aligns with the PR objective to enhance the visual presentation of shortcut key displays.


160-166: Improved selected hotkey style inheritance.

Similar to the regular hotkey style, the selected state now properly inherits from its base style, ensuring consistent appearance and behavior.

Flow.Launcher/Themes/Nord Darker.xaml (3)

43-43: Standardized margin format.

Changed from comma-separated to space-separated margin values for consistency with other themes.


119-124: Enhanced hotkey style with base inheritance.

The hotkey style now inherits from BaseItemHotkeyStyle while retaining its theme-specific foreground color, aligning with the PR's goal to enhance shortcut key displays.


125-130: Enhanced selected hotkey style with base inheritance.

Similar to the standard hotkey style, the selected state now inherits from a base style while preserving the theme-specific foreground color.

Flow.Launcher/Themes/Midnight.xaml (7)

19-19: Standardized padding format.

Changed from comma-separated to space-separated padding values for consistency across themes.


29-29: Standardized padding format for query suggestions.

Same format standardization applied to the query suggestion box padding.


41-41: Updated border color.

Changed border color from #111828 to #202938 for better contrast and visual appeal.


74-74: Standardized separator margin format.

Changed from comma-separated to space-separated margin values for consistency.


125-125: Standardized search icon margin format.

Changed from comma-separated to space-separated margin values for consistency.


152-152: Standardized clock panel margin format.

Changed from comma-separated to space-separated margin values for consistency.


170-170: Standardized preview border margin format.

Changed from comma-separated to space-separated margin values for consistency.

Flow.Launcher/Themes/Discord Dark.xaml (12)

24-24: Standardized padding format for query box.

Changed from comma-separated to space-separated padding values for consistency across themes.


31-31: Updated query suggestion background color.

Changed from #36393f to #2e2e34 to better align with the Discord theme's revised color scheme as mentioned in the PR objectives.


34-34: Standardized padding format for query suggestions.

Same format standardization applied to the query suggestion box padding.


41-42: Updated border and background colors.

Changed border color from #2f3136 to #3a3a41 and background from #36393f to #2e2e34 to create a more cohesive Discord theme as mentioned in the PR objectives.

Also applies to: 43-43


94-94: Updated selected item background color.

Changed from #49443c to #36363d to better match the revised Discord theme color scheme.


101-101: Simplified highlight style.

Removed unnecessary style properties while maintaining the style's presence for theme consistency.


102-108: Enhanced hotkey style with base inheritance.

The hotkey style now inherits from BaseItemHotkeyStyle while preserving theme-specific colors, supporting the PR's goal to enhance shortcut key displays.


109-115: Enhanced selected hotkey style with base inheritance.

Similar to the standard hotkey style, the selected state now inherits from a base style while preserving theme-specific colors.


129-129: Updated scrollbar thumb background color.

Changed from #202225 to #787881 for better visibility against the updated theme colors.


146-146: Updated separator fill color.

Changed to #3a3a41 to match the updated border color scheme for visual consistency.


148-148: Adjusted separator margin.

Changed from 12,0,12,6 to 0 0 0 0 to create a more streamlined appearance in the Discord theme.


175-175: Added consistent margin to preview border.

Added a margin setter with value 0 0 0 0 to ensure consistent styling for the preview component.

Flow.Launcher/Themes/Darker Glass.xaml (4)

1-5: Theme renamed from "Darker Glass" to "Rider"

The theme has been renamed as mentioned in the PR objectives where "Darker Glass theme has been removed and will be replaced with the Rider theme". This change ensures users will now see the proper naming in the theme selection.


150-152: Comprehensive theme redesign with consistent color palette

The changes provide a complete overhaul of the Rider theme (previously Darker Glass) with consistent styling across all UI elements. The color palette consistently uses:

  • Light text: #dfe1e5
  • Muted text: #6f737a
  • Borders: #393b40
  • Backgrounds: #2b2d30
  • Selected items: #2e436e

The corner radius of 8px is consistently applied to containers, along with standardized margins and padding. These changes create a cohesive visual experience that aligns with the PR's objective to "enhance the visual presentation" and ensure "a more cohesive user experience."

Also applies to: 24-27, 34-38, 45-49, 63-195


117-117: ScrollBarStyle simplified to inherit only from base style

The ScrollBarStyle has been simplified to only inherit from BaseScrollBarStyle without additional properties. This is consistent with other style simplifications in this theme, relying more on base styles for common properties.


81-81:

✅ Verification successful

HighlightStyle is defined but empty

The HighlightStyle is declared but doesn't contain any property setters. Was this intentional? It might be meant to override an existing style with empty values, but if properties are needed, they should be added.


🌐 Web query:

What is the purpose of an empty style in WPF XAML?

💡 Result:

An empty style in WPF XAML serves specific purposes related to overriding existing styles, resetting control appearances, and enabling custom styling workflows. Here are its primary functions:

1. Overriding Implicit Styles

By defining an empty style with a TargetType and an x:Key, you can explicitly set a control's Style property to this key. This prevents the control from inheriting any implicit styles (styles without x:Key that automatically apply to all controls of the same type)[1][7]. For example:

<Style x:Key="EmptyButtonStyle" TargetType="Button" />  
<Button Style="{StaticResource EmptyButtonStyle}" />  

This ensures the button uses its default properties instead of any globally defined implicit styles.

2. Resetting to Default Appearance

Empty styles can act as a reset mechanism. If a control has unwanted style modifications (e.g., from third-party libraries like Material Design), applying an empty style or setting Style="{x:Null}" forces the control to revert to its built-in default template[5][8]. This is useful when troubleshooting styling conflicts.

3. Template for Custom Styling

Empty styles are often created as a starting point for defining new styles. In Visual Studio, right-clicking a control and selecting Create Empty generates a minimal style structure, allowing incremental customization without inheriting unintended properties[1][4]. For example:

<Style TargetType="Button">  
    <!-- Add Setters/Triggers here -->  
</Style>  

4. Enabling Control-Specific Styling

When merged resource dictionaries or global styles conflict, an empty style scoped to a specific control can override broader rules while preserving local property adjustments. This isolates styling changes to individual controls.

Key Considerations

  • Implicit vs. Explicit: Styles without x:Key apply universally to all matching controls, while empty styles with x:Key require explicit application[1][7].
  • Performance: Overusing empty styles can lead to redundancy. Use them judiciously to avoid unnecessary resource bloat[4][7].

By leveraging empty styles, developers gain fine-grained control over styling inheritance and maintainability in WPF applications.

Citations:


Action: Confirm if the empty style is intentional

The empty <Style x:Key="HighlightStyle" /> appears to be used to explicitly override any implicit or default styles applied to the control. In WPF, defining an empty style can intentionally reset or clear inherited styling, which is an accepted practice if no specific property values are desired. If the goal was to remove unwanted styling without introducing new setters, then leaving it empty is appropriate. However, if additional customization is needed, please add the necessary property setters.

  • File: Flow.Launcher/Themes/Darker Glass.xaml, Line 81
  • Intended Behavior: Overriding inherited styles / resetting control appearance
  • Suggestion: Consider adding an inline comment to clarify the intent if the empty style is meant to override default behavior.

This comment has been minimized.

# Conflicts:
#	Flow.Launcher/Themes/Discord Dark.xaml

This comment has been minimized.

@onesounds
Copy link
Contributor Author

@coderabbitai I replaced all the text alignments in the query box to be vertically centered. Could you check if I missed any themes?

Copy link
Contributor

coderabbitai bot commented Mar 29, 2025

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# First, let's find all theme files in the repository
echo "Finding all theme files in the repository:"
find . -name "*.xaml" | grep -i "/themes/" | sort

# Let's check each theme file for QueryBoxStyle with Padding property
echo -e "\nFiles with QueryBoxStyle and Padding that might need checking:"
find . -name "*.xaml" | grep -i "/themes/" | xargs grep -l "QueryBoxStyle" | xargs grep -l "Padding" | sort

# Now let's extract the Padding values to check for any non-zero vertical padding
echo -e "\nChecking QueryBoxStyle Padding values in each theme file:"
for file in $(find . -name "*.xaml" | grep -i "/themes/" | xargs grep -l "QueryBoxStyle" | xargs grep -l "Padding" | sort); do
  echo -e "\nFile: $file"
  grep -A 5 "QueryBoxStyle" $file | grep -i "Padding" | head -1
done

# Also check QuerySuggestionBoxStyle
echo -e "\nChecking QuerySuggestionBoxStyle Padding values in each theme file:"
for file in $(find . -name "*.xaml" | grep -i "/themes/" | xargs grep -l "QuerySuggestionBoxStyle" | xargs grep -l "Padding" | sort); do
  echo -e "\nFile: $file"
  grep -A 5 "QuerySuggestionBoxStyle" $file | grep -i "Padding" | head -1
done

Length of output: 10592


🏁 Script executed:

#!/bin/bash
# Use find and read to handle spaces in filenames correctly
echo "Checking all theme files for QueryBoxStyle and QuerySuggestionBoxStyle padding values:"
find ./Flow.Launcher/Themes -name "*.xaml" -type f | while read -r file; do
  echo -e "\nFile: $file"
  
  # Check QueryBoxStyle Padding
  echo "--- QueryBoxStyle Padding ---"
  grep -A 5 "QueryBoxStyle" "$file" | grep -i "Padding" | head -1
  
  # Check QuerySuggestionBoxStyle Padding
  echo "--- QuerySuggestionBoxStyle Padding ---"
  grep -A 5 "QuerySuggestionBoxStyle" "$file" | grep -i "Padding" | head -1
done

Length of output: 11319


@onesounds I've checked all the theme files in the repository and found that you've successfully updated all query box paddings to be vertically centered. Here's what I found:

  1. All theme files that define QueryBoxStyle and/or QuerySuggestionBoxStyle with Padding properties now have values with 0 vertical padding (e.g., 0 0 50 0 or 0,0,42,0).

  2. The following themes have explicitly defined Padding values, and all have been properly updated:

    • Base.xaml
    • Circle System.xaml
    • Cyan Dark.xaml
    • Darker Glass.xaml
    • Discord Dark.xaml
    • Dracula.xaml
    • League.xaml
    • Midnight.xaml
    • SlimLight.xaml
    • Sublime.xaml
    • Ubuntu.xaml
    • Win10System.xaml
    • Win11Light.xaml
  3. Some themes don't explicitly define these styles or padding properties, likely inheriting from base styles, which have also been updated.

You've done a thorough job - I didn't find any themes with non-zero vertical padding in the query boxes.

@onesounds onesounds enabled auto-merge March 29, 2025 14:34
@onesounds onesounds requested a review from Jack251970 March 29, 2025 14:35
Copy link

@check-spelling-bot Report

🔴 Please review

See the 📂 files view, the 📜action log, or 📝 job summary for details.

❌ Errors Count
❌ forbidden-pattern 22
⚠️ noisy-file 1
⚠️ non-alpha-in-dictionary 19

See ❌ Event descriptions for more information.

If the flagged items are 🤯 false positives

If items relate to a ...

  • binary file (or some other file you wouldn't want to check at all).

    Please add a file path to the excludes.txt file matching the containing file.

    File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.

    ^ refers to the file's path from the root of the repository, so ^README\.md$ would exclude README.md (on whichever branch you're using).

  • well-formed pattern.

    If you can write a pattern that would match it,
    try adding it to the patterns.txt file.

    Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.

    Note that patterns can't match multiline strings.

@@ -214,6 +215,7 @@
<Setter TargetName="Title" Property="Style" Value="{DynamicResource ItemTitleSelectedStyle}" />
<Setter TargetName="SubTitle" Property="Style" Value="{DynamicResource ItemSubTitleSelectedStyle}" />
<Setter TargetName="Hotkey" Property="Style" Value="{DynamicResource ItemHotkeySelectedStyle}" />
<Setter TargetName="HotkeyBG" Property="Style" Value="{DynamicResource ItemHotkeyBGSelectedStyle}" />
Copy link
Member

Choose a reason for hiding this comment

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

Huh do we really need this? And the x:Name for the border🤔

Copy link
Contributor

Choose a reason for hiding this comment

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

it is okay here. the hotkey of the selected item will have a slight difference.

image

@taooceros taooceros requested a review from Copilot March 29, 2025 19:24
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot reviewed 1 out of 21 changed files in this pull request and generated no comments.

Files not reviewed (20)
  • Flow.Launcher/Resources/Dark.xaml: Language not supported
  • Flow.Launcher/Resources/Light.xaml: Language not supported
  • Flow.Launcher/ResultListBox.xaml: Language not supported
  • Flow.Launcher/Themes/Base.xaml: Language not supported
  • Flow.Launcher/Themes/BlurBlack Darker.xaml: Language not supported
  • Flow.Launcher/Themes/BlurBlack.xaml: Language not supported
  • Flow.Launcher/Themes/BlurWhite.xaml: Language not supported
  • Flow.Launcher/Themes/Circle System.xaml: Language not supported
  • Flow.Launcher/Themes/Cyan Dark.xaml: Language not supported
  • Flow.Launcher/Themes/Darker Glass.xaml: Language not supported
  • Flow.Launcher/Themes/Discord Dark.xaml: Language not supported
  • Flow.Launcher/Themes/Dracula.xaml: Language not supported
  • Flow.Launcher/Themes/League.xaml: Language not supported
  • Flow.Launcher/Themes/Midnight.xaml: Language not supported
  • Flow.Launcher/Themes/Nord Darker.xaml: Language not supported
  • Flow.Launcher/Themes/Pink.xaml: Language not supported
  • Flow.Launcher/Themes/SlimLight.xaml: Language not supported
  • Flow.Launcher/Themes/Sublime.xaml: Language not supported
  • Flow.Launcher/Themes/Ubuntu.xaml: Language not supported
  • Flow.Launcher/Themes/Win10System.xaml: Language not supported

@onesounds onesounds merged commit f07c09f into Flow-Launcher:dev Mar 30, 2025
4 checks passed
@Jack251970 Jack251970 added kind/ui related to UI, icons, themes, etc and removed 10 min review labels Mar 30, 2025
@Jack251970 Jack251970 added this to the 1.20.0 milestone Mar 30, 2025
@jjw24 jjw24 added the enhancement New feature or request label Apr 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request kind/ui related to UI, icons, themes, etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants