Merge pull request #11190 from akallabeth/x11-floatbar-fix

[client,x11] only filter input on floatbar lock
This commit is contained in:
akallabeth
2025-02-16 10:06:21 +01:00
committed by GitHub
2 changed files with 20 additions and 3 deletions

View File

@@ -147,7 +147,7 @@ static BOOL xf_disp_sendResize(xfDispContext* xfDisp)
xfDisp->lastSentDate = GetTickCount64();
const UINT32 mcount = freerdp_settings_get_uint32(settings, FreeRDP_MonitorCount);
if (xfc->fullscreen && (mcount > 0))
if (mcount > 1)
{
const rdpMonitor* monitors =
freerdp_settings_get_pointer(settings, FreeRDP_MonitorDefArray);
@@ -278,7 +278,7 @@ static void xf_disp_OnTimer(void* context, const TimerEventArgs* e)
if (!xf_disp_check_context(context, &xfc, &xfDisp, &settings))
return;
if (!xfDisp->activated || xfc->fullscreen)
if (!xfDisp->activated)
return;
xf_disp_sendResize(xfDisp);

View File

@@ -1216,7 +1216,24 @@ BOOL xf_event_process(freerdp* instance, const XEvent* event)
}
if (xf_floatbar_is_locked(floatbar))
return TRUE;
{
/* Filter input events, floatbar is locked do not forward anything to the session */
switch (event->type)
{
case MotionNotify:
case ButtonPress:
case ButtonRelease:
case KeyPress:
case KeyRelease:
case FocusIn:
case FocusOut:
case EnterNotify:
case LeaveNotify:
return TRUE;
default:
break;
}
}
}
xf_event_execute_action_script(xfc, event);