https://bugs.freedesktop.org/show_bug.cgi?id=69778
--- Comment #5 from Jonas Ã…dahl <[email protected]> --- Hmm. Is it that it doesn't get reset because plugging it in doesn't call the init t(In reply to comment #4) > (In reply to comment #3) > > Kristian, you seem to have pushed the grab fixes to master. Should they be > > on 1.3 as well? > > Yeah, they should. I was testing with an external touch screen and > unplugging the touchscreen (just the usb input device, not the output) and > even with your patches, the touch code has the same problem: plugging the > touch screen back in doesn't work. The problem seems to be that the num_tp > is in weston_seat and doesn't get reset when you remove the last touch > screen, but when I looked closer, it looks like we keep the weston_touch > struct around event when we unplug the last touch device. I left the struct deliberately to be able to keep some state. This might only make sense when using a pointer though, because it'll leave the cursor at the same position as when you unplugged. Probably need some reset function there, clearing some state while still keeping some intact. It seems the reason that it works already using a mouse is because the kernel will send button-up events upon unplugging, making button_count reach 0. > > The weird thing is that moving num_tp to weston_touch did fix the problem, > but I don't understand why, since it still doesn't get reset. Anyway, your > patches certainly improve status quo and are a requirement for fixing touch > so I'll pick them over to 1.3. That's odd. I can only imagine that it works because you'd receive touch-up evdev events when you unplug making num_tp end up at 0, but then it should work wherever you put the variable. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Wayland-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/wayland-bugs
