Moin!
Ausgehend von diesem Thread hab ich mich gefragt, warum man eigentlich keine Umlaute in Eingabefeldern mit einer Tastatur eingeben kann. Nach einigem Wühlen in der Klasse cKbdRemote des vdr bin ich dann irgendwie darauf gestoßen, dass die Ausgabeplugins auch ihren Teil dazu beitragen. Das "remote"-Konzept im vdr war mir bis heute noch ziemlich unbekannt...
Jedenfalls hab ich mich auf die Suche nach den Umlauten gemacht. Dabei hab ich festgestellt, dass von X für ein "ä" der Name "adiaeresis" geliefert wird. Das ist natürlich ein Tastenname, mit dem der vdr so gar nichts anfangen kann. Nach etwas weiterem Wühlen (kenne mich mit X überhaupt nicht aus) habe ich festgestellt, dass softhddevice "XLookupString" aufruft, das schon einen String mit dem gedrückten Buchstaben zurückliefert. Dieser wird bloß nirgendwo benutzt...
Da ich nichts vorhandenes kaputt machen wollte, übergebe ich diesen String nun extra an "FeedKeyPress", so dass diese den Buchstaben nutzen kann, wenn alle Stricke reißen. Ich hab aber noch keine Ahnung, in welchem Encoding dieser String ist, ich vermute aber, dass es der eingestellten locale entspricht. Ich wandle ihn nach Utf8, dann mit den vdr-Routinen in etwas, das den internen Tasten entspricht und reiche das Ergebnis einfach mal an den vdr weiter... Und siehe da, plötzlich erscheinen Umlaute in den Eingabefelder.
Buchstaben mit Akzenten hab ich allerdings noch nicht hinbekommen.
Es darf gerne mal jemand mit mehr Wissen über den Patch schauen. Wer möchte, darf es natürlich auch für xine(liboutput) portieren, da scheint es das Problem auch noch zu geben.
Lars.