diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager.csproj b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager.csproj
index 0ef03ef..44364f7 100644
--- a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager.csproj
+++ b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager.csproj
@@ -14,6 +14,21 @@
4
true
true
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
AnyCPU
@@ -57,6 +72,9 @@
app.manifest
+
+ OpenXR_LogoBug_48px_Nov17.ico
+
..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll
@@ -125,5 +143,20 @@
+
+
+
+
+
+ False
+ Microsoft .NET Framework 4.7.2 %28x86 and x64%29
+ true
+
+
+ False
+ .NET Framework 3.5 SP1
+ false
+
+
\ No newline at end of file
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR_LogoBug_48px_Nov17.ico b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR_LogoBug_48px_Nov17.ico
new file mode 100644
index 0000000..5196b04
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/OpenXR_LogoBug_48px_Nov17.ico differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Properties/AssemblyInfo.cs b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Properties/AssemblyInfo.cs
index 14f30d0..870c3d0 100644
--- a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Properties/AssemblyInfo.cs
+++ b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Properties/AssemblyInfo.cs
@@ -8,11 +8,11 @@
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("OpenXR-Runtime-Manager")]
-[assembly: AssemblyDescription("")]
+[assembly: AssemblyDescription("Application to visualize and change the system's current OpenXR runtime")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("OpenXR-Runtime-Manager")]
-[assembly: AssemblyCopyright("Copyright © 2021")]
+[assembly: AssemblyCopyright("Copyright © 2021 Arthur Brainville (Ybalrid)")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -51,5 +51,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: AssemblyVersion("0.1.2.0")]
+[assembly: AssemblyFileVersion("0.1.2.0")]
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.ico b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.ico
new file mode 100644
index 0000000..ec73a48
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.ico differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.png b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.png
new file mode 100644
index 0000000..4eb8bf3
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_16px_Nov17.png differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.ico b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.ico
new file mode 100644
index 0000000..ee91472
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.ico differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.png b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.png
new file mode 100644
index 0000000..e81b4de
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_32px_Nov17.png differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.ico b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.ico
new file mode 100644
index 0000000..5196b04
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.ico differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.png b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.png
new file mode 100644
index 0000000..266efb6
Binary files /dev/null and b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/Resources/Icons/OpenXR_LogoBug_48px_Nov17.png differ
diff --git a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/RuntimeManager.cs b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/RuntimeManager.cs
index 70ebc54..fd2871b 100644
--- a/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/RuntimeManager.cs
+++ b/OpenXR-Runtime-Manager/OpenXR-Runtime-Manager/RuntimeManager.cs
@@ -10,7 +10,7 @@ namespace OpenXR_Runtime_Manager
class RuntimeManager
{
//TODO make a database of paths to manifest for known OpenXR runtimes that are compatible with MS Windows
- string[] WellKnwonOpenXRRuntimeManifestPaths = new string[]
+ string[] WellKnwonOpenXRRuntimeManifestPaths =
{
"%ProgramFiles(x86)%\\Steam\\steamapps\\common\\SteamVR\\steamxr_win64.json",
"%ProgramFiles%\\Oculus\\Support\\oculus-runtime\\oculus_openxr_32.json",
@@ -23,8 +23,8 @@ class RuntimeManager
private Runtime _activeRuntime = null;
public bool HasActiveRuntime => _activeRuntime != null;
-
public Runtime ActiveRuntime => _activeRuntime;
+
public List AvailableRuntimeNames
{
get
@@ -85,9 +85,7 @@ private void Handle32bit(Runtime runtime)
private bool GetActiveRuntimeFromRegistry()
{
- const int OpenXRVersion = 1;
- string KhronosOpenXRPath = $@"SOFTWARE\Khronos\OpenXR\{OpenXRVersion}";
- RegistryKey OpenXRV1Key = Registry.LocalMachine.OpenSubKey(KhronosOpenXRPath);
+ RegistryKey OpenXRV1Key = Registry.LocalMachine.OpenSubKey(GetKhronosOpenXRVersionRegistryKeyPath());
var activeRuntimeManifestPath = (string)OpenXRV1Key?.GetValue("ActiveRuntime");
if (string.IsNullOrEmpty(activeRuntimeManifestPath)) return false;
@@ -128,11 +126,7 @@ public bool SetRuntimeAsSystem(string name)
{
if (_availableRuntimes.TryGetValue(name, out var runtime))
{
-
- //TODO refactor this
- const int OpenXRVersion = 1;
- string KhronosOpenXRPath = $@"SOFTWARE\Khronos\OpenXR\{OpenXRVersion}";
- RegistryKey OpenXRV1Key = Registry.LocalMachine.CreateSubKey(KhronosOpenXRPath, true);
+ RegistryKey OpenXRV1Key = Registry.LocalMachine.CreateSubKey(GetKhronosOpenXRVersionRegistryKeyPath(), true);
try
{
@@ -149,6 +143,11 @@ public bool SetRuntimeAsSystem(string name)
return false;
}
+ private static string GetKhronosOpenXRVersionRegistryKeyPath(int OpenXRVersion = 1)
+ {
+ return $@"SOFTWARE\Khronos\OpenXR\{OpenXRVersion}";
+ }
+
public RuntimeManager()
{
GetActiveRuntimeFromRegistry();
diff --git a/ui.gif b/ui.gif
index fb3f896..61755f2 100644
Binary files a/ui.gif and b/ui.gif differ