At Wed, 02 Apr 2014 16:18:15 -0400,
Cole Robinson wrote:
>
> 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).
Yeah, that's my concern, too. Allowing the input grab in absolute
mode still makes some sense although much less than relative mode.
Takashi