Skip to content

Make Avalonia UI the default on all platforms and move in-process #1207

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 37 commits into from
Apr 24, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
0b0ad60
gcm-ui: fix WPF device code view namespaces
mjcheetham Apr 20, 2023
a5735f9
wpf: rename DialogWindow to WpfDialogWindow
mjcheetham Apr 20, 2023
cdca8a2
wpf: explicitly target WPF Dispatcher object
mjcheetham Apr 20, 2023
a2528fd
wpf: add .Windows to WPF project namespaces
mjcheetham Apr 21, 2023
c0551fd
gcm: set up message pump in main GCM executable
mjcheetham Feb 23, 2023
1f3e99e
core: merge Core.UI.Avn and Core.UI into Core
mjcheetham Apr 20, 2023
242ac22
gcm-ui: merge GCM.UI.Avn in to Core
mjcheetham Apr 20, 2023
23473cd
bitbucket: merge .UI.Avn and .UI in to Atlassian.Bitbucket
mjcheetham Apr 20, 2023
aab6fef
github: merge .UI.Avn and .UI in to GitHub
mjcheetham Apr 20, 2023
fd3cbbf
gitlab: merge .UI.Avn and .UI in to GitLab
mjcheetham Apr 20, 2023
cb13e2b
basic: rename ByUi method to ViaHelper
mjcheetham Apr 20, 2023
20df3d7
oauth: extract Helper and TTY prompt methods
mjcheetham Apr 20, 2023
2162a98
bitbucket: extract Helper and TTY prompt methods
mjcheetham Apr 20, 2023
2441216
github: extract Helper and TTY prompt methods
mjcheetham Apr 20, 2023
c6c9cb1
gitlab: extract Helper and TTY prompt methods
mjcheetham Apr 20, 2023
73e0e86
ui: use in-proc by default with fallback option for WPF
mjcheetham Apr 20, 2023
7f6b07c
ui: default to showing GCM branding in generic prompts
mjcheetham Feb 23, 2023
4108595
ui: set default GUI window title
mjcheetham Apr 20, 2023
7794843
ui: add window parent/cancellation helpers
mjcheetham Apr 20, 2023
5756930
basic: add in-proc UI implementation
mjcheetham Apr 20, 2023
f120a12
oauth: add in-proc UI implementation
mjcheetham Apr 20, 2023
4a8d5e4
bitbucket: add in-proc UI implementation
mjcheetham Apr 20, 2023
5c8d929
github: add in-proc UI implementation
mjcheetham Apr 20, 2023
2a37974
gitlab: add in-proc UI implementation
mjcheetham Apr 20, 2023
7dec930
gitlab: simplify terminal/interaction checks
mjcheetham Apr 24, 2023
fd5fbc3
gitlab: move logos to resource files
mjcheetham Apr 19, 2023
de1bd0f
ui: only include Avn.Diagnostics in debug
mjcheetham Apr 20, 2023
2cd5d69
ui: target latest version of AvaloniaUI
mjcheetham Apr 13, 2023
fd66094
ui: support dark theme base colour resources
mjcheetham Apr 19, 2023
bd742ce
ui: use custom window chrome on Windows
mjcheetham Apr 20, 2023
99e4c69
ui: fix deadlock in Avalonia runloop start on Windows
mjcheetham Apr 20, 2023
473d951
ui: enable IDE Avalonia designer
mjcheetham Apr 19, 2023
37f6100
ui: add app version to about window
mjcheetham Apr 19, 2023
b77ea32
ui: workaround AvaloniaUI/Avalonia #10296
mjcheetham Apr 19, 2023
67092bb
ui: fix textbox layout bug in v11
mjcheetham Apr 19, 2023
6ec9124
ui: draw window border on windows
mjcheetham Apr 21, 2023
56d540f
windows: simplify Inno setup defn and reduce payload size
mjcheetham Apr 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
171 changes: 0 additions & 171 deletions Git-Credential-Manager.sln

Large diffs are not rendered by default.

4 changes: 0 additions & 4 deletions src/linux/Packaging.Linux/Packaging.Linux.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@

<ItemGroup>
<ProjectReference Include="../../shared/Git-Credential-Manager/Git-Credential-Manager.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/Atlassian.Bitbucket.UI.Avalonia/Atlassian.Bitbucket.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/GitHub.UI.Avalonia/GitHub.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/GitLab.UI.Avalonia/GitLab.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/Core.UI.Avalonia/Core.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
</ItemGroup>

<!-- Implicit SDK targets import (so we can override the default targets below) -->
Expand Down
40 changes: 0 additions & 40 deletions src/linux/Packaging.Linux/layout.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,6 @@ ROOT="$( cd "$THISDIR"/../../.. ; pwd -P )"
SRC="$ROOT/src"
OUT="$ROOT/out"
GCM_SRC="$SRC/shared/Git-Credential-Manager"
GCM_UI_SRC="$SRC/shared/Git-Credential-Manager.UI.Avalonia"
BITBUCKET_UI_SRC="$SRC/shared/Atlassian.Bitbucket.UI.Avalonia"
GITHUB_UI_SRC="$SRC/shared/GitHub.UI.Avalonia"
GITLAB_UI_SRC="$SRC/shared/GitLab.UI.Avalonia"
PROJ_OUT="$OUT/linux/Packaging.Linux"

# Build parameters
Expand Down Expand Up @@ -81,42 +77,6 @@ $DOTNET_ROOT/dotnet publish "$GCM_SRC" \
-p:PublishSingleFile=true \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing core UI helper..."
Copy link
Contributor

Choose a reason for hiding this comment

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

Yay! So happy these are going away.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Builds are much faster and will be easier to maintain or modify going forwards (at least once we can drop the WPF helpers entirely).

$DOTNET_ROOT/dotnet publish "$GCM_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
-p:PublishSingleFile=true \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing Bitbucket UI helper..."
$DOTNET_ROOT/dotnet publish "$BITBUCKET_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
-p:PublishSingleFile=true \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing GitHub UI helper..."
$DOTNET_ROOT/dotnet publish "$GITHUB_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
-p:PublishSingleFile=true \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing GitLab UI helper..."
$DOTNET_ROOT/dotnet publish "$GITLAB_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained=true \
-p:PublishSingleFile=true \
--output="$(make_absolute "$PAYLOAD")" || exit 1

# Collect symbols
echo "Collecting managed symbols..."
mv "$PAYLOAD"/*.pdb "$SYMBOLOUT" || exit 1
Expand Down
4 changes: 0 additions & 4 deletions src/osx/Installer.Mac/Installer.Mac.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,6 @@

<ItemGroup>
<ProjectReference Include="../../shared/Git-Credential-Manager/Git-Credential-Manager.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/Atlassian.Bitbucket.UI.Avalonia/Atlassian.Bitbucket.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/GitHub.UI.Avalonia/GitHub.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/GitLab.UI.Avalonia/GitLab.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="../../shared/Core.UI.Avalonia/Core.UI.Avalonia.csproj" ReferenceOutputAssembly="false" />
</ItemGroup>

<!-- Implicit SDK targets import (so we can override the default targets below) -->
Expand Down
35 changes: 0 additions & 35 deletions src/osx/Installer.Mac/layout.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,6 @@ OUT="$ROOT/out"
INSTALLER_SRC="$SRC/osx/Installer.Mac"
GCM_SRC="$SRC/shared/Git-Credential-Manager"
GCM_UI_SRC="$SRC/shared/Git-Credential-Manager.UI.Avalonia"
BITBUCKET_UI_SRC="$SRC/shared/Atlassian.Bitbucket.UI.Avalonia"
GITHUB_UI_SRC="$SRC/shared/GitHub.UI.Avalonia"
GITLAB_UI_SRC="$SRC/shared/GitLab.UI.Avalonia"

# Build parameters
FRAMEWORK=net6.0
Expand Down Expand Up @@ -103,38 +100,6 @@ dotnet publish "$GCM_SRC" \
--self-contained \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing core UI helper..."
dotnet publish "$GCM_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing Bitbucket UI helper..."
dotnet publish "$BITBUCKET_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing GitHub UI helper..."
dotnet publish "$GITHUB_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
--output="$(make_absolute "$PAYLOAD")" || exit 1

echo "Publishing GitLab UI helper..."
dotnet publish "$GITLAB_UI_SRC" \
--configuration="$CONFIGURATION" \
--framework="$FRAMEWORK" \
--runtime="$RUNTIME" \
--self-contained \
--output="$(make_absolute "$PAYLOAD")" || exit 1

# Collect symbols
echo "Collecting managed symbols..."
mv "$PAYLOAD"/*.pdb "$SYMBOLOUT" || exit 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ public async Task BitbucketAuthentication_GetCredentialsAsync_All_ShowsMenu_OAut
{
var context = new TestCommandContext();
context.SessionManager.IsDesktopSession = true; // Allow OAuth mode
context.Settings.IsGuiPromptsEnabled = false; // Force text prompts
context.Terminal.Prompts["option (enter for default)"] = "1";
Uri targetUri = null;

Expand All @@ -71,6 +72,7 @@ public async Task BitbucketAuthentication_GetCredentialsAsync_All_ShowsMenu_Basi

var context = new TestCommandContext();
context.SessionManager.IsDesktopSession = true; // Allow OAuth mode
context.Settings.IsGuiPromptsEnabled = false; // Force text prompts
context.Terminal.Prompts["option (enter for default)"] = "2";
context.Terminal.Prompts["Username"] = username;
context.Terminal.SecretPrompts["Password"] = password;
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

77 changes: 0 additions & 77 deletions src/shared/Atlassian.Bitbucket.UI.Avalonia/Program.cs

This file was deleted.

15 changes: 0 additions & 15 deletions src/shared/Atlassian.Bitbucket.UI/Atlassian.Bitbucket.UI.csproj

This file was deleted.

Loading