}
void
+_Control::SetFocusNavigateEnabled(bool enable)
+{
+ __isNavigatable = enable;
+}
+
+bool
+_Control::IsFocusNavigateEnabled(void) const
+{
+ return __isNavigatable;
+}
+
+void
_Control::SetFocusModeStateEnabled(bool enable)
{
__isFocusMode = enable;
, __isSetClientBounds(false)
, __isCalledGetCanvasN(false)
, __isFocusMode(false)
+ , __isNavigatable(true)
, __pVisualElementContentProvider(null)
, __pVisualElement(null)
, __pVisualElementEventListener(null)
bool isFocusalbe = pControl->IsFocusable();
bool enableState = pControl->IsEnabled();
bool visibleState = pControl->IsVisible();
- if (enableState && visibleState && isFocusalbe)
+ bool isNavigatable = pControl->IsFocusNavigateEnabled();
+ if (enableState && visibleState && isFocusalbe && isNavigatable)
{
return true;
}
pTop->SetFocusTraversalControl(pControl);
}
pControl->DrawFocus();
+ __isFocusMode = true;
return;
}
}
_FocusManagerImpl::OnKeyPressed(const _Control& source, const _KeyInfo& keyInfo)
{
_KeyCode keyCode = keyInfo.GetKeyCode();
-
if(keyCode == _KEY_TAB)
{
FocusDirection focusDirection = FOCUS_DIRECTION_DOWNWARD;
}
_Control* pControl = const_cast<_Control*> (&source);
- __isFocusMode = true;
StartFocusTraversal(pControl, focusDirection);
}
return false;
ClearLastResult();
GetAccessibilityContainer()->Activate(true);
+ SetFocusNavigateEnabled(false);
return;
CATCH:
bool HasFocusRing(void);
void SetFocusModeStateEnabled(bool enable);
bool IsFocusModeStateEnabled(void) const;
+ void SetFocusNavigateEnabled(bool enable);
+ bool IsFocusNavigateEnabled(void) const;
// Clipping
bool IsClipToParent(void) const;
bool __isSetClientBounds;
bool __isCalledGetCanvasN;
bool __isFocusMode;
+ bool __isNavigatable;
class ControlVisualElementContentProvider;
ControlVisualElementContentProvider* __pVisualElementContentProvider;