mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 07:53:26 +00:00
Merge pull request #108924 from bruvzg/ac17
Update access-kit to 0.17.0
This commit is contained in:
commit
f9313aa27b
14 changed files with 289 additions and 50 deletions
10
.github/workflows/linux_builds.yml
vendored
10
.github/workflows/linux_builds.yml
vendored
|
@ -7,7 +7,7 @@ env:
|
|||
SCONS_FLAGS: >-
|
||||
dev_mode=yes
|
||||
module_text_server_fb_enabled=yes
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.16.0/"
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.17.0/"
|
||||
GODOT_CPP_BRANCH: 4.4
|
||||
DOTNET_NOLOGO: true
|
||||
DOTNET_CLI_TELEMETRY_OPTOUT: true
|
||||
|
@ -162,12 +162,12 @@ jobs:
|
|||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||
with:
|
||||
repo: AccessKit/accesskit-c
|
||||
version: tags/0.16.0
|
||||
file: accesskit-c-0.16.0.zip
|
||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
||||
version: tags/0.17.0
|
||||
file: accesskit-c-0.17.0.zip
|
||||
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Extract pre-built AccessKit
|
||||
run: unzip -o accesskit-c-0.16.0/accesskit_c.zip
|
||||
run: unzip -o accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Install mold linker
|
||||
if: matrix.proj-test
|
||||
|
|
10
.github/workflows/macos_builds.yml
vendored
10
.github/workflows/macos_builds.yml
vendored
|
@ -7,7 +7,7 @@ env:
|
|||
SCONS_FLAGS: >-
|
||||
dev_mode=yes
|
||||
module_text_server_fb_enabled=yes
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.16.0/"
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.17.0/"
|
||||
|
||||
jobs:
|
||||
build-macos:
|
||||
|
@ -51,12 +51,12 @@ jobs:
|
|||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||
with:
|
||||
repo: AccessKit/accesskit-c
|
||||
version: tags/0.16.0
|
||||
file: accesskit-c-0.16.0.zip
|
||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
||||
version: tags/0.17.0
|
||||
file: accesskit-c-0.17.0.zip
|
||||
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Extract pre-built AccessKit
|
||||
run: unzip -o accesskit-c-0.16.0/accesskit_c.zip
|
||||
run: unzip -o accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Setup Vulkan SDK
|
||||
id: vulkan-sdk
|
||||
|
|
10
.github/workflows/windows_builds.yml
vendored
10
.github/workflows/windows_builds.yml
vendored
|
@ -10,7 +10,7 @@ env:
|
|||
debug_symbols=no
|
||||
d3d12=yes
|
||||
"angle_libs=${{ github.workspace }}/"
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.16.0/"
|
||||
"accesskit_sdk_path=${{ github.workspace }}/accesskit-c-0.17.0/"
|
||||
SCONS_CACHE_MSVC_CONFIG: true
|
||||
PYTHONIOENCODING: utf8
|
||||
|
||||
|
@ -90,12 +90,12 @@ jobs:
|
|||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||
with:
|
||||
repo: AccessKit/accesskit-c
|
||||
version: tags/0.16.0
|
||||
file: accesskit-c-0.16.0.zip
|
||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
||||
version: tags/0.17.0
|
||||
file: accesskit-c-0.17.0.zip
|
||||
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Extract pre-built AccessKit
|
||||
run: unzip -o accesskit-c-0.16.0/accesskit_c.zip
|
||||
run: unzip -o accesskit-c-0.17.0/accesskit_c.zip
|
||||
|
||||
- name: Compilation
|
||||
uses: ./.github/actions/godot-build
|
||||
|
|
|
@ -2833,22 +2833,22 @@
|
|||
Scroll backward action, callback argument is not set.
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_DOWN" value="12" enum="AccessibilityAction">
|
||||
Scroll down action, callback argument is not set.
|
||||
Scroll down action, callback argument is set to [enum AccessibilityScrollUnit].
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_FORWARD" value="13" enum="AccessibilityAction">
|
||||
Scroll forward action, callback argument is not set.
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_LEFT" value="14" enum="AccessibilityAction">
|
||||
Scroll left action, callback argument is not set.
|
||||
Scroll left action, callback argument is set to [enum AccessibilityScrollUnit].
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_RIGHT" value="15" enum="AccessibilityAction">
|
||||
Scroll right action, callback argument is not set.
|
||||
Scroll right action, callback argument is set to [enum AccessibilityScrollUnit].
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_UP" value="16" enum="AccessibilityAction">
|
||||
Scroll up action, callback argument is not set.
|
||||
Scroll up action, callback argument is set to [enum AccessibilityScrollUnit].
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_INTO_VIEW" value="17" enum="AccessibilityAction">
|
||||
Scroll into view action, callback argument is not set.
|
||||
Scroll into view action, callback argument is set to [enum AccessibilityScrollHint].
|
||||
</constant>
|
||||
<constant name="ACTION_SCROLL_TO_POINT" value="18" enum="AccessibilityAction">
|
||||
Scroll to point action, callback argument is set to [Vector2] with the relative point coordinates.
|
||||
|
@ -2874,6 +2874,30 @@
|
|||
<constant name="LIVE_ASSERTIVE" value="2" enum="AccessibilityLiveMode">
|
||||
Indicates that updates to the live region have the highest priority and should be presented immediately.
|
||||
</constant>
|
||||
<constant name="SCROLL_UNIT_ITEM" value="0" enum="AccessibilityScrollUnit">
|
||||
The amount by which to scroll. A single item of a list, line of text.
|
||||
</constant>
|
||||
<constant name="SCROLL_UNIT_PAGE" value="1" enum="AccessibilityScrollUnit">
|
||||
The amount by which to scroll. A single page.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_TOP_LEFT" value="0" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Top-left edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_BOTTOM_RIGHT" value="1" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Bottom-right edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_TOP_EDGE" value="2" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Top edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_BOTTOM_EDGE" value="3" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Bottom edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_LEFT_EDGE" value="4" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Left edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="SCROLL_HINT_RIGHT_EDGE" value="5" enum="AccessibilityScrollHint">
|
||||
A preferred position for the node scrolled into view. Right edge of the scroll container.
|
||||
</constant>
|
||||
<constant name="MOUSE_MODE_VISIBLE" value="0" enum="MouseMode">
|
||||
Makes the mouse cursor visible if it is hidden.
|
||||
</constant>
|
||||
|
|
|
@ -136,8 +136,36 @@ void AccessibilityDriverAccessKit::_accessibility_action_callback(struct accessk
|
|||
case ACCESSKIT_ACTION_DATA_NUMERIC_VALUE: {
|
||||
rq_data = p_request->data.value.numeric_value;
|
||||
} break;
|
||||
case ACCESSKIT_ACTION_DATA_SCROLL_TARGET_RECT: {
|
||||
rq_data = Rect2(p_request->data.value.scroll_target_rect.x0, p_request->data.value.scroll_target_rect.y0, p_request->data.value.scroll_target_rect.x1 - p_request->data.value.scroll_target_rect.x0, p_request->data.value.scroll_target_rect.y1 - p_request->data.value.scroll_target_rect.y0);
|
||||
case ACCESSKIT_ACTION_DATA_SCROLL_HINT: {
|
||||
switch (p_request->data.value.scroll_hint) {
|
||||
case ACCESSKIT_SCROLL_HINT_TOP_LEFT: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_TOP_LEFT;
|
||||
} break;
|
||||
case ACCESSKIT_SCROLL_HINT_BOTTOM_RIGHT: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_BOTTOM_RIGHT;
|
||||
} break;
|
||||
case ACCESSKIT_SCROLL_HINT_TOP_EDGE: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_TOP_EDGE;
|
||||
} break;
|
||||
case ACCESSKIT_SCROLL_HINT_BOTTOM_EDGE: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_BOTTOM_EDGE;
|
||||
} break;
|
||||
case ACCESSKIT_SCROLL_HINT_LEFT_EDGE: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_LEFT_EDGE;
|
||||
} break;
|
||||
case ACCESSKIT_SCROLL_HINT_RIGHT_EDGE: {
|
||||
rq_data = DisplayServer::SCROLL_HINT_RIGHT_EDGE;
|
||||
} break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
} break;
|
||||
case ACCESSKIT_ACTION_DATA_SCROLL_UNIT: {
|
||||
if (p_request->data.value.scroll_unit == ACCESSKIT_SCROLL_UNIT_ITEM) {
|
||||
rq_data = DisplayServer::SCROLL_UNIT_ITEM;
|
||||
} else if (p_request->data.value.scroll_unit == ACCESSKIT_SCROLL_UNIT_PAGE) {
|
||||
rq_data = DisplayServer::SCROLL_UNIT_PAGE;
|
||||
}
|
||||
} break;
|
||||
case ACCESSKIT_ACTION_DATA_SCROLL_TO_POINT: {
|
||||
rq_data = Point2(p_request->data.value.scroll_to_point.x, p_request->data.value.scroll_to_point.y);
|
||||
|
@ -1621,9 +1649,9 @@ AccessibilityDriverAccessKit::AccessibilityDriverAccessKit() {
|
|||
//action_map[DisplayServer::AccessibilityAction::ACTION_LOAD_INLINE_TEXT_BOXES] = ACCESSKIT_ACTION_LOAD_INLINE_TEXT_BOXES;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SET_TEXT_SELECTION] = ACCESSKIT_ACTION_SET_TEXT_SELECTION;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_REPLACE_SELECTED_TEXT] = ACCESSKIT_ACTION_REPLACE_SELECTED_TEXT;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_BACKWARD] = ACCESSKIT_ACTION_SCROLL_BACKWARD;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_BACKWARD] = ACCESSKIT_ACTION_SCROLL_UP;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_DOWN] = ACCESSKIT_ACTION_SCROLL_DOWN;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_FORWARD] = ACCESSKIT_ACTION_SCROLL_FORWARD;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_FORWARD] = ACCESSKIT_ACTION_SCROLL_DOWN;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_LEFT] = ACCESSKIT_ACTION_SCROLL_LEFT;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_RIGHT] = ACCESSKIT_ACTION_SCROLL_RIGHT;
|
||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_UP] = ACCESSKIT_ACTION_SCROLL_UP;
|
||||
|
|
|
@ -1204,19 +1204,35 @@ void ItemList::_accessibility_action_scroll_set(const Variant &p_data) {
|
|||
}
|
||||
|
||||
void ItemList::_accessibility_action_scroll_up(const Variant &p_data) {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() - scroll_bar_v->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() - scroll_bar_v->get_page() / 4);
|
||||
} else {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() - scroll_bar_v->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ItemList::_accessibility_action_scroll_down(const Variant &p_data) {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() + scroll_bar_v->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() + scroll_bar_v->get_page() / 4);
|
||||
} else {
|
||||
scroll_bar_v->set_value(scroll_bar_v->get_value() + scroll_bar_v->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ItemList::_accessibility_action_scroll_left(const Variant &p_data) {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() - scroll_bar_h->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() - scroll_bar_h->get_page() / 4);
|
||||
} else {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() - scroll_bar_h->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ItemList::_accessibility_action_scroll_right(const Variant &p_data) {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() + scroll_bar_h->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() + scroll_bar_h->get_page() / 4);
|
||||
} else {
|
||||
scroll_bar_h->set_value(scroll_bar_h->get_value() + scroll_bar_h->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ItemList::_accessibility_action_scroll_into_view(const Variant &p_data, int p_index) {
|
||||
|
|
|
@ -2189,11 +2189,19 @@ void RichTextLabel::_accessibility_action_menu(const Variant &p_data) {
|
|||
}
|
||||
|
||||
void RichTextLabel::_accessibility_scroll_down(const Variant &p_data) {
|
||||
vscroll->set_value(vscroll->get_value() + vscroll->get_page() / 4);
|
||||
if ((uint8_t)p_data == 0) {
|
||||
vscroll->set_value(vscroll->get_value() + vscroll->get_page() / 4);
|
||||
} else {
|
||||
vscroll->set_value(vscroll->get_value() + vscroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void RichTextLabel::_accessibility_scroll_up(const Variant &p_data) {
|
||||
vscroll->set_value(vscroll->get_value() - vscroll->get_page() / 4);
|
||||
if ((uint8_t)p_data == 0) {
|
||||
vscroll->set_value(vscroll->get_value() - vscroll->get_page() / 4);
|
||||
} else {
|
||||
vscroll->set_value(vscroll->get_value() - vscroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void RichTextLabel::_accessibility_scroll_set(const Variant &p_data) {
|
||||
|
|
|
@ -413,19 +413,35 @@ void ScrollContainer::_accessibility_action_scroll_set(const Variant &p_data) {
|
|||
}
|
||||
|
||||
void ScrollContainer::_accessibility_action_scroll_up(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ScrollContainer::_accessibility_action_scroll_down(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ScrollContainer::_accessibility_action_scroll_left(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ScrollContainer::_accessibility_action_scroll_right(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / ScrollBar::PAGE_DIVISOR);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void ScrollContainer::_notification(int p_what) {
|
||||
|
|
|
@ -679,22 +679,38 @@ void TextEdit::_accessibility_action_menu(const Variant &p_data) {
|
|||
}
|
||||
|
||||
void TextEdit::_accessibility_scroll_down(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / 4);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page());
|
||||
}
|
||||
queue_accessibility_update();
|
||||
}
|
||||
|
||||
void TextEdit::_accessibility_scroll_left(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / 4);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page());
|
||||
}
|
||||
queue_accessibility_update();
|
||||
}
|
||||
|
||||
void TextEdit::_accessibility_scroll_right(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / 4);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page());
|
||||
}
|
||||
queue_accessibility_update();
|
||||
}
|
||||
|
||||
void TextEdit::_accessibility_scroll_up(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / 4);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page());
|
||||
}
|
||||
queue_accessibility_update();
|
||||
}
|
||||
|
||||
|
|
|
@ -4571,19 +4571,35 @@ PackedStringArray Tree::get_accessibility_configuration_warnings() const {
|
|||
}
|
||||
|
||||
void Tree::_accessibility_action_scroll_down(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page() / 4);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() + v_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void Tree::_accessibility_action_scroll_left(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page() / 4);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() - h_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void Tree::_accessibility_action_scroll_right(const Variant &p_data) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page() / 4);
|
||||
} else {
|
||||
h_scroll->set_value(h_scroll->get_value() + h_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void Tree::_accessibility_action_scroll_up(const Variant &p_data) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / 4);
|
||||
if ((DisplayServer::AccessibilityScrollUnit)p_data == DisplayServer::SCROLL_UNIT_ITEM) {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page() / 4);
|
||||
} else {
|
||||
v_scroll->set_value(v_scroll->get_value() - v_scroll->get_page());
|
||||
}
|
||||
}
|
||||
|
||||
void Tree::_accessibility_action_scroll_set(const Variant &p_data) {
|
||||
|
|
|
@ -1749,6 +1749,16 @@ void DisplayServer::_bind_methods() {
|
|||
BIND_ENUM_CONSTANT(LIVE_POLITE);
|
||||
BIND_ENUM_CONSTANT(LIVE_ASSERTIVE);
|
||||
|
||||
BIND_ENUM_CONSTANT(SCROLL_UNIT_ITEM);
|
||||
BIND_ENUM_CONSTANT(SCROLL_UNIT_PAGE);
|
||||
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_TOP_LEFT);
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_BOTTOM_RIGHT);
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_TOP_EDGE);
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_BOTTOM_EDGE);
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_LEFT_EDGE);
|
||||
BIND_ENUM_CONSTANT(SCROLL_HINT_RIGHT_EDGE);
|
||||
|
||||
BIND_ENUM_CONSTANT(MOUSE_MODE_VISIBLE);
|
||||
BIND_ENUM_CONSTANT(MOUSE_MODE_HIDDEN);
|
||||
BIND_ENUM_CONSTANT(MOUSE_MODE_CAPTURED);
|
||||
|
|
|
@ -653,6 +653,20 @@ public:
|
|||
LIVE_ASSERTIVE,
|
||||
};
|
||||
|
||||
enum AccessibilityScrollUnit {
|
||||
SCROLL_UNIT_ITEM,
|
||||
SCROLL_UNIT_PAGE,
|
||||
};
|
||||
|
||||
enum AccessibilityScrollHint {
|
||||
SCROLL_HINT_TOP_LEFT,
|
||||
SCROLL_HINT_BOTTOM_RIGHT,
|
||||
SCROLL_HINT_TOP_EDGE,
|
||||
SCROLL_HINT_BOTTOM_EDGE,
|
||||
SCROLL_HINT_LEFT_EDGE,
|
||||
SCROLL_HINT_RIGHT_EDGE,
|
||||
};
|
||||
|
||||
static AccessibilityMode accessibility_get_mode() { return accessibility_mode; }
|
||||
static void accessibility_set_mode(AccessibilityMode p_mode) { accessibility_mode = p_mode; }
|
||||
|
||||
|
@ -981,6 +995,8 @@ VARIANT_ENUM_CAST(DisplayServer::AccessibilityFlags)
|
|||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityLiveMode)
|
||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityPopupType)
|
||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityRole)
|
||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityScrollUnit)
|
||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityScrollHint)
|
||||
|
||||
VARIANT_ENUM_CAST(DisplayServer::WindowEvent)
|
||||
VARIANT_ENUM_CAST(DisplayServer::Feature)
|
||||
|
|
2
thirdparty/README.md
vendored
2
thirdparty/README.md
vendored
|
@ -8,7 +8,7 @@ readability.
|
|||
## accesskit
|
||||
|
||||
- Upstream: https://github.com/AccessKit/accesskit-c
|
||||
- Version: 0.16.0 (06c1779473ff4304f42ea254f77fef2e33f982b0, 2025)
|
||||
- Version: 0.17.0 (f69571eca23151be07a41bf493ca48a2b44b6a8b, 2025)
|
||||
- License: MIT
|
||||
|
||||
Files extracted from upstream source:
|
||||
|
|
103
thirdparty/accesskit/include/accesskit.h
vendored
103
thirdparty/accesskit/include/accesskit.h
vendored
|
@ -53,16 +53,25 @@ enum accesskit_action
|
|||
* Requires [`ActionRequest::data`] to be set to [`ActionData::Value`].
|
||||
*/
|
||||
ACCESSKIT_ACTION_REPLACE_SELECTED_TEXT,
|
||||
ACCESSKIT_ACTION_SCROLL_BACKWARD,
|
||||
/**
|
||||
* Scroll down by the specified unit.
|
||||
*/
|
||||
ACCESSKIT_ACTION_SCROLL_DOWN,
|
||||
ACCESSKIT_ACTION_SCROLL_FORWARD,
|
||||
/**
|
||||
* Scroll left by the specified unit.
|
||||
*/
|
||||
ACCESSKIT_ACTION_SCROLL_LEFT,
|
||||
/**
|
||||
* Scroll right by the specified unit.
|
||||
*/
|
||||
ACCESSKIT_ACTION_SCROLL_RIGHT,
|
||||
/**
|
||||
* Scroll up by the specified unit.
|
||||
*/
|
||||
ACCESSKIT_ACTION_SCROLL_UP,
|
||||
/**
|
||||
* Scroll any scrollable containers to make the target object visible
|
||||
* on the screen. Optionally set [`ActionRequest::data`] to
|
||||
* [`ActionData::ScrollTargetRect`].
|
||||
* Scroll any scrollable containers to make the target node visible.
|
||||
* Optionally set [`ActionRequest::data`] to [`ActionData::ScrollHint`].
|
||||
*/
|
||||
ACCESSKIT_ACTION_SCROLL_INTO_VIEW,
|
||||
/**
|
||||
|
@ -439,6 +448,50 @@ enum accesskit_role
|
|||
typedef uint8_t accesskit_role;
|
||||
#endif // __cplusplus
|
||||
|
||||
/**
|
||||
* A suggestion about where the node being scrolled into view should be
|
||||
* positioned relative to the edges of the scrollable container.
|
||||
*/
|
||||
enum accesskit_scroll_hint
|
||||
#ifdef __cplusplus
|
||||
: uint8_t
|
||||
#endif // __cplusplus
|
||||
{
|
||||
ACCESSKIT_SCROLL_HINT_TOP_LEFT,
|
||||
ACCESSKIT_SCROLL_HINT_BOTTOM_RIGHT,
|
||||
ACCESSKIT_SCROLL_HINT_TOP_EDGE,
|
||||
ACCESSKIT_SCROLL_HINT_BOTTOM_EDGE,
|
||||
ACCESSKIT_SCROLL_HINT_LEFT_EDGE,
|
||||
ACCESSKIT_SCROLL_HINT_RIGHT_EDGE,
|
||||
};
|
||||
#ifndef __cplusplus
|
||||
typedef uint8_t accesskit_scroll_hint;
|
||||
#endif // __cplusplus
|
||||
|
||||
/**
|
||||
* The amount by which to scroll in the direction specified by one of the
|
||||
* `Scroll` actions.
|
||||
*/
|
||||
enum accesskit_scroll_unit
|
||||
#ifdef __cplusplus
|
||||
: uint8_t
|
||||
#endif // __cplusplus
|
||||
{
|
||||
/**
|
||||
* A single item of a list, line of text (for vertical scrolling),
|
||||
* character (for horizontal scrolling), or an approximation of
|
||||
* one of these.
|
||||
*/
|
||||
ACCESSKIT_SCROLL_UNIT_ITEM,
|
||||
/**
|
||||
* The amount of content that fits in the viewport.
|
||||
*/
|
||||
ACCESSKIT_SCROLL_UNIT_PAGE,
|
||||
};
|
||||
#ifndef __cplusplus
|
||||
typedef uint8_t accesskit_scroll_unit;
|
||||
#endif // __cplusplus
|
||||
|
||||
enum accesskit_sort_direction
|
||||
#ifdef __cplusplus
|
||||
: uint8_t
|
||||
|
@ -849,7 +902,13 @@ typedef enum accesskit_action_data_Tag {
|
|||
ACCESSKIT_ACTION_DATA_CUSTOM_ACTION,
|
||||
ACCESSKIT_ACTION_DATA_VALUE,
|
||||
ACCESSKIT_ACTION_DATA_NUMERIC_VALUE,
|
||||
ACCESSKIT_ACTION_DATA_SCROLL_TARGET_RECT,
|
||||
ACCESSKIT_ACTION_DATA_SCROLL_UNIT,
|
||||
/**
|
||||
* Optional suggestion for `ACCESSKIT_ACTION_SCROLL_INTO_VIEW`, specifying
|
||||
* the preferred position of the target node relative to the scrollable
|
||||
* container's viewport.
|
||||
*/
|
||||
ACCESSKIT_ACTION_DATA_SCROLL_HINT,
|
||||
ACCESSKIT_ACTION_DATA_SCROLL_TO_POINT,
|
||||
ACCESSKIT_ACTION_DATA_SET_SCROLL_OFFSET,
|
||||
ACCESSKIT_ACTION_DATA_SET_TEXT_SELECTION,
|
||||
|
@ -868,7 +927,10 @@ typedef struct accesskit_action_data {
|
|||
double numeric_value;
|
||||
};
|
||||
struct {
|
||||
struct accesskit_rect scroll_target_rect;
|
||||
accesskit_scroll_unit scroll_unit;
|
||||
};
|
||||
struct {
|
||||
accesskit_scroll_hint scroll_hint;
|
||||
};
|
||||
struct {
|
||||
struct accesskit_point scroll_to_point;
|
||||
|
@ -982,6 +1044,33 @@ void accesskit_node_remove_action(struct accesskit_node *node,
|
|||
|
||||
void accesskit_node_clear_actions(struct accesskit_node *node);
|
||||
|
||||
/**
|
||||
* Return whether the specified action is in the set supported on this node's
|
||||
* direct children in the filtered tree.
|
||||
*/
|
||||
bool accesskit_node_child_supports_action(const struct accesskit_node *node,
|
||||
accesskit_action action);
|
||||
|
||||
/**
|
||||
* Add the specified action to the set supported on this node's direct
|
||||
* children in the filtered tree.
|
||||
*/
|
||||
void accesskit_node_add_child_action(struct accesskit_node *node,
|
||||
accesskit_action action);
|
||||
|
||||
/**
|
||||
* Remove the specified action from the set supported on this node's direct
|
||||
* children in the filtered tree.
|
||||
*/
|
||||
void accesskit_node_remove_child_action(struct accesskit_node *node,
|
||||
accesskit_action action);
|
||||
|
||||
/**
|
||||
* Clear the set of actions supported on this node's direct children in the
|
||||
* filtered tree.
|
||||
*/
|
||||
void accesskit_node_clear_child_actions(struct accesskit_node *node);
|
||||
|
||||
bool accesskit_node_is_hidden(const struct accesskit_node *node);
|
||||
|
||||
void accesskit_node_set_hidden(struct accesskit_node *node);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue