Issue - Profiles - Using start events on disappearing objects
Handling Missing Clicked Object Names in UXM
Issue
The clicked object disappears before UXM can capture its content, resulting in "LeftMouseClick" events with an empty "name" property.
Example: A popup menu that disappears immediately when clicking "My activities".
(Screenshot reference: mceclip0.png)
Solution
Use ObjectFocus events instead.
They are generated immediately when an object is clicked or activated via the keyboard, ensuring the element’s properties are captured correctly.
Browser Behavior Comparison
Firefox
Firefox successfully detects the clicked element's name property in both LeftMouseClick and ObjectFocus events.
{
"timestamp": "1626864095",
"utcDateTime": "2021-07-21 10:41:35",
"collectionDelayMs": "1.992",
"collectionTimeMs": "37.9",
"collectionTimeAccessibleMs": "8",
"collectionTimeAccessibleParentMs": "2",
"collectionTimeWin32Ms": "2",
"collectionTimeUIAutomationMs": "0",
"typeID": "5",
"type": "LeftMouseClick",
"name": "My activities",
"win32_name": "Requests – MCG Support - Mozilla Firefox",
"point": "1621x337",
"role": "menu item",
"eventClass": "MozillaWindowClass",
"state": "focused",
"firstNonChildWindowTitle": "Requests – MCG Support - Mozilla Firefox",
"firstNonChildWindowClass": "MozillaWindowClass",
"processId": "14436",
"processName": "firefox.exe",
"parentRole": "popup menu",
"windowHandle": "402816",
"topWindowHandle": "402816"
}
{
"timestamp": "1626864095",
"utcDateTime": "2021-07-21 10:41:35",
"collectionDelayMs": "22.94",
"collectionTimeMs": "6.783",
"collectionTimeAccessibleMs": "4",
"collectionTimeAccessibleParentMs": "1",
"collectionTimeWin32Ms": "0",
"collectionTimeUIAutomationMs": "0",
"typeID": "14",
"type": "ObjectFocus",
"name": "My activities",
"win32_name": "Requests – MCG Support - Mozilla Firefox",
"role": "menu item",
"eventClass": "MozillaWindowClass",
"state": "focused",
"firstNonChildWindowTitle": "Requests – MCG Support - Mozilla Firefox",
"firstNonChildWindowClass": "MozillaWindowClass",
"processId": "14436",
"threadId": "21120",
"processName": "firefox.exe",
"parentRole": "popup menu",
"windowHandle": "402816",
"topWindowHandle": "402816"
}
Microsoft Edge
In Edge, the "name" property is missing from LeftMouseClick events.
Use the "ObjectFocus" event instead to capture the element name correctly.
{
"timestamp": "1626864307",
"utcDateTime": "2021-07-21 10:45:07",
"collectionDelayMs": "2",
"collectionTimeMs": "22.339",
"collectionTimeAccessibleMs": "10",
"collectionTimeAccessibleParentMs": "4",
"collectionTimeWin32Ms": "1",
"collectionTimeUIAutomationMs": "0",
"typeID": "5",
"type": "LeftMouseClick",
"win32_name": "Chrome Legacy Window",
"point": "1593x307",
"role": "list",
"eventClass": "Chrome_RenderWidgetHostHWND",
"state": "read only",
"firstNonChildWindowTitle": "Requests – MCG Support - Work - Microsoft Edge",
"firstNonChildWindowClass": "Chrome_WidgetWin_1",
"processId": "1428",
"processName": "msedge.exe",
"parentRole": "grouping",
"windowHandle": "337354",
"topWindowHandle": "337354"
}
{
"timestamp": "1626864307",
"utcDateTime": "2021-07-21 10:45:07",
"collectionDelayMs": "8.382",
"collectionTimeMs": "6.819",
"collectionTimeAccessibleMs": "5",
"collectionTimeAccessibleParentMs": "2",
"collectionTimeWin32Ms": "0",
"collectionTimeUIAutomationMs": "0",
"typeID": "14",
"type": "ObjectFocus",
"name": "My activities",
"win32_name": "Chrome Legacy Window",
"role": "menu item",
"eventClass": "Chrome_RenderWidgetHostHWND",
"state": "focused",
"firstNonChildWindowTitle": "Requests – MCG Support - Work - Microsoft Edge",
"firstNonChildWindowClass": "Chrome_WidgetWin_1",
"processId": "1428",
"threadId": "21836",
"processName": "msedge.exe",
"parentRole": "popup menu",
"windowHandle": "4001966",
"topWindowHandle": "337354"
}
Google Chrome
Like Edge, Chrome’s LeftMouseClick event is missing the "name" property.
Use the ObjectFocus event instead to capture "name".
{
"timestamp": "1626864731",
"utcDateTime": "2021-07-21 10:52:11",
"collectionDelayMs": "2.006",
"collectionTimeMs": "29.286",
"collectionTimeAccessibleMs": "12",
"collectionTimeAccessibleParentMs": "6",
"collectionTimeWin32Ms": "0",
"collectionTimeUIAutomationMs": "0",
"typeID": "5",
"type": "LeftMouseClick",
"win32_name": "Chrome Legacy Window",
"point": "1592x288",
"role": "list",
"eventClass": "Chrome_RenderWidgetHostHWND",
"state": "read only",
"firstNonChildWindowTitle": "Requests – MCG Support – Google Chrome",
"firstNonChildWindowClass": "Chrome_WidgetWin_1",
"processId": "20276",
"processName": "chrome.exe",
"parentRole": "grouping",
"windowHandle": "134810",
"topWindowHandle": "134810"
}
{
"timestamp": "1626864731",
"utcDateTime": "2021-07-21 10:52:11",
"collectionDelayMs": "22.306",
"collectionTimeMs": "10.765",
"collectionTimeAccessibleMs": "6",
"collectionTimeAccessibleParentMs": "3",
"collectionTimeWin32Ms": "0",
"collectionTimeUIAutomationMs": "0",
"typeID": "14",
"type": "ObjectFocus",
"name": "My activities",
"win32_name": "Chrome Legacy Window",
"role": "menu item",
"eventClass": "Chrome_RenderWidgetHostHWND",
"state": "focused",
"firstNonChildWindowTitle": "Requests – MCG Support – Google Chrome",
"firstNonChildWindowClass": "Chrome_WidgetWin_1",
"processId": "20276",
"threadId": "20280",
"processName": "chrome.exe",
"parentRole": "popup menu",
"windowHandle": "1117892",
"topWindowHandle": "134810"
}