feat(links): Links in einem eingebetteten Browserfenster öffnen
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start with src/LageBuch.AppLogic/ViewModels/LinksViewModel.cs and src/LageBuch.AppLogic/Services/HttpUrlValidator.cs, then assess the existing platform packaging constraints referenced by #208 and #308. The issue asks for a deliberate cross-platform embedded-browser dependency decision, including Android and Linux support and security; done means an agreed approach that preserves the HTTP/HTTPS-only rule.
Written by the indexing model from the issue text.
Description
Rückmeldung aus der Praxis
Embedded Browser Fenster für Links
Heute
Links werden immer im externen Standardbrowser geöffnet:
// src/LageBuch.AppLogic/ViewModels/LinksViewModel.cs:88
// -> UrlLauncher.TryOpenAsync -> …
Process.Start(new ProcessStartInfo(target) { UseShellExecute = true }); // Windows/macOS
// xdg-open unter Linux, Intent.ActionView unter Android
grep -r WebView src/ → null Treffer.
Am ELW-Laptop heißt das: mitten im Einsatz aus dem Lagebuch-Fenster heraus, in
ein anderes Programm, und wieder zurück. Die Links sind Stammdaten
(MasterDataSet.Links, Name + URL) und genau für den Einsatz gedacht —
Wetterdienst, Gefahrgut-Nachschlagewerke, Karten.
Vorschlag
Ein eingebettetes Browserfenster innerhalb der Anwendung, aus dem Reiter LINKS
heraus geöffnet.
Kosten, bevor jemand anfängt
Das ist keine Oberflächen-Kleinigkeit. Avalonia bringt kein WebView mit.
Das bedeutet:
- eine Fremdkomponente (WebView2 unter Windows, CEF, …) mit eigener
Paketierung je Plattform, - eine Antwort für Android und für Linux, wo die Installer heute schlank und
unsigniert ausgeliefert werden (#208, #308), - eine deutlich größere Angriffsfläche als
xdg-open, weil dann fremder
HTML-Inhalt im eigenen Prozess gerendert wird.
Das ist eine Abhängigkeitsentscheidung, keine UI-Änderung. Sie gehört bewusst
getroffen.
Unverändert gelten muss dabei die Regel aus
src/LageBuch.AppLogic/Services/HttpUrlValidator.cs: ausschließlich http
und https, alles andere wird abgelehnt.
Alternative
Falls die Fremdkomponente zu teuer ist: das Lagebuch-Fenster beim Öffnen eines
Links nicht in den Hintergrund fallen lassen bzw. einen schnellen Weg zurück
anbieten. Löst das Problem nicht, aber einen Teil des Schmerzes.
- Dominant language
- C#
- Stars
- 1
- Forks
- 3
- Avg merge
- 4h 49m
- Merged PRs (30d)
- 177
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CodeForFire/lagebuch
-
Stammdaten: in the Checkliste editor the PFLICHT header is not aligned with its columnPossibly taken @Saad-elnagar claimed this 1 day ago. Openbug ux
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
CodeForFire/lagebuch#714 · 1 comment ·
Maintainers usually reply within 1 day
-
Stammdaten: on a phone the Fahrzeuge editor squeezes Wache and Funkrufname to nothingPossibly taken @Saad-elnagar claimed this 1 day ago. Openbug ux
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
CodeForFire/lagebuch#713 · 1 comment ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
CodeForFire/lagebuch#405 ·
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
CodeForFire/lagebuch#349 ·
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
CodeForFire/lagebuch#348 ·
Maintainers usually reply within 1 day
All issues in CodeForFire/lagebuch
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
-
[Bug]: Revit selector reads process ids 2000-2099 as years (flaky AgentClientTests.AYearOrAProcessIdSelectsTheHost)Possibly taken @Wurschdhaud claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
pyrevitlabs/pyRevit#3817 ·
Maintainers usually reply within 1 day
-
bug effort:S P2
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
nightscout/nocturne#2449 ·
Maintainers usually reply within 1 day
-
audit:1 bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
NethermindEth/dotnet-libp2p#395 ·
Maintainers usually reply within 1 day
-
area: client bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day