David Baker
5f24fc3e5d
Fix merge fail
2017-01-24 13:56:22 +00:00
David Baker
f1f6fc809c
Merge remote-tracking branch 'origin/develop' into dbkr/user_search_feedback
2017-01-24 11:26:09 +00:00
David Baker
c47d3e04a5
Merge pull request #621 from matrix-org/dbkr/add_searching_known_users
...
Add 'searching known users' to the user picker
2017-01-24 10:51:23 +00:00
Luke Barnard
a06ecb87bc
Hide RoomStatusBar when it displays nothing ( #615 )
...
Use CSS class `mx_RoomView_statusArea_expanded` to indicate an expanded status bar. Without this, the status bar may be hidden from view. A 10s debounce will prevent it from bouncing frequently.
2017-01-23 16:01:39 +01:00
David Baker
3cfa539230
Merge pull request #637 from matrix-org/luke/fix-typing-avatars-displays-me
...
Fix typing avatars displaying "me"
2017-01-23 12:43:34 +00:00
David Baker
506d37bbad
Merge remote-tracking branch 'origin/develop' into dbkr/add_searching_known_users
2017-01-23 11:34:44 +00:00
David Baker
f64a4e0ecb
Merge pull request #623 from matrix-org/dbkr/user_search_word_boundary
...
Make user search do a bit better on word boundary
2017-01-23 11:31:26 +00:00
Luke Barnard
d97fc0a99a
Fix typing avatars displaying "me"
2017-01-23 10:25:33 +00:00
Matthew Hodgson
7bc3fc8696
make UnknownDeviceDialog work again, other than the mess of vector-im/vector-web#3020
2017-01-22 01:28:43 +01:00
Matthew Hodgson
d9c0513ee2
make it work
2017-01-21 22:49:29 +01:00
Matthew Hodgson
39c122fe4f
fix local storage idiocy
2017-01-21 22:27:55 +01:00
Matthew Hodgson
532f4e59c9
literally blindly add verification buttons
2017-01-21 19:06:15 +01:00
Matthew Hodgson
071e364be2
improve the verify warning if blacklisting is unabled
2017-01-21 17:56:48 +00:00
Matthew Hodgson
c618880af9
oops
2017-01-21 17:43:46 +00:00
Matthew Hodgson
3071fc0ddc
UI for blacklisting unverified devices per-room & globally
...
(written blind; untested as yet)
2017-01-21 17:39:39 +00:00
Matthew Hodgson
2e15e8f9b4
very barebones support for warning users when rooms contain unknown devices
2017-01-21 05:13:36 +00:00
Matthew Hodgson
937f13d578
fix a bunch of dark-theme buttons
2017-01-20 21:00:22 +00:00
Luke Barnard
0c5762b91d
Implement "someone is typing" avatars ( #631 )
...
When users are typing, their avatars can be seen instead of "..." in the RoomView StatusBar
2017-01-20 17:51:35 +01:00
David Baker
18d4d3392a
Fix a bunch of linting errors
...
eslint --fix and a few manual ones
2017-01-20 14:22:27 +00:00
Richard van der Hoff
a16aeeef2a
Temporarily add more logging, to try to catch failures on travis
2017-01-20 13:06:06 +00:00
Richard van der Hoff
2d060c8d2e
Fix error display in account deactivate dialog
2017-01-20 11:04:47 +00:00
Matthew Hodgson
b76b0f755d
fix context menu bg
2017-01-20 02:47:47 +00:00
David Baker
bd0706f103
Merge pull request #626 from matrix-org/dbkr/sanitize_chatinvitedialog
...
Sanitize ChatInviteDialog
2017-01-19 18:23:36 +00:00
David Baker
afa384c4f3
Use null instead of false
2017-01-19 18:13:27 +00:00
Richard van der Hoff
2637ae3af3
Merge pull request #630 from matrix-org/rav/fix_themes
...
(hopefully) fix theming on Chrome
2017-01-19 17:34:36 +00:00
David Baker
a2ff1cd8e6
Factor out adding the input field to the list
2017-01-19 17:03:16 +00:00
David Baker
ee1f6c772e
Remove duplicate case handled above
...
And fix typo where it was handled
2017-01-19 16:50:09 +00:00
David Baker
2a08abaa95
Keep old behaviour of submitting on enter
...
if input is empty
2017-01-19 16:35:40 +00:00
David Baker
d8bcc1f067
Merge remote-tracking branch 'origin/develop' into dbkr/sanitize_chatinvitedialog
2017-01-19 16:26:59 +00:00
Richard van der Hoff
ba2460aef4
Merge pull request #618 from matrix-org/rav/async_dialog
...
Allow Modal to be used with async-loaded components
2017-01-19 16:08:30 +00:00
Richard van der Hoff
a88f9fdd73
(hopefully) fix theming on Chrome
...
Jump through some hoops to make Chrome behave sensibly on non-default themes.
2017-01-19 15:36:57 +00:00
Kegsay
89fa47dc26
Merge pull request #622 from kyrias/commonmark-fix-escaping
...
Fix escaping markdown by rendering plaintext
2017-01-19 13:39:07 +00:00
David Baker
9e0c7a11d0
Merge pull request #628 from matrix-org/luke/feature-team-reg-auto-join-rooms
...
Implement auto-join rooms on registration
2017-01-19 11:44:37 +00:00
Johannes Löthberg
9c1c657a1e
Markdown: delete remaining pre-split relics
...
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-19 11:55:36 +01:00
David Baker
b58a67f6b1
Add more punctuation. Also s/let/const/
2017-01-19 10:51:43 +00:00
David Baker
242f5e0301
PR feedback
...
* Doc & properly indent escapeRegExp
* Add close bracket to the list of punctuation chars we search after
2017-01-19 10:24:21 +00:00
lukebarnard
e9eb38fd74
Update propTypes and do null checks
2017-01-19 11:05:08 +01:00
lukebarnard
e06dd6e34a
Implement auto-join rooms on registration
...
Also: This fixes registration with a team: only the email localpart was being used to register.
When a registration is successful, the user will be joined to rooms specified in the config.json teamsConfig:
"teamsConfig" : {
"supportEmail": "support@riot.im",
"teams": [
{
"name" : "matrix",
"emailSuffix" : "matrix.org",
"rooms" : [
{
"id" : "#irc_matrix:matrix.org",
"autoJoin" : true
}
]
}
]
}
autoJoin can of course be set to false if the room should only be displayed on the (forthcoming) welcome page for each team, and not auto-joined.
2017-01-19 10:56:04 +01:00
Matthew Hodgson
4e5689082d
correctly load synced themes without NPE
2017-01-18 20:06:54 +00:00
Matthew Hodgson
4df968ecdf
fix css snafu
2017-01-18 20:06:44 +00:00
David Baker
7b7728c93a
Make behaviour of ChatInviteDialog more consistent
...
* Pressing enter now always adds whatever was in the input box
to the invite list, if it's a valid address (previously it
added it to the list of it was a search result but submitted
the form straight away if there were no results).
* Remove isValidAddress as it was only used in the context of
testing whether its return value was true or null (where null
meant "unsure") so just use getAddressType instead.
2017-01-18 18:32:38 +00:00
Johannes Löthberg
30bd01cdf2
Markdown: Split up render function into toHTML/toPlaintext
...
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-18 19:29:11 +01:00
David Baker
f105ec2794
Attempt to sanitize ChatInviteDialog a bit
...
* Use binds rather than onFoo functions which aren't actually
handler functions themselves but return them
* Rename onKeyUp to moveSelectionDown etc,, reserving onKeyUp
for "a key has been released" rather than, "the up arrow key
has been pressed"
2017-01-18 17:51:39 +00:00
Matthew Hodgson
fc63067237
improve commentary
2017-01-18 16:36:27 +00:00
David Baker
de621902fc
Better feedback in invite dialog
...
Show feedback if you enter a valid but unknown email address
or mxid
Fixes https://github.com/vector-im/riot-web/issues/2933
2017-01-18 15:21:50 +00:00
Matthew Hodgson
3d30553b7f
review fixes, plus unbreak to work with new webpack layout
2017-01-18 14:06:47 +00:00
Matthew Hodgson
a0bbe3a306
Merge branch 'develop' into matthew/postcss
2017-01-18 12:52:59 +00:00
Luke Barnard
5ef5204c8c
Implement simple team-based registration ( #620 )
...
* Implement simple team-based registration
Config required goes in the `teams` top-level property in config.json. This consists of an array of team objects:
```json
{
"name": "University of Bath",
"emailSuffix": "bath.ac.uk"
}
```
These can be selected on registration and require a user to have a certain email address in order to register as part of a team. This is for vector-im/riot-web#2940 . The next step would be sending users with emails matching the emailSuffix of a team to the correct welcome page as in vector-im/riot-web#2430 .
2017-01-18 12:48:28 +01:00
lukebarnard
5dd1512ff2
Move aggregation code to dedicated function
2017-01-18 10:59:19 +01:00
lukebarnard
484549e50b
Refactor a few things and document everything
2017-01-18 10:26:25 +01:00
Johannes Löthberg
c819b433a2
Make old message composer use new markdown
...
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 20:37:27 +01:00
Matthew Hodgson
8288eb730c
a rather hacky implementation of theme switching
2017-01-17 19:13:23 +00:00
David Baker
a87e7d6617
Make user search do a bit better on word boundary
2017-01-17 18:17:51 +00:00
lukebarnard
3ba9f50873
Move functions around, remove redundancies, add docs
2017-01-17 19:07:45 +01:00
lukebarnard
9574a0b663
Remove pointless length guard
2017-01-17 18:56:57 +01:00
Johannes Löthberg
893a5c971f
Fix escaping markdown by rendering plaintext
...
We still need to parse "plaintext" messages through the markdown
renderer so that escappes are rendered properly.
Fixes vector-im/riot-web#2870 .
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 16:23:58 +01:00
David Baker
0b67fd5b4e
Add 'searching known users' to the user picker
...
So it's more obvious it's only finding people you've already seen
Fixes https://github.com/vector-im/riot-web/issues/2931
2017-01-17 14:48:50 +00:00
Matthew Hodgson
a18d94099e
switch to using <span/> for edit button
2017-01-17 14:11:15 +00:00
Matthew Hodgson
203172c886
typos
2017-01-17 14:11:01 +00:00
lukebarnard
45655f4de3
Modified desc for invitation rejections, withdrawals
2017-01-17 12:01:19 +01:00
lukebarnard
aa6e168505
Remove comment
2017-01-16 18:58:53 +01:00
lukebarnard
5ab287fa1a
Use pre-calculated displaynames to handle dupes
2017-01-16 18:57:49 +01:00
lukebarnard
a79dc886ba
Order sequences by occurance of the first event in each sequence
2017-01-16 18:46:17 +01:00
Richard van der Hoff
ac22803ba0
Allow Modal to be used with async-loaded components
...
Add Modal.createDialogAsync, which can be used to display asynchronously-loaded
React components. Also make EncryptedEventDialog use it as a handy
demonstration.
2017-01-16 17:18:38 +00:00
lukebarnard
4be444d524
Move shouldComponentUpdate
2017-01-16 15:12:00 +01:00
lukebarnard
82d6805a71
Canonicalise certain transition pairs, handle arbitrary consecutive transitions
...
Transition pairs joined,left and left,joined are now transformed into single meta-transitions "joined_and_left" and "left_and_joined" respectively. These are described as "joined and left", "left and rejoined".
Treat consecutive sequences of transitions as repetitions, and handle any arbitrary repetitions of transitions:
...,joined,left,joined,left,joined,left,...
is canonicalised into
...,joined_and_left, joined_and_left, joined_and_left,...
which is truncated and described as
... , joined and left 3 times, ...
This also works if there are multiple consecutive sequences separated by other transitions:
..., banned, banned, banned, joined, unbanned, unbanned, unbanned,...
becomes
... was banned 3 times, joined, was unbanned 3 times ...
2017-01-16 14:49:07 +01:00
lukebarnard
fb68fff536
Refactor renderCommaSeparated for reuse
2017-01-16 13:45:42 +01:00
Jani Mustonen
b323551f22
Adhered to code review
2017-01-13 19:36:41 +02:00
Jani Mustonen
5e013860ee
Definition for AccessibleButton
2017-01-13 19:36:41 +02:00
Jani Mustonen
959163f2ef
Proper accessible buttons
2017-01-13 19:36:41 +02:00
Jani Mustonen
041196d729
Added quick search functionality
2017-01-13 19:36:40 +02:00
Jani Mustonen
d2ff2715ce
Buttonified almost everything. Stylesheet is broken.
2017-01-13 19:36:40 +02:00
Jani Mustonen
8d79716421
Turned the links to buttons to comply with MDN's recommendations
2017-01-13 19:36:40 +02:00
Jani Mustonen
ad072cc179
Turned buttons from divs to links. Makes it possible for screen readers and hotkeys to recognize the buttons.
2017-01-13 19:36:40 +02:00
Luke Barnard
77ae041407
Order names by order of first events for users
2017-01-13 16:40:33 +00:00
Kegan Dougal
dcd0acb2b5
Review comments
2017-01-13 15:17:34 +00:00
Kegan Dougal
e196cfaf91
Show the error dialog when requests to PUT power levels fail
...
This is why I dislike Q.
2017-01-13 14:51:01 +00:00
Luke Barnard
d2d78919ce
Overhaul MELS to deal with causality, kicks, etc.
...
The MELS can now deal with arbitrary sequences of transitions per user, where a transition is a change in membership. A transition can be joined, left, invite_reject, invite_withdrawal, invited, banned, unbanned or kicked.
Repeated segments (modulo 1 and 2), such as joined,left,joined,left,joined will be handled and will be rendered as " ... and 10 others joined and left 2 times and then joined". The repeated segments are assumed to be at the beginning of the sequence. This could be improved to handle arbitrary repeated sequences.
2017-01-12 18:55:53 +00:00
Matthew Hodgson
cc8b3d4ba4
spell out email invites better
2017-01-12 13:46:19 +00:00
David Baker
1f96467145
Merge pull request #609 from matrix-org/luke/fix-join-part-collapsing-redacted-joins
...
Fix redacted member events being visible
2017-01-11 17:10:35 +00:00
Luke Barnard
baaf827c48
Use `getStateKey` instead of `getSender`
...
This makes sure that the kickee is not the user used for the MemberEventListSummary
2017-01-11 17:03:14 +00:00
Luke Barnard
6e2a75bbee
Fix redacted member events being visible
...
This was due to the `MemberEventListSummary` not ignoring redacted joins/leaves. This was also causing bug #2765 .
2017-01-11 11:27:07 +00:00
David Baker
13a5337e0f
Fix 'create account' link in 'forgot password'
...
Fixes https://github.com/vector-im/riot-web/issues/2853
2017-01-10 15:16:39 +00:00
Richard van der Hoff
42de77e588
Remove "Cannot re-join empty room" error
...
This is a lying error message. burn it with fire
2016-12-27 19:17:48 +00:00
Matthew Hodgson
e2e3bc0637
improve captcha warning
2016-12-24 18:40:20 +00:00
Matthew Hodgson
69b277b282
ask electron users to do captchas in a web browser.
...
This will happen anyway when they follow email verification links.
make captchas poll for success so if they are completed elsewhere, electron moves on
2016-12-24 03:15:30 +00:00
Matthew Hodgson
b1c4c759f4
blind fix for captcha on electron
2016-12-23 14:35:40 +00:00
Luke Barnard
2a63017372
Account for timezone in date separator calculation ( #595 )
...
* Account for timezone in date separator calculation
Decide on date separators using MatrixEvent.getDate(). This requires matrix-org/matrix-js-sdk#311
2016-12-22 17:54:30 +00:00
David Baker
fd44d9f4d6
Merge pull request #597 from matrix-org/dbkr/delete_threepid
...
Add support for deleting threepids
2016-12-22 15:31:34 +00:00
David Baker
8a3f2d9e91
Merge pull request #598 from matrix-org/dbkr/display_msisdn_threepid
...
Display msisdn threepids as 'Phone'
2016-12-22 15:28:09 +00:00
David Baker
a6fdbda011
Get variable name right
2016-12-22 15:26:08 +00:00
David Baker
98b22460ec
They're not all emails anymore
2016-12-22 15:03:24 +00:00
Daniel Dent
7c841a86ef
Unbranded error messages
2016-12-21 14:28:01 -08:00
David Baker
3dfffa385e
Display msisdn threepids as 'Phone'
...
rather than pretending only email exists
2016-12-21 18:56:50 +00:00
David Baker
5e10ec4ece
Add support for deleting threepids
2016-12-21 18:49:38 +00:00
Richard van der Hoff
4804fb3a1c
Revert "Fix performance issues with wantsDateSeperator"
...
This change broke timezone handling, so that date-separators are shown at the
wrong time of day.
This reverts commit b908e7ef29
.
2016-12-21 09:48:41 +00:00
Luke Barnard
2658cd09b5
Fix scroll jumping when a video is decrypted
...
Call the `onWidgetLoad` prop on MVideoBody to notify the scroll panel to keep it's position when the size of the video widget updates.
2016-12-20 12:33:07 +00:00
Matthew Hodgson
d0d056e308
hide read markers
2016-12-20 02:26:23 +00:00
Richard van der Hoff
b8c0fa507e
Merge pull request #590 from matrix-org/luke/fix-membereventlistsummary-performance
...
Improve the performance of MemberEventListSummary
2016-12-16 10:53:51 +00:00
Luke Barnard
7475056bb4
MELS component should update if there are fewEvents, effectively expanding the summary
2016-12-15 18:33:13 +00:00
Luke Barnard
6b52b247e7
Update comment on MELS key
2016-12-15 18:26:41 +00:00
Luke Barnard
88aeb6417e
Use the first member event ID or "initial" in the MELS key
2016-12-15 18:23:54 +00:00
Kegsay
71132c4610
Merge pull request #592 from matrix-org/kegan/bulk-reject-invites
...
Implement bulk invite rejections
2016-12-15 16:16:55 +00:00
Kegan Dougal
ec41fc284a
Null guard on componentWillUnmount
2016-12-15 16:13:09 +00:00
Luke Barnard
55f85befc1
Allow component to update if currently expanded or if about to collapse
2016-12-15 14:43:59 +00:00
Kegan Dougal
8a511ed54b
Add .done() to catch exceptions which may be thrown in setState
2016-12-15 14:17:29 +00:00
Luke Barnard
e7564f4dc5
Spelling
2016-12-15 13:16:36 +00:00
Luke Barnard
86739e7d1e
Simplify handling of only one member event
2016-12-15 13:15:00 +00:00
Kegan Dougal
8f42134d9f
Explain why binding
2016-12-14 16:04:20 +00:00
Luke Barnard
b908e7ef29
Fix performance issues with wantsDateSeperator
...
This was causing rendering of MemberEventListSummary to be quite slow. Instead of creating two date objects, just check to see if they represent timestamps that happened on different days.
2016-12-14 16:01:32 +00:00
Kegan Dougal
13dfe9ef0f
Implement bulk invite rejects
2016-12-14 16:00:50 +00:00
Luke Barnard
c07e5d4992
Improve the performance of MemberEventListSummary
...
- The MessagePanel now uses the same key for the MELS instances rendered so that entirely new instances are not created, they are simply passed new props (namely when new events arrive).
- MELS itself now uses `shouldComponentUpdate` so that it only updates if it is given a different number of events to previous or if it is toggled to expand.
2016-12-14 15:31:35 +00:00
Kegan Dougal
1d4591ce68
Add UI in UserSettings for bulk rejecting invites
2016-12-14 15:01:50 +00:00
Kegan Dougal
5d99d68a64
Show the full date and time if the receipt was sent days after the event
2016-12-09 11:43:23 +00:00
Kegan Dougal
49010c3e93
Refactor how 'readReceipts' are passed into EventTiles
...
Instead of passing a list of RoomMembers, pass a list of records with a
`roomMember` prop and a `ts` prop so we can display the timestamp on hover.
2016-12-09 11:24:10 +00:00
Kegan Dougal
bd7553d1ea
Add read receipt times to the hovertip of read markers
...
Fixes #2709 . Surprisingly, this data was never passed down to
ReadReceiptMarker.
2016-12-08 16:23:20 +00:00
Richard van der Hoff
587325b36c
Merge pull request #585 from matrix-org/dbkr/fix_exception_roomdir
...
Fix exception when clearing room dir search
2016-12-06 15:58:07 +00:00
David Baker
9e3c94edf4
Fix exception when clearing room dir search
...
Needed more isMounted checks after promises return.
2016-12-06 14:59:10 +00:00
David Baker
a3ab59832e
Give the search box field a name
...
Should fix https://github.com/vector-im/riot-web/issues/2462
2016-12-06 14:40:09 +00:00
David Baker
6777e07a41
Remove device name from crypto section
...
As it was getting it by assuming our device was the first one,
which is just not a valid assumption.
2016-12-05 20:03:43 +00:00
David Baker
8ffe14881e
Don't throw an exception entering settings page
...
if end to end encryption is disabled (eg. if you're a guest and
the server is too old to support e2e for guests).
2016-12-05 18:33:38 +00:00
Johannes Löthberg
f321c6c346
Strip (IRC) when clicking on username
...
Fixes vector-im/riot-web#2072 .
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2016-12-03 01:20:50 +01:00
Mark Haines
81e429eb14
Fix e2e attachment download by using iframes. ( #562 )
...
* Render attachments inside iframes.
* Fix up the image and video views
* Fix m.audio
* Comments, and only use the cross domain renderer if the attachment is encrypted
* Fix whitespace
* Don't decrypt file attachments immediately
* Use https://usercontent.riot.im/v1.html by default
* typos
* Put the config in the React context.
Use it in MFileBody to configure the cross origin renderer URL.
* Call it appConfig in the context
* Return the promises so they don't get dropped
2016-12-02 14:21:07 +00:00
Luke Barnard
5665a0ef37
Fix scroll jump on image decryption
...
`onWidgetLoad` is now being called when an image has been decrypted so that the ScrollPanel maintains its scroll position (whether it's stuckAtBottom or not). This attempts to fix https://github.com/vector-im/riot-web/issues/2624
2016-12-02 11:11:35 +00:00
Richard van der Hoff
c7fb83ed2d
s/block/blacklist for e2e
...
Fixes https://github.com/vector-im/vector-web/issues/2315
2016-11-29 18:48:43 +00:00
David Baker
21d65d2ad1
Fix the download icon on attachments
2016-11-25 23:19:20 +00:00
David Baker
8547d00f32
Don't default the page_type to room directory
...
As it breaks the behaviour of redirecting to /#/directory
2016-11-24 16:39:48 +00:00
David Baker
2aba646acd
Clear room alias etc. on logout
2016-11-24 14:58:37 +00:00
David Baker
0069393650
Go back to same room after logging in
2016-11-24 13:28:51 +00:00
David Baker
0bc4659fe0
Fix crash on logging in
...
If you arrived at the page via a link to a room.
Fixes https://github.com/vector-im/vector-web/issues/2634
2016-11-24 12:33:31 +00:00
Richard van der Hoff
6e6bcf8b78
Reinstate missing sections from the UserSettings
...
The 'devices' and 'cryptography' sections got removed from UserSettings by #566 .
2016-11-23 11:08:21 +00:00
Luke Barnard
42fc7b1b66
Use UNFILL_REQUEST_DEBOUNCE_MS constant, reset unfillDebouncer timeout reference.
2016-11-22 17:23:06 +00:00
Luke Barnard
d1a5d94916
Make the unpagination process less aggressive
...
This increases `UNPAGINATION_PADDING` (see the ASCII on ScrollPanel.js, `_getExcessHeight`), and also debounces unfilling requests made for 200ms. This forces unfilling requests not to be sent unless the next 200ms has no scrolling, effectively.
2016-11-22 16:47:56 +00:00
Richard van der Hoff
06f12b91b8
Merge pull request #566 from matrix-org/rav/remove_dead_labs_settings
...
Get rid of always-on labs settings
2016-11-21 10:38:06 +00:00
Richard van der Hoff
4476b09ce7
Get rid of always-on labs settings
...
If the setting is on by default, it's not much use as a Labs setting. The E2e
setting was only confusing everyone anyway.
2016-11-21 10:25:48 +00:00
Richard van der Hoff
03988015aa
Fix 'Quote' for e2e messages
...
Fixes https://github.com/vector-im/vector-web/issues/2612
2016-11-21 09:19:40 +00:00
Matthew Hodgson
2e691240ae
fix e2e disclaimer
2016-11-19 02:44:36 +02:00
Matthew Hodgson
8a5678efdd
boldify the preview bar click
2016-11-19 01:20:09 +02:00
Mark Haines
7cb3c0935b
Make the spinner smaller, don't decrypt files as eagerly ( #564 )
2016-11-18 20:08:26 +00:00
Luke Barnard
341175ea58
Fix pagination issue where recent events are lost ( #563 )
...
Fix pagination issue where recent events are lost
Scrolling up a few pages followed by scrolling down to the most recent events previously caused some events to go missing. A test has been modified in conjunction with this fix to make sure that this failure mode is tested for in future. This commit should fix the issue, and the most recent events should be paginated back in.
2016-11-18 11:15:14 +00:00
Richard van der Hoff
f3582edb99
Merge pull request #560 from matrix-org/luke/fix-join-part-collapsing-regressions2
...
Fix more membership change collapsing bugs
2016-11-16 16:33:18 +00:00
Luke Barnard
7e88f0083d
Fix more join-part collapsing regressions
...
Use the previous content of the first event known for a user in a block of membership changes. This means single events are not special cased.
2016-11-16 16:26:24 +00:00
Luke Barnard
3618b49982
Use new js-sdk public unpaginate
2016-11-16 16:10:23 +00:00
Luke Barnard
324448563a
If only one mevent, return than one
...
Also, the net change of nil is detected as having the first and last events being _different_. The summary should only include those that have their first and last events being the _same_ because that is a net change (within the block of member events).
2016-11-16 16:07:19 +00:00
Luke Barnard
beecbc7cd7
Fix join/part collapsing regressions ( #553 )
...
* Fix join/part collapsing regressions
* Simplify loop
* Explain e,e
* Explain return null in _renderSummary
* Kill it properly
* Move . to _renderSummary
* Only use the first and last events to decide whether a net change has occured
* Do not sort events by TS before summarising
* fix loop and comment
* remove data-number-events
* Better explanation comment in _renderSummary
* Less tortuous comment
2016-11-16 14:42:30 +00:00
Luke Barnard
b718f1542c
Fix infinite loop when there are a lot of invisible events ( #554 )
...
Instead of using a window of a fixed number of events, unpaginate based on the distance of the viewport from the end of the scroll range.
The ScrollPanel uses the scrollTokens to convey to its parent (the TimelinePanel, in this case) the point to unpaginate up to. The TimelinePanel then takes a chunk of events off the front or back of `this.state.events` using `timelineWindow.unpaginate`.
Fixes https://github.com/vector-im/vector-web/issues/2020
2016-11-16 14:25:52 +00:00
Mark Haines
6ccc825f0d
Cache the tinted SVGs for MFileBody as data URLs ( #559 )
...
* Use a list of callbacks for things that need tinting.
Rather than gutwrenching the internals of TintableSVG inside the Tinter.
* Share a data: url for the tinted download svg in MFileBody
* Check image exists before tinting
* Add comments
* Use fetch+DomParser rather than XMLHttpRequest
* Remove comment about XMLHttpRequest
2016-11-16 14:16:51 +00:00
David Baker
218ced0276
Merge pull request #557 from matrix-org/rav/show_padlock_on_unencrypted_room
...
Show an open padlock for unencrypted rooms
2016-11-16 13:03:52 +00:00
Mark Haines
595493e5bb
Clean up MFileBody.presentableTextForFile
2016-11-15 15:58:24 +00:00
David Baker
bb776c217d
Merge pull request #556 from matrix-org/rav/decrypt_after_keys_arrive
...
Update eventtiles when the events are decrypted
2016-11-15 14:56:21 +00:00
Richard van der Hoff
a3d4ed5aee
Show an open padlock for unencrypted rooms
...
Also, add a tooltip, and enlarge the img to 12px wide, because the open padlock
looked silly at 10px and they both look fine at 12px
2016-11-15 12:31:17 +00:00
David Baker
ec999f6fa1
Merge pull request #552 from matrix-org/rav/event_tile_withmatrixclient
...
Update EventTile to use WithMatrixClient instead of MatrixClientPeg
2016-11-15 11:25:48 +00:00
Mark Haines
13f28e53e1
Generate thumbnails when sending m.image and m.video messages. ( #555 )
...
* Send a thumbnail when sending a m.image
* Use the 'thumbnail_file' when displaying encrypted images
* Whitespace
* Generate thumbnails for m.video
* Fix docstring, remove unused vars, use const
* Don't change the upload promise behaviour
* Polyfill for Canvas.toBlob to support older browsers
* Lowercase for integer types in jsdoc
2016-11-15 11:22:39 +00:00
Richard van der Hoff
b209cc551e
Update eventtiles when the events are decrypted
...
Events are sometimes decrypted after they arrive, so add an eventlistener for
it and update the tile.
2016-11-15 11:12:52 +00:00
Richard van der Hoff
0e8a49ebb7
Update EventTile to use WithMatrixClient instead of MatrixClientPeg
2016-11-14 16:00:24 +00:00
Matthew Hodgson
69f6393ed9
try to make joining rooms more obvious
2016-11-13 14:13:21 +00:00
Matthew Hodgson
a967ddd1cb
quick and dirty support for custom welcome pages, with an example for geektime techfest
2016-11-13 14:10:46 +00:00
David Baker
1ff3a86457
Merge pull request #548 from matrix-org/markjh/encrypted-attachments
...
Encrypt attachments in encrypted rooms
2016-11-11 14:49:52 +00:00
Mark Haines
72d24f58d0
Make the promises be q promises
2016-11-11 13:57:45 +00:00
Mark Haines
9edfea3b32
Make imports more consistent, fix m.video
2016-11-11 13:57:45 +00:00
Mark Haines
bf5ecbd016
Review comments
...
Conflicts:
src/ContentMessages.js
2016-11-11 13:57:42 +00:00
Mark Haines
734c4eb638
Fix gif hoverover
2016-11-11 13:57:11 +00:00
Mark Haines
de384480c6
Pass the decryptedUrl to the MFileBody so that it doesn't need to decrypt it itself.
...
Conflicts:
src/components/views/messages/MImageBody.js
2016-11-11 13:57:08 +00:00
Mark Haines
736ab743ee
Make everything use MFileBody for downloads, ensure that encrypted attachments are actually downloaded
...
Conflicts:
src/components/views/messages/MImageBody.js
2016-11-11 13:56:30 +00:00
Mark Haines
ee1768f644
Use data:// URI rather than blob: URI to avoid XSS
2016-11-11 13:55:57 +00:00
Mark Haines
b69e88d4e3
Decrypt m.file attachments
2016-11-11 13:55:57 +00:00
Mark Haines
4e01a4f692
Decrypt m.audio attachments
2016-11-11 13:55:57 +00:00
Mark Haines
48340a2817
Fix unencrypted video thumbnail
2016-11-11 13:55:57 +00:00
Mark Haines
b56417f46e
Remove spurious TODO
2016-11-11 13:55:57 +00:00
Mark Haines
95e8889857
Decypt m.video events
2016-11-11 13:55:57 +00:00
Mark Haines
a4a0d02848
Move decryptFile into a utility function so that it can be shared between different components
...
Conflicts:
src/components/views/messages/MImageBody.js
2016-11-11 13:55:48 +00:00
Luke Barnard
5109833c42
Use correct prop types
2016-11-11 13:55:32 +00:00
Mark Haines
49b3aec1e2
Include the mimetype with the file info. Store the objectURL in state so that it can be used normally by the exising templates
...
Conflicts:
src/ContentMessages.js
src/components/views/messages/MImageBody.js
2016-11-11 13:54:07 +00:00
Luke Barnard
2a1d32f4d5
Add key prop to memberlist summary
2016-11-11 13:49:25 +00:00
Mark Haines
23e764604c
Merge remote-tracking branch 'origin/master' into develop
2016-11-11 12:00:53 +00:00
Mark Haines
61921327c2
Merge remote-tracking branch 'origin/master' into develop
2016-11-11 12:00:30 +00:00
David Baker
1e163eabf0
Revert "Encrypt attachments in encrypted rooms,"
2016-11-11 11:59:08 +00:00
Richard van der Hoff
998690431f
Merge pull request #542 from matrix-org/dbkr/get_app_version
...
Fix the vector web version in UserSettings
2016-11-11 11:11:36 +00:00
Richard van der Hoff
00ecff7497
Merge pull request #544 from matrix-org/luke/feature-truncate-m-room-member-events
...
Truncate consecutive member events
2016-11-11 11:01:47 +00:00
David Baker
857c0d1747
Wrap getAppVersion() in promise
...
in case it throws
2016-11-11 10:05:53 +00:00
Luke Barnard
d3a548773a
Remove redundant lines
2016-11-10 18:01:34 +00:00
Luke Barnard
3d7f6919cf
Refactor renderNameList (thanks, @richvdh)
2016-11-10 17:36:22 +00:00
Luke Barnard
0695037f5f
pass in prop onClick by default
2016-11-10 17:30:35 +00:00
Luke Barnard
87e8f0e4da
trailing commas
2016-11-10 17:27:59 +00:00
Luke Barnard
3ec7940d12
Inline renderEvents
2016-11-10 17:26:36 +00:00
Luke Barnard
d2d7ebc979
correct comment
2016-11-10 17:22:16 +00:00
Luke Barnard
b11dd9542f
Add class to expand link for pointer and colour
2016-11-10 17:09:18 +00:00
Luke Barnard
e05aeb35a1
npm run reskindex
2016-11-10 17:03:24 +00:00
Luke Barnard
ac460122cc
revert now redundant TruncatedList edits
2016-11-10 15:51:27 +00:00
Luke Barnard
f71ac93946
Prefer null to falsy, use correct plural
2016-11-10 15:38:20 +00:00
Luke Barnard
1a4df38500
remove href
2016-11-10 15:20:53 +00:00
Luke Barnard
d8bc4d9a6f
Factor out avatar click leads to view_user
2016-11-10 15:18:59 +00:00
Luke Barnard
6b2aa43b71
Factor out "and others"
2016-11-10 14:33:41 +00:00
Luke Barnard
d6b74becfc
Children are required
2016-11-10 14:12:45 +00:00
Luke Barnard
370f5f0a11
Use _ prefix for private methods
2016-11-10 14:12:05 +00:00
Luke Barnard
8422017827
events are required
2016-11-10 14:09:40 +00:00
Luke Barnard
dcbb31279f
Prefer import React, set prevEvent to last MemberhsipChange
2016-11-10 14:08:11 +00:00
Luke Barnard
e2936376b6
Unnecessary props
2016-11-10 13:26:27 +00:00
Luke Barnard
566034cf2b
Render children EventTiles before passing to summary element
2016-11-10 13:25:48 +00:00
Luke Barnard
764959ec1c
Comment on i after membershipchanges
2016-11-10 13:14:04 +00:00
Luke Barnard
0ec5eebfc9
Hoist isMembershipChange out of for loop
2016-11-10 13:03:17 +00:00
Luke Barnard
d01bb0b78f
Use sdk.getComponent
2016-11-10 13:01:48 +00:00
Luke Barnard
79c01fa1a4
Remove empty lines
2016-11-10 11:03:43 +00:00
Luke Barnard
f5bc8d1fe0
Removed logs, updated phrasing on 'others joined'
...
Now it's:
1 user joined and left
>1 others joined and left
2016-11-10 10:42:33 +00:00
Luke Barnard
5f0b891d47
Add date seperator to the expanded events
...
netsplits across midnight is not handled, and @richvdh suggested splitting the list in two
2016-11-09 17:44:43 +00:00
Luke Barnard
04a934f738
Trying to get rid of the date separator problem
2016-11-09 16:24:56 +00:00
Luke Barnard
2f02c4b84e
WIP nicer join/part folding
2016-11-09 16:03:35 +00:00
Richard van der Hoff
f2222c84a8
Merge pull request #545 from matrix-org/dbkr/fix_ctrl_e
...
Fix the ctrl+e mute camera shortcut
2016-11-08 18:37:58 +00:00
David Baker
a008f5010a
Fix the ctrl+e mute camera shortcut
...
* Fixes the altgr+e shortcut on Windows
(Fixes https://github.com/vector-im/vector-web/issues/2561 )
* Fixes the shortcuts to be cmd+e on mac rather than ctrl+e
which is more normal and doesn't clobber ctrl+e which old
school unix types use for go-to-end-of-line.
2016-11-08 18:04:22 +00:00
Luke Barnard
cd241a4a17
Truncate consecutive member events
...
This is needed for the IRC bridge to be able to do full membership list syncing without cluttering the message panel.
2016-11-08 16:34:02 +00:00
Mark Haines
c838164f40
Make the promises be q promises
2016-11-08 16:26:25 +00:00
Mark Haines
93ddb5539e
Make imports more consistent, fix m.video
2016-11-08 12:57:24 +00:00
David Baker
d871ca2b24
PR feedback
2016-11-08 11:43:24 +00:00
Mark Haines
911f9e4e63
Review comments
2016-11-08 11:42:20 +00:00
Luke Barnard
de83e578e7
Use generic error message
2016-11-08 11:18:44 +00:00
Luke Barnard
c0c662aeaf
Show the error that occured when trying to reach scalar
...
Instead of removing the button and printing an error to console, show the error in a popup that appears next to the `Manage Integrations` button.
2016-11-08 10:57:48 +00:00
David Baker
d44adcb7a9
Fix the vector web version in UserSettings
...
Add a getAppVersion() function to the platform rather than relying
on the updater code firing an event before we know what the app
version is.
2016-11-08 10:45:19 +00:00
David Baker
5c2c01d414
Fix function to consistently return boolean
2016-11-07 11:45:55 +00:00
David Baker
2bb7aec0de
Don't do URL previews for matrix.to
2016-11-07 10:57:08 +00:00
Richard van der Hoff
2ee98e9fdc
Fix NPE in LoggedInView
...
Fixes a NPE displaying the new version bar
(also fix displayname for WithMatrixClient)
2016-11-07 09:28:10 +00:00
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
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
Mark Haines
e949d91162
Handle decryption errors
2016-11-03 16:39:20 +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
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
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
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