Commit 51a3196b authored by Olivier Teulière's avatar Olivier Teulière

* modules/gui/skins2: ignore WM_PAINT events on the vout window

   This gives better results when moving the window, but resizing is still
   flickering
parent 6227d134
......@@ -76,6 +76,9 @@ class GenericWindow: public SkinObject, public Observer<VarBool>
/// Give access to the visibility variable
VarBool &getVisibleVar() { return m_varVisible; }
/// Window type, mainly useful when overloaded (for VoutWindow)
virtual string getType() const { return "Generic"; }
protected:
/// Get the OS window
OSWindow *getOSWindow() const { return m_pOsWindow; }
......
......@@ -56,6 +56,8 @@ class VoutWindow: public GenericWindow
/// Refresh an area of the window
virtual void refresh( int left, int top, int width, int height );
virtual string getType() const { return "Vout"; }
private:
/// Image when there is no video
OSGraphics *m_pImage;
......
......@@ -129,7 +129,12 @@ void Win32Loop::run()
Infos.rcPaint.right - Infos.rcPaint.left + 1,
Infos.rcPaint.bottom - Infos.rcPaint.top + 1 );
EndPaint( msg.hwnd, &Infos );
win.processEvent( evt );
// Ignore all the painting events for the vout window,
// otherwise we are going to screw up the colorkey
if( win.getType() != "Vout" )
{
win.processEvent( evt );
}
break;
}
case WM_MOUSEMOVE:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment