> > ----- Original Message ----- > > > > > > > Hi > > > > > > ----- Original Message ----- > > > > Since 2.8, QEMU now longer creates QXL primary surfaces when using GL. > > > > This change broke client-side mouse mode, because Spice server relies > > > > on > > > > primary surface conditions. > > > > > > > > When GL is enabled, use GL scanout informations. > > > > Mouse mode is always client when GL surfaces are used. > > > > > > > > This patch and most of the message are based on a patch from > > > > Marc-André Lureau, just moving responsibility from reds to RedQxl. > > > > > > My patch was updating reds_update_client_mouse_allowed() which I think > > > was > > > a > > > better place to do cursor business. > > > > > > Furthermore, it didn't mess with QXL/2D state. > > > > > > > > > > > Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> > > > > --- > > > > server/red-qxl.c | 7 +++++++ > > > > 1 file changed, 7 insertions(+) > > > > > > > > diff --git a/server/red-qxl.c b/server/red-qxl.c > > > > index b556428d2..a003052ca 100644 > > > > --- a/server/red-qxl.c > > > > +++ b/server/red-qxl.c > > > > @@ -873,6 +873,13 @@ void spice_qxl_gl_scanout(QXLInstance *qxl, > > > > /* FIXME: find a way to coallesce all pending SCANOUTs */ > > > > dispatcher_send_message(qxl_state->dispatcher, > > > > RED_WORKER_MESSAGE_GL_SCANOUT, &payload); > > > > + > > > > + qxl_state->x_res = width; > > > > + qxl_state->y_res = height; > > > > + qxl_state->use_hardware_cursor = TRUE; > > > > + qxl_state->primary_active = TRUE; > > > > > > I didn't need to touch qxl-state. Not sure what would be the side effect > > > of > > > all this changes, and how they related to the problem. > > > > > > > + > > > > + reds_update_client_mouse_allowed(qxl_state->reds); > > > > } > > > > > > > > SPICE_GNUC_VISIBLE > > > > Looks like you keep saying the same comments and I keep answering > > the same things. > > You said: > > "In all versions Qemu create a new primary surface before sending any 2D > command > (tested and checked code). > As current version destroy the surface I doubt in the future will send 2D > command before creating the primary surface again (would be an error). > > I think this state transitions should be documented in some way." > > This doesn't explain why you mess with those qxl/2d values in the first place > and what it has to do with cursor. > So now the size of the display is a cursor attribute in your opinion ? I think you miss all February discussion https://lists.freedesktop.org/archives/spice-devel/2017-February/date.html > > I already explained my reasoning and you had never been able to > > raise any issue on this approach while you never been able to > > confute mine. > > Frediano _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel