-
-
Notifications
You must be signed in to change notification settings - Fork 473
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
Kivy - SendMouseMoveEvent with modifier not working #574
Comments
Are you reporting issue with the kivy_.py example? This example is supported only on Linux. |
Yes, I know that it was not intended to support other OS, however with the new pull request commit, it is at least also working on Windows now, except this described issue. |
Are you running the kivy_.py example from the PR as is, or did you make any other modifications? What exactly isn't working, dragging? |
EDIT: The "touch move" is not working, so moving the mouse while pressing left or right mouse button. |
Do you need to comment out the browser switches to reproduce the issue? |
To open the website from above yes, because it uses WebGL, otherwise I get only the message that WebGL is not supported. |
Can you test a different website with SendMouseMoveEvent ? With no modifications to kivy_.py (just as is in PR). |
Do you know a website where I can test it? I've googled around but have not find another one. What I've tried: click on the google logo on google.com and "move" it. It works on MacOS, however it seems to be a drag event. (E.g. dragging an image to google pic search does not work)
|
Ah, ok after thinking again I've tried google maps. Yes it is working both on MacOS and Win. So do you have an idea what is the problem about the website from above? |
If you remove the disable-gpu* flags rendering can be much slower. It might be that CPU is overloaded and events are being lost. Try lower frame rate. I am not sure why WebGL doesn't work. v66 includes swiftshader (unless you've removed the swiftshader/ subdirectory in the cefpython3 package) which provides software rendering for GPU. |
Ok, for Windows the website is also loading with disable-gpu* flags, it seems I've tested that only on Mac before. |
So now it's an issue with Kivy's on_touch_move, not with SendMouseMoveEvent? |
Well, probably it is not an issue with kivys on_touch_move because it is executed as verified by using google maps (and by adding a print command printing something). |
You will have to debug it to find the cause of the issue. |
See if there are any errors in Developer Tools console. |
Arghh, it's a Heisenbug. I'm not familiar with the DevTools but I cannot see any errors. |
Check if message loop work is being called every 10ms or so. Looks like events are lost due to message loop not working correctly. Try enabling external_message_pump on other OSes and see if it makes any difference. When you open devtools in a window that uses windowed rendering it could affect message loop somehow. Edited. |
the _meesage_loop_work function is called about every 5ms. external_message_pump does not make a difference for win. |
5ms would be too often and might cause issues. |
changing it to about 10ms by removing the kivy "hack" makes no difference |
EDIT: |
What workaround? |
using |
No, I don't think so. You can try creating a hidden window on startup and see if that helps. A hidden window using windowed rendering with CEF browser embedded. Edited. |
When trying to integrate cefpython into kivy, the SendMouseMoveEvent with the modifier for a pressed MouseButton, e.g. cef.EVENTFLAG_LEFT_MOUSE_BUTTON, is not working for me.
See also the pull request for the updated kivy example #573, which let me run the example on Win10.
For an easy check, the website http://nglviewer.org/ngl/?script=showcase/ferredoxin is good, which allow to rotate and move the structure by a pressed mouse button and mouse move in a webbrowser, but not with the kivy example.
Is there a solution or workaround?
The text was updated successfully, but these errors were encountered: