示例#1
0
        private ChromiumAXNode(ChromiumSession client, AXNode payload)
        {
            _client = client;
            Payload = payload;

            _name = payload.Name != null?payload.Name.Value.ToString() : string.Empty;

            _role = payload.Role != null?payload.Role.Value.ToString() : "Unknown";

            _richlyEditable = GetPropertyElement(payload, "editable")?.ToString() == "richtext";
            _editable      |= _richlyEditable;
            _hidden         = GetPropertyElement(payload, "hidden")?.ToObject <bool>() ?? false;
            Focusable       = GetPropertyElement(payload, "focusable")?.ToObject <bool>() ?? false;
        }
示例#2
0
 private JsonElement?GetPropertyElement(AXNode payload, string propertyName)
 => (JsonElement?)Array.Find(payload.Properties, p => string.Equals(p.Name.ToString(), propertyName, StringComparison.OrdinalIgnoreCase))
 ?.Value?.Value;