mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 07:53:26 +00:00
Update access-kit to 0.17.0
This commit is contained in:
parent
2d113cc224
commit
3f757c41fc
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: >-
|
SCONS_FLAGS: >-
|
||||||
dev_mode=yes
|
dev_mode=yes
|
||||||
module_text_server_fb_enabled=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
|
GODOT_CPP_BRANCH: 4.4
|
||||||
DOTNET_NOLOGO: true
|
DOTNET_NOLOGO: true
|
||||||
DOTNET_CLI_TELEMETRY_OPTOUT: true
|
DOTNET_CLI_TELEMETRY_OPTOUT: true
|
||||||
|
@ -162,12 +162,12 @@ jobs:
|
||||||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||||
with:
|
with:
|
||||||
repo: AccessKit/accesskit-c
|
repo: AccessKit/accesskit-c
|
||||||
version: tags/0.16.0
|
version: tags/0.17.0
|
||||||
file: accesskit-c-0.16.0.zip
|
file: accesskit-c-0.17.0.zip
|
||||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||||
|
|
||||||
- name: Extract pre-built AccessKit
|
- 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
|
- name: Install mold linker
|
||||||
if: matrix.proj-test
|
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: >-
|
SCONS_FLAGS: >-
|
||||||
dev_mode=yes
|
dev_mode=yes
|
||||||
module_text_server_fb_enabled=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:
|
jobs:
|
||||||
build-macos:
|
build-macos:
|
||||||
|
@ -51,12 +51,12 @@ jobs:
|
||||||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||||
with:
|
with:
|
||||||
repo: AccessKit/accesskit-c
|
repo: AccessKit/accesskit-c
|
||||||
version: tags/0.16.0
|
version: tags/0.17.0
|
||||||
file: accesskit-c-0.16.0.zip
|
file: accesskit-c-0.17.0.zip
|
||||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||||
|
|
||||||
- name: Extract pre-built AccessKit
|
- 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
|
- name: Setup Vulkan SDK
|
||||||
id: 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
|
debug_symbols=no
|
||||||
d3d12=yes
|
d3d12=yes
|
||||||
"angle_libs=${{ github.workspace }}/"
|
"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
|
SCONS_CACHE_MSVC_CONFIG: true
|
||||||
PYTHONIOENCODING: utf8
|
PYTHONIOENCODING: utf8
|
||||||
|
|
||||||
|
@ -90,12 +90,12 @@ jobs:
|
||||||
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
uses: dsaltares/fetch-gh-release-asset@1.1.2
|
||||||
with:
|
with:
|
||||||
repo: AccessKit/accesskit-c
|
repo: AccessKit/accesskit-c
|
||||||
version: tags/0.16.0
|
version: tags/0.17.0
|
||||||
file: accesskit-c-0.16.0.zip
|
file: accesskit-c-0.17.0.zip
|
||||||
target: accesskit-c-0.16.0/accesskit_c.zip
|
target: accesskit-c-0.17.0/accesskit_c.zip
|
||||||
|
|
||||||
- name: Extract pre-built AccessKit
|
- 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
|
- name: Compilation
|
||||||
uses: ./.github/actions/godot-build
|
uses: ./.github/actions/godot-build
|
||||||
|
|
|
@ -2833,22 +2833,22 @@
|
||||||
Scroll backward action, callback argument is not set.
|
Scroll backward action, callback argument is not set.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="ACTION_SCROLL_DOWN" value="12" enum="AccessibilityAction">
|
<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>
|
||||||
<constant name="ACTION_SCROLL_FORWARD" value="13" enum="AccessibilityAction">
|
<constant name="ACTION_SCROLL_FORWARD" value="13" enum="AccessibilityAction">
|
||||||
Scroll forward action, callback argument is not set.
|
Scroll forward action, callback argument is not set.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="ACTION_SCROLL_LEFT" value="14" enum="AccessibilityAction">
|
<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>
|
||||||
<constant name="ACTION_SCROLL_RIGHT" value="15" enum="AccessibilityAction">
|
<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>
|
||||||
<constant name="ACTION_SCROLL_UP" value="16" enum="AccessibilityAction">
|
<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>
|
||||||
<constant name="ACTION_SCROLL_INTO_VIEW" value="17" enum="AccessibilityAction">
|
<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>
|
||||||
<constant name="ACTION_SCROLL_TO_POINT" value="18" enum="AccessibilityAction">
|
<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.
|
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">
|
<constant name="LIVE_ASSERTIVE" value="2" enum="AccessibilityLiveMode">
|
||||||
Indicates that updates to the live region have the highest priority and should be presented immediately.
|
Indicates that updates to the live region have the highest priority and should be presented immediately.
|
||||||
</constant>
|
</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">
|
<constant name="MOUSE_MODE_VISIBLE" value="0" enum="MouseMode">
|
||||||
Makes the mouse cursor visible if it is hidden.
|
Makes the mouse cursor visible if it is hidden.
|
||||||
</constant>
|
</constant>
|
||||||
|
|
|
@ -136,8 +136,36 @@ void AccessibilityDriverAccessKit::_accessibility_action_callback(struct accessk
|
||||||
case ACCESSKIT_ACTION_DATA_NUMERIC_VALUE: {
|
case ACCESSKIT_ACTION_DATA_NUMERIC_VALUE: {
|
||||||
rq_data = p_request->data.value.numeric_value;
|
rq_data = p_request->data.value.numeric_value;
|
||||||
} break;
|
} break;
|
||||||
case ACCESSKIT_ACTION_DATA_SCROLL_TARGET_RECT: {
|
case ACCESSKIT_ACTION_DATA_SCROLL_HINT: {
|
||||||
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);
|
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;
|
} break;
|
||||||
case ACCESSKIT_ACTION_DATA_SCROLL_TO_POINT: {
|
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);
|
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_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_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_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_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_LEFT] = ACCESSKIT_ACTION_SCROLL_LEFT;
|
||||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_RIGHT] = ACCESSKIT_ACTION_SCROLL_RIGHT;
|
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_RIGHT] = ACCESSKIT_ACTION_SCROLL_RIGHT;
|
||||||
action_map[DisplayServer::AccessibilityAction::ACTION_SCROLL_UP] = ACCESSKIT_ACTION_SCROLL_UP;
|
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) {
|
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) {
|
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) {
|
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) {
|
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) {
|
void ItemList::_accessibility_action_scroll_into_view(const Variant &p_data, int p_index) {
|
||||||
|
|
|
@ -2174,11 +2174,19 @@ void RichTextLabel::_accessibility_action_menu(const Variant &p_data) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void RichTextLabel::_accessibility_scroll_down(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) {
|
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) {
|
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) {
|
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) {
|
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) {
|
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) {
|
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) {
|
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) {
|
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();
|
queue_accessibility_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextEdit::_accessibility_scroll_left(const Variant &p_data) {
|
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();
|
queue_accessibility_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextEdit::_accessibility_scroll_right(const Variant &p_data) {
|
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();
|
queue_accessibility_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextEdit::_accessibility_scroll_up(const Variant &p_data) {
|
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();
|
queue_accessibility_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4571,19 +4571,35 @@ PackedStringArray Tree::get_accessibility_configuration_warnings() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Tree::_accessibility_action_scroll_down(const Variant &p_data) {
|
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) {
|
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) {
|
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) {
|
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) {
|
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_POLITE);
|
||||||
BIND_ENUM_CONSTANT(LIVE_ASSERTIVE);
|
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_VISIBLE);
|
||||||
BIND_ENUM_CONSTANT(MOUSE_MODE_HIDDEN);
|
BIND_ENUM_CONSTANT(MOUSE_MODE_HIDDEN);
|
||||||
BIND_ENUM_CONSTANT(MOUSE_MODE_CAPTURED);
|
BIND_ENUM_CONSTANT(MOUSE_MODE_CAPTURED);
|
||||||
|
|
|
@ -653,6 +653,20 @@ public:
|
||||||
LIVE_ASSERTIVE,
|
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 AccessibilityMode accessibility_get_mode() { return accessibility_mode; }
|
||||||
static void accessibility_set_mode(AccessibilityMode p_mode) { accessibility_mode = p_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::AccessibilityLiveMode)
|
||||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityPopupType)
|
VARIANT_ENUM_CAST(DisplayServer::AccessibilityPopupType)
|
||||||
VARIANT_ENUM_CAST(DisplayServer::AccessibilityRole)
|
VARIANT_ENUM_CAST(DisplayServer::AccessibilityRole)
|
||||||
|
VARIANT_ENUM_CAST(DisplayServer::AccessibilityScrollUnit)
|
||||||
|
VARIANT_ENUM_CAST(DisplayServer::AccessibilityScrollHint)
|
||||||
|
|
||||||
VARIANT_ENUM_CAST(DisplayServer::WindowEvent)
|
VARIANT_ENUM_CAST(DisplayServer::WindowEvent)
|
||||||
VARIANT_ENUM_CAST(DisplayServer::Feature)
|
VARIANT_ENUM_CAST(DisplayServer::Feature)
|
||||||
|
|
2
thirdparty/README.md
vendored
2
thirdparty/README.md
vendored
|
@ -8,7 +8,7 @@ readability.
|
||||||
## accesskit
|
## accesskit
|
||||||
|
|
||||||
- Upstream: https://github.com/AccessKit/accesskit-c
|
- Upstream: https://github.com/AccessKit/accesskit-c
|
||||||
- Version: 0.16.0 (06c1779473ff4304f42ea254f77fef2e33f982b0, 2025)
|
- Version: 0.17.0 (f69571eca23151be07a41bf493ca48a2b44b6a8b, 2025)
|
||||||
- License: MIT
|
- License: MIT
|
||||||
|
|
||||||
Files extracted from upstream source:
|
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`].
|
* Requires [`ActionRequest::data`] to be set to [`ActionData::Value`].
|
||||||
*/
|
*/
|
||||||
ACCESSKIT_ACTION_REPLACE_SELECTED_TEXT,
|
ACCESSKIT_ACTION_REPLACE_SELECTED_TEXT,
|
||||||
ACCESSKIT_ACTION_SCROLL_BACKWARD,
|
/**
|
||||||
|
* Scroll down by the specified unit.
|
||||||
|
*/
|
||||||
ACCESSKIT_ACTION_SCROLL_DOWN,
|
ACCESSKIT_ACTION_SCROLL_DOWN,
|
||||||
ACCESSKIT_ACTION_SCROLL_FORWARD,
|
/**
|
||||||
|
* Scroll left by the specified unit.
|
||||||
|
*/
|
||||||
ACCESSKIT_ACTION_SCROLL_LEFT,
|
ACCESSKIT_ACTION_SCROLL_LEFT,
|
||||||
|
/**
|
||||||
|
* Scroll right by the specified unit.
|
||||||
|
*/
|
||||||
ACCESSKIT_ACTION_SCROLL_RIGHT,
|
ACCESSKIT_ACTION_SCROLL_RIGHT,
|
||||||
|
/**
|
||||||
|
* Scroll up by the specified unit.
|
||||||
|
*/
|
||||||
ACCESSKIT_ACTION_SCROLL_UP,
|
ACCESSKIT_ACTION_SCROLL_UP,
|
||||||
/**
|
/**
|
||||||
* Scroll any scrollable containers to make the target object visible
|
* Scroll any scrollable containers to make the target node visible.
|
||||||
* on the screen. Optionally set [`ActionRequest::data`] to
|
* Optionally set [`ActionRequest::data`] to [`ActionData::ScrollHint`].
|
||||||
* [`ActionData::ScrollTargetRect`].
|
|
||||||
*/
|
*/
|
||||||
ACCESSKIT_ACTION_SCROLL_INTO_VIEW,
|
ACCESSKIT_ACTION_SCROLL_INTO_VIEW,
|
||||||
/**
|
/**
|
||||||
|
@ -439,6 +448,50 @@ enum accesskit_role
|
||||||
typedef uint8_t accesskit_role;
|
typedef uint8_t accesskit_role;
|
||||||
#endif // __cplusplus
|
#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
|
enum accesskit_sort_direction
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
: uint8_t
|
: uint8_t
|
||||||
|
@ -849,7 +902,13 @@ typedef enum accesskit_action_data_Tag {
|
||||||
ACCESSKIT_ACTION_DATA_CUSTOM_ACTION,
|
ACCESSKIT_ACTION_DATA_CUSTOM_ACTION,
|
||||||
ACCESSKIT_ACTION_DATA_VALUE,
|
ACCESSKIT_ACTION_DATA_VALUE,
|
||||||
ACCESSKIT_ACTION_DATA_NUMERIC_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_SCROLL_TO_POINT,
|
||||||
ACCESSKIT_ACTION_DATA_SET_SCROLL_OFFSET,
|
ACCESSKIT_ACTION_DATA_SET_SCROLL_OFFSET,
|
||||||
ACCESSKIT_ACTION_DATA_SET_TEXT_SELECTION,
|
ACCESSKIT_ACTION_DATA_SET_TEXT_SELECTION,
|
||||||
|
@ -868,7 +927,10 @@ typedef struct accesskit_action_data {
|
||||||
double numeric_value;
|
double numeric_value;
|
||||||
};
|
};
|
||||||
struct {
|
struct {
|
||||||
struct accesskit_rect scroll_target_rect;
|
accesskit_scroll_unit scroll_unit;
|
||||||
|
};
|
||||||
|
struct {
|
||||||
|
accesskit_scroll_hint scroll_hint;
|
||||||
};
|
};
|
||||||
struct {
|
struct {
|
||||||
struct accesskit_point scroll_to_point;
|
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);
|
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);
|
bool accesskit_node_is_hidden(const struct accesskit_node *node);
|
||||||
|
|
||||||
void accesskit_node_set_hidden(struct accesskit_node *node);
|
void accesskit_node_set_hidden(struct accesskit_node *node);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue