-
-
Notifications
You must be signed in to change notification settings - Fork 827
Device manager - logout of other session (PSG-744) #9280
Conversation
@kerryarchibald in the video: why do you have to enter your password twice? Shouldn't there not be a cache with timeout preventing this? |
@weeman1337, i guess the video is a bit confusing, the first time I fill the password then click outside the modal to cancel the interactive auth/deletion without submitting |
Also the client shouldn't be caching passwords, its up to the server to have a UIA cooldown (like Synapse does) |
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.
Tested on the deployment. Works 👍
Only some minor comments to improve code (read|main)tainability
<span className='mx_DeviceDetails_signOutButtonContent'> | ||
{ _t('Sign out of this session') } | ||
{ isSigningOut && <> | ||
|
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.
We could avoid the fragment by replacing
with gap
in .mx_DeviceDetails_signOutButtonContent
|
||
const onSignOutCurrentDevice = () => { | ||
Modal.createDialog(LogoutDialog, | ||
/* props= */{}, /* className= */undefined, |
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.
Uff. This is hard to read. Maybe we could improve this
- remove comments and hope people are using editors with param naming support or
- write each param on a line on its own and add the comment to the end
{}, // props
...baseDevice, | ||
}; | ||
const { getByTestId } = render(getComponent({ device, isSigningOut: true })); | ||
expect(getByTestId('device-detail-sign-out-cta')).toMatchSnapshot(); |
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.
Instead of using snapshots I would suggest
expect(getByTestId('device-detail-sign-out-cta')).toMatchSnapshot(); | |
expect(getByTestId('device-detail-sign-out-cta')).toBeDisabled(); |
Then we only test the disabled state and not the entire button.
// sign out button is disabled with spinner | ||
expect((deviceDetails.querySelector( | ||
'[data-testid="device-detail-sign-out-cta"]', | ||
) as Element)).toMatchSnapshot(); |
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.
Like at the other place: would be nice to check specific attributes instead of the entire snapshot.
* Element Call video rooms ([\#9267](matrix-org/matrix-react-sdk#9267)). * Device manager - rename session ([\#9282](matrix-org/matrix-react-sdk#9282)). * Allow widgets to read related events ([\#9210](matrix-org/matrix-react-sdk#9210)). Contributed by @dhenneke. * Device manager - logout of other session ([\#9280](matrix-org/matrix-react-sdk#9280)). * Device manager - logout current session ([\#9275](matrix-org/matrix-react-sdk#9275)). * Device manager - verify other devices ([\#9274](matrix-org/matrix-react-sdk#9274)). * Allow integration managers to remove users ([\#9211](matrix-org/matrix-react-sdk#9211)). * Device manager - add verify current session button ([\#9252](matrix-org/matrix-react-sdk#9252)). * Add NotifPanel dot back. ([\#9242](matrix-org/matrix-react-sdk#9242)). Fixes element-hq/element-web#17641. * Implement MSC3575: Sliding Sync ([\#8328](matrix-org/matrix-react-sdk#8328)). * Add the clipboard read permission for widgets ([\#9250](matrix-org/matrix-react-sdk#9250)). Contributed by @stefanmuhle. * Make autocomplete pop-up wider in thread view ([\#9289](matrix-org/matrix-react-sdk#9289)). * Fix soft crash around inviting invalid MXIDs in start DM on first message flow ([\#9281](matrix-org/matrix-react-sdk#9281)). Fixes matrix-org/element-web-rageshakes#15060 and matrix-org/element-web-rageshakes#15140. * Fix in-reply-to previews not disappearing when swapping rooms ([\#9278](matrix-org/matrix-react-sdk#9278)). * Fix invalid instanceof operand window.OffscreenCanvas ([\#9276](matrix-org/matrix-react-sdk#9276)). Fixes element-hq/element-web#23275. * Fix memory leak caused by unremoved listener ([\#9273](matrix-org/matrix-react-sdk#9273)). * Fix thumbnail generation when offscreen canvas fails ([\#9272](matrix-org/matrix-react-sdk#9272)). Fixes element-hq/element-web#23265. * Prevent sliding sync from showing a room under multiple sublists ([\#9266](matrix-org/matrix-react-sdk#9266)). * Fix tile crash around tooltipify links ([\#9270](matrix-org/matrix-react-sdk#9270)). Fixes element-hq/element-web#23253. * Device manager - filter out nulled metadatas in device tile properly ([\#9251](matrix-org/matrix-react-sdk#9251)). * Fix a sliding sync bug which could cause rooms to loop ([\#9268](matrix-org/matrix-react-sdk#9268)). * Remove the grey gradient on images in bubbles in the timeline ([\#9241](matrix-org/matrix-react-sdk#9241)). Fixes element-hq/element-web#21651. * Fix html export not including images ([\#9260](matrix-org/matrix-react-sdk#9260)). Fixes element-hq/element-web#22059. * Fix possible soft crash from a race condition in space hierarchies ([\#9254](matrix-org/matrix-react-sdk#9254)). Fixes matrix-org/element-web-rageshakes#15225. * Disable all types of autocorrect, -complete, -capitalize, etc on Spotlight's search field ([\#9259](matrix-org/matrix-react-sdk#9259)). * Handle M_INVALID_USERNAME on /register/available ([\#9237](matrix-org/matrix-react-sdk#9237)). Fixes element-hq/element-web#23161. * Fix issue with quiet zone around QR code ([\#9243](matrix-org/matrix-react-sdk#9243)). Fixes element-hq/element-web#23199.
* Element Call video rooms ([\element-hq#9267](matrix-org/matrix-react-sdk#9267)). * Device manager - rename session ([\element-hq#9282](matrix-org/matrix-react-sdk#9282)). * Allow widgets to read related events ([\element-hq#9210](matrix-org/matrix-react-sdk#9210)). Contributed by @dhenneke. * Device manager - logout of other session ([\element-hq#9280](matrix-org/matrix-react-sdk#9280)). * Device manager - logout current session ([\element-hq#9275](matrix-org/matrix-react-sdk#9275)). * Device manager - verify other devices ([\element-hq#9274](matrix-org/matrix-react-sdk#9274)). * Allow integration managers to remove users ([\element-hq#9211](matrix-org/matrix-react-sdk#9211)). * Device manager - add verify current session button ([\element-hq#9252](matrix-org/matrix-react-sdk#9252)). * Add NotifPanel dot back. ([\#9242](matrix-org/matrix-react-sdk#9242)). Fixes element-hq#17641. * Implement MSC3575: Sliding Sync ([\element-hq#8328](matrix-org/matrix-react-sdk#8328)). * Add the clipboard read permission for widgets ([\element-hq#9250](matrix-org/matrix-react-sdk#9250)). Contributed by @stefanmuhle. * Make autocomplete pop-up wider in thread view ([\element-hq#9289](matrix-org/matrix-react-sdk#9289)). * Fix soft crash around inviting invalid MXIDs in start DM on first message flow ([\element-hq#9281](matrix-org/matrix-react-sdk#9281)). Fixes matrix-org/element-web-rageshakes#15060 and matrix-org/element-web-rageshakes#15140. * Fix in-reply-to previews not disappearing when swapping rooms ([\element-hq#9278](matrix-org/matrix-react-sdk#9278)). * Fix invalid instanceof operand window.OffscreenCanvas ([\element-hq#9276](matrix-org/matrix-react-sdk#9276)). Fixes element-hq#23275. * Fix memory leak caused by unremoved listener ([\element-hq#9273](matrix-org/matrix-react-sdk#9273)). * Fix thumbnail generation when offscreen canvas fails ([\element-hq#9272](matrix-org/matrix-react-sdk#9272)). Fixes element-hq#23265. * Prevent sliding sync from showing a room under multiple sublists ([\element-hq#9266](matrix-org/matrix-react-sdk#9266)). * Fix tile crash around tooltipify links ([\element-hq#9270](matrix-org/matrix-react-sdk#9270)). Fixes element-hq#23253. * Device manager - filter out nulled metadatas in device tile properly ([\element-hq#9251](matrix-org/matrix-react-sdk#9251)). * Fix a sliding sync bug which could cause rooms to loop ([\element-hq#9268](matrix-org/matrix-react-sdk#9268)). * Remove the grey gradient on images in bubbles in the timeline ([\element-hq#9241](matrix-org/matrix-react-sdk#9241)). Fixes element-hq#21651. * Fix html export not including images ([\element-hq#9260](matrix-org/matrix-react-sdk#9260)). Fixes element-hq#22059. * Fix possible soft crash from a race condition in space hierarchies ([\element-hq#9254](matrix-org/matrix-react-sdk#9254)). Fixes matrix-org/element-web-rageshakes#15225. * Disable all types of autocorrect, -complete, -capitalize, etc on Spotlight's search field ([\element-hq#9259](matrix-org/matrix-react-sdk#9259)). * Handle M_INVALID_USERNAME on /register/available ([\element-hq#9237](matrix-org/matrix-react-sdk#9237)). Fixes element-hq#23161. * Fix issue with quiet zone around QR code ([\element-hq#9243](matrix-org/matrix-react-sdk#9243)). Fixes element-hq#23199.
* Element Call video rooms ([\matrix-org#9267](matrix-org#9267)). * Device manager - rename session ([\matrix-org#9282](matrix-org#9282)). * Allow widgets to read related events ([\matrix-org#9210](matrix-org#9210)). Contributed by @dhenneke. * Device manager - logout of other session ([\matrix-org#9280](matrix-org#9280)). * Device manager - logout current session ([\matrix-org#9275](matrix-org#9275)). * Device manager - verify other devices ([\matrix-org#9274](matrix-org#9274)). * Allow integration managers to remove users ([\matrix-org#9211](matrix-org#9211)). * Device manager - add verify current session button ([\matrix-org#9252](matrix-org#9252)). * Add NotifPanel dot back. ([\matrix-org#9242](matrix-org#9242)). Fixes element-hq/element-web#17641. * Implement MSC3575: Sliding Sync ([\matrix-org#8328](matrix-org#8328)). * Add the clipboard read permission for widgets ([\matrix-org#9250](matrix-org#9250)). Contributed by @stefanmuhle. * Make autocomplete pop-up wider in thread view ([\matrix-org#9289](matrix-org#9289)). * Fix soft crash around inviting invalid MXIDs in start DM on first message flow ([\matrix-org#9281](matrix-org#9281)). Fixes matrix-org/element-web-rageshakes#15060 and matrix-org/element-web-rageshakes#15140. * Fix in-reply-to previews not disappearing when swapping rooms ([\matrix-org#9278](matrix-org#9278)). * Fix invalid instanceof operand window.OffscreenCanvas ([\matrix-org#9276](matrix-org#9276)). Fixes element-hq/element-web#23275. * Fix memory leak caused by unremoved listener ([\matrix-org#9273](matrix-org#9273)). * Fix thumbnail generation when offscreen canvas fails ([\matrix-org#9272](matrix-org#9272)). Fixes element-hq/element-web#23265. * Prevent sliding sync from showing a room under multiple sublists ([\matrix-org#9266](matrix-org#9266)). * Fix tile crash around tooltipify links ([\matrix-org#9270](matrix-org#9270)). Fixes element-hq/element-web#23253. * Device manager - filter out nulled metadatas in device tile properly ([\matrix-org#9251](matrix-org#9251)). * Fix a sliding sync bug which could cause rooms to loop ([\matrix-org#9268](matrix-org#9268)). * Remove the grey gradient on images in bubbles in the timeline ([\matrix-org#9241](matrix-org#9241)). Fixes element-hq/element-web#21651. * Fix html export not including images ([\matrix-org#9260](matrix-org#9260)). Fixes element-hq/element-web#22059. * Fix possible soft crash from a race condition in space hierarchies ([\matrix-org#9254](matrix-org#9254)). Fixes matrix-org/element-web-rageshakes#15225. * Disable all types of autocorrect, -complete, -capitalize, etc on Spotlight's search field ([\matrix-org#9259](matrix-org#9259)). * Handle M_INVALID_USERNAME on /register/available ([\matrix-org#9237](matrix-org#9237)). Fixes element-hq/element-web#23161. * Fix issue with quiet zone around QR code ([\matrix-org#9243](matrix-org#9243)). Fixes element-hq/element-web#23199.
Screen.Recording.2022-09-14.at.14.19.56.mov
Checklist
Notes: Device manager - logout of other session
Here's what your changelog entry will look like:
✨ Features