SEBWIN-931: Added missing default settings related to clipboard and ensured data processor is also executed with default settings.
This commit is contained in:
parent
1ff7d84375
commit
26f14f235d
5 changed files with 17 additions and 6 deletions
|
@ -31,7 +31,7 @@ namespace SafeExamBrowser.Configuration.ConfigurationData
|
||||||
new UserInterfaceDataMapper()
|
new UserInterfaceDataMapper()
|
||||||
};
|
};
|
||||||
|
|
||||||
internal void MapRawDataToSettings(IDictionary<string, object> rawData, AppSettings settings)
|
internal void Map(IDictionary<string, object> rawData, AppSettings settings)
|
||||||
{
|
{
|
||||||
foreach (var item in rawData)
|
foreach (var item in rawData)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,8 +20,13 @@ namespace SafeExamBrowser.Configuration.ConfigurationData
|
||||||
{
|
{
|
||||||
internal void Process(IDictionary<string, object> rawData, AppSettings settings)
|
internal void Process(IDictionary<string, object> rawData, AppSettings settings)
|
||||||
{
|
{
|
||||||
AllowBrowserToolbarForReloading(settings);
|
ProcessDefault(settings);
|
||||||
CalculateConfigurationKey(rawData, settings);
|
CalculateConfigurationKey(rawData, settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void ProcessDefault(AppSettings settings)
|
||||||
|
{
|
||||||
|
AllowBrowserToolbarForReloading(settings);
|
||||||
InitializeBrowserHomeFunctionality(settings);
|
InitializeBrowserHomeFunctionality(settings);
|
||||||
InitializeClipboardSettings(settings);
|
InitializeClipboardSettings(settings);
|
||||||
InitializeProctoringSettings(settings);
|
InitializeProctoringSettings(settings);
|
||||||
|
|
|
@ -196,6 +196,7 @@ namespace SafeExamBrowser.Configuration.ConfigurationData
|
||||||
settings.Browser.ShowFileSystemElementPath = true;
|
settings.Browser.ShowFileSystemElementPath = true;
|
||||||
settings.Browser.StartUrl = "https://www.safeexambrowser.org/start";
|
settings.Browser.StartUrl = "https://www.safeexambrowser.org/start";
|
||||||
settings.Browser.UseCustomUserAgent = false;
|
settings.Browser.UseCustomUserAgent = false;
|
||||||
|
settings.Browser.UseIsolatedClipboard = true;
|
||||||
settings.Browser.UseQueryParameter = false;
|
settings.Browser.UseQueryParameter = false;
|
||||||
settings.Browser.UseTemporaryDownAndUploadDirectory = false;
|
settings.Browser.UseTemporaryDownAndUploadDirectory = false;
|
||||||
|
|
||||||
|
@ -209,7 +210,10 @@ namespace SafeExamBrowser.Configuration.ConfigurationData
|
||||||
settings.Keyboard.AllowAltEsc = false;
|
settings.Keyboard.AllowAltEsc = false;
|
||||||
settings.Keyboard.AllowAltF4 = false;
|
settings.Keyboard.AllowAltF4 = false;
|
||||||
settings.Keyboard.AllowAltTab = true;
|
settings.Keyboard.AllowAltTab = true;
|
||||||
|
settings.Keyboard.AllowCtrlC = true;
|
||||||
settings.Keyboard.AllowCtrlEsc = false;
|
settings.Keyboard.AllowCtrlEsc = false;
|
||||||
|
settings.Keyboard.AllowCtrlV = true;
|
||||||
|
settings.Keyboard.AllowCtrlX = true;
|
||||||
settings.Keyboard.AllowEsc = true;
|
settings.Keyboard.AllowEsc = true;
|
||||||
settings.Keyboard.AllowF1 = true;
|
settings.Keyboard.AllowF1 = true;
|
||||||
settings.Keyboard.AllowF2 = true;
|
settings.Keyboard.AllowF2 = true;
|
||||||
|
|
|
@ -122,6 +122,8 @@ namespace SafeExamBrowser.Configuration
|
||||||
var status = default(LoadStatus);
|
var status = default(LoadStatus);
|
||||||
|
|
||||||
settings = LoadDefaultSettings();
|
settings = LoadDefaultSettings();
|
||||||
|
dataProcessor.ProcessDefault(settings);
|
||||||
|
|
||||||
logger.Info($"Initialized default settings, now attempting to load '{resource}'...");
|
logger.Info($"Initialized default settings, now attempting to load '{resource}'...");
|
||||||
|
|
||||||
try
|
try
|
||||||
|
@ -136,7 +138,7 @@ namespace SafeExamBrowser.Configuration
|
||||||
|
|
||||||
if (status == LoadStatus.Success)
|
if (status == LoadStatus.Success)
|
||||||
{
|
{
|
||||||
dataMapper.MapRawDataToSettings(data, settings);
|
dataMapper.Map(data, settings);
|
||||||
dataProcessor.Process(data, settings);
|
dataProcessor.Process(data, settings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,13 +32,13 @@ namespace SafeExamBrowser.Runtime.Operations
|
||||||
|
|
||||||
protected abstract void InvokeActionRequired(ActionRequiredEventArgs args);
|
protected abstract void InvokeActionRequired(ActionRequiredEventArgs args);
|
||||||
|
|
||||||
protected LoadStatus? TryLoadSettings(Uri uri, UriSource source, out PasswordParameters passwordParams, out AppSettings settings, string currentPassword = default(string))
|
protected LoadStatus? TryLoadSettings(Uri uri, UriSource source, out PasswordParameters passwordParams, out AppSettings settings, string currentPassword = default)
|
||||||
{
|
{
|
||||||
passwordParams = new PasswordParameters { Password = string.Empty, IsHash = true };
|
passwordParams = new PasswordParameters { Password = string.Empty, IsHash = true };
|
||||||
|
|
||||||
var status = configuration.TryLoadSettings(uri, out settings, passwordParams);
|
var status = configuration.TryLoadSettings(uri, out settings, passwordParams);
|
||||||
|
|
||||||
if (status == LoadStatus.PasswordNeeded && currentPassword != default(string))
|
if (status == LoadStatus.PasswordNeeded && currentPassword != default)
|
||||||
{
|
{
|
||||||
passwordParams.Password = currentPassword;
|
passwordParams.Password = currentPassword;
|
||||||
passwordParams.IsHash = true;
|
passwordParams.IsHash = true;
|
||||||
|
@ -46,7 +46,7 @@ namespace SafeExamBrowser.Runtime.Operations
|
||||||
status = configuration.TryLoadSettings(uri, out settings, passwordParams);
|
status = configuration.TryLoadSettings(uri, out settings, passwordParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int attempts = 0; attempts < 5 && status == LoadStatus.PasswordNeeded; attempts++)
|
for (var attempts = 0; attempts < 5 && status == LoadStatus.PasswordNeeded; attempts++)
|
||||||
{
|
{
|
||||||
var isLocalConfig = source == UriSource.AppData || source == UriSource.ProgramData;
|
var isLocalConfig = source == UriSource.AppData || source == UriSource.ProgramData;
|
||||||
var purpose = isLocalConfig ? PasswordRequestPurpose.LocalSettings : PasswordRequestPurpose.Settings;
|
var purpose = isLocalConfig ? PasswordRequestPurpose.LocalSettings : PasswordRequestPurpose.Settings;
|
||||||
|
|
Loading…
Reference in a new issue