git.cweiske.de
/
enigma2.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
1d7fa5b
)
properly scale change regions
author
Felix Domke
<felix.domke@multimedia-labs.de>
Thu, 16 Jul 2009 21:41:44 +0000
(23:41 +0200)
committer
Felix Domke
<felix.domke@multimedia-labs.de>
Thu, 16 Jul 2009 21:41:44 +0000
(23:41 +0200)
lib/gui/esubtitle.cpp
patch
|
blob
|
history
diff --git
a/lib/gui/esubtitle.cpp
b/lib/gui/esubtitle.cpp
index f3d0e35f1edcb5afc655aef11deb060b8e67e180..5cf4cfa2b6d9c403712845ea83a22cb471bccddb 100644
(file)
--- a/
lib/gui/esubtitle.cpp
+++ b/
lib/gui/esubtitle.cpp
@@
-115,8
+115,12
@@
void eSubtitleWidget::clearPage()
void eSubtitleWidget::setPixmap(ePtr<gPixmap> &pixmap, gRegion changed, eRect pixmap_dest)
{
m_pixmap = pixmap;
void eSubtitleWidget::setPixmap(ePtr<gPixmap> &pixmap, gRegion changed, eRect pixmap_dest)
{
m_pixmap = pixmap;
- m_pixmap_dest = pixmap_dest;
+ m_pixmap_dest = pixmap_dest;
/* this is in a virtual 720x576 cage */
+ /* incoming "changed" regions are relative to the physical pixmap area, so they have to be scaled to the virtual pixmap area, then to the screen */
+ changed.scale(m_pixmap_dest.width(), 720, m_pixmap_dest.height(), 576);
+ changed.moveBy(ePoint(m_pixmap_dest.x(), m_pixmap_dest.y()));
+
changed.scale(size().width(), pixmap->size().width(), size().height(), pixmap->size().height());
invalidate(changed);
changed.scale(size().width(), pixmap->size().width(), size().height(), pixmap->size().height());
invalidate(changed);