From: kos Date: Fri, 23 Dec 2011 09:27:38 +0000 (+0900) Subject: update plugin. X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=commitdiff_plain;h=02809fa01ec1684c77c9376a13719159043ba5cc update plugin. - webbrowser : add german keyboard. - fpgaupgrade : fix upgrade status and add error message. - firmwareupgrade : fix upgrade status and add error message. --- diff --git a/lib/python/Plugins/Extensions/WebBrowser/keymap/Makefile.am b/lib/python/Plugins/Extensions/WebBrowser/keymap/Makefile.am index 27d1bc7..481d8ee 100644 --- a/lib/python/Plugins/Extensions/WebBrowser/keymap/Makefile.am +++ b/lib/python/Plugins/Extensions/WebBrowser/keymap/Makefile.am @@ -1,3 +1,3 @@ installdir = $(datadir)/keymaps/vuplus -install_DATA = de.qmap +install_DATA = de.qmap ch.qmap us.qmap diff --git a/lib/python/Plugins/Extensions/WebBrowser/keymap/ch.qmap b/lib/python/Plugins/Extensions/WebBrowser/keymap/ch.qmap new file mode 100644 index 0000000..9481834 Binary files /dev/null and b/lib/python/Plugins/Extensions/WebBrowser/keymap/ch.qmap differ diff --git a/lib/python/Plugins/Extensions/WebBrowser/keymap/de.qmap b/lib/python/Plugins/Extensions/WebBrowser/keymap/de.qmap index 95c42af..cb3109d 100644 Binary files a/lib/python/Plugins/Extensions/WebBrowser/keymap/de.qmap and b/lib/python/Plugins/Extensions/WebBrowser/keymap/de.qmap differ diff --git a/lib/python/Plugins/Extensions/WebBrowser/keymap/us.qmap b/lib/python/Plugins/Extensions/WebBrowser/keymap/us.qmap new file mode 100644 index 0000000..7a257ea Binary files /dev/null and b/lib/python/Plugins/Extensions/WebBrowser/keymap/us.qmap differ diff --git a/lib/python/Plugins/Extensions/WebBrowser/plugin.py b/lib/python/Plugins/Extensions/WebBrowser/plugin.py index 1985c06..b947a74 100644 --- a/lib/python/Plugins/Extensions/WebBrowser/plugin.py +++ b/lib/python/Plugins/Extensions/WebBrowser/plugin.py @@ -426,7 +426,9 @@ class BrowserLauncher(ConfigListScreen, Screen): self.browser_root = "/usr/bin" self.browser_name = "arora" - self.conf_file = "/usr/lib/enigma2/python/Plugins/Extensions/WebBrowser/settings.conf" + + from Tools.Directories import resolveFilename, SCOPE_PLUGINS + self.conf_file = resolveFilename(SCOPE_PLUGINS, "Extensions/WebBrowser/settings.conf") self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "WizardActions", "ColorActions", "SetupActions", ], { "red": self.keyCancel, "green": self.keyGo, @@ -549,30 +551,29 @@ class BrowserLauncher(ConfigListScreen, Screen): self.conf_mouse = self.mouse_list[0][0] self.mouse = ConfigSelection(default = self.conf_mouse, choices = self.mouse_list) self.list.append(getConfigListEntry(_('Mouse'), self.mouse)) - + if self.conf_keyboard == "" or self.getHandlerName(self.conf_keyboard) is None: self.conf_keyboard = self.keyboard_list[0][0] self.keyboard = ConfigSelection(default = self.conf_keyboard, choices = self.keyboard_list) self.list.append(getConfigListEntry(_('Keyboard'), self.keyboard)) - if self.conf_alpha == "": - self.conf_alpha = "255" - self.alpha = ConfigSlider(default = int(self.conf_alpha), increment = 10, limits = (0, 255)) - self.list.append(getConfigListEntry(_("Alpha Value"), self.alpha)) - if self.conf_keymap == "": self.conf_keymap = self.getLanguage() - self.lang_list = [("en", "English"), ("de", "German")] + self.lang_list = [("rc_en", "English(RC)"), ("rc_ch", "German(RC)"), ("en", "English"), ("ch", "German")] self.langs = ConfigSelection(default = self.conf_keymap, choices = self.lang_list) - self.list.append(getConfigListEntry(_("Language"), self.langs)) + self.list.append(getConfigListEntry(_(" - Type"), self.langs)) + if self.conf_alpha == "": + self.conf_alpha = "255" + self.alpha = ConfigSlider(default = int(self.conf_alpha), increment = 10, limits = (0, 255)) + self.list.append(getConfigListEntry(_("Alpha Value"), self.alpha)) self["config"].list = self.list self["config"].l.setList(self.list) def getLanguage(self, lang=language.getLanguage()): if self.current_lang_idx == 1: - return "de" - return "en" + return "rc_ch" + return "rc_en" def makeHandlerList(self, data): n = "" @@ -668,8 +669,13 @@ class BrowserLauncher(ConfigListScreen, Screen): mouse_cmd = "export QWS_MOUSE_PROTO=LinuxInput:/dev/input/%s; " % (str(mouse_param)) keymap_param = "" - if self.langs.value == "de": + if self.langs.value == "ch": + keymap_param = ":keymap=/usr/share/keymaps/vuplus/ch.qmap" + elif self.langs.value == "rc_ch": keymap_param = ":keymap=/usr/share/keymaps/vuplus/de.qmap" + elif self.langs.value == "rc_en": + keymap_param = ":keymap=/usr/share/keymaps/vuplus/us.qmap" + kbd_cmd = "export QWS_KEYBOARD=LinuxInput:/dev/input/%s%s; " % (str(keyboard_param), keymap_param) cmd = "%s%s%s%s" % (extra_cmd, kbd_cmd, mouse_cmd, browser_cmd) @@ -693,7 +699,7 @@ class BrowserLauncher(ConfigListScreen, Screen): self.saveConfig() self.info.setText("Starting Webbrowser. Please wait...") if self.lock == False: - if self.langs.value == "de": + if self.langs.value == "ch" or self.langs.value == "rc_ch": language.activateLanguageIndex(1) else: language.activateLanguageIndex(0) diff --git a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/_fpga.so b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/_fpga.so index 078852e..52cb658 100644 Binary files a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/_fpga.so and b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/_fpga.so differ diff --git a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/fpga.py b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/fpga.py index 437e654..8819dac 100644 --- a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/fpga.py +++ b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/fpga.py @@ -77,6 +77,9 @@ NO_TAR_DEVICE_PATH = _fpga.NO_TAR_DEVICE_PATH FAIL_OPEN_SRC_FILE = _fpga.FAIL_OPEN_SRC_FILE ZERO_SRC_FILE_SIZE = _fpga.ZERO_SRC_FILE_SIZE FAIL_OPEN_DEVICE = _fpga.FAIL_OPEN_DEVICE +ERROR_FILE_SIZE = _fpga.ERROR_FILE_SIZE +ERROR_SET_ACTION_CODE = _fpga.ERROR_SET_ACTION_CODE +ERROR_PROGRAMMING = _fpga.ERROR_PROGRAMMING class Fpga(_object): __swig_setmethods__ = {} __setattr__ = lambda self, name, value: _swig_setattr(self, Fpga, name, value) diff --git a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/plugin.py b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/plugin.py index df71d0b..313e162 100644 --- a/lib/python/Plugins/SystemPlugins/FPGAUpgrade/plugin.py +++ b/lib/python/Plugins/SystemPlugins/FPGAUpgrade/plugin.py @@ -23,11 +23,11 @@ from Components.Sources.StaticText import StaticText class UpgradeStatus(Screen): skin = """ - + - + """ def __init__(self, session, parent, timeout = 10): @@ -37,7 +37,7 @@ class UpgradeStatus(Screen): self["actions"] = ActionMap(["OkCancelActions"], { "ok": self.keyExit, - }, -1) + }, -2) self.is_done = 0 self.exit_count = 0 @@ -59,6 +59,7 @@ class UpgradeStatus(Screen): self.timer_check_progress.callback.append(self.callbackDoCheckProgress) interval = self.parent.FPGA.get_interval() self.timer_check_progress.start(interval) + self.need_restart = False def callbackDoCheckProgress(self): self.status = self.parent.FPGA.get_status() @@ -76,9 +77,13 @@ class UpgradeStatus(Screen): self.timer_exit = eTimer() self.timer_exit.callback.append(self.callbackExit) self.timer_exit.start(1000) - elif self.status == -1 or self.status == -2: + elif self.status < 0:#elif self.status == -1 or self.status == -2: #print "fpga-upgrade error >> errno : [%d]" % (self.status) - self.status_bar.setText(_("Error[%d]. Press Cancel to exit." % (self.status))) + ERROR_MSG = '' + ERROR_CODE = int(self.status) * -1 + ERROR_MSG = self.parent.FPGA.get_error_msg(ERROR_CODE, ERROR_MSG) + self.status_bar.setText("Fail to update!!") + self["info"].setText(_("Error[%d] : %s.\nPress OK to exit." % (self.status, ERROR_MSG))) self.timer_check_progress.stop() self.is_done = 1 else: @@ -86,6 +91,7 @@ class UpgradeStatus(Screen): self.status_bar.setText(_("%d / 100" % (self.status))) def callbackExit(self): + self.need_restart = True if self.exit_count == self.timeout: self.timer_exit.stop() self.keyExit() @@ -93,6 +99,9 @@ class UpgradeStatus(Screen): self.instance.setTitle("%s (%d)" % (self.title_str, (self.timeout-self.exit_count))) def keyExit(self): + if self.need_restart: + from Screens.Standby import TryQuitMainloop + self.session.open(TryQuitMainloop, 2) if self.is_done : self.close() diff --git a/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/_fu.so b/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/_fu.so index 32b39c0..3aa21d8 100644 Binary files a/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/_fu.so and b/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/_fu.so differ diff --git a/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/plugin.py b/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/plugin.py index 28db880..f3c28a7 100644 --- a/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/plugin.py +++ b/lib/python/Plugins/SystemPlugins/FirmwareUpgrade/plugin.py @@ -102,7 +102,7 @@ class UpgradeStatus(Screen): self.cbConfirmExit(False) return status = self.FU.getStatus() - if self.old_status > status: + if self.old_status > status and status != -1: self.session.open(MessageBox, _("Fail to upgrade!! Retry!!"), MessageBox.TYPE_INFO, timeout = 10) self.slider.setValue(status) self["status"].setText(_("%d / 100" % (status))) @@ -143,7 +143,7 @@ class Filebrowser(Screen): skin = """ - + @@ -154,7 +154,7 @@ class Filebrowser(Screen): Screen.__init__(self, session) self.session = session - self["key_blue"] = StaticText(_("Download")) + self["key_blue"] = StaticText(_("Download the firmware (latest)")) self["status"] = StaticText(_(" ")) self["file_list"] = FileList("/", matchingPattern = "^.*") @@ -237,7 +237,7 @@ class Filebrowser(Screen): # tf : target file name(string) # bd : target base directory(string) # cbfunc(string) : callback function(function) - def doDownload(self, uri, tf, bd='/tmp', cbfunc=None): + def doDownload(self, uri, tf, bd='/tmp', cbfunc=None, errmsg="Fail to download."): tar = bd + "/" + tf #print "[FirmwareUpgrade] - Download Info : [%s][%s]" % (uri, tar) def doHook(blockNumber, blockSize, totalSize) : @@ -247,13 +247,17 @@ class Filebrowser(Screen): try: opener.open(uri) except: - self.session.open(MessageBox, _("File not found in this URL:\n%s"%(uri)), MessageBox.TYPE_INFO, timeout = 10) + #self.session.open(MessageBox, _("File not found in this URL:\n%s"%(uri)), MessageBox.TYPE_INFO, timeout = 10) + print "[FirmwareUpgrade] - Fail to download. URL :",uri + self.session.open(MessageBox, _(errmsg), MessageBox.TYPE_INFO, timeout = 10) del opener return False try : f, h = urlretrieve(uri, tar, doHook) except IOError, msg: - self.session.open(MessageBox, _(str(msg)), MessageBox.TYPE_INFO, timeout = 10) + #self.session.open(MessageBox, _(str(msg)), MessageBox.TYPE_INFO, timeout = 10) + print "[FirmwareUpgrade] - Fail to download. ERR_MSG :",str(msg) + self.session.open(MessageBox, _(errmsg), MessageBox.TYPE_INFO, timeout = 10) del opener return False del opener @@ -298,12 +302,12 @@ class Filebrowser(Screen): os.system("rm -f /tmp/" + root_file) # md5 - if not self.doDownload(self.guri+".md5", self.gbin+".md5", cbfunc=cbDownloadDone): + if not self.doDownload(self.guri+".md5", self.gbin+".md5", cbfunc=cbDownloadDone, errmsg="Can't download the checksum file."): self.resetGUI() self.downloadLock = False return # data - if not self.doDownload(self.guri, self.gbin, cbfunc=cbDownloadDone): + if not self.doDownload(self.guri, self.gbin, cbfunc=cbDownloadDone, errmsg="Can't download the firmware file."): self.resetGUI() self.downloadLock = False return