Seite 1 von 2

4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 01 Jan 2018, 11:32
von lanthale
Hallo zusammen,

habe die neue Version mit java 9 getestet. Leider hat die Programmtabelle ein Redraw Problem. D.h. es wird nur der Bereich auf dem Bildschirm gezeichnet wo man mit der Maus gerade ist. Der Rest ist leer. Wenn man nun in die Eigenschaften des Programm Symbols geht und die HiDPI Skalierung auf "System" stellt, dann wird die Programm Tabelle wieder einwandfrei dargestellt, allerdings unscharf (getestet auf einem Surface Pro 3).

Das Phänomän ist unter OSX schon seit der Version 3.4.x so. Nun ist es aber auch unter Windows so. Dazu kann ich keine Logs melden, da keine Fehler im Log sind. Ich denke das JDK 8 und JDK 9 bei HiDPI Display's einen anderen Redraw Mechanismus verwenden. Da HiDPI unter Windows erst mit JDK 9 möglich ist, trat das Problem bis dato nur unter OSX auf.

VG
Clemens

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 02 Jan 2018, 12:30
von Siggi
Rüste ggf. auf Java 8 zurück.

Ich würde Version 9 eher als SDK oder Entwicklerversion sehen, aber nicht für den Endanwender tauglich.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 02 Jan 2018, 13:39
von ds10
Man bräuchte halt jemanden der einen hochauflösenden Bildschirm hat und sich mit Java auskennt, um das Problem in der Programmtabelle zu finden.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 08 Mär 2018, 23:51
von d4k0
Ich habe jetzt mit der Version 4.0.1 (portable Version) und einer Skalierung von 125 das gleiche Problem, nachdem ich heute Java 9 für ein Programm installieren musste. Java 8 habe ich aber auch noch installiert (und das wird von anderen Programmen auch verwendet). Gibt es die Möglichkeit, die Java-Runtime manuell zu setzen, so wie das bei anderen Java-Programmen oft auch möglich ist? In den Systemvariablen habe ich PATH und JAVA_HOME so gesetzt, dass sie auf Java 8 zeigen, allerdings hat dies keinen Einfluss auf TV-Browser.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 09 Mär 2018, 07:27
von uzi
du kannst den tvb über den java-aufruf starten, statt die exe zu benutzen: http://wiki.tvbrowser.org/index.php/Sta ... er-Nutzung . da kannst du dann natürlich auch angeben, welche jvm benutzt werden soll. sinnigerweise schreibst du dir ein kleines start-script drumherum, damit es bequemer wird.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 09 Mär 2018, 08:15
von d4k0
Danke für die Antwort. Ich werde wohl eine Batch-Datei basteln und die mit einem Konverter in eine ausführbare Datei umwandeln.

Welche Parameter werden denn für die portable Version verwendet, so dass z. B. auch die Einstellungen im Programmordner gespeichert werden? In der Datei "tvbrowser-transportable.sh" sind ja schon einige Parameter aufgeführt, sind das alle oder werden da noch mehr benötigt?

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 09 Mär 2018, 14:01
von ds10
Zum Start mit Java 8 braucht man bei der transportablen Version nur sehr wenige Parameter:

Code: Alles auswählen

java -Xmx768m -jar tvbrowser.jar

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 09 Mär 2018, 21:52
von d4k0
Alles klar, soweit scheint es zu funktionieren. Es werden aber ein paar Warnungen in der Kommandozeile angezeigt:

Code: Alles auswählen

21:46:28 INFORMATION: Using settings from file D:\***\TV-Browser\settings\4.0.1\settings.prop
21:46:28 WARNUNG: cannot load plugin D:\***\TV-Browser\plugins\NewsPlugin.jar - already loaded
21:46:28 WARNUNG: iconUrl is not in cache for channelId SKYSPORTUHD. prevUrl=null. currentUrl=577
21:46:28 WARNUNG: iconUrl is not in cache for channelId SKYSPORTBUNDESLIGAUHD. prevUrl=null. currentUrl=577
21:46:28 WARNUNG: unable to change permissions for everybody: D:\***\TV-Browser\settings\4.0.1\.store\googlecalx
21:46:28 WARNUNG: unable to change permissions for owner: D:\***\TV-Browser\settings\4.0.1\.store\googlecalx
21:46:29 WARNUNG: iconUrl is not in cache for channelId TV1000-Comedy. prevUrl=null. currentUrl=769
21:46:29 WARNUNG: iconUrl is not in cache for channelId Viasat-Series. prevUrl=null. currentUrl=769
21:46:29 WARNUNG: Invalid library manifest!
Können diese ignoriert werden?

EDIT:

Zu dem eigentlichen Problem mit HiDPI und Java 9: Wenn ich (bei Nutzung Java 9) in der Programmübersicht einen Rechtsklick mache, dann erscheinen in der Kommandozeile folgende Meldungen:

Code: Alles auswählen

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.jgoodies.common.internal.RenderingUtils (file:/D:/***/TV-Browser/tvbrowser.jar) to method sun.swing.SwingUtilities2.drawStringUnderlineCharAt(javax.swing.JComponent,java.awt.Graphics,java.lang.String,int,int,int)
WARNING: Please consider reporting this to the maintainers of com.jgoodies.common.internal.RenderingUtils
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Das weißt ja schon einmal auf eine konkrete Methode hin, wo vielleicht der Fehler liegen könnte. Ich habe deshalb einmal auf der Seite von JGoodies nachgeschaut und dort heißt es im Changelog von JGoodies Common 1.18.0 vom Oktober 2017:
o Experimental support for Java 9 on high dpi devices.
Vielleicht ist das die Problemlösung? Leider scheint es die neuen Versionen aber nicht mehr so ohne weiteres kostenlos zu geben :(.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 09 Mär 2018, 22:30
von ds10
Die Warnungen kannst du ignorieren. Wenn JGoodies nicht funktioniert, kannst du einfach ein anderes Thema, wie Nimbus verwenden, damit geht es vielleicht.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 10 Mär 2018, 19:15
von d4k0
Ich habe einmal Nimbus und andere Styles ausprobiert. Interessanterweise sind dann die Fehlermeldungen zu JGoodies weg, allerdings zeigt die Programmtabelle immer noch die gleichen Probleme :(. Das ist echt schade, da die Skalierung im restlichen Programm sonst echt sehr gut funktioniert.

Ich habe auch schon versucht, zu dem Problem zu recherchieren, allerdings habe ich bisher noch nicht wirklich etwas brauchbares gefunden, da Swing die Skalierung bei Java 9 eigentlich automatisch machen sollte (was ja bei TV-Browser im restlichen Programm auch fast vollständig funktioniert).

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 10 Mär 2018, 19:47
von ds10
Hast du denn bei den anderen Themas auch Warnungen im Log?

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 11 Mär 2018, 22:17
von d4k0
Ich habe einmal alle Styles getestet. Die Warnungen erscheinen anscheinend nur bei "Extended Windows" (was ich verwende) und den drei Plastic-Sytles.

Zusätzlich habe ich auch ein kurzes Video erstellt, welches das Darstellungsproblem zeigt:

https://www.youtube.com/watch?v=4J-PFq13v8Y

Das Problem tritt nur in der Programmtabelle auf, in den anderen Reitern kommt es nicht vor und die Skalierung funktioniert auch ohne Probleme. Der Bereich rechts (mit dem Kalender und der Senderübersicht) ist auch nie betroffen. Auffallend ist, dass auch die Menüeinträge von "Datei", "Ansicht" usw. verschluckt werden, wenn die Programmtabelle ausgewählt ist.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 11 Mär 2018, 23:52
von ds10
Als alternative Darstellung biete sich das Plugin Timeline an, das hatte das Problem auch unter macOS nicht.

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 18 Mär 2018, 14:58
von Xenu
Ich hab die hier erwähnten Probleme; mit java 8 läuft es aber nach Deinstallation von java 9. Wie kann ich bei Verwendung von tvbrowser.exe (Normale Installation) erzwingen dass java 8 verwendet wird auch wenn mehrere java Versionen installiert sind? Kann man da was in die windows.properties schreiben oder muss ich wie oben erwähnt mir ein script basteln damit die spezifische java Version verwendet wird?

Re: 4.0.0.96 Beta2 unter Win10 und Java 9

Verfasst: 19 Mär 2018, 14:07
von ds10
Man kann die tvbrowser.exe nicht dazu bringen ein bestimmtes Java zu benutzen. Man kann sich aber eine Verknüpfung erstellen, die das entsprechende Java zum Starten verwendet, siehe Starten