focus address bar by pressing Ctrl+L
This commit is contained in:
parent
ffe424725d
commit
a4e56ead3d
6 changed files with 31 additions and 2 deletions
|
@ -165,6 +165,7 @@ namespace SafeExamBrowser.Browser
|
||||||
keyboardHandler.ZoomOutRequested += ZoomOutRequested;
|
keyboardHandler.ZoomOutRequested += ZoomOutRequested;
|
||||||
keyboardHandler.ZoomResetRequested += ZoomResetRequested;
|
keyboardHandler.ZoomResetRequested += ZoomResetRequested;
|
||||||
keyboardHandler.TabPressed += TabPressed;
|
keyboardHandler.TabPressed += TabPressed;
|
||||||
|
keyboardHandler.FocusAddressBarRequested += FocusAddressBarRequested;
|
||||||
resourceHandler.SessionIdentifierDetected += (id) => SessionIdentifierDetected?.Invoke(id);
|
resourceHandler.SessionIdentifierDetected += (id) => SessionIdentifierDetected?.Invoke(id);
|
||||||
requestHandler.QuitUrlVisited += RequestHandler_QuitUrlVisited;
|
requestHandler.QuitUrlVisited += RequestHandler_QuitUrlVisited;
|
||||||
requestHandler.RequestBlocked += RequestHandler_RequestBlocked;
|
requestHandler.RequestBlocked += RequestHandler_RequestBlocked;
|
||||||
|
@ -458,6 +459,11 @@ namespace SafeExamBrowser.Browser
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void FocusAddressBarRequested()
|
||||||
|
{
|
||||||
|
window.FocusAddressBar();
|
||||||
|
}
|
||||||
|
|
||||||
private ChromiumHostControl LifeSpanHandler_CreatePopup()
|
private ChromiumHostControl LifeSpanHandler_CreatePopup()
|
||||||
{
|
{
|
||||||
var args = new PopupRequestedEventArgs();
|
var args = new PopupRequestedEventArgs();
|
||||||
|
|
|
@ -20,6 +20,7 @@ namespace SafeExamBrowser.Browser.Handlers
|
||||||
internal event ActionRequestedEventHandler ZoomInRequested;
|
internal event ActionRequestedEventHandler ZoomInRequested;
|
||||||
internal event ActionRequestedEventHandler ZoomOutRequested;
|
internal event ActionRequestedEventHandler ZoomOutRequested;
|
||||||
internal event ActionRequestedEventHandler ZoomResetRequested;
|
internal event ActionRequestedEventHandler ZoomResetRequested;
|
||||||
|
internal event ActionRequestedEventHandler FocusAddressBarRequested;
|
||||||
internal event System.EventHandler<bool> TabPressed;
|
internal event System.EventHandler<bool> TabPressed;
|
||||||
|
|
||||||
private int? currentKeyDown = null;
|
private int? currentKeyDown = null;
|
||||||
|
@ -41,6 +42,11 @@ namespace SafeExamBrowser.Browser.Handlers
|
||||||
HomeNavigationRequested?.Invoke();
|
HomeNavigationRequested?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ctrl && keyCode == (int) Keys.L)
|
||||||
|
{
|
||||||
|
FocusAddressBarRequested?.Invoke();
|
||||||
|
}
|
||||||
|
|
||||||
if ((ctrl && keyCode == (int) Keys.Add) || (ctrl && keyCode == (int) Keys.Oemplus) || (ctrl && shift && keyCode == (int) Keys.D1))
|
if ((ctrl && keyCode == (int) Keys.Add) || (ctrl && keyCode == (int) Keys.Oemplus) || (ctrl && shift && keyCode == (int) Keys.D1))
|
||||||
{
|
{
|
||||||
ZoomInRequested?.Invoke();
|
ZoomInRequested?.Invoke();
|
||||||
|
|
|
@ -140,5 +140,7 @@ namespace SafeExamBrowser.UserInterface.Contracts.Browser
|
||||||
/// Sets the focus to the browser.
|
/// Sets the focus to the browser.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void FocusBrowser();
|
void FocusBrowser();
|
||||||
|
|
||||||
|
void FocusAddressBar();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@ namespace SafeExamBrowser.UserInterface.Desktop.Controls.Taskbar
|
||||||
CultureCodeTextBlock.Text = layout.CultureCode;
|
CultureCodeTextBlock.Text = layout.CultureCode;
|
||||||
CultureNameTextBlock.Text = layout.CultureName;
|
CultureNameTextBlock.Text = layout.CultureName;
|
||||||
LayoutNameTextBlock.Text = layout.LayoutName;
|
LayoutNameTextBlock.Text = layout.LayoutName;
|
||||||
System.Windows.Automation.AutomationProperties.SetHelpText(Button, layout.Name);
|
System.Windows.Automation.AutomationProperties.SetHelpText(Button, layout.LayoutName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -453,7 +453,9 @@ if (typeof __SEB_focusElement === 'undefined') {
|
||||||
.filter(function(e) { return e.el.tabIndex >= 0 && !e.el.disabled && e.el.offsetParent; })
|
.filter(function(e) { return e.el.tabIndex >= 0 && !e.el.disabled && e.el.offsetParent; })
|
||||||
.sort(function(a,b) { return a.el.tabIndex === b.el.tabIndex ? a.i - b.i : (a.el.tabIndex || 9E9) - (b.el.tabIndex || 9E9); })
|
.sort(function(a,b) { return a.el.tabIndex === b.el.tabIndex ? a.i - b.i : (a.el.tabIndex || 9E9) - (b.el.tabIndex || 9E9); })
|
||||||
var item = items[forward ? 1 : items.length - 1];
|
var item = items[forward ? 1 : items.length - 1];
|
||||||
setTimeout(function () { item.focus(); }, 20);
|
if (item && item.focus && typeof item.focus !== 'function')
|
||||||
|
throw ('item.focus is not a function, ' + typeof item.focus)
|
||||||
|
setTimeout(function () { item && item.focus && item.focus(); }, 20);
|
||||||
}
|
}
|
||||||
}";
|
}";
|
||||||
var control = BrowserControlHost.Child as IBrowserControl;
|
var control = BrowserControlHost.Child as IBrowserControl;
|
||||||
|
@ -622,5 +624,13 @@ if (typeof __SEB_focusElement === 'undefined') {
|
||||||
this.browserControlGetsFocusFromTaskbar = false;
|
this.browserControlGetsFocusFromTaskbar = false;
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void FocusAddressBar()
|
||||||
|
{
|
||||||
|
this.Dispatcher.BeginInvoke((Action)(async () =>
|
||||||
|
{
|
||||||
|
this.UrlTextBox.Focus();
|
||||||
|
}));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -471,5 +471,10 @@ namespace SafeExamBrowser.UserInterface.Mobile.Windows
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void FocusAddressBar()
|
||||||
|
{
|
||||||
|
this.UrlTextBox.Focus();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue