GithubHelp home page GithubHelp logo

Comments (7)

 avatar commented on August 24, 2024 2

Just to finish off:
full-shadow works very well on my computers and I can't see any side effects.
Only the Firefox toolbar menu "Bookmarks Menu" is a different window type: popup_menu instead of utility.

wintypes: {
    utility = { full-shadow = true; };
    popup_menu = { full-shadow = true; }; # Firefox Bookmarks Menu
};

from picom.

yshui avatar yshui commented on August 24, 2024

The proper solution is to handle shaped window properly. That will hopefully be implemented soon.

clear-shadow is not a very good solution, since it breaks something when enabled (e.g. firefox menu), and it also breaks something when disabled (e.g. semi-transparent windows).

from picom.

yshui avatar yshui commented on August 24, 2024

Looks like the firefox menu does not set its shape. I reported this to upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1505588

from picom.

 avatar commented on August 24, 2024

Thank you yshui. It's like you said - disabling clear-shadow has a negative effect on semi-transparent windows (IMHO acceptable with soft shadows):

###########
# Backend #
###########
backend = "glx";
paint-on-overlay = true;       # most other compositors paint on the overlay window nowadays
glx-no-stencil = true;         # usually increases performance quite significantly (around 15%)
glx-no-rebind-pixmap = true;   # useful if you have a window with content rapidly changing
glx-copy-from-front = false;   # worst glx-swap-method
glx-swap-method = 3;           # use a triple-buffer (2 = double-buffer, default is undefined)
vsync = "opengl-swc";          # opengl-swc/opengl-mswc: buffer-swap VSync methods
# unredir-if-possible = true;  # true -> maybe flickering or tearing fullscreen

##########
# Shadow #
##########
shadow = true;                # enabled client-side shadows on windows.
no-dock-shadow = true;        # avoid drawing shadows on dock/panel windows.
no-dnd-shadow = true;         # don't draw shadows on DND windows.
# Firefox dropdown menus: proper shadow just without clear-shadow
clear-shadow = false;          # v3+ : clear-shadow is removed as an option, and is always enabled now
shadow-radius = 12             # blur radius - (default 12) - center xy = radius * 1.5 negative value
shadow-offset-x = -18;         # the left offset for shadows (default -15)
shadow-offset-y = -14;         # the top offset for shadows (default -15)
shadow-opacity = 0.4;
detect-rounded-corners = true;

clear-shadow = false is not ideal and clear-shadow = true is not ideal either. So I plead for retention of the individual option until there is a better solution.

By the way, many thanks for your work on compton!

from picom.

yshui avatar yshui commented on August 24, 2024

@WernerFP I want to at least make clear-shadow a wintypes option, but I don't want to risk releasing it in v4, so you might need to stay on next for a bit.

I will get to it ASAP.

from picom.

yshui avatar yshui commented on August 24, 2024

@WernerFP Can you try the branch called full-shadow?

You will need to have this bit in your wintypes: section

 utility = { full-shadow = true; };

Note the firefox menus are actually of type utility.

from picom.

 avatar commented on August 24, 2024

@yshui Everything's fine - AFAICT.
Firefox and web-extension drop-down utility-menus are displayed properly, there is no more effect on semi-transparent windows and i don't notice any side effects.
I will continue to test the full-shadow branch and inform you if I notice anything relevant.

Thanks a lot!

from picom.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.