Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
74f06be6
Commit
74f06be6
authored
Feb 14, 2023
by
Connor McAdams
Committed by
Alexandre Julliard
Mar 31, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
uiautomationcore: Add support for UIA_LegacyIAccessibleRolePropertyId.
Signed-off-by:
Connor McAdams
<
cmcadams@codeweavers.com
>
parent
fc3b0d33
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
30 additions
and
3 deletions
+30
-3
uiautomation.c
dlls/uiautomationcore/tests/uiautomation.c
+17
-2
uia_client.c
dlls/uiautomationcore/uia_client.c
+10
-0
uia_ids.c
dlls/uiautomationcore/uia_ids.c
+3
-1
No files found.
dlls/uiautomationcore/tests/uiautomation.c
View file @
74f06be6
...
...
@@ -1119,6 +1119,7 @@ struct Provider_legacy_accessible_pattern_data
{
BOOL
is_supported
;
int
child_id
;
DWORD
role
;
};
static
struct
Provider
...
...
@@ -2269,8 +2270,10 @@ static HRESULT WINAPI ProviderLegacyIAccessiblePattern_get_Description(ILegacyIA
static
HRESULT
WINAPI
ProviderLegacyIAccessiblePattern_get_Role
(
ILegacyIAccessibleProvider
*
iface
,
DWORD
*
out_role
)
{
ok
(
0
,
"unexpected call
\n
"
);
return
E_NOTIMPL
;
struct
Provider
*
Provider
=
impl_from_ProviderLegacyIAccessiblePattern
(
iface
);
*
out_role
=
Provider
->
legacy_acc_pattern_data
.
role
;
return
S_OK
;
}
static
HRESULT
WINAPI
ProviderLegacyIAccessiblePattern_get_State
(
ILegacyIAccessibleProvider
*
iface
,
DWORD
*
out_state
)
...
...
@@ -5708,6 +5711,18 @@ static void test_UiaGetPropertyValue(void)
VariantClear
(
&
v
);
}
for
(
i
=
0
;
i
<
2
;
i
++
)
{
Provider
.
legacy_acc_pattern_data
.
role
=
i
;
hr
=
UiaGetPropertyValue
(
node
,
UIA_LegacyIAccessibleRolePropertyId
,
&
v
);
ok
(
hr
==
S_OK
,
"Unexpected hr %#lx.
\n
"
,
hr
);
ok
(
V_VT
(
&
v
)
==
VT_I4
,
"Unexpected VT %d
\n
"
,
V_VT
(
&
v
));
ok
(
V_I4
(
&
v
)
==
i
,
"Unexpected I4 %#lx
\n
"
,
V_I4
(
&
v
));
ok_method_sequence
(
get_pattern_prop_seq
,
NULL
);
VariantClear
(
&
v
);
}
ok
(
UiaNodeRelease
(
node
),
"UiaNodeRelease returned FALSE
\n
"
);
ok
(
Provider
.
ref
==
1
,
"Unexpected refcnt %ld
\n
"
,
Provider
.
ref
);
initialize_provider
(
&
Provider
,
ProviderOptions_ServerSideProvider
,
NULL
,
FALSE
);
...
...
dlls/uiautomationcore/uia_client.c
View file @
74f06be6
...
...
@@ -1581,6 +1581,16 @@ static HRESULT uia_provider_get_pattern_prop_val(struct uia_provider *prov,
break
;
}
case
UIA_LegacyIAccessibleRolePropertyId
:
{
DWORD
val
;
hr
=
ILegacyIAccessibleProvider_get_Role
((
ILegacyIAccessibleProvider
*
)
pattern_prov
,
&
val
);
if
(
SUCCEEDED
(
hr
))
variant_init_i4
(
ret_val
,
val
);
break
;
}
default:
break
;
}
...
...
dlls/uiautomationcore/uia_ids.c
View file @
74f06be6
...
...
@@ -219,7 +219,9 @@ static const struct uia_prop_info default_uia_properties[] = {
{
&
IsDialog_Property_GUID
,
UIA_IsDialogPropertyId
,
PROP_TYPE_ELEM_PROP
,
UIAutomationType_Bool
,
},
{
&
IsTextPatternAvailable_Property_GUID
,
UIA_IsTextPatternAvailablePropertyId
,
},
{
&
LegacyIAccessible_Role_Property_GUID
,
UIA_LegacyIAccessibleRolePropertyId
,
},
{
&
LegacyIAccessible_Role_Property_GUID
,
UIA_LegacyIAccessibleRolePropertyId
,
PROP_TYPE_PATTERN_PROP
,
UIAutomationType_Int
,
UIA_LegacyIAccessiblePatternId
,
},
{
&
Selection2_ItemCount_Property_GUID
,
UIA_Selection2ItemCountPropertyId
,
},
{
&
TableItem_RowHeaderItems_Property_GUID
,
UIA_TableItemRowHeaderItemsPropertyId
,
},
{
&
Styles_ExtendedProperties_Property_GUID
,
UIA_StylesExtendedPropertiesPropertyId
,
},
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment