aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2008-06-11 21:50:55 +0000
committerFelix Domke <tmbinc@elitedvb.net>2008-06-11 21:50:55 +0000
commitbf21ddd450e9e7b223e89623c6e31c806eb6374c (patch)
tree7ac01d4a82e332e6b728303f2579bc2391d4b494
parent31b07c82b672257ebade486b1c39914104bd6372 (diff)
downloadenigma2-bf21ddd450e9e7b223e89623c6e31c806eb6374c.tar.gz
enigma2-bf21ddd450e9e7b223e89623c6e31c806eb6374c.zip
also resize widget desktop on resolution change
-rw-r--r--lib/gui/ewidgetdesktop.cpp6
-rw-r--r--lib/gui/ewidgetdesktop.h2
-rw-r--r--skin.py1
3 files changed, 9 insertions, 0 deletions
diff --git a/lib/gui/ewidgetdesktop.cpp b/lib/gui/ewidgetdesktop.cpp
index 09c0fa1b..9f40a3db 100644
--- a/lib/gui/ewidgetdesktop.cpp
+++ b/lib/gui/ewidgetdesktop.cpp
@@ -507,3 +507,9 @@ void eWidgetDesktop::clearVisibility(eWidget *widget)
for (ePtrList<eWidget>::iterator i(widget->m_childs.begin()); i != widget->m_childs.end(); ++i)
clearVisibility(*i);
}
+
+void eWidgetDesktop::resize(eSize size)
+{
+ m_screen.m_dirty_region = gRegion(eRect(ePoint(0, 0), size));
+ m_screen.m_screen_size = size;
+}
diff --git a/lib/gui/ewidgetdesktop.h b/lib/gui/ewidgetdesktop.h
index 7a0a36a7..34befbdf 100644
--- a/lib/gui/ewidgetdesktop.h
+++ b/lib/gui/ewidgetdesktop.h
@@ -70,6 +70,8 @@ public:
int getStyleID() { return m_style_id; }
void setStyleID(int id) { m_style_id = id; }
+
+ void resize(eSize size);
private:
ePtrList<eWidget> m_root;
void calcWidgetClipRegion(eWidget *widget, gRegion &parent_visible);
diff --git a/skin.py b/skin.py
index f8a284f1..a7824f91 100644
--- a/skin.py
+++ b/skin.py
@@ -256,6 +256,7 @@ def loadSingleSkinData(desktop, skin, path_prefix):
#print "Resolution:", xres,yres,bpp
from enigma import gFBDC
gFBDC.getInstance().setResolution(xres, yres)
+ desktop.resize(eSize(xres, yres))
if bpp != 32:
# load palette (not yet implemented)
pass