Skip to content
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

color management #5586

Closed
wants to merge 30 commits into from
Closed

color management #5586

wants to merge 30 commits into from

Conversation

akvadrako
Copy link

This adds basic color management to sway. It's a companion to swaywm/wlroots#2353.

Basically it just adds two options which control the ICC profile assigned to views and outputs, which are passed into wlroots where the conversion is done:

output * {
    color profile "edid-28a128-PHL-326M6V.icc"
}

for_window [title="glmark2"] {
    color profile "invert-22.icc"
}

See also: #1486.

Xyene and others added 20 commits July 15, 2020 19:22
If moving e.g. `T[app app]` into a new workspace with `workspace_layout
tabbed`, then post-move the tree in that workspace will be `T[T[app
app]]`. This still happens with horizontal or vertical workspace layout,
but is less visible since those containers have no decorations.

Fixes swaywm#5426.

(cherry picked from commit 92891fb)
sway_input_method_relay_set_focus was called before
sway_input_method_relay_init.

Closes: swaywm#5503
(cherry picked from commit 1bfbf26)
This causes a NULL pointer dereference.

(cherry picked from commit dfccd2a)
Avoids having applications connect to a leftover DISPLAY when Xwayland
fails to initialize.

(cherry picked from commit eb4fa18)
xdg-shell doesn't allow clients to set the title to NULL, so we
shouldn't need to call wlr_foreign_toplevel_handle_v1_set_title with an
empty string to reset the old one.

Closes: swaywm#5488
(cherry picked from commit b5a35c4)
Previously, we called output_disable prior to wlr_output_commit. This
mutates Sway's output state before the output commit actually succeeds.
This results in Sway's state getting out-of-sync with wlroots'.

An alternative fix [1] was to revert the changes made by output_disable
in case of failure. This is a little complicated. Instead, this patch
makes it so Sway's internal state is never changed before a successful
wlr_output commit.

We had two output flags: enabled and configured. However enabled was set
prior to the output becoming enabled, and was used to prevent the output
event handlers (specifically, the mode handler) from calling
apply_output_config again (infinite loop).

Rename enabled to enabling and use it exclusively for this purpose.
Rename configure to enabled, because that's what it really means.

[1]: swaywm#5521

Closes: swaywm#5483
(cherry picked from commit 5432f00)
**Problem**

When I rename the workspace to something like "1:web",
`$mod+1` does not move to the "1:web" with the default config. This breaks
the expectation of i3 users.

**Cause**

The default Sway binding for `$mod+1` does not have the number
keyword:

```
bindsym $mod+1 workspace 1
```

Instead, the default Sway binding for `$mod+1` is

```
bindsym Mod1+1 workspace number $ws1
```

i3/i3@e6662df
is the corresponding commit from i3.

(cherry picked from commit 585236f)
In case when slurp is used to select part of screen or a window, if user aborts
the selection, grimshot will capture the whole screen instead of exiting. This
is fixed with check for empty variable.

(cherry picked from commit c65cd1c)
On warping to a cursor hint, update the pointer position we track as
well, so that on the next pointer rebase we don't send an unexpected
synthetic motion event to clients.

Fixes swaywm#5405.

(cherry picked from commit 6b9a9b6)
(cherry picked from commit 9f944ff)
akvadrako and others added 9 commits August 3, 2020 11:23
sway 1.5.1

This is a bugfix release which adds support for wlroots 0.12.0.

Simon Ser (2):
      build: bump wlroots dependency to 0.12.0
      build: bump version to 1.5.1
This is now a mandatory dependency for wlroots.

(cherry picked from commit 276a37a)
@emersion emersion added the enhancement New feature or incremental improvement label Dec 21, 2021
@hajosattila
Copy link

hajosattila commented Jun 29, 2023

output * {
color profile "edid-28a128-PHL-326M6V.icc"
}

Sorry for the lame question, but how can I use a custom path?

@BlitDev
Copy link

BlitDev commented Mar 31, 2024

When will it be merged?

@FelixPehla
Copy link
Contributor

support for color management has been merged in #7681 , so I assume this can be closed?

@emersion
Copy link
Member

emersion commented Aug 7, 2024

Indeed, this has been superseded!

@emersion emersion closed this Aug 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or incremental improvement
Development

Successfully merging this pull request may close these issues.