Just a minor thing that is bothersome. Renaming classes and functions is a bit more of an impact than is worth right now, so have settled for littering TODO comments all over the place.
Fixes https://github.com/vector-im/riot-web/issues/13131
Widgets can request an OpenID token to authenticate the user when the widget is missing authentication information. A common case for this is the Dimension sticker picker: sometimes the Riot is running in doesn't have the configuration to match the Dimension instance, so Riot rightly refuses to send an auth token to the widget. When this happens, it requests a token through postMessage().
There's a toggle on the permission dialog to remember the setting, which is the widget's security key. As an added measure, the security key generation ensures the widget URL matches as the 'remember this choice' toggle will silently work in the background, and it could be dangerous if the widget's URL changed and Riot secretly allows the widget to identify the user. This check was failing because the WidgetMessaging class was being set up with the rendered URL, which will not match the widget's URL at all. To fix this, we simply use the widget's URL to set up the messaging, which by proxy uses the right URL in calculating the security key.
For https://github.com/vector-im/riot-web/issues/12877
Original error:
```
Warning: Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.
Check the render method of PersistedElement.
in PersistedElement (created by AppTile)
in div (created by AppTile)
in div (created by AppTile)
in AppTile (created by AppsDrawer)
in div (created by AppsDrawer)
in div (created by AppsDrawer)
in AppsDrawer (created by AuxPanel)
in div (created by AutoHideScrollbar)
in AutoHideScrollbar (created by AuxPanel)
in AuxPanel (created by RoomView)
in div (created by RoomView)
in div (created by MainSplit)
in MainSplit (created by RoomView)
in ErrorBoundary (created by RoomView)
in main (created by RoomView)
in RoomView (created by LoggedInView)
in div (created by LoggedInView)
in DragDropContext (created by LoggedInView)
in div (created by LoggedInView)
in LoggedInView (created by MatrixChat)
in ErrorBoundary (created by MatrixChat)
in MatrixChat
```