My goal is to remap a physical device (Aimtrak Lightgun) which acts like a mouse, towards different button input (the X,Y are fine).
Currently the trigger registers as a right mouse click, but I want this to become a left mouse click.
I did follow the evdev tutorial, adjusting the "create uinput" and "injecting" parts.
There is no error, but the mouse is not moving or the button is not clicked.
So it would be fine to grab the device and control all the input.
But I am unable to make it work.
Any other approach is also welcome.
Related
I have a program using glfw for window management and opengl for rendering. The program works on Windows and linux, and eventually Mac OSX so I want any solution to be portable.
glfw seems to either support a cursor, or getting full mouse input but not both. For example, with the cursor enabled (default) the glfwscroll_callback does nothing. If I disable the cursor, then scrolling the mouse is captured but then the user cannot see where the mouse pointer is. That's ok if I can draw the cursor myself when I want but I cannot find any function to drawcursor at a particular location.
How does the cursor work, ie what is the hardware basis for the cursor? Is there a sprite in hardware still? If it's all in software, I suppose we could draw a cursor at the current mouse location the last thing in render. But that's not convenient. For one thing if the scene hasn't changed, I shut down rendering completely to reduce power.
Is there any way to manually draw a cursor on top of the current screen so that we don't have to manage the buffers manually? Is my only option to change the logic and not render the scene if nothing has changed, but to manually draw a cursor on top of the current scene every frame?
I've made a Node/AutoHotKey script to control two computers with one mouse. I've made the cursor disappear on the first computer when using the second computer (https://www.autohotkey.com/boards/viewtopic.php?t=6167), but the mouseover event is still firing of course.
What I mean is simply if you hover over some icons on the desktop you will see tooltips, and so on.
I'm using a graphics tablet (absolute positioning), the cursor position gets captured and sent to the second computer.
I've found this method:
Found it here: https://www.autohotkey.com/boards/viewtopic.php?t=33128 (Also from the documentation: https://www.autohotkey.com/docs/commands/BlockInput.htm)
BlockInput, MouseMove ;to disable mouse interaction
BlockInPut, MouseMoveOff ;to enable mouse interaction
But it blocks mousemove completely, so that the cursor stops moving at all.
Is there any way to programmatically disable/enable mouseover (so that buttons don't change their color and tooltips don't appear, but AutoHotKey could still capture cursor position) event globally on Windows without blocking mousemove?
I'm laying out UI on a storyboard using the new, controversial library button which has been moved up.
This is driving me crazy - I want to be able to "PIN" this window to a secondary monitor so I can always see available components as opposing to having to click that button every single time I need an element. Currently it disappears, even on secondary monitor once I shift focus to the view controller on screen.
How do I pin the UI Elements library to be able to always see it ?
You can press the option button in keyboard and click in the library window, it's will hold
Picture of library windown
I'm using VS 2015 Enterprise. I'm new to CodedUI testing. I've added a CodedUI test project to my solution. I've created a simple test, clicked on a button, selected a radio button, etc.
I've been following a Pluralsight course titled "Test Automation with CodedUI". I want to find a control on the WPF form, but once I select the control finder in the test builder and move the mouse off to the running application, it is no longer a bulls eye. I don't understand why its different than what's shown in the Pluralsight course. I think the instructor used VS 2012. Could that be the reason?
There are subtle changes between versions. After clicking the assertion builder button in the Coded UI recorder then, as you move the mouse pointer around the screen (do not move it too fast or you will confuse yourself), you should see a blue rectangle drawn around parts of the screen. As you move the mouse pointer carefully you should be able to select larger or smaller sections, corresponding to higher or lower items within the hierarchy of controls on the screen. Click on a control of interest. You should then see a window showing the properties of the selected control. There are four arrows (up, down, left and right) in the new window. Click on these to navigate around the control hierarchy. Note that and 'up' followed by a 'down' will seldom return to the same control. The 'up' moves the parent control and the 'down' moves to the first child.
My suggestion here would be to use the keyboard shortcut to enable the control finder. When you hover over it with your mouse you should see it - if I recall correctly it's "Alt + H". Basically you'll move your mouse to the control you want to identify, then do the keyboard shortcut, then click. It should identify the control correctly at that point.
I have recorded a test, in which mouse hover over a link.
on the same machine(say m/c A), where i recorded the test, mouse hovers over the link correctly.
But when running the same test on different machine(say m/c B), mouse hovers fails.
Since link doesn't have ID associated with it. It takes the co-ordinates and inner text as search property.
Tried recording mouse hover in m/c B, mouse correctly hovers over the link.
How to make sure that same test will run in different m/cs?
Thanks,
Kiran
Try This
When you record It records coordinates of the link in designer file
(Eg:Mouse.Hover(linkObj,(12,8))), After moving the recorded method to .cs file remove the coordinates and run the test.