-
-
Notifications
You must be signed in to change notification settings - Fork 833
Fix regression around CSS stacking contexts and PIP widgets #12094
Changes from 15 commits
4d116f5
53e30e2
c9783de
1261e9e
0a9a97f
02177e9
76d5d19
7ca123a
fbdcd96
977216c
8ad9790
1678e4b
d0cf422
80baf34
caefcf4
bae9289
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -325,6 +325,9 @@ limitations under the License. | |
&.mx_AppTileBody--call { | ||
border-radius: 0px; | ||
} | ||
&.mx_AppTileBody--call.mx_AppTileBody--mini { | ||
border-radius: 8px; | ||
} | ||
Comment on lines
+328
to
+330
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why is this now needed (as well as the border-radius on (I have no real idea what a There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Before the widget was always rendered the default app container with rounded borders. Old:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I don't follow. There don't seem to be enough words in this sentence?
Element
always |
||
} | ||
|
||
/* appTileBody is embedded to PersistedElement outside of mx_AppTile, | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -93,6 +93,8 @@ interface IProps { | |
showLayoutButtons?: boolean; | ||
// Handle to manually notify the PersistedElement that it needs to move | ||
movePersistedElement?: MutableRefObject<(() => void) | undefined>; | ||
// An element to render after the iframe as an overlay | ||
overlay?: ReactNode; | ||
Comment on lines
+96
to
+97
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. wouldn't it make more sense for this to be passed as There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Children have different semantics of typically always being included, this only includes it when the iframe is shown, not when the loader or permissions prompt are shown There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I'm not entirely convinced about that. And if it's true, doesn't the same logic apply to But I don't feel strongly about it. |
||
} | ||
|
||
interface IState { | ||
|
@@ -663,17 +665,20 @@ export default class AppTile extends React.Component<IProps, IState> { | |
); | ||
} else { | ||
appTileBody = ( | ||
<div className={appTileBodyClass} style={appTileBodyStyles}> | ||
{this.state.loading && loadingElement} | ||
<iframe | ||
title={widgetTitle} | ||
allow={iframeFeatures} | ||
ref={this.iframeRefChange} | ||
src={this.sgWidget.embedUrl} | ||
allowFullScreen={true} | ||
sandbox={sandboxFlags} | ||
/> | ||
</div> | ||
<> | ||
<div className={appTileBodyClass} style={appTileBodyStyles}> | ||
{this.state.loading && loadingElement} | ||
<iframe | ||
title={widgetTitle} | ||
allow={iframeFeatures} | ||
ref={this.iframeRefChange} | ||
src={this.sgWidget.embedUrl} | ||
allowFullScreen={true} | ||
sandbox={sandboxFlags} | ||
/> | ||
</div> | ||
{this.props.overlay} | ||
</> | ||
); | ||
|
||
if (!this.props.userWidget) { | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why are these changing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So that they layer correctly relative to the PIP widget and tooltips and each other by having their own CSS stacking contexts