FelixKratz / JankyBorders

A lightweight window border system for macOS
GNU General Public License v3.0
1.23k stars 20 forks source link

Tracing performance #1

Closed koekeishiya closed 1 year ago

koekeishiya commented 1 year ago

Firstly, thank you for taking the initiative in creating these kinds of applications.

I have some old border code laying around that uses most of the private events that you do in this project, and I noticed a fair bit of difference in the delay when moving a window around the screen. I've attached two gifs; the first is my throwaway proof of concept and the other is commit https://github.com/FelixKratz/JankyBorders/commit/110b01ce2e6b359053550d16271bc768f3af5b5d

old poc: throwaway

this project: jankborders

I haven't really looked at the code in detail, so can't really tell why there is that much of a difference.

My old throwaway project also uses SLSRegisterNotifyProc(global_handler, 806, NULL); to respond to window move events to re-align the border.

FelixKratz commented 1 year ago

Thanks for the heads up. I am not dragging windows with the mouse that much myself (thanks to your awesome tools).

This was probably due to my border update code being too conservative. I have implemented a separate function to handle the window move event now and it seems to be on par with what you have shown in your gif:

https://github.com/FelixKratz/JankyBorders/assets/22680421/a762a5b2-ec05-4b37-b4aa-9f9d9aed693a

koekeishiya commented 1 year ago

That looks a lot better yeah.

FelixKratz commented 1 year ago

Contained in v1.0.1 released just now.