Skip to content

Commit

Permalink
Merge pull request #17 from VKCOM/sync/2024-11-18
Browse files Browse the repository at this point in the history
Sync 2024-11-18
  • Loading branch information
irdkwmnsb committed Nov 18, 2024
2 parents 7b81d49 + 389a141 commit ac62cad
Show file tree
Hide file tree
Showing 1,143 changed files with 80,059 additions and 30,858 deletions.
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,7 @@ res/build/
rethinkdb_data/
temp/
tmp/
doc/
.eslintcache
scripts/
.mypy_cache
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ root = true

[*]
indent_style = space
indent_size = 2
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
Expand Down
1 change: 0 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
/res/build/**
/res/app/components/stf/screen/fast-image-render/pixi.js
WebDriverAgent
9 changes: 5 additions & 4 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
{
"extends": "eslint:recommended",
"env": {
"node": true
"node": true,
"es6": true
},
"parserOptions": {
"ecmaVersion": 2020,
"ecmaVersion": 2022,
"sourceType": "module"
},
"rules": {
Expand Down Expand Up @@ -99,7 +100,7 @@
"func-style": 0, // optionally set `[2, "expression"]`
"id-length": 0, // optionally set `[2, {"min": 3, "max": 10, "properties": "never", "exceptions": ["x"]}]`
"id-match": 0, // optionally set `[2, "^[a-z]+([A-Z][a-z]+)*$", {"properties": false}]`
"indent": [0, 2, {"SwitchCase": 0, "VariableDeclarator": 2}], // TODO: optionally set `[2, 2, {"SwitchCase": 1, "VariableDeclarator": {"var": 2, "let": 2, "const": 3}}]` this gives too many errors
"indent": [2, 4, {"SwitchCase": 0, "VariableDeclarator": 2}], // TODO: optionally set `[2, 2, {"SwitchCase": 1, "VariableDeclarator": {"var": 2, "let": 2, "const": 3}}]` this gives too many errors
"jsx-quotes": [2, "prefer-single"],
"key-spacing": [2, {"beforeColon": false, "afterColon": true, "mode": "strict"}], // optionally set `[2, {"beforeColon": false, "afterColon": true, "mode": "strict", "align": "colon"}]`
"lines-around-comment": 2, // optionally set `[2, {"beforeBlockComment": true, "beforeLineComment": true, "allowBlockStart": true}]`
Expand Down Expand Up @@ -156,7 +157,7 @@
"no-sync": 1 // `2` is default

// eslint v2
//"keyword-spacing": 2
// "keyword-spacing": 2
},
"globals": {
"$window": true
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@
/rethinkdb_data/
/temp/
/tmp/
.mypy_cache
7 changes: 6 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,12 @@ RUN set -x && \
mkdir /app/bundletool && \
mv /tmp/bundletool/* /app/bundletool && \
cd /app && \
find /tmp -mindepth 1 ! -regex '^/tmp/hsperfdata_root\(/.*\)?' -delete
find /tmp -mindepth 1 ! -regex '^/tmp/hsperfdata_root\(/.*\)?' -delete && \
ln -s /app/bin/stf.mjs /app/bin/stf &&\
cd ui && \
npm ci && \
npx tsc -b && \
npx vite build --mode staging

# Switch to the app user.
USER stf
Expand Down
28 changes: 14 additions & 14 deletions WebDriverAgent/.azure-pipelines.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml
variables:
MIN_VM_IMAGE: macOS-12
MIN_XCODE_VERSION: 13.1
MIN_PLATFORM_VERSION: 15.0
MIN_TV_PLATFORM_VERSION: 15.0
MIN_TV_DEVICE_NAME: Apple TV 4K (2nd generation)
MIN_IPHONE_DEVICE_NAME: iPhone 11
MIN_IPAD_DEVICE_NAME: iPad Pro (11-inch) (3rd generation)
MAX_VM_IMAGE: macOS-12
MAX_XCODE_VERSION: 14.2
MAX_PLATFORM_VERSION: 16.2
MAX_PLATFORM_VERSION_TV: 16.1
MAX_IPHONE_DEVICE_NAME: iPhone 13
MAX_TV_DEVICE_NAME: Apple TV 4K (2nd generation)
MAX_IPAD_DEVICE_NAME: iPad Pro (11-inch) (3rd generation)
MIN_VM_IMAGE: macOS-14
MIN_XCODE_VERSION: 14.3.1
MIN_PLATFORM_VERSION: 16.4
MIN_TV_PLATFORM_VERSION: 16.4
MIN_TV_DEVICE_NAME: Apple TV 4K (3rd generation)
MIN_IPHONE_DEVICE_NAME: iPhone 14 Plus
MIN_IPAD_DEVICE_NAME: iPad Pro (11-inch) (4th generation)
MAX_VM_IMAGE: macOS-14
MAX_XCODE_VERSION: 15.4
MAX_PLATFORM_VERSION: 17.5
MAX_PLATFORM_VERSION_TV: 17.5
MAX_IPHONE_DEVICE_NAME: iPhone 15 Plus
MAX_TV_DEVICE_NAME: Apple TV 4K (3rd generation)
MAX_IPAD_DEVICE_NAME: iPad Air 11-inch (M2)
DEFAULT_NODE_VERSION: "18.x"

trigger:
Expand Down
36 changes: 36 additions & 0 deletions WebDriverAgent/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
## [8.11.1](https://github.com/appium/WebDriverAgent/compare/v8.11.0...v8.11.1) (2024-11-11)

### Miscellaneous Chores

* bump appium-ios-device ([#955](https://github.com/appium/WebDriverAgent/issues/955)) ([021f349](https://github.com/appium/WebDriverAgent/commit/021f34901866f4a7870914c00781b83bd0cbddc4))

## [8.11.0](https://github.com/appium/WebDriverAgent/compare/v8.10.1...v8.11.0) (2024-11-11)

### Features

* Add support for excluded_attributes in JSON source hierarchy ([#953](https://github.com/appium/WebDriverAgent/issues/953)) ([6112223](https://github.com/appium/WebDriverAgent/commit/6112223b21026fae5545fe1b1433a09c67ff524b))

## [8.10.1](https://github.com/appium/WebDriverAgent/compare/v8.10.0...v8.10.1) (2024-11-10)

### Miscellaneous Chores

* remove unnecessary lines ([#954](https://github.com/appium/WebDriverAgent/issues/954)) ([940df80](https://github.com/appium/WebDriverAgent/commit/940df80937381b481a2762fbf86b6249804591bd))

## [8.10.0](https://github.com/appium/WebDriverAgent/compare/v8.9.4...v8.10.0) (2024-11-07)

### Features

* add useClearTextShortcut setting ([#952](https://github.com/appium/WebDriverAgent/issues/952)) ([61bc051](https://github.com/appium/WebDriverAgent/commit/61bc051180d691d26233c66a5a76ed20b7fa09d2))

## [8.9.4](https://github.com/appium/WebDriverAgent/compare/v8.9.3...v8.9.4) (2024-10-17)

### Bug Fixes

* Consider transient overlay windows when respectSystemAlerts is enabled ([#946](https://github.com/appium/WebDriverAgent/issues/946)) ([f0bdce7](https://github.com/appium/WebDriverAgent/commit/f0bdce7eb8fdb13d2309d28e936950c77f006b20))

## [8.9.3](https://github.com/appium/WebDriverAgent/compare/v8.9.2...v8.9.3) (2024-10-07)

### Miscellaneous Chores

* remove unused FBBaseActionsParser and cleanup imports in FBConfiguration ([#943](https://github.com/appium/WebDriverAgent/issues/943)) ([a2173d0](https://github.com/appium/WebDriverAgent/commit/a2173d05df8ef831310e805a8e6a8a8d17725201))

## [8.9.2](https://github.com/appium/WebDriverAgent/compare/v8.9.1...v8.9.2) (2024-09-13)

### Miscellaneous Chores
Expand Down
2 changes: 1 addition & 1 deletion WebDriverAgent/Configurations/IOSSettings.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ RUN_CLANG_STATIC_ANALYZER = YES

GCC_PREPROCESSOR_DEFINITIONS = $(inherited)

WARNING_CFLAGS = $(inherited) -Weverything -Wno-objc-missing-property-synthesis -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-gnu-statement-expression -Wno-language-extension-token -Wno-overriding-method-mismatch -Wno-missing-variable-declarations -Rno-module-build -Wno-auto-import -Wno-objc-interface-ivars -Wno-documentation-unknown-command -Wno-reserved-id-macro -Wno-unused-parameter -Wno-gnu-conditional-omitted-operand -Wno-explicit-ownership-type -Wno-date-time -Wno-cast-align -Wno-cstring-format-directive -Wno-double-promotion -Wno-partial-availability
WARNING_CFLAGS = $(inherited) -Weverything -Wno-objc-missing-property-synthesis -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-gnu-statement-expression -Wno-language-extension-token -Wno-overriding-method-mismatch -Wno-missing-variable-declarations -Rno-module-build -Wno-auto-import -Wno-objc-interface-ivars -Wno-documentation-unknown-command -Wno-reserved-id-macro -Wno-unused-parameter -Wno-gnu-conditional-omitted-operand -Wno-explicit-ownership-type -Wno-date-time -Wno-cast-align -Wno-cstring-format-directive -Wno-double-promotion -Wno-partial-availability -Wno-declaration-after-statement -Wno-objc-messaging-id -Wno-direct-ivar-access -Wno-cast-qual -Wno-deprecated-declarations
2 changes: 1 addition & 1 deletion WebDriverAgent/Configurations/TVOSSettings.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ RUN_CLANG_STATIC_ANALYZER = YES

GCC_PREPROCESSOR_DEFINITIONS = $(inherited)

WARNING_CFLAGS = $(inherited) -Weverything -Wno-objc-missing-property-synthesis -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-gnu-statement-expression -Wno-language-extension-token -Wno-overriding-method-mismatch -Wno-missing-variable-declarations -Rno-module-build -Wno-auto-import -Wno-objc-interface-ivars -Wno-documentation-unknown-command -Wno-reserved-id-macro -Wno-unused-parameter -Wno-gnu-conditional-omitted-operand -Wno-explicit-ownership-type -Wno-date-time -Wno-cast-align -Wno-cstring-format-directive -Wno-double-promotion -Wno-partial-availability
WARNING_CFLAGS = $(inherited) -Weverything -Wno-objc-missing-property-synthesis -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-gnu-statement-expression -Wno-language-extension-token -Wno-overriding-method-mismatch -Wno-missing-variable-declarations -Rno-module-build -Wno-auto-import -Wno-objc-interface-ivars -Wno-documentation-unknown-command -Wno-reserved-id-macro -Wno-unused-parameter -Wno-gnu-conditional-omitted-operand -Wno-explicit-ownership-type -Wno-date-time -Wno-cast-align -Wno-cstring-format-directive -Wno-double-promotion -Wno-partial-availability -Wno-declaration-after-statement -Wno-objc-messaging-id -Wno-direct-ivar-access -Wno-cast-qual -Wno-deprecated-declarations
24 changes: 14 additions & 10 deletions WebDriverAgent/WebDriverAgent.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3525,6 +3525,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "iPhone Developer";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 48LP2W34XH;
ENABLE_TESTING_SEARCH_PATHS = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = WebDriverAgentRunner/Info.plist;
Expand All @@ -3539,7 +3540,7 @@
);
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentRunner;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentRunner;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = appletvos;
TARGETED_DEVICE_FAMILY = 3;
Expand Down Expand Up @@ -3585,6 +3586,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "iPhone Developer";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 48LP2W34XH;
ENABLE_TESTING_SEARCH_PATHS = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = WebDriverAgentRunner/Info.plist;
Expand All @@ -3599,7 +3601,7 @@
);
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentRunner;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentRunner;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = appletvos;
TARGETED_DEVICE_FAMILY = 3;
Expand Down Expand Up @@ -3660,7 +3662,7 @@
/Developer/Library/Frameworks,
);
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentLib;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentLib;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = appletvos;
SKIP_INSTALL = YES;
Expand Down Expand Up @@ -3727,7 +3729,7 @@
);
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentLib;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentLib;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SDKROOT = appletvos;
Expand Down Expand Up @@ -3958,9 +3960,11 @@
baseConfigurationReference = EEE5CABF1C80361500CBBDD9 /* IOSSettings.xcconfig */;
buildSettings = {
CLANG_STATIC_ANALYZER_MODE = deep;
CODE_SIGN_IDENTITY = "Apple Development";
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
DEFINES_MODULE = NO;
DEVELOPMENT_TEAM = 48LP2W34XH;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
Expand All @@ -3982,7 +3986,7 @@
/System/Developer/Library/Frameworks,
);
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentLib;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentLib;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
VERSIONING_SYSTEM = "apple-generic";
Expand Down Expand Up @@ -4023,8 +4027,10 @@
baseConfigurationReference = EEE5CABF1C80361500CBBDD9 /* IOSSettings.xcconfig */;
buildSettings = {
CLANG_STATIC_ANALYZER_MODE = deep;
CODE_SIGN_IDENTITY = "Apple Development";
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = NO;
DEVELOPMENT_TEAM = 48LP2W34XH;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
Expand All @@ -4047,7 +4053,7 @@
);
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.facebook.WebDriverAgentLib;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentLib;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
VERSIONING_SYSTEM = "apple-generic";
Expand Down Expand Up @@ -4200,7 +4206,6 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ANALYZER_NONNULL = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 48LP2W34XH;
INFOPLIST_FILE = WebDriverAgentTests/IntegrationApp/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -4217,7 +4222,6 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ANALYZER_NONNULL = YES;
DEVELOPMENT_TEAM = 48LP2W34XH;
INFOPLIST_FILE = WebDriverAgentTests/IntegrationApp/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
Expand Down Expand Up @@ -4290,7 +4294,7 @@
"$(inherited)",
"-all_load",
);
PRODUCT_BUNDLE_IDENTIFIER = com.di.WebDriverAgentRunner;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentRunner;
PRODUCT_NAME = "$(TARGET_NAME)";
USES_XCTRUNNER = YES;
WARNING_CFLAGS = (
Expand Down Expand Up @@ -4344,7 +4348,7 @@
"$(inherited)",
"-all_load",
);
PRODUCT_BUNDLE_IDENTIFIER = com.di.WebDriverAgentRunner;
PRODUCT_BUNDLE_IDENTIFIER = com.vkqa.WebDriverAgentRunner;
PRODUCT_NAME = "$(TARGET_NAME)";
USES_XCTRUNNER = YES;
WARNING_CFLAGS = (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ NS_ASSUME_NONNULL_BEGIN
*/
- (NSDictionary *)fb_tree;

/**
@param excludedAttributes Set of possible attributes to be excluded i.e frame, enabled, visible, accessible, focused. If set to nil or an empty array then no attributes will be excluded from the resulting JSON
@return application elements tree in form of nested dictionaries
*/
- (NSDictionary *)fb_tree:(nullable NSSet<NSString *> *) excludedAttributes;

/**
Return application elements accessibility tree in form of nested dictionaries
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -152,11 +152,16 @@ - (BOOL)fb_deactivateWithDuration:(NSTimeInterval)duration error:(NSError **)err
}

- (NSDictionary *)fb_tree
{
return [self fb_tree:nil];
}

- (NSDictionary *)fb_tree:(nullable NSSet<NSString *> *) excludedAttributes
{
id<FBXCElementSnapshot> snapshot = self.fb_isResolvedFromCache.boolValue
? self.lastSnapshot
: [self fb_snapshotWithAllAttributesAndMaxDepth:nil];
return [self.class dictionaryForElement:snapshot recursive:YES];
return [self.class dictionaryForElement:snapshot recursive:YES excludedAttributes:excludedAttributes];
}

- (NSDictionary *)fb_accessibilityTree
Expand All @@ -167,7 +172,9 @@ - (NSDictionary *)fb_accessibilityTree
return [self.class accessibilityInfoForElement:snapshot];
}

+ (NSDictionary *)dictionaryForElement:(id<FBXCElementSnapshot>)snapshot recursive:(BOOL)recursive
+ (NSDictionary *)dictionaryForElement:(id<FBXCElementSnapshot>)snapshot
recursive:(BOOL)recursive
excludedAttributes:(nullable NSSet<NSString *> *) excludedAttributes
{
NSMutableDictionary *info = [[NSMutableDictionary alloc] init];
info[@"type"] = [FBElementTypeTransformer shortStringWithElementType:snapshot.elementType];
Expand All @@ -177,11 +184,35 @@ + (NSDictionary *)dictionaryForElement:(id<FBXCElementSnapshot>)snapshot recursi
info[@"value"] = FBValueOrNull(wrappedSnapshot.wdValue);
info[@"label"] = FBValueOrNull(wrappedSnapshot.wdLabel);
info[@"rect"] = wrappedSnapshot.wdRect;
info[@"frame"] = NSStringFromCGRect(wrappedSnapshot.wdFrame);
info[@"isEnabled"] = [@([wrappedSnapshot isWDEnabled]) stringValue];
info[@"isVisible"] = [@([wrappedSnapshot isWDVisible]) stringValue];
info[@"isAccessible"] = [@([wrappedSnapshot isWDAccessible]) stringValue];
info[@"isFocused"] = [@([wrappedSnapshot isWDFocused]) stringValue];

NSDictionary<NSString *, NSString * (^)(void)> *attributeBlocks = @{
@"frame": ^{
return NSStringFromCGRect(wrappedSnapshot.wdFrame);
},
@"enabled": ^{
return [@([wrappedSnapshot isWDEnabled]) stringValue];
},
@"visible": ^{
return [@([wrappedSnapshot isWDVisible]) stringValue];
},
@"accessible": ^{
return [@([wrappedSnapshot isWDAccessible]) stringValue];
},
@"focused": ^{
return [@([wrappedSnapshot isWDFocused]) stringValue];
}
};

for (NSString *key in attributeBlocks) {
if (excludedAttributes == nil || ![excludedAttributes containsObject:key]) {
NSString *value = ((NSString * (^)(void))attributeBlocks[key])();
if ([key isEqualToString:@"frame"]) {
info[key] = value;
} else {
info[[NSString stringWithFormat:@"is%@", [key capitalizedString]]] = value;
}
}
}

if (!recursive) {
return info.copy;
Expand All @@ -191,7 +222,9 @@ + (NSDictionary *)dictionaryForElement:(id<FBXCElementSnapshot>)snapshot recursi
if ([childElements count]) {
info[@"children"] = [[NSMutableArray alloc] init];
for (id<FBXCElementSnapshot> childSnapshot in childElements) {
[info[@"children"] addObject:[self dictionaryForElement:childSnapshot recursive:YES]];
[info[@"children"] addObject:[self dictionaryForElement:childSnapshot
recursive:YES
excludedAttributes:excludedAttributes]];
}
}
return info;
Expand Down Expand Up @@ -379,7 +412,9 @@ - (BOOL)fb_dismissKeyboardWithKeyNames:(nullable NSArray<NSString *> *)keyNames
id extractedElement = extractIssueProperty(issue, @"element");

id<FBXCElementSnapshot> elementSnapshot = [extractedElement fb_takeSnapshot];
NSDictionary *elementAttributes = elementSnapshot ? [self.class dictionaryForElement:elementSnapshot recursive:NO] : @{};
NSDictionary *elementAttributes = elementSnapshot
? [self.class dictionaryForElement:elementSnapshot recursive:NO excludedAttributes:nil]
: @{};

[resultArray addObject:@{
@"detailedDescription": extractIssueProperty(issue, @"detailedDescription") ?: @"",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ - (BOOL)fb_clearTextWithSnapshot:(FBXCElementSnapshotWrapper *)snapshot
[self fb_prepareForTextInputWithSnapshot:snapshot];
}

if (retry == 0) {
if (retry == 0 && FBConfiguration.useClearTextShortcut) {
// 1st attempt is via the IOHIDEvent as the fastest operation
// https://github.com/appium/appium/issues/19389
[[XCUIDevice sharedDevice] fb_performIOHIDEventWithPage:0x07 // kHIDPage_KeyboardOrKeypad
Expand Down
Loading

0 comments on commit ac62cad

Please sign in to comment.