Skip to content

[Search Map] More display options for search results#2855

Merged
2Abendsegler merged 1 commit into
2Abendsegler:collectorfrom
DieBatzen:search-map-more-display-options-for-search-results
Aug 18, 2025
Merged

[Search Map] More display options for search results#2855
2Abendsegler merged 1 commit into
2Abendsegler:collectorfrom
DieBatzen:search-map-more-display-options-for-search-results

Conversation

@DieBatzen
Copy link
Copy Markdown
Collaborator

@DieBatzen DieBatzen commented Jul 29, 2025

More display options for search results on search map:

  • hide by status: finds, owned, DNFs, past events
  • hide by type: all available cache types

Layout of the options dialog is similar to the one in browse map:

image

@DieBatzen DieBatzen requested a review from 2Abendsegler July 29, 2025 17:42
@DieBatzen DieBatzen self-assigned this Jul 29, 2025
@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Zwei kleine Korrekturen:

  • Die Trenner hatten nach dem Laden der Seite manchmal eine falsche opacity
  • Die Option Show all cache types funktionierte nicht für Zeilen, in denen nicht alle Typen ausgeblendet waren.

Copy link
Copy Markdown
Owner

@2Abendsegler 2Abendsegler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm ... ich habe hier leider ein paar Bedenken, das so umzusetzen.

Dieser neue Button auf der Karte soll zusätzliche Features beinhalten, die auf der Webseite nicht vorhanden sind. Die Features gefundene oder eigene Caches oder Caches nach Cache Typen zu filtern gibt es aber bereits im Filter der Webseite. Und ich sehe beim GClh Filter auch nur einen winzigen Vorteil gegenüber dem Filter der Webseite. Wir sind damit etwas schneller, weil die anzuzeigenden Caches nicht neu geladen werden müssen. Dafür ist das aber sicherlich für viele Benutzer ziemlich verwirrend. Ich war auch zuerst mal verwirrt, weil einige GClh Filter nicht funktioniert haben.

Es funktioniert nicht durchgängig, weil man nun an zwei Stellen die gleichen Filter setzen kann, ohne dass eine gemachte Einstellung an der anderen Stelle auch geändert wird. Beispielsweise werden die gefundenen Caches über den GClh Filter nur dann tatsächlich aktiviert, wenn sie im Filter der Webseite zuvor auch aktiviert waren. Und wenn ich in den Filter der Webseite hineingehe, können dort ganz andere Filtereinstellungen stehen als im GClh Filter. Beispielsweise könnte ich den Filter der Webseite aufrufen, um die Anzeige der gefundenen Caches zu aktivieren, weil sie im Moment auf der Karte nicht angezeigt werden. Im Filter der Webseite stelle ich dann aber fest, dass sie dort doch schon aktiviert sind.

Ich glaube du hast auch einige Programmstellen geändert, die wir nicht mehr einfach so ändern wollen. Beispielsweise sollten die Namen von Parametern und auch deren Bezeichnung nicht mehr geändert werden, nur weil man mittlerweile eine andere Schreibweise besser findet. Ansonsten gehen Einstellungen zu den Parametern verloren und im Changelog findet man nicht genau das, was man auf dem eigenen Bildschirm sieht.

Das Ausblenden der Past Events scheint zu funktionieren, habe ich aber nur kurz angetestet.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Hm ... ich habe hier leider ein paar Bedenken, das so umzusetzen.

Dieser neue Button auf der Karte soll zusätzliche Features beinhalten, die auf der Webseite nicht vorhanden sind. Die Features gefundene oder eigene Caches oder Caches nach Cache Typen zu filtern gibt es aber bereits im Filter der Webseite.

Prinzipiell sehe ich das schon als neues Feature.
In der Browse Map ist es ja so, dass einmalig eine Suche gestartet wird und mit den Filter Buttons die Anzeige der Ergebnisse geändert werden kann - ohne neue Abfrage am Server.
Dabei ist die einmalige Suche ungefiltert, liefert also alle Caches.

In der Search Map findet ebenfalls eine Suchabfrage am Server statt.
Analog zur Browse Map kann nun die Anzeige der Ergebnisse sehr schnell und einfach gefiltert werden.
Ist diese Suchabfrage ungefiltert, liefert sie alle Caches und die Anzeigeoptionen bilden das Verhalten der Browse Map exakt nach (und noch etwas mehr).

Im Unterschied zur Browse Map kann die Suchabfrage in der Search Map aber bereits gefiltert sein.
Damit können mit den Anzeigeoptionen die Ergebnisse weiter gefiltert werden.

Und ich sehe beim GClh Filter auch nur einen winzigen Vorteil gegenüber dem Filter der Webseite. Wir sind damit etwas schneller, weil die anzuzeigenden Caches nicht neu geladen werden müssen. Dafür ist das aber sicherlich für viele Benutzer ziemlich verwirrend. Ich war auch zuerst mal verwirrt, weil einige GClh Filter nicht funktioniert haben.

Da hast du Recht. Das war letztendlich auch der Grund für den Tooltip-Button im Dialog, der genau dieses Thema versucht zu erläutern.

Meine subjektive Erfahrung aus den Tests: Hat man erst einmal den Unterschied zwischen Such- und Anzeigefiltern verinnerlicht, dann verzichtet man auf die Suchfilter und verwendet fast ausschließlich die neuen Anzeigefilter - spart Klicks und aktualisiert bedeutend schneller.

Es funktioniert nicht durchgängig, weil man nun an zwei Stellen die gleichen Filter setzen kann, ohne dass eine gemachte Einstellung an der anderen Stelle auch geändert wird. Beispielsweise werden die gefundenen Caches über den GClh Filter nur dann tatsächlich aktiviert, wenn sie im Filter der Webseite zuvor auch aktiviert waren. Und wenn ich in den Filter der Webseite hineingehe, können dort ganz andere Filtereinstellungen stehen als im GClh Filter. Beispielsweise könnte ich den Filter der Webseite aufrufen, um die Anzeige der gefundenen Caches zu aktivieren, weil sie im Moment auf der Karte nicht angezeigt werden. Im Filter der Webseite stelle ich dann aber fest, dass sie dort doch schon aktiviert sind.

Auch das ist ein valider Punkt.
Aber dieses Fass möchte ich lieber nicht aufmachen, das würde den Code wieder sehr komplex und fehleranfällig werden lassen.

Ich glaube du hast auch einige Programmstellen geändert, die wir nicht mehr einfach so ändern wollen. Beispielsweise sollten die Namen von Parametern und auch deren Bezeichnung nicht mehr geändert werden, nur weil man mittlerweile eine andere Schreibweise besser findet. Ansonsten gehen Einstellungen zu den Parametern verloren und im Changelog findet man nicht genau das, was man auf dem eigenen Bildschirm sieht.

Da stimme ich prinzipiell zu.
Der Grund hierfür war aber letztendlich den Code einfach und wartbar zu halten.

Für jede der neuen Optionen müssen gewisse Teile des Codes dupliziert und nur geringfügig angepasst werden.
Allein für die Cachetypen bedeutet das 16 mal fast identischen Code zu verwenden.
Falls da eine Anpassung notwendig sein sollte ...

Viel besser ist es, diese Codeteile in einer Schleife mit Variablenersetzungen zu verarbeiten.
Dafür muss aber in einigen wenigen Variablennamen von snake_case auf camelCase gewechselt werden.

Da bei der Erstellung dieses PR die neue Version mit den letzten Änderungen noch nicht veröffentlicht war, schien diese Anpassung akzeptabel zu sein.

Das Ausblenden der Past Events scheint zu funktionieren, habe ich aber nur kurz angetestet.

Sehr gut.

Auch wenn mir die neuen Optionen gut gefallen würden, kann ich deine Bedenken nachvollziehen.
Eine Abgrenzung zwischen Such- und Anzeigefiltern ist schwer umzusetzen und vielleicht für die Anwender größtenteils schwer verständlich.

Die Past Events könnten wir auf jeden Fall als dritte Option in den Anzeigeoptionen der aktuellen Release aufnehmen, das sind nur wenige Zeilen Code.

Jetzt habe ich wieder ziemlich viel geschrieben, aber kürzer ging es irgendwie nicht ...

@2Abendsegler
Copy link
Copy Markdown
Owner

Danke für deine ausführliche Antwort, das ist schon ok, dann kann man sich häufig ein besseres Bild machen.

Es funktioniert nicht durchgängig, weil man nun an zwei Stellen die gleichen Filter setzen kann, ohne dass eine gemachte Einstellung an der anderen Stelle auch geändert wird. Beispielsweise werden die gefundenen Caches über den GClh Filter nur dann tatsächlich aktiviert, wenn sie im Filter der Webseite zuvor auch aktiviert waren. Und wenn ich in den Filter der Webseite hineingehe, können dort ganz andere Filtereinstellungen stehen als im GClh Filter. Beispielsweise könnte ich den Filter der Webseite aufrufen, um die Anzeige der gefundenen Caches zu aktivieren, weil sie im Moment auf der Karte nicht angezeigt werden. Im Filter der Webseite stelle ich dann aber fest, dass sie dort doch schon aktiviert sind.

Auch das ist ein valider Punkt. Aber dieses Fass möchte ich lieber nicht aufmachen, das würde den Code wieder sehr komplex und fehleranfällig werden lassen.

Nein, das Fass wollen wir nicht aufmachen. So war das auch nicht gemeint von mir. Ich wollte nur beispielhaft schildern wie es jemandem ergehen kann.

Meine subjektive Erfahrung aus den Tests: Hat man erst einmal den Unterschied zwischen Such- und Anzeigefiltern verinnerlicht, dann verzichtet man auf die Suchfilter und verwendet fast ausschließlich die neuen Anzeigefilter - spart Klicks und aktualisiert bedeutend schneller.

Ja, da hast du schon recht.

Eine Abgrenzung zwischen Such- und Anzeigefiltern ist schwer umzusetzen und vielleicht für die Anwender größtenteils schwer verständlich.

Ich bezweifle tatsächlich, dass nahezu die gesamte Kundschaft diese Abgrenzung versteht. Und nichts ist blöder, wenn es dann per stille Post heißt "da funktioniert ja gar nichts".

Da bei der Erstellung dieses PR die neue Version mit den letzten Änderungen noch nicht veröffentlicht war, schien diese Anpassung akzeptabel zu sein.

Du hast ja recht. Ich hatte die Screenshots fürs Changelog schon gemacht, aber die hätte ich auch nochmal machen können, musste ich letztlich sowieso. Ich versuche halt meinen Aufwand und meinen Testaufwand möglichst gering zu halten. Sobald an bestehendem Code wieder Änderungen vorgenommen werden, muss ich das wieder testen, so meine Regel. Und die Umgebung in der Search Map ist eben auch furchtbar anfällig, wie wir mittlerweile ja wissen. Da kann ich das mit dem Testen nicht einfach etwas lockerer sehen.

Auch wenn mir die neuen Optionen gut gefallen würden, kann ich deine Bedenken nachvollziehen.

Es ist unschön, dass du schon so viel Arbeit reingesteckt hast und wir es womöglich nicht einbauen können. Vielleicht sollte man in Zukunft zumindest bei größeren Arbeiten das Thema zuerst mal zur Diskussion stellen, eben als Feature Request.

Die Past Events werden wir auf jeden Fall einbauen. Weiter weiß ich gerade nicht so recht was wir machen sollen. Ich werde mir das noch etwas durch den Kopf gehen lassen.


Was mir spontan schon mal eingefallen/aufgefallen ist. Ich schreibe die Punkte einfach mal runter. Noch nicht umsetzen, ich will nur dass sie irgendwo stehen. Das sollten alles machbare Dinge sein.

  1. Das Fragezeichen für den Infobereich sollte etwas besser ausgerichtet werden und damit auch die Überschrift.
  2. Vielleicht könnten wir den Inhalt des Infobereichs noch etwas erweitern und es deutlicher machen, wobei ich im Moment nicht weiß wie.
  3. Vielleicht könnten wir den Infobereich beim ersten Aufruf des Buttons sofort einblenden, so dass man sich das ansehen muss. Wenn man dann die Maus wegbewegt, sollte der Infobereich zumindest beim ersten Mal aber nicht verschwinden.
  4. Mit dem Verweis im Infobereich auf den Search Filter könnten wir vielleicht auch gleich einen "Link" dahin vorsehen.
  5. Wenn der Infobereich angezeigt wird, sollte man das am Fragezeichen erkennen. Also etwa so wie bei den Hilfstexten im Config. Und man sollte sich mit der Maus vom Fragezeichen in den Infobereich bewegen können, ohne dass der Infobereich wieder verschwindet. Ebenfalls etwa so wie bei den Hilfstexten im Config. Das ist hilfreich um sich den Text im Infobereich rauszukopieren, zum Übersetzen ... .
  6. Die Überschrift sollte etwas von den Filter Bereichen abgehoben werden, etwas Leeraum nach unten. Die Filter Bereiche sollten auch etwas mehr voneinander getrennt werden oder sie sollten besser als Überschrift erkennbar sein. Und wir benötigen noch einen Namen für den Sonstigen Filter Bereich, in den dann "Show finds at corrected coordinates" reinkommt.
  7. "Show finds at corrected coordinates" sollte dann wohl auch nur ein Icon bekommen und keine Checkbox.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Was mir spontan schon mal eingefallen/aufgefallen ist. Ich schreibe die Punkte einfach mal runter. Noch nicht umsetzen, ich will nur dass sie irgendwo stehen. Das sollten alles machbare Dinge sein.

  1. Das Fragezeichen für den Infobereich sollte etwas besser ausgerichtet werden und damit auch die Überschrift.
  2. Vielleicht könnten wir den Inhalt des Infobereichs noch etwas erweitern und es deutlicher machen, wobei ich im Moment nicht weiß wie.
  3. Vielleicht könnten wir den Infobereich beim ersten Aufruf des Buttons sofort einblenden, so dass man sich das ansehen muss. Wenn man dann die Maus wegbewegt, sollte der Infobereich zumindest beim ersten Mal aber nicht verschwinden.
  4. Mit dem Verweis im Infobereich auf den Search Filter könnten wir vielleicht auch gleich einen "Link" dahin vorsehen.
  5. Wenn der Infobereich angezeigt wird, sollte man das am Fragezeichen erkennen. Also etwa so wie bei den Hilfstexten im Config. Und man sollte sich mit der Maus vom Fragezeichen in den Infobereich bewegen können, ohne dass der Infobereich wieder verschwindet. Ebenfalls etwa so wie bei den Hilfstexten im Config. Das ist hilfreich um sich den Text im Infobereich rauszukopieren, zum Übersetzen ... .
  6. Die Überschrift sollte etwas von den Filter Bereichen abgehoben werden, etwas Leeraum nach unten. Die Filter Bereiche sollten auch etwas mehr voneinander getrennt werden oder sie sollten besser als Überschrift erkennbar sein. Und wir benötigen noch einen Namen für den Sonstigen Filter Bereich, in den dann "Show finds at corrected coordinates" reinkommt.
  7. "Show finds at corrected coordinates" sollte dann wohl auch nur ein Icon bekommen und keine Checkbox.

Zwei weitere Punkte, die es vielleicht etwas klarer machen könnten:
8. Ersetze "Filter by Cache Status" durch "Show/Hide by Cache Status"
9. Ersetze "Filter by Cache Type" durch "Show/Hide by Cache Type"

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Um deine Überlegungen abzukürzen: mir ist (leider) eben ein KO-Kriterium begegnet:

Angenommen, Mysteries sind über die Anzeigeoptionen ausgeblendet.
Nun wechselt man auf die Anzeige für BML und wählt eine Liste, die ausschließlich Mysteries enthält. Diese sollen natürlich angezeigt werden, von daher muss die tatsächliche Anzeigefilterung und der Button deaktiviert werden (so ist es aktuell auch implementiert).
Wechselt man dann zurück in den Suchbereich, bleiben der Kartenausschnitt und die Suchergebnisse (der BML) unverändert, also nur die Mysteries der BML.
Die Anzeigefilterung und der Button müssen nun wieder aktiviert werden (ist aktuell auch so implementiert).
Im Ergebnis ist nun das Suchergebnis leer, da ja alle Mysteries ausgeblendet werden.

Dafür sehe ich keine Lösung und ein solches Szenario ist für die Anwender nicht auflösbar.
Von daher würde ich vorschlagen, den PR zu schließen und die Past Events Option in einem neuen PR einzubauen.

@capoaira
Copy link
Copy Markdown
Collaborator

capoaira commented Aug 2, 2025

Das ist sehr schade, ich fände die Funktion echt klasse.

Eine Überlegung von mir war, ob man die Filter nicht einfach aus den Filtern von GS entfernen könnte, dann gäbe es keine doppelten mehr. Aber leider werden gefunden Cache ja standardmäßig nicht geladen, und so würde der Filter keine Wirkung haben :/

Evtl. finden wir ja irgendwann später eine sinnvolle Lösung.

@2Abendsegler
Copy link
Copy Markdown
Owner

Ich hatte mich auch bereits damit angefreundet.

Ich habe zwei Punkte:

Nun wechselt man auf die Anzeige für BML und wählt eine Liste, die ausschließlich Mysteries enthält. Diese sollen natürlich angezeigt werden, von daher muss die tatsächliche Anzeigefilterung und der Button deaktiviert werden (so ist es aktuell auch implementiert).

Das ist bei mir nicht so. Der Button wird deaktiviert. Die Anzeigefilterung bleibt aber bestehen. Im beschriebenen Fall würden also keine Caches der BML angezeigt.

Die Anzeigefilterung und der Button müssen nun wieder aktiviert werden (ist aktuell auch so implementiert).
Im Ergebnis ist nun das Suchergebnis leer, da ja alle Mysteries ausgeblendet werden.

Ich würde spontan sagen, dass wir beim Betätigen des Search Buttons eine neue Suche durchführen könnten. Eigentlich ist es doch sowieso nicht richtig, dass beim Wechsel von BML zum Search Button die Caches aus der BML weiter angezeigt werden. Also zumindest wenn wir eine automatische Suche eingestellt haben. Wir könnten das aber auch grundsätzlich so machen.
Wäre das technisch umsetzbar? Spricht etwas anderes dagegen?

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Ich hatte mich auch bereits damit angefreundet.

Ich habe zwei Punkte:

Nun wechselt man auf die Anzeige für BML und wählt eine Liste, die ausschließlich Mysteries enthält. Diese sollen natürlich angezeigt werden, von daher muss die tatsächliche Anzeigefilterung und der Button deaktiviert werden (so ist es aktuell auch implementiert).

Das ist bei mir nicht so. Der Button wird deaktiviert. Die Anzeigefilterung bleibt aber bestehen. Im beschriebenen Fall würden also keine Caches der BML angezeigt.

Hm, so sollte das nicht funktionieren.
Versuche es mal mit dieser shared BML.
Wenn die BML auf der Map angezeigt wird, müssen die Mysteries sichtbar sein - egal wie der Anzeigefilter eingestellt ist.
Wenn du zurück in den Suchbereich kommst, dann ist die Trefferliste leer, da nun der Anzeigefilter wieder aktiv ist (und Mysteries ausgeblendet werden).

Die eigentliche Filterung der Anzeige findet in processCaches statt. Dort wird geprüft, ob der Button aktiviert ist. Wenn ja, wird (entsprechend des Status der Icons im Dialog) gefiltert, sonst nicht.

Die Anzeigefilterung und der Button müssen nun wieder aktiviert werden (ist aktuell auch so implementiert).
Im Ergebnis ist nun das Suchergebnis leer, da ja alle Mysteries ausgeblendet werden.

Ich würde spontan sagen, dass wir beim Betätigen des Search Buttons eine neue Suche durchführen könnten. Eigentlich ist es doch sowieso nicht richtig, dass beim Wechsel von BML zum Search Button die Caches aus der BML weiter angezeigt werden. Also zumindest wenn wir eine automatische Suche eingestellt haben. Wir könnten das aber auch grundsätzlich so machen. Wäre das technisch umsetzbar? Spricht etwas anderes dagegen?

Leider würde das nicht in jedem Fall helfen.
Im Beispiel mit der BML wird anhand der Treffer ja ein bestimmter Kartenausschnitt angezeigt.
Wechselt man ohne zu zoomen oder zu verschieben zurück in den Suchbereich und triggert eine neue Suche an (z.B. indem die Karte minimal verschoben wird), dann findet die neue Suche auch wieder nur die Mysteries der BML, und die würden wieder alle ausgeblendet werden.

Was vielleicht funktionieren könnte: kommt man von der Anzeige einer BML zurück in den Suchbereich, dann werden alle noch gesetzten Anzeigefilter zurückgesetzt.
Nun zeigt der Kartenausschnitt wieder das an, was man auch ohne den GClh sehen würde - den Inhalt der BML.
Das würde aber eine zusätzliche Inkonsistenz einbringen - die Anzeigefilter werden automatisch und unsichtbar durch das Skript geändert.

Alternativ könnte man auch darüber nachdenken:
Die eingestellten Anzeigefilter und der Button bleiben immer aktiv, auch für BML.
Vorteile:

  • Das eben betrachtete Problem ist damit gelöst.
  • Auch BML können per Anzeigeoption gefiltert werden (was auf der Webseite nicht möglich ist und somit ein neues Feature wäre).

Nachteile:

  • Eine BML kann man als statisches Ergebnis einer Suche ansehen. Bei aktivierten Anzeigefiltern und Anzeige der BML auf der Karte sieht man möglicherweise nur eine Teilmenge der Ergebnisse. Das ist im Grunde dann so wie bei den Ergebnissen der Filtersuche.

Jetzt, beim aufschreiben, erscheint mir das fast die beste Lösung zu sein ...

@2Abendsegler
Copy link
Copy Markdown
Owner

Versuche es mal mit dieser shared BML.
Wenn die BML auf der Map angezeigt wird, müssen die Mysteries sichtbar sein - egal wie der Anzeigefilter eingestellt ist.

Ich habe die Mystery Caches ausgeblendet. Wenn ich den Link anwähle, dann werden keine Caches angezeigt und der Button ist auch nicht deaktiviert.
GIF 02 08 2025 19-36-50

Es gibt auch eine Fehlermeldung.
Unbenannt

@2Abendsegler
Copy link
Copy Markdown
Owner

Die Anzeigefilterung und der Button müssen nun wieder aktiviert werden (ist aktuell auch so implementiert).
Im Ergebnis ist nun das Suchergebnis leer, da ja alle Mysteries ausgeblendet werden.

Ich würde spontan sagen, dass wir beim Betätigen des Search Buttons eine neue Suche durchführen könnten. Eigentlich ist es doch sowieso nicht richtig, dass beim Wechsel von BML zum Search Button die Caches aus der BML weiter angezeigt werden. Also zumindest wenn wir eine automatische Suche eingestellt haben. Wir könnten das aber auch grundsätzlich so machen. Wäre das technisch umsetzbar? Spricht etwas anderes dagegen?

Leider würde das nicht in jedem Fall helfen. Im Beispiel mit der BML wird anhand der Treffer ja ein bestimmter Kartenausschnitt angezeigt. Wechselt man ohne zu zoomen oder zu verschieben zurück in den Suchbereich und triggert eine neue Suche an (z.B. indem die Karte minimal verschoben wird), dann findet die neue Suche auch wieder nur die Mysteries der BML, und die würden wieder alle ausgeblendet werden.

Das verstehe ich nicht. Wenn ich unsere automatische Suche ausschalte, kann ich das gedachte ja auch manuell ausführen. Habe ich mal gemacht. Ich habe also auf den "Search" Button gedrückt und anschließend auf den "Search this area" Button. Es wird eine neue Suche durchgeführt, es werden nicht mehr die Cachess aus der BML angezeigt, sondern neue Caches entsprechend der Suche und die ich nicht ausgeblendet habe.
GIF 02 08 2025 19-44-16

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Hoppla, da war noch ein Commit, den ich übersehen und noch nicht hochgeladen hatte - Sorry für die Verwirrung.
Die Timeout-Fehlermeldung müsste jetzt gefixt sein (Timeout steht nun auf 10s).

Jetzt sollte es aber klappen.

@2Abendsegler
Copy link
Copy Markdown
Owner

Ja, die Caches werden jetzt bei den BML angezeigt, egal wie die Anzeigeoptionen gerade stehen, super.

Also wieder zurück zum eigentlichen Problem.
Vielleicht geht das ja doch mit dem anstoßen eines neuen Search wie ich beschrieben hatte ...

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Vielleicht geht das ja doch mit dem anstoßen eines neuen Search wie ich beschrieben hatte ...

Leider nein:
gclh

@2Abendsegler
Copy link
Copy Markdown
Owner

Vielleicht geht das ja doch mit dem anstoßen eines neuen Search wie ich beschrieben hatte ...

Leider nein:

Dubios, du hast aber gesehen, dass es bei mir durchaus funktioniert, siehe hier?

@2Abendsegler
Copy link
Copy Markdown
Owner

Bei dir läuft das etwas anders ab. Wenn du auf "My Lists" klickst, dann wird bei dir scheinbar sofort eine bestimmte BML angezeigt. Das verstehe ich nicht. Wenn ich das mache, komme ich immer zuerst in die Liste der BML und muss dort erst eine BML auswählen. Genau das könnte den Unterschied machen, warum es bei mir funktioniert und bei dir nicht.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Dubios, du hast aber gesehen, dass es bei mir durchaus funktioniert, siehe #2855 (comment)?

Ja, das funktioniert bei dir deshalb, weil in dem Kartenausschnitt, den die BML vorgibt, für die Suche noch andere Caches vorhanden sind. Die werden dann, wenn nicht gefiltert angezeigt.

Bei der von mir verlinkten BML ist das nicht so, von daher keine sichtbaren Treffer.

Das zeigt eben, dass es nicht in allen Fällen funktionieren wird.
Abhängig vom Kartenausschnitt und den gesetzten Anzeigefiltern kann das klappen oder auch nicht.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Bei dir läuft das etwas anders ab. Wenn du auf "My Lists" klickst, dann wird bei dir scheinbar sofort eine bestimmte BML angezeigt. Das verstehe ich nicht.
Wenn ich das mache, komme ich immer zuerst in die Liste der BML und muss dort erst eine BML auswählen. Genau das könnte den Unterschied machen, warum es bei mir funktioniert und bei dir nicht.

Ich mache das doch genauso. In dem GIF ist der Teil der Auswahl der BML lediglich rausgeschnitten (die BML sind nicht öffentlich), das ist alles.

@2Abendsegler
Copy link
Copy Markdown
Owner

Verstehe nun beide Sachverhalte, danke.

(Ich mach nur weiter Brainstorming.)
Könnte es nicht vielleicht helfen den Zoom Parameter in der url zu entfernen und erst dann eine neue Suche auszuführen?

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

DieBatzen commented Aug 3, 2025

Könnte es nicht vielleicht helfen den Zoom Parameter in der url zu entfernen und erst dann eine neue Suche auszuführen?

Leider auch nicht, da der Zoom-Parameter bei der Suche nicht berücksichtigt wird.
"Search this area" verwendet den "box"-Parameter, um Ergbnisse im aktuellen Kartenausschnitt zu suchen.

Mit den letzten Ideen denke ich aber, eine besseres Konzept für die neuen Anzeigeoptionen gefunden zu haben:

  1. Status der Anzeigefilter zum Ein-/Ausblenden ist nur noch für die aktuelle Session aktiv, also keine Speicherung über Sessions hinweg.
  2. "Show finds at corrected coordinates" kann nach wie vor sessionübergreifend gesetzt werden, da nichts ausgeblendet wird.
  3. Button + Anzeigefilter sind immer aktiv (auch für BML).
  4. Rückkehr von einer BML in den Suchbereich triggert einen "Search this area"-Aufruf.
    • Gilt für beides: automatische Suche aktiviert/deaktiviert

Vorteile:

  • Mit 1. ist sichergestellt, dass beim Laden der Seite immer das Ergebnis der eingestellten Suchfilter angezeigt und nichts ausgeblendet wird.
    • Das schließt beim Laden der Seite vermeintliche Inkonsistenzen der Anzeige von aktuellen Suchergebnissen aus.
    • Das gilt auch insbesondere für URLs https://www.geocaching.com/play/map?bmCode=BMxxxx, die z.B. von der Seite der BML aufgerufen werden.
  • Mit 1. ist die Trennung zwischen Such- und Anzeigefiltern klarer, da die Optionen nun bewusster aktiviert werden müssen.
  • Mit 3. lässt sich nun auch die Anzeige von BML filtern (neues Feature, das die Search Map so nicht bietet).
    • Insbesondere auch Funde an geänderten Koordinaten anzeigen zu lassen.
  • Mit 4. wird nach Rückkehr von einer BML in den Suchbereich immer das aktuelle Suchergebnis des Kartenausschnitts angezeigt.

Nachteile:

  • Mit 3. kann es vorkommen, dass bei Anzeige einer BML Caches vermeintlich fehlen, da ausgeblendet.
    • Mit 1. muss der Anwender dann aber vorher wissentlich Status/Typ von Caches ausgeblendet haben, die er mit 3. einfach wieder einblenden kann.
  • Durch 1. können Optionen zum Ausblenden von Caches nicht mehr sessionübergreifend gesetzt werden.
    • Das ist vielleicht gar kein Nachteil, da die Anzeigeoptionen ihre Stärke im schnellen Ein-/Ausblenden von Caches haben und so eher als temporäre Einstellung zu sehen sind.
    • Möchte man z.B. dauerhaft bestimmte Cachetypen ignorieren, dann sind die Suchfilter mit einem gespeicherten Lesezeichen das Mittel der Wahl.
    • Optionen, die nichts ausblenden, können aber immer noch gespeichert werden (z.B. "corrected coords").

Die Umsetzung dieser Punkte würde tatsächlich nur wenige Änderungen im Code bedeuten. :)
Und die diskutierten Verbesserungen im Layout wären immer noch gültig und ebenfalls ohne größeren Aufwand umzusetzen.

Wäre das eine akzeptable Lösung?

@2Abendsegler
Copy link
Copy Markdown
Owner

Ja, ich glaube das ist eine gute Lösung. Prima.

Ich würde "Show finds at corrected coordinates" wegen der Einheitlichkeit ebenfalls nicht sessionübergreifend machen. Ich bin aber auch anderenfalls damit einverstanden.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Sehr gut!

Dann werde ich den Code entsprechend ändern und den MR aktualisieren.
Die von dir aufgelisteten Änderungen am Layout werde ich mir ebenfalls ansehen.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Bevor ich aktualisiere, eine kurze Übersicht über den Stand der Layoutanpassungen:
image

  • Das Fragezeichen für den Infobereich sollte etwas besser ausgerichtet werden und damit auch die Überschrift.
  • Vielleicht könnten wir den Inhalt des Infobereichs noch etwas erweitern und es deutlicher machen, wobei ich im Moment nicht weiß wie.
  • Vielleicht könnten wir den Infobereich beim ersten Aufruf des Buttons sofort einblenden, so dass man sich das ansehen muss. Wenn man dann die Maus wegbewegt, sollte der Infobereich zumindest beim ersten Mal aber nicht verschwinden.
  • Mit dem Verweis im Infobereich auf den Search Filter könnten wir vielleicht auch gleich einen "Link" dahin vorsehen.
  • Wenn der Infobereich angezeigt wird, sollte man das am Fragezeichen erkennen. Also etwa so wie bei den Hilfstexten im Config. Und man sollte sich mit der Maus vom Fragezeichen in den Infobereich bewegen können, ohne dass der Infobereich wieder verschwindet. Ebenfalls etwa so wie bei den Hilfstexten im Config. Das ist hilfreich um sich den Text im Infobereich rauszukopieren, zum Übersetzen ... .
  • Die Überschrift sollte etwas von den Filter Bereichen abgehoben werden, etwas Leeraum nach unten. Die Filter Bereiche sollten auch etwas mehr voneinander getrennt werden oder sie sollten besser als Überschrift erkennbar sein. Und wir benötigen noch einen Namen für den Sonstigen Filter Bereich, in den dann "Show finds at corrected coordinates" reinkommt.
  • "Show finds at corrected coordinates" sollte dann wohl auch nur ein Icon bekommen und keine Checkbox. Die sichtbare Checkbox signalisiert eine speicherbare Option und in Verbindung mit dem Icon lässt sich das Ziel der Option schnell erfassen.
  • Ersetze "Filter by Cache Status" durch "Show/Hide by Cache Status"
  • Ersetze "Filter by Cache Type" durch "Show/Hide by Cache Type"
  • Tausche die Reihenfolge von Hide/Show all cache types zu Show/Hide all cache types
  • Anpassung der Schriftgrößen auf die im Search Filter Dialog
  • Klarere, optische Trennung in Optionen, die Caches komplett ausblenden (Status und Typ) und Optionen, die nur deren Darstellung ändern (corrected coords und DNF icons). Und damit Trennung der Optionen, die sessionübergreifend gesetzt werden können und die, die nur in der Session wirken. Zusätzlicher Hinweis dazu im Tooltip.
  • Der letzte Bereich ist nun Permanent Display Options benannt, um zu unterstreichen, dass diese Optionen über Sessions hinweg gesetzt werden können.
  • Hide DNF Icons umbenannt in Show cache type for DNFs und in den Bereich der Permanent Display Options verschoben. Die Option kann auch sessionübergreifend gespeichert werden.
    Überlegung dafür ist, dass das Ausblenden der DNF Icons den Cache selbst nicht ausblendet und lediglich den Originaltyp anzeigt.

Wenn ihr noch Vorschläge habt, kann ich die, bevor ich hier aktualisiere, problemlos einbauen.
Ansonsten aktualisiere ich den MR zum Review.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

DieBatzen commented Aug 7, 2025

Fast vergessen: der Button zeigt nun direkt an, ob Caches ausgeblendet werden (rechts) oder nicht (links).
Damit ist sofort ersichtlich, ob eine Optionen zum Ausblenden von Caches aktiv ist.
image

@2Abendsegler
Copy link
Copy Markdown
Owner

Sieht cool aus und hört sich gut an.

Habe nur eine Kleinigkeit im Moment.
Sollten wir nicht jetzt die beiden Checkboxen weglassen und nur mit opacity arbeiten, wo das bei allen anderen Einstellungen auch so ist?

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Sollten wir nicht jetzt die beiden Checkboxen weglassen und nur mit opacity arbeiten, wo das bei allen anderen Einstellungen auch so ist?

Den Gedanken hatte ich zunächst auch, das funktioniert leider bei den beiden Optionen nicht.

Für die oberen Optionen korrespondiert die Opacity der Icons wunderbar damit, ob Caches ein- oder ausgeblendet sind.

Für die beiden unteren Optionen hätte die Opacity der Icons hingegen eine andere Bedeutung: Option aktiviert oder deaktiviert, das könnte verwirren.

Dafür ist die Checkbox besser geeignet und zusammen mit dem Icon, wie ich finde, gut verständlich.

@2Abendsegler
Copy link
Copy Markdown
Owner

Für die beiden unteren Optionen hätte die Opacity der Icons hingegen eine andere Bedeutung: Option aktiviert oder deaktiviert, das könnte verwirren.

Ja, das stimmt.

Die Kombination von Icon, Checkbox und Bezeichnung ist aus meiner Sicht ziemlich gewöhnungsbedürftig. Ich kenne das in dieser Form nicht für einen Parameter, das ist mir also so noch nie bewusst begegnet. Und das Icon erscheint auch nicht notwendig.

Ich komme nochmal darauf zurück, dass wir uns das Leben auch schwer machen mit den Icons. Oben im Bereich von Show/Hide macht das alles Sinn, weil dort ausschließlich die Icons verwendet werden können und weil wir das auch sowieso ziemlich ähnlich aus der Browse Map kennen. Bei eigenen Parametern ist die Wahl eines geeigneten Icons hingegen schwierig und birgt sogar die Gefahr, dass man sich für das falsche Icon entscheidet, weil man zukünftige Anforderungen noch gar nicht kennt.

Ich war bisher der Meinung, dass das derzeitig verwendete Icon für "Show finds at corrected coordinates" schon ok wäre. Genau genommen besagt das Icon aber gar nicht worum es geht. Aber wir haben auch gar kein Icon bei dem die Bedeutung die ist, das wir gefundene Caches, und auch nur genau die, an die korrigierten Koordinaten verschieben.

Vor einiger Zeit hatte ich mir noch eine weitere Anforderung notiert. Dabei wird beklagt, dass der Cache Typ nicht mehr sichtbar ist, sobald man die Koordinaten geändert hat. Als Farbe wird in solchen Fällen wohl die Farbe des Cache Typs Mystery verwendet. Damit liegt man ja auch häufig richtig. Allerdings werden ja auch bei Multis, Letterboxen und anderen Caches Typen die Koordinaten geändert. Laut Anforderung möchte man die Farbe des jeweiligen Cache Typs sehen. Vermutlich wäre das bei unserem Parameter verwendete Icon hier dann auch besser aufgehoben.

Eigentlich ist es aber so, dass ich mir darum gar keine Gedanken machen möchte, wenn wir ein neues Feature implementieren wollen. Bei dieser weiteren Anforderung und auch bei den beiden Parametern habe ich mir bereits viel zu viele Gedanken gemacht, um ein passendes Icon für die Features zu finden bzw. zu beurteilen, ob ein ausgewähltes Icon passend ist oder nicht.

Ich möchte die Icons an dieser Stelle lieber weglassen.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Mein Herz hängt nicht an den Icons, also weg damit.

Die Grundidee war hier einfach, durch die Icons optisch schnell erfassen zu können, was die Option beeinflusst. Die kurzen Texte leisten das ja ebenfalls.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Das Feature ist jetzt eine runde Sache und läuft problemlos.

Eine Verbesserung habe ich noch eingebaut: Optionen, die von den Suchfiltern bereits ausgeschlossen sind, werden nun ausgeblendet (da sie wirkungslos wären und für Verwirrung sorgen könnten).
Sind beispielsweise die Funde in den Suchfiltern ausgeschlossen, dann ist die Option, die Funde auszublenden, ausgeblendet.

Der Tooltip-Text ist auch noch etwas ausführlicher und sollte das Feature verständlich beschreiben.

Der Code für den Aufbau des Dialogs war zwar sehr kompakt geschrieben, dadurch aber recht schwer verständlich.
Ich habe ihn jetzt deutlich lesbarer und damit auch wartbarer umgeschrieben (ohne die Funktion zu ändern).

Kurzum: der Code ist fertig zum Testen!

@2Abendsegler
Copy link
Copy Markdown
Owner

Es scheint alles zu funktionieren. Den Text im Tooltip finde ich gut so. Dass wir darauf reagieren, wenn Optionen von den Suchfiltern bereits ausgeschlossen sind, finde ich auch gut. Und auch der Button, der grün ist, wenn irgendwelche Cache Icons ausgeblendet sind, sehr hilfreich.

Ich habe trotzdem ein paar kleine Verbesserungsvorschläge:

  1. Der Text im Tooltip kann nicht markiert und kopiert werden um ihn beispielsweise zu übersetzen.
  2. Im Tooltip wurde die letzte Zeile mit dem Link zu einem neuen Search ersetzt. Das kann man so machen. Bitte dann das Coding dazu noch entfernen.
  3. Auch bei der Anzeige der Optionen kann man keine Texte mit der Maus markieren und kopieren.
  4. Die Abstände bei den Blöcken sind teils wieder weg, siehe Screenshot. Das war schon mal besser in deinem 1. Kommentar vom 07.08.
  5. Wenn wir Optionen ausblenden, die von den Suchfiltern bereits ausgeschlossen sind, entstehen Lücken, siehe Screenshot. Das finde ich nicht richtig und verwirrend. Wir sollten Optionen in solchen Fällen deaktivieren, so wie wir es auch tun, wenn man die Option durch einen Klick deaktiviert hat. Solche Optionen darf man dann im Unterschied nur nicht durch einen Klick aktivieren können.
  6. Wenn alle Optionen einer Zeile von uns deaktiviert werden, dann sollte auch die Zeilenauswahl deaktiviert werden, siehe Screenshot.
    1

Wenn du diese Punkte noch berücksichtigen könntest, dann wäre das cool.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Ich habe trotzdem ein paar kleine Verbesserungsvorschläge:

  1. Der Text im Tooltip kann nicht markiert und kopiert werden um ihn beispielsweise zu übersetzen.

Done.

  1. Im Tooltip wurde die letzte Zeile mit dem Link zu einem neuen Search ersetzt. Das kann man so machen. Bitte dann das Coding dazu noch entfernen.

Done.

  1. Auch bei der Anzeige der Optionen kann man keine Texte mit der Maus markieren und kopieren.

Done.

  1. Die Abstände bei den Blöcken sind teils wieder weg, siehe Screenshot. Das war schon mal besser in deinem 1. Kommentar vom 07.08.

Mal wieder etwas, was der FF anders handhabt als Chrome-basierte Browser.
Done.

  1. Wenn wir Optionen ausblenden, die von den Suchfiltern bereits ausgeschlossen sind, entstehen Lücken, siehe Screenshot. Das finde ich nicht richtig und verwirrend. Wir sollten Optionen in solchen Fällen deaktivieren, so wie wir es auch tun, wenn man die Option durch einen Klick deaktiviert hat. Solche Optionen darf man dann im Unterschied nur nicht durch einen Klick aktivieren können.

Das ist leider nicht so einfach zu lösen.
Wenn wir solche Optionen deaktivieren möchten, dann können wir das nicht durch Ändern der Opacity tun, da es optisch keinen Unterschied zu Optionen gäbe, die Caches ausblenden:
image
Unterscheidbar wäre der Zustand dann nur bei Hovern der Maus über den Icons.

Eine deaktivierte Option muss anders dargestellt werden.
Eine Möglichkeit wäre das Icon zu ändern: für jedes Icon existiert eine Entsprechung für den Status deaktiviert.
Das sähe dann so aus:
image
So weit zum einfachen Teil, das Icon bei "Bedarf" zu ändern, den Klick zu deaktivieren und den Cursor auf "not available" zu ändern.

Der schwierige Teil ist dann wieder, alle Abhängigkeiten zu beachten:

  • Ist eine Option aktiv, dann hat das Icon eine geringe Opacity. Die würde dann bewirken, dass das Disabled-Icon fast nicht mehr zu sehen ist:
image
  • Von daher muss die Opacity auf 1 gestellt und, bei Bedarf wieder auf den ursprünglichen Wert zurückgestellt werden.
  • Beim Wechsel zu BML gilt das Gleiche.

Ist alles machbar, erhöht allerdings die Komplexität im Code.
Aus diesem Grund habe ich mich für die einfache Lösung des Ausblendens entschieden.

  1. Wenn alle Optionen einer Zeile von uns deaktiviert werden, dann sollte auch die Zeilenauswahl deaktiviert werden, siehe Screenshot.

Wenn 5. umgesetzt ist, dann wäre das kein Problem.
Aber auch hier gilt, die Opacity zu ändern wäre irreführend.
Besser ist es, den Klick zu deaktivieren und die Farbe zu belassen. So ist dann die Zuordnung der deaktivierten Optionen zu ihrer Gruppe besser zu erfassen.
Die Klick-Deaktivierung sollte passieren, sobald mindestens eine Option der Zeile deaktiviert ist.
Sonst ließe sich eine Option ändern, obwohl sie deaktiviert ist.

Bei 5. und 6. sehe ich auch den Vorteil gegenüber des Ausblendens der Icons, allerdings macht mir die zusätzliche Komplexität etwas Sorge.

  1. bis 4. ist bereits erledigt, falls es für 5. und 6. noch etwas zu tun gibt, dann kann ich mich nächste Woche darum kümmern.

@2Abendsegler
Copy link
Copy Markdown
Owner

Zu 5. und 6.
Auszublenden ist aus meiner Sicht keine akzeptable Lösung und die aus meiner Sicht richtige Lösung scheint zu kompliziert.

Wir müssen nicht alle Ideen realisieren, nur weil wir es theoretisch können. Manchmal kann man etwas auch einfach weglassen, weil es den Aufwand nicht lohnt. Das hier scheint genau so ein Fall zu sein. Lass die Funktionalität einfach weg und gut ist. Das Feature ist auch ohne eine super Sache.

Bitte gib Bescheid, wenn ich nochmal testen kann.

@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Guter Vorschlag.
Optionen, die von den Suchfiltern bereits ausgeschlossen sind, werden nun nicht mehr ausgeblendet.

MR ist aktualisiert und der Code kann getestet werden.

@2Abendsegler 2Abendsegler self-requested a review August 16, 2025 20:57
Copy link
Copy Markdown
Owner

@2Abendsegler 2Abendsegler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sieht super aus und funktioniert klasse! Das können wir so mergen. Wenn du möchtest dann zieh noch die Commits gerade und gib Bescheid wenn ich mergen kann.

- hide by status: finds, owned, past events
- hide by type: all available cache types
- add "show cache type for DNFs"
- layout in browse map style
@DieBatzen DieBatzen force-pushed the search-map-more-display-options-for-search-results branch from 9919ce9 to 16855c0 Compare August 18, 2025 13:08
@DieBatzen
Copy link
Copy Markdown
Collaborator Author

Alle Commits zusammengefasst, Code is ready to merge.

@2Abendsegler 2Abendsegler added this to the v0.17.5 milestone Aug 18, 2025
@2Abendsegler 2Abendsegler merged commit d9274cb into 2Abendsegler:collector Aug 18, 2025
@DieBatzen DieBatzen deleted the search-map-more-display-options-for-search-results branch August 18, 2025 18:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants