Beiträge von Sven H

    Mit der hier angebotenen Variante (auch in der ersten zip) crasht es ja auch nicht, da im Plugin-Code ein neuer Screenname verwendet wird, so dass ein evtl. im Skin vorhandener alter Screen gar nicht verwendet wird :winking_face:


    Hätte ich den Screennamen nicht geändert, käme auch nur ein GS soweit der Screen im Skin vorhanden ist.
    Hatte das bei mir simuliert und den alten Screen in die skin.xml meines genutzten Skins eingetragen.
    Da kam es dann erwartungsgemäß zum Crash.


    Wenn gewollt, dann müssen die Skins den neuen Screen "PluginHider_New" natürlich neu skinnen :winking_face:
    Aber immer noch besser als ein GS.


    Gibt es da eigentlich eine allgemeine Vorgabe/Lösung, wie man mit solchen Screen-Änderungen umgeht?
    Jemandem damit einen GS zu verschaffen wäre ja nicht die feine Art :winking_face:

    Ich hatte gerade nochmal mit dem alten Skin getestet.
    Aber das wird wohl nichts, da kommt immer ein GS.
    Hab die Labels jetzt auch über "name" referenziert und nicht mehr über "source".
    Mit dem alten Screen hab ich den Tabbar-Ersatz nicht hinbekommen.


    Der Screen aus dem Plugin heißt deshalb jetzt auch "PluginHider_New".
    Dadurch wird dann definitiv nicht mehr der alte Screen genutzt, sondern dieser und somit gibt es keine Probleme.


    Den Text "test" hab ich noch rausgenommen - war ja auch eigentlich nur zum Test gedacht :winking_face:
    Bei mir war der Text ohne size-Angabe komischerweise nicht zu sehen.
    Hab gerade auch nochmal die aktuelle Variante mit dem FullHDR3 getestet - kein "test" zu sehen :winking_face:


    @dhwz
    Danke für den Test und die Rückinfo zum Text "test"


    Bitte sicherheitshalber nochmal die aktuelle Version testen.


    Edit:
    aktueller Download und Screenshots jetzt in Post #32

    Also meinst du, ich soll einfach ein PullRequest machen?
    Wollte das nicht ungefragt machen :winking_face:


    Werde vielleicht auch noch abwarten, ob noch weitere Rückmeldungen kommen.


    Stimmt, im Grunde könnte man die Version auch weglassen, da es ja dann direkt im Update von DMM mit drin ist.
    Bin grundsätzlich aber immer ein Freund von Versionsnummern :winking_face:

    Hallo


    Da man ja doch gern die Kontrolle über die Menü-Listen der Plugins hat und nicht bei jedem Plugin im vollen Umfang diese Menü-Punkte konfigurierbar sind, hab ich mich immer gefragt, warum dieser PluginHider nicht auch das Menü der MOVIELIST unterstützt.


    Daher hab ich das einfach mal integriert. :winking_face:
    Die optische Tabbar habe ich auch code-technisch etwas umgebaut (jetzt ohne MultiPixmap).
    Ein FHD-Skin ist jetzt auch dabei.


    Für Tests und kurze Rückinfo wäre ich dankbar.
    Bei mir läuft es unter OE2.5 ohne Probleme.


    Falls gewünscht, könnte ich dazu auch einen PullRequest für "opendreambox/enigma2-plugins" machen.


    Edit:
    aktueller Download und Screenshots jetzt in Post #32

    Nach ewiger Suche und zig Versuchen habe ich endlich die Lösung gefunden :smiling_face:
    Nachdem ich schon alle InfoBar..._inits einiger Plugins gekapert hatte, ist mir aufgefallen, dass EMC ja auch nochmal alle InfoBar-Geschichten (u.a. die InfoBarEPG) in der InfoBarSupport holt.
    Da hätte ich aber auch früher drauf kommen können :winking_face:


    Nun musste ich also nur noch die InfoBarSupport__init__ aus der InfoBarSupport.py (EMC) in das DMM-QuickButton-Plugin umleiten, dort die InfoBarSupport__init__ im Original ausführen und im Anschluss wie schon oben von 'dre' erwähnt, mit folgendem Code den Befehl für die gelbe Taste (ursprünglich aus der InfoBarEPG) aus der ActionMap löschen:

    Code
    actions = self["EPGActions"].actions
    	# delete yellow-key-action from EMC_InfoBarSupport (InfoBarEPG)
    	del actions['showEventList']


    Dadurch wird jetzt im EMC-MoviePlayer die im Quickbutton zugewiesene Aktion für die gelbe Taste aufgerufen und nicht mehr der leere SingleEPG :winking_face:


    Das funktioniert jetzt auch mit der originalen InfoBarGenerics.py, so dass ich da nichts mehr anpassen muss (also auch nicht mehr nach einem DMM-Update).

    Ja, das kenne ich vom GithubPluginUpdater.
    Das gab's bei den VU's auch komische Übersetzungen direkt aus dem Skin :winking_face:
    Da half tatsächlich auch nur das Leerzeichen.


    Bei mir wurde aus Update = Aktualisieren, das war dann viel zu breit für den Button :winking_face:

    Ok.


    Wenn ich den Code jetzt richtig deute, werden doch zuerst die Texte aus den EMC-po geholt.
    Nur wenn dort nichts gefunden wird, dann wird in den E2-Texten gesucht.


    Es könnte evtl. schief gehen, wenn es in der EMC-po eine 1:1 -Übersetzung gibt.
    Also Englisch-Text = Deutsch-Text :smiling_face:
    Dann holt er sich ggf. ne andere Übersetzung aus E2.

    ja, gettext.gettext(txt)
    EMC macht aber absichtlich: _ = lambda txt: gettext.dgettext("EnhancedMovieCenter", txt) if txt else ""

    @alpha
    Hab das nun mal erfolgreich getestet.
    Hier das Ergebnis, falls es dich noch interessiert.


    Wenn du in der __init__.py die Zeile: _ = lambda txt: gettext.dgettext("EnhancedMovieCenter", txt) if txt else ""


    durch folgenden Code ersetzt, dann werden in EMC unbekannte Texte auch mit den E2-Texten übersetzt:

    Python
    #_ = lambda txt: gettext.dgettext("EnhancedMovieCenter", txt) if txt else ""
    
    
    def _(txt):
    		t = gettext.dgettext("EnhancedMovieCenter", txt)
    		if t == txt:
    			print "[%s] fallback to default translation for %s" %("EnhancedMovieCenter", txt)
    			t = gettext.gettext(txt)
    		return t


    @dhwz
    Danke für den Denkanstoß.
    Hier kann man noch ne Menge lernen :winking_face:

    @dhwz
    Es geht ja mehr um die theoretische Lösung des Problems :winking_face:


    Soll ja keine Aufforderung zum Anpassen des EMC-Codes sein ☺️


    Würde mich einfach nur mal interessieren, ob das machbar wäre.
    Also zusätzlich zu einer lokalen Übersetzung auch die DreamOS-Übersetzungen als Rückfallebene zu nutzen.

    Ich würde vermuten dass EMC nach wie vor eine eigene Domain für die Übersetzungen setzt und nutzt und deshalb die integrierten Übersetzungen nicht gefunden werden.
    In DreamOS ist es nun eigentlich so, dass enigma2 zwei "Übersetzungs-Domains" hat.
    enigma2 und enigma2-plugins.

    daher war ja meine Frage, ob man den EMC-Code dazu anpassen müsste?
    https://github.com/betonme/e2o…master/src/__init__.py#L9


    Könnte man da zusätzlich die domains für enigma2/enigma2-plugins angeben?

    Wenn man alles timern will, was gewisse Suchtexte im Titel oder in der Beschreibung hat (Angabe über ein-/ausschließende Filter), ohne vorher zu wissen, wie der Titel heißt, dann kann man im Feld "Match" auch ein "%" eintragen.


    Dabei muss man dann aber beachten, dass max. 1000 EPG-Treffer ausgewertet werden.
    Auch dauert diese Suche dann etwas länger :winking_face: