Commit graph

2099 commits

Author SHA1 Message Date
Luke Barnard
64332b3021 Workaround for atlassian/react-beautiful-dnd#273
Fix two bugs in Riot due to a single bug in react-b-dnd

Fixes vector-im/riot-web#6253
Fixes vector-im/riot-web#6156
2018-03-01 13:48:46 +00:00
Luke Barnard
2b49947e1e Add "Did you know:..." microcopy to groups view
To explain how to drag group avatars into the TagPanel
2018-02-27 09:20:06 +00:00
Matthew Hodgson
d8ef6f79b1 s/autoShow/autoshow/ 2018-02-23 10:14:02 +00:00
Luke Barnard
f08ec3498a Fix bug that prevented tint updates 2018-02-22 10:53:06 +00:00
Luke Barnard
ff868691c9 Only show "X" when filtering, add alt/title 2018-02-21 17:15:43 +00:00
Luke Barnard
fc73442cdc Change icon from "R" to "X" 2018-02-21 15:06:10 +00:00
Luke Barnard
bc15303358 Factor out updateDmState 2018-02-20 14:10:34 +00:00
Luke Barnard
d21f55633d Fix DMs being marked as with the current user ("me")
Whilst testing various DM paths, @lukebarnard1 found that there were
many failures to add the room as a DM against the correct user. It
turned out most of the failures seen were because the user chosen
was the current user. If the user accepted an invite it would often
be marked as with themselves because we chose the sender of the
join event as the DM user.

This fix makes the DM room setting process the same for both the
inviting client and the invited client. A RoomState.members
event causes the DM room state to be set in the room, regardless
of whether we are currently `joining` (see previous impl.)

The two cases for setting a DM are:
 - this user accepting an invite with is_direct
 - this user inviting someone with is_direct

This should handle all cases for setting DM state.
2018-02-20 14:03:43 +00:00
Luke Barnard
7a0c82a327 Fix click background to deselect 2018-02-16 18:08:29 +00:00
Luke Barnard
113fc696d8 Implement global filter to deselect all tags
and make TagPanel scrollable whilst we're at it.
2018-02-16 17:43:43 +00:00
Luke Barnard
1a880761e0
Merge pull request #1747 from matrix-org/luke/fix-scrollbars-on-jump-to-first
Change CSS class for message panel spinner
2018-02-15 14:51:12 +00:00
Luke Barnard
3948ee8ca1 Give each GroupTile avatar its own droppable
so that they can be dragged and dropped
without interacting with each other, as
they would do if GroupView contained
one droppable to contain them all.
2018-02-14 17:53:54 +00:00
Luke Barnard
74c8a74e7d Add Droppable to GroupView
to contain the GroupTiles as Draggables
2018-02-14 16:43:01 +00:00
Luke Barnard
b626420eb9 Move DND context to LoggedInView
so that we can drag things from any part of the logged in app to
another. (Specifically GroupView and TagPanel).
2018-02-14 16:40:58 +00:00
Luke Barnard
47c232b5b3 Merge branch 'develop' into luke/fix-scrollbars-on-jump-to-first 2018-02-14 11:00:27 +00:00
David Baker
7cc82a682c
Merge pull request #1745 from matrix-org/luke/fix-login-page-feedback
Give the login page its spinner back
2018-02-14 10:31:36 +00:00
Luke Barnard
36e8bf1f20 Change CSS class for message panel spinner
to stop scrollbars appearing when we
 - jump to a message or,
 - permalink that is to an not paginated in event
2018-02-13 14:13:47 +00:00
Luke Barnard
493116b17e Give the login page its spinner back 2018-02-13 11:43:22 +00:00
Luke Barnard
db0ea9eb0e Merge branch 'develop' into luke/room-list-flux 2018-02-13 10:18:24 +00:00
Luke Barnard
6d3634a06c Move groups button to TagPanel 2018-02-13 09:44:00 +00:00
Richard van der Hoff
5823b32ab1
RoomView: guard against unmounting during peeking
it's possible for the user to change room before the peek operation completes. Check if we've been unmounted before setting state.
2018-02-08 10:01:24 +00:00
lukebarnard
45ad46b468 Fix HS/IS URL reset when switching to Registration 2018-02-07 15:58:29 +00:00
Luke Barnard
cf4ae681f4
Offline mode (#1723)
* Allow the client to run without connection to HS (i.e. using indexeddb)

Allows running without having pushRules (it's safe not to have these 
when running from indexeddb sync.)

This means rooms will be displayed with "unknown" notifcation state.

This assumes anything that uses the push rules will get pushRule state
again when the client starts syncing again.

For recovering from being disconnected, 
* If an avatar has fallen back, try again on reconnection
* If a thumbnail image failed to load, retry on reconnect
* Load joined groups when reconnecting

Update tests to give MELS a context.matrixClient
2018-02-06 17:50:53 +00:00
lukebarnard
73e3a594ac Prevent TagTiles from being dragged into other droppables
for the time being at least.
2018-01-25 22:52:19 +01:00
lukebarnard
d0e3319bd9 Remove DragDropContext from TagPanel and RoomList
So that we can have one context that can handle DND between
the TagPanel and RoomList.
2018-01-25 22:05:20 +01:00
lukebarnard
815f52587b Move TagPanel out of LoggedInView
(...and into LeftPanel in riot-web. Can we merge the projects yet?)
2018-01-25 21:53:34 +01:00
Will Hunt
5206c9d18b Show a warning if the user attempts to leave a room that is invite only 2018-01-19 22:52:43 +00:00
Luke Barnard
a8320fe7e2
Merge pull request #1711 from matrix-org/luke/roomlist-beautiful-dnd
Swap RoomList to react-beautiful-dnd
2018-01-19 14:49:49 +00:00
lukebarnard
00dc077271 Remove react-dnd, revert fa14bc9 as no longer needed 2018-01-19 13:34:56 +00:00
Matthew Hodgson
80d3edfbb3 simplify the 'send anyway' text, as 'mark devices known' is meaningless to users 2018-01-18 09:57:29 +00:00
David Baker
c64b4e1b1c Merge remote-tracking branch 'origin/develop' into dbkr/dont_paginate_while_decrypting 2018-01-16 17:38:32 +00:00
Luke Barnard
62caa4f096
Merge pull request #1705 from matrix-org/luke/tag-panel-beautiful-dnd
Replace TagPanel react-dnd with react-beautiful-dnd
2018-01-16 11:26:44 +00:00
lukebarnard
f19dcd8114 Comment workaround to atlassian/react-beautiful-dnd#273 2018-01-16 11:07:25 +00:00
lukebarnard
bda2d6b0a6 Work around atlassian/react-beautiful-dnd#273
For some reason, after dragging an item
the parent draggable receives a mouse click. The workaround is
to use onMouseDown for deselecting tags
2018-01-16 10:44:11 +00:00
lukebarnard
16c13fb079 Replace TagPanel react-dnd with react-beautiful-dnd
This new library handles the simple case of an ordered vertical
(or horizontal) list of items that can be reordered.

It provides animations, handles positioning of items mid-drag
and exposes a much simpler API to react-dnd (with a slight loss
of potential function, but we don't need this flexibility here
anyway).

Apart from this, TagOrderStore had to be changed in a highly
coupled way, but arguably for the better. Instead of being
updated incrementally every time an item is dragged over
another and having a separate "commit" action, the
asyncronous action `moveTag` is used to reposition the tag in
the list and both dispatch an optimistic update and carry out
the request as before. (The MatrixActions.accountData is still
used to indicate a successful reordering of tags).

The view is updated instantly, in an animated way, and this
is handled at the layer "above" React by the DND library.
2018-01-15 18:12:27 +00:00
Michael Telatynski
b526fc057c Add formatFullDateNoTime to DateUtils and stop passing 12/24h to DateSep 2018-01-14 18:32:17 +00:00
David Baker
e42bea6277 Don't paginate whilst decrypting events
As comment hopefully explains. This meant loading the app on an e2e
room would often be very slow as it tried to pull hundreds of events
into the timeline.
2018-01-12 18:17:03 +00:00
David Baker
b152bd4ab9
Merge pull request #1625 from matrix-org/t3chguy/analytics_info
Add Analytics Info and add Piwik to SdkConfig.DEFAULTS
2018-01-11 11:02:34 +00:00
David Baker
efb96cdd2a
Merge pull request #1695 from matrix-org/dbkr/send_without_verifying
Add 'send without verifying' to status bar
2018-01-11 10:34:56 +00:00
Michael Telatynski
1a7dc22a8d
make wantsDateSeparator generic and throw into DateUtils
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-10 12:06:24 +00:00
Michael Telatynski
1bc9d344ae
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/nvl/rich_quoting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/views/messages/TextualBody.js
2018-01-10 11:54:58 +00:00
David Baker
9dd9a5be4b Wording tweak 2018-01-09 17:59:49 +00:00
David Baker
dbb8f878cb Tidy up imports 2018-01-09 17:57:18 +00:00
David Baker
4c101628b5 Add 'send without verifying' to status bar
Fixes other part of https://github.com/vector-im/riot-web/issues/5936
2018-01-09 13:52:37 +00:00
Luke Barnard
8c84c3f929
Merge pull request #1680 from matrix-org/t3chguy/hide_roomstatusbar
Hide status bar on visible->hidden transition
2018-01-05 15:26:22 +00:00
David Baker
845dda8f48
Merge pull request #1692 from matrix-org/t3chguy/pr-revival/turt2live/single_unsent
[revived] Singularise unsent message prompt, if applicable
2018-01-05 12:24:06 +00:00
Michael Telatynski
9f295b7a86
fix typo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-05 12:03:46 +00:00
Michael Telatynski
558a90a359
comment out RoomView.onStatusBarHidden
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-05 11:58:42 +00:00
David Baker
5aed77c752
Merge pull request #1677 from aidalgol/PropTypes
Remove use of deprecated React.PropTypes
2018-01-05 11:53:55 +00:00
David Baker
b34f360f96
Merge pull request #1690 from matrix-org/luke/remove-selected-room-prop
Remove unused selectedRoom prop
2018-01-04 17:33:36 +00:00