me-web? 0.3.1: sharing offered when the check ends; an Android icon that fits
- The offer to share the findings appeared only after the "test from outside?" question was answered, so scrolling past it meant no offer at all. It now appears as soon as the check ends (hidden only while the outside test runs), and a payload built later still carries the outside test's result. - Android gets an adaptive launcher icon: the drawing as a vector inside the 66-unit safe zone over the background colour, plus a monochrome layer for themed icons. The splash screen uses the same vector, so it is neither cut by the circle nor blurred from a 192-pixel picture. The PNG stays for Android 7. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
This commit is contained in:
1 parent
37752f9f07
commit
4b4b37ad8e
13 files changed
+57
-7
No files matched your search
@@ -77,9 +77,11 @@ public partial class MainViewModel : ObservableObject
|
||||
public partial bool AskReach { get; set; }
|
||||
|
||||
[ObservableProperty]
|
||||
[NotifyPropertyChangedFor(nameof(ShowShareOffer))]
|
||||
public partial bool IsReaching { get; set; }
|
||||
|
||||
[ObservableProperty]
|
||||
[NotifyPropertyChangedFor(nameof(ShowShareOffer))]
|
||||
public partial bool OfferShare { get; set; }
|
||||
|
||||
[ObservableProperty]
|
||||
@@ -100,6 +102,7 @@ public partial class MainViewModel : ObservableObject
|
||||
|
||||
public bool CanOpenPorts => lastRun?.Router?.AnyAnswer == true && lastRun.PublicV4 is not null && lastRun.Local?.LocalV4 is not null;
|
||||
public bool ShowShareResult => ShareResult is not null;
|
||||
public bool ShowShareOffer => OfferShare && !IsReaching;
|
||||
public bool ShowShared => Shared.Count > 0;
|
||||
|
||||
public IReadOnlyList<Language> Languages { get; } = Services.Languages.All;
|
||||
@@ -203,6 +206,7 @@ public partial class MainViewModel : ObservableObject
|
||||
{
|
||||
lastRun = await runner.Run((finding, run) => Dispatcher.UIThread.Post(() => Apply(finding, run)), ct);
|
||||
ShowUses(lastRun);
|
||||
OfferShare = true;
|
||||
OnPropertyChanged(nameof(CanOpenPorts));
|
||||
AskReach = lastRun.PublicV4 is not null || lastRun.PublicV6 is not null;
|
||||
if (!AskReach) SettleReach(null);
|
||||
@@ -253,7 +257,6 @@ public partial class MainViewModel : ObservableObject
|
||||
Cards.First(c => c.Id == CheckId.Reach).Finding = finding;
|
||||
lastRun.Uses = Core.Checks.Uses.Decide(lastRun);
|
||||
ShowUses(lastRun);
|
||||
OfferShare = true;
|
||||
}
|
||||
|
||||
void ShowUses(RunReport run)
|
||||
@@ -336,6 +339,7 @@ public partial class MainViewModel : ObservableObject
|
||||
instant = false;
|
||||
OnPropertyChanged(nameof(CanOpenPorts));
|
||||
AskReach = run.Reach is null;
|
||||
OfferShare = true;
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
|
||||
<Border Classes="consent" IsVisible="{Binding OfferShare}" MaxWidth="760">
|
||||
<Border Classes="consent" IsVisible="{Binding ShowShareOffer}" MaxWidth="760">
|
||||
<StackPanel Spacing="12">
|
||||
<TextBlock Classes="section" Margin="0" Text="{s:Tr ShareOfferTitle}" />
|
||||
<TextBlock Classes="body" Text="{s:Tr ShareOfferBody}" />
|
||||
|
||||
Reference in new issue
Block a user