Feature: #27: Detect shaped windows and disable shadow on them

- Optionally detect shaped windows using X Shape extension and disable
  shadow on them with --shadow-ignore-shaped.

- Some windows are bounding-shaped just to support rounded corners, like
  Chromium windows (when system titlebar is disabled in its settings).
  Add --detect-rounded-corners to treat them as non-shaped windows (thus
  enable shadow on them). The algorithm I use is not perfect and wrong
  detection results are pretty possible to appear.

- Many windows don't use X Shape extensions to add shapes but use ARGB
  background instead. These windows could only be blacklisted with
  --shadow-blacklist.

- Rename a few functions. Code clean up.
This commit is contained in:
Richard Grenville
2012-10-01 10:34:40 +08:00
parent 8d7d6405b6
commit 2f0417cd74
3 changed files with 194 additions and 64 deletions

View File

@ -12,6 +12,7 @@ shadow-offset-y = -7;
# shadow-blue = 0.0;
shadow-exclude = [ "n:e:Notification" ];
# shadow-exclude = "n:e:Notification";
shadow-ignore-shaped = true;
# Opacity
menu-opacity = 0.8;
@ -29,6 +30,7 @@ fade-out-step = 0.03;
# Other
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-rounded-corners = true;
# Window type settings
wintypes: