Browse Source

Merge pull request #745 from robbieknuth/fixes/702_textbox_tab_focus_select_all_text

When a textbox gets focus via the tab key, select all text if the textbox is single line.
pull/765/head
Steven Kirk 10 years ago
committed by GitHub
parent
commit
829fed015e
  1. 16
      src/Avalonia.Controls/TextBox.cs

16
src/Avalonia.Controls/TextBox.cs

@ -240,7 +240,21 @@ namespace Avalonia.Controls
protected override void OnGotFocus(GotFocusEventArgs e) protected override void OnGotFocus(GotFocusEventArgs e)
{ {
base.OnGotFocus(e); base.OnGotFocus(e);
_presenter.ShowCaret();
// when navigating to a textbox via the tab key, select all text if
// 1) this textbox is *not* a multiline textbox
// 2) this textbox has any text to select
if (e.NavigationMethod == NavigationMethod.Tab &&
!AcceptsReturn &&
Text?.Length > 0)
{
SelectionStart = 0;
SelectionEnd = Text.Length;
}
else
{
_presenter.ShowCaret();
}
} }
protected override void OnLostFocus(RoutedEventArgs e) protected override void OnLostFocus(RoutedEventArgs e)

Loading…
Cancel
Save