steamcompmgr: fix bug where we wouldn't repaint streaming video

Would just sit there if only the video underlay committed.
This commit is contained in:
Pierre-Loup A. Griffais 2021-05-13 22:55:32 -07:00
parent d4c93c3b06
commit 7e27bacc06

View file

@ -159,6 +159,7 @@ static int composite_opcode;
uint32_t currentOutputWidth, currentOutputHeight;
static Window currentFocusWindow;
static win* currentFocusWin;
static Window currentInputFocusWindow;
static Window currentOverlayWindow;
static Window currentNotificationWindow;
@ -1429,6 +1430,7 @@ determine_and_apply_focus (Display *dpy, MouseCursor *cursor)
gameFocused = False;
currentFocusWindow = None;
currentFocusWin = nullptr;
currentOverlayWindow = None;
currentNotificationWindow = None;
@ -1582,6 +1584,7 @@ determine_and_apply_focus (Display *dpy, MouseCursor *cursor)
}
currentFocusWindow = focus->id;
currentFocusWin = focus;
if ( currentInputFocusWindow != inputFocus->id )
{
@ -2240,7 +2243,10 @@ static void
destroy_win (Display *dpy, Window id, Bool gone, Bool fade)
{
if (currentFocusWindow == id && gone)
{
currentFocusWindow = None;
currentFocusWin = nullptr;
}
if (currentInputFocusWindow == id && gone)
currentInputFocusWindow = None;
if (currentOverlayWindow == id && gone)
@ -2789,6 +2795,11 @@ void handle_done_commits( void )
{
hasRepaint = true;
}
if ( w->isSteamStreamingClientVideo && currentFocusWin && currentFocusWin->isSteamStreamingClient )
{
hasRepaint = true;
}
break;
}