diff --git a/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml b/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml
index ce4f598..cfcca65 100644
--- a/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml
+++ b/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml
@@ -475,6 +475,7 @@
AutomationProperties.AutomationId="clearButton"
ButtonId="Clear"
Content="C"
+ LostFocus="ClearButton_LostFocus"
Visibility="{x:Bind Model.IsInputEmpty, Mode=OneWay, Converter={StaticResource BooleanToVisibilityConverter}}"/>
(sender);
+ auto radioButton = static_cast(sender);
if (radioButton == ArithmeticShiftButton)
{
@@ -142,3 +143,19 @@ void CalculatorProgrammerRadixOperators::CalculatorProgrammerRadixOperators::Ope
{
Model->SetOpenParenthesisCountNarratorAnnouncement();
}
+
+void CalculatorProgrammerRadixOperators::ClearEntryButton_LostFocus(Object ^ sender, RoutedEventArgs ^ e)
+{
+ if (ClearEntryButton->Visibility == ::Visibility::Collapsed && ClearButton->Visibility == ::Visibility::Visible)
+ {
+ ClearButton->Focus(::FocusState::Programmatic);
+ }
+}
+
+void CalculatorProgrammerRadixOperators::ClearButton_LostFocus(Object ^ sender, RoutedEventArgs ^ e)
+{
+ if (ClearEntryButton->Visibility == ::Visibility::Visible && ClearButton->Visibility == ::Visibility::Collapsed)
+ {
+ ClearEntryButton->Focus(::FocusState::Programmatic);
+ }
+}
diff --git a/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml.h b/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml.h
index 4cab69c..bd61def 100644
--- a/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml.h
+++ b/src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml.h
@@ -39,5 +39,7 @@ namespace CalculatorApp
bool m_isErrorVisualState;
void OpenParenthesisButton_GotFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
+ void ClearEntryButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
+ void ClearButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
};
}
diff --git a/src/Calculator/Views/CalculatorScientificOperators.xaml b/src/Calculator/Views/CalculatorScientificOperators.xaml
index 20adf96..c2fe5ab 100644
--- a/src/Calculator/Views/CalculatorScientificOperators.xaml
+++ b/src/Calculator/Views/CalculatorScientificOperators.xaml
@@ -898,7 +898,7 @@
-
Visibility == ::Visibility::Collapsed && ClearButton->Visibility == ::Visibility::Visible)
+ {
+ ClearButton->Focus(::FocusState::Programmatic);
+ }
+}
+
+void CalculatorScientificOperators::ClearButton_LostFocus(Object ^ sender, RoutedEventArgs ^ e)
+{
+ if (ClearEntryButton->Visibility == ::Visibility::Visible && ClearButton->Visibility == ::Visibility::Collapsed)
+ {
+ ClearEntryButton->Focus(::FocusState::Programmatic);
+ }
+}
diff --git a/src/Calculator/Views/CalculatorScientificOperators.xaml.h b/src/Calculator/Views/CalculatorScientificOperators.xaml.h
index 5d75178..5c104dd 100644
--- a/src/Calculator/Views/CalculatorScientificOperators.xaml.h
+++ b/src/Calculator/Views/CalculatorScientificOperators.xaml.h
@@ -43,5 +43,7 @@ namespace CalculatorApp
void ShiftButton_IsEnabledChanged(_In_ Platform::Object ^ sender, _In_ Windows::UI::Xaml::DependencyPropertyChangedEventArgs ^ e);
void SetOperatorRowVisibility();
void SetTrigRowVisibility();
+ void ClearEntryButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
+ void ClearButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
};
}