Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS DAW UIs become very unresponsive after plugin window is opened #126

Closed
Tracked by #168
jakerr opened this issue Aug 25, 2022 · 4 comments
Closed
Tracked by #168

macOS DAW UIs become very unresponsive after plugin window is opened #126

jakerr opened this issue Aug 25, 2022 · 4 comments

Comments

@jakerr
Copy link

jakerr commented Aug 25, 2022

Opening a gui plugin that uses baseview on macOS causes the entire DAW (FL Studio, Reaper) to be very slow to respond especially when resizing windows and panels.

After much debugging I finally came along this line in src/baseview/src/macos/view.rs

let _: () = msg_send![class!(NSEvent).setMouseCoalescingEnabled: NO];

Because mouseCoalescingEnabled is a class property on NSEvent changing it affect the entire process i.e. the host DAW. So from that point forward every mouse event is non coalesced and the number of events is just too great for the various DAWs' GUIs to keep up when moving sliders / resizing windows etc.

I tried removing the line which fixes the slowdown, and the plugin GUI interaction even feels smoother to me without.
I'm not sure why that line was there to begin with though, so If it is indeed required, it would be good to at least set the initial value back once the view is cleaned up.

@jakerr
Copy link
Author

jakerr commented Aug 25, 2022

Another bit of information: This issue wasn't noticeable when using the MacBook (2017) track pad. Using a gaming mouse on the same machine, with high tracking speed, makes the problem very apparent - resizing the viewport takes multiple seconds.

@BillyDM BillyDM mentioned this issue Mar 18, 2024
27 tasks
@httnn
Copy link
Contributor

httnn commented Oct 8, 2024

also just ran into this problem in Reaper and can confirm that removing the mentioned call fixes the issue

@jakerr
Copy link
Author

jakerr commented Oct 9, 2024

This is the chat that happened on Discord when I discovered this:

https://discord.com/channels/590254806208217089/948004564005703740/1012281841832710164

I feel like the consensus was basically that that API probably shouldn't have ever been called but nobody was too sure why it was there in the first place.

@micahrj
Copy link
Member

micahrj commented Nov 10, 2024

Fixed by #195.

@micahrj micahrj closed this as completed Nov 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants