TL;DR: How can I identify what is causing a property change event with an origin of Browser, with the goal of preventing that event from happening? Is there a logger or some other method that can be used to track all Browser events being received by a view?
I'm working on a Perspective project in 8.1.25. One of our screens uses the Dashboard component to allow the user to create and store a list of widgets; every widget is initialized as a view called WidgetContainer, and parameters are passed into this view to customize the widget. These are the parameters of WidgetContainer:
When a widget is first created, or when the user selects an existing widget to edit it, 'configuring' is set to true. The property change script on 'configuring' generates a new unique widgetId if this widget does not already have one.
So far, so good, but I noticed that about 1 out of every 10 widgets seems to not get an ID. I started logging the property change events on widgetId, and found that these random widgets would get their ID set by the script on 'configuring', then receive a browser event that set the ID back to an empty string. I've temporarily resorted to just setting the value of widgetId back to previousValue.value if the origin is 'Browser', but I'm trying to identify what inconsistent thing is occurring that causes this event. What is the best approach to get more information about the source of a Browser-origin property change event?