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:
parent
d4c93c3b06
commit
7e27bacc06
1 changed files with 11 additions and 0 deletions
|
@ -159,6 +159,7 @@ static int composite_opcode;
|
||||||
uint32_t currentOutputWidth, currentOutputHeight;
|
uint32_t currentOutputWidth, currentOutputHeight;
|
||||||
|
|
||||||
static Window currentFocusWindow;
|
static Window currentFocusWindow;
|
||||||
|
static win* currentFocusWin;
|
||||||
static Window currentInputFocusWindow;
|
static Window currentInputFocusWindow;
|
||||||
static Window currentOverlayWindow;
|
static Window currentOverlayWindow;
|
||||||
static Window currentNotificationWindow;
|
static Window currentNotificationWindow;
|
||||||
|
@ -1429,6 +1430,7 @@ determine_and_apply_focus (Display *dpy, MouseCursor *cursor)
|
||||||
gameFocused = False;
|
gameFocused = False;
|
||||||
|
|
||||||
currentFocusWindow = None;
|
currentFocusWindow = None;
|
||||||
|
currentFocusWin = nullptr;
|
||||||
currentOverlayWindow = None;
|
currentOverlayWindow = None;
|
||||||
currentNotificationWindow = None;
|
currentNotificationWindow = None;
|
||||||
|
|
||||||
|
@ -1582,6 +1584,7 @@ determine_and_apply_focus (Display *dpy, MouseCursor *cursor)
|
||||||
}
|
}
|
||||||
|
|
||||||
currentFocusWindow = focus->id;
|
currentFocusWindow = focus->id;
|
||||||
|
currentFocusWin = focus;
|
||||||
|
|
||||||
if ( currentInputFocusWindow != inputFocus->id )
|
if ( currentInputFocusWindow != inputFocus->id )
|
||||||
{
|
{
|
||||||
|
@ -2240,7 +2243,10 @@ static void
|
||||||
destroy_win (Display *dpy, Window id, Bool gone, Bool fade)
|
destroy_win (Display *dpy, Window id, Bool gone, Bool fade)
|
||||||
{
|
{
|
||||||
if (currentFocusWindow == id && gone)
|
if (currentFocusWindow == id && gone)
|
||||||
|
{
|
||||||
currentFocusWindow = None;
|
currentFocusWindow = None;
|
||||||
|
currentFocusWin = nullptr;
|
||||||
|
}
|
||||||
if (currentInputFocusWindow == id && gone)
|
if (currentInputFocusWindow == id && gone)
|
||||||
currentInputFocusWindow = None;
|
currentInputFocusWindow = None;
|
||||||
if (currentOverlayWindow == id && gone)
|
if (currentOverlayWindow == id && gone)
|
||||||
|
@ -2790,6 +2796,11 @@ void handle_done_commits( void )
|
||||||
hasRepaint = true;
|
hasRepaint = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( w->isSteamStreamingClientVideo && currentFocusWin && currentFocusWin->isSteamStreamingClient )
|
||||||
|
{
|
||||||
|
hasRepaint = true;
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue