Commit Graph

12551 Commits (aef9323f216ed74dac2aa17bbed519c7c1bb554e)

Author SHA1 Message Date
David Baker b4d2463d17
Merge pull request #2974 from matrix-org/dbkr/fix_sso
Fix Single Sign-on
2019-05-15 14:12:05 +01:00
David Baker fc636c6cb9 lint 2019-05-15 14:00:37 +01:00
David Baker da1bff1c5d Fix Single Sign-on
https://github.com/matrix-org/matrix-react-sdk/pull/2826 checked
that we had data in the crypto store if the had credentials in
localStorage. However, SSO stores creds in localStorage and then
redirects the browser to remove the loginToken parameter from the
URL without starting crypto, so after the redirect, we see creds
in localStorage but no crypto data, and error.

Fix by marking when we've successfully initialised crypto and only
erroring if that flag is set.

Fixes https://github.com/vector-im/riot-web/issues/9695
2019-05-15 13:47:48 +01:00
Bruno Windels 5805a88ab9 adjust to js-sdk changes of marking original event as replaced 2019-05-15 11:54:26 +01:00
Kenneth Larsson e4b4da4f8d Translated using Weblate (Swedish)
Currently translated at 84.8% (1351 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/sv/
2019-05-15 10:24:23 +00:00
Szimszon 6f63df5694 Translated using Weblate (Hungarian)
Currently translated at 100.0% (1593 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/hu/
2019-05-15 10:24:21 +00:00
natowi b55b41257a Translated using Weblate (German)
Currently translated at 92.7% (1477 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/de/
2019-05-15 10:24:20 +00:00
Kévin C 129cb8ea29 Translated using Weblate (French)
Currently translated at 99.9% (1591 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/fr/
2019-05-15 10:24:20 +00:00
Nathan Follens 8a94d00edc Translated using Weblate (Dutch)
Currently translated at 100.0% (1593 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/nl/
2019-05-15 10:24:18 +00:00
Jeff Huang 40d9bc7b34 Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (1593 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/zh_Hant/
2019-05-15 10:24:17 +00:00
Slavi Pantaleev 6f393b5d91 Translated using Weblate (Bulgarian)
Currently translated at 100.0% (1593 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/bg/
2019-05-15 10:24:16 +00:00
Osoitz aa361a251b Translated using Weblate (Basque)
Currently translated at 97.7% (1556 of 1593 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/eu/
2019-05-15 10:24:13 +00:00
Bruno Windels edc100163f
Merge pull request #2952 from matrix-org/bwindels/message-edit-editor
Initial support for editing messages
2019-05-15 09:23:01 +00:00
Bruno Windels d83e278f6b PR feedback, cleanup 2019-05-15 09:46:08 +01:00
Michael Telatynski 9b40913838
Merge pull request #2957 from matrix-org/t3chguy/invite_perms
Check permission to invite before showing invite buttons/disable them
2019-05-14 23:15:59 +01:00
Travis Ralston 92c67cdcab
Merge pull request #2963 from matrix-org/travis/permalink-without-room
Support a backup room ID in PermalinkCreator
2019-05-14 10:28:26 -06:00
Bruno Windels dc21faa240 send edit also in n.new_content field
so we can have fallback content in the regular content for clients
that don't support edits. Note that we're not reading m.new_content
yet as it's going to be a bit of a headache to change this.

So for now just sending the edit in both the normal content and
the m.new_content subfield, so all events out there already
are well-formed
2019-05-14 16:32:08 +01:00
Bruno Windels fd31e793d1 fix lint 2019-05-14 15:49:53 +01:00
Bruno Windels 0b18ff52c5 pass feature flag to js-sdk 2019-05-14 15:43:10 +01:00
Bruno Windels 45991bc3de replace original event if there have been previous edits 2019-05-14 15:39:24 +01:00
Bruno Windels 15df72e629 reload events when event gets replaced in the timeline 2019-05-14 15:39:24 +01:00
Bruno Windels e2388afb51 consistent naming between serialize and deserialize modules 2019-05-14 15:39:24 +01:00
Bruno Windels 036cb02c0e add feature flag 2019-05-14 15:39:24 +01:00
Bruno Windels 759a4a54ef send the actual m.replace event from composer content 2019-05-14 15:38:16 +01:00
Bruno Windels 34dbe5f314 add newline parts for text messages as well 2019-05-14 15:38:16 +01:00
Bruno Windels 3abdf6b100 also serialize to text and method to tell us if we need html for model 2019-05-14 15:38:16 +01:00
Bruno Windels 2fbe73e658 draft of formatting 2019-05-14 15:38:16 +01:00
Bruno Windels eaf43d7277 correctly parse BRs 2019-05-14 15:38:16 +01:00
Bruno Windels c44fed4bea even less logging 2019-05-14 15:38:16 +01:00
Bruno Windels a3b02cf0cc make logging quiet 2019-05-14 15:38:16 +01:00
Bruno Windels 4ff37ca046 don't show model for now 2019-05-14 15:38:16 +01:00
Bruno Windels 9e0816c51c find caret offset and calculate editor text in same tree-walking algo
instead of having the same logic twice
2019-05-14 15:38:16 +01:00
Bruno Windels 7ebb6ce621 WIP commit, newlines sort of working 2019-05-14 15:38:16 +01:00
Bruno Windels 9f597c7ec0 no comment nodes without react,so can bring this back to simpler version 2019-05-14 15:38:16 +01:00
Bruno Windels 7a85dd4e61 after completion, set caret in next part at start
instead of end of current part
2019-05-14 15:38:16 +01:00
Bruno Windels 2c3453d307 put caret after replaced part if no caretOffset is given by autocomplete 2019-05-14 15:38:16 +01:00
Bruno Windels 1a577eed11 take non-editable parts into account for new caret position 2019-05-14 15:38:16 +01:00
Bruno Windels 8d97c0033e catch this for now as caret behaviour is still a bit flaky 2019-05-14 15:38:16 +01:00
Bruno Windels 580a89875a fix autocompl. not always appearing/being updated when there is no part 2019-05-14 15:38:16 +01:00
Bruno Windels bc14d4f58f comment 2019-05-14 15:38:16 +01:00
Bruno Windels 22587da5ff close autocomplete on enter 2019-05-14 15:38:16 +01:00
Bruno Windels ffff66a92d handle Escape properly
close autocomplete, and also replace with plain text part.

also remove leftover logging
2019-05-14 15:38:16 +01:00
Bruno Windels 64b171198c rerender through callback instead of after modifying model
this way rendering is centralized and we can better rerender
from interaction in the autocompleter
(we didn't have access to caret before)
2019-05-14 15:38:16 +01:00
Bruno Windels aa1b4bb91e keep auto complete code close to each other 2019-05-14 15:38:16 +01:00
Bruno Windels 5e6367ab57 basic support for non-editable parts
e.g. pills, they get deleted when any character of them is removed
later on we also shouldn't allow the caret to be set inside of them
2019-05-14 15:38:16 +01:00
Bruno Windels 4bb8b79942 initial auto complete wrapper, make existing autocompleter work w/ model 2019-05-14 15:38:16 +01:00
Bruno Windels bb73521f0c prefer textContent over innerText as it's faster
and transforms the text less
2019-05-14 15:38:16 +01:00
Bruno Windels 317e88bef2 initial hacky hookup of Autocomplete menu in MessageEditor 2019-05-14 15:38:16 +01:00
Bruno Windels 1330b438d6 initial support for auto complete in model and parts
also move part creation out of model, into partcreator, which
can then also contain dependencies for creating the auto completer.
2019-05-14 15:38:16 +01:00
Bruno Windels 7507d0d7e1 complete proptypes 2019-05-14 15:38:16 +01:00
Bruno Windels a765fdf98a run autocomplete after mounting
componentWillReceiveProps doesn't run after mount,
and is deprecated as well.

Update state after both on componentDidMount and componentDidUpdate
2019-05-14 15:38:16 +01:00
Bruno Windels a2f1f49972 update the DOM manually as opposed through react rendering
react messes up the DOM sometimes because of, I assume, not
being aware of the changes to the real DOM by contenteditable.
2019-05-14 15:38:16 +01:00
Bruno Windels 85adc8953f remove logging 2019-05-14 15:38:16 +01:00
Bruno Windels 0f38753dba some comments 2019-05-14 15:38:16 +01:00
Bruno Windels 8f0074f824 ignore react comment nodes when locating/setting caret 2019-05-14 15:38:16 +01:00
Bruno Windels 6be6492cd2 initial parsing of pills for editor 2019-05-14 15:38:16 +01:00
Bruno Windels 76bb56a2bf initial hookup editor code with react component 2019-05-14 15:38:16 +01:00
Bruno Windels 9f98a6c0e6 add converted prototype code 2019-05-14 15:38:16 +01:00
Bruno Windels 6599d605cd wire up editor component (somewhat hacky) 2019-05-14 15:38:16 +01:00
J. Ryan Stinnett 66aabdca9e
Merge pull request #2962 from matrix-org/jryans/gif-autoplay
Always thumbnail for GIFs
2019-05-14 14:07:58 +01:00
J. Ryan Stinnett f19e70c219 Add comment about thumbnailing for GIFs 2019-05-14 13:55:38 +01:00
David Baker 7ac82a23ab Yes yes, eslint 2019-05-14 12:11:07 +01:00
David Baker c11d26d809 Fix email registration, pt. 2
Regressed in https://github.com/matrix-org/matrix-react-sdk/pull/2768
where we check for an existing stored account first and restore that
instead if it exist, telling the user. We usually make a guest account
when the user first hits the page though, so this just restored this
guest account.

Don't restore the account if it's just a guest account (which, as per
comment, is not perfect, but is definitely better than the current
behaviour).

Fixes https://github.com/vector-im/riot-web/issues/9581
2019-05-14 11:59:38 +01:00
David Baker a0ecd89c94 Fix email registration: pt. 1
We look to see if there's already a user logged in and if there is,
restore that session instead of logging the user in as their new
account. We still set this 'is_registered' flag though, even though
in that case it's not a newly registered account that's being restored,
so don't set in that case.
2019-05-14 11:44:00 +01:00
Travis Ralston 1584ab42c2 Support a backup room ID in PermalinkCreator
In the case of room upgrades, it is possible the client is trying to render the room create event, but the user has never been in the old room. This results in an error because the PermalinkCreator cannot possibly figure out a room ID. 

Instead, we'll feed the creator an alternate room ID to try if the room object can't be provided.

Fixes https://github.com/vector-im/riot-web/issues/9636
2019-05-13 14:12:58 -06:00
J. Ryan Stinnett 7881369b98 Always thumbnail for GIFs
When displaying a GIF, we always want to thumbnail so that we can properly
respect the user's GIF autoplay setting (which relies on thumbnailing to produce
the static preview image).

Fixes https://github.com/vector-im/riot-web/issues/9658
2019-05-13 18:28:57 +01:00
J. Ryan Stinnett 9d9a41b263 Save `content.info` as a local for readability 2019-05-13 18:00:52 +01:00
Travis Ralston 201fef8b11
Merge pull request #2947 from matrix-org/travis/password-score-config
Add configuration flag to disable minimum password requirements
2019-05-13 09:19:23 -06:00
J. Ryan Stinnett f5aa32bc96
Merge pull request #2954 from matrix-org/jryans/aggregations
Send and undo reaction events
2019-05-13 15:20:28 +01:00
J. Ryan Stinnett e22bd45608 Clarify `ReactionsRow` forceUpdate usage 2019-05-13 15:00:43 +01:00
J. Ryan Stinnett af9fdbaeeb Rework `reactionsCreated` in `EventTile` to use state
This changes to use component state instead of `forceUpdate`, so that it's more
obvious why an update is happening here.
2019-05-13 14:52:55 +01:00
J. Ryan Stinnett 24209905e8 Test settings later for performance 2019-05-13 14:41:49 +01:00
David Baker 59cefbaa44
Typo
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-13 14:24:56 +01:00
David Baker 34990d1c89 Fix bug where email was not required where it shouldn't have been
See comment!

Fixes https://github.com/vector-im/riot-web/issues/9681
2019-05-13 14:17:09 +01:00
Travis Ralston 4ffd826e76 Flip logic for unsafe->safe 2019-05-12 22:53:06 -06:00
Travis Ralston 909354c195
Merge branch 'develop' into t3chguy/cmd_rainbow 2019-05-12 18:51:22 -06:00
Travis Ralston 99e2ac7255
Merge pull request #2956 from matrix-org/t3chguy/fix_memberinfo_invite
Fix invite via MemberInfo
2019-05-12 18:47:17 -06:00
Travis Ralston 8af6bc0758
Merge pull request #2955 from matrix-org/t3chguy/close_room_settings_leave_room
Close Room Settings upon Leave Room
2019-05-12 18:46:49 -06:00
Travis Ralston 76f37d691d
Merge pull request #2953 from matrix-org/t3chguy/roomavatar
Command to change avatar for a single room, including upload of mxc res
2019-05-12 18:46:06 -06:00
Michael Telatynski 9f9a245af1 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 17:14:30 +01:00
Michael Telatynski d9b03b0196 fix i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 16:42:13 +01:00
Michael Telatynski 4c8593a91f Add i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 16:40:27 +01:00
Michael Telatynski 8bd45ce893 add /rainbow and /rainbowme Slash Commands
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 16:36:43 +01:00
Michael Telatynski 3cd9c152c2 Check permission to invite before showing invite buttons/disable them
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-11 19:45:24 +01:00
Michael Telatynski 0530a64f19 Fix invite via MemberInfo. Thank U JetBrains for solving this one for me <3
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-11 18:46:13 +01:00
Michael Telatynski 249f3d972b Close Room Settings upon Leave Room
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-10 20:58:32 +01:00
Michael Telatynski 5cb0a81565 Change roomavatar to myroomavatar and roomnick to match, leaving alias
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-10 20:28:28 +01:00
Travis Ralston 3161682836
Merge pull request #2804 from matrix-org/devtools_serverlist
Add View Servers in Room to Devtools
2019-05-10 11:32:17 -06:00
J. Ryan Stinnett 33513a95d7 Change to `componentDidUpdate` to process first reaction
This changes to "did update" and also calls the reaction change handler to
ensure that we update the state of my reactions (to know which were sent by
you).
2019-05-10 17:59:17 +01:00
J. Ryan Stinnett dc4fccd291 Send and redact reaction events
This updates both the reaction row and action bar UIs to send and redact
reaction events as appropriate based on user interactions.

Fixes https://github.com/vector-im/riot-web/issues/9574
Fixes https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 39bd0d8bb3 Listen for additional reactions in existing collection
The various reaction UI bits will now listen for `Reactions.add` for new
reactions just like with redactions.

Part of https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 37d2f60045 Listen for reaction collections when they are created
The `EventTile` for events without reactions now use `Event.relationsCreated` to
listen for a future time where they come in to being.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett ce35741030 Remove redundant `key` vs. `content` in `ReactionDimension`
This simplifies `ReactionDimension` by using the emoji string everywhere instead
of keeping a separate text string as well. It should improve readability as
well, as the reaction events also have a field `key` which was the emoji
content, which was easy to confuse.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 6a59143ffb Update reactions when redacted
This updates the reaction state in the reaction row and action bar when a
reaction is redacted.

Part of https://github.com/vector-im/riot-web/issues/9574
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 8fdb59a909 Use basic read path from JS SDK for reactions
This displays existing reactions correctly in the action bar and reaction row,
but it doesn't yet update after a new reaction is sent.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 8903f65fcb Enable client-side aggregations for reactions
If reactions are enabled, we need to enable client-side aggregation in the
`MatrixClient` to access the data.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 74189b2164 Fix indentation in MessagePanel 2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 3beb70814c Fix indentation in TimelinePanel 2019-05-10 17:19:27 +01:00
Michael Telatynski cd5a460b2b Iterate PR based on feedback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-09 22:30:45 +01:00
Michael Telatynski 16c027dc61 Merge branches 'develop' and 'devtools_serverlist' of github.com:matrix-org/matrix-react-sdk into devtools_serverlist 2019-05-09 22:27:37 +01:00