aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2009-06-16 18:30:27 +0200
committerghost <andreas.monzner@multimedia-labs.de>2009-06-16 18:30:27 +0200
commita9f871b933a8771d6946395df1e1f0569b3cf582 (patch)
treefe48ffbc80ff077138281b6602492d8cbc902994 /lib
parent9a2b8cd197039db5a4324149dcf6e817171166bf (diff)
parent883a9c93798e01fc2825673799f48bf2a0a68d15 (diff)
downloadenigma2-a9f871b933a8771d6946395df1e1f0569b3cf582.tar.gz
enigma2-a9f871b933a8771d6946395df1e1f0569b3cf582.zip
Merge branch 'master' of git.opendreambox.org:/git/enigma2
Diffstat (limited to 'lib')
-rw-r--r--lib/base/filepush.cpp2
-rw-r--r--lib/gui/ewidget.cpp1
-rw-r--r--lib/gui/ewidget.h3
-rw-r--r--lib/python/Components/Converter/MovieInfo.py2
-rw-r--r--lib/python/Components/GUISkin.py3
-rw-r--r--lib/python/Plugins/SystemPlugins/Videomode/plugin.py2
-rw-r--r--lib/service/servicedvb.cpp12
7 files changed, 21 insertions, 4 deletions
diff --git a/lib/base/filepush.cpp b/lib/base/filepush.cpp
index d43b6e1c..605ec8a8 100644
--- a/lib/base/filepush.cpp
+++ b/lib/base/filepush.cpp
@@ -192,7 +192,7 @@ void eFilePushThread::thread()
struct pollfd pfd;
pfd.fd = m_fd_dest;
- pfd.events = POLLHUP;
+ pfd.events = POLLPRI;
poll(&pfd, 1, 10000);
sleep(5); /* HACK to allow ES buffer to drain */
already_empty = 1;
diff --git a/lib/gui/ewidget.cpp b/lib/gui/ewidget.cpp
index 2320cd46..fea3524c 100644
--- a/lib/gui/ewidget.cpp
+++ b/lib/gui/ewidget.cpp
@@ -54,6 +54,7 @@ void eWidget::resize(eSize size)
only once. */
eSize old_size = m_size;
eSize old_offset = m_client_offset;
+ m_client_size = size;
m_client_offset = eSize(0, 0);
event(evtWillChangeSize, &size, &m_client_offset);
if (old_size == m_size)
diff --git a/lib/gui/ewidget.h b/lib/gui/ewidget.h
index 7ddbbc57..8af66b05 100644
--- a/lib/gui/ewidget.h
+++ b/lib/gui/ewidget.h
@@ -22,6 +22,7 @@ public:
ePoint position() const { return m_position; }
eSize size() const { return m_size; }
+ eSize csize() const { return m_client_size; }
void invalidate(const gRegion &region = gRegion::invalidRegion());
@@ -68,7 +69,7 @@ private:
ePtrList<eWidget> m_childs;
ePoint m_position;
- eSize m_size;
+ eSize m_size, m_client_size;
/* will be accounted when there's a client offset */
eSize m_client_offset;
eWidget *m_parent;
diff --git a/lib/python/Components/Converter/MovieInfo.py b/lib/python/Components/Converter/MovieInfo.py
index 635cedc4..d5995fe8 100644
--- a/lib/python/Components/Converter/MovieInfo.py
+++ b/lib/python/Components/Converter/MovieInfo.py
@@ -41,7 +41,7 @@ class MovieInfo(Converter, object):
rec_ref_str = info.getInfoString(service, iServiceInformation.sServiceref)
return ServiceReference(rec_ref_str).getServiceName()
elif self.type == self.MOVIE_REC_FILESIZE:
- return "%d MB" % (info.getInfo(service, iServiceInformation.sFileSize) / (1024*1024))
+ return "%d MB" % (info.getInfoObject(service, iServiceInformation.sFileSize) / (1024*1024))
return ""
text = property(getText)
diff --git a/lib/python/Components/GUISkin.py b/lib/python/Components/GUISkin.py
index 9eb4a80b..1bd27297 100644
--- a/lib/python/Components/GUISkin.py
+++ b/lib/python/Components/GUISkin.py
@@ -85,6 +85,9 @@ class GUISkin:
if not self.instance:
from enigma import eWindow
self.instance = eWindow(self.desktop, z)
+
+ # we need to make sure that certain attributes come last
+ self.skinAttributes.sort(key=lambda a: {"position": 1}.get(a[0], 0))
self.title = title
applyAllAttributes(self.instance, self.desktop, self.skinAttributes, self.scale)
self.createGUIScreen(self.instance, self.desktop)
diff --git a/lib/python/Plugins/SystemPlugins/Videomode/plugin.py b/lib/python/Plugins/SystemPlugins/Videomode/plugin.py
index 6b6d5045..7a2127ac 100644
--- a/lib/python/Plugins/SystemPlugins/Videomode/plugin.py
+++ b/lib/python/Plugins/SystemPlugins/Videomode/plugin.py
@@ -139,7 +139,7 @@ class VideoSetup(Screen, ConfigListScreen):
if (port, mode, rate) != self.last_good:
self.hw.setMode(port, mode, rate)
from Screens.MessageBox import MessageBox
- self.session.openWithCallback(self.confirm, MessageBox, "Is this videomode ok?", MessageBox.TYPE_YESNO, timeout = 20, default = False)
+ self.session.openWithCallback(self.confirm, MessageBox, _("Is this videomode ok?"), MessageBox.TYPE_YESNO, timeout = 20, default = False)
else:
self.keySave()
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp
index c256213d..70675fd7 100644
--- a/lib/service/servicedvb.cpp
+++ b/lib/service/servicedvb.cpp
@@ -336,6 +336,7 @@ public:
int isPlayable(const eServiceReference &ref, const eServiceReference &ignore) { return 1; }
int getInfo(const eServiceReference &ref, int w);
std::string getInfoString(const eServiceReference &ref,int w);
+ PyObject *getInfoObject(const eServiceReference &r, int what);
};
DEFINE_REF(eStaticServiceDVBPVRInformation);
@@ -427,6 +428,17 @@ std::string eStaticServiceDVBPVRInformation::getInfoString(const eServiceReferen
}
}
+PyObject *eStaticServiceDVBPVRInformation::getInfoObject(const eServiceReference &r, int what)
+{
+ switch (what)
+ {
+ case iServiceInformation::sFileSize:
+ return PyLong_FromLongLong(m_parser.m_filesize);
+ default:
+ Py_RETURN_NONE;
+ }
+}
+
RESULT eStaticServiceDVBPVRInformation::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &evt, time_t start_time)
{
if (!ref.path.empty())