Skip to content

Conversation

@d-cas
Copy link
Contributor

@d-cas d-cas commented Oct 12, 2025

Fix Chromium Crash When Moving Windows Between Monitors

Problem

Chromium-based browsers (Chrome, Brave, etc.) crash instantly when dragging windows between monitors or moving them to different workspaces using Hyprland keybinds (super+shift+number). This started after recent Chromium updates enabled Wayland color management, which conflicts with Hyprland's implementation.

Note: A fix has landed upstream in Chromium but won't reach stable releases for approximately a month. This PR provides a temporary workaround in the meantime.

Solution

Add --disable-features=WaylandWpColorManagerV1 to default flag configs:

  • config/chromium-flags.conf
  • config/brave-flags.conf

These are deployed to ~/.config/ during Omarchy setup and apply automatically to all Chromium-based browsers.

Impact

  • ✅ Fixes crash when dragging between monitors
  • ✅ Fixes crash when using super+shift+number to move windows
  • ✅ Applies to all Chromium-based browsers
  • ⚠️ Temporary workaround until upstream fix reaches stable

Users can edit ~/.config/chromium-flags.conf to customize or remove the flag once the upstream fix lands in their Chromium version.

Testing

# Move browser window between monitors or workspaces
# Should not crash

# Verify flag is active:
ps aux | grep chromium | grep WaylandWpColorManagerV1

References

Adds --disable-features=WaylandWpColorManagerV1 to Chromium and Brave
flag configs to prevent crashes when moving windows between monitors or
workspaces on Hyprland. This is a workaround for a Chromium/Wayland
color management conflict.

Upstream Chromium fix exists but won't reach stable for ~a month. This
provides a temporary bridge until the fix lands in stable releases.

Fixes basecamp#2384
Refs basecamp#2184
Refs: hyprwm/Hyprland#11957
Refs: hyprwm/Hyprland#11961
Refs: https://issues.chromium.org/issues/40263183
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/7003036
@d-cas d-cas force-pushed the feature/chromium-flags-hyprland-fix branch from 9d623d8 to 35fdc8c Compare October 12, 2025 08:56
@dhh
Copy link
Member

dhh commented Oct 12, 2025

Need a migration to add this line to existing configs (use grep to check it's not already there, then sed to add it, see other migrations for the pattern).

@dhh dhh changed the base branch from master to dev October 12, 2025 23:45
@dhh dhh mentioned this pull request Oct 12, 2025
@d-cas
Copy link
Contributor Author

d-cas commented Oct 14, 2025

@dhh Added migration script to update existing user configs. The script:

  • Checks if configs exist before modifying
  • Uses grep to verify flag isn't already present
  • Adds the workaround flag to both Chromium and Brave configs

Ready for review!

Adds migration script to append --disable-features=WaylandWpColorManagerV1
to existing users' chromium-flags.conf and brave-flags.conf files.

The script:
- Checks if config files exist before attempting to modify them
- Uses grep to verify the flag isn't already present
- Only adds the flag and explanatory comment if needed
- Handles both Chromium and Brave configurations

This ensures existing Omarchy users get the Hyprland crash workaround
without needing to manually update their configs.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
@d-cas d-cas force-pushed the feature/chromium-flags-hyprland-fix branch from 052af9b to d9b2326 Compare October 14, 2025 00:43
@d-cas
Copy link
Contributor Author

d-cas commented Oct 14, 2025

Updated migration script to use sed instead of echo, following the pattern from migrations/1752543801.sh. More concise and matches the existing migration style.

@dhh dhh merged commit 800962b into basecamp:dev Oct 14, 2025
@Ngquang Ngquang mentioned this pull request Oct 16, 2025
@d-cas d-cas deleted the feature/chromium-flags-hyprland-fix branch October 18, 2025 21:45
ahartness pushed a commit to ahartness/omarchy-hrtns that referenced this pull request Oct 19, 2025
…ecamp#2394)

* fix: prevent Chromium crash when moving windows between monitors

Adds --disable-features=WaylandWpColorManagerV1 to Chromium and Brave
flag configs to prevent crashes when moving windows between monitors or
workspaces on Hyprland. This is a workaround for a Chromium/Wayland
color management conflict.

Upstream Chromium fix exists but won't reach stable for ~a month. This
provides a temporary bridge until the fix lands in stable releases.

Fixes basecamp#2384
Refs basecamp#2184
Refs: hyprwm/Hyprland#11957
Refs: hyprwm/Hyprland#11961
Refs: https://issues.chromium.org/issues/40263183
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/7003036

* Add migration to update existing Chromium/Brave configs with crash fix

Adds migration script to append --disable-features=WaylandWpColorManagerV1
to existing users' chromium-flags.conf and brave-flags.conf files.

The script:
- Checks if config files exist before attempting to modify them
- Uses grep to verify the flag isn't already present
- Only adds the flag and explanatory comment if needed
- Handles both Chromium and Brave configurations

This ensures existing Omarchy users get the Hyprland crash workaround
without needing to manually update their configs.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>

* Fix warnings and make conditional explicit

---------

Co-authored-by: Derek Castillo <[email protected]>
Co-authored-by: Claude <[email protected]>
Co-authored-by: David Heinemeier Hansson <[email protected]>
dhcrzf pushed a commit to dhcrzf/omarchy that referenced this pull request Oct 21, 2025
…ecamp#2394)

* fix: prevent Chromium crash when moving windows between monitors

Adds --disable-features=WaylandWpColorManagerV1 to Chromium and Brave
flag configs to prevent crashes when moving windows between monitors or
workspaces on Hyprland. This is a workaround for a Chromium/Wayland
color management conflict.

Upstream Chromium fix exists but won't reach stable for ~a month. This
provides a temporary bridge until the fix lands in stable releases.

Fixes basecamp#2384
Refs basecamp#2184
Refs: hyprwm/Hyprland#11957
Refs: hyprwm/Hyprland#11961
Refs: https://issues.chromium.org/issues/40263183
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/7003036

* Add migration to update existing Chromium/Brave configs with crash fix

Adds migration script to append --disable-features=WaylandWpColorManagerV1
to existing users' chromium-flags.conf and brave-flags.conf files.

The script:
- Checks if config files exist before attempting to modify them
- Uses grep to verify the flag isn't already present
- Only adds the flag and explanatory comment if needed
- Handles both Chromium and Brave configurations

This ensures existing Omarchy users get the Hyprland crash workaround
without needing to manually update their configs.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>

* Fix warnings and make conditional explicit

---------

Co-authored-by: Derek Castillo <[email protected]>
Co-authored-by: Claude <[email protected]>
Co-authored-by: David Heinemeier Hansson <[email protected]>
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.

Bug: Chromium crashes on Hyprland after update when moving chromium browsers between monitors

2 participants