Commit graph

1950 commits

Author SHA1 Message Date
Richard Lewis
b6f85fbf92 Don't treat sticker messages as info messages. 2018-01-17 16:52:10 +00:00
Richard Lewis
aa524c339d Update class names. 2018-01-17 15:49:36 +00:00
Richard Lewis
fa336b7a99 Bring hide stickers icon to front when menu open. 2018-01-17 15:41:15 +00:00
Richard Lewis
5a4271268b Keep reference to stickers menu 2018-01-17 15:40:47 +00:00
Richard Lewis
614a10c6d3 Add manage integration link. 2018-01-17 00:04:06 +00:00
Richard Lewis
86da204169 Add manage stickerpacks link 2018-01-16 23:25:07 +00:00
Richard Lewis
38ed01bebd Pass room to stickerpack 2018-01-16 21:35:25 +00:00
Richard Lewis
7676fc0c10 Handle stickerpack close. 2018-01-16 21:28:15 +00:00
Richard Lewis
9339284090 Stickerpack content placeholder. 2018-01-16 21:06:57 +00:00
Richard Lewis
86542d86e9 Move stickers into stand-alone component. 2018-01-16 18:14:32 +00:00
Richard Lewis
87d8ed5af8 Add comment 2018-01-16 17:01:25 +00:00
Richard Lewis
82b9897986 Select apropriate theme colour for popover. 2018-01-15 18:27:14 +00:00
lukebarnard
408f13f68c Only set selected tags state when updating rooms
instead of every time we get an update from a GroupStore/otherwise.

This was leading to many setStates and renders at startup when we
receive many group /members /rooms etc. responses.

Also, use the rate limited version of refreshRoomList.
2018-01-15 14:42:41 +00:00
Richard Lewis
5a9a4ead96 Remove arrow opacity. 2018-01-15 14:25:56 +00:00
Richard Lewis
5e6da4d758 * Fix key error
* Remove redundant logging
* Catch error
2018-01-15 14:22:41 +00:00
Richard Lewis
0fab905a2e Cleanup styles. 2018-01-15 11:16:07 +00:00
Richard Lewis
351bbdfd4e Styling 2018-01-15 10:25:19 +00:00
Richard Lewis
a3c6dd36ef Stickers popover. 2018-01-12 17:38:21 +00:00
Michael Telatynski
23bd612730
Focus composer when clicking Reply (quote event)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-11 19:29:00 +00:00
Michael Telatynski
192cba2b79
allow text&onSenderProfileClick for tileShape===quote
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-11 19:25:43 +00:00
Richard Lewis
90b7cb3760 Consistent popover size 2018-01-11 13:41:55 +00:00
Richard Lewis
1ab71f6f50 Load stickers in AppTile 2018-01-11 13:20:58 +00:00
Richard Lewis
78bd25eff0 Sticker popover styling 2018-01-11 11:36:19 +00:00
Richard Lewis
2cf9da8c95 Load user stickerpacks 2018-01-11 11:12:46 +00:00
Richard Lewis
52f28d09e0 Stickerpack styling 2018-01-10 20:44:14 +00:00
Richard Lewis
2bb51bafe1 Content placeholder. 2018-01-10 20:29:36 +00:00
Richard Lewis
53b590f55e Add stickers popover. 2018-01-10 20:27:43 +00:00
Michael Telatynski
94167e2b8b
Run gen-i18n.js and embed the ellipsis into the base string
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-10 12:52:20 +00:00
Michael Telatynski
e45fcf10c7
Refactor DateUtils to ES6
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-10 12:00:11 +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
Richard Lewis
9abb160120 Replace apps button with stickers button in message composer. 2018-01-09 16:02:17 +00:00
Richard Lewis
5df9a01e64 Use m.room.sticker event. 2018-01-08 12:06:32 +00:00
David Baker
587a6f8e2b
Merge pull request #1687 from matrix-org/luke/perf-tag-panel-selected
Improve performance of tag panel selection (when tags are selected)
2018-01-05 15:55:24 +00:00
lukebarnard
8ade357349 Handle newly added rooms and removed rooms. 2018-01-05 12:33:26 +00:00
Michael Telatynski
c61d09464a
Merge pull request #1683 from matrix-org/t3chguy/memberinfo_warn_demote_self
small refactor && warn on self-demotion
2018-01-05 12:18:15 +00:00
Michael Telatynski
a8bd4bf858
add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-05 11:56:18 +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
Michael Telatynski
a473971c7b
negate for less indentation
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-05 11:11:20 +00:00
lukebarnard
7606e60188 Merge branch 'develop' into luke/perf-tag-panel-selected 2018-01-05 10:26:03 +00:00
David Baker
c7accb732c
Merge pull request #1624 from matrix-org/t3chguy/room_dict_refactor
make RoomDetailRow reusable for the Room Directory
2018-01-04 18:26:06 +00:00
lukebarnard
f1b60287fb Merge branch 'develop' into luke/fix-get-users-rooms-for-joined-groups 2018-01-04 17:56:34 +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
David Baker
5961cf3958
Merge pull request #1684 from matrix-org/luke/fix-tag-panel-shift-ctrl-click
Fix shift and shift-ctrl click in TagPanel
2018-01-04 17:08:01 +00:00
Michael Telatynski
831a3f7e42
Merge branch 'develop' into t3chguy/hide_left_chats_memberinfo 2018-01-04 16:41:16 +00:00
lukebarnard
2282f5c26f Remove unused selectedRoom prop 2018-01-04 14:19:10 +00:00
lukebarnard
cdd1a57569 Calculate visible rooms when tags change
instead of every time we getRoomLists
2018-01-04 11:50:33 +00:00
lukebarnard
5c5307c665 Improve performance of tag panel selection (when tags are selected)
Deselecting all tags is now slightly less performant than selecting a tag
but mostly due to the number of RoomTiles being rendered.

Swapping between different tags (a supposed common use-case) feels much
more spritely!
2018-01-03 17:12:31 +00:00
lukebarnard
2baacfa562 Handle case where ordering is not yet known 2018-01-03 14:12:28 +00:00
lukebarnard
a2bb240dcb Fetch group data for all tags instead of those selected
so that tag switching is not delayed by fetching group data, i.e group members and rooms.
2018-01-03 14:07:29 +00:00
lukebarnard
85cdd888e8 Combine TagOrderStore and FilterStore
so that shift-click semantics can work. The store that computes the shift-click
rules has to be aware of the actual order of tags displayed, so they must be done
in the same store.
2018-01-03 11:33:59 +00:00
nostradamos
2189fe9256 removed console.log 2018-01-03 01:52:02 +01:00
nostradamos
e543f55572 refactored code 2018-01-03 01:50:03 +01:00
Michael Telatynski
f67d405732
small refactor && warn on self-demotion
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-02 23:15:36 +00:00
nostradamos
36df3acf4d Merge remote-tracking branch 'origin/develop' into fix_riot_web_4821 2018-01-02 23:07:47 +01:00
nostradamos
03f88df66e Make the scrolling compatible with our riot-web fix for https://github.com/vector-im/riot-web/issues/4821 2018-01-02 22:44:18 +01:00
lukebarnard
57fb09dfb7 Fix dodgy merge done in 874a7bf
where develop branch should have been used for a chunk of code
2018-01-02 19:26:56 +00:00
lukebarnard
874a7bf1de Merge branch 'develop' into luke/fix-room-list-group-store-leak 2018-01-02 16:19:37 +00:00
Aidan Gauland
35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Travis Ralston
cc5eb77658 Remove presence management
The feature is incredibly buggy and doesn't work as expected due to server behaviour and client interaction. One of the major problems is the constantly confused presence state - this is caused by the mobile apps conflicting on the state of the web app, causing it to consider the user offline or online (and rarely away) depending on how riot-android/ios is behaving at the time.

This reverts two PRs:
* https://github.com/matrix-org/matrix-react-sdk/pull/1620
* https://github.com/matrix-org/matrix-react-sdk/pull/1482

The changes to the context menu positioning were not reverted as they are useful outside of presence management.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-12-25 14:25:13 -07:00
Michael Telatynski
05434e782a
change Composer placeholder text based on replying/rich quoting state
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-18 19:49:38 +00:00
Travis Ralston
e5df0dcf1e
$riot_theme -> $theme
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-12-18 09:19:54 -07:00
Michael Telatynski
882068078d
fix missing space
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-17 20:53:53 +00:00
Michael Telatynski
9603b21199
s/Quote/Reply/ and ES6 tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-17 20:20:45 +00:00
Travis Ralston
94ef80c008 Support sending the current theme to widgets
This is a namespaced variable because some clients may not be able to support themes, or may have varying definitions of what "light" means. Widgets are recommended to opt for per-client checks, or accept that some clients may differ.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-12-16 20:11:00 -07:00
Michael Telatynski
9baf71c4fc
only pass one child to EmojiText otherwise it cries
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-15 19:52:47 +00:00
Michael Telatynski
4043ea7d57
change CSS classes and i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-15 17:57:24 +00:00
Luke Barnard
adaea9ad5b
Merge pull request #1647 from matrix-org/luke/tag-panel-improve-performance
Attempt to improve TagPanel performance
2017-12-15 17:38:15 +00:00
Luke Barnard
71740cc176 Merge branch 'develop' into luke/fix-room-list-group-store-leak 2017-12-15 17:36:36 +00:00
Luke Barnard
d292dab9c6 More doc 2017-12-15 17:30:21 +00:00
Luke Barnard
56affd3d42 Rename for clarity 2017-12-15 17:29:06 +00:00
Luke Barnard
d2066f41d5
Merge pull request #1656 from matrix-org/luke/fix-scroll-jump-on-message-decryption
Fix one variant of a scroll jump that occurs when decrypting an m.text
2017-12-15 17:25:21 +00:00
Luke Barnard
653137f6ec Update comment 2017-12-15 17:21:20 +00:00
Luke Barnard
961d5e1868 Split updatedSelectedTagsRooms
because we don't need to get the rooms for all groups when
the filtered tags change.
2017-12-15 14:23:35 +00:00
Luke Barnard
34e455c6fc Fix leaking of GroupStore listeners in RoomList 2017-12-15 14:12:21 +00:00
Luke Barnard
7f551f517b Add comments to _onDecrypted 2017-12-15 14:01:07 +00:00
Luke Barnard
a516c18cc5 Indicate event tile resize after rendering 2017-12-15 13:58:58 +00:00
Luke Barnard
df1134f092 Use "shared" DMRoomMap 2017-12-14 16:34:49 +00:00
Luke Barnard
3732fd29d5 Comments for instance variables 2017-12-14 16:17:06 +00:00
Michael Telatynski
5c229b9ef8
DRY matrix.to link generation so it is all changeable in one class
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-12 23:33:40 +00:00
Michael Telatynski
4666ac7c83
hide rich quoting behind flags, retaining original quoting for now
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-12 23:29:43 +00:00
Richard Lewis
c93266b6af Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/titleBar 2017-12-11 13:08:49 +00:00
Michael Telatynski
0f85391587
Implement Rich Quoting/Replies
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-10 12:50:41 +00:00
David Baker
0d38e7510d
Merge pull request #1600 from matrix-org/dbkr/udd_no_auto_show
Don't Auto-show UnknownDeviceDialog
2017-12-08 16:33:25 +00:00
Richard Lewis
a9ae4be74c Fix page title variable name. 2017-12-08 15:27:14 +00:00
Luke Barnard
196e1a4f66 Fix one variant of a scroll jump that occurs when decrypting an m.text 2017-12-08 15:25:14 +00:00
Richard Lewis
20917e1a07 Set page title from widget data, if available. 2017-12-08 15:12:48 +00:00
Richard Lewis
df438924a7 Remove logging. 2017-12-07 09:57:53 +00:00
Richard Lewis
e20db416f2 Add field to bypass riot widget loading screen. 2017-12-06 16:44:41 +00:00
Luke Barnard
aac5bcfe80 Attempt to improve TagPanel performance
by only recalculating rooms to show (for a given group) when a group updates.
2017-12-05 11:25:30 +00:00
Luke Barnard
363fe04a10 isCtrlOrCmdKeyEvent -> isOnlyCtrlOrCmdKeyEvent 2017-12-01 10:44:00 +00:00
Luke Barnard
fe81fcb8c6 Factor out isCtrlOrCmdKeyEvent, use that in TagPanel
as opposed to the incorrect ctrl || meta
2017-12-01 10:30:49 +00:00
Luke Barnard
45bcb6f2ed Implement TagPanel (or LeftLeftPanel) for group filtering
This allows for filtering of the RoomList by group. When a group is selected, the room list will show:
 - Rooms in the group
 - Direct messages with members in the group

A button at the bottom of the TagPanel allows for creating new groups, which will appear in the panel following creation.
2017-11-29 16:53:43 +00:00
David Baker
a784abd57f
Comment typo 2017-11-22 17:13:18 +00:00
Michael Telatynski
4d177626b5
init Linkify properly to make tests happy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-19 13:24:18 +00:00
Michael Telatynski
d943807ad1
remove unused imports
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-19 13:18:06 +00:00
Michael Telatynski
f0752572a7
make RoomDetailRow reusable for the Room Directory
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-19 12:49:26 +00:00
Stefan Parviainen
df921438f3 Make PresenceLabel more easily translatable
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-11-16 18:36:54 +01:00
David Baker
196eafdc7f Merge remote-tracking branch 'origin/develop' into dbkr/udd_no_auto_show 2017-11-16 15:59:16 +00:00
Luke Barnard
b54e563cb6 Merge branch 'develop' into luke/linting-keyword-spacing 2017-11-16 13:23:42 +00:00
Luke Barnard
dad797d4a2 Run linting --fix 2017-11-16 13:19:36 +00:00
Luke Barnard
f99755378a
Merge pull request #1612 from matrix-org/t3chguy/state_events
differentiate between state events and message events
2017-11-16 13:06:36 +00:00
Stefan Parviainen
2c1618bc10 Fix conflict and update strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-11-15 20:40:51 +01:00
Michael Telatynski
c0002e7778
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/state_events 2017-11-15 16:03:07 +00:00
Michael Telatynski
5563b71c47
differentiate between state events and message events
so that people can't fake state event types and have them rendered.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-15 15:56:54 +00:00
David Baker
f8fc6dc83e Merge remote-tracking branch 'origin/develop' into dbkr/udd_no_auto_show 2017-11-15 12:11:33 +00:00
Travis Ralston
bd4102eb3d Merge branch 'develop' into travis/granular-settings 2017-11-14 19:12:48 -07:00
Matthew Hodgson
f05958e334
Merge pull request #1482 from turt2live/travis/presence
Implement user-controlled presence
2017-11-14 23:53:16 +00:00
Stefan Parviainen
df6d5cc2b4 Pass plain components, rather than functions returning them 2017-11-14 20:09:52 +01:00
Stefan Parviainen
3afbaf61e7 Refactor i18n stuff a bit 2017-11-13 20:19:33 +01:00
Travis Ralston
c5c346f0b7 Merge branch 'develop' into travis/granular-settings 2017-11-13 12:18:41 -07:00
David Baker
0659ac1ccb Merge remote-tracking branch 'origin/develop' into dbkr/udd_no_auto_show 2017-11-13 17:45:57 +00:00
Luke Barnard
52af7a7659 Attempt to clarify the affect that the users_default has on power levels
This modifies displayed power levels such that:
 - If users_default is !== 0:
   - the power level 0 is displayed as "Restricted (0)"
   - the power level users_default is displayed as "Default ({users_default})"
 - Otherwise:
   - the power level 0 is displayed as "Default (0)"

When changing users_default, to say, 10, when the textual powers are rendered
again, they will take users_default into account. So those previously at 10
and which would have previously have been rendered "Custom of 10" will now
read "Default (10)". Conversely, those that were "Default (0)" will now read
"Restricted (0)".
2017-11-13 17:03:48 +00:00
Luke Barnard
853d33a93a Make groups a fully-fleged baked-in feature 2017-11-10 15:42:11 +00:00
David Baker
b1ec430523 Remove now-unused dispatches 2017-11-09 16:09:12 +00:00
Travis Ralston
f7da5836e1 Make blacklistUnverifiedDevices override the level order
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-08 17:41:32 -07:00
Travis Ralston
289b0c2b6a
Merge branch 'develop' into travis/granular-settings 2017-11-07 14:55:12 -07:00
Luke Barnard
d777e370f2
Merge pull request #1583 from matrix-org/luke/groups-disable-rooms-whilst-editing
Disable RoomDetailList in GroupView when editing
2017-11-07 18:53:04 +00:00
Travis Ralston
e0ddd88ec9 Default to no read pins if there is no applicable account data
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-07 11:14:27 -07:00
Matthew Hodgson
e14e0bf200
Merge pull request #1486 from turt2live/travis/pinned-notice
Add a small indicator for when a new event is pinned
2017-11-07 17:56:12 +00:00
Luke Barnard
80d4873542 Disable RoomDetailList in GroupView when editing
Otherwise the rooms can be clicked on.
2017-11-07 16:54:28 +00:00
Travis Ralston
142d23a099
Cap the read pin event IDs to 10
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-07 09:16:19 -07:00
Luke Barnard
47bf991471
Merge pull request #1577 from matrix-org/dbkr/composer_at_room_pills
Room notifs in autocomplete & composer
2017-11-07 10:25:48 +00:00
David Baker
df5c6470e8 get dict syntax right 2017-11-06 22:01:23 +00:00
David Baker
029853d379
Merge pull request #1578 from matrix-org/luke/groups-admin-badges
Indicate admins in the group member list with a sheriff badge
2017-11-06 17:16:34 +00:00
David Baker
08d006d112 PR feedback 2017-11-06 17:15:09 +00:00
Luke Barnard
d6a6e59d6c Indicate admins in the group member list with a sheriff badge 2017-11-06 16:37:16 +00:00
David Baker
adc4290451 Pillify room notif pills in composer 2017-11-06 15:11:42 +00:00
Richard Lewis
f1db564506
Merge pull request #1533 from anoadragon453/develop
Remember whether widget drawer was hidden per-room
2017-11-06 14:29:25 +00:00
Travis Ralston
ef45d82ec6 Fix URL preview save calls
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 19:52:20 -07:00
Travis Ralston
b75be41f94 Fix split-brain for blacklistUnverifiedDevices
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 19:52:06 -07:00
Travis Ralston
cb17c0a379 Migrate blacklistUnverifiedDevicesPerRoom
This currently causes a split-brain scenario for the application due to the priority of each level. Granular settings assumes a simple override, however the crypto setting wants per room to be overriden with the global setting, regardless of the room setting. Some additional comments are needed on the intended behaviour.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 19:15:55 -07:00
Travis Ralston
8282534f87 Add SettingsLevel enum; Move settings to own file.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-03 23:19:45 -06:00
Travis Ralston
893c39bfbe Merge branch 'develop' into travis/granular-settings 2017-11-03 22:00:07 -06:00
Travis Ralston
de6fc32a87 Show an indicator when there are any pins in the room
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-03 20:00:48 -06:00
Travis Ralston
a2b7f6d30e Merge remote-tracking branch 'matrix-org/develop' into travis/pinned-notice 2017-11-03 19:57:39 -06:00
Travis Ralston
5c37155730 Don't assume we have a valid event.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-03 18:18:09 -06:00
Travis Ralston
3656fdb571 Store read pinned events as an array to avoid racing saves.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-03 18:12:57 -06:00
Luke Barnard
58f1757f0c Handle rooms with no aliases or canonical alias 2017-11-03 17:52:36 +00:00
Luke Barnard
98312a4647 Use, if possible, a room's canonical or first alias when viewing the room
(Only affects rooms the user has never joined)
2017-11-03 17:37:13 +00:00
David Baker
43a23d7e89
Merge pull request #1568 from matrix-org/dbkr/autocomplete_provider_room
Give autocomplete providers the room they're in
2017-11-03 14:29:59 +00:00
Luke Barnard
151f9917b1 Fix group invites such that they look similar to room invites
- Change GroupInviteTile to use RoomTile CSS
 - Give group invites their own sub list, with heading "Community Invites"
2017-11-03 12:19:37 +00:00
David Baker
843d797ded Better type checking 2017-11-02 18:17:57 +00:00
David Baker
7f9967389d Pass room into Autocompleter 2017-11-02 18:15:26 +00:00
David Baker
498b117d5a copyrights 2017-11-02 18:01:28 +00:00
David Baker
4953d4de4d Give autocomplete providers the room they're in
Removes the gut-wrenching that RoomView does to jam the user list
into the user autocomplete provider.
2017-11-02 17:51:08 +00:00
Luke Barnard
e909d859ab
Merge branch 'develop' into luke/groups-room-info 2017-11-02 10:56:33 +00:00
Luke Barnard
0dcd52d88f Fix some react warnings firing 2017-11-01 17:12:22 +00:00
Travis Ralston
6f8523081b Some documentation
Far from complete, and probably needs a bit of work, but it's a start.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-30 21:09:24 -06:00
Travis Ralston
0d3f0eaf98 Convert local settings to granular settings
This breaks language selection.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 16:53:00 -06:00
Travis Ralston
ae10a11ac4 Convert synced settings to granular settings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 01:43:52 -06:00
Travis Ralston
bf815f4be9 Support labs features
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-28 20:21:50 -06:00
Stefan Parviainen
95b2392104 Merge branch 'develop' into departify 2017-10-27 19:23:13 +02:00
Andrew (anoa)
b4868a6846
showWidget->hideWidgetDrawer and remove logs
Signed-off-by: Andrew (anoa) <anoa@openmailbox.org>
2017-10-26 11:27:58 -07:00
Michael Telatynski
1d5b4a9d50 Merge branch 'develop' into t3chguy/mention_user 2017-10-26 18:10:10 +01:00
Luke Barnard
eec6ed36cd Use correct icon for group room deletion and make themeable
Also fix cancel icons to have class mx_filterFlipColor
2017-10-26 14:05:58 +01:00
Travis Ralston
e773585a02 Merge remote-tracking branch 'matrix-org/develop' into travis/presence
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-25 11:21:39 -06:00
Stefan Parviainen
53e983f9c7 Fix merge conflict
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-25 18:19:27 +02:00
Michael Telatynski
fd7e057ec0 Merge branch 'develop' into t3chguy/invite_in_memberinfo 2017-10-25 16:33:50 +01:00
David Baker
8ed3474b64 Merge pull request #1529 from matrix-org/luke/fix-can-edit-editable-item-lists
Only show editing UI for aliases/related_groups for users /w power
2017-10-25 15:52:51 +01:00
Luke Barnard
39fa866d68 Merge pull request #1535 from matrix-org/luke/fix-interactable-greyed-ui
Swap from `ui_opacity` to `panel_disabled`
2017-10-25 15:47:18 +01:00
Luke Barnard
b1f2a6c1e9 Dramatically simplify use of mx_fadable
by applying it to parent elements of things that need to be faded.
2017-10-25 15:15:49 +01:00
Michael Telatynski
f3c8951d4e
remove unused lastPresenceTs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-25 12:56:23 +01:00
Luke Barnard
2f8f2ce76e Swap from ui_opacity to panel_disabled
to simplify the process of disabling panels in the UI.
2017-10-25 11:23:51 +01:00
Michael Telatynski
b3463146ba
Add invite button to MemberInfo if user has left or wasn't in room
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-25 01:00:13 +01:00
Andrew (anoa)
9821f0d459
Fix linting
Signed-off-by: Andrew (anoa) <anoa@openmailbox.org>
2017-10-24 16:42:06 -07:00
Andrew (anoa)
f032284eff
Remember whether widget drawer was hidden per-room
Fixes #4850

Signed-off-by: Andrew (anoa) <anoa@openmailbox.org>
2017-10-24 16:28:10 -07:00
Michael Telatynski
5514d81683
Add Mention button to MemberInfo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-24 23:01:40 +01:00
Michael Telatynski
c896dfb17b
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-24 22:21:33 +01:00
Michael Telatynski
f813a752e7
only show change power level option in MemberInfo if we can actually
send m.room.power_level AND are lower PL than them

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-24 22:12:48 +01:00
Stefan Parviainen
4ff369c884 Merge branch 'develop' into departify 2017-10-24 18:27:24 +02:00
Luke Barnard
ee7ebc425c Only show editing UI for aliases/related_groups for users /w power 2017-10-24 16:19:09 +01:00
Luke Barnard
e419446081 Add fields needed by RoomDetailList to groupRoomFromApiObject
and also alter props API for RDL to match the returned rooms.
(This doesn't affect RoomDirectory - this does not use RDL (yet))
2017-10-24 10:13:38 +01:00
Stefan Parviainen
115772d526 Fix merge conflict
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-23 19:57:52 +02:00
Stefan Parviainen
fc860c66bc De-partify RoomPreviewBar
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-17 22:03:49 +02:00
Stefan Parviainen
8083dccfa5 De-partify SenderProfile
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>

Also, text does not need to be EmojiText
2017-10-16 20:53:43 +02:00
Luke Barnard
47ac0988ba Refactor class names for an entity tile being hovered over 2017-10-16 16:31:13 +01:00
David Baker
e4a3309752 Merge pull request #1475 from matrix-org/luke/groups-room-directory-esque
Modify GroupView UI
2017-10-16 10:17:44 +01:00
Travis Ralston
4f6cd6b23a Add a small indicator for when a new event is pinned
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-15 21:17:43 -06:00
Stefan Parviainen
ad2f54f8ab Fix italics and parens
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-15 18:01:57 +02:00
Stefan Parviainen
15d1dc1f3b Fix indentation
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-15 16:57:22 +02:00
Stefan Parviainen
9a5cffb5eb Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into departify 2017-10-15 16:49:27 +02:00
Travis Ralston
854394cb2e Merge branch 'develop' into travis/presence 2017-10-14 18:49:58 -06:00
Matthew Hodgson
1d75d9e90d yet more horrifically strict linting :/ 2017-10-15 01:47:11 +01:00
Matthew Hodgson
635996c083 more bizarrely strict linting :/ 2017-10-15 01:19:06 +01:00
Matthew Hodgson
247e32115f bizarrely strict linting :/ 2017-10-15 01:13:52 +01:00
Matthew Hodgson
2b367edccf Merge pull request #1439 from turt2live/travis/pinned_messages
Message/event pinning
2017-10-15 01:03:18 +01:00
Travis Ralston
49c19bc9b4 Merge branch 'develop' into travis/presence 2017-10-14 17:26:54 -06:00
Matthew Hodgson
e57d9e686b Merge branch 'develop' into t3chguy/jump_to_rr 2017-10-14 23:45:17 +01:00
Travis Ralston
8a641c7173 Hide message pinning behind a labs setting
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-14 16:40:10 -06:00
Travis Ralston
c34b55c6c7 Merge branch 'develop' into travis/pinned_messages 2017-10-14 16:10:32 -06:00
Matthew Hodgson
3efa0d2a76 Merge pull request #1478 from turt2live/travis/unset-avatar
Buttons to remove room/self avatar
2017-10-14 22:13:32 +01:00
Travis Ralston
6cd07731c4 Add MemberPresenceAvatar and control presence ourselves
Includes rudimentary support for custom statuses and user-controlled status. Some minor tweaks have also been made to better control how we advertise our presence.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-14 14:37:47 -06:00
Michael Telatynski
b0b7472901
undo bad merge
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-14 17:14:57 +01:00
Michael Telatynski
e79f9ef011
=== > ==
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-14 17:10:51 +01:00
Michael Telatynski
6ad8532bed
lowerCase query so that searching for Erik will actually find Erik..
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-14 17:09:58 +01:00
Michael Telatynski
a000439948
pass search query to filter fn in _updateList
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-14 17:09:30 +01:00
Travis Ralston
e5c8e3e7ad Add option to unset room avatar
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-13 20:57:15 -06:00
Stefan Parviainen
a84b42bf24 Departify RoomSettings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-13 21:10:50 +02:00
Luke Barnard
6f20445a42 Explain topic click stopPropagation 2017-10-13 17:57:28 +01:00
Luke Barnard
77418f535e Modify GroupView UI
- Remove featured users/rooms
 - Add "Rooms" section to show all rooms in the group in a room-directory-esque list. This has a "+" button in "edit" mode.
 - Make the group view body scrollable
2017-10-13 16:46:33 +01:00
Stefan Parviainen
9495ccdbb5 Don't hardcode ConfirmUserActionDialog title
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-12 22:15:53 +02:00
Stefan Parviainen
1f44233e05 Better translations in RoomList.js
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-12 21:24:45 +02:00
David Baker
047daec587 Merge pull request #1468 from matrix-org/dbkr/labs_config
enable/disable features in config.json
2017-10-12 18:38:18 +01:00
David Baker
e50478aa1d enable/disable features in config.json
As per https://docs.google.com/document/d/1Kn-mz2dDce9Cqc4oUTl5yJXGvmTlky1_KezuwUg58x0/edit#

Replaces:
 * enableLabs setting
 * 'override' flag in labs
 * 'default' flag in labs

Un-feature-flags matrix apps since this was now overidden to be
enabled.
2017-10-12 17:03:38 +01:00
Luke Barnard
36bb8b7dc4 Fix bug that inserted emoji when typing
This was quite simple in the end -- the mouse doens't move, but on some browsers, the autocomplete appearing beneath the mouse would cause the `onMouseOver`, which is not `onMouseMove`.

The fix was to use `onMouseMove`.

Fixes vector-im/riot-web#4974
2017-10-12 11:31:31 +01:00
Luke Barnard
d3f9a3aeb5 Run eslint --fix
Fixing 1000s of lint issues. Some rules cannot be `--fix`ed but this goes some way to linting the entire codebase.
2017-10-11 17:56:17 +01:00
Luke Barnard
8958be9321 Merge pull request #1441 from turt2live/travis/who_banned
Show who banned the user on hover
2017-10-11 17:33:53 +02:00
Travis Ralston
8a2813ac08 Fallback to MXID instead of relying on the user being in the room
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-11 09:08:40 -06:00
Travis Ralston
d1fdd20809 Show who banned the user on hover
Fixes https://github.com/vector-im/riot-web/issues/5039

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-11 09:08:29 -06:00
Travis Ralston
0ab5b1a6af _td translatable strings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-11 08:50:28 -06:00
Travis Ralston
f874fc1203 Merge branch 'develop' into travis/pl_enhancements 2017-10-11 08:42:45 -06:00
Michael Telatynski
dbb6f5a44d
i18n the Jump to Read Receipt in MemberInfo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-07 19:27:49 +01:00
Michael Telatynski
d54cea5429
Add a way to jump to a user's Read Receipt from MemberInfo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-07 19:25:13 +01:00
Michael Telatynski
7492f2dffa
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into set_default_federate_by_settings 2017-10-04 22:35:29 +01:00
Luke Barnard
ed74ac394b Put related groups UI behind groups labs flag 2017-10-04 14:35:13 +01:00
Luke Barnard
7be5e685f7 Implement UI for editing related groups of a room
(using the new EditableItemList)
2017-10-04 13:19:57 +01:00
Stefan Parviainen
a96169e80e Fix merge conflict 2017-10-02 17:57:22 +02:00
David Baker
b202601d65 Fix showing 3pid invites in member list 2017-10-02 15:10:32 +01:00
Travis Ralston
20798dd2fa Expose power level setting for widgets
Fixes https://github.com/vector-im/riot-web/issues/4866

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:37:32 -06:00
Travis Ralston
8ee9d39ffa Expose option for m.room.topic power level
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:12:05 -06:00
Travis Ralston
8ab3d94c1c Always show common events in the PL section of room settings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:11:48 -06:00
Travis Ralston
614cf950b6 Supply user-friendly labels for common events
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:45:00 -06:00
Travis Ralston
2e1b2178a1 Remove assumptions on how languages work in the power levels section
This does mean that the strings will need to be re-translated, but now they may be more accurate because the comma is not assumed in the code.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:35:49 -06:00
Travis Ralston
415693bd83 Support editing power levels of events.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:32:40 -06:00
Travis Ralston
a01387f7a6 Use an AccessibleButton for unpinning from the pane.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 13:32:25 -06:00
Travis Ralston
0f2fd9f698 Move the PinnedEventsPanel to the react-sdk
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 13:25:29 -06:00
Travis Ralston
874d383a8f Add dock for pinned messages at the top of the room
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Travis Ralston
3a58e1c066 Show pinned message changes in the timeline
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Luke Barnard
6b9a2909df Add rule to enforce spacing in curly brackets in JSX children
This required an updated in version of eslint-plugin-react to 7.4.0.
2017-09-28 11:21:06 +01:00
Stefan Parviainen
35cb52febc Fix merge conflict 2017-09-27 08:41:37 +02:00
Luke Barnard
1bd200f1b1 Merge pull request #1417 from matrix-org/dbkr/member_list_show_more
MemberList: show 100 more on overflow tile click
2017-09-25 14:50:33 +01:00
Richard van der Hoff
e2f8bb2ec0 Fix NPE in MemberList
_getChildCountInvited would throw an NPE if invoked before the js-sdk had found
the room. Make sure we initialise the state correctly.
2017-09-25 10:25:21 +01:00
Stefan Parviainen
2b5b708057 Translate unknown presence label
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-24 10:14:04 +02:00
Stefan Parviainen
d4929b558e Add dummy translation function to mark translatable strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-22 21:43:27 +02:00
David Baker
25da0f6a7a MemberList: show 100 more on overflow tile click
Not the full list because on HQ that causes your browser to implode.

This should really be a decent paginated list at this point, but this is better
for now.
2017-09-22 17:01:14 +01:00
David Baker
9cbfc22352 Make the invite section a truncatedlist too
For uniformity and to speed up rooms like HQ with have a lot of
lingering invites.
2017-09-22 16:50:54 +01:00
David Baker
dba48e2f8f use start, end rather than min, max 2017-09-22 15:07:45 +01:00
David Baker
16398fbfc2 Allow TruncatedList to get children via a callback
And update MemberList to use it as such. This means that the parent
only needs to make react elements for the elements that will
actually be rendered, rather than all of them.

In practive this doesn't make a huge difference as making React
elements is fairly fast, but experimentally (with all profiling
turned on), MemberList went from 25ms in the constructor and
81ms in render to 38ms in constructor but sub 1ms render for
Matrix HQ.
2017-09-22 13:15:02 +01:00
David Baker
add91f9a7d Update when a group arrives 2017-09-21 16:28:49 +01:00
Luke Barnard
5295d7f058 Merge branch 'develop' into luke/feature-flair 2017-09-19 14:55:54 +01:00
Luke Barnard
e9fb5712bd Merge branch 'develop' into dbkr/group_userlist 2017-09-19 13:26:55 +01:00
Luke Barnard
26941e994f Merge branch 'develop' into luke/feature-flair 2017-09-18 14:46:50 +01:00
Luke Barnard
caaf5cca14 Only show the integ management button if user is joined 2017-09-18 13:34:33 +01:00
Matthew Hodgson
09e6ea00c5 Merge pull request #1273 from matrix-org/t3chguy/hide_chevron_memberlist_3pid_notarget
suppressOnHover for member entity tiles which have no onClick
2017-09-17 23:19:35 +01:00
turt2live
2e72d6cd7c Hide events that were sent by ignored users
This code only kicks in if the user was ignored after an event was sent. The homeserver should prevent other events from coming in.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 20:16:56 -06:00
Travis Ralston
3889df6b08 Add (un)ignore button to MemberInfo
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 19:42:09 -06:00
David Baker
5087da9247 Merge remote-tracking branch 'origin/develop' into luke/feature-flair 2017-09-13 16:52:12 +01:00
David Baker
3c3328c5f1 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-09-13 16:34:39 +01:00
David Baker
8abd35f581 Remove spurious cancel button
That appeared if you clicked on a room from the room directory
(it didn't do anything). It's only supposed to be shown when
editing room settings.
2017-09-12 15:48:13 +01:00
David Baker
757bc9fe32 Update roomlist when an event is decrypted
Events are now decrypted asynchronously, so are not decrypted
at the time of the Room.timeline which is when our RoomList
got the chance to update. It needs to update once the event has
been decrypted.

Ideally we would not update the whole room list order, but this is
how all the room list re-ordering happens right now, so staying
consistent with this.

Fixes https://github.com/vector-im/riot-web/issues/5020
2017-09-12 14:47:26 +01:00
David Baker
be8f0991a6 Avoid re-rendering RoomList on room switch
Introduce a class that consumes updates from the RoomViewStore and
announces to listeners if the active room ID is now or is no longer
the room ID they specified. Naming suggestions welcome: it's
currently called ActiveRoomObserver.

Avoids passing the selectedRoomId down from MatrixChat all the way
through the LeftPanel / RoomList / RoomSubList to the RoomTiles.

Also introduce a CallPreview class that listens directly for
RoomViewStore changes as the call preview in the left panel needs
to know when the room changes, so this allows this component to
update without having to update the entire left panel.
2017-09-11 16:59:09 +01:00
David Baker
9efa604706 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-30 17:39:47 +01:00
Luke Barnard
ebc1993530 Implement Flair
Add 14x14 group avatars next to sender profiles.
2017-08-30 11:10:49 +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
d86fe0df6e Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-29 13:29:55 +01:00
Michael Telatynski
9658efd6d7
add comment and remove redundant logic 2017-08-28 01:04:18 +01:00
Michael Telatynski
21af3fe189
modularize and invert logic, so banned etc will count as left 2017-08-28 00:46:28 +01:00
Michael Telatynski
433cd505ee
skip direct chats which either you or the target have left 2017-08-28 00:39:59 +01:00
Michael Telatynski
b644751ca1
skip direct chats which you have left in memberinfo 2017-08-28 00:16:22 +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
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
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
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
e93a1fac3d Position add app widget link 2017-08-21 11:29:42 +01:00
Matthew Hodgson
d7f5295949 untested WIP for supporting multiple widgets properly 2017-08-18 18:40:00 +01: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
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
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
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
Michael Telatynski
bdb2d6b475
Merge remote-tracking branch 'remotes/origin/develop' into set_default_federate_by_settings
# Conflicts:
#	src/components/structures/MatrixChat.js
2017-08-17 13:39:19 +01:00
Richard Lewis
02edadbd15 Don't bubble cancel click to room header. 2017-08-17 12:21:44 +01:00
Richard Lewis
d1ee257b5a Pass roomId rather than whole room object. 2017-08-17 12:15:01 +01:00
Richard Lewis
9111cb421e Merge pull request #1291 from matrix-org/rxl881/maxWidgets
Show a dialog if the maximum number of widgets allowed has been reached.
2017-08-17 10:03:42 +01:00
Luke Barnard
6b1b643d41 Merge branch 'develop' into luke/store-history-as-raw-content 2017-08-14 16:42:22 +01:00
Luke Barnard
9742962d61 preventDefault when moving autocomplete selection with vertical arrow
Otherwise the composer selection updates, in turn hiding the autocomplete box - fixes vector-im/riot-web#4790
2017-08-14 15:16:13 +01:00
Richard Lewis
454ec40b00 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-11 10:35:20 +01:00
Richard Lewis
0323151bee Show a dialog if the maximum number of widgets allowed has been reached. 2017-08-10 23:53:43 +01:00
Michael Telatynski
41843f021d
don't track two more potential risks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-10 15:21:01 +01:00
Michael Telatynski
56ea528f43
don't track error messages .2
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-10 15:17:52 +01:00
Michael Telatynski
b19c1010aa
Merge branches 'develop' and 't3chguy/i18n_analytics' of github.com:matrix-org/matrix-react-sdk into t3chguy/i18n_analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/Analytics.js
2017-08-10 13:54:55 +01:00
Michael Telatynski
24599ace32
don't track error messages
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-10 13:49:11 +01:00
Luke Barnard
b2fd4be166 Merge pull request #1289 from matrix-org/luke/fix-quote-innerText
Quote by taking the innerText of eventTiles
2017-08-10 10:35:49 +01:00
Luke Barnard
678c472b75 Quote by taking the innerText of eventTiles
because using `body` gives inconsistent results - sometimes it will contain markdown and sometimes not, and this may not correspond with the `formatted_body`.

TODO: Do quoting proper - using `in_response_to`.
2017-08-10 10:14:14 +01:00
Luke Barnard
390e77ee22 Merge pull request #1288 from matrix-org/luke/track-richtext-mode
Track whether the user has richtext mode enabled
2017-08-10 09:31:09 +01:00
Luke Barnard
fc6977e68d Track RT mode once we've retrieved the setting from account data 2017-08-09 19:00:38 +01:00
Luke Barnard
e121440d05 Track whether the user has richtext mode enabled 2017-08-09 18:39:06 +01:00
Luke Barnard
2d47d3d2c3 Hide autocomplete when RTE selection state (cursor) changes 2017-08-09 17:36:35 +01:00
Richard Lewis
185379b037 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-09 14:07:45 +01:00
Richard Lewis
4bc25f12cb Move manage integrations button in to stand-alone component 2017-08-09 11:44:24 +01:00
Luke Barnard
610b2a3a42 For mentions, always use rawDisplayName and remove (IRC) 2017-08-09 10:40:06 +01:00
David Baker
8426ada24c Merge pull request #1282 from matrix-org/rav/show_unencrypted_messages_as_unencrypted
Show unencrypted messages as unencrypted
2017-08-08 18:11:56 +01:00
Richard van der Hoff
da85cb9f45 Show unencrypted messages as unencrypted
Previously, we were special-casing outgoing messages such that they were shown
as encrypted even when encryption had failed for some reason.

There's no need for this: outgoing messages have a working isEncrypted() method
which we can use to show whether the event has been encrypted yet. Arguably we
could do better than an open padlock for events in the 'encrypting' send state,
but I'm not really sure what.
2017-08-08 17:49:41 +01:00
David Baker
b76b6791b2 Merge pull request #1279 from matrix-org/luke/fix-quoting-messages-with-mentions
Always use message `body` when quoting
2017-08-08 17:47:25 +01:00
Luke Barnard
cb8a66b5a1 When hideing autocomplete, also remove completion state 2017-08-08 17:25:11 +01:00
Luke Barnard
503fa6a7b3 Always use message body when quoting
(not formatted_body)

This is because draft-js has regressed with a bug that causes some entities to not exist within a given ContentState - see vector-im/riot-web#4756
2017-08-08 14:59:56 +01:00
David Baker
ca2273519d Merge pull request #1277 from matrix-org/luke/feature-pills-hide-avatar-setting
Add optional setting for hiding avatars in <Pill>s
2017-08-08 14:01:34 +01:00
Luke Barnard
91a1cc4431 Mandate ctrl/meta ONLY for a subset of key bindings
Because by default dratf-js doesn't check that other modifiers are _not_ pressed.
2017-08-08 13:36:43 +01:00
Luke Barnard
b08d32371d Add optional setting for hiding avatars in <Pill>s
As part of https://github.com/vector-im/riot-web/issues/4640#issuecomment-316659445
2017-08-08 11:13:29 +01:00
Luke Barnard
7018deee44 Fix ctrl+a, backspace toggling block format
Now it will delete the selected range (and not toggle the block format). Fixes vector-im/riot-web#4753
2017-08-07 17:16:42 +01:00
Luke Barnard
641fda0162 Adjust comment 2017-08-07 16:29:22 +01:00
Luke Barnard
d9d8f2055f Allow default for ctrl+shift+b, ctrl+shift+u in RTE
fixes vector-im/riot-web#4750
2017-08-07 16:23:37 +01:00
Richard Lewis
18ae5fd129 Send messages on widget addition and deletion 2017-08-06 11:01:14 +01:00
Richard Lewis
308d932b2f CancelClick prop. 2017-08-06 10:29:43 +01:00
Richard Lewis
a22e768343 Move room settings button to RoomHeader 2017-08-06 10:01:48 +01:00
Michael Telatynski
c4803c6d89
suppressOnHover for member entity tiles which have no onClick
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-05 13:01:19 +01:00
Richard Lewis
1973b2bbe7 Switch app drawer icons 2017-08-05 00:00:19 +01:00
Luke Barnard
a27eefd893 Fix a couple of more errors due to API changes 2017-08-03 15:20:44 +01:00
Luke Barnard
901cbf495d Update decorator strategy API in accordance with recent changes to 0.11.0
See 590cdc6c54, which is a change to the API not mentioned in the migration to v0.10 notes https://draftjs.org/docs/v0-10-api-migration.html
2017-08-03 12:02:29 +01:00
Luke Barnard
1d1cd5f691 Reflect API change for decorator strategy 2017-08-03 11:36:07 +01:00
Luke Barnard
fb5dc295aa Reflect API change for getting an Entity 2017-08-03 11:29:26 +01:00
Luke Barnard
124795006c Reflect API change for creating an Entity 2017-08-03 11:18:56 +01:00
Michael Telatynski
e9afcec5b2
fix m.federate=false warning in room settings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-02 13:42:24 +01:00
Luke Barnard
7fcb8c5ff0 Merge pull request #1261 from matrix-org/luke/fix-agressive-emoji-auto-replace
Only auto-replace emoji following ^ or \s
2017-08-01 15:56:42 +01:00
Luke Barnard
438b63bee2 Only auto-replace emoji following ^ or \s
So as not to cause issues when typing e.g. `This is what was tested: ` (the "d:" used to be transformed into an emoji)
2017-08-01 14:26:30 +01:00
Richard Lewis
abae43b65e Merge pull request #1257 from matrix-org/rxl881/widgetPermissions
Widget permissions
2017-08-01 12:13:09 +01:00
Michael Telatynski
4bdaa15c47
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/i18n_analytics 2017-07-28 21:01:59 +01:00
Luke Barnard
8a5f2bf2ca Interpret a split-block as format toggle for an empty block
(`split-block` is emitted when "return" is pressed)

part of fixing https://github.com/vector-im/riot-web/issues/4580
2017-07-28 14:46:57 +01:00
Richard Lewis
20a1693c71 Only display add app link if user has permission to add widgets in the room. 2017-07-27 23:38:02 +01:00
Luke Barnard
6cb8b12cda Instead of inserting MD for completion, convert the Entity later
This makes sure that the length of the range for a completed Entity = the length of the text in the decoration, which apparently draftjs assumes when calculating selection state offsets.

Fixes https://github.com/vector-im/riot-web/issues/4666
2017-07-27 18:17:41 +01:00
Richard Lewis
27923e300c Add JSX wrapper. 2017-07-27 17:47:04 +01:00
Michael Telatynski
bf98c0da7c
un-i18n Modal Analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-07-27 17:19:18 +01:00
Luke Barnard
5c7891a25b Remove logs 2017-07-27 15:26:36 +01:00
Luke Barnard
e71df44fc9 Fix /join #alias command in markdown mode
Tab-completing a room alias inserts a markdown link, which is now stripped before a command is parsed. We also strip the MD links when doing the autocompletion itself (getAutocompleteQuery).

There is still an issue where `/invite` will not work at all with tab-completion - the text of a user Pill is not the userID but rather the display name, which cannot be used as an argument to the command.
2017-07-27 15:18:06 +01:00
David Baker
9cb28ff33c Merge pull request #1248 from matrix-org/luke/fix-rte-auto-scroll
Scroll to the bottom of editor if on last line
2017-07-26 16:58:36 +01:00
Luke Barnard
fc00eaf546 Merge branch 'develop' into luke/store-history-as-raw-content 2017-07-25 17:19:35 +01:00
Luke Barnard
1ef2a2bcf9 Merge pull request #1250 from matrix-org/dbkr/fix_truncatedlist_i18n
Fix i18n on truncatedlist & friends to be sane
2017-07-25 16:17:44 +01:00
David Baker
fa7a9818c6 Fix i19n on truncatedlist & friends to be sane
Use the proper counterpart tool for plurals rather than if > 1.
Fix up all the translation files respectively.
2017-07-25 15:59:06 +01:00
Luke Barnard
7e0fecbc8c Scroll to the bottom of editor if on last line
Make the MessageComposerInput scroll to the bottom if we are on the last line of the contents.

fixes https://github.com/vector-im/riot-web/issues/4652
2017-07-25 15:22:10 +01:00
Luke Barnard
eccdceae33 Rename props to entityProps for clarity 2017-07-25 11:43:12 +01:00
Luke Barnard
143994e44f Use data-offset-key in RTE decorators
This makes sure the selection state is correct when moving the cursor through an entity in the composer but only in rich text mode. https://github.com/vector-im/riot-web/issues/4666 still persists despite this, probably because the text content inserted during a completion in markdown mode has a different length to the text node within the entity.

fixes vector-im/riot-web#4654
2017-07-25 11:25:33 +01:00
Luke Barnard
6945fa54ea Reimplement so that only tab-completed mentions are stripped
Instead of blindly stripping all MD mentions, only strip those that were tab-completed. We do this by adding the `isCompleted` flag to the Entity data.
2017-07-24 14:41:13 +01:00
Luke Barnard
397201a74d Remove subjective comment 2017-07-24 09:41:46 +01:00
Luke Barnard
e315b30f6a Merge branch 'develop' into luke/fix-rte-pt-md-mentions 2017-07-21 18:06:31 +01:00
Luke Barnard
e8495f637f Strip MD mentions from the body of sent messages
Because previously we just sent the display name and MD links are not very readable.
2017-07-21 16:38:31 +01:00
Luke Barnard
7db7192701 Factor out shared logic in two code-paths for pill rendering
This isn't an entirely side-effect-free refactoring:
 - the text of the timeline pills is now either the room ID/alias or user ID/ display name of the linked resource (which means that until we do a roundtrip to get user displaynames, mentions for users not in the current room will have their user IDs shown instead of what was in the link body).
 - timeline links to rooms without avatars are now rendered as links
 - fixed issue that would throw an error whilst rendering (i.e. unusable client) a room link to a room that the client doesn't know about
2017-07-21 14:07:48 +01:00
Luke Barnard
bac22cfb7c Re-add removal of (IRC) suffix 2017-07-20 18:04:12 +01:00
Luke Barnard
08cc0c421d insert_displayname -> insert_mention 2017-07-20 18:02:54 +01:00
Luke Barnard
0cc890c020 WIP store history as raw content state
Not sure this solves any problems because we still have to convert from md and back
2017-07-20 18:01:39 +01:00
Luke Barnard
0600c5b049 Pretend that insert_displayname is a completion on that user
This has the advantage of us not reimplementing things and fixing the same bugs twice.
2017-07-20 16:46:53 +01:00
Luke Barnard
4bee9bd8c7 Merge branch 'develop' into luke/feature-rte-insert-pills-on-click-tl-profile 2017-07-20 15:48:38 +01:00
Luke Barnard
0419eff230 Insert pill onClick of timeline profile
When clicking someone in the timeline, insert a user pill instead of the plaintext "displayname:"
2017-07-20 15:46:36 +01:00
Luke Barnard
e893f994e1 Default to first room alias and then roomID 2017-07-20 15:17:07 +01:00
Luke Barnard
84fe51a162 Insert MD links when autocompleting in MD mode
These will appear decorated because they are inserted as entities. It was necessary to modify pills to have an explicit linkText that is derived from the `href` being pillified (and is thus no longer the inserted completion but rather the display name (or user ID) or room alias.
2017-07-20 15:09:59 +01:00
Luke Barnard
352f70f9ce Implement old composer feature that inserts ': ' or ' '
after a user completion
2017-07-20 11:52:18 +01:00
Richard van der Hoff
0e8ad75248 Merge pull request #1233 from matrix-org/rav/async_crypto
Prepare for asynchronous e2e APIs
2017-07-19 21:11:36 +01:00
Luke Barnard
61d5d078dd Merge pull request #1235 from matrix-org/luke/fix-rte-inline-code-format
Mimic ctrl+j of RT mode in MD mode
2017-07-19 17:44:56 +01:00
Luke Barnard
3a53fabb87 Merge pull request #1228 from matrix-org/luke/feature-auto-complete-matrixto-pills
Implement composer completion user/room pill insertion
2017-07-19 17:19:47 +01:00
Luke Barnard
29b6d70aff Merge branch 'develop' into luke/fix-rte-inline-code-format 2017-07-19 17:19:25 +01:00
Luke Barnard
28c98d93d1 Mimic ctrl+j of RT mode in MD mode
by inspecting whether multiple lines are selected or the selection is empty. If either of these are true, insert a code block surrounding the selection, otherwise insert single backticks around the selection for inline code formatting.
2017-07-19 16:13:47 +01:00
Richard van der Hoff
4998d1b359 Prepare for asynchronous e2e APIs
the js-sdk is making some of its APIs asynchronous, and adding an `initCrypto`
method which you have to call.

Particular methods we need to worry about are:

* `getStoredDevice`
* `getStoredDevicesForUser`
* `getEventSenderDeviceInfo`
* `isEventSenderVerified`
2017-07-18 23:47:36 +01:00
Luke Barnard
98ca937fef Interpret backspace at start of style block as block style toggle
Part of fixing https://github.com/vector-im/riot-web/issues/4580
2017-07-18 17:52:04 +01:00
Luke Barnard
897ff05d87 Implement composer completion user/room pill insertion
This modifies the composer completion such that completing a room or user will insert an IMMUTABLE matrix.to LINK Entity for the range that was replaced. Display names will not have a colon after their name anymore as it seemed strange that we would insert one after a pill.
2017-07-17 15:53:29 +01:00
Luke Barnard
ee5117525c Merge pull request #1225 from matrix-org/luke/feature-rte-pills
Decorate http://matrix.to links in the composer as pills
2017-07-14 17:47:16 +01:00
Luke Barnard
434660166c Decorate http://matrix.to links in the composer as pills
Any links in the composer that are recognised as matrix.to links will be decorated as `<span>`s with CSS classes (one of mx_UserPill or mx_RoomPill). This implementation has the nice bonus that switching to markdown (and back) will Just Work.

This will have some CSS changes coming to better match the design.
2017-07-14 17:04:28 +01:00
Richard van der Hoff
2a52c902e2 Merge pull request #1223 from matrix-org/rav/roomsettings_promise_usage
Fix RoomSettings save
2017-07-14 14:47:14 +01:00
Richard van der Hoff
9df1fb91ff Fix RoomSettings save
Looks like saving RoomSettings had been broken since 0d7cc59. `isFulfilled`
cannot be used as a static function.
2017-07-14 14:24:42 +01:00
Kegsay
5274cf59a0 Hook up the edit widget button (#1218)
* Hook up the edit widget button

* Review comments
2017-07-14 11:17:59 +01:00
Luke Barnard
219c00bbc3 Add code-block to the list of blocks where hitting return will split-block
Hitting return in a code-block will now split the block into two code blocks. (Holding shift will still insert a soft newline into the current block).

We still need to make it a bit more obvious that consecutive code-blocks
are not contiguous - https://github.com/vector-im/riot-web/issues/4535
2017-07-13 18:42:37 +01:00
Luke Barnard
d97de4d576 Implement disabled-by-default setting for auto-replacement of plaintext emojis
FTR a list of plaintexts and their unicode equivalents can be found here - https://github.com/vector-im/riot-web/issues/4554#issuecomment-314374303

Pressing space after a matching emoji will replace the plaintext emoji with the equivalent unicode emoji.
2017-07-13 17:37:43 +01:00
Luke Barnard
7fc10789fc Merge pull request #1217 from matrix-org/luke/fix-rte-html-links
Improve RTE HTML link handling
2017-07-13 13:57:58 +01:00
Luke Barnard
f1a4209d6b Fix indentation 2017-07-13 13:47:08 +01:00
Luke Barnard
5826b6f22a Instead of sending HTML for any Entity, only send HTML for Links
Otherwise emoji messages are sent as HTML, needlessly
2017-07-13 13:41:17 +01:00
Luke Barnard
be045a6dc0 Interpret whitespace after entity as the end of the entity
The easiest way to stop the user from inserting whitespace onto the end of an entity is to toggle the entity state of the whitespace that was just entered. This allows the user to continue drafting a message without editing the link content.

This is for pasted `<a>` tags that have been copied from a website. We probably also want to be storing entities for substrings of content that are determined to be URLs.
2017-07-13 13:28:51 +01:00
Luke Barnard
4b96963408 Send HTML if there are any entities present in the composer
This is so that pasted HTML links that are represented as entities are sent as HTML.
2017-07-13 13:27:49 +01:00
Luke Barnard
55e1202c09 Decorate pasted links so that they look like links
By default, draftjs will represent pasted `<a>` tags as `LINK` entities, but it doesn't do any default decoration of these links. Add a decorator to do so.

Most of this was taken from https://github.com/facebook/draft-js/blob/v0.8.1/examples/link/link.html (note the version, v0.8.1).
2017-07-13 13:26:13 +01:00
David Baker
2a68cce3d5 Merge pull request #1216 from matrix-org/dbkr/history_save_unload_nullcheck
Prevent exception on page unload
2017-07-13 12:38:28 +01:00
Richard van der Hoff
086304532e Merge pull request #1213 from matrix-org/rav/bluebird
Switch matrix-react-sdk to bluebird
2017-07-13 12:06:11 +01:00
David Baker
917133219f Remove sentHistory save altogether 2017-07-13 11:53:22 +01:00
David Baker
1e80edb43c Prevent exception on page unload
Null check when saving sent history
2017-07-13 11:30:25 +01:00
Luke Barnard
04dd98e6e9 Remove references to tabComplete, which are now redundant
(since the old composer has been removed)
2017-07-13 10:16:59 +01:00
Luke Barnard
0e12e384cb Remove TabComplete-related files 2017-07-13 10:16:42 +01:00
Richard van der Hoff
33f330d434 Manual fixup for remaining q incantaions
* don't try to use `finally` as a static method
* work around absence of `allSettled`
2017-07-12 18:05:40 +01:00
Richard van der Hoff
0d7cc59d99 replace q method calls with bluebird ones
```
find src test -name '*.js' |
    xargs perl -i -pe 's/q\.(all|defer|reject|delay|try|isFulfilled)\(/Promise.$1(/'
```
2017-07-12 18:05:40 +01:00
Richard van der Hoff
0254d2b3a2 q(...) -> Promise.resolve
```
find src test -name '*.js' | xargs perl -i -pe 's/\b[qQ]\(/Promise.resolve(/'
```
2017-07-12 18:05:08 +01:00
Richard van der Hoff
a06bd84213 replace imports of q with bluebird
update `package.json`

```
find src test -name '*.js' |
   xargs perl -i -pe 'if (/require\(.[qQ].\)/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'

find src test -name '*.js' |
   xargs perl -i -pe 'if (/import [qQ]/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'
```
2017-07-12 18:05:08 +01:00
Luke Barnard
6ff924fc0d Remove MessageComposerInputOld 2017-07-12 18:03:13 +01:00
Kegsay
cf158530f5 Implement new widget API (#1201)
* Implement new widget API

This allows clients to see who provisioned which widgets.

* Update to make state_key the wid

* Update to latest API

* Only show widgets which have required fields

* Don't constantly show apps dialog

* Fix example to include data key
2017-07-11 12:15:27 +01:00
Luke Barnard
b104228a7b Remove redundant functions, bindings, props 2017-07-10 14:27:41 +01:00
Luke Barnard
c9df079464 Merge pull request #1176 from matrix-org/luke/feature-enable-RTE
Take RTE out of labs! 🎉
2017-07-10 13:56:00 +01:00
Luke Barnard
9643f0c00b Merge pull request #1167 from matrix-org/dbkr/my_groups
Implement 'Groups' page
2017-07-10 09:37:06 +01:00
Luke Barnard
7a8f524f4a Remove two possible sources for the "AutoComplete stays visible bug
which is now https://github.com/vector-im/riot-web/issues/4537 <- there.

This does two things:
 - Track which query was the most recent one requesting completion and only process completions for that one. (In this case the empty string "" doesn't have any completions but we still track it so that previous calls with non-empty queries would not race and cause completions to be shown when we actuall don't want any.)
 - Make the "do we want to show the AutoComplete box?" logic a bit more sane
2017-07-07 15:30:31 +01:00
David Baker
bc8c2d442b WithMatrixClient -> withMatrixClient
because we're using it as a function rather than a React component
2017-07-07 11:34:20 +01:00
Richard Lewis
d091550ccb Use app ID for element key and pass screen parameter to scalar. 2017-07-06 15:59:59 +01:00
Luke Barnard
6404f7603c Merge pull request #1192 from matrix-org/t3chguy/markdown_allow_u
Allow underline through MD and in RTE (MD) using <u> which works with CM
2017-07-06 14:08:01 +01:00