... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Karten-Anzeige-Zoom einstellbar
#1
Hallo Christian,

ich nutze den RC auch auf meinem Tablet (Surface 3 Pro mit Windows 10).
Das funktioniert auch soweit, aber die Darstellung - speziell der Karte ist sehr klein. In den Browsern Edge / Internet Explorer / Firefox habe ich daher immer bei Darstellung 200% eingestellt. Der RC scheint das Kartenfenster aber scheinbar mit 100% zu fahren. Kann man das irgendwo in den versteckten Optionen einstellen ? Das bitte nicht mit dem Google Maps-Zoom verwechseln. Ich kann problemlos per Google Maps hineinzoomen, aber damit werden die Texte nicht größer.

Das die Javatexte so grausam sind, liegt an den Grundeinstellungen von Java bei den Tablet-Auflösungen. Das kann man wohl nicht einfach ändern. Da ich aber nur Sichten will, kann ich damit leben.

Gruß
Thomas


Attached Files
.jpg   Screenshot (2).jpg (Size: 477.54 KB / Downloads: 780)
Reply
#2
(15.05.2016, 11:41)lundefugl Wrote: ich nutze den RC auch auf meinem Tablet (Surface 3 Pro mit Windows 10).
Das funktioniert auch soweit, aber die Darstellung - speziell der Karte ist sehr klein. In den Browsern Edge / Internet Explorer / Firefox habe ich daher immer bei Darstellung 200% eingestellt. Der RC scheint das Kartenfenster aber scheinbar mit 100% zu fahren. Kann man das irgendwo in den versteckten Optionen einstellen ?

Ich weiß nicht, ob es das ist, was Du meinst. In der routeconverter.html steht:

Code:
#map { width: 100%; height: 100% }

(15.05.2016, 11:41)lundefugl Wrote: Das die Javatexte so grausam sind, liegt an den Grundeinstellungen von Java bei den Tablet-Auflösungen. Das kann man wohl nicht einfach ändern.

Vielleicht doch. Schau mal in die Klasse
Code:
AlternatingColorTableCellRenderer
. Wenn Du dort an den Fonts des JLabel herumschraubst, könntest zumindest die Positionsliste hübscher bekommen.


Meld' Dich mal, ob Du es auf Deinem Surface 3 Pro hübscher bekommst. Dann könnten wir versuchen, anderen Nutzern das Leben etwas einfacher zu machen.
--
Christian
Reply
#3
Hallo Christian,

(16.05.2016, 10:05)routeconverter Wrote: Ich weiß nicht, ob es das ist, was Du meinst. In der routeconverter.html steht:

Code:
       
#map { width: 100%; height: 100% }

Ich hatte mal versucht das Html direkt im Jar zu patchen, aber das scheint nicht zu funktionieren. Dann ist das Kartenfenster komplett weiss.
Hast du da eine Prüfsumme o.ä. drauf, so dass man da einen kompletten Build benötigt ?

Mein Verdacht wäre beim betrachten des Htmls übrigens eine ander Stelle.
Code:
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>

Ich werde damit mal herumexperimentieren, wenn es die Zeit erlaubt. Das kann aber etwas dauern...

(16.05.2016, 10:05)routeconverter Wrote: Schau mal in die Klasse
Code:
AlternatingColorTableCellRenderer
. Wenn Du dort an den Fonts des JLabel herumschraubst, könntest zumindest die Positionsliste hübscher bekommen.

Meld' Dich mal, ob Du es auf Deinem Surface 3 Pro hübscher bekommst. Dann könnten wir versuchen, anderen Nutzern das Leben etwas einfacher zu machen.

werde ich mal ausprobieren, wenn ich mal etwas Zeit habe. (das ist im Moment leichter gesagt als getan, so dass ich keine Aussage treffen kann)

Gruß
Thomas
Reply
#4
(17.05.2016, 06:46)lundefugl Wrote: Ich hatte mal versucht das Html direkt im Jar zu patchen, aber das scheint nicht zu funktionieren. Dann ist das Kartenfenster komplett weiss.
Hast du da eine Prüfsumme o.ä. drauf, so dass man da einen kompletten Build benötigt ?

Keine Prüfsumme. Das %TEMPDIR/routeconverter/routeconverter_<locale>.html wird immer überschrieben, wenn es neuer ist. Am Besten ist es, so etwas aus der IDE heraus zu testen.
--
Christian
Reply
#5
Hallo Christian,

es hat lange gedauert, aber ich habe mal wieder etwas Zeit gefunden und meine Git-/Buildumgebung unter Windows 10 hochgezogen.

Das brennenste Thema für mich ist natürlich das Zoom-Problem. Hier habe ich einige neue Erkenntnisse.
Über das Html erreicht man überhaupt nichts. Der globale Zoom wird scheinbar von Google ignoriert. Und bei den Größen für die Map verändert man nur die Größe des Ausschnittes auf dem Fenster.

Ich habe allerdings für den Java-FX-Browser eine Lösung gefunden.
Folgende Codeänderungen habe ich für den Faktor 2 gemacht.

JavaFX7WebViewMapView:
   private WebView createWebView() {
       try {
           final WebView webView = new WebView();
           webView.setZoom(2);
  ...

BrowserMapView:
  private void resizeMap() {
       synchronized (notificationMutex) {
           int width = max(getComponent().getWidth()/2, 0);
           int height = max(getComponent().getHeight()/2, 0);
   ...

Jetzt müsste man nur den Faktor als double irgendwo in den versteckten Properties ablegen und an die beiden Stellen durchreichen.

Außerdem habe ich noch eine Auffälligkeit zu melden.
Im Kontextmenü gibt's bei mir auf 2 Rechner ein Darstellungsproblem für den Menüpunkt "Löschen" (das Ö).
Ist das bei dir auch so ?

Gruß
Thomas
Reply
#6
(03.07.2016, 17:15)lundefugl Wrote: Das brennenste Thema für mich ist natürlich das Zoom-Problem. Hier habe ich einige neue Erkenntnisse.
[..]
Jetzt müsste man nur den Faktor als double irgendwo in den versteckten Properties ablegen und an die beiden Stellen durchreichen.

Probier doch mal den angehängten Patch aus, der sollte unter Java 7 nichts tun
und mit Java 8 ein verstecktes Property auswerten, wie Du es vorgeschlagen hast in
https://github.com/cpesch/RouteConverter...ec703cf43e

(03.07.2016, 17:15)lundefugl Wrote: Außerdem habe ich noch eine Auffälligkeit zu melden.
Im Kontextmenü gibt's bei mir auf 2 Rechner ein Darstellungsproblem für den Menüpunkt "Löschen" (das Ö).
Ist das bei dir auch so ?

Auf der Karte? Ja, das habe ich hier auch :-(

Ich schaue mal, wie ich das fehlende Escaping implementiert bekomme.


Attached Files
.zip   introduce_browser_scale_factor_for_Windows_10_on_tablets.zip (Size: 1.3 KB / Downloads: 638)
--
Christian
Reply
#7
Hallo Christian,

(04.07.2016, 21:03)routeconverter Wrote:
(03.07.2016, 17:15)lundefugl Wrote: Das brennenste Thema für mich ist natürlich das Zoom-Problem. Hier habe ich einige neue Erkenntnisse.
[..]
Jetzt müsste man nur den Faktor als double irgendwo in den versteckten Properties ablegen und an die beiden Stellen durchreichen.

Probier doch mal den angehängten Patch aus, der sollte unter Java 7 nichts tun
und mit Java 8 ein verstecktes Property auswerten, wie Du es vorgeschlagen hast in
https://github.com/cpesch/RouteConverter...ec703cf43e

deinen Patch kann ich hier nicht testen (bin in der Firma). Zwar wäre der Weg über Reflection möglich, nur bin ich kein Freund davon.
Wenn an der API in neueren Versionen geschraubt wird, bekommt der Build das nicht mit.

Warum funktioniert mein aktiver Pull-Request (https://github.com/cpesch/RouteConverter/pull/47) unter Java-7 nicht ? Wenn die Option nicht überschrieben wurde, dann sollte der fragliche Code doch überhaupt nicht angesprungen werden. Ich sehe im Moment meinen Denkfehler nicht.

Gruß
Thomas
Reply
#8
(05.07.2016, 05:01)lundefugl Wrote: Warum funktioniert mein aktiver Pull-Request (https://github.com/cpesch/RouteConverter/pull/47) unter Java-7 nicht ?

Er kompiliert nicht.

(05.07.2016, 05:01)lundefugl Wrote: Wenn die Option nicht überschrieben wurde, dann sollte der fragliche Code doch überhaupt nicht angesprungen werden. Ich sehe im Moment meinen Denkfehler nicht.

Ich kompiliere RouteConverter unter Java 7 auch für Java 8. Damit vermeide ich es, Java 8 APIs zu benutzen und es nicht zu bemerken. Und die Nutzer, die Java 7 benutzen, freuen sich.

Der Nachteil ist: Java 8 API kann ich nur über Reflektion (Beispiel: JavaFX7WebViewMapView#createMapView - setUserAgent) oder als Third-Party-JAR (Beispiel: JavaFX8WebViewMapView#print - javafx.print Package) eingeschummelte Java 8 API in Java 7 benutzen.

Wenn Du oder jemand Ideen hat, wie man das vermeiden kann: nur her damit!
--
Christian
Reply
#9
Hallo Christian,

(06.07.2016, 12:54)routeconverter Wrote: Er kompiliert nicht.

die Integrationstests sind doch alle grün...

(06.07.2016, 12:54)routeconverter Wrote: Ich kompiliere RouteConverter unter Java 7 auch für Java 8. Damit vermeide ich es, Java 8 APIs zu benutzen und es nicht zu bemerken. Und die Nutzer, die Java 7 benutzen, freuen sich.

Der Nachteil ist: Java 8 API kann ich nur über Reflektion (Beispiel: JavaFX7WebViewMapView#createMapView - setUserAgent) oder als Third-Party-JAR (Beispiel: JavaFX8WebViewMapView#print - javafx.print Package)  eingeschummelte Java 8 API in Java 7 benutzen.

Wenn Du oder jemand Ideen hat, wie man das vermeiden kann: nur her damit!

Der entsprechende API-Aufruf ist doch in JavaFX8WebViewMapView.
Und solange niemand unter Java-7 die Option überschreibt, wird auch die Funktion mit der Unsupported-Exception in der Java-7-Implementierung nicht angesprungen.
Es ist eben eine versteckte Option, die man nur unter Java-8 setzen und nutzen darf.

Irgendwie sehe ich immer noch nicht das Problem.

Gruß
Thomas
Reply
#10
(06.07.2016, 13:24)lundefugl Wrote: Der entsprechende API-Aufruf ist doch in JavaFX8WebViewMapView.

Aber der Java 7-Compiler hat nur die Java 7 Klassenbibliothek und die kennt WebView#setZoom() nicht.

(06.07.2016, 13:24)lundefugl Wrote: Irgendwie sehe ich immer noch nicht das Problem.

Du kompilierst mit Java 8.


Attached Files
.png   Compile Error.png (Size: 31.22 KB / Downloads: 683)
--
Christian
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)