David Baker
a95d8b5ed6
Move init logic into componentWillMount
...
to simplify getInitialState
2016-06-14 14:38:45 +01:00
David Baker
b8eee08d69
Fix member list vanishing
...
Add a callback to RoomView that it can give the room ID to once it's resolved it, since this lookup is now the responsibility of the roomview and only the roomview. The view_room action now has either an alias or an ID, not both. Also fix RoomView to load the room properly and not try to peek when it shouldn't.
2016-06-14 12:56:37 +01:00
David Baker
11a38fce48
Fix peeking
...
Sorts out more of the room joining mess. currentRoom which held the room ID is now more appropriately called currentRoomId. RoomView will now take a roomID or alias as before but will now look up the room ID as required if given the alias. Also, now look up the alias every time you click on it so it's never stale, rather than looking in your current rooms for a room that thinks it has that ID.
2016-06-14 11:37:04 +01:00
David Baker
b60ab9d695
Remove XXX now it's fixed (yay!)
2016-06-09 18:50:18 +01:00
David Baker
72b3ce200d
Make the room directory join rooms by alias
...
Also makes some improvement on the multiple code path mess for joining rooms
2016-06-09 18:49:06 +01:00
Matthew Hodgson
c3fc76cdaa
warn guests to register nicely to upload files
2016-05-31 23:59:36 +01:00
Matthew Hodgson
7879be1704
implement basic local echo for resetting unread message count when opening a room without a scroll offset. hopefully largely fixes https://github.com/vector-im/vector-web/issues/967
2016-05-17 20:28:11 +01:00
Richard van der Hoff
0fd0b0c5f3
Whitespace fixes
...
Fix some trailing whitespace
2016-04-22 17:05:48 +01:00
Matthew Hodgson
eeb9abdf81
trailing whitespace
2016-04-18 01:34:45 +01:00
Matthew Hodgson
8db14bde60
switch Tinter from using dispatch to a synchronous update when changing the colourscheme, to avoid CSS getting out of sync with SVG colours
2016-04-16 01:00:10 +01:00
Matthew Hodgson
009781dac7
prep for RightPanel full collapse
2016-04-15 18:45:40 +01:00
Matthew Hodgson
0741e8a5c1
fix testing UI hack
2016-04-14 19:11:20 +01:00
Richard van der Hoff
85277a237a
Merge pull request #270 from matrix-org/rav/issue_1314_federated_rooms
...
RoomView: Handle joining federated rooms
2016-04-13 16:36:46 +01:00
Matthew Hodgson
1e294cb10c
fix 'mark all read'
2016-04-13 12:46:36 +01:00
Richard van der Hoff
ec5ca1ca28
s/roomAlias/roomAddress/ to reduce confusion
2016-04-13 12:26:40 +01:00
Matthew Hodgson
6509bc0589
oops, missed another fade
2016-04-13 11:17:09 +01:00
Matthew Hodgson
ead5418214
oops, missed a fade
2016-04-13 11:17:09 +01:00
Richard van der Hoff
93a142480c
RoomView: Handle joining federated rooms
...
This hopefully fixes an issue where joining a federated room via the directory
would get stuck at a spinner of doom, due to us not recognising the room in
question when it came down the /sync. We now catch the room id in the response
from the /join, and use it to match up the room in onRoom.
props.roomAlias, props.roomId, and state.room.roomId were somewhat confusing,
so I've tried to rationalise them:
* props.roomAlias (named thus to stop you assuming it's a room id) is the
thing that the parent component uses to identify the room of interest, and
can be either an ID or an alias (ie, it replaces props.roomId and
props.roomAlias)
* Everything that needs a room ID now has to get it from state.room.roomId.
2016-04-13 08:59:28 +01:00
Matthew Hodgson
a01e6d46b9
Merge pull request #268 from matrix-org/matthew/fadable
...
make the UI fadable to help with decluttering
2016-04-12 18:05:10 +01:00
Matthew Hodgson
3a2d5c4ba5
spinner on saving room settings
2016-04-12 18:01:49 +01:00
Matthew Hodgson
11f3d5f993
make the UI fadable to help with decluttering
2016-04-12 17:18:32 +01:00
Matthew Hodgson
38d27cdbb0
improve 'no known servers' error
2016-04-12 13:00:52 +01:00
Matthew Hodgson
7884c13d0d
Merge branch 'develop' into matthew/preview_urls
2016-04-07 17:25:48 +01:00
Richard van der Hoff
8b8ee21765
Catch pageup/down and ctrl-home/end at the top level
...
Make the scroll keys work when the focus is outside the message panel.
2016-04-05 13:40:36 +01:00
Matthew Hodgson
4388334e30
fix up scroll behaviour when loading widgets
2016-04-02 00:36:19 +01:00
Richard van der Hoff
6422f7ecc8
Factor out separate RoomNameEditor and RoomTopicEditor components
2016-03-29 15:21:16 +01:00
Matthew Hodgson
8b67a1059d
oops, forgot a sync dispatch on onSearchResultsResize
2016-03-24 02:14:16 +00:00
Matthew Hodgson
151a9994ba
WIP fix for image load popping
2016-03-24 00:13:32 +00:00
Matthew Hodgson
2403eca6af
profoundly evil ugly hack to workaround amandine's invite focus issues on her note-to-self rooms
2016-03-22 17:47:52 +00:00
David Baker
13f31b2a5d
Add error message for failing to join a room as a guest (which may or may not be because we're a guest: we can't tell)
2016-03-22 13:47:29 +00:00
Richard van der Hoff
c31fbf1214
Merge pull request #236 from matrix-org/rav/search_pagination_spinner
...
Show a spinner when we back-paginate search results
2016-03-22 10:12:51 +00:00
Richard van der Hoff
75f8765f88
Add 'cancel all' option to 'unsent messages' bar
...
Also, make sure we hide said bar when unsent messages are cancelled.
2016-03-21 16:49:07 +00:00
Richard van der Hoff
c1fa89972a
Show a spinner when we back-paginate search results
...
Hook into the existing searchInProgress state to show a spinner when we
back-paginate search.
2016-03-20 23:51:43 +00:00
Matthew Hodgson
24972a8267
if we're not peeking in a room, stop any ongoing peeking
2016-03-18 19:23:30 +00:00
Matthew Hodgson
d0ecd38927
top-align search results
2016-03-18 16:25:11 +00:00
Richard van der Hoff
15c9ad87a1
Merge pull request #231 from matrix-org/rav/pending_event_list
...
Use new pendingEventList functionality from matrix-js-sdk
2016-03-18 16:17:56 +00:00
David Baker
eb5aa7ed7d
Move comment
2016-03-18 16:06:36 +00:00
David Baker
3e915cf0e2
Merge remote-tracking branch 'origin/develop' into dbkr/show_invited_email
2016-03-18 15:34:15 +00:00
Matthew Hodgson
deaa5c350a
Remove unnecessary Modal.createDialogWithElement, complete with its broken onFinished() support. Switch SetDisplayNameDialog to use Modal.createDialog(). Explicitly pass false to closeDialog if the user tries to cancel dialogs by clicking on the background, rather than passing in an event object which evaluates to true.
2016-03-18 11:15:06 +00:00
Richard van der Hoff
b93af2d536
Use new pendingEventList functionality from matrix-js-sdk
...
Update react-sdk to use `pendingEventOrdering`==`detached` instead of
`end`. Look for pending events in the pendingEvent list, and use
MatrixClient.cancelPendingEvent to, uh, cancel pending events.
2016-03-17 22:26:06 +00:00
Matthew Hodgson
e55a375d6f
improve RoomPreviewBar as per https://github.com/vector-im/vector-web/issues/761
2016-03-17 19:19:05 +00:00
David Baker
f1844a99e7
WIP on fixing https://github.com/vector-im/vector-web/issues/924
...
Pass the invited email through to RoomPreviewBar, display it in a temporary way currently.
Remove a condition from RoomView render that appears to be functionally identical to the previous.
2016-03-17 18:38:25 +00:00
Matthew Hodgson
50e33d30b6
never try to tab-complete yourself, doofus
2016-03-16 23:35:01 +00:00
Matthew Hodgson
bae23c78de
fix https://github.com/vector-im/vector-web/issues/1040 and https://github.com/vector-im/vector-web/issues/833
2016-03-15 22:42:22 +00:00
Matthew Hodgson
5e050c6276
hopefully fix https://github.com/vector-im/vector-web/issues/819
2016-03-15 00:49:44 +00:00
Richard van der Hoff
88b3f2ed8c
Use our fork of react-gemini-scrollbar to fix resize issues
...
Rather than telling react-gemini-scrollbar to update every time something that
changes its size happens, try out our fork of it which uses some hackery to
listen for resizes.
2016-03-14 12:46:13 +00:00
David Baker
1516f17af4
Merge pull request #210 from matrix-org/dbkr/invite_display_when_peekable
...
Show the invite preview bar when we have a 3pid invite
2016-03-11 10:21:04 +00:00
David Baker
15170f8718
Comment how we're not rejecting 3pid invites
2016-03-11 10:20:52 +00:00
David Baker
2875fa3eb1
Show the invite preview bar when we have a 3pid invite, and make the reject button work.
2016-03-10 15:56:58 +00:00
Richard van der Hoff
f9e753f57a
Update the gemini panel when we show/hide the TopUnreadMessagesBar
...
Showing/hiding the TopUnreadMessagesBar resizes the scrollpanel. Make sure that
we update the gemini panel when this happens.
(Fixes an intermittent bug wherein we could get stuck with a 'scroll to bottom'
indicator after jumping to the bottom, with unread messages in the view)
2016-03-10 15:55:03 +00:00
Richard van der Hoff
6c928f12b2
ForceUpdate the scrollpanel when the aux panel changes size
...
Catch some more cases when we ought to be updating the gemini scroll stuff.
2016-03-09 15:56:54 +00:00
Richard van der Hoff
393e8ff612
Revert "Revert "Merge pull request #193 from matrix-org/rav/shouldComponentUpdates""
...
Put the shouldComponentUpdate methods back in, now that Matthew has stopped
demoing.
This reverts commit 606fdcb8df
.
2016-03-09 15:56:53 +00:00
Richard van der Hoff
b45c256427
Don't forceUpdate the message panel on resize
...
We don't really need to forceUpdate() the entire timeline panel every time
something might resize it. It is sufficient to forceUpdate the ScrollPanel.
2016-03-09 15:40:19 +00:00
Richard van der Hoff
606fdcb8df
Revert "Merge pull request #193 from matrix-org/rav/shouldComponentUpdates"
...
This reverts commit a7c75b1315
, reversing
changes made to b66ca74ede
.
This is causing breakage in the messagepanel screen resize after video call and
room settings
2016-03-07 17:28:50 +00:00
Richard van der Hoff
bc5ae6a6ad
Add shouldComponentUpdate() methods to RoomView and TimelinePanel
...
This will avoid re-rendering the whole RoomView every time we get a scroll
event, and might even help with https://github.com/vector-im/vector-web/issues/1056 .
2016-03-04 14:51:55 +00:00
David Baker
de2eaa3078
Document inviterName
2016-03-02 14:04:51 +00:00
David Baker
acb5f5d69b
This should be props, not state
2016-03-02 11:56:18 +00:00
David Baker
7ae2c5b11b
Document fields of oob_data
2016-03-02 11:51:47 +00:00
David Baker
9085a2a866
Pass room metadata from 3pid invite emails all the way through to the relevant components so we can display it.
2016-03-01 18:23:57 +00:00
Richard van der Hoff
10b55036f9
Merge branch 'rav/roomview_works' into develop
...
Implementation of new read-marker semantics (PR #160 ).
2016-02-24 17:26:46 +00:00
Richard van der Hoff
1959b03104
Land refactored roomview branch 'rav/roomview_works'.
...
This branch has been sitting around a while; it includes a substantial refactor
of RoomView (into separate MessagePanel and TimelinePanel), as well as a number
of fixes.
2016-02-24 16:52:12 +00:00
Richard van der Hoff
1009faf9dc
Merge pull request #171 from matrix-org/rav/typing_notifs_cleanups
...
Don't forceUpdate the whole roomview on typing notifs
2016-02-24 16:45:45 +00:00
Richard van der Hoff
7a19bad388
Merge pull request #170 from matrix-org/rav/video_resize
...
Factor out a separate auxpanel, and cleanup the maxHeight management
2016-02-24 16:45:25 +00:00
David Baker
b384d8c91a
Merge pull request #168 from matrix-org/dbkr/keypair_3pid_invites
...
Wire up support for keypair 3pid invites.
2016-02-23 16:37:55 +00:00
Richard van der Hoff
07822e20cb
Don't forceUpdate the whole roomview on typing notifs
...
updating the roomview is expensive, so we shouldn't do it every time we get a
typing notification (which may or may not correspond to a user in this
room). Push it down to RoomStatusBar, and use a state var to keep track of it.
2016-02-23 16:17:50 +00:00
Richard van der Hoff
7a20fda7e7
Factor out a separate auxpanel, and cleanup the maxHeight management
...
Basically two changes here:
1. Factor out auxpanel from RoomView
2. Rather than setting maxHeight attributes by poking directly into the DOM,
pass them down as properties.
2016-02-23 15:54:15 +00:00
Richard van der Hoff
d599c8fbd2
Merge remote-tracking branch 'origin/develop' into rav/roomview_works
2016-02-23 13:37:21 +00:00
Richard van der Hoff
ac4b36c0dd
Merge commit '99d2392' into rav/roomview_works
...
Conflicts:
src/components/structures/RoomView.js
2016-02-23 13:32:23 +00:00
Richard van der Hoff
4a22fb9763
Merge commit '26e6632' into rav/roomview_works
2016-02-23 13:25:09 +00:00
Richard van der Hoff
6aaced04fa
Merge commit 'd2a731e' into rav/roomview_works
2016-02-23 13:02:26 +00:00
Richard van der Hoff
776b6a26c3
Merge commit '9a0ea56' into rav/roomview_works
...
Conflicts:
src/components/structures/RoomView.js
2016-02-23 13:02:02 +00:00
Richard van der Hoff
7f4f30d7d5
Merge commit 'e3feae3' into rav/roomview_works
2016-02-23 12:01:53 +00:00
Richard van der Hoff
3acfab48fc
Merge commit '014acba' into rav/roomview_works
...
Conflicts:
src/components/structures/RoomView.js
2016-02-23 12:00:54 +00:00
Richard van der Hoff
8161a18efd
Merge commit 'b1a6575' into rav/roomview_works
2016-02-23 11:56:51 +00:00
Richard van der Hoff
d673249681
Wire up StatusBar size changes to a geminipanel update
...
When the statusbar changes size, we need to tell the gemini panel to
update. This is slightly tortuous as figuring out the size of the statusbar
isn't completely trivial.
Fixes https://github.com/vector-im/vector-web/issues/945 and
https://github.com/vector-im/vector-web/issues/986
2016-02-23 11:06:16 +00:00
David Baker
ac9f0f204d
Wire up support for keypair 3pid invites.
2016-02-23 10:15:07 +00:00
Richard van der Hoff
99d2392b6f
Update the scroll offset when images load
...
In order to deal with image-loading reshaping the DOM, wire up
ScrollPanel.checkScroll to the image load events.
Fixes https://github.com/vector-im/vector-web/issues/984
2016-02-22 17:43:33 +00:00
Richard van der Hoff
26e66326a2
Link search results to the right room
...
Fixes https://github.com/vector-im/vector-web/issues/980
2016-02-22 12:54:22 +00:00
David Baker
d7b3a24c18
Merge pull request #165 from matrix-org/dbkr/read_receipt_send_ignore_implicit
...
Fix stuck notification bug
2016-02-19 16:20:12 +00:00
David Baker
71e2495e81
Use new flag in js-sdk to look at the last read receipt the server actually has and ignore implicit ones, otherwise we can end up not sending an RR because we think there's already a more recent one, even though that one is implicit.
2016-02-19 14:45:02 +00:00
Matthew Hodgson
d2a731e255
only resize the video element if not fullscreen
2016-02-19 01:18:53 +00:00
Matthew Hodgson
9a0ea56bba
don't suppress conf join/parts
2016-02-18 00:07:35 +00:00
Richard van der Hoff
e9726865fc
Merge pull request #162 from matrix-org/rav/keep_redactions
...
Handle redacted events
2016-02-17 21:42:39 +00:00
Richard van der Hoff
e3feae32e1
Fix search clickthrough for HTML events
...
Switch to using a normal <a href="..."> link for search result
clickthrough. Apart from generally giving a better experience, this means that
it also works on html messages. The problem there was that we were attaching
onClick handlers to <span>s which we were then flattening into HTML with
ReactDOMServer (which meant the onClick handlers were never attached to React's
list of listeners).
To make this work without jumping through React hoops, the highlighter now
returns either a list of strings or a list of nodes, depending on whether we
are dealing with an HTML event or a text one. We therefore have a separate
HtmlHighlighter and TextHighlighter.
2016-02-17 21:06:27 +00:00
Richard van der Hoff
eb91faf554
Handle redacted events
...
matrix-js-sdk now retains redacted events. Filter them out of the timeline.
Also put empty placeholders in the dom so that if we try to scroll to a
redacted event, we don't end up blowing up.
2016-02-16 16:08:52 +00:00
Richard van der Hoff
ab9690d3b0
Don't re-tint on unmount
...
Need to remember the 'ref' function is called on unmount too - we shouldn't
retint back to the room colours at this point.
2016-02-15 20:40:34 +00:00
Matthew Hodgson
014acbab1f
restore drag & drop file upload, broken by @richvdh's new timeline stuff
2016-02-15 21:16:04 +02:00
Matthew Hodgson
b1a6575b1d
remove ugly join & reject error msgs in favour of modal dialogs
2016-02-15 20:59:44 +02:00
Richard van der Hoff
f2377fa9fe
Factor out a TimelinePanel from RoomView
2016-02-10 18:41:48 +00:00
Richard van der Hoff
c3692378fa
Factor a stateless messagepanel out from RoomView
2016-02-10 18:41:47 +00:00
Richard van der Hoff
0d2b042c0f
Merge pull request #148 from matrix-org/rav/keep_scrolling
...
Don't stop scrolling at the read-up-to mark.
2016-02-10 10:20:03 +00:00
David Baker
af0597e0c8
Joining a room can take a while. Show a spinner otherwise we'll end up in multiple join city.
2016-02-09 16:55:03 +00:00
Richard van der Hoff
f48f28eefe
Kill another scrollToToken
...
Missed a place where we were scrolling the messagepanel manually
2016-02-09 15:50:09 +00:00
Richard van der Hoff
576b59be66
Kill off the remains of auto_peek
...
Remove some dead code.
2016-02-09 15:45:41 +00:00
Richard van der Hoff
178e99385a
Merge remote-tracking branch 'origin/develop' into rav/keep_scrolling
2016-02-09 14:52:38 +00:00
Richard van der Hoff
81e95ca8c1
Wire up jump-to-bottom knob
...
... which I embarassingly forgot
2016-02-09 11:36:57 +00:00
Richard van der Hoff
8641dab756
Don't stop scrolling at the read-up-to mark.
...
We want to keep things scrolling up after the read-up-to mark hits the middle
of the screen. Do this by giving the ScrollPanel a stickyBottom (provided we're
not in old history) instead of updating the scroll position when RRs arrive.
Also, when we switch back to a room, if there was no special scroll state, jump
to the end of the timeline instead of the RR mark.
2016-02-09 11:08:26 +00:00
Richard van der Hoff
1d9c88698f
Factor the statusbar implementation out of RoomView
...
... because RoomView must die
2016-02-08 18:08:19 +00:00
Richard van der Hoff
3ca2bbe31e
Drop a redundant 'else' from RoomView.render, and outdent a load of code
...
... in the hope of aiding readability slightly
2016-02-08 16:43:08 +00:00
David Baker
9bf8f37e5f
explicitly check join status as it's clearer
2016-02-08 16:03:04 +00:00