You are not logged in.
Pages: 1
I have a laptop with a touchscreen. All is well when the laptop screen is the only monitor. However, when I attach an external monitor touchscreen touches are mapped across the entire output space so that touches on the touchscreen don't correspond to where I touch. Further, this situation persists even after the external monitor is removed.
I can patch over the problem using
xinput --map-to-output <touchscreen input device> <laptop monitor>
but it sure would be nice if there was a way to tell XFCE to keep the touchscreen input device mapped to the laptop monitor without having to use xinput. Does anyone know how to do that?
peter
Offline
is this external monitor also capable of touch input or is it a display-output-only monitor. if the latter, are you expecting to provide touch input for touch objects located there?
Offline
No to both. What I want is to be able to touch my laptop screen and not have the touches mapped into the display space covering both monitors but instead always have a touch on my laptop screen be mapped into the actual spot I touch, even when there are other monitors connected.
If I had a separate absolute touch panel I would probably want a different behaviour where touches are mapped onto the entire display space. I think that even this doesn't work correctly as the display space is not shrunk down when a monitor is removed. (I can see this from ARandR if I connect an external monitor and then disconnect it. ARandR then shows a light grey space covering the display area of the disconnected monitor. I have to click on Apply to have this phantom space go away.) But this is, I think, a different issue.
Offline
so if i understand this right, the way you want this to be is a large display space spread over 2 or more display devices and spots you see on devices without a touch capability simply cannot be touched and another means, such as mouse input, is needed to activate spots, and features like 2 finger magnify just cannot be done right there. i think i would want the same thing. my guess is that the software is assuming a separate touch device even if it is part of one of the displays, perhaps because number_of_touch_devices < number_of_display_devices.
Offline
I have to click on Apply to have this phantom space go away.) But this is, I think, a different issue.
Actually I think this is the issue.
Without offering any fix I do have thoughts on this. I've been exploring this type of issue for awhile now in a more complicated context. Imagine a 'video wall' of maybe 3x3 monitors where the master computer is more of a matrix switch and the displays can be the local host, vm looped guest on that host, and external stand alone computers streamed into the host. Imagine the host can reach out control onto any of those monitors (zones/partitions all just a name). The mode of any monitor could be included in the 'whole' by use of direct mapping, spice, vnc, x2x, x2vnc, etc.
As it so happens so far, while 2 monitors is simple, once a monitor ads another direction, regardless of position the 'mouse area' is always a rectangle. So what you call 'phantom' I'd call only grey since there is (or can be so, was) a monitor. Phantom space for me is where there isn't or never is (was) an monitor. Hard to imaging all the scenarios but say you position two monitors with only their corners touching. So below and to the right is the other monitor. Directly below or only to the right is the phantom space, while diagonally down to the right we find real space that may be greyed out. Such example is to point out that per ARandR, and more over xorg, the mouse area is a box, squared off to the virtual size of FOUR monitors. The mechanisms I mention like x2x or x2vnc add to this area in the same way as a real monitor does but the two cannot be on the same row or column =they need to be diagonal in a sense. Then add in mapping edges of different resolutions..and it get hairy real quick.
One thing about such complexity is the notion of 'default'. I agree with your assumption that your 'touch space' should never be remapped in the way you're describing, or need manually reverted when the external is removed. If a user would like touch to extend to the external monitor it should be done by the user clicking an activate area, a small window, that traps the touch input to the secondary monitor, The user keyboards their way out or is provided a 'deactivate' clickable window or icon on the second monitor.
Anyway, I can say I've lost my cursor more than once. I've locked myself in a virtual area with no way out! I've found the mouse(touch) area disassociates from the keyboard = click there and the keyboard is typing over there...Fun stuff.
All this stuff should be below xfce I believe and really the turf of xorg. I suppose it needs corrected by the touch package maintainer. Typically display area = mouse area, but not touch area. I'd guess the touch are is inherited from mouse area which in turn is inherited from display area. In my examples display are does NOT equal mouse area, the mouse are is expanded. So when I add a touch terminal it's all going to blow up!
Look at any config files concerning the touch drivers to see if you can lock it down so it never switches away from 'primary display' only.
Last edited by CwF (2019-02-24 15:17:32)
Offline
@Skaperen Correct. My view is that touching on a touchscreen should map to the screen position itself! What can happen is that touching in the middle of the touchscreen ends up being mapped to the right hand edge of the touchscreen because the display area includes both active monitors. That's just not right.
Offline
@CwF The problem occurs even if you have two equal sized monitors arranged side to side with the touchscreen on the left. Here there is no unmapped space because the two monitors still show a rectangle. However, touchscreen touches will be twice as far from the left-hand size of the laptop monitor because the display space includes both monitors and touchscreen touches are mapped into the entire display space.
I think that XFCE should be the place to have this fixed, as it is xfce4-display-settings that is responsible for handling connections of monitors and the issue is that connections and disconnections of monitors are the triggers requiring extra handling.
Offline
Pages: 1
[ Generated in 0.010 seconds, 7 queries executed - Memory usage: 547.58 KiB (Peak: 548.2 KiB) ]