2 Commits

Author SHA1 Message Date
Ray Berezowski
e956760a0d Prepare v1.0.2 release 2026-09-04 14:52:59 -04:00
Ray Berezowski
b96347843c Polish settings item editor layout 2026-08-26 22:48:29 -04:00
8 changed files with 161 additions and 99 deletions

View File

@@ -8,6 +8,26 @@
MinHeight="660" MinWidth="860"
Background="{DynamicResource AppWindowBrush}"
Foreground="{DynamicResource AppTextBrush}">
<Window.Resources>
<Style x:Key="SettingsSectionBorder" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource AppPanelBrush}"/>
<Setter Property="BorderBrush" Value="{DynamicResource AppBorderBrush}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="12"/>
<Setter Property="Padding" Value="12"/>
<Setter Property="Margin" Value="0,0,0,12"/>
</Style>
<Style x:Key="SettingsSectionTitle" TargetType="TextBlock">
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="Margin" Value="0,0,0,10"/>
</Style>
<Style x:Key="SettingsFieldLabel" TargetType="TextBlock">
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Foreground" Value="{DynamicResource AppMutedTextBrush}"/>
<Setter Property="Margin" Value="0,0,8,8"/>
</Style>
</Window.Resources>
<DockPanel Margin="18">
<Border DockPanel.Dock="Top"
Margin="0,0,0,16"
@@ -162,11 +182,8 @@
<ScrollViewer Grid.Row="2"
VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled">
<Border Background="{DynamicResource AppPanelBrush}"
BorderBrush="{DynamicResource AppBorderBrush}"
BorderThickness="1"
CornerRadius="12"
Padding="12">
<StackPanel>
<Border Style="{StaticResource SettingsSectionBorder}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="110"/>
@@ -179,67 +196,70 @@
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="Item" Grid.ColumnSpan="3" Style="{StaticResource SettingsSectionTitle}"/>
<TextBlock Text="Title" Grid.Row="1" Style="{StaticResource SettingsFieldLabel}"/>
<TextBox x:Name="TitleBox" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"
TextChanged="PreviewField_Changed"/>
<TextBlock Text="Type" Grid.Row="2" Style="{StaticResource SettingsFieldLabel}"/>
<ComboBox x:Name="TypeBox" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"
SelectionChanged="TypeBox_SelectionChanged"/>
<TextBlock Text="Target" Grid.Row="3" Style="{StaticResource SettingsFieldLabel}"/>
<TextBox x:Name="TargetBox" Grid.Row="3" Grid.Column="1" Margin="0,0,8,8"
TextChanged="PreviewField_Changed"/>
<StackPanel Grid.Row="3" Grid.Column="2" Orientation="Horizontal" Margin="0,0,0,8">
<Button Content="File" Click="BrowseFile_Click" Margin="0,0,6,0" Padding="8,4"/>
<Button Content="Folder" Click="BrowseFolder_Click" Padding="8,4"/>
</StackPanel>
<TextBlock Text="Notes" Grid.Row="4" VerticalAlignment="Top" Foreground="{DynamicResource AppMutedTextBrush}" Margin="0,4,8,0"/>
<TextBox x:Name="NotesBox"
Grid.Row="4"
Grid.Column="1"
Grid.ColumnSpan="2"
Margin="0"
AcceptsReturn="True"
MinHeight="58"
TextWrapping="Wrap"
VerticalScrollBarVisibility="Auto"
TextChanged="PreviewField_Changed"/>
</Grid>
</Border>
<Border Style="{StaticResource SettingsSectionBorder}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="110"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="Title" VerticalAlignment="Center" Margin="0,0,8,8"/>
<TextBox x:Name="TitleBox" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"
TextChanged="PreviewField_Changed"/>
<TextBlock Text="Launch" Grid.ColumnSpan="3" Style="{StaticResource SettingsSectionTitle}"/>
<TextBlock Text="Type" Grid.Row="1" VerticalAlignment="Center" Margin="0,0,8,8"/>
<ComboBox x:Name="TypeBox" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"
SelectionChanged="TypeBox_SelectionChanged"/>
<TextBlock Text="Arguments" Grid.Row="1" Style="{StaticResource SettingsFieldLabel}"/>
<TextBox x:Name="ArgumentsBox" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"/>
<TextBlock Text="Target" Grid.Row="2" VerticalAlignment="Center" Margin="0,0,8,8"/>
<TextBox x:Name="TargetBox" Grid.Row="2" Grid.Column="1" Margin="0,0,8,8"
TextChanged="PreviewField_Changed"/>
<StackPanel Grid.Row="2" Grid.Column="2" Orientation="Horizontal" Margin="0,0,0,8">
<Button Content="File" Click="BrowseFile_Click" Margin="0,0,6,0" Padding="8,4"/>
<Button Content="Folder" Click="BrowseFolder_Click" Padding="8,4"/>
</StackPanel>
<TextBlock Text="Arguments" Grid.Row="3" VerticalAlignment="Center" Margin="0,0,8,8"/>
<TextBox x:Name="ArgumentsBox" Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8"/>
<TextBlock Text="Working Folder" Grid.Row="4" VerticalAlignment="Center" Margin="0,0,8,8"/>
<TextBox x:Name="WorkingFolderBox" Grid.Row="4" Grid.Column="1" Margin="0,0,8,8"/>
<TextBlock Text="Working Folder" Grid.Row="2" Style="{StaticResource SettingsFieldLabel}"/>
<TextBox x:Name="WorkingFolderBox" Grid.Row="2" Grid.Column="1" Margin="0,0,8,8"/>
<Button x:Name="WorkingFolderBrowseButton"
Grid.Row="4" Grid.Column="2"
Grid.Row="2" Grid.Column="2"
Content="Folder"
Click="BrowseWorkingFolder_Click"
Padding="8,4"
Margin="0,0,0,8"/>
<TextBlock Text="Notes" Grid.Row="5" VerticalAlignment="Top" Margin="0,4,8,8"/>
<TextBox x:Name="NotesBox"
Grid.Row="5"
Grid.Column="1"
Grid.ColumnSpan="2"
Margin="0,0,0,8"
AcceptsReturn="True"
MinHeight="54"
TextWrapping="Wrap"
VerticalScrollBarVisibility="Auto"
TextChanged="PreviewField_Changed"/>
<TextBlock Text="Icon Path" Grid.Row="6" VerticalAlignment="Center" Margin="0,0,8,0"/>
<TextBox x:Name="IconPathBox" Grid.Row="6" Grid.Column="1" Margin="0,0,8,8"
TextChanged="PreviewField_Changed"/>
<StackPanel Grid.Row="6" Grid.Column="2" Orientation="Horizontal" Margin="0,0,0,8">
<Button Content="Icon" Click="BrowseIcon_Click" Padding="8,4" Margin="0,0,6,0"/>
<Button Content="Reset" Click="ResetIcon_Click" Padding="8,4"/>
</StackPanel>
<TextBlock Text="Selected Item Display" Grid.Row="7" VerticalAlignment="Center" Margin="0,0,8,8"/>
<ComboBox x:Name="ItemDisplayModeBox" Grid.Row="7" Grid.Column="1" Grid.ColumnSpan="2"
Margin="0,0,0,8" SelectionChanged="ItemDisplayModeBox_SelectionChanged"/>
<TextBlock Text="Launch Options" Grid.Row="8" VerticalAlignment="Top" Margin="0,2,8,8"/>
<StackPanel Grid.Row="8" Grid.Column="1" Grid.ColumnSpan="2" Margin="0,0,0,8">
<TextBlock Text="Options" Grid.Row="3" VerticalAlignment="Top" Foreground="{DynamicResource AppMutedTextBrush}" Margin="0,2,8,0"/>
<StackPanel Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="2">
<CheckBox x:Name="RunAsAdminBox"
Content="Run as administrator"
Margin="0,0,0,6"
@@ -250,10 +270,42 @@
Checked="LaunchOptionBox_Changed"
Unchecked="LaunchOptionBox_Changed"/>
</StackPanel>
</Grid>
</Border>
<TextBlock Text="Preview" Grid.Row="9" VerticalAlignment="Top" Margin="0,4,8,0"/>
<Border Grid.Row="9" Grid.Column="1" Grid.ColumnSpan="2"
BorderThickness="1"
<Border Style="{StaticResource SettingsSectionBorder}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="110"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="Appearance" Grid.ColumnSpan="3" Style="{StaticResource SettingsSectionTitle}"/>
<TextBlock Text="Icon Path" Grid.Row="1" Style="{StaticResource SettingsFieldLabel}"/>
<TextBox x:Name="IconPathBox" Grid.Row="1" Grid.Column="1" Margin="0,0,8,8"
TextChanged="PreviewField_Changed"/>
<StackPanel Grid.Row="1" Grid.Column="2" Orientation="Horizontal" Margin="0,0,0,8">
<Button Content="Icon" Click="BrowseIcon_Click" Padding="8,4" Margin="0,0,6,0"/>
<Button Content="Reset" Click="ResetIcon_Click" Padding="8,4"/>
</StackPanel>
<TextBlock Text="Display" Grid.Row="2" Style="{StaticResource SettingsFieldLabel}"/>
<ComboBox x:Name="ItemDisplayModeBox" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2"
Margin="0" SelectionChanged="ItemDisplayModeBox_SelectionChanged"/>
</Grid>
</Border>
<Border Style="{StaticResource SettingsSectionBorder}" Margin="0">
<StackPanel>
<TextBlock Text="Preview" Style="{StaticResource SettingsSectionTitle}"/>
<Border BorderThickness="1"
BorderBrush="{DynamicResource AppBorderBrush}"
Background="{DynamicResource AppSurfaceBrush}"
CornerRadius="12"
@@ -265,8 +317,9 @@
TextWrapping="Wrap"/>
</StackPanel>
</Border>
</Grid>
</StackPanel>
</Border>
</StackPanel>
</ScrollViewer>
<TextBlock x:Name="StatusText" Grid.Row="3" Margin="4,14,4,0"

View File

@@ -8,6 +8,8 @@ Download the compiled Windows release from:
[Taskbar Launcher Releases](https://git.mget.ca/MGET/Taskbar-Launcher/releases)
Current stable release: `v1.0.2`
## Features
- System tray launcher
@@ -36,6 +38,10 @@ Download the compiled Windows release from:
- Optional Start with Windows shortcut
- Windows light/dark theme support
## Latest Stable
`v1.0.2` adds the newer launcher management and polish work from the development builds, including recent items, pinned items, drag/drop item creation, item duplication, item notes, target validation, selected item import/export, run-as-administrator support, working folders, start-minimized launch options, launcher tooltips, and the refreshed Settings layout.
## Screenshots
### Launcher Popup
@@ -88,5 +94,5 @@ Recommended release flow for maintainers:
1. Update `<Version>` in `TaskbarLauncher.csproj`.
2. Commit the change.
3. Build a release package locally.
4. Tag the release, for example `v1.0.1`.
4. Tag the release, for example `v1.0.2`.
5. Upload the release zip to Gitea Releases.

View File

@@ -11,10 +11,10 @@
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
<Authors>Ray Berezowski</Authors>
<ApplicationIcon>Assets\AppIcon.ico</ApplicationIcon>
<Version>1.0.1</Version>
<AssemblyVersion>1.0.1.21</AssemblyVersion>
<FileVersion>1.0.1.21</FileVersion>
<InformationalVersion>1.0.1</InformationalVersion>
<Version>1.0.2</Version>
<AssemblyVersion>1.0.2.0</AssemblyVersion>
<FileVersion>1.0.2.0</FileVersion>
<InformationalVersion>1.0.2</InformationalVersion>
</PropertyGroup>
<ItemGroup>

View File

@@ -1,5 +1,7 @@
# Install and Use Taskbar Launcher
Current stable release: `v1.0.2`
## Small Package
The small package requires:

View File

@@ -21,6 +21,7 @@ Examples:
- `1.0.0`: first stable release
- `1.0.1`: bug fix
- `1.0.2`: tested feature and polish release
- `1.1.0`: new feature
Update version fields in:
@@ -37,9 +38,9 @@ TaskbarLauncher.csproj
4. Tag the release:
```powershell
git tag v1.0.0
git tag v1.0.2
git push origin main
git push origin v1.0.0
git push origin v1.0.2
```
5. In Gitea, create a release from the tag.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 55 KiB