Commit graph

2414 commits

Author SHA1 Message Date
Mark Haines
dc679a8eca Fix gif hoverover 2016-11-04 18:41:05 +00:00
Mark Haines
4214c67f8f Pass the decryptedUrl to the MFileBody so that it doesn't need to decrypt it itself. 2016-11-04 18:20:20 +00:00
Mark Haines
1529396ef5 Make everything use MFileBody for downloads, ensure that encrypted attachments are actually downloaded 2016-11-04 18:09:12 +00:00
Mark Haines
8f778f54fd Use data:// URI rather than blob: URI to avoid XSS 2016-11-04 15:39:39 +00:00
Mark Haines
6ea0085290 Decrypt m.file attachments 2016-11-04 14:00:26 +00:00
Mark Haines
94bfe31857 Decrypt m.audio attachments 2016-11-04 13:45:00 +00:00
Mark Haines
91123431dd Fix unencrypted video thumbnail 2016-11-04 13:13:25 +00:00
Mark Haines
71c002d588 Remove spurious TODO 2016-11-04 13:08:17 +00:00
Mark Haines
48cfd4f399 Decypt m.video events 2016-11-04 13:05:34 +00:00
Mark Haines
b6653dd0ed Move decryptFile into a utility function so that it can be shared between different components 2016-11-04 12:46:45 +00:00
Mark Haines
12fc70c671 Include the mimetype with the file info. Store the objectURL in state so that it can be used normally by the exising templates 2016-11-04 11:52:47 +00:00
David Baker
04c27205a3 Make room alias & user ID links matrix.to links 2016-11-04 11:38:28 +00:00
David Baker
f301e55b6e Merge remote-tracking branch 'origin/develop' into rav/memberinfo_use_client_from_context 2016-11-04 10:54:32 +00:00
David Baker
da10660c86 Merge remote-tracking branch 'origin/develop' into rav/add_client_to_context 2016-11-04 10:35:41 +00:00
Richard van der Hoff
cb5b311e44 Move saveScrollState into RoomView
It fits much more naturally here than in LoggedInView.
2016-11-04 09:28:35 +00:00
Richard van der Hoff
ab7007784f Make MemberInfo use the matrixclient from the context
An arbitrary component to demonstrate how this works
2016-11-03 19:05:48 +00:00
Richard van der Hoff
d3f20e1d9d Add the MatrixClient to the react context
Because that's the reacty way
2016-11-03 19:02:27 +00:00
Richard van der Hoff
f85a37c667 Factor out LoggedInView from MatrixChat
The idea here is to make a layer which sits around for as long as we have a
valid MatrixClient. Also it makes a plausible split for the render of
MatrixChat, even if they are much too tightly bound for now.
2016-11-03 18:59:32 +00:00
David Baker
842b5aed56 The variable is called roomId here 2016-11-03 17:13:02 +00:00
Mark Haines
e949d91162 Handle decryption errors 2016-11-03 16:39:20 +00:00
David Baker
8cafe4936d Merge remote-tracking branch 'origin/develop' into dbkr/platform_version 2016-11-03 11:51:06 +00:00
David Baker
d408b7c180 Fix copyright 2016-11-03 11:47:57 +00:00
David Baker
5ae4228bfe Merge remote-tracking branch 'origin/develop' into dbkr/platform_version 2016-11-02 19:45:40 +00:00
David Baker
743e54f9bb Specify promise arg 2016-11-02 19:23:09 +00:00
David Baker
bd3fa6a7c5 Move version specific stuff to vector 2016-11-02 17:44:57 +00:00
David Baker
920e3346dc Move Notifications into Platform
Also add support for clearing notifications if the Platform
supports it.
2016-11-02 17:35:31 +00:00
Richard van der Hoff
b057577b15 Merge branch 'develop' into dbkr/platform_version 2016-11-02 16:34:43 +00:00
Mark Haines
e0cea74c7e Encrypt attachments in encrypted rooms, decrypt image attachments when displaying them 2016-11-02 16:26:10 +00:00
David Baker
29bdf992ff s/fir/for/ 2016-11-02 16:15:35 +00:00
David Baker
3c4370c180 Move 'new version' support into Platform
Also adds support for the platform providing a changelog
2016-11-02 15:58:17 +00:00
David Baker
f433f9ca32 Move platform-specific functionality into Platform
Platform classes are provided by the application via
PlatformPeg.set().
2016-11-02 15:10:21 +00:00
David Baker
a53c1958eb Merge pull request #527 from matrix-org/dbkr/highlight_async
Run highlight.js asynchronously
2016-10-27 09:57:23 +01:00
David Baker
974e4c05c8 Merge pull request #528 from matrix-org/rav/fix_tinting
Fix room tinting
2016-10-27 09:57:00 +01:00
Richard van der Hoff
6246fdee7c Fix room tinting
Looks like the cachebuster stuff in
https://github.com/vector-im/vector-web/pull/2515 broke room tinting. Add a
fix, along with some ranting.
2016-10-26 23:11:34 +01:00
David Baker
8cf273a460 Run highlight.js asynchronously
Move the very minimal logic of highlightDOM into TextualBody
because then we can avoid scheduling a lot of timeouts which
would ultimately do nothing (ie. any messages that don't have code
blocks).
2016-10-26 18:41:28 +01:00
David Baker
8395717f9b Merge pull request #525 from matrix-org/dbkr/fix_spin_on_join
Fix CPU spin on joining rooms
2016-10-26 15:46:42 +01:00
David Baker
32ebd8083b Stray comma 2016-10-26 15:32:09 +01:00
David Baker
e5a770a373 Don't send read receipt if user has logged out 2016-10-26 13:19:36 +01:00
David Baker
a2eb0a9cf0 Fix CPU spin on joining rooms
Ratelimit roomheader's updates and move some other things into
rate limited functions.
2016-10-26 13:09:53 +01:00
David Baker
923d2264dd Ignore components with no default export
InteractiveAuthEntryComponents is not a single component and
doesn't really fit into the structure: ignore it, otherwise
we crash when loading the skin.
2016-10-17 16:24:09 +01:00
Aviral Dasgupta
022eb575d9 Upgrade to babel6 and enable some presets. 2016-10-17 16:23:25 +01:00
Richard van der Hoff
4f901f1894 Keyboard shortcuts to mute microphone/camera
Same as hangouts: ctrl-d for mute microphone; ctrl-e to mute camera.
2016-10-17 14:13:56 +01:00
David Baker
3f067cbdf6 Give our input fields names
Otherwise browsers' 'Remember Password' feature has to guess
badly and ends up putting the login username / password in the
first two password reset fields which is a bit odd.
2016-10-14 15:34:44 +01:00
David Baker
920f498925 Merge pull request #517 from matrix-org/rav/interactive_auth_on_device_delete
Interactive auth for device delete
2016-10-12 18:31:38 +01:00
David Baker
ef22ba1f39 Merge pull request #516 from matrix-org/rav/interactive_auth_dialog
InteractiveAuthDialog
2016-10-12 18:27:23 +01:00
Richard van der Hoff
999a9e34b9 Merge pull request #514 from matrix-org/dbkr/prevent_email_spam
Prevent spamming emails by reusing client secret
2016-10-12 14:40:39 +01:00
Richard van der Hoff
1e683427da TODO comments on the registration flow
Add some notes to Signup and the Registration component that it would be nice
to factor out some common code someday.
2016-10-12 14:27:21 +01:00
Richard van der Hoff
1a81397d31 InteractiveAuthDialog
A dialog which will take the user through an interactive-auth process
2016-10-12 08:23:28 +01:00
Richard van der Hoff
5c18a9ccca Interactive auth for device delete 2016-10-12 08:23:08 +01:00
Richard van der Hoff
eb36509620 Refactor CaptchaForm to put less logic in signupstages
A bunch of work being done in the Recaptcha signupstage makes more sense in
the CaptchaForm; let's move it.
2016-10-11 18:57:51 +01:00
David Baker
c45b076df9 More commentary 2016-10-11 18:13:26 +01:00
David Baker
6ffb7efc9b Prevent spamming emails by reusing client secret
Generate a client secret in the Signup class (if we don't already
have one) and re-usae it for subsequent attempts to register,
that way the IS can honour the sendAttempt flag and not re-send
the email if we're just retrying and requestToken becomes
idempotent.
2016-10-11 18:08:18 +01:00
Richard van der Hoff
78c3d5943a Fix a load of warnings in the tests
Stub things out to make the tests not throw warnings, so we can see the actual
problems.
2016-10-11 14:20:40 +01:00
David Baker
b62fb50619 Add some docs for the lifetime of Signup 2016-10-11 11:58:10 +01:00
David Baker
30319d8e44 Fix registration retry
We need to clear the current stage & start from the beginning
again when we start a new registration attempt.
2016-10-11 11:12:02 +01:00
David Baker
55d14d2adc Fix registration
null check
2016-10-11 10:48:44 +01:00
David Baker
acf76c2e28 Fix bug where riot would keep requesting tokens
We 'activeStage' is an object: we need to check the type
2016-10-11 10:18:40 +01:00
David Baker
3756add402 Merge pull request #502 from matrix-org/dbkr/join_3p_location
Move 'show join button' functionality out
2016-10-05 14:00:14 +01:00
Matthew Hodgson
9d303712f2 more s/Vector/Riot/ 2016-10-03 10:18:43 +01:00
David Baker
91771ec17d Ce n'est pas Python 2016-10-01 10:34:21 +01:00
David Baker
6abf6c9ec0 Merge pull request #505 from matrix-org/dbkr/dont_replacestate
Fix version going blank after logging in
2016-09-30 14:32:01 +01:00
David Baker
be99f17ee0 Oops, right variable 2016-09-30 14:05:01 +01:00
David Baker
8aeb0cfb68 Dedicated function for resetting screen state 2016-09-30 11:56:32 +01:00
David Baker
c41a8da4be Argh, there's more 2016-09-30 11:40:27 +01:00
David Baker
2f7366cb8a Comment state fields 2016-09-30 11:37:50 +01:00
Richard van der Hoff
dca19a4940 Merge pull request #506 from matrix-org/dbkr/sign_in_not_log_in
Use 'Sign In' / 'Sign Out' universally
2016-09-30 11:30:00 +01:00
Richard van der Hoff
302074c71f Merge pull request #504 from matrix-org/dbkr/fix_login_if_joined
Prevent error when clicking 'log in'
2016-09-30 11:04:18 +01:00
Matthew Hodgson
ca5204c3f8 fix collapsed tooltip - https://github.com/vector-im/vector-web/issues/2381 2016-09-30 00:17:52 +01:00
David Baker
d5af2d2c52 Use 'Sign In' / 'Sign Out' universally
Rather than a mix of 'sign in/out' and 'log in/out'
2016-09-29 17:38:52 +01:00
David Baker
8cbddfcf28 Fix version going blank after logging in
Don't use replaceState in MatrixClient: there's lots of stuff in
MatrixClient's state now (including the app version) so replacing
the entire state doesn't really make sense (and also blows away
all of the nice defaults we set in getInitialState). Instead,
setState of the things we actually care about wherever we used
replaceState.

Also add a couple of state variables to getInitialState that were
missing.

Fixes https://github.com/vector-im/vector-web/issues/2322
2016-09-29 17:23:07 +01:00
David Baker
7b28dde263 Prevent error when clicking 'log in'
If you joined a room before clicking 'log in', it would throw an
exception here and break.
2016-09-29 16:57:10 +01:00
David Baker
60ce49910a Merge pull request #497 from matrix-org/dbkr/richtext_use_markdown_wrapper
Make RTE mode use the new Markdown wrapper class
2016-09-29 15:33:18 +01:00
David Baker
9a633ee449 Move 'show join button' functionality out
And have it as a prop to the directory search box instead, so the
room directory can do more complex logic.
2016-09-29 15:05:15 +01:00
David Baker
66ef1e8156 Merge pull request #501 from matrix-org/dbkr/get_hs_name
Add 'getHomeServerName' util to client peg
2016-09-28 10:22:11 +01:00
David Baker
4942f4f35c Typo 2016-09-28 10:17:47 +01:00
Matthew Hodgson
b366973151 let anyone create aliases - fixes https://github.com/vector-im/vector-web/issues/1585 2016-09-27 23:39:25 +01:00
David Baker
c7ad9bfdad Add 'getHomeServerName' util to client peg 2016-09-27 19:38:10 +01:00
David Baker
b9576754e6 Nomenclature 2016-09-27 14:50:18 +01:00
Richard van der Hoff
ea25e48ccb Merge pull request #499 from matrix-org/dbkr/fix_markdown_links
Fix markdown link syntax
2016-09-27 11:57:03 +01:00
Richard van der Hoff
e403bcd770 Merge pull request #500 from matrix-org/dbkr/linkify_fail_fast
Fail hard & fast if linkifyjs version is wrong
2016-09-27 11:29:39 +01:00
Richard van der Hoff
30ce35c3b4 Merge pull request #498 from matrix-org/dbkr/fast_lgm
Bring back the little green men without slowness
2016-09-27 11:28:48 +01:00
David Baker
0448dca832 Fail hard & fast if linkifyjs version is wrong
Rather than carrying on an ending up with undefineds deep within the bowels of linkifyjs when we try to linkify a room alias.
2016-09-27 10:38:01 +01:00
David Baker
2be1cc9f85 Give DMRoomMap an explicit makeShared
Otherwise it will hang on to the old state client on logout.
2016-09-27 09:56:31 +01:00
David Baker
9bffd8da75 Fix markdown link syntax 2016-09-26 20:09:36 +01:00
David Baker
690309adfc Bring back the little green men without slowness
Introduces a singleton DMRoomMap that subscribes to account data to keep itself up to date so we don't have to keep doing the map inversion for each room tile.
2016-09-26 18:02:14 +01:00
David Baker
2e1644877d Merge pull request #496 from matrix-org/dbkr/directory_search_box
Directory search join button
2016-09-26 15:38:45 +01:00
David Baker
ba090a1198 Trailing .+ was redundant 2016-09-26 15:13:57 +01:00
David Baker
9333f91533 Give react callbacks underscores too 2016-09-26 14:29:12 +01:00
David Baker
2dd0165bfc Correct regex for hash at the start 2016-09-26 14:24:35 +01:00
David Baker
bbfc05b0c0 Fix name of text emote sending & fix tests 2016-09-26 10:20:56 +01:00
Matthew Hodgson
40ba1ff5aa disable LGM badges for DMs temporarily - see https://github.com/vector-im/vector-web/issues/2343 2016-09-24 00:43:46 +01:00
David Baker
bf037ed6c7 Add comment 2016-09-23 19:09:32 +01:00
David Baker
db3f0d298a Make RTE mode use the new Markdown wrapper class
Equivalent of https://github.com/matrix-org/matrix-react-sdk/pull/492 for rich text mode
2016-09-23 18:50:25 +01:00
David Baker
fa193e775a Implement join button appearing
Also switch input to controlled so we re-render when it changes so we can show/hide the join button
2016-09-23 16:34:47 +01:00
David Baker
eb5b175213 Layout to support less hardcoded CSS 2016-09-23 15:58:11 +01:00
David Baker
b1e4c911eb WIP omnipresent join button 2016-09-23 15:25:38 +01:00
David Baker
6281d76ade Merge remote-tracking branch 'origin/develop' into dbkr/directory_search_box 2016-09-23 14:43:13 +01:00
Richard van der Hoff
18cbd452b0 Merge pull request #495 from matrix-org/dbkr/irc_links
Fix links to IRC rooms
2016-09-23 14:31:30 +01:00
David Baker
d0a15975c8 Merge pull request #492 from matrix-org/dbkr/make_markdown_less_aggressive
Make markdown less aggressive
2016-09-23 14:31:20 +01:00
David Baker
90c9d51c7d Typos 2016-09-23 14:15:48 +01:00
David Baker
2120963c7a More linkifier fixes
* Accept underscores in usernames
 * Accept usernames & room aliases on localhost
 * Accept #localhost:foo.com and @localhost:foo.com
2016-09-23 14:02:14 +01:00
David Baker
fae9b048dd Merge remote-tracking branch 'origin/develop' into dbkr/irc_links 2016-09-23 13:50:03 +01:00
David Baker
eeac0619f4 reskindex 2016-09-23 13:49:35 +01:00
David Baker
61b48a5b1a Add component for the directory search box 2016-09-23 13:48:24 +01:00
Richard van der Hoff
dd2da20031 Add the deviceId back to memberdeviceinfo
It was removed by @ara4n in 5fa5489, but it's still useful!
2016-09-22 19:28:50 +01:00
Richard van der Hoff
2f7b4f74fd Move the device verification buttons to their own class
Instead of pulling in the whole of MemberDeviceInfo into EncryptedEventDialog
for utterly no reason and breaking everything
2016-09-22 19:24:09 +01:00
David Baker
6ba20ec012 Better logic for wrapping in p tags or not 2016-09-22 18:57:46 +01:00
David Baker
de0c92dadf Remove unused code 2016-09-22 18:37:14 +01:00
David Baker
ca240b0b85 Don't wrap everything in p tags
Preserves the old behaviour of not wrapping everything in p tags,
but also returns valid markup if the resulting markdown contains
multiple paragraphs (previously it stripped the <p> from the start
and the </p> from the end, leaving closing and opening paragraph tags
in the middle of the returned markup).

Also turn on the 'xhtml' option so marked uses self-closing tags
for br's, hr's and so forth.
2016-09-22 18:17:02 +01:00
David Baker
0eddea1937 Disable link detection, as per comment 2016-09-22 17:51:34 +01:00
David Baker
6c7259eec8 Better detection of when input contains markdown 2016-09-22 17:18:12 +01:00
David Baker
898fbcee30 Merge pull request #489 from aviraldg/fix-2128
Force-hide autocomplete after sending message.
2016-09-22 10:49:23 +01:00
David Baker
c228fac6d9 Merge pull request #488 from aviraldg/fix-2180
force old selection state after creating entities
2016-09-22 10:49:10 +01:00
David Baker
77c4cd337e Merge branch 'develop' into dbkr/irc_links 2016-09-22 09:50:18 +01:00
David Baker
5fff3bdf24 Document brokenness 2016-09-21 16:25:18 +01:00
David Baker
8ae210cbe2 Revert #333
Revert https://github.com/matrix-org/matrix-react-sdk/pull/333/files since sanitizer blindly allows urls with no scheme, meaning  // links can be used to fetch images over whatever scheme you serve vector over (ie. normally http/https).
2016-09-21 16:19:41 +01:00
David Baker
59117f1905 Fix linkifying rooms with underscores, try 2
Fixes https://github.com/vector-im/vector-web/issues/500
2016-09-21 14:11:43 +01:00
David Baker
b83d1db24a Missed some Vectors 2016-09-21 14:03:35 +01:00
David Baker
5fa67d9617 Merge pull request #490 from matrix-org/rav/encrypted_event_dialog
EncryptedEventDialog updates
2016-09-21 10:52:22 +01:00
Richard van der Hoff
2842506b27 EncryptedEventDialog updates
* Separate info on the event from info on the device, and add a couple of new
   fields.

 * Use MatrixClient.getEventSenderDeviceInfo (requires
   https://github.com/matrix-org/matrix-js-sdk/pull/214)

 * Don't force a download of the device keys every time we open the dialog

 * Fix a react warning if the device query takes a while
2016-09-21 10:36:23 +01:00
David Baker
5b216df28e Not joined members any more 2016-09-21 09:57:17 +01:00
Aviral Dasgupta
f171985e4c Fix click-to-complete in RTE
Closes vector-im/vector-web#2179
2016-09-21 07:40:48 +05:30
Aviral Dasgupta
44217422d0 Force-hide autocomplete after sending message.
Fixes vector-im/vector-web#2128
2016-09-21 07:28:07 +05:30
Aviral Dasgupta
ea1419ff78 force old selection state after creating entities
Fixes vector-im/vector-web#2180
2016-09-21 07:20:50 +05:30
David Baker
d1a5e54a69 Check if a room looks like a DM rooms on joining
and mark it as one if so.

Also change the heuristic to only count rooms with 2 total members rather than 2 joined members, otherwise this is going to mark any room as a DM if someone creates a room, invites a bunch of people and you happen to be first to join.
2016-09-20 17:59:46 +01:00
David Baker
b66c449bd7 Comment typo
and out comment in more sensible place
2016-09-20 16:08:11 +01:00
Matthew Hodgson
a2904ad33f fix 'new chat' layout bug 2016-09-20 10:06:57 -04:00
David Baker
746aad9a18 Oops, missed one 2016-09-19 14:47:08 +01:00
David Baker
c40a7a696e Merge pull request #485 from matrix-org/dbkr/riot
Rebrand
2016-09-19 13:36:55 +01:00
David Baker
31753fc3f3 Rebrand 2016-09-19 13:26:59 +01:00
Matthew Hodgson
b348cf1244 actually apply scalar CSS :( 2016-09-19 07:01:46 -04:00
Kegan Dougal
993bb5c89d Pass close_scalar postMessage action through to the dispatcher 2016-09-19 10:38:42 +01:00
Matthew Hodgson
7691559e01 more disclaimer 2016-09-17 22:07:43 +01:00
Matthew Hodgson
53bb6b96ce don't warn when disabling crypto 2016-09-17 21:56:10 +01:00
Matthew Hodgson
5fa5489bbd disambiguate devices by ID in memberinfo 2016-09-17 20:12:56 +01:00
Matthew Hodgson
6e57faecb0 trim whitespace when adding to list 2016-09-17 16:14:02 +01:00
Matthew Hodgson
da85df9d1a let comma trigger autocomplete. hook up backspace. search displaynames that include space 2016-09-17 15:21:08 +01:00
Matthew Hodgson
88273e8065 move admin tools to the top 2016-09-17 15:07:41 +01:00
Matthew Hodgson
cf1b1442eb no labs for guests 2016-09-17 14:29:40 +01:00
Matthew Hodgson
0046ae50b5 switch to 3-digit formatting for counts 2016-09-17 02:39:19 +01:00
Matthew Hodgson
c51e6907f0 fix spinner on createroom 2016-09-17 02:19:32 +01:00
Matthew Hodgson
026a2e6c7c fix guest login when in a RoomView 2016-09-17 02:19:27 +01:00
Matthew Hodgson
671eacaac7 fix self/this crash, and don't let guests invite 2016-09-17 02:05:27 +01:00
Matthew Hodgson
736b6dac7a default labs correctly :/ 2016-09-17 00:54:56 +01:00
Matthew Hodgson
96fd460cc8 fix import 2016-09-16 23:29:35 +01:00
Matthew Hodgson
cfba600961 Merge pull request #482 from aviraldg/fix-2165
Replace <p>s with <br/>s consistently
2016-09-16 22:46:41 +01:00
Matthew Hodgson
00d2fd471d Merge pull request #483 from matrix-org/dbkr/scrollpanel_start_at_bottom
Add 'startAtBottom' flag
2016-09-16 22:38:21 +01:00
Matthew Hodgson
c322a191af turn on E2E and Scalar by default 2016-09-16 18:36:03 +01:00
Matthew Hodgson
08543a66c4 fix race between setting canonical alias and creating aliases 2016-09-16 18:01:14 +01:00
David Baker
d0fd6e985f Document paranoia on the startAtBottom param 2016-09-16 17:48:08 +01:00