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

[Bug] Cirque will override mouse button status in relative mode even when CIRQUE_PINNACLE_TAP_ENABLE is not set. #24088

Open
2 tasks
kbjunky opened this issue Jul 11, 2024 · 2 comments

Comments

@kbjunky
Copy link

kbjunky commented Jul 11, 2024

Describe the Bug

I have mouse buttons under my thumb operated keys on my keyboard. Then in pointing_device_task_user mouse keys status is already changed to what Cirque is putting into it's mouse_report thus overriding my own report. Because of that I can't do click/drag because Cirque will set mouse button status to 0 thus making mouse key up event. I've pinned down the issue to this line. This only happens in relative mode.

Keyboard Used

No response

Link to product page (if applicable)

No response

Operating System

No response

qmk doctor Output

No response

Is AutoHotKey / Karabiner installed

  • AutoHotKey (Windows)
  • Karabiner (macOS)

Other keyboard-related software installed

No response

Additional Context

No response

@drashna
Copy link
Member

drashna commented Jul 21, 2024

Are you using pointing_device_handle_buttons at all?

If not, you may be able to improve things by doing so.

@kbjunky
Copy link
Author

kbjunky commented Jul 22, 2024

Hi Drashna, thank you for your response. That's not the issue I am having. I might have not present the problem correctly. What I am asking is, is it possible to distinguish between touching the Cirque for mouse move and taping it for mouse click and not changing the mouse button state when there was just the move motion. Now it will reset mouse button states if there's only touch detected, as in motion. Or not change mouse button states when there's no CIRQUE_PINNACLE_TAP_ENABLE set. The problem I am having is that when I send the custom mouse button state Cirque will override it. For example I'll send LMB down and then Cirque in it's report will send LMB up by zeroing all the button states but I might still be holding LMB. I have "fixed" it by storing the custom mouse button states and restoring them in pointing_device_task_user() but I think it would be better to just not change the state when there was no interaction related to mouse buttons.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants