feat(ui): add bug report button in Help and GitHub issue template
Adds a "Report a bug" / "Segnala un bug" button (6 languages) in Help → Info that opens the issue tracker in the system browser via TopLevel.Launcher (cross-platform: desktop + Android). URL points to the current self-hosted repo; a TODO comment marks the constant for easy update once the project moves to GitHub. Adds .github/ISSUE_TEMPLATE/bug_report.yml — GitHub issue form with structured fields for version, platform, network, repro steps, expected behavior, and logs.
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
name: Bug Report
|
||||
description: Report a problem with Palladium Wallet
|
||||
labels: ["bug"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to report a bug.
|
||||
Please fill in every section — incomplete reports are hard to reproduce and may be closed.
|
||||
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: Wallet version
|
||||
description: Shown in Help → Info (e.g. `1.0.0`).
|
||||
placeholder: "1.0.0"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: platform
|
||||
attributes:
|
||||
label: Platform
|
||||
options:
|
||||
- Windows
|
||||
- Linux
|
||||
- Android
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: network
|
||||
attributes:
|
||||
label: Network
|
||||
options:
|
||||
- Mainnet
|
||||
- Testnet
|
||||
- Regtest
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: What happened?
|
||||
description: Describe the bug clearly and concisely. What did you see? What did you expect?
|
||||
placeholder: "When I click … the wallet shows … instead of …"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: steps
|
||||
attributes:
|
||||
label: Steps to reproduce
|
||||
description: Numbered steps that reliably trigger the bug.
|
||||
placeholder: |
|
||||
1. Open the wallet
|
||||
2. Go to …
|
||||
3. Click …
|
||||
4. Observe …
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: expected
|
||||
attributes:
|
||||
label: Expected behavior
|
||||
description: What should have happened instead?
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Logs / error messages
|
||||
description: |
|
||||
Paste any error dialogs, crash messages, or stack traces.
|
||||
Leave blank if none.
|
||||
render: text
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: Before submitting
|
||||
options:
|
||||
- label: I searched existing issues and this is not a duplicate
|
||||
required: true
|
||||
- label: I reproduced this on the latest available version
|
||||
required: false
|
||||
@@ -62,6 +62,7 @@ public sealed class Loc
|
||||
"SPV-Wallet für die Kryptowährung Palladium (PLM)."],
|
||||
["help.tab.info"] = ["Info", "Info", "Info", "Info", "Info", "Info"],
|
||||
["help.tab.donate"] = ["Dona", "Donate", "Donar", "Faire un don", "Doar", "Spenden"],
|
||||
["help.bug.report"] = ["Segnala un bug", "Report a bug", "Informar un error", "Signaler un bug", "Reportar um bug", "Fehler melden"],
|
||||
["donate.desc"] = [
|
||||
"Se questo wallet ti è utile, considera una piccola donazione allo sviluppatore.",
|
||||
"If you find this wallet useful, consider a small donation to the developer.",
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using Avalonia;
|
||||
using Avalonia.Controls;
|
||||
@@ -128,6 +129,16 @@ public partial class MainView : UserControl
|
||||
vm.IsHelpOpen = false;
|
||||
}
|
||||
|
||||
private async void OnOpenBugReportClick(object? sender, RoutedEventArgs e)
|
||||
{
|
||||
// TODO: replace with the final GitHub URL once the repo is on GitHub
|
||||
// e.g. https://github.com/davide3011/PalladiumWallet/issues/new?assignees=&labels=bug&template=bug_report.yml
|
||||
const string issueUrl = "https://santantonio.sytes.net/davide/PalladiumWallet/issues/new";
|
||||
var launcher = TopLevel.GetTopLevel(this)?.Launcher;
|
||||
if (launcher is not null)
|
||||
await launcher.LaunchUriAsync(new Uri(issueUrl));
|
||||
}
|
||||
|
||||
// Esc (desktop) or Back (Android) closes the topmost open overlay.
|
||||
protected override void OnKeyDown(KeyEventArgs e)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user