This wraps session-related state into a basic flux store. The localStorage item 'mx_pass' is the only thing managed by this store for now but it could easily be extended to track other items (like the teamToken which is passed around through props a lot)
pass inRoom prop to RoomHeader (defaults to false)
remove default onSettingsClick, handle if it is passed EVERYWHERE
if onSettingsClick is passes, show that button
show search button only if we are in the room, seems to fail otherwise
this seems to handle all cases I could throw at it. Give it your best
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
so unless I'm going insane, it should be a string.
fixes
```
rageshake.js:61 Warning: Failed prop type: The prop `onClick` is marked as required in `AccessibleButton`, but its value is `undefined`.
in AccessibleButton (created by RoomHeader)
in RoomHeader (created by RoomView)
in div (created by RoomView)
in RoomView (created by LoggedInView)
in main (created by LoggedInView)
in div (created by LoggedInView)
in div (created by LoggedInView)
in LoggedInView (created by MatrixChat)
in MatrixChat
```
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Requires https://github.com/matrix-org/matrix-js-sdk/pull/432 for availability checking.
Changes:
- Redesign the dialog to look more like https://github.com/vector-im/riot-web/issues/3604#issuecomment-299226875
- Attempt to fix wrong password being stored by generating one per SetMxIdDialog (there's no issue tracking this for now, I shall open one if it persists)
- Backwards compatible with servers that don't support register/availability - a spinner will appear the first time a username is checked because server support can only be determined after a request.
- Rate-limited by a 2s debounce
- General style improvements
These are URLs that were spidered by the server without error but yielded an empty response from the server. There's nothing to display, so return an empty div.
+ Upload Confirmation dialog would just change focus on ESC and not close
+ Keywords Dialog in UserSettings would also close UserSettings because event bubbled up
to scare the user thinking they have lost all of their content
even though when they come back they can cry with joy :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
- Instead of using one attribute, use one that might just contain one token
- Use the first token when tracking a child
- Mandate that no commas can be in individual tokens
This adds the `data-contained-scroll-tokens` API to elements in `ScrollPanel` which allows arbitrary containers of elements with scroll tokens to declare their contained scroll tokens. When jumping to a scroll token inside a container, the `ScrollPanel` will act as if it is scrolling to the container itself, not the child.
MELS has been modified such that it exposes the scroll tokens of all events that exist within it.This means "Jump to unread message" will work if the unread event is within a MELS (which is any member event, because even individual member events surrounded by other events are put inside a MELS).
new needs binding due to class this ref being softer
couldn't do this nicely in MessageComposer/Input as
isTyping wasn't propagated.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
- Replaces SetDisplayNameDialog with SetMxIdDialog. This new dialog will use InteractiveAuth to authenticate a user with their chosen mxid.
De-scoped:
- style tweaks for the InteractiveAuth in the dialog (capcha) and error message.
- checking for mxid availability
Fixes https://github.com/vector-im/riot-web/issues/3714https://github.com/vector-im/riot-web/issues/3714#issuecomment-297460620 :
> It's as if there are two dialogs and as one closes, the other one appears. For some reason matrix-org/matrix-react-sdk#822 is causing this.
> I've realised it's because the `priorActiveElement` is probably the button that opened the dialog. If this is focused and the enter key is released, this triggers a keyPress which fires once the dialog has closed and the button has been focused 😬 the BaseDialog only calls stopPropagation _onKeyDown.
The soln. was to submit the dialog as finished `onKeyUp`. This means the `priorActiveElement` is focussed after any key events that should be associated with the dialog.
A prefix is now exposed through a change to the API for onOptionChange. This now returns the entire country object which includes iso2, prefix etc.
This also shows the prefix in the Registration and Login screens as a prefix to the phone number field.
restore focus to that element when we unmount
also remove some whitespace because ESLint is a big bad bully...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>