Coder Social home page Coder Social logo

Comments (10)

FelixKratz avatar FelixKratz commented on May 27, 2024 6

I have added an experimental option to order the border above the window with the configuration option:

borders order=above

the default is below. This is for testing purposes, however, some problems include but are not limited to:

  • The border interferes with the mouse window resize region (8224808)
  • If yabai orders the windows on a different layer (i.e. when the scripting addition is enabled) the border can not be ordered above the window once it has focus (7ba72e5)
  • The border has a larger apparent width, because it is inset to slightly overlap the window by one point
  • The border might flicker when the window is reordered above the border (as described by @MatthiasGrandl)
  • If the border has a transparency, it will look weird in the regions where it overlaps the window

from jankyborders.

FelixKratz avatar FelixKratz commented on May 27, 2024 4

I will keep this option as an unsupported and undocumented option. If order=above and style=square and width=8.0 or larger, the square borders are truly square as well.

from jankyborders.

FelixKratz avatar FelixKratz commented on May 27, 2024

There likely nothing we can do about that without injecting into system processes (which yabai does with the scripting addition). The border is currently drawn below the window, so the compositor (WindowServer) is drawing the window shadow correctly on the border. If we would draw the border above the window, this would not be a problem, however, there are several other technical reasons why I am not sure this is the way to go.

from jankyborders.

januz avatar januz commented on May 27, 2024

@FelixKratz I am very grateful that you developed this tool but came here to ask about the shadows interfering with the border as well. In my setup, it's especially confusing because I have window decoration disabled in kitty, so kitty windows are shown with a light colored border (how the borders look like when using yabai and disabling SIP) while for all other windows the border is much darker.

I was wondering whether borders could be drawn above instead of below the windows which seems like a nice way to "disable" the shadows without needing to disable SIP. What are the reasons why you don't think that this would be possible/wise? Thank you!

from jankyborders.

MatthiasGrandl avatar MatthiasGrandl commented on May 27, 2024

just installed. there is another issue. I am typing this right now on firefox with order=above and on every keystroke the border is flickering. other than that and the caveats you mentioned, it seems to work!

from jankyborders.

FelixKratz avatar FelixKratz commented on May 27, 2024

I have added this to the list of problems that are produced by ordering the border above the window. I am leaving this experimental option in for some time to see if someone wants to invest some time and effort into solving some of the problems. I will probably remove this option before the next release while these severe limitations exist.

from jankyborders.

januz avatar januz commented on May 27, 2024

@FelixKratz Thanks so much for implementing this experimental feature! I just activated it a few minutes ago (so haven't done any in-depth testing) but so far it works perfectly for me. I don't experience any issues with resizing or flickering and, as expected, the border looks a lot nicer!

I'll keep this option on and will let you know if something weird comes up while I'm going through a normal work day. What are the issues that I should look out for specifically? I'm not using Firefox (I don't see the flickering issue while typing this in Arc Browser). I typically do the resizing of windows with my keyboard instead of the mouse but also the mouse seems to work.

I am currently not using yabai but testing aerospace as my tiling window manager (don't know whether this is relevant).

I am leaving this experimental option in for some time to see if someone wants to invest some time and effort into solving some of the problems. I will probably remove this option before the next release while these severe limitations exist.

If I continue to experience no issues, would you mind keeping it either as a "hidden" option or an official one and pointing out the (potential) drawbacks? Thank you!

from jankyborders.

jaybonthius avatar jaybonthius commented on May 27, 2024

Chiming in to say this is working great on my end! Thanks a bunch. Seconding @januz, would love to continue having this as an experimental option.

from jankyborders.

januz avatar januz commented on May 27, 2024

@FelixKratz Just an update—I'm still not experiencing any issues with the order=above option. It's working great!

from jankyborders.

Write avatar Write commented on May 27, 2024

Hi, I'm new to using this tool.

I just wanted to point out that order=above also fix the lagginess when using a tool like BetterSnapTool to move the windows with a Keyboard Shortcut + moving the mouse.

oder=above is really a nice option. Thanks !

EDIT : Maybe i'm wrong, i've just restarted the services w/ order=below, and I don't have any lag anymore either.

from jankyborders.

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.