GithubHelp home page GithubHelp logo

Comments (5)

ThomasAdam avatar ThomasAdam commented on September 23, 2024

On 5 February 2013 23:24, Steven [email protected] wrote:

Currently, every pointer tracking event is handled causing a significant
amount of lag when resizing. This is a fairly common problem and most GUI
toolkits handle it by dropping intermediate mouse positions.

No; they flush pending XConfigureNotify requests. Your slowness is
likely down to the fact an external program is used to track mouse
movements, which for a WM is utterly insane.

-- Thomas Adam

from bspwm.

Stebalien avatar Stebalien commented on September 23, 2024

While that contributes to the problem, if it were the sole problem, all windows would lag the same amount when resized. However, resizing two firefox is relitavely smooth while resizing two xterm windows is extremely laggy.

Also, I gave the example about how GUI toolkits track mouse movements (they do drop intermediate events) because I know next to nothing about how window managers work.

from bspwm.

Stebalien avatar Stebalien commented on September 23, 2024

One possible way to reduce the lag of having a second program handle mouse movements would be to allow bspc to accept a stream of input and have sxhkd pipe (x,y) pairs to bspc. That is, calling bspc grab_pointer * would cause bspc to write 'grab_pointer ' to bspwm's socket and then, instead of closing the bspc socket, bspwm would continue to read mouse positions from this socket. Of course, I haven't tried implementing this so I don't even know if it will work...

from bspwm.

baskerville avatar baskerville commented on September 23, 2024

In fact the slowness has nothing to do with any of the above!

I just tried this:

diff --git a/window.c b/window.c
index 312dbc4..42027ae 100644
--- a/window.c
+++ b/window.c
@@ -186,6 +186,8 @@ void adopt_orphans(void)

 void window_draw_border(node_t *n, bool focused_window, bool focused_monitor)
 {
+    return;
+
     if (n == NULL)
         return;

With this patch applied, the resize_tiled action becomes very smooth 😲.

from bspwm.

baskerville avatar baskerville commented on September 23, 2024

The single-border branch removes the outer and inner borders ✨:
3b77dd4
It will be merged into master.

from bspwm.

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.