Start of improved browser support

This commit is contained in:
2014-09-15 18:47:56 -04:00
parent c72189aa02
commit 783152f7dc
2 changed files with 24 additions and 16 deletions

View File

@@ -10,10 +10,14 @@
<RootNamespace>Common</RootNamespace>
<AssemblyName>Common</AssemblyName>
<WarningLevel>4</WarningLevel>
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
<SccProjectName>
</SccProjectName>
<SccLocalPath>
</SccLocalPath>
<SccAuxPath>
</SccAuxPath>
<SccProvider>
</SccProvider>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>

View File

@@ -21,6 +21,7 @@ namespace Common.Internet
public string Command { get; private set; }
public string DefaultIcon { get; private set; }
public ImageSource DefaultImage { get; private set; }
public bool SupportsPrivate { get; private set; }
public void LoadImage()
{
@@ -41,11 +42,6 @@ namespace Common.Internet
DefaultImage = wpfBitmap;
}
public bool SupportsPrivate()
{
return false;
}
public override string ToString()
{
return Name;
@@ -69,15 +65,22 @@ namespace Common.Internet
return true;
}
public static Dictionary<string, Browser> DetectInstalledBrowsers()
{
return DetectInstalledBrowsers(false);
}
public static Dictionary<string, Browser> DetectInstalledBrowsers(bool loadImages)
public static Dictionary<string, Browser> DetectInstalledBrowsers(bool loadImages, bool includeUseSystemDefault)
{
var browsers = new Dictionary<string, Browser>();
if (includeUseSystemDefault)
{
var browser = new Browser
{
Key = string.Empty,
Name = "System Default",
SupportsPrivate = false
};
browsers.Add(browser.Key, browser);
}
var browserKeys = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Clients\StartMenuInternet");
if (browserKeys == null)
@@ -107,7 +110,8 @@ namespace Common.Internet
Key = browserName,
Name = (string) browserKey.GetValue(null),
Command = (string) browserKeyPath.GetValue(null),
DefaultIcon = browserIconPath == null ? null : (string) browserIconPath.GetValue(null)
DefaultIcon = browserIconPath == null ? null : (string) browserIconPath.GetValue(null),
SupportsPrivate = true
};
if (loadImages)