Skip to content

Add "micaAlt" as a value for the useMica theme option - #20464

Open
Jay Patel (JayPatel095) wants to merge 12 commits into
microsoft:mainfrom
JayPatel095:mica-alt
Open

Add "micaAlt" as a value for the useMica theme option#20464
Jay Patel (JayPatel095) wants to merge 12 commits into
microsoft:mainfrom
JayPatel095:mica-alt

Conversation

@JayPatel095

@JayPatel095 Jay Patel (JayPatel095) commented Jul 23, 2026

Copy link
Copy Markdown

Summary of the Pull Request

Adds a "micaAlt" option to useMica using a string enum rather than a boolean (like the old system). Backward compat is maintained with the boolean values which is limited to using or not using mica w/o micaAlt.

References and Relevant Issues

Closes #17650

Detailed Description of the Pull Request / Additional comments

The old useMica was a boolean mapping to DWMSBT_MAINWINDOW or DWMSBT_NONE. This adds a third state for DWMSBT_TABBEDWINDOW, doing the same thing as CloseOnExitMode and bellStyle (boolean to enum).

To do this, the new MicaStyle enum was added in Theme.idl, a JSON_ENUM_WRAPPER for MicaStyle was added to TerminalSettingsSerializationHelpers.h with an override for booleans, various refactoring changes from boolean->enum, and some tests. Doc repo has ready-to-merge PR as well, mirroring the changes to closeOnExit rather than bellStyle, MicrosoftDocs/terminal#969.

No settings UI added, stays JSON-only.

Validation Steps Performed

Compiled on 25H2 Pro VM but transparent effects don't render over RDP -> sideloaded onto VMWare with 3D effects enabled -> took images below.

PR Checklist

old, false (no mica)
old_false

old, true (mica)
old_true

new, "none" (no mica)
new_none

new, "mica" (mica)
new_mica

new, "micaAlt" (micaAlt)
new_micaalt

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@JayPatel095

Copy link
Copy Markdown
Author

@microsoft-github-policy-service agree

Comment thread src/cascadia/WindowsTerminal/IslandWindow.cpp Fixed
@github-actions

This comment has been minimized.

@JayPatel095
Jay Patel (JayPatel095) marked this pull request as ready for review July 24, 2026 00:00
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@JayPatel095 Jay Patel (JayPatel095) changed the title Implement MicaAlt Add "micaAlt" as a value for the useMica theme option Jul 24, 2026
@JayPatel095

Copy link
Copy Markdown
Author

Mike Griese (@zadjii-msft) Mind starting CI?

@JayPatel095

Copy link
Copy Markdown
Author

/azp

@azure-pipelines

Copy link
Copy Markdown
Supported commands
  • help:
    • Get descriptions, examples and documentation about supported commands
    • Example: help "command_name"
  • list:
    • List all pipelines for this repository using a comment.
    • Example: "list"
  • run:
    • Run all pipelines or specific pipelines for this repository using a comment. Use this command by itself to trigger all related pipelines, or specify specific pipelines to run.
    • Example: "run" or "run pipeline_name, pipeline_name, pipeline_name"
  • where:
    • Report back the Azure DevOps orgs that are related to this repository and org
    • Example: "where"

See additional documentation.

@JayPatel095

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Commenter does not have sufficient privileges for PR 20464 in repo microsoft/terminal

@DHowett

Copy link
Copy Markdown
Member

Jay Patel (@JayPatel095) we mind starting CI before doing a review, yes, because the purpose of delaying CI is to prevent people from modifying the pipeline and compromising the build agent.

I see that you tried two times to interact with the azure pipelines bot, over the weekend when nobody would be around to watch. Should we be concerned?

@JayPatel095

Jay Patel (JayPatel095) commented Jul 27, 2026

Copy link
Copy Markdown
Author

Jay Patel (@JayPatel095) we mind starting CI before doing a review, yes, because the purpose of delaying CI is to prevent people from modifying the pipeline and compromising the build agent.

I'm a bit confused, since I only interacted with the bot 3 hours ago, as in this morning, specifically after 9. Otherwise it was just basic lint and the policy agreement. As in my only direct attempt to start CI was today, and otherwise it was a request to someone experienced enough to tell me if I was missing something or needed to wait, like how I now know you guys aren't CI-first. So, I don't really think there is an issue here.

@DHowett

Copy link
Copy Markdown
Member

ah, misread :)

@DHowett

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
1 pipeline(s) were filtered out due to trigger conditions.

@JayPatel095

Jay Patel (JayPatel095) commented Jul 27, 2026

Copy link
Copy Markdown
Author

Believe I'm using a too new clang-format that comes w/ VS 2026. Will take a look soon. I was just trying to format master... Fixed now.

@DHowett

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
1 pipeline(s) were filtered out due to trigger conditions.

@JayPatel095

Copy link
Copy Markdown
Author

Dustin L. Howett (@DHowett) Any next steps regarding review?

@JayPatel095

Copy link
Copy Markdown
Author

Dustin L. Howett (@DHowett) Mike Griese (@zadjii-msft) Hate to ping you guys on repeat but its been a while since CI passed

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.

Mica Alt

3 participants