David Baker
663dc3e513
Don't re-render matrixchat unnecessarily
...
...on room switch. We were setting most of the state in viewRoom,
but getting the current room ID from the RoomViewStore, but this
meant we did one setState from the RoomViewStore updating,
re-rendered and then setState again in viewRoom causing another
render. This just sets the room ID in viewRoom.
2017-09-08 18:56:57 +01:00
David Baker
aee2f3cdef
Rename onHaveRoom
...
And move some code out of it which didn't really have any reason
to be hanging out there rather than just be where we set the room
a few lines above.
2017-09-08 18:11:13 +01:00
David Baker
bf982004f6
Give onHaveRoom the info it needs explicitly
...
Rather than giving it a state object which is not actually the
whole state but happens to be everything it actually wants
(currently)
2017-09-08 17:56:53 +01:00
David Baker
03dcded72f
Blank line to make comment clearer
2017-09-08 17:39:10 +01:00
David Baker
1be35a77ec
Don't wait for setState to run onHaveRoom
...
onHaveRoom sets some more state (among other things) so putting it
in the setState callback so it could observe the new state caused
us to have to re-render again unnecessarily. Just give it the new
state as a parameter.
2017-09-08 17:06:46 +01:00
David Baker
984d639a37
Merge remote-tracking branch 'origin/develop' into dbkr/scroll_state_store
2017-09-08 15:58:38 +01:00
David Baker
13b094a3f6
Merge pull request #1369 from matrix-org/dbkr/dont_always_paginate
...
Don't always paginate when mounting a ScrollPanel
2017-09-08 15:51:55 +01:00
David Baker
78a2e49705
Don't always paginate when mounting a ScrollPanel
...
Calling just checkFill on DidMount did not initially set the
scrollTop which meant that one back pagination request is always
performed regardless. This meant we would end up rending the
first batch of events, then paginating and re-rendering again
after the pagination got another batch, causing unnecessary render
churn.
2017-09-08 15:41:19 +01:00
David Baker
59c54d3756
Remove redundant code
2017-09-08 13:39:22 +01:00
Michael Telatynski
3df379cb49
fix radio for theme selection
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-07 18:54:41 +01:00
David Baker
82d1afcc47
Correct comment
2017-09-07 17:16:32 +01:00
David Baker
408b8c18ea
Introduce a RoomScrollStateStore
...
to keep the place we're scrolled to in rooms. This mainly eleimates
the extra, superfluous onRoomViewStoreUpdate callback that
happened when the previous room saved back its scroll state.
Moving the scroll state to a separate store means we can have this
not emit events because nothing needs to know when the scroll state
changes.
2017-09-07 17:08:36 +01:00
David Baker
d71f15adf4
Remove unused scrollStateMap from LoggedinView
2017-09-06 22:51:10 +01:00
David Baker
609d61d53c
Revert "Implement sticky date separators"
2017-09-06 17:40:58 +01:00
Michael Telatynski
b10b0e573d
i18n and change message depending on success of copy
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-06 11:29:55 +01:00
Michael Telatynski
269f1f33e3
show response on copy so you don't mash it
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-06 11:27:25 +01:00
David Baker
289c3a5fbd
Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist
2017-09-05 14:20:02 +01:00
David Baker
262d66f579
Merge pull request #1353 from matrix-org/luke/feature-sticky-date-separators
...
Implement sticky date separators
2017-09-05 14:15:47 +01:00
David Baker
79ee41351c
Fix typo
2017-09-04 15:45:28 +01:00
Luke Barnard
0ded4acba0
Mark TODO for https://github.com/vector-im/riot-web/issues/4951
2017-08-31 17:52:53 +01:00
Luke Barnard
d84190f58d
Explain Flair debounce
2017-08-31 17:49:19 +01:00
Luke Barnard
e89d52ccbf
Do not get avatars when no groups were/could be retrieved
2017-08-31 16:46:39 +01:00
Luke Barnard
86e8a4c7e2
Make componentWillMount not async
...
This was left over from a previous refactor
2017-08-31 16:44:14 +01:00
Luke Barnard
c9c0771355
Spelling
2017-08-31 16:29:45 +01:00
Luke Barnard
cdb28f956e
Add comment for StickyContainer extension
2017-08-31 16:29:31 +01:00
David Baker
a2f2070966
Put setSate in the promise constructor
...
Avoids local variables. Also typo in comment.
2017-08-30 21:44:10 +01:00
David Baker
225fe67586
Fix room change sometimes being very slow
...
If the js-sdk had a lot of history in memory for a particular room,
riot would paginate all that history into the DOM and render it
when switching to that room (before then removing it all again).
This obviously made switching to that room very slow.
This was caused by the fact that we relied on the setState that
happens in TimelinePanel after the pagination taking effect such
that ScrollPanel sees that it no longer needs to paginate, but
in some situations (as far as I can see, in electron...?) this
setState would not take effect until the pagination stopped
fulfiling requests from memory and hit the network.
Fix: don't resolve the promise returned by the pagination request
until the setState has actually happened.
2017-08-30 19:14:26 +01:00
David Baker
9efa604706
Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist
2017-08-30 17:39:47 +01:00
David Baker
cf747fcb57
Lint
2017-08-30 17:34:44 +01:00
Luke Barnard
a29e7da06b
Merge branch 'develop' into luke/feature-sticky-date-separators
2017-08-30 14:06:06 +01:00
David Baker
32b33c66b9
Merge pull request #1346 from matrix-org/t3chguy/shouldHideEvent_RoomStatusBar
...
apply shouldHideEvent fn to onRoomTimeline for RoomStatusBar
2017-08-30 13:58:40 +01:00
Luke Barnard
d516906b36
Implement sticky date separators
...
Use `react-sticky` to implement sticky date separators. This will pin a date separator to the top of the timeline panel when the separator scrolls out of the top of the view.
A known issue of this is that the spinner, which is in line with event tiles in the timeline, will appear to push the stuck date separator down. In reality the first date separator after the spinner is in line with event tiles and is not stuck because the spinner forces the timeline to be scrolled slightly further down than it would be otherwise. But also, date separators in the timeline (not "stuck") have a greater height.
Ideally the date separator would be suppressed whilst back paginating, but this will cause the stuck separator to flicker on and off. This is why the suppression has been removed.
2017-08-30 13:52:46 +01:00
David Baker
22bb635ff3
Merge pull request #1352 from matrix-org/fix_hide_rr_regression
...
separate concepts of showing and managing RRs to fix regression
2017-08-30 13:50:44 +01:00
Michael Telatynski
05c232c8c3
revert fancy indents
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-30 13:32:07 +01:00
Michael Telatynski
282618d5a1
separate concepts of showing and managing RRs to fix regression
2017-08-30 13:18:14 +01:00
Luke Barnard
ebc1993530
Implement Flair
...
Add 14x14 group avatars next to sender profiles.
2017-08-30 11:10:49 +01:00
Richard Lewis
84481f1a1e
Merge pull request #1350 from matrix-org/rxl881/scalarTokenFix
...
Make staging widgets work with live and vice versa.
2017-08-30 11:04:50 +01:00
Richard Lewis
2ff1888054
Make staging widgets work with live and vice versa.
2017-08-30 10:36:22 +01:00
Richard van der Hoff
b9e047f0ff
Avoid breaking /sync with uncaught exceptions
...
For reasons I don't fully understand, it appears that sometimes the
ReadReceiptMarker has no offsetParent. Rather than dying with an uncaught
exception when that happens (and taking out half of React as well as the /sync
handler), log a warning and suppress the animation.
2017-08-30 10:01:45 +01:00
David Baker
824b29dc1f
PR feedback
2017-08-30 09:22:26 +01:00
Luke Barnard
5e98aa4850
Merge pull request #1343 from matrix-org/t3chguy/fix_two_roomlist_regressions
...
we need to pass whether it is an invite RoomSubList explicitly (i18n)
2017-08-29 16:33:48 +01:00
Luke Barnard
3f11f9148f
Merge pull request #1348 from matrix-org/dbkr/fix_forgot_password_percent_encode
...
Percent encoding isn't a valid thing within _t
2017-08-29 15:02:26 +01:00
David Baker
6d5b1b7a55
Percent encoding isn't a valid thing within _t
...
Just use a plain apostrophe
2017-08-29 14:18:24 +01:00
David Baker
ec983b838a
Unbreak password reset with a non-default HS
...
Broken by the change from onHsUrlChanged to onServerConfigChanged
in https://github.com/matrix-org/matrix-react-sdk/pull/811 where
ForgotPassword got missed.
2017-08-29 14:07:43 +01:00
David Baker
d86fe0df6e
Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist
2017-08-29 13:29:55 +01:00
Michael Telatynski
315f7a3ae7
apply shouldHideEvent fn to onRoomTimeline for RoomStatusBar
...
prevents N new message(s) when a hidden message comes in.
2017-08-28 13:46:09 +01:00
Michael Telatynski
edb449dfe5
we need to pass whether it is an invite RoomSubList explicitly (i18n)
2017-08-27 23:38:25 +01:00
Michael Telatynski
cd1e58cb61
_tJsx returns a React Object, the sub fn must return a React Object
...
not a string
2017-08-26 08:18:55 +01:00
David Baker
299db845ff
PR feedback
2017-08-25 12:10:13 +01:00
David Baker
5cfec247f0
Merge pull request #1331 from matrix-org/luke/fix-completion-click-to-insert
...
Fix click to insert completion
2017-08-24 14:56:15 +01:00
David Baker
814e08d843
Merge pull request #1334 from matrix-org/dbkr/update_on_event_decrypted
...
Force update on timelinepanel when event decrypted
2017-08-24 13:35:39 +01:00
David Baker
3e92380d79
Merge pull request #1337 from matrix-org/rav/handle_call_synchronously
...
Dispatch incoming_call synchronously
2017-08-24 13:31:13 +01:00
Richard van der Hoff
b65e1769d7
Dispatch incoming_call synchronously
...
- this should fix a race where if the 'hangup' arrives hard on the tail of the
Call.incoming, we don't ignore it.
(We still have a problem in that we blip the hangup tone and UI, but that is
arguably a separate problem)
2017-08-24 13:05:17 +01:00
Michael Telatynski
ec6867dc8b
Fix React crying on machines without internet due to return undefined
2017-08-24 12:32:37 +01:00
David Baker
a2943ac348
Check room ID matches
2017-08-24 11:55:39 +01:00
David Baker
67824e9acc
Force update on timelinepanel when event decrypted
...
Partially fixes https://github.com/vector-im/riot-web/issues/4865
(the part about messages not appearing in the timeline until you
move the cursor over the window).
Requires https://github.com/matrix-org/matrix-js-sdk/pull/529
2017-08-24 11:35:01 +01:00
David Baker
c11432c3e3
Catch the promise rejection if scalar fails
...
Otherwise this is incredibly annoying when developing if you don't
have a scalar that will allow you to register (ie. if you're
testing against an HS on your dev box)
2017-08-23 19:35:33 +01:00
Luke Barnard
8ed5422a45
Fix click to insert completion
...
And remedy weird API in the process. Autocomplete now exposes `onSelectionChange` to indicate that the user has selected another completion, rather than returning the chosen completion via onUpArrow etc.
Fixes vector-im/riot-web#4835
2017-08-23 16:22:14 +01:00
Richard Lewis
502a0480a0
Merge pull request #1327 from matrix-org/matthew/multiple-widgets
...
Matthew/multiple widgets
2017-08-22 10:53:51 +01:00
David Baker
e72bdffd62
Remove unused import
2017-08-22 10:22:51 +01:00
David Baker
5f816666e1
Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist
2017-08-22 10:08:02 +01:00
Richard Lewis
a69cc9169f
lint fix.
2017-08-22 10:04:57 +01:00
David Baker
ac64e9b705
Lint
2017-08-21 19:34:07 +01:00
David Baker
b898d15580
Specify default number of members to load
2017-08-21 19:30:28 +01:00
David Baker
e77ea352e4
Support full group membership cycle
...
Apart from knocking, ie. Invite / accept / reject / leave
2017-08-21 19:18:32 +01:00
David Baker
a0fe3d1cb0
Merge pull request #1326 from matrix-org/rav/userpicker_proptypes
...
Fix proptypes on UserPickerDialog
2017-08-21 16:43:15 +01:00
Richard van der Hoff
764d5891ad
Fix proptypes on UserPickerDialog
...
... so that it doesn't log an error
2017-08-21 16:30:49 +01:00
Richard Lewis
b7569a9831
Revert auxPanel changes (this should already have been fixed in a separate PR).
2017-08-21 15:29:11 +01:00
Robert Swain
385205471b
AppsDrawer: Remove unnecessary bind
2017-08-21 15:34:13 +02:00
Richard Lewis
c0f0425907
Merge pull request #1322 from matrix-org/rxl881/styling
...
Position add app widget link
2017-08-21 14:03:27 +01:00
Richard Lewis
6c8391e3ea
Remove beta tag.
2017-08-21 11:39:06 +01:00
Richard Lewis
e93a1fac3d
Position add app widget link
2017-08-21 11:29:42 +01:00
Robert Swain
2eac869e27
Merge branch 'develop' into rob/apps-not-e2ee
2017-08-21 10:30:38 +02:00
Robert Swain
70824960ee
AppPermission: Make strings translatable
2017-08-21 10:23:55 +02:00
Matthew Hodgson
d7f5295949
untested WIP for supporting multiple widgets properly
2017-08-18 18:40:00 +01:00
Richard Lewis
1862057695
Only render appTile body (including warnings) if drawer shown.
2017-08-18 18:33:56 +01:00
Luke Barnard
b678c2cf0f
Don't bind Pill function, React does this for us
2017-08-18 17:15:27 +01:00
Robert Swain
2e00968bcd
AppPermission: Note that apps are not E2E encrypted in E2E rooms
2017-08-18 17:44:33 +02:00
Richard Lewis
1c36e47403
Fix add widget link
2017-08-18 15:59:12 +01:00
Richard Lewis
b7d46d91ed
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes
2017-08-18 15:35:01 +01:00
Luke Barnard
bf07333915
Merge pull request #1316 from matrix-org/luke/fix-app-name-case
...
Don't apply case logic to app names
2017-08-18 15:08:40 +01:00
Luke Barnard
5e0a7212d9
Don't apply case logic to app names
...
As they should have the Correct Case in integrations land now
2017-08-18 14:57:28 +01:00
Luke Barnard
36fffa1696
Stop integ manager opening on every room switch
...
This was caused by a broken assumption which was AppsDrawer component mounting === clicking on apps draw toggle.
This was introduced in matrix-org/matrix-react-sdk#1312 .
Known issue with this fix: deleting the last app doesn't hide the app drawer.
2017-08-18 14:48:58 +01:00
Richard Lewis
857a8c9519
Remove empty defaultProps.
2017-08-18 13:28:47 +01:00
Luke Barnard
3a7aa926c3
Merge pull request #1313 from matrix-org/luke/feature-app-tile-ux
...
Add behaviour to toggle app draw on app tile header click
2017-08-18 13:08:57 +01:00
Luke Barnard
caff761df7
Merge pull request #1308 from matrix-org/t3chguy/mels_fix
...
Change OOO so that MELS generation will continue over hidden events
2017-08-18 13:08:35 +01:00
Richard Lewis
84f5e5aad2
REmove unused onCancelClick
2017-08-18 12:21:48 +01:00
Luke Barnard
1a1a80b633
Merge branch 'develop' into luke/feature-app-tile-ux
2017-08-18 12:12:00 +01:00
Luke Barnard
cab3123bd8
Merge pull request #1312 from matrix-org/luke/feature-widget-timeline-events
...
Implement TextualEvent tiles for im.vector.modular.widgets
2017-08-18 12:10:22 +01:00
Michael Telatynski
615d96a065
catch hidden event being RM
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-18 11:53:52 +01:00
Richard Lewis
96900e76a0
Move error logging to where it is first caught.
2017-08-18 11:51:32 +01:00
Richard Lewis
4b5cdac032
Don't show widget security warning to the person who added it to the room.
2017-08-18 11:41:27 +01:00
David Baker
55998028b4
Show group invites in 'invites' section
2017-08-18 11:22:50 +01:00
Luke Barnard
57505c3a61
Add behaviour to toggle app draw on app tile header click
2017-08-18 10:56:35 +01:00
Luke Barnard
9382689675
Merge branch 'develop' into luke/feature-widget-timeline-events
2017-08-18 10:47:25 +01:00
Luke Barnard
acc54b97f1
Implement TextualEvent tiles for im.vector.modular.widgets
...
E.g. "Bob added a Acme widget", "Susan removed a Giraffe widget"
The name is calculated by taking the `name` in the event content, falling back on the `type`, falling back on the previous content `type`. This is then capitalised.
2017-08-18 10:35:33 +01:00
Matthew Hodgson
bb0845954d
improve wording for directory listings
2017-08-17 19:10:45 +01:00
Matthew Hodgson
7c04a6671d
expand auxPanel when showing apps
2017-08-17 19:06:19 +01:00
Richard Lewis
120a4f4f44
Check for valid roomId before renering manageIntegsButton.
2017-08-17 18:10:50 +01:00
Richard Lewis
0907fff080
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes
2017-08-17 17:47:46 +01:00