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

Added config option 'picomfix' to fix disappearing in picom. #63

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion keynav.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ static int nviewports = 0;
static int xinerama = 0;
static int daemonize = 0;
static int is_daemon = False;
static int picomfix = False;

static Display *dpy;
static Window zone;
Expand Down Expand Up @@ -604,6 +605,8 @@ int parse_config_line(char *orig_line) {
handle_commands(keyseq);
} else if (strcmp(keyseq, "loadconfig") == 0) {
handle_commands(keyseq);
} else if (strcmp(keyseq, "picomfix") == 0) {
picomfix=True;
} else {
keycode = parse_keycode(keyseq);
if (keycode == 0) {
Expand Down Expand Up @@ -1419,7 +1422,9 @@ void update() {
if (((clip || draw) + (move || resize)) > 1) {
/* more than one action to perform, unmap to hide move/draws
* to reduce flickering */
XUnmapWindow(dpy, zone);
if (picomfix == False) {
XUnmapWindow(dpy, zone);
}
}

if (clip || draw) {
Expand Down
5 changes: 5 additions & 0 deletions keynav.pod
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,11 @@ This will make keynav background itself after parsing the config file and
setting up keybindings. If there are errors during keybinding, then keynav
will not background and will exit with failure.

=item B<picomfix>

This will fix an issue where keynav disappears when the picom compositor is
running, enabling this may cause more flickering.

=item B<clear>

This wil clear all existing keybindings. This is useful if, for example, you do
Expand Down
3 changes: 3 additions & 0 deletions keynavrc
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
# Use 'daemonize' to background ourselves.
#daemonize

# Use 'picomfix' to fix issues associated with the picom compositor. May cause flickering.
# picomfix

ctrl+semicolon start
Escape end
ctrl+bracketleft end
Expand Down