summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/xinevideowidget.cpp18
1 files changed, 6 insertions, 12 deletions
diff --git a/noncore/multimedia/opieplayer2/xinevideowidget.cpp b/noncore/multimedia/opieplayer2/xinevideowidget.cpp
index 7f59085..78ebe19 100644
--- a/noncore/multimedia/opieplayer2/xinevideowidget.cpp
+++ b/noncore/multimedia/opieplayer2/xinevideowidget.cpp
@@ -1,5 +1,4 @@
-
/*
                This file is part of the Opie Project
              Copyright (c) 2002 Max Reiss <harlekin@handhelds.org>
@@ -214,8 +213,11 @@ void XineVideoWidget::paintEvent2 ( QPaintEvent * )
}
int middle_w = _vw/2;
int middle_h = _vh/2;
m_thisframe.setRect(width()/2-middle_w,height()/2-middle_h,_vw,_vh);
+
+ {
+ // is this stuff realy needed? it seems working without, too.
QRect topFill,rightFill,leftFill,downFill;
topFill. setRect(0,0 ,width(),m_thisframe.top());
downFill.setCoords(0,m_thisframe.bottom(),width(),height());
rightFill.setCoords(m_thisframe.right(),0,width(),height());
@@ -232,8 +234,10 @@ void XineVideoWidget::paintEvent2 ( QPaintEvent * )
}
if (leftFill.isValid()) {
p.fillRect(leftFill,black);
}
+
+ }
uchar *fb = dp. frameBuffer ( );
uchar *frame = m_buff;
// where is the video frame in fb coordinates
@@ -266,15 +270,8 @@ void XineVideoWidget::paintEvent2 ( QPaintEvent * )
}
dst += m_bytes_per_line_fb;
}
}
-
-
- {
- // QVFB hack by Martin Jones
- // We need to "touch" all affected clip rects with a normal QPainter in addition to the QDirectPainter
- p.fillRect(QRect(mapFromGlobal (m_thisframe. topLeft ( )), m_thisframe.size ()),QBrush(NoBrush));
- }
}
}
QImage *XineVideoWidget::logo ( ) const
@@ -310,11 +307,8 @@ void XineVideoWidget::setVideoFrame ( uchar* img, int w, int h, int bpl )
m_lastsize=l;
} else {
m_buff = 0;
}
- } else if (l==0){
- delete[] m_buff;
- m_buff = 0;
}
m_lastsize = l;
m_framesize = QSize(w,h);
if (m_buff && m_lastsize) {
@@ -322,9 +316,9 @@ void XineVideoWidget::setVideoFrame ( uchar* img, int w, int h, int bpl )
}
m_bytes_per_line_frame = bpl;
} // Release Mutex
- paintEvent2(0);
+ if (m_buff) paintEvent2(0);
}
void XineVideoWidget::resizeEvent ( QResizeEvent * )
{