Skip to content

Workaround for macOS bug mirrored virtual screens have laggy or sometimes unresponsive mouse cursor #807

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

Closed
GaryHanchengLiQB opened this issue Jul 25, 2022 · 64 comments
Assignees
Labels
done All tasks are completed enhancement New feature or request released Released
Milestone

Comments

@GaryHanchengLiQB
Copy link

GaryHanchengLiQB commented Jul 25, 2022

Hi! I'm currently using BetterDisplay with a Dell S3220DGF, and had this curious problem where the mouse cursor doesn't show up immediately after mouse movement after it normally disappears during typing.

Illustration here: https://youtu.be/-mJYMJAfsEo. I immediately started moving the mouse after typing a few letters but the cursor only shows up after a small delay, meaning I couldn't find the cursor for a brief moment.

However, when I try to do screen recording using shift+command+5, the recording did not pick up this issue and the cursor appeared immediately, despite the fact that I'm seeing the delay on the screen.

Comparing to directly connecting without using BetterDisplay, the mouse cursor appears immediately when I move the mouse: https://youtu.be/pnAjhbmxhF0

@waydabber
Copy link
Owner

This is interesting. Are you using dummy mirroring?

@waydabber waydabber added the investigating Investigating issue label Jul 25, 2022
@GaryHanchengLiQB
Copy link
Author

GaryHanchengLiQB commented Jul 25, 2022

This is interesting. Are you using dummy mirroring?

Yes I am, setting the monitor to mirror the dummy

Also I don't know if it's because of me updating to macOS 12.5 late last week. Before that update I was running BetterDummy v1.2.2 and it was fine

FYI this is a 2021 14-inch MacBook Pro with M1 Pro chip

@GaryHanchengLiQB
Copy link
Author

GaryHanchengLiQB commented Jul 25, 2022

Seems like it's not just during text editing, the cursor would sometimes disappear on its own: https://youtu.be/wARDNJSep6A

Appreciate you looking into this :)

@waydabber
Copy link
Owner

There was no change in this regard from 1.2.2 to 1.2.7 I think. The issue might be with macOS 12.5, but I am on Ventura beta 3 and I am not sure I can reproduce the issue the issue (sometimes it feels like I can pinpoint occasions when the mouse seems to appear a bit late if I move it super slowly but other times not, I would not have noticed any issue if I was not super aware that there might be an effect like this). I'll see if the issue is present in Ventura beta 4 or not.

@voyager163
Copy link

I am also having the same issue.

@waydabber
Copy link
Owner

I did some investigation. I am afraid I can't fix this issue as this is not something BetterDummy does but seems to be an issue related to virtual screens being mirrored.

If you have an iPad, you could try if you connect it to the Mac as a Sidecar display and mirror the iPad to your main screen (not the other way around!), the same behavior should occur, even without BetterDummy running.

If this is not the case, please let me know!

@waydabber waydabber added known issue Known issue that currently has no fix and removed investigating Investigating issue labels Jul 27, 2022
@waydabber waydabber changed the title Cursor disappearing during typing and not showing up immediately after mouse movement Mouse cursor showing up with some delay after typing when dummy mirroring is applied in macOS 12.5 Jul 27, 2022
@ghost
Copy link

ghost commented Jul 27, 2022

Seems like it's not just during text editing, the cursor would sometimes disappear on its own: https://youtu.be/wARDNJSep6A

Appreciate you looking into this :)

Hello I have exactly same issue.
After update to 12.5, my externals (mirrored to dummy) displays (one via usb-c, other via hdmi) started to have a problem with a mouse cursor.
In short when i move my mouse from retina display to external source - it's not visible until i click on something, sometimes it just disappears.

Could you have a look please? Thanks!

@waydabber
Copy link
Owner

Yes, the issue seems to be present in Ventura beta4 as well (was not in beta3). The mouse cursor tends to disappear when entering text and takes its time to reappear. A probably related issue is that mouse shake or an increased cursor size makes the cursor icon cut into half.

This seems to be a macOS bug, I am not sure if it is fixable on BetterDisplay's end. Probably the best we can do is to report it to Apple, hoping for a fix.

@pabloibanezcom
Copy link

Hello, I'm facing the same issue when mirroring two monitors. It started to happen after upgrading to 12.5. Any news on any potential fix for this? It's a shame because until this doesn't come I need to disable BetterDisplay. Thanks!

@waydabber
Copy link
Owner

waydabber commented Aug 1, 2022

Hi @pabloibanezcom - I am still investigating this. However the issue happens only with dummy mirroring. For most users native smooth scaling is a much better option (or creating specific custom HiDPI resolutions for those who do not want to purchase Pro as that functionality is available for free).

@megasoft1978
Copy link

megasoft1978 commented Aug 1, 2022

Hi,
I just bought the Pro version and I'm looking for a bit of support on this issue.
I'm using dummies for Xiaomi Mi Monitor (Ultra wide 34) and Asus MX279 but I'm getting the issue about the cursor disappearing. Mac OS 12.5.
You mention native smooth scaling. Could you please help me properly set up this?

@waydabber
Copy link
Owner

Yes, of course. You should follow these instructions to set up native smooth scaling on you Apple Silicon mac: https://github.com/waydabber/BetterDisplay#how-to-unlock-scaling-and-hidpi-for-my-display

Let me know if you have any issues!

@megasoft1978
Copy link

@waydabber This looks amazing! Thank you very much!
Very cool app! ;)

@waydabber
Copy link
Owner

I meant the section under How to unlock scaling and HiDPI for my display? - this deals specifically with enabling native smooth scaling (as opposed to the dummy mirroring method).

@megasoft1978
Copy link

Yes, I did that and now everything is perfectly working. This is even better than before as it has higher quality.
Thank you! :)

@pabloibanezcom
Copy link

Thank you @waydabber. I was in the same situation as @megasoft1978 and by enabling native smooth scaling everything looks better and without the mirroring issues.

@ghost
Copy link

ghost commented Aug 2, 2022

Yes, I confirm that the solution with native smooth scaling works like a charm! Thank you!

@kachkaev
Copy link

kachkaev commented Aug 3, 2022

Same problem here on two M1 MBPs after upgrading to macOS 12.5. I can’t use a workaround because “Allow smooth resolution scale“ is disabled in BetterDisplay settings.

(it remained disabled after a reboot)




Here is what I observe:

  • The cursor works fine within the MBP display

  • Moving the cursor from the MBP display to the HiDPI+dummy display often hides it till I accidentally hover over some clickable element

  • Moving the cursor from the HiDPI+dummy display to MBP display occasionally creates a ‘stuck’ copy of the cursor on the HiDPI+dummy display, but it disappears shortly.

  • When I start typing text, the cursor disappears on both displays as expected. It should reappear as soon as I move it, but this no longer happens on the HiDPI+dummy display. I have to move the invisible cursor a lot till it bumps into some clickable element for it to appear. Alternatively, I can click or right-click, but this is a new habit which I need to get used to.

The latter is the most annoying 🤔

@waydabber
Copy link
Owner

Hi @kachkaev - yes, native smooth scaling is a Pro feature so it will be disabled if the Trial expires and you don't purchase Pro.

If you don't want to purchase Pro but you are using some specific resolutions and don't need too much flexibility, you can create custom resolutions for completely free by enabling Manually add custom resolutions. Simply enter the desired resolution and click on the (+) icon, then hit Apply, enter credentials and reboot. The resolution should be available as HiDPI afterwards without a dummy.

Please note that the custom resolutions should have the same aspect ratio as the display and should be lower than the native resolution.

@kachkaev
Copy link

kachkaev commented Aug 3, 2022

Ah right, how could I miss that part of the text? 🤦 😅

I followed your suggestion and it did the job – big thanks for your reply and support!

Screenshot 2022-08-03 at 17 04 57

Looks like I don’t need a pro license but I should probably still buy one. BetterDisplay is a top-quality software, I love your attention to detail! ✨

UPD: license bought 🤩 💸

@jjangga0214
Copy link

I did some investigation. I am afraid I can't fix this issue as this is not something BetterDummy does but seems to be an issue related to virtual screens being mirrored.

Oh you mean this issue is caused by the updated version of macOS, not by BetterDisplay.
Should we report this to apple?

@waydabber
Copy link
Owner

Yes, by all means, you can report it. But don't keep your hopes high - so far Apple did not exactly rush fixing any of the issues reported by the community regarding virtual screens/dummies. :)

@dave-fl
Copy link

dave-fl commented Jan 17, 2025

@waydabber do you think any of the locking stuff with screen savers could also be related here?

@waydabber
Copy link
Owner

You mean the inability to put the screen to sleep properly when a virtual screen is mirrored? I think that is an unrelated issue to the mouse problems. The mouse issue with us since a specific Monterey version (it was 12.5 if I remember correctly) but the screen locking issue predated that, it was always a problem on Apple Silicon.

@dave-fl
Copy link

dave-fl commented Jan 17, 2025

Yes, I almost think that it is happening but the screen hasn't refreshed similar to how the screen has not refreshed with the mouse under certain circumstances where the flipped pixel forces the screen to draw again.

@waydabber
Copy link
Owner

Not sure. It might be a power management issue. The mirror target display might be waiting for the mirror source display to go to sleep but the virtual screen probably does not that like expected so the target screen is not entering sleep mode either. But it's just a guess.

@waydabber waydabber self-assigned this Jan 19, 2025
@waydabber waydabber added in progress Implementing unreleased Still baking in the oven labels Jan 19, 2025
@waydabber waydabber added this to the v3.3.1 milestone Jan 19, 2025
@waydabber waydabber added done All tasks are completed and removed in progress Implementing labels Jan 19, 2025
@waydabber
Copy link
Owner

Ok, I added a solution to this. Will be in the next internal pre-release. Hopefully works fine.

@waydabber
Copy link
Owner

  • thanks @dave-fl for the info. I opted for a slightly different approach so it does not require accessibility permissions but should work nevertheless.

@waydabber waydabber changed the title Add workaround for semi-disappearing mouse macOS bug with mirrored virtual screens on Apple Silicon Macs Workaround for macOS bug mirrored virtual screens have laggy or sometimes unresponsive mouse cursor Jan 19, 2025
@waydabber
Copy link
Owner

There is a similar bug with a somewhat related solution: #3931

@waydabber waydabber added internal pre-release Enable internal pre-releases under Settings/Applications/Updates and removed unreleased Still baking in the oven labels Jan 19, 2025
@waydabber
Copy link
Owner

@dave-fl - this should be available in the latest internal pre-release (enable under Settings/Applications/Update). Please let me know if this works. Thanks! :)

@dave-fl
Copy link

dave-fl commented Jan 20, 2025

@waydabber So far so good. Thank you!

@waydabber
Copy link
Owner

@dave-fl - saw your comment about CPU use - it was removed so I guess wasn't relevant after all. Just want to note the solution should not add any serious CPU overhead (will add some of course but it shouldn't be significant).

@dave-fl
Copy link

dave-fl commented Jan 20, 2025

@waydabber I removed it because it's not relevant and yes I agree it's definitely minimal. It has to be there because the mouse has to be tracked at all times as it can lock up at any area and any time on the virtual screen.

Things are working really well. I think people will be happy with this (I know I am).

@waydabber
Copy link
Owner

Thanks @dave-fl for the feedback! I released a proper v3.3.1 pre-release with this now. If things turn out ok with some of the other changes as well, I'll do a stable v3.3.2 release.

@waydabber waydabber added pre-release available Released as beta version and removed internal pre-release Enable internal pre-releases under Settings/Applications/Updates labels Jan 20, 2025
@varvello
Copy link

Thanks @waydabber, thanks @dave-fl I downloaded the internal and now also the pre-release and everything is working smoothly. No more mouse stuck or disappearing 🙏
Great improvement!!!

@waydabber waydabber added released Released and removed pre-release available Released as beta version labels Jan 22, 2025
@RickyRomero
Copy link

Looking forward to trying this when I get home. My workaround was to have a video playing in the corner of the screen. Thanks @waydabber!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
done All tasks are completed enhancement New feature or request released Released
Projects
None yet
Development

No branches or pull requests