Commit Graph

443 Commits

Author SHA1 Message Date
David Baker 5d46efc3e8 Get docs right on hasCancel 2018-04-30 14:17:21 +01:00
David Baker dcaacfd204 Merge remote-tracking branch 'origin/develop' into dbkr/fix_session_restore_fail_dialog_ux 2018-04-30 14:06:32 +01:00
David Baker 873993a7ca Clarify, hopefully 2018-04-27 17:56:33 +01:00
David Baker d3c368e19f typo 2018-04-27 17:53:11 +01:00
David Baker 27b18c457e Lint 2018-04-27 15:56:28 +01:00
David Baker 6d9e07580b UI fixes in SessionRestoreErrorDialog
* Make the 'delete my data' button not the default
 * Make it red
 * Give it a confirmation dialog
 * Remove the 'cancel' button: what does it mean to cancel an error?
   In this case, it tried again and almost certainly got the same error.
 * Remove the top-right 'x' and don't cancel on esc for the same reason.
 * Move 'send bug report' to a button rather than a 'click here' link
 * Add a 'refresh' button which, even if it's no more likely to work,
   will at least look like it's doing something (it's mostly so if you
   don't have a bug report endpoint, there's still a button other
   than the one that deletes all your data).
2018-04-27 12:38:49 +01:00
David Baker 0323f8ed0c Wrap exception handling around all of loadSession
The user might (probably does) have a session even if we haven't actually tried
to load it yet, so wrap the whole loadSession code in the error handler we were
using for restoring sessions so we gracefully handle exceptions that happen
before trying to restore sessions too.

Remove the catch in MatrixChat that sent you to the login screen.  This is
never the right way to handle an error condition: we should only display the
login screen if we successfully determined that the user has no session, or
they explicitly chose to blow their sessions away.
2018-04-27 11:25:13 +01:00
David Baker db1401f484 Pass false to onFinished from BaseDialog
Everywhere else, onFinished takes a boolean indicating whether the
dialog was confirmed on cancelled, and had function that were
expecting this variable and getting undefined.
2018-04-27 11:19:14 +01:00
David Baker f70096b8fa Fix error handling on session restore
Fix a number of failures that meant the excellent error handling
we had for failing to restore a session didn't work.

1. .catch on the promise rather than try/catch: it's async
2. Explicit cancel method in SessionRestoreErrorDialog that invokes
   onFinished with `false` because even with the catch fixed, this
   was getting the event as its first arg which is truthy, so
   clicking cancel still deleted your data.
3. DialogButtons: Don't pass onCancel straight into the button event
   handler as this leaks the MouseEvent through as an argument.
   Nothing is using it and it exacerbates failures like this
   because there are surprise arguments.

Fixes https://github.com/vector-im/riot-web/issues/6616
2018-04-26 17:07:58 +01:00
Matthew Hodgson ce809e16d9 fix i18n thinko on createTrackedDialog 2018-04-17 16:51:17 +01:00
Matthew Hodgson cb5ff404e1 fix missing i18n 2018-04-15 23:16:31 +01:00
Matthew Hodgson 13765632e9 use new rageshake location 2018-04-13 01:36:41 +01:00
Matthew Hodgson 40a67ca8fe point imports at the new locations 2018-04-13 00:43:44 +01:00
Matthew Hodgson 8ab8f76254 move non-Riot-specific components over from riot-web 2018-04-11 23:58:04 +01:00
Luke Barnard b80568b1c5 Wrap GeminiScrollbar in a component, enabled forceGemini
Fixes https://github.com/vector-im/riot-web/issues/6294
2018-03-27 13:04:26 +01:00
David Baker 580b68a1b6 Merge pull request #1652 from pvagner/dialog-a11y
Dialog a11y
2018-03-20 11:35:57 +00:00
Luke Barnard a95f6a9804 Implement transparent RoomTile for use in some places
where a transparent appearance is required (i.e. in MemberInfo
or ChatCreateOrReuseDialog)
2018-03-05 12:36:02 +00:00
Peter Vágner 5e9368e794 Add comments explaining our non standard usage of aria-described-by 2018-02-12 21:13:53 +01:00
Peter Vágner 8f97e9479d Ooops, restore a bit of RoomCreateDialog content I have accidentally
removed while trying to solve merge conflicts (thx @dbkr)
2018-02-08 21:16:57 +01:00
lukebarnard c1649d1b75 Give dialogs a matrixClient context
Dialogs are mounted outside of the main react tree of MatrixChat,
so they won't have its child context.
2018-02-07 09:45:36 +00:00
Peter Vágner 14991afbe5 Merge branch 'develop' into dialog-a11y 2018-02-06 23:04:15 +01:00
David Baker 6162c0b360 Fix key bindings in address picker dialog
Another regression from https://github.com/matrix-org/matrix-react-sdk/pull/1674

Fixes https://github.com/vector-im/riot-web/issues/5994
2018-02-06 15:01:14 +00:00
Michael Telatynski 2705397bf6 Add local GID==='' check, because Synapse says Group rather than Community
Reset createError when doing check because it is now stale

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-20 13:16:33 +00:00
David Baker 99a72b5b2b Fix autofocus broken in https://github.com/matrix-org/matrix-react-sdk/pull/1674
'focus' attribute was on the wrong thing
2018-01-12 10:52:51 +00:00
David Baker aa5d42d045 Remove spurious dot 2018-01-12 10:32:36 +00:00
David Baker 292a6c5767 Merge pull request #1674 from aidalgol/rebase-dialogs
Normalise dialogs
2018-01-11 10:49:40 +00:00
David Baker 4c101628b5 Add 'send without verifying' to status bar
Fixes other part of https://github.com/vector-im/riot-web/issues/5936
2018-01-09 13:52:37 +00:00
Aidan Gauland 35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Aidan Gauland 9531b219d2 Remove unused imports 2017-12-26 12:53:01 +13:00
Aidan Gauland e6dbc3b863 Use DialogButtons in UnknownDeviceDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 2674fcb6d3 Use DialogButtons in TextInputDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland a11146f39d Use DialogButtons in SessionRestoreErrorDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 93b789438b Use DialogButtons in ConfirmUserActionDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 7a761dbf6b Use DialogButtons in ChatCreateOrReuseDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland aecb4650bc Correct order of buttons in CreateGroupDialog
We can't use DialogButtons because the primary button is an <input> element.
2017-12-23 17:02:19 +13:00
Aidan Gauland c863dbfc76 Use DialogButtons in CreateRoomDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 0f6125e749 Use DialogButtons in AddressSelector
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 3b2c61e456 Use DialogButtons in QuestionDialog
Use DialogButtons to eliminate duplicate button code.
2017-12-23 17:02:19 +13:00
Aidan Gauland 9ebd58852c Rebase DeactivateAccountDialog on BaseDialog 2017-12-23 17:02:19 +13:00
Aidan Gauland c5284eb070 Allow BaseDialog to take a class for the title <div>
Some dialogs need to set additional classes on the `mx_Dialog_title` `div`
element (for example `danger`).
2017-12-23 17:02:19 +13:00
Aidan Gauland 8bb16466d6 Rebase AddressSelector on BaseDialog 2017-12-23 17:02:19 +13:00
Peter Vágner f2ca02eaf8 SetEmailDialog: use autoFocus prop on the EditableText rather than using
its ref inside onComponentDidMount function. This is shorter better and
has been requested.
2017-12-20 10:13:37 +01:00
Peter Vágner 20c485d85e Move aria-hidden management from the BaseDialog component to the Modal 2017-12-20 10:09:26 +01:00
Peter Vágner 9f5857a7cc Merge branch 'develop' into dialog-a11y 2017-12-14 11:04:59 +01:00
Peter Vágner 642675c96d Address review request comments 2017-12-14 10:31:28 +01:00
Peter Vágner ab0ff9b781 BaseDialog: split a very long line 2017-12-12 18:55:57 +01:00
David Baker 0d38e7510d Merge pull request #1600 from matrix-org/dbkr/udd_no_auto_show
Don't Auto-show UnknownDeviceDialog
2017-12-08 16:33:25 +00:00
Peter Vágner 321b1adb99 Elliminate lint errors and warnings 2017-12-08 07:47:08 +01:00
Peter Vágner 4171675221 Add some comments explaining how we are using aria-hidden property to
hide content outside of the BaseDialog to screen reader users.
2017-12-07 09:44:00 +01:00
David Baker 2a01985076 better proptypes 2017-12-06 19:07:12 +00:00