Commit graph

557 commits

Author SHA1 Message Date
Bruno Windels
f4860cfe63 update copyright notice 2018-09-26 18:22:05 +01:00
Bruno Windels
fd2ab406d4 update copy 2018-09-26 16:48:04 +01:00
Bruno Windels
824ad5e318 delete sync data when LL is toggled, show message when enabling 2018-09-26 16:25:21 +01:00
David Baker
2cef0f7f72 lint 2018-09-18 15:04:51 +01:00
David Baker
f507aac3d5 Show if recovery key is valid 2018-09-17 17:05:29 +01:00
David Baker
9a65e6817a Support restoring key backup 2018-09-17 16:00:23 +01:00
David Baker
2e6d27717c LIIIIIIIIIIIIIIIINT! 2018-09-14 17:33:25 +01:00
David Baker
292b1f09af WIP e2e key backups
Continues from Matthew's work: adds a feature flag & panel in
user settings to create a backup.

Can't restore a backup yet, nor even continue backing up to the same
backup after a refresh.
2018-09-13 17:11:46 +01:00
David Baker
f62e92a07b Merge remote-tracking branch 'origin/develop' into matthew/e2e_backups 2018-09-11 11:37:22 +01:00
David Baker
8fd7c4a66b Merge remote-tracking branch 'origin/develop' into matthew/e2e_backups 2018-08-24 14:07:16 +01:00
David Baker
9f19896df0 Support for room upgrades
* Show when a room upgrade is needed
 * Dialog box to perform the upgrade
2018-08-17 14:54:43 +01:00
Bruno Windels
cead4096d8
Merge pull request #2118 from matrix-org/bwindels/feature_lazyloading
Lazy loading of room members
2018-08-16 18:14:55 +02:00
Bruno Windels
908de56c6d replace getMember(myId).membership with getMyMembership
This works with rooms which haven't had their members
loaded yet.
2018-08-02 11:42:05 +02:00
Michael Telatynski
0174f67fe7
fix Devtools input autofocus && state traversal when len === 1 && key=""
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-26 18:20:09 +01:00
Pablo Saavedra
77ab7d2589 CreateRoomDialog is rendered before get default_federate value
In React the order of the execution of mount and render functions
is: `componentWillMount --> render --> componentDidMount`

The `CreateRoomDialog` `render()` function is executed before than
the `componentDidMount()` function so the

  `this.defaultNoFederate = config.default_federate === false;`

; instruction which is executed in the `componentDidMount` function
(in `CreateRoomDialog`) is evaluated always after than the rendering
of the page.

Therefore, the obvious issue is that the values obtained from the
`SdkConfig.get()` function (`config.default_federate`) are obtained
later than their usage on `render()`.

This patch makes this change to fix the described issue:

* componentWillMount instead of componentDidMount

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
2018-07-23 17:51:51 +02:00
Matthew Hodgson
02c6f3d168 fix typo 2018-07-10 15:18:07 +01:00
Michael Telatynski
dc6b3cb081
showing all is pretty slow, show an additional 50 instead
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-04 13:07:57 +01:00
Michael Telatynski
e5392e2c00
use TruncatedList to prevent rendering hundreds/thousands of DOM nodes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-04 12:57:22 +01:00
Michael Telatynski
26aec4364d
Merge pull request #2000 from matrix-org/t3chguy/deduplicate_address_picker
hide already chosen results from AddressPickerDialog
2018-06-21 14:07:52 +01:00
Michael Telatynski
be612998bd
invert boolean operation for readability and add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 12:14:16 +01:00
Michael Telatynski
0737965079
s/userList/selectedList/ & s/queryList/suggestedList/
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 12:13:27 +01:00
Luke Barnard
e148eb1a93
Merge pull request #2002 from matrix-org/t3chguy/fix_ChatCreateOrReuseDialog_onCancel
delint ChatCreateOrReuseDialog
2018-06-21 12:00:15 +01:00
Michael Telatynski
a0207fb7fd
Merge pull request #1982 from matrix-org/t3chguy/nvl/fix_set_password-email_flow
fix set password & email flow possible to get stuck and onBlur murdering your email
2018-06-21 11:42:53 +01:00
Michael Telatynski
2428eb12af
delint ChatCreateOrReuseDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 11:37:37 +01:00
Michael Telatynski
fd252ded60
take into account the addressType also
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 00:47:21 +01:00
Michael Telatynski
4040e3f5cf
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 00:37:37 +01:00
Michael Telatynski
bce87829b6
hide already chosen results from AddressPickerDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-21 00:33:24 +01:00
Michael Telatynski
3449a60d32
fix onBlur breaking the SetEmail field (setting it back empty :()
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-18 18:21:04 +01:00
Michael Telatynski
015d433235
fix a way to get stuck in set password/email flow
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-18 18:14:48 +01:00
David Baker
a918d73c29
Merge pull request #1973 from matrix-org/t3chguy/fix_react_proptypes_warnings
fix a bunch of instances of react console spam
2018-06-18 10:47:20 +01:00
Michael Telatynski
856d1ee5f9
fix: Invalid prop focus of type string supplied to DialogButtons
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-15 18:39:12 +01:00
David Baker
73b49d6d5e
Merge pull request #1968 from matrix-org/t3chguy/fix_QuestionDialog
QuestionDialog pass hasCancelButton to DialogButtons
2018-06-15 10:58:54 +01:00
David Baker
6904c2bafe
Merge pull request #1948 from matrix-org/export_Group
Share Dialog
2018-06-15 10:52:27 +01:00
Michael Telatynski
7adbff69dc
QuestionDialog pass hasCancelButton to DialogButtons
otherwise E2E Q Dialog has OK and Cancel which makes 0 sense
as its just an info dialog

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 18:58:38 +01:00
Michael Telatynski
7de7275c6d
remove subheadings in ShareDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 18:56:46 +01:00
Michael Telatynski
33a3cfead6
controlled checkboxes use checked not value
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:47:33 +01:00
Michael Telatynski
ef178b282c
use getters on MatrixEvent for roomId and eventId
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:44:05 +01:00
Michael Telatynski
bef435e15a
allow ShareEvent to devolve into ShareRoom using checkbox + i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:41:12 +01:00
Michael Telatynski
7d7a6f3d9c
ShareDialog share Message, link to timestamp and permalink in ctx menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:35:35 +01:00
Michael Telatynski
aa7d62b740
fix naming of methods and fields
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:20:16 +01:00
Michael Telatynski
d4578783ef
apply pr review feedback
fix copyright headers
fix user settings link accessibility
fix typo and add noopener

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-13 18:46:02 +01:00
Michael Telatynski
22bec0d67d
allow CreateRoom to scale properly horizontally
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-13 09:13:32 +01:00
Michael Telatynski
18546dbe06
QR Code align [m] logo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-12 11:33:38 +01:00
Michael Telatynski
d8a1feb501
fix Modal typo and refactor BaseDialog to fix " undefined" className
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-12 11:22:02 +01:00
Michael Telatynski
074051297a
add a ShareDialog for sharing users,groups and rooms
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-12 11:21:55 +01:00
Matthew Hodgson
25216d4660 Merge branch 'develop' into matthew/e2e_backups 2018-05-28 00:46:05 +01:00
Richard Lewis
6288e9bc08
Merge pull request #1923 from matrix-org/rxl881/devTools
Make devTools styling more consistent and easier to edit event data.
2018-05-24 18:10:59 +01:00
Luke Barnard
dca1217a45 Change wording and appearance of Deactivate Account dialog 2018-05-24 11:50:45 +01:00
Richard Lewis
2a9859c7b6 Styling for consistency. 2018-05-23 17:40:15 +01:00
Richard Lewis
9f9cde12ce Make devTools styling more consistent and easier to edit event data. 2018-05-23 17:18:33 +01:00
Luke Barnard
b124989968 Implement erasure option upon deactivation 2018-05-23 16:33:32 +01:00
Luke Barnard
ba3dd0c87a Refactor onOk to async function 2018-05-23 13:35:42 +01:00
Luke Barnard
31dcd85c08 Add customisable cancel button to QuestionDialog 2018-05-22 15:45:58 +01:00
Luke Barnard
6ec9e5f670
Merge pull request #1866 from matrix-org/luke/luke/group-store-refactor
Refactor GroupStores into one global GroupStore
2018-05-01 12:33:06 +01:00
Luke Barnard
023daef4b7 Refactor GroupStores into one global GroupStore
Take a step closer to a flux-like architecture for group data, for
the purposes of providing features that require it.

Now the app has a single GroupStore that can be poked to fetch
updates for a particular group.
2018-05-01 11:24:17 +01:00
David Baker
025bffb4e9 Merge remote-tracking branch 'origin/dbkr/fix_session_restore_fail_dialog_ux' into dbkr/bug_report_dialog_basedialog 2018-04-30 16:20:12 +01:00
David Baker
e28a927da9 lint 2018-04-30 14:34:14 +01:00
David Baker
c3420c37fd Indentation 2018-04-30 14:25:42 +01:00
David Baker
54cccab0c7 Factor out clearStorageButton 2018-04-30 14:22:18 +01:00
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
a9b6db3f2e Lint 2018-04-30 13:41:04 +01:00
David Baker
37cb8abf13 Fix UX issues with bug report dialog
* Make it use BaseDialog / DialogButtons (also gives it has a top-right 'x' &
   escape to cancel works)
 * Stop misusing the 'danger' CSS class on the buttons. There is nothing dangerous
   about submitting logs.
 * Continued campaign against 'Click here' links.

Fixes https://github.com/vector-im/riot-web/issues/6622
2018-04-30 13:39:46 +01:00
David Baker
fc136607f1 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-30 13:39:46 +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
Matthew Hodgson
24fcea8a0a fix indenting 2018-01-15 02:19:15 +00:00
Matthew Hodgson
a233af67ea initial pseudocode WIP for e2e online backups 2018-01-15 02:02:48 +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