On 04/02/2014 11:25 AM, Takashi Iwai wrote: > At Wed, 02 Apr 2014 17:19:51 +0200, > Gerd Hoffmann wrote: >> >> On Mi, 2014-04-02 at 11:07 -0400, Cole Robinson wrote: >>> + if (button->button == 1 && >>> + button->type == GDK_BUTTON_PRESS && >>> + !gd_is_grab_active(s) && >>> + !qemu_input_is_absolute()) { >>> + >>> gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(s->grab_item), >>> + TRUE); >>> + return TRUE; >>> + } >> >> Looks sane on a quick glance (as replacement for patch #4 of Takashi's >> patch series). Didn't test yet. > > Unfortunately, this doesn't work perfectly as expected. > The input mode change happens after the first click action, thus > this always results in grabbing if you do left-click at first, even > after X starts up and vmmouse gets active. > > I thought of checking it via notifier, but the notification happens > also after the first mouse click event. Hmm.
We could ungrab the pointer if transitioning from relative to absolute mode, that's effectively what virt-viewer/remote-viewer does (though it also completely disallows pointer grab in absolute mode... not sure we want to go that far). - Cole