diff --git a/Aaru.Gui/Assets/Icons/oxygen/computer.svg b/Aaru.Gui/Assets/Icons/oxygen/computer.svg
new file mode 100644
index 000000000..02d0cad1b
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/computer.svg
@@ -0,0 +1,2877 @@
+
+
+
+
diff --git a/Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg b/Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg
new file mode 100644
index 000000000..e37181411
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg
@@ -0,0 +1,2068 @@
+
+
+
\ No newline at end of file
diff --git a/Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg b/Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg
new file mode 100644
index 000000000..e5972fa9c
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg
@@ -0,0 +1,1809 @@
+
+
+
+
\ No newline at end of file
diff --git a/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media-usb.svg b/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media-usb.svg
new file mode 100644
index 000000000..5a7e602ed
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media-usb.svg
@@ -0,0 +1,639 @@
+
+
+
\ No newline at end of file
diff --git a/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media.svg b/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media.svg
new file mode 100644
index 000000000..e2a8a2c9f
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/drive-removable-media.svg
@@ -0,0 +1,565 @@
+
+
+
\ No newline at end of file
diff --git a/Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg b/Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg
new file mode 100644
index 000000000..02f99e1ef
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg
@@ -0,0 +1,682 @@
+
+
+
+
diff --git a/Aaru.Gui/Assets/Icons/oxygen/media-flash-sd-mmc.svg b/Aaru.Gui/Assets/Icons/oxygen/media-flash-sd-mmc.svg
new file mode 100644
index 000000000..c0ece5c40
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/media-flash-sd-mmc.svg
@@ -0,0 +1,6960 @@
+
+
+
+
\ No newline at end of file
diff --git a/Aaru.Gui/Assets/Icons/oxygen/media-tape.svg b/Aaru.Gui/Assets/Icons/oxygen/media-tape.svg
new file mode 100644
index 000000000..e2c89c1ce
--- /dev/null
+++ b/Aaru.Gui/Assets/Icons/oxygen/media-tape.svg
@@ -0,0 +1,749 @@
+
+
+
diff --git a/Aaru.Gui/ViewModels/Panels/ImageInfoViewModel.cs b/Aaru.Gui/ViewModels/Panels/ImageInfoViewModel.cs
index 19127215b..3ff4ee20a 100644
--- a/Aaru.Gui/ViewModels/Panels/ImageInfoViewModel.cs
+++ b/Aaru.Gui/ViewModels/Panels/ImageInfoViewModel.cs
@@ -52,7 +52,6 @@ using Aaru.Helpers;
using Aaru.Localization;
using Avalonia.Controls;
using Avalonia.Media;
-using Avalonia.Media.Imaging;
using Avalonia.Platform;
using Avalonia.Styling;
using Avalonia.Svg;
@@ -97,14 +96,23 @@ public sealed class ImageInfoViewModel : ViewModelBase
ViewSectorsCommand = new RelayCommand(ViewSectors);
DecodeMediaTagCommand = new RelayCommand(DecodeMediaTag);
- var genericHddIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
+ var genericHddIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg")))
+ };
- var genericOpticalIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
+ var genericOpticalIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg")))
+ };
- var genericFolderIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
+ var genericFolderIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg")))
+ };
// Check if we're using dark theme
bool isDarkTheme = view.ActualThemeVariant == ThemeVariant.Dark;
@@ -264,9 +272,8 @@ public sealed class ImageInfoViewModel : ViewModelBase
}
if(imageFormat.Info.ReadableMediaTags is { Count: > 0 })
- {
- foreach(MediaTagType tag in imageFormat.Info.ReadableMediaTags.Order()) MediaTagsList.Add(tag.Humanize());
- }
+ foreach(MediaTagType tag in imageFormat.Info.ReadableMediaTags.Order())
+ MediaTagsList.Add(tag.Humanize());
if(imageFormat.Info.ReadableSectorTags is { Count: > 0 })
{
@@ -785,8 +792,9 @@ public sealed class ImageInfoViewModel : ViewModelBase
try
{
if(opticalMediaImage.Sessions is { Count: > 0 })
- foreach(Session session in opticalMediaImage.Sessions)
- Sessions.Add(session);
+ {
+ foreach(Session session in opticalMediaImage.Sessions) Sessions.Add(session);
+ }
}
catch(Exception ex)
{
@@ -796,8 +804,9 @@ public sealed class ImageInfoViewModel : ViewModelBase
try
{
if(opticalMediaImage.Tracks is { Count: > 0 })
- foreach(Track track in opticalMediaImage.Tracks)
- Tracks.Add(track);
+ {
+ foreach(Track track in opticalMediaImage.Tracks) Tracks.Add(track);
+ }
}
catch(Exception ex)
{
diff --git a/Aaru.Gui/ViewModels/Windows/MainWindowViewModel.cs b/Aaru.Gui/ViewModels/Windows/MainWindowViewModel.cs
index 5ccbed892..d4232080d 100644
--- a/Aaru.Gui/ViewModels/Windows/MainWindowViewModel.cs
+++ b/Aaru.Gui/ViewModels/Windows/MainWindowViewModel.cs
@@ -54,7 +54,6 @@ using Aaru.Logging;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
-using Avalonia.Media.Imaging;
using Avalonia.Platform;
using Avalonia.Platform.Storage;
using Avalonia.Styling;
@@ -78,13 +77,13 @@ namespace Aaru.Gui.ViewModels.Windows;
public partial class MainWindowViewModel : ViewModelBase
{
- const string MODULE_NAME = "Main Window ViewModel";
- readonly Bitmap _genericFolderIcon;
- readonly Bitmap _genericHddIcon;
- readonly Bitmap _genericOpticalIcon;
- readonly Bitmap _genericTapeIcon;
- readonly Window _view;
- Console _console;
+ const string MODULE_NAME = "Main Window ViewModel";
+ readonly SvgImage _genericFolderIcon;
+ readonly SvgImage _genericHddIcon;
+ readonly SvgImage _genericOpticalIcon;
+ readonly SvgImage _genericTapeIcon;
+ readonly Window _view;
+ Console _console;
[ObservableProperty]
[CanBeNull]
object _contentPanel;
@@ -123,18 +122,28 @@ public partial class MainWindowViewModel : ViewModelBase
CreateMetadataCommand = new AsyncRelayCommand(CreateMetadataAsync);
EditMetadataCommand = new AsyncRelayCommand(EditMetadataAsync);
- _genericHddIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
+ _genericHddIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg")))
+ };
- _genericOpticalIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
+ _genericOpticalIcon = new SvgImage
+ {
+ Source = SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/media-tape.svg")))
+ };
- _genericTapeIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-tape.png")));
-
- _genericFolderIcon =
- new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
+ _genericTapeIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg")))
+ };
+ _genericFolderIcon = new SvgImage
+ {
+ Source =
+ SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg")))
+ };
switch(DetectOS.GetRealPlatformID())
{