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> ...@@ -76,6 +76,9 @@ class GenericWindow: public SkinObject, public Observer<VarBool>
/// Give access to the visibility variable /// Give access to the visibility variable
VarBool &getVisibleVar() { return m_varVisible; } VarBool &getVisibleVar() { return m_varVisible; }
/// Window type, mainly useful when overloaded (for VoutWindow)
virtual string getType() const { return "Generic"; }
protected: protected:
/// Get the OS window /// Get the OS window
OSWindow *getOSWindow() const { return m_pOsWindow; } OSWindow *getOSWindow() const { return m_pOsWindow; }
......
...@@ -56,6 +56,8 @@ class VoutWindow: public GenericWindow ...@@ -56,6 +56,8 @@ class VoutWindow: public GenericWindow
/// Refresh an area of the window /// Refresh an area of the window
virtual void refresh( int left, int top, int width, int height ); virtual void refresh( int left, int top, int width, int height );
virtual string getType() const { return "Vout"; }
private: private:
/// Image when there is no video /// Image when there is no video
OSGraphics *m_pImage; OSGraphics *m_pImage;
......
...@@ -129,7 +129,12 @@ void Win32Loop::run() ...@@ -129,7 +129,12 @@ void Win32Loop::run()
Infos.rcPaint.right - Infos.rcPaint.left + 1, Infos.rcPaint.right - Infos.rcPaint.left + 1,
Infos.rcPaint.bottom - Infos.rcPaint.top + 1 ); Infos.rcPaint.bottom - Infos.rcPaint.top + 1 );
EndPaint( msg.hwnd, &Infos ); 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; break;
} }
case WM_MOUSEMOVE: 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