Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1124)

Unified Diff: third_party/WebKit/Source/modules/accessibility/AXRadioInput.h

Issue 1628283002: posinset and setsize for input type, radio, exposed in AX tree (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: removed isRadiobutton() Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/accessibility/AXRadioInput.h
diff --git a/third_party/WebKit/Source/modules/accessibility/AXRadioInput.h b/third_party/WebKit/Source/modules/accessibility/AXRadioInput.h
new file mode 100644
index 0000000000000000000000000000000000000000..02fff6524a80683fa6b44c7c83e09ef5e028062a
--- /dev/null
+++ b/third_party/WebKit/Source/modules/accessibility/AXRadioInput.h
@@ -0,0 +1,47 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+
+#ifndef AXRadioInput_h
+#define AXRadioInput_h
+
+#include "modules/accessibility/AXLayoutObject.h"
+
+namespace blink {
+
+class AXObjectCacheImpl;
+class HTMLInputElement;
+
+class AXRadioInput final : public AXLayoutObject {
+
+public:
+ static AXRadioInput* create(LayoutObject*, AXObjectCacheImpl&);
+ ~AXRadioInput() override { }
+
+ bool isAXRadioInput() const override { return true; }
+ void updatePosAndSetSize(int position = 0);
+ void requestUpdateToNextNode(bool forward);
+ HTMLInputElement* findFirstRadioButtonInGroup(HTMLInputElement* current) const;
+
+ int posInSet() const final;
+ int setSize() const final;
+
+private:
+ AXRadioInput(LayoutObject*, AXObjectCacheImpl&);
+ bool calculatePosInSet();
+ HTMLInputElement* findNextRadioButtonInGroup(HTMLInputElement* current, bool forward) const;
+ int countFromFirstElement() const;
+ HTMLInputElement* element() const;
+ int sizeOfRadioGroup() const;
+
+ int m_posInSet;
+ int m_setSize;
+};
+
+DEFINE_AX_OBJECT_TYPE_CASTS(AXRadioInput, isAXRadioInput());
+
+} // namespace blink
+
+#endif // AXRadioInput_h
+

Powered by Google App Engine
This is Rietveld 408576698