diff options
Diffstat (limited to 'accessible/base/Filters.cpp')
-rw-r--r-- | accessible/base/Filters.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/accessible/base/Filters.cpp b/accessible/base/Filters.cpp new file mode 100644 index 0000000000..3ef58dc4fe --- /dev/null +++ b/accessible/base/Filters.cpp @@ -0,0 +1,25 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "Filters.h" + +#include "LocalAccessible-inl.h" +#include "States.h" + +using namespace mozilla::a11y; +using namespace mozilla::a11y::filters; + +uint32_t filters::GetSelected(LocalAccessible* aAccessible) { + if (aAccessible->State() & states::SELECTED) return eMatch | eSkipSubtree; + + return eSkip; +} + +uint32_t filters::GetSelectable(LocalAccessible* aAccessible) { + if (aAccessible->InteractiveState() & states::SELECTABLE) { + return eMatch | eSkipSubtree; + } + + return eSkip; +} |