Commit graph

6129 commits

Author SHA1 Message Date
Bruno Windels
710338c01f pass member and room to editor pills to get avatar url 2019-05-20 10:28:26 +02:00
Bruno Windels
0c0052d06e re-apply formatting when editor is closed 2019-05-20 10:19:29 +02:00
Matthew Hodgson
81338306b0 fix lint 2019-05-19 21:00:14 +01:00
Matthew Hodgson
64e2de5b47 make autocomplete work again 2019-05-19 20:56:07 +01:00
Matthew Hodgson
dbc6815abf make EmojiProvider and stripped-emoji.json work 2019-05-19 20:48:18 +01:00
Matthew Hodgson
c63419f8a2 typos 2019-05-19 16:31:25 +01:00
Matthew Hodgson
a8297a7698 fix build 2019-05-19 16:11:12 +01:00
Matthew Hodgson
dc72641264 replace emojione with twemoji. completely untested & debugged & unoptimised 2019-05-19 15:23:43 +01:00
J. Ryan Stinnett
3a87f53a3c
Merge pull request #2993 from matrix-org/jryans/devtools-event-source-in-timeline
Add debug feature to show hidden events in timeline
2019-05-18 19:37:58 +01:00
Travis Ralston
2a187810fd Restructure TopLeftMenu for accessibility and autofocus it
We use a trick with refs to automatically focus the element, also making use of mx_HiddenFocusable to hide the unnecessary outline. 

The menu itself has been restructured to hide some elements from screen readers (reduce noise) and to have a single unordered list. Screen readers mention when the user "enters" a list, and each item was previously saying "enter list <action>" when it should have just been "<action>".

By focusing automatically, the keyboard can be used to go up/down the menu as may be expected by keyboard users.
2019-05-17 15:32:03 -06:00
Travis Ralston
c5757d8303 Support CTRL+I for opening TopLeftMenu 2019-05-17 15:29:16 -06:00
Travis Ralston
f1aa2875e1 Hide avatars from screen readers by default
To avoid having them read out the user's ID
2019-05-17 15:25:59 -06:00
J. Ryan Stinnett
5144907983 Fix indent 2019-05-17 17:44:11 +01:00
J. Ryan Stinnett
45cdf880b1 Change setting style 2019-05-17 17:43:08 +01:00
J. Ryan Stinnett
3a405701a3 Debug: Show all events 2019-05-17 16:34:01 +01:00
Bruno Windels
5adae63555 don't apply formatting to body when showing editor in TextualBody
it throws
2019-05-17 16:01:30 +01:00
Travis Ralston
7a244b85c1
Merge pull request #2986 from matrix-org/travis/sr/reactions
Mute screen readers over reactions
2019-05-17 08:40:53 -06:00
Bruno Windels
578a183f49 hide the action bar while editing 2019-05-17 15:35:28 +01:00
Bruno Windels
62b8973e72 cancel the edit when pressing escape 2019-05-17 15:35:14 +01:00
Bruno Windels
ddefeae136 update design of editor to look as close to original tile (and design)
the buttons below the composer are overlayed onto the previous event.
In case of the last event, for now we make them not overflow, but make the
tile grow. The design says it should overlay on the main composer for the last
event tile, postponing that for a bit though as not sure what is the best way
to do that.
2019-05-17 15:33:11 +01:00
Bruno Windels
9a3752c571 show message editor in textual body instead of replacing event tile 2019-05-17 15:30:07 +01:00
J. Ryan Stinnett
43c9e6d942 Reactions / editing tooltip tweaks 2019-05-17 15:10:35 +01:00
J. Ryan Stinnett
603e6b7055 Adjust edited tooltip to use shared styles 2019-05-17 12:19:02 +01:00
J. Ryan Stinnett
059988ff5c Extract tooltip styling to a shared class
We want to use the same styling with edited tooltip as well, so this extracts
the shared bits.
2019-05-17 12:11:01 +01:00
J. Ryan Stinnett
3da1f73ea4 Add a basic tooltip showing who reacted
This adds a first attempt at tooltip showing who reacted to a message. It
doesn't limit senders or position the tooltip nicely, but the info is there at
least.

Part of https://github.com/vector-im/riot-web/issues/9722
2019-05-17 12:11:01 +01:00
Bruno Windels
c48ecb66d9
Merge pull request #2990 from matrix-org/bwindels/editedmarker
Message editing: show (edited) marker on edited messages, with tooltip
2019-05-17 11:04:09 +00:00
Bruno Windels
4a6725d4c2 Message editing: show (edited) marker on edited messages, with tooltip 2019-05-17 11:36:36 +01:00
Bruno Windels
ca2e6d8eb2 Message editing: shift+enter for newline, enter to send 2019-05-17 10:22:02 +01:00
Travis Ralston
82bd893f03 Mute screen readers over reactions 2019-05-16 16:36:23 -06:00
Michael Telatynski
d7c6869188 Apply Flex voodoo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-16 21:55:17 +01:00
Travis Ralston
0c7aa39273 Merge branch 'develop' into travis/feature/wellknown2 2019-05-16 12:59:50 -06:00
Travis Ralston
8c326bff9e
Merge pull request #2964 from matrix-org/travis/wk/simplify-phases
Refactor "Next" button into ServerConfig components
2019-05-16 12:46:35 -06:00
Bruno Windels
245f48a22c set caret on mount as we usually do, so FF doesn't enter 2 newlines 🤯 2019-05-16 18:39:20 +01:00
J. Ryan Stinnett
006d5d7591 Fix crash for null reactions set 2019-05-16 13:57:02 +01:00
J. Ryan Stinnett
e942939be9 Listen for removed relations
The JS SDK has learned how to remove relations when cancelled, so we should also
listen for those as well.

Part of https://github.com/vector-im/riot-web/issues/9731
2019-05-16 13:03:07 +01:00
J. Ryan Stinnett
2e7e71556b Annotations by sender is now a Set 2019-05-16 12:45:41 +01:00
J. Ryan Stinnett
0e369bd12e
Merge pull request #2977 from matrix-org/jryans/encrypted-reactions
Use `getRelation` helper
2019-05-16 09:45:09 +01:00
J. Ryan Stinnett
33885cb864 Use getRelation helper
Use the `getRelation` helper to ensure we always read relation info from the
wire content as required in E2E rooms.
2019-05-16 09:25:33 +01:00
Travis Ralston
6f22acc3c6
Merge pull request #2979 from aaronraimist/imageview-tooltip
Add tooltips to rotate and close buttons in ImageView (#9686)
2019-05-15 21:14:20 -06:00
Aaron Raimist
c38b5cabb1
Allow the strings to be translated
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:11:51 -05:00
Aaron Raimist
bfd37d8089
Add tooltips to rotate and close buttons in ImageView (#9686)
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:06:02 -05:00
Travis Ralston
60a13652df
Merge pull request #2965 from matrix-org/travis/wk/tooltip
Render underlines and tooltips on custom server names in auth pages
2019-05-15 14:13:44 -06:00
Travis Ralston
6e3b06f364 Human de-linting 2019-05-15 13:56:15 -06:00
Bruno Windels
085f2d199d focus editor after clicking edit 2019-05-15 17:17:35 +01:00
Will Hunt
2994d99378
Merge branch 'develop' into hs/custom-notif-sounds 2019-05-15 16:09:55 +01:00
Bruno Windels
d73f547f55 reapply pills, link preview, code highlighting, ... after edit 2019-05-15 15:55:03 +01:00
Bruno Windels
6366371c0d add * to fallback messages for edits 2019-05-15 15:54:05 +01:00
Bruno Windels
b081a3156f dont show edit button for messages that are not your own 2019-05-15 15:53:49 +01:00
Will Hunt
d752de0972 Improve UX 2019-05-15 15:52:42 +01:00
Bruno Windels
5805a88ab9 adjust to js-sdk changes of marking original event as replaced 2019-05-15 11:54:26 +01:00
Bruno Windels
edc100163f
Merge pull request #2952 from matrix-org/bwindels/message-edit-editor
Initial support for editing messages
2019-05-15 09:23:01 +00:00
Bruno Windels
d83e278f6b PR feedback, cleanup 2019-05-15 09:46:08 +01:00
Michael Telatynski
9b40913838
Merge pull request #2957 from matrix-org/t3chguy/invite_perms
Check permission to invite before showing invite buttons/disable them
2019-05-14 23:15:59 +01:00
Will Hunt
277c4ab809
Merge branch 'develop' into hs/custom-notif-sounds 2019-05-14 21:07:03 +01:00
Will Hunt
46132a2463 Merge branch 'hs/custom-notif-sounds' of github.com:Half-Shot/matrix-react-sdk into hs/custom-notif-sounds 2019-05-14 21:05:55 +01:00
Will Hunt
626cb46915 Cleanup interface buttons 2019-05-14 21:05:22 +01:00
Travis Ralston
4c1ac38dd4 Merge branch 'develop' into travis/feature/wellknown2 2019-05-14 10:53:01 -06:00
Travis Ralston
92c67cdcab
Merge pull request #2963 from matrix-org/travis/permalink-without-room
Support a backup room ID in PermalinkCreator
2019-05-14 10:28:26 -06:00
Bruno Windels
dc21faa240 send edit also in n.new_content field
so we can have fallback content in the regular content for clients
that don't support edits. Note that we're not reading m.new_content
yet as it's going to be a bit of a headache to change this.

So for now just sending the edit in both the normal content and
the m.new_content subfield, so all events out there already
are well-formed
2019-05-14 16:32:08 +01:00
Bruno Windels
45991bc3de replace original event if there have been previous edits 2019-05-14 15:39:24 +01:00
Bruno Windels
e2388afb51 consistent naming between serialize and deserialize modules 2019-05-14 15:39:24 +01:00
Bruno Windels
036cb02c0e add feature flag 2019-05-14 15:39:24 +01:00
Bruno Windels
759a4a54ef send the actual m.replace event from composer content 2019-05-14 15:38:16 +01:00
Bruno Windels
a3b02cf0cc make logging quiet 2019-05-14 15:38:16 +01:00
Bruno Windels
4ff37ca046 don't show model for now 2019-05-14 15:38:16 +01:00
Bruno Windels
9e0816c51c find caret offset and calculate editor text in same tree-walking algo
instead of having the same logic twice
2019-05-14 15:38:16 +01:00
Bruno Windels
7ebb6ce621 WIP commit, newlines sort of working 2019-05-14 15:38:16 +01:00
Bruno Windels
8d97c0033e catch this for now as caret behaviour is still a bit flaky 2019-05-14 15:38:16 +01:00
Bruno Windels
64b171198c rerender through callback instead of after modifying model
this way rendering is centralized and we can better rerender
from interaction in the autocompleter
(we didn't have access to caret before)
2019-05-14 15:38:16 +01:00
Bruno Windels
317e88bef2 initial hacky hookup of Autocomplete menu in MessageEditor 2019-05-14 15:38:16 +01:00
Bruno Windels
7507d0d7e1 complete proptypes 2019-05-14 15:38:16 +01:00
Bruno Windels
a765fdf98a run autocomplete after mounting
componentWillReceiveProps doesn't run after mount,
and is deprecated as well.

Update state after both on componentDidMount and componentDidUpdate
2019-05-14 15:38:16 +01:00
Bruno Windels
a2f1f49972 update the DOM manually as opposed through react rendering
react messes up the DOM sometimes because of, I assume, not
being aware of the changes to the real DOM by contenteditable.
2019-05-14 15:38:16 +01:00
Bruno Windels
6be6492cd2 initial parsing of pills for editor 2019-05-14 15:38:16 +01:00
Bruno Windels
76bb56a2bf initial hookup editor code with react component 2019-05-14 15:38:16 +01:00
Bruno Windels
6599d605cd wire up editor component (somewhat hacky) 2019-05-14 15:38:16 +01:00
J. Ryan Stinnett
66aabdca9e
Merge pull request #2962 from matrix-org/jryans/gif-autoplay
Always thumbnail for GIFs
2019-05-14 14:07:58 +01:00
J. Ryan Stinnett
f19e70c219 Add comment about thumbnailing for GIFs 2019-05-14 13:55:38 +01:00
Pierre Boyer
a62f68bd39 Hide autocomplete on Enter key press instead of sending message 2019-05-14 13:44:01 +02:00
Travis Ralston
25e3f7888e newline for the linter 2019-05-13 18:31:43 -06:00
Travis Ralston
e4576dac28 Render underlines and tooltips on custom server names in auth pages
See https://github.com/vector-im/riot-web/issues/9290
2019-05-13 17:16:40 -06:00
Travis Ralston
ee33a4e9ba Refactor "Next" button into ServerConfig components
TODO still remains about making ModularServerConfig extend ServerConfig instead of duplicating everything.

See https://github.com/vector-im/riot-web/issues/9290
2019-05-13 16:30:34 -06:00
Travis Ralston
1584ab42c2 Support a backup room ID in PermalinkCreator
In the case of room upgrades, it is possible the client is trying to render the room create event, but the user has never been in the old room. This results in an error because the PermalinkCreator cannot possibly figure out a room ID. 

Instead, we'll feed the creator an alternate room ID to try if the room object can't be provided.

Fixes https://github.com/vector-im/riot-web/issues/9636
2019-05-13 14:12:58 -06:00
J. Ryan Stinnett
7881369b98 Always thumbnail for GIFs
When displaying a GIF, we always want to thumbnail so that we can properly
respect the user's GIF autoplay setting (which relies on thumbnailing to produce
the static preview image).

Fixes https://github.com/vector-im/riot-web/issues/9658
2019-05-13 18:28:57 +01:00
J. Ryan Stinnett
9d9a41b263 Save content.info as a local for readability 2019-05-13 18:00:52 +01:00
Travis Ralston
83737654ff Merge branch 'develop' into travis/feature/wellknown2 2019-05-13 09:20:10 -06:00
Travis Ralston
201fef8b11
Merge pull request #2947 from matrix-org/travis/password-score-config
Add configuration flag to disable minimum password requirements
2019-05-13 09:19:23 -06:00
J. Ryan Stinnett
f5aa32bc96
Merge pull request #2954 from matrix-org/jryans/aggregations
Send and undo reaction events
2019-05-13 15:20:28 +01:00
J. Ryan Stinnett
e22bd45608 Clarify ReactionsRow forceUpdate usage 2019-05-13 15:00:43 +01:00
J. Ryan Stinnett
af9fdbaeeb Rework reactionsCreated in EventTile to use state
This changes to use component state instead of `forceUpdate`, so that it's more
obvious why an update is happening here.
2019-05-13 14:52:55 +01:00
J. Ryan Stinnett
24209905e8 Test settings later for performance 2019-05-13 14:41:49 +01:00
David Baker
59cefbaa44
Typo
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-13 14:24:56 +01:00
David Baker
34990d1c89 Fix bug where email was not required where it shouldn't have been
See comment!

Fixes https://github.com/vector-im/riot-web/issues/9681
2019-05-13 14:17:09 +01:00
Travis Ralston
4ffd826e76 Flip logic for unsafe->safe 2019-05-12 22:53:06 -06:00
Will Hunt
e8c8762e34
Merge branch 'develop' into hs/custom-notif-sounds 2019-05-13 03:09:59 +01:00
Travis Ralston
99e2ac7255
Merge pull request #2956 from matrix-org/t3chguy/fix_memberinfo_invite
Fix invite via MemberInfo
2019-05-12 18:47:17 -06:00
Michael Telatynski
118e752a1f Add button to clear all notification counts, sometimes stuck in historical
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 23:24:12 +01:00
Will Hunt
64a384477e Resolve issues 2019-05-12 17:14:21 +01:00
Will Hunt
2023b3d905 Merge remote-tracking branch 'upstream/develop' into hs/custom-notif-sounds 2019-05-12 16:55:36 +01:00
Michael Telatynski
3cd9c152c2 Check permission to invite before showing invite buttons/disable them
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-11 19:45:24 +01:00
Michael Telatynski
0530a64f19 Fix invite via MemberInfo. Thank U JetBrains for solving this one for me <3
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-11 18:46:13 +01:00
Michael Telatynski
249f3d972b Close Room Settings upon Leave Room
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-10 20:58:32 +01:00
Travis Ralston
6a941aca91
Merge pull request #2941 from matrix-org/travis/guests/block-ui
Use validated server config for login, registration, and password reset
2019-05-10 11:21:21 -06:00
J. Ryan Stinnett
33513a95d7 Change to componentDidUpdate to process first reaction
This changes to "did update" and also calls the reaction change handler to
ensure that we update the state of my reactions (to know which were sent by
you).
2019-05-10 17:59:17 +01:00
J. Ryan Stinnett
dc4fccd291 Send and redact reaction events
This updates both the reaction row and action bar UIs to send and redact
reaction events as appropriate based on user interactions.

Fixes https://github.com/vector-im/riot-web/issues/9574
Fixes https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
39bd0d8bb3 Listen for additional reactions in existing collection
The various reaction UI bits will now listen for `Reactions.add` for new
reactions just like with redactions.

Part of https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
37d2f60045 Listen for reaction collections when they are created
The `EventTile` for events without reactions now use `Event.relationsCreated` to
listen for a future time where they come in to being.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
ce35741030 Remove redundant key vs. content in ReactionDimension
This simplifies `ReactionDimension` by using the emoji string everywhere instead
of keeping a separate text string as well. It should improve readability as
well, as the reaction events also have a field `key` which was the emoji
content, which was easy to confuse.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
6a59143ffb Update reactions when redacted
This updates the reaction state in the reaction row and action bar when a
reaction is redacted.

Part of https://github.com/vector-im/riot-web/issues/9574
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
8fdb59a909 Use basic read path from JS SDK for reactions
This displays existing reactions correctly in the action bar and reaction row,
but it doesn't yet update after a new reaction is sent.
2019-05-10 17:19:27 +01:00
Michael Telatynski
cd5a460b2b Iterate PR based on feedback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-09 22:30:45 +01:00
Michael Telatynski
16c027dc61 Merge branches 'develop' and 'devtools_serverlist' of github.com:matrix-org/matrix-react-sdk into devtools_serverlist 2019-05-09 22:27:37 +01:00
J. Ryan Stinnett
576241236c Extract ReactionDimension out of MessageActionBar
The reactions bits were cluttering up `MessageActionBar` so they have now been
extracted to a separate component.
2019-05-08 13:53:41 +01:00
Will Hunt
efc93abb50
Merge branch 'develop' into hs/custom-notif-sounds 2019-05-07 20:04:29 +01:00
J. Ryan Stinnett
2b2bfbeaaf Relax password requirements to score of 3 out of 4
This makes it a bit easier to meet the requirements while still requiring a
fairly strong value. The progress bar displays a score of 3 as reaching 100% for
simplicity.

Fixes https://github.com/vector-im/riot-web/issues/9642
2019-05-07 12:59:53 +01:00
J. Ryan Stinnett
0316deb6c5 Restore access to message quote option on first click
This repairs access to the "Quote" option of the message context menu by passing
down a getter so that we always access the most recent tile and reply thread
instances. This ensures the context menu uses the newest information about the
current event when determining menu options to show.

Fixes https://github.com/vector-im/riot-web/issues/9639
2019-05-07 12:59:53 +01:00
Travis Ralston
c636f890b5 Add configuration flag to disable minimum password requirements
The configuration flag is intentionally long and annoying - the vast majority of people should not need this. The flag is intended to be used in development environments where accounts are often registered with no intention of them sticking around.
2019-05-06 09:55:27 -06:00
Travis Ralston
4ada66d319 Fix rogue instance of old hsUrl property 2019-05-03 11:34:30 -06:00
Travis Ralston
0b1a0c77b7 Make login pass around server config objects
Very similar to password resets and registration, the components pass around a server config for usage by other components. Login is a bit more complicated and needs a few more changes to pull the logic out to a more generic layer.
2019-05-03 11:33:36 -06:00
Travis Ralston
6b45e60314 Update ServerTypeSelector for registration to use a server config 2019-05-03 11:32:59 -06:00
Travis Ralston
636cb8a5cc Have ServerConfig and co. do validation of the config in-house
This also causes the components to produce a ValidatedServerConfig for use by other components.
2019-05-03 11:32:59 -06:00
J. Ryan Stinnett
df4e6a3913 Check for room in all Room.timeline* handlers
All `Room.timeline*` handlers must currently test for `room` first if they
expect it to exist. It is emitted not only for rooms, but also for timeline sets
without rooms, such as for notifications.

Almost all such handlers were correctly testing as needed, but it was missing
from `RoomBreadcrumbs`.

While that's quite confusing, we can start by testing for `room` when we expect
to have one.

Fixes https://github.com/vector-im/riot-web/issues/9630
2019-05-03 17:59:28 +01:00
Travis Ralston
a7a50351d1
Merge pull request #2798 from matrix-org/travis/tombstone-notif
Support changing options for .m.rule.tombstone push rule
2019-05-02 09:47:41 -06:00
Travis Ralston
8fe8b8ab18
Merge pull request #2939 from matrix-org/travis/remove-timeline-crash
Remove timeline explosion rageshake prompt
2019-05-02 09:46:03 -06:00
J. Ryan Stinnett
87f737b8a3 Increment an existing reaction
This allows you to increment an existing reaction below a message by clicking on
it.

At the moment, this is not linked to the action bar, so they each are using
local state. We'll likely want to add some mechanism so that we can local echo
to both of these UI areas at the same time, but that can be done separately.

Fixes https://github.com/vector-im/riot-web/issues/9486
2019-05-02 12:05:17 +01:00
J. Ryan Stinnett
15c5893278 Display existing reactions below the message
This displays the existing reactions a message has from all users below the
message.

Since we don't currently have an API to actually get these events yet,
adds a temporary hook that looks for a specific message to inject some sample
data. This helps build out the UI for now and can be removed once it exists.

Fixes https://github.com/vector-im/riot-web/issues/9573
2019-05-02 12:05:17 +01:00
J. Ryan Stinnett
44e9ca6c52 Extract isContentActionable to a separate helper
This moves the check about whether an event is actionable (for the purpose of
replies, edits, reactions, etc.) to shared utils module.
2019-05-02 12:05:17 +01:00
Travis Ralston
5a204edf90 Remove timeline explosion rageshake prompt
Concludes https://github.com/vector-im/riot-web/issues/8593

We are no longer seeing this error being triggered, and are considering it fixed. As a result, the dialog can be removed to reduce the amount of dead code in the project.
2019-05-01 13:37:57 -06:00
J. Ryan Stinnett
784599d9e9 Add primary reactions to action bar
This adds the primary reactions to the action bar. They act as toggles where you
can only select one from each group at a time.

Note that currently we aren't actually sending the reaction at all. That's left
for a separate task.

Fixes https://github.com/vector-im/riot-web/issues/9576
2019-04-30 18:09:10 +01:00
J. Ryan Stinnett
00ca930d2e Extract actionable content check to helper 2019-04-30 17:51:18 +01:00
J. Ryan Stinnett
6db12f84df
Merge pull request #2936 from jryans/preview-bar-fire
Add important info to new preview bar
2019-04-30 10:20:09 +01:00
J. Ryan Stinnett
b7642b38a7 Show the room avatar for invites
This changes to the room avatar instead of the inviter's avatar.
2019-04-30 09:56:44 +01:00
J. Ryan Stinnett
e71896420e Show only a static inviter name with full MXID
This removes the clickable inviter behaviour, as it was too confusing to reveal
the user info sidebar and also hide the invite. Keeping both on screen would be
okay, but seems a bit too complex to resolve right before RC.

In addition, this adds the full inviter MXID to ensure it's clear who invited
you.
2019-04-30 09:56:44 +01:00
J. Ryan Stinnett
ad6be3cc1b Change invite preview text for DMs
Use more specifc text for when previewing an invite to a direct message room.
2019-04-29 17:48:48 +01:00
J. Ryan Stinnett
338dc602f0 Explicitly mention the room name in all preview bar cases
Adjusts all cases of the room preview bar to mention the room name explicitly
when possible.
2019-04-29 16:34:57 +01:00
J. Ryan Stinnett
739c8c0314 Promote reply button up to message action bar
This moves the reply action out of the existing options menu and up to the
message action bar for easier access.
2019-04-29 15:53:03 +01:00
J. Ryan Stinnett
8ef9fe951d Update styling of message action bar for multiple buttons
This applies the new design for multiple buttons in the message action bar,
paving the way for more things to appear here.

In addition, this changes the existing options button to use the three vertical
dots icon. Some theme colors are also tweaked to align with what they were meant
to be from the unified palette.
2019-04-29 15:20:51 +01:00
J. Ryan Stinnett
ed8bbc7082 Extract message options button to action bar
This adds a new action bar component to hold multiple per-message actions. This
existing options button has moved to this new component, and is currently the
only action.
2019-04-29 15:20:50 +01:00
J. Ryan Stinnett
530c92e03d Rename event edit button to options button
This naming is clearer as it doesn't really edit at all (it shows a context
menu). This should also be less confusing with actual editing when it arrives.
2019-04-29 15:20:50 +01:00
J. Ryan Stinnett
af17829229 Blur active field before submit validation 2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
26f732723e Animate tooltips when hiding as well as showing
This uses the same animation style as on show, but twice as fast.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
aec14e64fa Throttle validation in response to user input
This avoids the case of the password complexity progress jumping wildly for
every character you type.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
67d7091dcd Password score progress should be full width in tooltip 2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
a20d23daf3 Remove older password length check
Now that we have a fancier password complexity check, remove the older minimum
length to avoid the feeling of two password style guides fighting each other.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
4f41161a47 Check password complexity during registration
This adds a password complexity rule during registration to require strong
passwords. This is based on the `zxcvbn` module that we already use for key
backup passphrases.

In addition, this also tweaks validation more generally to allow rules to be
async functions.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
008ca3543b Migrate passwords on registration to new validation
In addition to migrating password fields, this also removes the remaining
support for old-style validation in registration now that all checks have been
converted.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
aaf745ae2a Migrate phone number on registration to new validation 2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
9064875312 Migrate email on registration to new validation 2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
1cbb4be6f7 Add support for validating more strictly at submit time
When submitting a form, we want to validate more strictly to check for empty
values that might be required. A separate mode is used since we want to ignore
this issue when visiting a field one by one to enter data.

As an example, we convert the pre-existing logic for the username requirement
using this new support.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
778697abf1 Use input element's value directly
Since we're keeping the input as a ref anyway, let's use that rather than
requiring the value to be passed to `validate`. This allows others to call
`validate` as well.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
5d95c31875 Focus the first invalid field
This adjusts the submission step to focus the first invalid field and redisplay
validation. This also rearranges the older style field error handling on
registration which is slated for removal once we convert all fields to the new
style.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
62a01e7a37 Track per-field validity with new-style validation
This updates the registration form to include the new-style validation state
when deciding whether the entire form is valid overall.

In addition, this tweaks the validation helper to take functions instead of
strings for translated text. This allows the validation helper to be create once
per component instead of once every render, which improves performance.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
37e09b5569 Add check and x icons for validation feedback
Adds icons from the Feather set with the same color as text. Tweaks validation
item spacing to match the design.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
87f13cfe55 Add focus handling to validation
Update the Field component and validation handling to show / hide validation
feedback on focus / blur events.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
338d83ab55 Add validation feedback helper
This adds a general validation feedback mechanism for checking input values. An
initial example is wired up for the username input on registration.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
37ecf2a623 Remove unused ref from Field component
The `fieldInput` ref is no longer used now that we have controlled components
everywhere.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
4784d5e9f2 Also say "Connect ..." on remaining key backup buttons
This updates the remaining buttons shown when a backup exists but is not trusted
so that they all now say "Connect this device to Key Backup" instead of "Use Key
Backup".

This is a follow up to https://github.com/matrix-org/matrix-react-sdk/pull/2917
and was agreed with Riot iOS team
https://github.com/vector-im/riot-ios/pull/2375#issuecomment-485788118.

Fixes https://github.com/vector-im/riot-web/issues/9542
2019-04-24 11:05:27 +01:00
Will Hunt
0f2cd6ea73 Stick behind a feature flag 2019-04-21 18:01:26 +01:00
Will Hunt
776210c135 Use settings store 2019-04-19 22:31:51 +01:00
Will Hunt
d33df45c5e Linting 2019-04-19 22:06:56 +01:00
Will Hunt
63ab7736ca Add a fancy room tab and uploader 2019-04-19 16:27:30 +01:00
J. Ryan Stinnett
9917bed942
Merge pull request #2883 from YaoiFangirl420/cleanup_message_composer
Cleanup message composer render() method
2019-04-18 10:14:01 +01:00
Bruno Windels
0fbe10a816
Merge pull request #2925 from matrix-org/bwindels/stylepreviewbar
Redesigned room preview bar
2019-04-18 08:50:56 +00:00
Bruno Windels
0a463472b3 update prop types (and fix typo) 2019-04-17 19:05:52 +02:00
Bruno Windels
8e750e18d7 add class for message case for e2e tests 2019-04-17 11:46:04 +02:00
Bruno Windels
22874f62ab Merge branch 'develop' into bwindels/stylepreviewbar 2019-04-17 11:06:21 +02:00
Bruno Windels
1100320351 make non-member inviter name also bold 2019-04-17 11:02:58 +02:00
Bruno Windels
86620839ae make username clickable 2019-04-17 10:57:45 +02:00
Bruno Windels
8a371080d7 colored inviter name and layout 2019-04-17 10:22:35 +02:00
Bruno Windels
eeaa7143ac move name coloring out of sender profile
so we can reuse it in room preview bar
2019-04-17 10:21:30 +02:00
Travis Ralston
e0c976e96e Merge branch 'develop' into cleanup_message_composer 2019-04-16 11:18:52 -06:00
Bruno Windels
56ade1ead5 WIP on showing inviter avatar 2019-04-16 18:48:47 +02:00
Bruno Windels
f9a2b76966 show room name where available when header isn't visible (no preview) 2019-04-16 17:50:20 +02:00
Bruno Windels
eeb9b4b2e3 don't show re-join upon kicked when we know you can't 2019-04-16 17:23:45 +02:00
Bruno Windels
dbb73439e4 also return Joining when internally busy looking something up 2019-04-16 17:23:24 +02:00
Bruno Windels
523311b50c saner order for message case detection (can't be joining when kicked) 2019-04-16 17:23:01 +02:00
Ross Brandes
15e68c3ba1
Make alt-enter insert new line on macOS
Alt-enter is a common macOS shortcut for inserting a new line in an
input that has a separate action tied to the enter key.

Signed-off-by: Ross Brandes <ross.brandes@gmail.com>
2019-04-15 21:15:38 -04:00
Bruno Windels
36951dd7b7 cleanup spinner props and use always preview bar when room operation is in progress 2019-04-15 18:49:00 +02:00
Bruno Windels
7459e19f06 fix lint 2019-04-15 17:56:36 +02:00
Bruno Windels
fd6c594a8f put auth buttons in preview bar 2019-04-15 17:52:17 +02:00
Bruno Windels
1d0c402093 improve error messages, etc 2019-04-15 17:11:17 +02:00
J. Ryan Stinnett
2054d53782 Tweaked wording after discussing with @lampholder 2019-04-15 15:10:48 +01:00
J. Ryan Stinnett
bded275f6a Clarify messaging when key backup exists but is unused
This makes the key backup panel much more explicit about the case where an
existing backup does exist, but this device just isn't using it. You can join
the device to the backup and restore from it by going through the restore
workflow.

Fixes https://github.com/vector-im/riot-web/issues/9446
2019-04-15 15:10:48 +01:00
J. Ryan Stinnett
9a59b0d390 Clarify that use backup means restore
"Use key backup" feels like it's telling me I haven't set it up at all. This
changes to "Restore ..." which seems more reassuring.

Fixes https://github.com/vector-im/riot-web/issues/9438
2019-04-15 15:10:48 +01:00
Bruno Windels
6bc659c93b layout for error codes 2019-04-15 15:25:34 +02:00
Bruno Windels
1b2fba3fe2 move p tags for subtitles out of switch 2019-04-15 15:22:08 +02:00
Bruno Windels
942669ae65 look at join rules to see if join button should still be shown in some error cases 2019-04-15 15:16:50 +02:00
Bruno Windels
b09c7f97e9 implement most of new messages 2019-04-15 14:44:00 +02:00
J. Ryan Stinnett
c0cf6a35c6
Merge pull request #2919 from jryans/key-backup-this-device
Fix key backup status when missing device
2019-04-15 12:44:08 +01:00
YaoiFangirl420
f7462371b1 Rename: Avatar -> ComposerAvatar
To avoid confusion with other components that also might be named Avatar

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
3dae9f3d58 Move FormattingButton to separate component
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
817f1d482f Move format bar rendering to separate method
To reduce the complexity in render(), move the format bar rendering to a
separate method

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
419cb4e8b2 Define Stickerpicker inline
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
485ad6a3f0 Make UploadButton a separate component
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
452f0e6dcc Generate placeholder text in separate method
To make the MessageComposer render() method a bit less busy

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
cfb9172121 Tighten up code around call buttons
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
6aa9f068b3 Tighten controls code in MessageComposer
Make the user avatar a separate function component, make the logic for
laying out components a little more concise

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
YaoiFangirl420
d08fbb4872 Make call buttons into separate components
Make the call/voice-call/hangup buttons separate react components
to reduce the amount of complexity on MessageComposer.

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-13 01:45:15 -07:00
Travis Ralston
e8d141fc3c
Merge pull request #2908 from matrix-org/travis/upgrades/linkback
Add a link in room settings to get at the tombstoned room if it exists
2019-04-12 10:21:39 -06:00
J. Ryan Stinnett
5ee9de04c3 Fix key backup status when missing device
We might not have the device in `sig.device`, so we have to check for it's
existence first. This fixes the "Unable to load key backup status" message that
is incorrectly triggering.

Fixes https://github.com/vector-im/riot-web/issues/9442
2019-04-12 16:23:54 +01:00
Bruno Windels
b67152d98e WIP 2019-04-12 14:40:31 +02:00
Bruno Windels
01e9de9a3a differentiate style based on preview or not 2019-04-12 12:54:13 +02:00
Bruno Windels
ed7e79af8f
Merge pull request #2912 from matrix-org/bwindels/propwarn
adjust prop in HeaderButton
2019-04-12 09:02:50 +00:00
Travis Ralston
934ca6908f Remove breadcrumb scroll tolerances and use sensible defaults
Fixes https://github.com/vector-im/riot-web/issues/9394
Fixes https://github.com/vector-im/riot-web/issues/9400

Numbers chosen based on user feedback. The setting has also been removed because it isn't really needed anymore.
2019-04-11 11:07:31 -06:00
Travis Ralston
ec01f6ffb1 Change wording for old room link 2019-04-11 10:40:25 -06:00
Bruno Windels
fee30d4482 adjust prop in HeaderButton 2019-04-11 18:32:38 +02:00
Bruno Windels
86a6037a12
Merge pull request #2906 from matrix-org/bwindels/toggleheaderbutton
Fix having to click the member list button twice to show it after having changed room.
2019-04-11 12:43:39 +00:00
Bruno Windels
483b7fc14d take buttons into account that are active over multiple phases when toggling 2019-04-11 13:31:21 +02:00
Bruno Windels
02792132e1 dont create functions in render 2019-04-11 13:22:47 +02:00
Bruno Windels
0553a6f1d6 some style changes 2019-04-11 13:07:54 +02:00
Travis Ralston
64423e1f7d let -> const 2019-04-10 15:34:06 -06:00
Travis Ralston
15e8ce7a7f Add a link in room settings to get at the tombstoned room if it exists
Fixes https://github.com/vector-im/riot-web/issues/8542
2019-04-10 15:00:02 -06:00
Travis Ralston
b8ffd0fca2
Merge pull request #2889 from matrix-org/anoa/one_space
Remove duplicate space in credits
2019-04-10 12:13:39 -06:00
Bruno Windels
49e96dc404 remove unused dispatcher import 2019-04-10 13:31:27 +02:00
Bruno Windels
6ca1a879c9 remove hacks, now that emitting show_right_panel is centralized 2019-04-10 13:22:31 +02:00
Bruno Windels
fe63b6b5bd setPhase can now open the panel, don't open it if closed on view_room 2019-04-10 13:21:42 +02:00
Bruno Windels
2b4b6feba2 call togglePhase from header buttons 2019-04-10 13:21:07 +02:00
Bruno Windels
5fb9276ef3 add togglePhase method, where we can show the panel if needed
without needing to resort to redispatching the original action
2019-04-10 13:20:03 +02:00
J. Ryan Stinnett
687b43f7b4
Merge pull request #2903 from jryans/rm-bottom-left-menu
Remove BottomLeftMenu and supporting bits
2019-04-09 19:09:07 +01:00
J. Ryan Stinnett
12f7d1715b Remove BottomLeftMenu and supporting bits
The `BottomLeftMenu` component is not used in the new design. This removes the
component and also any images and sub-components that were only used by it.
2019-04-09 17:38:32 +01:00
Bruno Windels
0592a1711a
Merge pull request #2439 from matrix-org/matthew/retina
Fix for retina thumbnails being massive
2019-04-09 16:14:25 +00:00
Travis Ralston
daaedb8291
Merge pull request #2894 from matrix-org/travis/breadcrumbs/ratelimit
Send breadcrumb updates only when they change
2019-04-09 09:58:04 -06:00
Travis Ralston
44e33ba5f1
Merge pull request #2892 from matrix-org/travis/breadcrumbs/scrolling
Add some tolerances to breadcrumb scrolling
2019-04-09 09:41:07 -06:00
Travis Ralston
43362bfb98 Explain why the breadcrumbs don't need persisting elsewhere 2019-04-09 09:40:49 -06:00
J. Ryan Stinnett
a23900c29d
Merge pull request #2902 from jryans/auth-validation
Fix validation to avoid `undefined` class on fields
2019-04-09 16:25:24 +01:00
J. Ryan Stinnett
f2da833ac9 Fix validation to avoid undefined class on fields
The class name handling for validation inadvertently added `undefined` as a
class when validation is not used. This rearranges the logic to avoid the issue.

Fixes https://github.com/vector-im/riot-web/issues/9345
2019-04-09 16:10:36 +01:00
Travis Ralston
35a20143ba
Merge pull request #2897 from matrix-org/travis/upgrades/touchups
Fix room upgrade warnings popping up in upgraded rooms
2019-04-09 09:06:17 -06:00
David Baker
0f1ebf8095 Factor out this device check & reorder conditionals 2019-04-09 13:47:25 +01:00
David Baker
7c1943ef4e Key backup: Handle case where your onw sig is invalid
Sometimes life is just like that
2019-04-09 13:22:35 +01:00
Bruno Windels
15ba24f7fb Merge branch 'develop' into matthew/retina 2019-04-09 10:55:05 +02:00
Travis Ralston
4beecb50c9 Fix room upgrade warnings popping up in upgraded rooms
Rooms which are already upgraded shouldn't be asked to upgrade. Additionally, this fixes a bug where the room upgrade dialog would stay open even after upgrading the room.
2019-04-08 15:39:36 -06:00
Travis Ralston
bf0605cf84 Send breadcrumb updates only when they change
Fixes an issue where hovering over the breadcrumbs could cause hundreds of web requests due to updates. This also fixes https://github.com/vector-im/riot-web/issues/9390 as the update is more reliable.
2019-04-08 11:17:27 -06:00
Travis Ralston
aa96fd27cc Add some tolerances to breadcrumb scrolling
See https://github.com/vector-im/riot-web/issues/9400
See https://github.com/vector-im/riot-web/issues/9394

Tolerances are defined as a device-only setting to give advanced users an option to override the values. No UI is exposed for this. 

The default values are picked for assumptions on comfort, however as people change the tolerances themselves the defaults may need to change.
2019-04-08 10:56:44 -06:00
Andrew Morgan
77515f0b58 Remove duplicate space in credits 2019-04-08 14:40:08 +01:00
Bruno Windels
45f3282b1b cleanup and linting 2019-04-08 14:57:39 +02:00
Travis Ralston
4ec2035f09
Merge pull request #2881 from matrix-org/travis/split-as-directory
Don't include all networks by default in the room directory
2019-04-08 06:55:39 -06:00
David Baker
3fe6d51fbe
Merge pull request #2868 from matrix-org/dbkr/dialog_redesign
Design tweaks to dialogs
2019-04-08 09:33:34 +01:00
Travis Ralston
b59de78129 Don't include all networks by default in the room directory
Fixes https://github.com/vector-im/riot-web/issues/9285
2019-04-05 10:50:01 -06:00
Travis Ralston
6a8b98eb71
Merge pull request #2877 from matrix-org/travis/breadcrumbs/scroll-left
Translate vertical scrolling to horizontal movement in breadcrumbs
2019-04-05 09:51:13 -06:00
Travis Ralston
e2edae3383 Merge branch 'develop' into travis/breadcrumbs/telemetry 2019-04-05 09:35:38 -06:00
David Baker
41c403c9a6
Merge pull request #2879 from matrix-org/dbkr/file_upload_fallout
Fix a few bugs introduced in file upload rework
2019-04-05 15:48:45 +01:00
Travis Ralston
4815aa6de9
Merge pull request #2875 from matrix-org/travis/breadcrumbs/mobile
Sync breadcrumb rooms through account data
2019-04-05 08:21:57 -06:00
Travis Ralston
2f8c0cb4e9
Merge pull request #2878 from matrix-org/travis/breadcrumbs/auto-scroll-left
Scroll breadcrumbs to the left when they change
2019-04-05 08:18:00 -06:00
Travis Ralston
223498a979
Merge pull request #2874 from matrix-org/travis/breadcrumbs/dms
Add an indicator to show a room is a direct chat in breadcrumbs
2019-04-05 08:15:12 -06:00
Travis Ralston
98b35d106b
Merge pull request #2872 from matrix-org/travis/breadcrumbs/upgrades
Use the most recent version of the room in breadcrumbs
2019-04-05 08:12:51 -06:00
David Baker
c8ba7d3434 Fix a few bugs introduced in file upload rework
* Fix the widget picture_snapshot command (not that I can find
   anything that uses it)
 * Remove unused prop
 * Fix plural on ContentMessages
2019-04-05 15:09:07 +01:00
Bruno Windels
f1b00dff35 Merge branch 'develop' into matthew/retina 2019-04-05 13:35:54 +02:00
Travis Ralston
04b521c48b Scroll breadcrumbs to the left when they change
Fixes https://github.com/vector-im/riot-web/issues/9355
2019-04-04 17:03:06 -06:00
Travis Ralston
138fd4ec87 Translate vertical scrolling to horizontal movement in breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/9314
2019-04-04 16:43:04 -06:00
Travis Ralston
b7e557e49a Autohide the scrollbar on breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/9349
2019-04-04 16:27:00 -06:00
Travis Ralston
64a22236c3 Handle cases where the user rapidly clicks between rooms
Once the user has breadcrumbs, there should always be breadcrumbs. Therefore it is safe to ignore any updates which have zero entries.
2019-04-04 16:21:57 -06:00
Travis Ralston
406196e11c Move import to avoid future merge conflicts 2019-04-04 15:10:17 -06:00
Travis Ralston
edc24c6a91 Move import to avoid future merge conflicts 2019-04-04 15:08:38 -06:00
Travis Ralston
44198ea97d Sync breadcrumb rooms through account data
Fixes https://github.com/vector-im/riot-web/issues/9315

Other clients would need to listen for and update im.vector.riot.breadcrumb_rooms in account data.
2019-04-04 15:06:03 -06:00
Travis Ralston
095e6a3ba6 Add an indicator to show a room is a direct chat
Fixes https://github.com/vector-im/riot-web/issues/8797
2019-04-04 14:31:23 -06:00
Travis Ralston
035f6b14c0 Add telemetry for how many people use breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/9207
2019-04-04 14:17:15 -06:00
Travis Ralston
68fc04d9f6 Use the most recent version of the room in breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/8662
2019-04-04 13:45:20 -06:00
Matthew Hodgson
d45f43144f
Merge pull request #2869 from matrix-org/matthew/redacted_tombstones
fix NPE for rooms with redacted tombstones
2019-04-04 16:53:31 +01:00
Travis Ralston
a61ab4eb4e
Merge pull request #2862 from matrix-org/travis/stickerpicker/remount
Don't re-init the stickerpicker unless something actually changes
2019-04-04 09:46:38 -06:00
Travis Ralston
9618187d2e
Merge pull request #2855 from YaoiFangirl420/rotate_images
Add option to rotate images
2019-04-04 09:46:06 -06:00
Travis Ralston
6722451207
semicolon 2019-04-04 09:36:45 -06:00
Travis Ralston
f2b7042a33 misc cleanup 2019-04-04 09:30:15 -06:00
Travis Ralston
5066d68875
Merge pull request #2861 from matrix-org/travis/breadcrumbs/badges
Add badges to breadcrumb rooms
2019-04-04 08:24:41 -06:00
J. Ryan Stinnett
cf69692d9e
Merge pull request #2866 from jryans/member-info-power
Include the current power level in the selector
2019-04-04 11:38:42 +01:00
J. Ryan Stinnett
b0f59007f3 Clarify level variable name 2019-04-04 10:30:23 +01:00
YaoiFangirl420
1cbbe5f31f Add i18n and fix method declaration
Add i18n entries for rotating images; fix the way `getName` is defined

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-04 02:27:58 -07:00
YaoiFangirl420
9bd1ba60f5 Add option to rotate images
cf. https://github.com/vector-im/riot-web/issues/9257

Add rotate clockwise/counterclockwise buttons to <ImageView>

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-04 01:48:41 -07:00
Travis Ralston
10369170ed Use a static prop on Stickerpicker to track the current widget 2019-04-03 17:16:56 -06:00
Travis Ralston
ad777782b8 Merge branch 'develop' into travis/stickerpicker/remount 2019-04-03 17:00:19 -06:00
Travis Ralston
f73c32e6c2 Track notifications in component state 2019-04-03 16:13:09 -06:00
Travis Ralston
f5600fd4d7 Add badges to breadcrumb rooms
Fixes https://github.com/vector-im/riot-web/issues/8606
2019-04-03 15:29:15 -06:00
Matthew Hodgson
e98ef0d537 only show continues link if tombstone has a continuation 2019-04-03 21:12:36 +01:00
David Baker
7925e7169a Design tweaks to dialogs
Little bit of a mix of things in this one:
 * Support variable-width dialogs. Default is fixed-width as before,
   only UploadConformDialog is variable-width. Controlled by a prop
   to BaseDialog.
 * Fixes to the cancel 'x' - scale the mask image, tweak size & colour
 * Colour & boldness of dialog titles
 * Align the dialog title & cancel 'x'
 * Remove gap between dialog buttons & right hand side of dialog(!)
 * Round corners on dialogs
 * Add grey border on image preview in upload confirm dialog
 * and, squeezing in slightly randomly, finish the partially renamed
   ChatInviteDialog to AddressPickerDialog.
2019-04-03 16:27:45 +01:00
Travis Ralston
c3d3dd1fd7
Merge pull request #2860 from matrix-org/travis/breadcrumbs/parted
Apply 50% opacity to left breadcrumbs
2019-04-03 08:42:39 -06:00
J. Ryan Stinnett
fa88185dee Include the current power level in the selector
This ensures we always include the current power level in the power selector,
even if it's greater than the level you're allowed to set yourself. This ensures
the selector can display the current value correctly when disabled.

Fixes https://github.com/vector-im/riot-web/issues/9340
2019-04-03 11:54:10 +01:00
Travis Ralston
c0f06602c5 Use state instead of forceUpdate 2019-04-02 10:47:39 -06:00
Travis Ralston
8225b91179
Merge pull request #2863 from matrix-org/travis/stickerpicker/lower-z
Put the stickerpicker below dialogs
2019-04-02 10:23:17 -06:00
David Baker
24ccfa69f4
Merge pull request #2858 from matrix-org/dbkr/upload_redesign
Implement redesigned upload confirmation screens
2019-04-02 11:00:16 +01:00
Travis Ralston
3f9d088667 Put the stickerpicker below dialogs
Fixes https://github.com/vector-im/riot-web/issues/9353

The ContextualMenu now accepts a zIndex parameter which can be used to control its level. Dialogs are at around 4000 in the z-index, and the context menu defaults to 5000 for the things that need tooltips and such in a dialog.
2019-04-01 20:34:33 -06:00
Travis Ralston
51750cf153 General cleanup of handling for WidgetMessaging instances
When setting, delete the old one. Because delete checks if it exists first, we can safely call this.

The change in FromWidgetPostMessageApi is just something noticed while debugging.
2019-04-01 19:50:05 -06:00
Travis Ralston
a4f76670c4 Don't re-init the stickerpicker unless something actually changes
Fixes https://github.com/vector-im/riot-web/issues/9354

https://github.com/matrix-org/matrix-react-sdk/pull/2801 introduced a change which tried to make sure that when the widget URL was changed that the picker would be re-mounted, however it accidentally introduced a regression. While it effectively did the task it wanted to, it failed to keep the previously-mounted sticker picker alive. This is because the Stickerpicker component is remounted when opened, and the _updateWidget function is called. This results in this.state not having the "current" widget, meaning a URL change is always detected when the component is remounted (room changes, open sticker picker). 

Instead of remounting always, we'll instead track which sticker picker widget is being used out of band. This therefore means that whenever the Stickerpicker component is mounted it doesn't create a whole new widget, and the existing (background) picker can be used. This also fixes the loading screen that people would see when opening the sticker picker after switching rooms, something which the persistent widget stuff is supposed to solve.
2019-04-01 19:48:05 -06:00
Travis Ralston
7e2291592c Apply 50% opacity to left breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/8564

We listen for membership changes to make sure the state is kept up to date.
2019-04-01 11:59:39 -06:00
J. Ryan Stinnett
d92336fc16
Merge pull request #2859 from jryans/redesign-debug-logs
Use Field component in bug report dialog
2019-04-01 18:33:22 +01:00
J. Ryan Stinnett
3948520eaa Use Field component in bug report dialog
This uses the field component in the bug report dialog, which generally improves
the styling to fit in more naturally with the rest of the app so that it feels
more trustworthy.

Fixes https://github.com/vector-im/riot-web/issues/9343
2019-04-01 17:50:12 +01:00
J. Ryan Stinnett
57d72b4deb
Merge pull request #2841 from jryans/storage-eviction-modal
Notify user when crypto data is missing
2019-04-01 17:31:39 +01:00
David Baker
0add3d0825 Translate into peoplecounting 2019-04-01 16:52:06 +01:00
David Baker
fedd4598b5 Space
The final frontier
2019-04-01 16:50:23 +01:00
David Baker
5b2cee2fc1 Implement redesigned upload confirmation screens
Also fairly significant refactor of the uploading code: there are
a number of different ways of triggerring a file upload and each
went through a different code path (the media config size limit
worked on one of those paths). Basically take a lot of code out
of the views and put it into ContentMessages.

Sorry about the size of this patch.

https://github.com/vector-im/riot-web/issues/7565
2019-04-01 16:42:41 +01:00
Travis Ralston
db66d27969
Merge pull request #2847 from matrix-org/travis/pdf-blob
Download PDFs as blobs to avoid empty grey screens
2019-03-29 16:05:07 -06:00
Travis Ralston
8d14dc4e26 Don't send options we don't need to fetch 2019-03-29 15:48:33 -06:00
Travis Ralston
fc28f094fe Set title attribute on images in lightbox
Part of https://github.com/vector-im/riot-web/issues/9324
2019-03-29 14:55:56 -06:00
Travis Ralston
62ba7dde94 Download PDFs as blobs to avoid empty grey screens
Fixes https://github.com/vector-im/riot-web/issues/8605

The grey screen of sadness comes up when Chrome tries to open the PDF but doesn't have the right CSP headers. To avoid this, we'll just force a download of the PDF through `fetch` and `Blob`. 

There are a few cases where the user might still get a grey screen though: namely if they open the URL in a new tab or when the event content is lying about the file type, or the file is too large to blobify.

`fetch` works in Chrome, Firefox, and our packaged Electron version.
2019-03-29 14:12:48 -06:00
Travis Ralston
86e4d29582 Merge remote-tracking branch 'origin/develop' into travis/cancel-3pid 2019-03-29 11:47:46 -06:00
Travis Ralston
07cc640089 Add common utility for checking 3pid invites
We just need to make sure they are structurally sound - actual validation is done by other parties.
2019-03-29 11:45:07 -06:00
J. Ryan Stinnett
328f0cd6bf Notify user when crypto data is missing
If we have account data in local storage but nothing in the crypto store, it
generally means the browser has evicted IndexedDB out from under us. This adds a
modal to explain the situation and offer to completely clear storage to get
things back to normal.

Fixes https://github.com/vector-im/riot-web/issues/9109
2019-03-29 16:06:08 +00:00
Bruno Windels
a326c83016
Merge pull request #2842 from matrix-org/bwindels/bacat-scrolling-merged-develop
BACAT Scrolling
2019-03-29 14:02:15 +00:00
Travis Ralston
0258f61f63 Fix typo preventing custom status from deregistering listeners on tiles 2019-03-28 21:02:24 -06:00
Travis Ralston
99dc2c4738 Add MemberInfo for 3pid invites and support revoking those invites
Fixes https://github.com/vector-im/riot-web/issues/625
Fixes https://github.com/vector-im/riot-web/issues/6411
Fixes https://github.com/vector-im/riot-web/issues/5490
2019-03-28 21:02:24 -06:00
Bruno Windels
0a4ef44bcf fix lint 2019-03-28 18:29:48 +01:00
Travis Ralston
acb33e1aa0
Merge pull request #2839 from matrix-org/travis/breadcrumbs/visual
Add custom tooltips and scrolling to breadcrumbs
2019-03-28 11:29:48 -06:00
Bruno Windels
41c5582a7b make resizeNotifier optional so tests don't fail 2019-03-28 17:56:12 +01:00
Travis Ralston
87ca3069bb Misc code cleanup 2019-03-28 10:43:01 -06:00
Travis Ralston
92c99546f6
Merge pull request #2837 from matrix-org/travis/breadcrumbs/persist
Persist breadcrumb state between sessions
2019-03-28 10:32:26 -06:00
Travis Ralston
f73556d278 Remove unnecessary params 2019-03-28 09:52:12 -06:00
Travis Ralston
9b64dd0cd7 Support horizontal scrolling on breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/8714
Fixes https://github.com/vector-im/riot-web/issues/8890
Fixes https://github.com/vector-im/riot-web/issues/9034
Fixes https://github.com/vector-im/riot-web/issues/8954

This turned out to be much more complicated than it needed to be. We use an IndicatorScrollbar to do all the math for us and some minor changes have been made so it can flag left/right overflow. The complicated part is the css changes which make the gradients work: unlike the RoomSubList, we have to calculate the offset of the indicators (gradients) on our own because position:sticky doesn't work horizontally.

The changes to the css (well, mostly pointer-events:none) make it so the gradient doesn't interfere with the room avatars. 

9034 and 8954 are fixed by this because they represent an overflow-x:none style breakage where browsers won't let you scroll without a scrollbar. The gradient offset problem is also demonstrated in 8954.
2019-03-27 17:52:05 -06:00
Travis Ralston
90d7e82399 Use custom tooltips on breadcrumb icons
Fixes https://github.com/vector-im/riot-web/issues/9303

We have to track our own onHover for this, and out of safety we ensure that exactly 1 room is hovered at a time.
2019-03-27 17:51:48 -06:00
Travis Ralston
bbbf509a8c Always append the current room to the breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/8659
Fixes https://github.com/vector-im/riot-web/issues/8970
2019-03-27 15:38:42 -06:00
Travis Ralston
c8e42d61f5 Persist breadcrumb state between sessions
Fixes https://github.com/vector-im/riot-web/issues/8549
2019-03-27 15:32:51 -06:00
David Baker
1fe830d1c6 Remove noreferrer on widget pop-out
Having the referrer allows widgets to do customisation based on what
riot instance is embedding it. It gets a referrer when we embed it
in the iframe so there's nothing gained by suppressing it here.
2019-03-27 13:27:57 +00:00
Bruno Windels
adf263c4af Merge branch 'develop' into bwindels/bacat-scrolling-merged-develop 2019-03-27 11:46:28 +01:00
Travis Ralston
ddcb7a68bd
Merge pull request #2781 from matrix-org/travis/openid-widget
Widget OpenID reauth implementation
2019-03-27 03:42:39 -06:00
J. Ryan Stinnett
db834b315a
Merge pull request #2828 from jryans/notification-labels
Clarify devices affected by notification settings
2019-03-26 17:43:19 +00:00
J. Ryan Stinnett
f8dce875f2 Clarify devices affected by notification settings
This clarifies that the notification settings only apply to the current device.
This also tries to apply the spirit of
https://github.com/matrix-org/matrix-react-sdk/pull/1995 (authored by @aidalgol)
which wanted to remove "web" from the label, since there's also a desktop
client.
2019-03-26 17:39:07 +00:00
Travis Ralston
1703e3860b
Merge pull request #2822 from matrix-org/travis/minimize-widgets
Minimize stickerpicker when the title is clicked
2019-03-26 07:44:14 -06:00
J. Ryan Stinnett
dbc4735b06
Merge pull request #2825 from YaoiFangirl420/develop
Add <code> blocks around homeserver and identity server urls
2019-03-26 09:35:56 +00:00
Travis Ralston
69fcebf045 Use allow/deny instead of whitelist/blacklist for terminology 2019-03-25 21:14:21 -06:00
Travis Ralston
79ea873717
Merge pull request #2820 from matrix-org/travis/timeline-explosion-workaround
Ask the user for debug logs when the timeline explodes
2019-03-25 12:09:16 -06:00
J. Ryan Stinnett
1e5c0a8713
Apply suggestions from code review
Co-Authored-By: turt2live <travpc@gmail.com>
2019-03-25 11:56:49 -06:00
J. Ryan Stinnett
3e676454b6
Update src/components/views/dialogs/TimelineExplosionDialog.js
Co-Authored-By: turt2live <travpc@gmail.com>
2019-03-25 11:33:31 -06:00
Travis Ralston
1172488cce
Merge pull request #2823 from matrix-org/travis/fix-add-widget-button
Fix typo preventing users from adding more widgets easily
2019-03-25 09:59:43 -06:00
Travis Ralston
0d5c98634d
Merge pull request #2817 from matrix-org/travis/blacklist-unverified-devices
Attach an onChange listener to the room's blacklist devices option
2019-03-25 09:59:29 -06:00
YaoiFangirl420
f2b64a8e7f Add <code> blocks around homeserver and identity server urls
To make the urls visually distinct from the surrounding non-url text

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-03-24 02:05:04 -07:00
Travis Ralston
1ba23d6833 Fix typo preventing users from adding more widgets easily
Fixes https://github.com/vector-im/riot-web/issues/9266
2019-03-23 23:53:21 -06:00
Travis Ralston
a8ae63bb06 Minimize stickerpicker when the title is clicked
Fixes https://github.com/vector-im/riot-web/issues/6437

This also fixes a bug where if the room had apps open and you clicked the sticker picker's title, you'd end up closing the apps and not the picker.
2019-03-23 23:50:06 -06:00
Travis Ralston
3654c895eb Appease the linter 2019-03-23 23:31:19 -06:00
Travis Ralston
2dcb40f1be Track OpenID automatic permissions by (widgetLocation, widgetUrl) 2019-03-23 23:25:31 -06:00
Travis Ralston
d3268801ed Merge branch 'develop' into travis/openid-widget 2019-03-23 22:48:12 -06:00
YaoiFangirl420
00335e2462 Fix bug with NetworkList dropdown
The NetworkDropdown component was incorrectly guarding against a null
check when retrieving the list of networks

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-03-23 20:53:09 -07:00
Travis Ralston
e5f7563dec Ask the user for debug logs when the timeline explodes
Fixes https://github.com/vector-im/riot-web/issues/9260
Workaround for https://github.com/vector-im/riot-web/issues/8593
Requires https://github.com/matrix-org/matrix-js-sdk/pull/869

We check if any dialogs are open before moving forward because we don't want to risk showing so many dialogs that the user is unable to click a button. We're also not overly concerned if the dialog being shown is irrelevant because whatever the user is doing will likely be unaffected, and we can scream in pain when they're finished.
2019-03-22 20:23:35 -06:00
Travis Ralston
50614fa7fb Attach an onChange listener to the room's blacklist devices option
Fixes https://github.com/vector-im/riot-web/issues/9235

The global option in user settings is unaffected by this bug. Users who have previously set the per-room flag without success can simply refresh the page and the change will be picked up. The bug here is that the current session would not update accordingly, however.

Introduced in https://github.com/matrix-org/matrix-react-sdk/pull/2523
2019-03-22 14:22:20 -06:00
J. Ryan Stinnett
c17f7a2949 Trim the logging for URL previews
It should be sufficient to have the error stack and general log message for URL
preview failure.
2019-03-22 18:50:08 +00:00
Bruno Windels
494779393f Merge branch 'develop' into bwindels/bacat-scrolling 2019-03-21 13:50:32 +01:00
David Baker
324781005d
Merge pull request #2808 from matrix-org/dbkr/velocity-mainline
Go back to using mainine velocity
2019-03-20 19:01:20 +00:00
Bruno Windels
f164a78eaa reimplement typing notif timeline shrinking prevention
instead of setting a min-height on the whole timeline,
track how much height we need to add to prevent shrinking
and set paddingBottom on the container element of the timeline.
2019-03-20 17:10:30 +01:00
Travis Ralston
94e91e6f9a
Merge pull request #2796 from matrix-org/travis/upgrade-warning
Warn that members won't be autojoined to upgraded rooms
2019-03-20 08:34:33 -06:00
David Baker
1a8fe4dd43 Go back to using mainine velocity
We moved off to our own fork of velocity many moons ago to fix
a memory leak bug when velocity was being barely maintained. They
have now merged the bugfix, so go back to mainline.
2019-03-20 10:54:06 +00:00
Travis Ralston
9f6b550caa
Merge pull request #2801 from matrix-org/travis/renew-widget
Discard old sticker picker when the URL changes
2019-03-19 08:50:33 -06:00
Travis Ralston
d713c62774
Merge pull request #2799 from matrix-org/travis/widget-reload
Reload widget messaging when widgets reload
2019-03-19 08:49:24 -06:00
Travis Ralston
6a7e4ba52c
Merge pull request #2806 from matrix-org/t3chguy/explicit_room_name_settings
Don't show calculated room name in room settings name input field
2019-03-18 20:32:11 -06:00
Michael Telatynski
cadf36e1c9 Don't show calculated room name in room settings name input field
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-18 23:33:24 +00:00
Michael Telatynski
d6f31bef8e Disable big emoji for m.emote messages as it looks weird
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-18 23:25:11 +00:00
Michael Telatynski
5771406dd7 Add View Servers in Room to Devtools
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-18 23:21:21 +00:00
Travis Ralston
a397f333d7 Discard old sticker picker when the URL changes
Fixes https://github.com/vector-im/riot-web/issues/7547
2019-03-16 16:02:38 -06:00
Travis Ralston
b68960ad26 Reload widget messaging when widgets reload
Fixes a bug for some widgets where they cannot do their startup routine (capabilities negotiation, etc) when someone maximizes the widget. By reloading the widget messaging, we ensure the widget is kept in the loop.
2019-03-15 22:24:27 -06:00
Travis Ralston
b48842e070 Fix imports for linter 2019-03-15 21:51:19 -06:00
Travis Ralston
f045beafc3 Support whitelisting/blacklisting widgets for OpenID 2019-03-15 21:33:31 -06:00
Travis Ralston
27c9b24cab Appease more of the linter 2019-03-15 16:44:27 -06:00
Travis Ralston
f6e3437944 Update text in RoomUpgradeWarningBar to match suggestions 2019-03-15 16:08:35 -06:00
Travis Ralston
92b851b26c Update text for room version upgrades in settings 2019-03-15 15:49:18 -06:00
Travis Ralston
da61e5e9d9 Merge branch 'develop' into travis/upgrade-warning 2019-03-15 15:32:49 -06:00
Travis Ralston
e5059fdf0f Don't show Matrix-namespaced push rules which the server doesn't declare
So that users can't change push rules they don't have. Similar to the behaviour in https://github.com/matrix-org/matrix-js-sdk/pull/860
2019-03-15 14:14:00 -06:00
Travis Ralston
8d8445429c Show options for .m.rule.tombstone push rules
Part of vector-im/riot-web#8447
2019-03-15 14:13:15 -06:00
Bruno Windels
bab2730d40 use ResizeNotifier as well to relayout room list 2019-03-15 10:16:21 +01:00
Bruno Windels
af0a51d3b2 use AutoHideScrollbar in member info panel 2019-03-15 10:16:21 +01:00
Bruno Windels
dad382a4b7 use AutoHideScrollbar in memberlist 2019-03-15 10:16:21 +01:00
Bruno Windels
f71a9f10dd remove onChildResize in RoomView as it's unused 2019-03-15 10:16:21 +01:00
Travis Ralston
788041a774 Warn that members won't be invited to the new room in room settings 2019-03-14 17:33:34 -06:00
Travis Ralston
5ded646db0 Warn that members won't be autojoined to upgraded rooms
Fixes https://github.com/vector-im/riot-web/issues/8173

Wording is questionable though.
2019-03-14 17:33:34 -06:00
J. Ryan Stinnett
ec51aee656 Remove refs from RegistrationForm
This aligns the code in `RegistrationForm` with other users of the `Field`
component. (In https://github.com/matrix-org/matrix-react-sdk/pull/2780, I had
thought that this code would be okay to leave alone, but I had missed the usage
of the `Field` value getter.)

Fixes https://github.com/vector-im/riot-web/issues/9172
2019-03-14 14:29:04 +00:00
J. Ryan Stinnett
c70925ab0d Restore Field value getter for RegistrationForm
When working on the `Field` validation support, I thought `RegistrationForm`'s
refs would be okay to leave as is, but I missed that they also depended on the
value getter.

For the moment, it's quicker to temporarily revive the value getter to get
registration working.

Fixes https://github.com/vector-im/riot-web/issues/9171
2019-03-14 12:29:00 +00:00
J. Ryan Stinnett
45063cad4a
Merge pull request #2780 from jryans/auth-validation
Initial portions of support for Field validation
2019-03-14 10:19:21 +00:00
J. Ryan Stinnett
77a06756e3 Remove padlock click handler to show unknown devices
The unknown devices dialog is confusing at the moment due to the complex trust
model in Riot involving various possible device states.

The room header padlock allows you to access this dialog even if there are no
unknown devices, which leads users to be unsure what they can believe and
reduces confidence in Riot. For now, we'll remove the room header click handler
that shows this dialog.

Fixes https://github.com/vector-im/riot-web/issues/8815
2019-03-13 12:58:23 +00:00
Jason Robinson
02ff1763a2 Ensure scalar_token is valid before opening integrations manager
Since Scalar (and other integration managers) are loaded as apps into
an iframe, a valid `scalar_token` must exist when loading the app.

It is possible that a scalar_token becomes invalid between the time
when the integration manager button was rendered and the user clicking
the link. Here we make a call to integration manager `/account`
before trying to render the integration manager, which ensures we
have a valid token for the integration manager to work with.

Moving the scalar token revalidation to the cases where it is actually
needed could make it possible to decrease the amount of Scalar /account
calls we do when switching rooms, which is currently 3.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-03-13 11:47:00 +02:00
J. Ryan Stinnett
e90d659e19 Remove validation demo code
This is example code from @ara4n's work in
https://github.com/matrix-org/matrix-react-sdk/pull/2550. We're not ready to
actually apply validation yet, so removing this for now.
2019-03-12 16:53:30 +00:00
J. Ryan Stinnett
69a066657b Remove bits of Field that supported uncontrolled
Field is no longer used as an uncontrolled component, so we can remove some
supporting code that we no longer need.
2019-03-12 16:51:19 +00:00
J. Ryan Stinnett
d4dbba3938 Convert uncontrolled Field usages to controlled
As part of adding validation to Field, the logic is simpler to follow if we can
assume that all usages of Field use it as a controlled component, instead of
supporting both controlled and uncontrolled.

This converts the uncontrolled usages to controlled.
2019-03-12 16:17:21 +00:00
J. Ryan Stinnett
cff3c94858 Fix indentation in PhoneNumbers.js 2019-03-12 15:39:30 +00:00
J. Ryan Stinnett
5a648ecfe4 Ensure we always set some value in Field
Always set some value on the Field's input so that it doesn't flip flop between
controlled and uncontrolled.
2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
ea050683bd Use the right prop type for functions 2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
57ce4d6e7d Call the parent component's onChange if it exists 2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
7241418eba Appease the linter
This checks `onValidate` in `render` to make the linter happy.
2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
edb7f39ec9 Validity class currently unused on tooltip 2019-03-12 14:02:54 +00:00
Matthew Hodgson
40f16fa310 adds validation for fields.
* renames RoomTooltip to be a generic Tooltip (which it is)
 * hooks it into Field to show validation results
 * adds onValidate to Field to let Field instances call an arbitrary validation function

Rebased from @ara4n's https://github.com/matrix-org/matrix-react-sdk/pull/2550
by @jryans. Subsequent commits revise and adapt this work.
2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
0791f220fb
Merge pull request #2776 from matrix-org/erikj/fix_null_counter
Fix simple header counters to correctly handle zero, take two
2019-03-12 10:46:51 +00:00
Erik Johnston
1a35130869 Fix simple header counters to correctly handle zero, take two 2019-03-12 10:00:10 +00:00
Travis Ralston
7eea62a22b
Merge pull request #2764 from matrix-org/travis/fix-hover
Fix sticky hover state by listening for hover on the document
2019-03-11 16:35:25 -06:00
Travis Ralston
1165c51c77
Merge pull request #2772 from matrix-org/erikj/fix_null_counter
Fix header counters to correctly handle zero
2019-03-11 15:10:53 -06:00
J. Ryan Stinnett
c38a7e6756 Pass correct args when creating event permalink in context menu
After the permalink API was changed in
https://github.com/matrix-org/matrix-react-sdk/pull/2671, it seems we forgot to
update this call site, so it was creating `<room>/<room>` links, instead of
`<room>/<event>`.

Fixes https://github.com/vector-im/riot-web/issues/9110
2019-03-11 15:05:05 +00:00
Erik Johnston
03d60e6af2 Fix header counters to correctly handle zero
Currently if you set the value to zero the counter is not displayed.
2019-03-11 14:04:15 +00:00
Bruno Windels
99f82a3de9
Merge pull request #2766 from matrix-org/bwindels/scrolling
Scroll investigation changes
2019-03-11 09:57:13 +00:00
Travis Ralston
e1f9482107
Merge pull request #2757 from matrix-org/anoa/accept_all_invites
Ability to bulk accept all invites (and fix rejecting all invites)
2019-03-08 14:55:59 -07:00
Travis Ralston
47b6356e10
Merge pull request #2767 from matrix-org/travis/misc-status-message-fixes
Misc fixes to StatusMessageContextMenu
2019-03-08 08:20:28 -07:00
J. Ryan Stinnett
d93e97bcd2 Remove span to regain explicit whitespace for country options
This change restores whitespace between the country name and prefix code in the
country dropdown.
2019-03-08 10:03:51 +00:00
Travis Ralston
604f8f8b6b Misc fixes to StatusMessageContextMenu
"waiting" is not a property, and unmount had a typo
2019-03-07 14:57:30 -07:00
Travis Ralston
241309ab83 Use CSS for hovering the tile 2019-03-07 14:55:17 -07:00
Bruno Windels
96b1b723cd restore scroll position when encrypted download attachment iframe is shown 2019-03-07 17:22:43 +01:00
Bruno Windels
4e382b1dd9 rename onWidgetLoad to onHeightChanged
as it's easy to confuse it with room widgets, but has nothing to do with it.
2019-03-07 17:02:19 +01:00
Andrew Morgan
71261fc7a7 Add 2500 as default delay 2019-03-07 11:12:16 +00:00
Travis Ralston
5b49584d79 Fix sticky hover state by listening for hover on the document 2019-03-06 16:27:29 -07:00
Andrew Morgan
c5198418b0 Use retry_after_ms instead of hardcoded delay 2019-03-06 15:37:06 +00:00
Andrew Morgan
0f14d89257 Ability to bulk accept all invites 2019-03-06 14:06:53 +00:00
J. Ryan Stinnett
13957bb5e7 Move country dropdown inside field in Settings
This updates the Settings phone input to match the new styling used on auth
flows.

Fixes https://github.com/vector-im/riot-web/issues/9049
2019-03-06 11:26:05 +00:00
J. Ryan Stinnett
5120ff83be Enable show prefix for phone input in Settings
This fixes an unrelated bug where the currently selected country's prefix number
wasn't being displayed. Since other country dropdown's show the prefix, and this
is also for phone numbers, it seems good to also show it here as well.
2019-03-06 11:22:29 +00:00
J. Ryan Stinnett
8bf5e1d19f
Merge pull request #2749 from jryans/auth-field
Use Field component in auth flows
2019-03-06 11:18:24 +00:00
J. Ryan Stinnett
35ee9c9ac7 One line for prefix container 2019-03-06 10:58:54 +00:00
J. Ryan Stinnett
df9888614b Normalize whitespace in PasswordLogin 2019-03-06 10:57:38 +00:00
David Baker
c1056025ed
Merge pull request #2748 from matrix-org/dbkr/shameless_plugging
Support linking to hosting providers
2019-03-05 18:22:02 +00:00
J. Ryan Stinnett
bc54ea5623 Convert login type to Field component
This converts the login type Dropdown on the login flow to also use the Field
component so that every presents a similar visual style.
2019-03-05 17:58:42 +00:00
J. Ryan Stinnett
5a491ac053 Convert login inputs to Field component
As with other auth flows, this converts inputs on the login page to use the
Field component for consistent styling. The login type dropdown is left as-is
for now.
2019-03-05 17:58:42 +00:00
J. Ryan Stinnett
5b1d361577 Convert registration phone number to Field component
Now that we have prefix support in the Field component, we can also convert the
phone number with country dropdown on registration.
2019-03-05 17:58:42 +00:00
Travis Ralston
6eaaa8b687
Merge pull request #2728 from matrix-org/travis/encryption-warning
Get confirmation before enabling encryption
2019-03-05 10:15:32 -07:00
David Baker
0244990731 Add utm_campaign to the hosting links
According to where in the app the link was clicked
2019-03-05 16:42:22 +00:00
David Baker
b68a71b294 Lint 2019-03-05 16:20:18 +00:00
David Baker
57d8f6d8a2 Support linking to hosting providers
From link in app config
2019-03-05 16:12:02 +00:00
J. Ryan Stinnett
26b2aa174b Add prefix support to Fields
This allows Fields to have an optional prefix component which is placed inside
the border of the Field and to the left of the input. Since this label animation
would be complex to get right for this case, it is instead fixed to the top left
if there is a prefix component.

This canonical example of this today would be a phone number field which
includes a country dropdown.
2019-03-05 15:25:43 +00:00
J. Ryan Stinnett
bfe120fbf4 Convert registration to Field component
This converts most fields in the registration form to use the Field component,
except for the phone number, which is a left as a separate task because of the
country dropdown menu.
2019-03-05 15:25:42 +00:00
Bruno Windels
96196d8c3d
Merge pull request #2746 from matrix-org/bwindels/flairnolayout
Prevent flair pushing timeline downwards
2019-03-05 15:34:09 +01:00
Bruno Windels
624572daa9 show flair container when no profiles loaded to ensure same height 2019-03-05 14:50:39 +01:00
J. Ryan Stinnett
b6351f2607
Merge pull request #2740 from jryans/reorg-field-props
Reorganise props handling in Field
2019-03-05 11:30:06 +00:00
J. Ryan Stinnett
d4a148d56c Use oneOf to check the input element 2019-03-05 11:18:58 +00:00
Travis Ralston
879fa22416 Merge branch 'develop' into travis/encryption-warning 2019-03-04 23:14:30 -07:00
Travis Ralston
363964e423 Don't loop forever if you demote yourself via Enter on a PowerSelector
The included comment explains what happens and why this is bad.

Fixes https://github.com/vector-im/riot-web/issues/9039
2019-03-04 13:08:54 -07:00
J. Ryan Stinnett
7c672e608d Reorganise props handling in Field
Several small tweaks to the props handling:

* Use destructuring instead of `delete`
* Emphasize the `element` as a primary prop
* Document `textarea` as supported
2019-03-04 17:25:19 +00:00
David Baker
a6a3716576
Merge pull request #2739 from matrix-org/dbkr/devices_toggle_update
Fix media device selectors not updating
2019-03-04 14:49:50 +00:00
David Baker
c7b019830d Fix media device selectors not updating
Missed a setState

Fixes https://github.com/vector-im/riot-web/issues/9036
2019-03-04 14:35:41 +00:00
Michael Telatynski
080c67439b
Merge pull request #2708 from matrix-org/fix_room_dict
Fix Room Directory custom homeserver entry not showing properly
2019-03-04 11:44:11 +00:00
Michael Telatynski
6b0b5e4aa3
Merge pull request #2729 from matrix-org/t3chguy/missing_permalinkCreator
Add missing permalinkCreator prop
2019-03-04 11:15:53 +00:00
Travis Ralston
71630af201 Patch users not existing when opening settings
Fixes https://github.com/vector-im/riot-web/issues/9022
2019-03-02 10:59:53 -07:00
Travis Ralston
454251d17c Use a div instead of an image
There's no source, so just make it a block element
2019-03-01 17:21:37 -07:00
Travis Ralston
8a6ae6b48e Use a mask for the continuation icon
Fixes https://github.com/vector-im/riot-web/issues/7990
2019-03-01 15:59:19 -07:00
Travis Ralston
5a4676ac66
Merge pull request #2725 from matrix-org/travis/settings/pl-dropdowns
Convert PowerSelector to use mxField instead
2019-03-01 09:03:16 -07:00
Travis Ralston
f9d6d42781
Merge pull request #2726 from matrix-org/travis/settings/save-feedback
Don't re-enable the save button after saving profiles
2019-03-01 09:02:54 -07:00
Michael Telatynski
eb46e62a2e delint NetworkDropdown
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-01 09:39:39 +00:00
Michael Telatynski
6b07195b63 Add missing permalinkCreator prop
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-01 09:36:36 +00:00
Travis Ralston
7d207ca2c3 speeling 2019-02-28 20:45:31 -07:00
Travis Ralston
9402e81835 Get confirmation before enabling encryption
Fixes https://github.com/vector-im/riot-web/issues/8843
2019-02-28 20:39:07 -07:00
Travis Ralston
12d939b36f Support multiple email pushers and remove the legacy UserSettingsStore
Fixes https://github.com/vector-im/riot-web/issues/5496
Fixes https://github.com/vector-im/riot-web/issues/8424
2019-02-28 19:57:45 -07:00
Travis Ralston
b84b11d3bd Don't re-enable the save button after saving profiles
Fixes https://github.com/vector-im/riot-web/issues/8569
2019-02-28 19:13:28 -07:00
Travis Ralston
a41df7ab68 Convert PowerSelector to use mxField instead 2019-02-28 19:00:57 -07:00
Travis Ralston
b5ffd4a538 Stop listening to account data when the stickerpicker is unmounted
Fixes https://github.com/vector-im/riot-web/issues/8994
2019-02-28 14:15:01 -07:00
Jason Robinson
a74cb001b4 Remove unnecessary ref from Stickerpicker
There is a ref=target in the call to render AccessibleButton for
the hide stickers button. This ref is not present in the show case.

When clicking the stickerpicker show button, React gives a warning:

> Warning: Stateless function components cannot be given refs
> (See ref "target" in AccessibleButton created by Stickerpicker).
> Attempts to access this ref will fail.

Removed the ref. Stickerpicker hide/show still works fine, no warning.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-02-28 15:51:36 +02:00
Travis Ralston
93043c8cc0
Merge pull request #2709 from matrix-org/t3chguy/badge_51
Show nearest lower badge, e.g show Mod for 51... etc
2019-02-27 18:30:57 -07:00
Michael Telatynski
9dede7ab65
Merge pull request #2710 from matrix-org/t3chguy/composer_demote
move canSendMessages into state so that it will re-render the composer
2019-02-27 15:40:00 +00:00
J. Ryan Stinnett
209ac2c587
Merge pull request #2706 from jryans/move-non-feather-icons
Move non-feather icons out of feather dir
2019-02-27 13:08:23 +00:00
David Baker
6cdb318cd0
Merge pull request #2713 from matrix-org/dbkr/fix_logout_dialog_backup
Fix backup button in logout dialog
2019-02-27 12:45:52 +00:00
David Baker
98402e7eae Fix backup button in logout dialog
We set the caption appropriately but forgot to actually do the
right thing depending on whether there was a key backup already.

Also fix the loadihng spinner which was never shown.

Fixes https://github.com/vector-im/riot-web/issues/8369
2019-02-27 11:45:00 +00:00
J. Ryan Stinnett
4b340450b9 Rename Feather icon directory to feather-customised
These icons are based on Feather as the original source, but they have various
tweaks applied, such as stroke width, color, etc. Hopefully the tweaked name
makes this more obvious in the future.
2019-02-27 10:42:10 +00:00
Michael Telatynski
f16011394e Merge branches 'develop' and 't3chguy/composer_demote' of github.com:matrix-org/matrix-react-sdk into t3chguy/composer_demote
# Conflicts:
#	src/components/views/rooms/MessageComposer.js
2019-02-27 00:28:16 +00:00
Michael Telatynski
7dfbf3feb2 move canSendMessages into state so that it will re-render the composer
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-27 00:23:37 +00:00
Michael Telatynski
93323421de Show nearest lower badge, e.g show Mod for 51... etc
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-26 23:59:40 +00:00
Michael Telatynski
fbe4d52b48 Fix Room Directory custom homeserver entry not showing propely
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-26 23:25:31 +00:00
J. Ryan Stinnett
1a89a4e87d Move logos out of feather dir
These clearly aren't from the Feather set.
2019-02-26 20:41:33 +00:00
J. Ryan Stinnett
426bdafe22
Merge pull request #2672 from jryans/password-validation
Report validity state of all registration fields on any change
2019-02-26 18:20:38 +00:00
Bruno Windels
68ba14909b
Merge pull request #2671 from matrix-org/bwindels/permalinkperf
Improve permalink performance
2019-02-26 10:48:20 +01:00
Bruno Windels
4d95af705d fix lint 2019-02-26 10:26:33 +01:00
Travis Ralston
18b27a72d8
Merge pull request #2692 from matrix-org/t3chguy/room_context_menu_settings
Settings button in Room Context Menu
2019-02-25 20:28:38 -07:00
Michael Telatynski
7029695224 make it i18n friendly
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-25 23:26:24 +00:00
Michael Telatynski
8d149575ea Merge branches 'develop' and 't3chguy/room_context_menu_settings' of github.com:matrix-org/matrix-react-sdk into t3chguy/room_context_menu_settings 2019-02-25 23:12:06 +00:00
Michael Telatynski
d4b6ce6932 Apply PR feedback, don't change room to go to its settings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-25 23:08:51 +00:00
Michael Telatynski
dd9077f1e4 Merge branches 'develop' and 't3chguy/pretty_Devtools' of github.com:matrix-org/matrix-react-sdk into t3chguy/pretty_Devtools 2019-02-25 22:39:37 +00:00
Michael Telatynski
56d58f8600 make better use of space
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-25 22:38:33 +00:00
Michael Telatynski
5bdd61111d Fix textareas
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-25 22:12:06 +00:00
Travis Ralston
1aef157d2a Fix variable reference 2019-02-25 11:52:45 -07:00
Travis Ralston
24099de2a4 Merge branch 'develop' into travis/settings-cleanup-1 2019-02-25 10:56:43 -07:00
Travis Ralston
e0a5eeca75
Merge pull request #2686 from matrix-org/travis/old-room-sorting
Support the old room sorting algorithm and SettingsStore watchers
2019-02-25 10:51:10 -07:00
Bruno Windels
77f979ed6d also pass permalinkCreator here 2019-02-25 18:43:08 +01:00
Bruno Windels
b8c6bed906 adjust permalink code for tombstone message 2019-02-25 18:43:08 +01:00
Bruno Windels
fb672ffb28 change handling of event permalinks in replies 2019-02-25 18:43:08 +01:00
Bruno Windels
31dda34e6b use new permalink class in share dialog & context menu 2019-02-25 18:43:08 +01:00
Bruno Windels
f7ea9cfeb2 rename all instances of permalinkCreator 2019-02-25 18:43:08 +01:00
Bruno Windels
f97ea37717 permalink is one word 2019-02-25 18:43:08 +01:00
Bruno Windels
29be28919d create permalink creator in roomview and pass it on to the event tiles 2019-02-25 18:43:08 +01:00
Travis Ralston
5bf9f721c8 Port minimize to tray to new settings tab (post-merge)
Brings in b02b371250
2019-02-25 09:43:39 -07:00
Travis Ralston
4801b25f77 Merge remote-tracking branch 'origin/develop' into travis/settings-cleanup-1 2019-02-25 09:40:50 -07:00
Travis Ralston
8049d5c2b2
Merge pull request #2684 from matrix-org/travis/fix-e2e-menu-item
Only set e2e info callback if the event is encrypted
2019-02-25 07:31:17 -07:00
Travis Ralston
1c10b3050d Revert "Add some logging for riot-web#7838"
This reverts commit f5ff580e35.
2019-02-24 18:05:40 -07:00
Travis Ralston
c12bea06c8
Merge pull request #2698 from matrix-org/t3chguy/room_member_filter_clear
Add abilities to clear Filter room members input
2019-02-24 18:00:02 -07:00
Travis Ralston
2b9b07c29d
Merge pull request #2696 from matrix-org/t3chguy/pretty_view_source
make ViewSource less awkward
2019-02-24 17:55:07 -07:00
Travis Ralston
8ca1c96df4
Merge pull request #2691 from matrix-org/t3chguy/user_typing_memberinfo
view user on click typing tile
2019-02-24 17:38:25 -07:00
Travis Ralston
c261879ba7
Merge pull request #2690 from matrix-org/t3chguy/share_permalink
Change Share Message to Share Permalink if !m.room.message||redacted
2019-02-24 17:37:25 -07:00
Travis Ralston
f0353dbc3f
Merge pull request #2688 from matrix-org/t3chguy/minimize_tray
Allow configuration of whether closing window closes or minimizes to tray
2019-02-24 17:33:26 -07:00
Matthew Hodgson
ef3b729ff4 s/google.com/recaptcha.net/ as per https://developers.google.com/recaptcha/docs/faq#can-i-use-recaptcha-globally 2019-02-24 23:35:08 +00:00
Michael Telatynski
ee47e0f72e pass through className
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 04:44:38 +00:00
Michael Telatynski
5052039b36 Re-use SearchBox from filter rooms for filter room members
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 04:42:04 +00:00
Michael Telatynski
dbf540074d replace text Inputs in Devtools with Field bcuz prettier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 04:28:42 +00:00
Michael Telatynski
7b88d5d21c make ViewSource less awkward
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 03:43:44 +00:00
Michael Telatynski
393fd26a42 Settings button in Room Context Menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 02:42:41 +00:00
Michael Telatynski
c99b4bda32 view user on click typing tile
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 02:30:45 +00:00
Michael Telatynski
f2624beca4 Change Share Message to Share Permalink if !m.room.message||redacted
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 02:03:20 +00:00
Michael Telatynski
b02b371250 Allow configuration of whether closing window closes or minimizes to tray
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-02-24 01:06:53 +00:00
Travis Ralston
b0cc69bca9 Add an option to sort the room list by recents first
Fixes https://github.com/vector-im/riot-web/issues/8892
2019-02-22 17:09:07 -07:00
Travis Ralston
014e4a2ccf Remove DragDropContext from FlairSettings
This also fixes a technical bug where one could drag a community from the settings to the LLP
2019-02-22 11:33:03 -07:00
Travis Ralston
bd54a401bc Sort settings tabs into a logical structure
Fixes https://github.com/vector-im/riot-web/issues/8864
2019-02-22 11:33:03 -07:00
Travis Ralston
20cd198784 Only set e2e info callback if the event is encrypted
Fixes https://github.com/vector-im/riot-web/issues/8551
2019-02-22 10:31:14 -07:00
J. Ryan Stinnett
150c941340
Merge pull request #2682 from jryans/simplify-composer-state-change
Remove duplicated conversion from `enableRichText`
2019-02-22 16:57:37 +00:00
Travis Ralston
d6f89f422b
Merge pull request #2679 from matrix-org/travis/settings/field-editable-list
Fix AliasSettings and RelatedGroups UX
2019-02-22 09:40:34 -07:00
J. Ryan Stinnett
c45ca58689
Merge pull request #2677 from jryans/composer-input
Add `onClick` to Markdown buttons
2019-02-22 16:19:22 +00:00
J. Ryan Stinnett
f5c477bbc8 Remove duplicated conversion from enableRichText
`enableRichText` would convert the editor state between rich and md versions
explicitly, but then it would also call `createEditorState`, which can do the
same thing.

This removes the duplication, and also supplies the right arguments to
`createEditorState` so it can do its work correctly.
2019-02-22 15:48:44 +00:00
Travis Ralston
a02508023b
Merge pull request #2678 from matrix-org/travis/fix-email-config
Fix toggle for email notifications
2019-02-22 08:22:43 -07:00
J. Ryan Stinnett
ccd4dee0d2 Isolate rich text notifications from other input changes
The step that would notify parent components of rich text state changes was
stirred into the input's change handler, which leads to race which the parent is
sometimes notified of the old rich text state instead of the new.

Here we avoid this complication by using a separate path for sending the rich
text state when we know we have updated it correctly.
2019-02-22 15:18:24 +00:00
J. Ryan Stinnett
3e6199c0f7 Change Markdown buttons to onClick
`AccessibleButton` expects click handlers, which we can use here, as long we
make some additional changes to avoid race processing the new state (see
subsequent patch).

Fixes https://github.com/vector-im/riot-web/issues/8866
2019-02-22 15:18:06 +00:00
J. Ryan Stinnett
b6682c0469
Merge pull request #2673 from jryans/username-label
Clarify what the username error refers to
2019-02-22 10:17:58 +00:00
Alexander Terczka
892802e9cc
RoomDirectory Dropdown should use roomDirectory.servers
The sample config.json in riot-web has "roomDirectory.servers" and not "servers".
Are other systems than riot-web use "servers" without "roomDirectory" ? Then this would break these.
2019-02-22 02:40:01 +01:00
Travis Ralston
75a2593523 More misc linter cleanup 2019-02-21 18:18:12 -07:00
Travis Ralston
9795161f40 Misc linter cleanup 2019-02-21 17:53:29 -07:00
Travis Ralston
1e6594ceba Disable removal of items if the user doesn't have permission 2019-02-21 17:15:25 -07:00
Travis Ralston
003d0eb0bf Show changes to related groups (flair) in the timeline 2019-02-21 17:03:15 -07:00
Travis Ralston
96eeab23af Convert RelatedGroupSettings to a class component 2019-02-21 16:48:54 -07:00
Travis Ralston
10daa35263 Make related groups direct manipulation 2019-02-21 16:40:12 -07:00
Travis Ralston
58b9a0675e Disable main address dropdown when lacking permissions
Instead of rendering it as a span with no label.
2019-02-21 16:38:10 -07:00
Travis Ralston
2990cf41e7 Remove old "click to save" functionality from AliasSettings 2019-02-21 16:27:49 -07:00
Travis Ralston
750c9202cc Make the canonical alias direct manipulation 2019-02-21 16:11:26 -07:00
Travis Ralston
278e48cfc9 Make removing aliases direct manipulation 2019-02-21 15:22:08 -07:00
Travis Ralston
5d2f17c49a Make adding aliases direct manipulation 2019-02-21 15:22:08 -07:00
Travis Ralston
2903a0e712 Rework EditableItemList to support mxField
Also improves upon the general UX to be a bit friendlier for direct manipulation things.
2019-02-21 15:22:08 -07:00
Travis Ralston
23dd3573f8 Fix SdkConfig import in Notifications
Fixes an issue discovered after fixing the toggle - The SdkConfig in onEnableEmailNotificationsChange ends up being undefined if the import is left as-is.
2019-02-21 15:18:54 -07:00
Travis Ralston
ee8a027b4c Fix toggle for email notifications
The function doesn't receive an event, it receives a boolean.

Fixes https://github.com/vector-im/riot-web/issues/8837
2019-02-21 15:18:11 -07:00
Travis Ralston
ade9ee3c18
Merge pull request #2634 from matrix-org/travis/better-room-sorting
"Breadcrumb" room sorting algorithm
2019-02-21 08:46:17 -07:00
Bruno Windels
ab9bf4c0e0
Merge pull request #2666 from matrix-org/bwindels/userview
Bring back user view
2019-02-21 16:05:03 +01:00
J. Ryan Stinnett
b74107116b Clarify what the username error refers to
Fixes https://github.com/vector-im/riot-web/issues/8839
2019-02-21 15:01:09 +00:00
J. Ryan Stinnett
86a375c7da Report validity state of all registration fields on any change
This passes the validity state of all fields to the consumer of
`RegistrationForm` via the `onValdiationChange` callback, instead of just the
most recent error.

In addition, we notify the consumer for any validation change, whether success
or failure. This allows old validation messages to be properly cleared. It also
allows the consumer to be aware of multiple validation errors and display the
next one after you have fixed the first.

Fixes https://github.com/vector-im/riot-web/issues/8769
2019-02-21 14:44:39 +00:00
J. Ryan Stinnett
acae2e9976 Wait until password confirm is non-empty
If password confirm is empty on blur, there's no reason to try validating it.
The user may just be tabbing through fields.
2019-02-21 14:44:32 +00:00
J. Ryan Stinnett
27abd7d507 Update validation order to match field order
Validation is meant to run in reverse order of the fields (so that the last
message emitted is for the first invalid field).
2019-02-21 11:35:55 +00:00
J. Ryan Stinnett
8b66b6bdb3 Relabel custom HS link on registration from 'Edit' to 'Change'
Fixes https://github.com/vector-im/riot-web/issues/8853
2019-02-21 11:03:50 +00:00
J. Ryan Stinnett
16b9688303
Merge pull request #2669 from matrix-org/jryans/default-server-name
Restores support for `default_server_name` which discovers URLs via `.well-known`
2019-02-21 10:38:15 +00:00
Bruno Windels
d9b8b0f988 fix indentation 2019-02-21 10:51:09 +01:00
J. Ryan Stinnett
42bb3c4f40 Prevent default for forgot password link
The forgot password link should prevent default to avoid changing the URL's hash
state.
2019-02-20 17:33:59 +00:00
J. Ryan Stinnett
d220dd49ef Clarify that the account is a Matrix account
Now that auth flows can show a server name like `example.com` which might
delegate the HS to some other server, it could be confusing to see text like
"Sign in to example.com", especially if `example.com` runs an identity service,
uses SSO, has its own account system, or other things like this.

To clarify that we mean Matrix accounts, all auth flows are updated to talk in
terms of "<verb> your Matrix account on <server>".

Fixes part of
https://github.com/vector-im/riot-web/issues/8763#issuecomment-464823909.
2019-02-20 17:33:59 +00:00
J. Ryan Stinnett
f4b7180087 Display default server name in login
If a default server name is set and the current HS URL is the default HS URL,
we'll display that name in the "sign in to" text on the login form.

This can be a bit more user friendly, especially when the HS is delegated to
somewhere such as Modular, since you'll then see "example.com" instead of
"example.modular.im", which you have no direct relationship with as a user.

This is the key bit of https://github.com/vector-im/riot-web/issues/8763 for
login.
2019-02-20 17:33:59 +00:00
J. Ryan Stinnett
a29a8185fc
Merge pull request #2667 from jryans/trim-changelog
Only show the first line of each commit in changelog dialog
2019-02-20 13:05:14 +00:00
J. Ryan Stinnett
d68b7c29e2 Only show the first line of each commit in changelog dialog
Multi-line commits aren't actually formatted correctly, and most likely the
first line is enough of a summary anyway, so this change trims to the first
line. The commits are linked, so you can click through if you want more detail.

Fixes https://github.com/vector-im/riot-web/issues/8285
2019-02-20 12:20:48 +00:00
J. Ryan Stinnett
91f56a4447 Display default server name in registration
If a default server name is set and the current HS URL is the default HS URL,
we'll display that name in the "your account" text on the registration form.

This can be a bit more user friendly, especially when the HS is delegated to
somewhere such as Modular, since you'll then see "example.com" instead of
"example.modular.im", which you have no direct relationship with as a user.

This is the key bit of https://github.com/vector-im/riot-web/issues/8763 for
registration.
2019-02-20 12:17:51 +00:00
Bruno Windels
f11505a9de bring back user page
Adds a UserView that contains a MainSplit with an empty div
and a RightPanel, preset to the given member.

UserView fetches the profile and creates a fake member, which
it passed on to the RightPanel.

this doesn't use the view_user action on purpose, to avoid any
interference of the UserView when trying to view a room member.
2019-02-20 12:45:55 +01:00
J. Ryan Stinnett
b846ac5800 Rework ServerTypeSelector to only emit changes after initial setup
`ServerTypeSelector` would call its `onChange` prop both at construction
(because it computed the default selected type and consumers might want to know)
as well as on actual user change. This ended up complicating consumer code, as
they want to differentiate between initial state and changes made by the user.

To simplify things, `ServerTypeSelector` now exports a function to compute the
server type from HS URL, which can be useful for setting its initially selected
type. The consumer now provides that type via a prop, and `onChange` is now only
called for actual user changes, simplifying the logic in `Registration` which
uses `ServerTypeSelector`.

In addition, some usages of `customHsUrl` vs. `defaultHsUrl` in `Registration`
are simplified to be `customHsUrl` only (since it already includes a fallback to
the default URL in `MatrixChat`).
2019-02-20 11:23:51 +00:00
J. Ryan Stinnett
9292a46db0 Update comment about Modular server type selection
Modular now sets `disable_custom_urls`, so the server type selector is not shown
for Modular-hosted Riot.
2019-02-20 10:24:03 +00:00
Travis Ralston
7b732ceb43 Merge branch 'develop' into travis/better-room-sorting 2019-02-19 14:35:14 -07:00
Tomas Batalla
b90e33b81b
Fix off by one error for username colors
The hash result would only have a range of 0..7, but the css of color variants is 1..8
2019-02-19 10:52:59 -08:00
J. Ryan Stinnett
6b46057283
Merge pull request #2663 from jryans/enable-captcha-desktop
Allow captchas on Riot desktop builds
2019-02-19 18:20:15 +00:00
J. Ryan Stinnett
edf10dbdde
Merge pull request #2659 from jryans/dark-theme-more-2
Dark theme follow ups round 2
2019-02-19 17:51:29 +00:00
J. Ryan Stinnett
1cde4abe6a Improve text layout above captcha 2019-02-19 13:59:15 +00:00
J. Ryan Stinnett
3c156218da Allow captchas on Riot desktop builds 2019-02-19 13:57:31 +00:00
J. Ryan Stinnett
198dee9abd Rename default theme to light theme 2019-02-19 13:27:35 +00:00
Travis Ralston
424de00109
Merge pull request #2648 from matrix-org/travis/fix-room-settings
Add a bit of safety around reading events for room settings
2019-02-18 21:34:45 -07:00
J. Ryan Stinnett
5fb990eb5f Convert Markdown button to SVG mask
This makes it easier to theme via CSS, which helps with the dark theme.
2019-02-18 18:26:52 +00:00
J. Ryan Stinnett
09ed795c79 Allow theming member info minimise button 2019-02-18 16:02:10 +00:00
Travis Ralston
da4d1cfed4 Merge branch 'develop' into travis/better-room-sorting 2019-02-15 23:32:15 -07:00
Aaron Raimist
1e01f1b52a
Fix typo "Scisors" -> "Scissors"
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-02-15 11:26:14 -06:00
Bruno Windels
c39c0e4834 fix for the ... button not being aligned for group invite tiles 2019-02-15 13:07:33 +01:00
Travis Ralston
f46df2ddd9 Add a bit of safety around reading events for room settings
Fixes https://github.com/vector-im/riot-web/issues/8530 and maybe https://github.com/vector-im/riot-web/issues/8641
2019-02-14 11:09:37 -07:00
J. Ryan Stinnett
df5f0601aa
Merge pull request #2641 from matrix-org/dbkr/remove_welcome_from_topleft
Remove 'welcome' from top-left menu
2019-02-14 16:40:39 +00:00
J. Ryan Stinnett
ce68ff1214
Merge pull request #2640 from jryans/help-buoy
Update help buoy text and issue links
2019-02-14 16:17:34 +00:00
David Baker
93350c43a5 Put back this bind - it's an unrelated fix 2019-02-14 16:07:44 +00:00
Travis Ralston
37d1191c72 Add credit for cover photo usage
Fixes https://github.com/vector-im/riot-web/issues/8374
2019-02-14 09:04:15 -07:00
David Baker
7845a63506 Remove 'welcome' from top-left menu
Tjis is quite confusing as the welcome page is designed for when
you're not logged in, ie. has a sign-in button. There's also no way
to get back into the app so it really looks like it's logged you
out.

Reverts 116367fd69
2019-02-14 15:53:52 +00:00
J. Ryan Stinnett
2a3b05a321 Update help buoy text and issue links 2019-02-14 15:52:13 +00:00
Bruno Windels
107eb974d4 always rerender
as not all state that goes into rendering comes from state or props,
we shouldn't be blocking rendering at all

This might rerender a few times more, but it shouldn't be worse
than what was there before the redesigned roomlist.
2019-02-14 13:30:03 +01:00
Travis Ralston
9175655c16 Remove old pin unread options
They are not forced on, and do nothing.
2019-02-13 13:13:40 -07:00
Bruno Windels
5aa08a0f02
Merge pull request #2631 from matrix-org/bwindels/roomlistfilterfix
update range when items size changes
2019-02-13 20:29:40 +01:00
David Baker
0ad9d71935
Merge pull request #2630 from matrix-org/dbkr/fix_register_email_link
Fix registration after clicking email link
2019-02-13 19:25:15 +00:00
Bruno Windels
a1a82e48d9 update range when items size changes 2019-02-13 20:21:17 +01:00
J. Ryan Stinnett
5b64543159
Typo
Co-Authored-By: dbkr <dbkr@users.noreply.github.com>
2019-02-13 19:05:17 +00:00
David Baker
e439d36805
Merge pull request #2626 from matrix-org/dbkr/recheck_key_backup
Re-check key backup status when settings opened
2019-02-13 18:19:39 +00:00
David Baker
0f4092dcbc Fix registration after clicking email link
We weren't correctly jumping into the appropriate bit of the registration
flow when coming in from an email link.

 * If we have client secret / sessionId, go straight to registration phase
 * Don't reset server URLs when the server type component tells us its
   initial value
 * Confusingly, pass the custom server URL as 'default server URL' to
   the custom server type, as this is what we want the inital section
   to be based on.

Fixes https://github.com/vector-im/riot-web/issues/8490
2019-02-13 18:12:34 +00:00
Bruno Windels
90667d8061
Merge pull request #2629 from matrix-org/bwindels/lazyroomtilerendering
Improve room list rendering performance
2019-02-13 18:55:47 +01:00
Bruno Windels
e51f279f36 dont assume there items is an array 2019-02-13 18:49:09 +01:00
J. Ryan Stinnett
694a59afb7
Merge pull request #2628 from jryans/adjust-top-left-menu
Adjust top left menu items
2019-02-13 17:38:08 +00:00
Bruno Windels
60d0ed4c01 make LazyRenderList stateful for better performance
it only rerenders when visible range it would render based on the
props gets OVERFLOW_MARGIN(5) items from the current renderRange
2019-02-13 18:33:57 +01:00
J. Ryan Stinnett
116367fd69 Add welcome to top left menu for all 2019-02-13 16:13:32 +00:00
Bruno Windels
9c371111b7 Merge branch 'develop' into bwindels/lazyroomtilerendering 2019-02-13 17:13:23 +01:00
J. Ryan Stinnett
22789ada94 Add sign in to top left menu for guests 2019-02-13 16:01:13 +00:00
David Baker
d2b4dfce30 Re-check key backup status when settings opened
Fixes https://github.com/vector-im/riot-web/issues/8524
Requires https://github.com/matrix-org/matrix-js-sdk/pull/840
2019-02-13 15:40:44 +00:00
David Baker
737b85c8f0
Merge pull request #2623 from matrix-org/dbkr/fix_force_turn_flag
Security: Force TURN setting was inverted
2019-02-13 15:24:14 +00:00
Bruno Windels
0de2161a0d create LazyRenderList component to trim list to visible part 2019-02-13 14:50:43 +01:00
Matthew Hodgson
3eb5c71b75 rename 'Close Account' back to 'Deactivate Account'.
the word close on a red button makes you feel like you're going to close the
settings dialog, not terminate your account...
2019-02-13 12:24:04 +00:00
David Baker
26287067fc Security: Force TURN setting was inverted
In making the settings more positive, we flipped 'disable peer to
peer' but didn't change the caption, so the setting was inverted
from what it was labelled as.

Also, forcing p2p isn't the inverse of forcing turn.

Change the setting to be 'allow p2p' and the label to match.
2019-02-13 11:51:32 +00:00
J. Ryan Stinnett
b0d08b9a25 Rename dharma theme to light theme 2019-02-13 10:47:04 +00:00
J. Ryan Stinnett
6c954dadc8 Allow theming message composer buttons 2019-02-13 10:47:04 +00:00
J. Ryan Stinnett
3cba5edd6f Allow theming right panel header buttons 2019-02-13 10:47:04 +00:00
J. Ryan Stinnett
8652a094f3 Allow theming room header buttons 2019-02-13 10:47:04 +00:00
J. Ryan Stinnett
fb7913580e Theme setting needs to update local state 2019-02-13 10:47:04 +00:00
J. Ryan Stinnett
204d6e2c3d Enable theme setting 2019-02-13 10:44:01 +00:00
J. Ryan Stinnett
e401b8f77a Make default and dark the only theme options 2019-02-13 10:44:01 +00:00
Bruno Windels
de8cd88418
Merge pull request #2621 from matrix-org/bwindels/tabsdivider
Add divider between tabs and regular buttons in room header
2019-02-13 11:00:52 +01:00
J. Ryan Stinnett
d9bb5991b5
Merge pull request #2609 from matrix-org/anoa/comms_hide
Change taking a community off the left-left panel less scary
2019-02-13 09:30:18 +00:00
Bruno Windels
875f792728
Merge pull request #2620 from matrix-org/bwindels/e2eiconsanddialog
Fixes and styling related to e2e icons and dialogs
2019-02-13 09:18:58 +01:00
Bruno Windels
12b6383831
Merge pull request #2618 from matrix-org/bwindels/fixstickers
Fix: stickers layout
2019-02-13 09:17:21 +01:00
Bruno Windels
5047d15a3b
Merge pull request #2615 from matrix-org/bwindels/breadcrumbs
Labs feature: recent room breadcrumbs
2019-02-13 09:16:40 +01:00
Bruno Windels
240dc3c1cc
Merge pull request #2612 from matrix-org/bwindels/roomlistlag
Fix: roomlist reordering lags
2019-02-13 09:15:46 +01:00
David Baker
785b4d649f
Merge pull request #2617 from matrix-org/dbkr/e2e_change_all_the_strings
Change text in e2e UX to new copy
2019-02-12 20:38:58 +00:00
Bruno Windels
ccaa017980 add divider between tabs and regular buttons in room header 2019-02-12 20:05:01 +01:00
Bruno Windels
bfdf1251e8 only wrap e2e icon in button if there is a click handler 2019-02-12 19:59:31 +01:00
Bruno Windels
5e298dc58d only show member e2e icon in encrypted rooms 2019-02-12 19:42:17 +01:00
Bruno Windels
158e949165 add context menu option to show "event e2e info dialog" 2019-02-12 19:10:42 +01:00
David Baker
dbd2f3daa2 Use sub for substitution variable name 2019-02-12 18:08:16 +00:00
David Baker
2c5da21adb KeyBackupPanel fixes
* Separate out the emoji from the translateable string
 * Put back the delete button if you're not using the backup,
   otherwise you're stuck unable to use key backup at all if you
   lost your recovery secret and the device you set it up on.
2019-02-12 18:06:36 +00:00
Bruno Windels
08272bc75e make e2e icons clickable again 2019-02-12 18:58:02 +01:00
David Baker
6c1ed57b70 flag todo 2019-02-12 17:53:00 +00:00
Bruno Windels
2f345401c4 show unknown devices dialog when clicking e2e warning in room header 2019-02-12 18:43:28 +01:00
Bruno Windels
3b10b8042a restyle unknown devices dialog 2019-02-12 18:34:35 +01:00
David Baker
e41fc55cca Add warnings about trusted computers 2019-02-12 16:34:06 +00:00
David Baker
3a0b8cb169 Lint 2019-02-12 16:03:46 +00:00
David Baker
9ec00f8d9b Change text in e2e UX to new copy 2019-02-12 16:01:38 +00:00
Bruno Windels
f189ff54a8 hide delete & cancel button on stickers are they weren't visible before 2019-02-12 17:01:05 +01:00
Bruno Windels
229d905835 copyright 2019-02-12 12:21:40 +01:00
Bruno Windels
2315e4bfb4 add animation when adding a room 2019-02-12 12:16:56 +01:00
Bruno Windels
735c9d1121 hide breadcrumbs when collapsed 2019-02-12 11:31:50 +01:00
Bruno Windels
5efd92f3ec make rooms come in from left rather than the right 2019-02-12 11:26:46 +01:00
Bruno Windels
aaea40a93d add breadcrumbs component 2019-02-12 11:04:25 +01:00
Bruno Windels
7c72fddf80 Merge branch 'develop' into bwindels/roomlistlag 2019-02-11 17:06:16 +01:00
David Baker
99ae63c021 Add display name / avatar to incoming sas dialog
Fetch the other user's profile & display it on an incoming verification
request
2019-02-11 15:57:34 +00:00
Bruno Windels
ab6535b135 lint 2019-02-11 16:27:29 +01:00
Bruno Windels
fbc0bbfb6f clear hover flag after 1000ms of not moving the mouse
as a fix for #8184
2019-02-11 16:17:15 +01:00
Bruno Windels
b6aa72da55 update RoomTile notificationCount through props so updates are consistent 2019-02-11 15:40:17 +01:00
Andrew Morgan
d66dbf9be7
Change taking a community off the left-left panel less scary
With the current wording, I half-think clicking this button might remove me from the community!

IMO 'Hide' sounds more like it's just going to disappear from the panel, but I can add it back at some point.
2019-02-11 13:38:47 +00:00
David Baker
ba597c65eb lint 2019-02-11 13:09:50 +00:00
David Baker
1cf0a6a049 Add legacy verification button on wait
Add a way to bail out of interactive verification from the screen
where you're waiting for the other person to accept.
2019-02-11 12:08:10 +00:00
David Baker
742af81224
Merge pull request #2594 from matrix-org/dbkr/dont_verify_restore
Prompt to restore backup rather than verify
2019-02-08 17:49:04 +00:00
David Baker
09bf8099e0
Merge pull request #2599 from matrix-org/dbkr/unlabs_keybackup_sas
Remove key backup & sas from labs
2019-02-08 17:41:54 +00:00
Bruno Windels
7f630b2b46
Merge pull request #2601 from matrix-org/bwindels/fixstartdm
Fix: typeerror when creating DM
2019-02-08 17:39:29 +00:00
Bruno Windels
8fdb94911c header doesn't have a room yet while joining 2019-02-08 17:35:49 +00:00
David Baker
d74d5f1e27 Fix unused imports 2019-02-08 17:30:14 +00:00
Travis Ralston
e06a68501a
Typo
Co-Authored-By: dbkr <dbkr@users.noreply.github.com>
2019-02-08 17:23:18 +00:00
David Baker
f99c56fedb
Merge pull request #2597 from matrix-org/jryans/add-welcome-page
SDK support for welcome page
2019-02-08 17:17:22 +00:00
David Baker
043f1ab3f0 Remove key backup & sas from labs 2019-02-08 16:58:09 +00:00
David Baker
2cd25e0077
Merge pull request #2596 from matrix-org/dbkr/emoji_sas
Change SAS to decimal / emoji
2019-02-08 16:46:43 +00:00
Matthew Hodgson
ce24165e19 port over low_bandwidth mode to develop 2019-02-08 16:44:03 +00:00
David Baker
9b4a6cf442 Make prettier 2019-02-08 16:27:25 +00:00
Travis Ralston
8cdfdd2e24 Merge branch 'develop' into travis/render-join-rules 2019-02-08 09:24:07 -07:00
Travis Ralston
78ea531a87
Merge pull request #2590 from matrix-org/travis/settings/fix-directory-publish
Ensure toggle switches listen to property changes
2019-02-08 08:00:47 -07:00
Travis Ralston
47b79c0cf6
Merge pull request #2593 from matrix-org/travis/settings/local-echo
Local echo on room access settings
2019-02-08 07:58:51 -07:00
David Baker
ae16cc36aa Change SAS to decimal / emoji
Requires https://github.com/matrix-org/matrix-js-sdk/pull/837
2019-02-08 14:57:36 +00:00
J. Ryan Stinnett
705c3248d4 Tweak embedded pages config name 2019-02-08 13:55:23 +00:00
J. Ryan Stinnett
7a15bb65c4 Tweak page URL defaulting 2019-02-08 13:53:17 +00:00
J. Ryan Stinnett
5ab3c8b823 Add top left home menu item when home page configured 2019-02-08 13:48:51 +00:00
Bruno Windels
3c5fb61350 Merge branch 'develop' into bwindels/customtags-featureflag 2019-02-08 12:12:43 +00:00
Bruno Windels
2eff03ba78 fix whitespace 2019-02-08 12:03:58 +00:00
Bruno Windels
00a1ca503c
Merge pull request #2588 from matrix-org/bwindels/removellfeatureflag
remove ll feature flag, it's time!
2019-02-08 12:02:58 +00:00
David Baker
ac98da4a8a Prompt to restore backup rather than verify
Direct the user to restore the backup in order to both get the keys
out of the backup and start putting them in.

Also hide the advanced key backup stuff in a diclosure.
2019-02-08 11:51:22 +00:00
J. Ryan Stinnett
7238c713d7 Add language selector to bottom of welcome 2019-02-08 11:39:30 +00:00
David Baker
abcbd46fe1
Merge pull request #2583 from matrix-org/dbkr/trust_on_decrypt
Trust on decrypt
2019-02-08 11:36:53 +00:00
J. Ryan Stinnett
1cf311da10 Place welcome content directly on glass 2019-02-08 11:26:47 +00:00
David Baker
e805df7b4c Use fewer brs 2019-02-08 10:46:38 +00:00
David Baker
d1e2418b75 Use error constant from the class 2019-02-08 10:43:39 +00:00
Bruno Windels
748040268a remove unused imports 2019-02-08 09:59:24 +00:00
Travis Ralston
f66c92b1fd Local echo on room access settings
Includes a fix for the aliases warning appearing at the wrong time. 

Fixes https://github.com/vector-im/riot-web/issues/8406
Fixes https://github.com/vector-im/riot-web/issues/8434
2019-02-07 14:01:34 -07:00
Travis Ralston
5d4406cbab Render join rules and guest access changes in the timeline
Fixes https://github.com/vector-im/riot-web/issues/8435
2019-02-07 12:14:58 -07:00
Travis Ralston
89a8422320 Ensure toggle switches listen to property changes
They do local echo on changes to avoid jumping back and forth while requests are ongoing, however some areas modify the checked state after the toggle has mounted.

Fixes https://github.com/vector-im/riot-web/issues/8432
2019-02-07 11:54:13 -07:00
Bruno Windels
8c32f88c1c remove homeserver ll check on toggling lab setting 2019-02-07 18:45:00 +00:00
Bruno Windels
ac4ab11985 remove ll feature flag, it's time! 2019-02-07 18:24:07 +00:00
Bruno Windels
e8533beafb guard custom tags with feature flag 2019-02-07 18:07:30 +00:00
J. Ryan Stinnett
c587dcab92 Use separate config settings for each page 2019-02-07 17:16:02 +00:00
David Baker
3a924d05b5 Remove click-to-verify from SAS
The click-each-pair to verify was hard to discover, so remove it
2019-02-07 17:01:55 +00:00
J. Ryan Stinnett
843f86fc1c Add separate welcome view 2019-02-07 16:25:09 +00:00
Travis Ralston
3e70212ec8
Merge pull request #2580 from matrix-org/travis/settings/fix-pl
Actually change power levels when they are changed
2019-02-07 08:13:35 -07:00
David Baker
f79b777dd4 Trust on decrypt
Add support for trust-on-decrypt (API change, recognise flag on
isKeyBackupTrusted). Catch rejection on wrong passphrase / recovery
key. Fix remembering whether we are restoring with key or passphrase.

Requires https://github.com/matrix-org/matrix-js-sdk/pull/836
2019-02-07 14:39:47 +00:00
David Baker
b7fd1336de
Merge pull request #2532 from boeserwolf/boeserwolf/get-set-topic
Extend slash command '/topic' to display the room topic
2019-02-07 13:45:59 +00:00
Bruno Windels
87ddb8a453
Merge pull request #2575 from matrix-org/bwindels/customtags
Bring back custom tags, also badges on communities
2019-02-07 11:37:17 +00:00
David Baker
f517928d76
Merge pull request #2577 from matrix-org/dbkr/backup_dont_fail_if_no_keys
Key Backup: Don't fail if no keys
2019-02-07 09:30:28 +00:00
Travis Ralston
2e852da72e Actually change power levels when they are changed 2019-02-06 15:06:15 -07:00
Bastian
d77f10e085 Reformat
Signed-off-by: Bastian <matrix@noxware.de>
2019-02-06 19:37:23 +01:00
Bastian
7428e97910 Clean up InfoButton
Signed-off-by: Bastian <matrix@noxware.de>
2019-02-06 19:35:48 +01:00
Bastian
4dcbb6fc0f Update copyright
Signed-off-by: Bastian <matrix@noxware.de>
2019-02-06 19:27:53 +01:00
Travis Ralston
04f2375273 Add issue references to things 2019-02-06 11:06:02 -07:00
David Baker
ce565f109a Key Backup: Don't fail if no keys
Only fail if there were any keys in the backup (which does mean
that the backup will always succeed if there aren't any keys which
could also be misleading, but is probably not as bad and can probably
be fixed with Trust on Decrypt).

Also cheekily fix the error message so it talks about passphrases
if you used a passphrase and recovery keys if you used a recovery key.
2019-02-06 18:03:47 +00:00
Travis Ralston
b2c161c7c1 Merge branch 'develop' into travis/settings/delete-the-old 2019-02-06 11:02:21 -07:00
Bruno Windels
547c8cb206 render badge on community 2019-02-06 14:31:43 +00:00
Bruno Windels
1a1f8bdf82 fix wrong way of unregistering from store 2019-02-06 14:24:17 +00:00
Bruno Windels
414fffba3f only show selected custom tags in room list 2019-02-05 17:38:36 +00:00
J. Ryan Stinnett
02a20fa668 Tweak login wording to match design 2019-02-05 15:36:00 +00:00
Travis Ralston
eac50aa800 Remove old user and room settings
This takes out the old user and room settings, replacing the paths with the new dialog editions. The labs setting has been removed in order to support this change.

In addition to removing the old components outright, some older components which were only used by the settings pages have been removed. The exception is the ColorSettings component as it has a high chance of sticking around in the future.

Styles that were shared by the settings components have been broken out to dedicated sections, making it easier to remove the old styles entirely.

Some stability testing of the app has been performed to ensure the app still works, however given the scope of this change there is a possibility of some broken functionality.
2019-02-04 13:40:21 -07:00
Bruno Windels
f029aad9fa rename to getLayout 2019-02-04 18:38:31 +00:00
Bruno Windels
d30ff13c18 pass the layout to the resizer as a lamba to avoid having the wrong layout when filtering 2019-02-04 15:09:44 +00:00
Bruno Windels
a6914274b0
Merge pull request #2565 from matrix-org/bwindels/widgetmakeover
Redesign: widget makeover
2019-02-02 07:30:45 +00:00
Bruno Windels
6d2e582083 fix lint 2019-02-02 07:46:52 +01:00
Bruno Windels
7ccc694eea minimal theming on app permission in widget 2019-02-01 23:24:56 +01:00
Bruno Windels
e2ce12f5c1 wip 2019-02-01 23:15:14 +01:00
Travis Ralston
8307af6871
Merge pull request #2563 from matrix-org/travis/remove-e2e-beta-dialog
Remove warning about encryption being beta
2019-02-01 15:12:25 -07:00
Bruno Windels
45e982ac13
Merge pull request #2557 from matrix-org/bwindels/e2eicons
Add e2e icon to room header/composer/member info, more ...
2019-02-01 22:02:28 +00:00
Travis Ralston
7088a3ebc4 Remove unused import 2019-02-01 15:00:44 -07:00
Travis Ralston
016bd028ba Remove warning about encryption being beta 2019-02-01 14:56:29 -07:00
Travis Ralston
7ff59c80aa
Merge pull request #2555 from matrix-org/bwindels/fixroomsettingssave
Fix exception while saving room settings
2019-02-01 11:30:29 -07:00
Travis Ralston
37fe22409f
Merge pull request #2559 from matrix-org/travis/settings/disable-old
Disable old settings, making tabbed settings the default
2019-02-01 11:18:43 -07:00
Travis Ralston
2a9149668c thisfea -> this
idk what I was doing
2019-02-01 11:00:06 -07:00
Bruno Windels
62f59f8cef
Merge pull request #2558 from matrix-org/bwindels/fixunknowndialog
fix UnknownDeviceDialog layout
2019-02-01 17:56:03 +00:00
Travis Ralston
728748c9cd Disable old settings, making tabbed settings the default
This is intentionally not removing the labs flag or other supporting structures of the old settings to make a revert as easy as possible in the event that needs to happen. All of the cruft left behind (TempTab, temp styles, labs flag, old components, etc) will be removed in the very near future.
2019-02-01 10:29:13 -07:00
Bruno Windels
571c059f0d fix layout 2019-02-01 18:15:19 +01:00
Bruno Windels
ce5e56aaac update icons in member info device section 2019-02-01 17:32:46 +01:00
Bruno Windels
21fe266394 add icon to member info to indicate all devices of a user are trusted 2019-02-01 17:08:09 +01:00
Travis Ralston
dca194f5e1
Merge pull request #2553 from matrix-org/travis/settings/fixes-3
Misc fixes to settings
2019-02-01 09:02:49 -07:00
Bruno Windels
88ad780b6b update message e2e icons
also remove encrypted icon as header/composer already indicate encryption
2019-02-01 16:43:12 +01:00
J. Ryan Stinnett
4ed13e897a Hide registration fields that aren't used by any flow 2019-02-01 08:35:04 -06:00
J. Ryan Stinnett
ba50ef8445 Clarify required auth stages 2019-02-01 08:33:47 -06:00
J. Ryan Stinnett
e6b6133c7a
Merge pull request #2552 from jryans/spell-homeserver
Spell homeserver correctly
2019-02-01 08:26:17 -06:00
J. Ryan Stinnett
ab5c5c1261
Merge pull request #2546 from jryans/auth-focus-username
Auto-focus username on registration
2019-02-01 08:24:27 -06:00
Bruno Windels
2596a0ffc2 linting 2019-02-01 14:35:25 +01:00
Bruno Windels
09c3391dd8 replace existing icon in composer with the new one 2019-02-01 13:40:42 +01:00
Bruno Windels
0cdf3d0898 add icon to room header 2019-02-01 13:40:19 +01:00
Bruno Windels
f2928c184d create warning/verified icon to use in header/composer/member info 2019-02-01 13:39:56 +01:00
Bruno Windels
3c3aa9197c UrlPreviewSettings doesnt have a saveSettings method anymore, which I think is intentional 2019-02-01 11:24:52 +01:00
Travis Ralston
b4fd0c3fbf Add room directory publish button
This was previously missed in the tab's layout.
2019-01-31 22:06:15 -07:00
Travis Ralston
0c0db4ecc7 Copy over disablement of media streams after permissions requested
Fixes https://github.com/vector-im/riot-web/issues/8340
2019-01-31 21:48:44 -07:00
Travis Ralston
a1f1dde9a4 Remove flair from general user settings tab
Fixes https://github.com/vector-im/riot-web/issues/8327
2019-01-31 21:45:29 -07:00
Travis Ralston
7bbc302975
Merge pull request #2549 from matrix-org/travis/settings/fixes-2
Fixed settings dialog header; Adjust padding on dialog
2019-01-31 21:41:09 -07:00
Travis Ralston
0ecaa2eb8f
Merge pull request #2314 from aaronraimist/empty-url-empty-lightbox
Fix empty lightbox when there is no avatarUrl
2019-01-31 21:40:35 -07:00
J. Ryan Stinnett
68ae72f855 Spell homeserver correctly 2019-01-31 18:52:39 -06:00
J. Ryan Stinnett
6905e3e54c Fix typo on registration 2019-01-31 18:15:18 -06:00
Travis Ralston
4036e52c24 Fixed settings dialog header; Adjust padding on dialog
Some recent changes to dialogs changed how this works and altered the look of the settings dialogs. This fixes that and makes it so that the header and content scroll independently.

Fixes https://github.com/vector-im/riot-web/issues/8329
Fixes https://github.com/vector-im/riot-web/issues/8328
2019-01-31 15:52:22 -07:00
Bastian
23971b3d0d Refactor to use HtmlUtils for linkifying and sanitizing
Signed-off-by: Bastian <matrix@noxware.de>
2019-01-31 22:36:08 +01:00
Bastian
f245fa6a52 Add InfoDialog
Signed-off-by: Bastian <matrix@noxware.de>
2019-01-31 17:57:57 +01:00
J. Ryan Stinnett
81880c01d3 Auto-focus username on registration 2019-01-31 10:47:29 -06:00
J. Ryan Stinnett
346f73bb1d Remove dead code tweaking server URLs on blur 2019-01-31 10:06:35 -06:00
J. Ryan Stinnett
c560fd32c4 Allow empty user / pass on blur, check on submit 2019-01-31 10:06:35 -06:00
J. Ryan Stinnett
e3f3a94980 Remove shake animation from auth field errors 2019-01-31 10:06:35 -06:00
J. Ryan Stinnett
2f006939f2 Use mx_AuthBody prefix for consistency 2019-01-31 10:06:35 -06:00
J. Ryan Stinnett
9a17181f2c Use event value for username blur 2019-01-31 10:05:39 -06:00
J. Ryan Stinnett
eafd7e12d0 Validate login phone number on blur 2019-01-31 10:05:39 -06:00
J. Ryan Stinnett
cfe19d710b Avoid hsName for auth headers which can be outdated
`hsName` uses only the default HS, so that can easily be outdated if the HS URL
is customized.
2019-01-31 10:05:39 -06:00
J. Ryan Stinnett
36d162cb25 Validate server URLs on blur instead of change 2019-01-31 10:05:39 -06:00
Bruno Windels
60f28266ae
Merge pull request #2538 from matrix-org/bwindels/community-redesign-cleanup
Redesign: community page cleanup
2019-01-31 12:01:08 +00:00
Matthew Hodgson
1465db3760
Merge pull request #2540 from jryans/field-select
Use custom appearance and arrow for field selects
2019-01-31 10:04:57 +01:00
J. Ryan Stinnett
d6f55a508c Use custom appearance and arrow for select fields 2019-01-30 16:40:53 -06:00
Bruno Windels
d8226b3486 fix lint 2019-01-30 18:53:15 +01:00
Bastian
b96a4a4092 Fix typo
Signed-off-by: Bastian <matrix@noxware.de>
2019-01-30 17:27:53 +01:00
Bruno Windels
405cc5cc24 show avatars for members & rooms in group like we do in room right panel
also apply padding with hacky :not selector to exclude full-width avatar
2019-01-30 16:59:28 +01:00
Bruno Windels
3cfd851522
Merge pull request #2531 from matrix-org/bwindels/fixphonedropdown
fix dropdown style when input is shown
2019-01-30 11:45:02 +00:00
Bruno Windels
4d2a93eaaf
Merge pull request #2527 from jryans/auth-registration
Style registration flow
2019-01-30 11:27:45 +00:00
Bruno Windels
85b998d851 fix dropdown style when input is shown 2019-01-30 11:42:50 +01:00
Bruno Windels
6aca7e4515
Merge pull request #2522 from matrix-org/bwindels/memberpanel-tiny-makeover
Redesign: small member info panel makeover
2019-01-30 10:01:33 +00:00
Travis Ralston
bdf2bb5601
Merge pull request #2526 from matrix-org/travis/settings/fixes-1
Round 1 of misc fixes for settings
2019-01-29 22:59:07 -07:00
Travis Ralston
f86e224db6 Merge branch 'experimental' into travis/rsettings/tab/security 2019-01-29 22:15:55 -07:00
Travis Ralston
cd54442add Merge branch 'experimental' into travis/rsettings/tab/advanced 2019-01-29 21:49:00 -07:00
Travis Ralston
b3bb3aff84
Remove spurious void 2019-01-29 21:46:51 -07:00
Travis Ralston
4d0a246629 Put a little padding between section headings 2019-01-29 19:28:30 -07:00
Travis Ralston
f050323f98 Inherit font size from other elements for push notifications table 2019-01-29 19:18:13 -07:00
Travis Ralston
0591c3a2bb Change Riot Bot button text and make it a block element
Fixes https://github.com/vector-im/riot-web/issues/8265
2019-01-29 19:07:02 -07:00
Travis Ralston
e7ed4c13f5 Appease the linter
I should really just get something that does this for me prior to opening a PR
2019-01-29 18:28:44 -07:00
Travis Ralston
2fe7f6fe1c Implement the Advanced tab of new room settings 2019-01-29 18:23:01 -07:00
J. Ryan Stinnett
f05ddcacf0 Add footer text to registration form 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
61a3ddb4e3 Adjust registration field labels 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
01d28bc137 Squeeze country dropdowns to match design 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
92394ba601 Change country dropdown to be smaller with arrow on right 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
daee5f0325 Reorganize registration inputs 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
379b940bfa Add server details edit link to registration 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
1f78b59a0e Add create your account header 2019-01-29 17:38:28 -06:00
J. Ryan Stinnett
3f4001f1fe Correct stale name in props 2019-01-29 17:38:28 -06:00
Travis Ralston
78314ef284 Take out unfederated warning
This is moving to the Advanced tab
2019-01-29 16:10:24 -07:00
Travis Ralston
93ce342d63 Appease the linter 2019-01-29 16:05:47 -07:00
Travis Ralston
0af419633f Implement the Roles & Permissions tab of new room settings
This is largely copy/paste from the current room settings
2019-01-29 15:54:51 -07:00
Aaron Raimist
52ebba9d3e
Disable clicking on room icon in a better way
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-01-29 16:07:41 -06:00
Travis Ralston
76c31f01f1 Appease the linter 2019-01-29 14:37:21 -07:00
Travis Ralston
a2f516c461 Implement the Security & Privacy tab of new room settings 2019-01-29 14:31:07 -07:00
Aaron Raimist
53947bee35
Fix empty lightbox when there is no avatarUrl
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-01-29 14:59:20 -06:00
Bruno Windels
7d6f551841 small makeover of member info panel
this removes the style sharing between the verify buttons in the memberinfo panel and
and the encrypted event dialog because the diverge too much now.
2019-01-29 21:14:16 +01:00
Bruno Windels
0cce912cf6
Merge pull request #2519 from matrix-org/bwindels/roomdirectory-makeover
Redesign: room directory makeover
2019-01-29 19:21:42 +00:00
Travis Ralston
a16eb30cbc
Merge pull request #2518 from matrix-org/travis/rver-cap-support
Iterate upon the room upgrade warning bar
2019-01-29 11:29:17 -07:00
Bruno Windels
855dbd7d2b Merge branch 'experimental' into bwindels/roomdirectory-makeover 2019-01-29 18:33:03 +01:00
Bruno Windels
15a74cac15 Merge branch 'experimental' into bwindels/redesign-smallfixes 2019-01-29 18:30:08 +01:00
Bruno Windels
6dc042287e dont allow whitespace in room sub lists while resizing 2019-01-29 17:21:14 +01:00
Travis Ralston
ad276c1fda Merge branch 'experimental' into travis/rsettings/tab/general 2019-01-29 09:11:21 -07:00
Bruno Windels
6ffc5e093d add icons to top left menu options 2019-01-29 16:56:07 +01:00
Bruno Windels
57b2f691ed fix lint - bis 2019-01-29 16:30:10 +01:00
Bruno Windels
7c0f463c91 fix lint 2019-01-29 15:40:19 +01:00
Bruno Windels
9f1b4ac4cc room directory makeover 2019-01-29 15:34:58 +01:00
Bruno Windels
012e358147
Merge pull request #2515 from matrix-org/bwindels/roomlistjslayout-bisbis
Redesign: switch layout when filtering room sublists
2019-01-29 09:32:32 +00:00
Bruno Windels
529c48d1b0 avoid whitespace and expand all matching section when filtering 2019-01-29 10:01:55 +01:00
J. Ryan Stinnett
20bf683df8
Merge pull request #2517 from jryans/auth-server-type-selector
Add server type selector and style login flow
2019-01-28 22:11:14 -06:00
J. Ryan Stinnett
7da5a55c7e Add space to CustomServerDialog, format like riot-web variant 2019-01-28 21:51:05 -06:00
J. Ryan Stinnett
b0292929ba Update code style for ServerConfig components 2019-01-28 21:44:41 -06:00
Travis Ralston
d34390d230
Merge pull request #2512 from matrix-org/travis/usettings/tab/flair
Implement flair tab in user settings
2019-01-28 20:37:22 -07:00
Travis Ralston
5948f9bc43 Appease the linter 2019-01-28 18:57:11 -07:00
Travis Ralston
f8de4ba2b0 Iterate upon the room upgrade warning bar
This lessens the warning for unstable-but-not-official versions while still communicating that the version is unstable. In the future, we may want to make this state dismissable.
2019-01-28 17:21:33 -07:00
J. Ryan Stinnett
34e2979f98 Add Modular server config screen 2019-01-28 17:32:56 -06:00
J. Ryan Stinnett
d96e814a92 Add link to edit server details 2019-01-28 16:13:19 -06:00
J. Ryan Stinnett
8e9fc8a8e7 Make existing fields full width 2019-01-28 15:29:36 -06:00
Travis Ralston
9513837e97 Appease the linter 2019-01-28 13:59:09 -07:00
Travis Ralston
fd6d34c2de Default the topic to an empty string otherwise React gets mad 2019-01-28 13:54:56 -07:00
Travis Ralston
db34666583 Implement leave room button and URL preview settings 2019-01-28 13:54:56 -07:00
Travis Ralston
87e6652b2a Flair settings for rooms 2019-01-28 13:54:56 -07:00
Travis Ralston
3021464e89 Move RoomProfileSettings to the right place 2019-01-28 13:54:56 -07:00
Travis Ralston
ea1d6a0146 Minor styling and avatar bug fixing 2019-01-28 13:54:56 -07:00
Travis Ralston
9a524c49b1 Early support for alias modification in room settings 2019-01-28 13:54:56 -07:00
Travis Ralston
243feb9b13 Early tab structure and profile changes (name/avatar/topic) 2019-01-28 13:54:56 -07:00
Travis Ralston
b7d0dd4408 Rename GeneralSettingsTab to GeneralUserSettingsTab 2019-01-28 13:54:56 -07:00
Bruno Windels
8d1e105b50 add option for whitespace behaviour and handle height 2019-01-28 18:02:36 +01:00
Travis Ralston
a1e3887a74
Merge branch 'experimental' into travis/settings/positive 2019-01-28 08:25:40 -07:00
Bruno Windels
55e0838c82
Merge pull request #2507 from matrix-org/bwindels/roomlistjslayout
Redesign: new layout algorithm for room sublists.
2019-01-28 14:55:31 +00:00
J. Ryan Stinnett
abe6fd2f60 Rework ServerConfig to approach design
The public server search box is left out for now, so this restyles the existing
custom server inputs to more closely approximate the design.
2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
3a698ef4fa Clean up Custom Server Help dialog 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
306380d647 Update HS / IS URLs when changing server types 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
7934a2950c Add 'Your account' header 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
e5e0b34958 Fix indentation 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
cd280ca79f Username is one word 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
73aeb26a79 Remove dead code for empty matrixIdText in PasswordLogin 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
350c24c503 Initial wiring of server type selector 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
fa4ad21e0a Remove dead code for !withToggleButton in ServerConfig 2019-01-28 08:52:20 -06:00
J. Ryan Stinnett
0bee324e48 Add server type selector component 2019-01-28 08:52:20 -06:00
Bruno Windels
0a5e8e6cfe WIP on persisting height across collapse/expand 2019-01-28 14:35:04 +01:00
David Baker
b4f02844a8 Merge remote-tracking branch 'origin/experimental' into dbkr/sas 2019-01-28 09:36:39 +00:00
J. Ryan Stinnett
d1b78e5b08 Fix unmount TypeError in DeviceVerifyButtons 2019-01-25 17:54:11 -06:00
J. Ryan Stinnett
a07ba49641
Merge pull request #2511 from matrix-org/jryans/rm-team-server
Remove support for team servers
2019-01-25 16:48:24 -06:00
Travis Ralston
e2ba1cc0d6 Remove unused import 2019-01-25 15:46:38 -07:00
Travis Ralston
57e45e7e7c Proof of concept for a flair tab in user settings 2019-01-25 15:35:32 -07:00
J. Ryan Stinnett
20b7debcaf Remove support for team servers 2019-01-25 16:13:30 -06:00
Travis Ralston
535d42684f Initial structure for new room settings 2019-01-25 13:09:44 -07:00
David Baker
2061ce2dbf
Merge pull request #2509 from matrix-org/dbkr/logout_warning_wording
Tweak wording on logout warning
2019-01-25 18:25:37 +00:00
David Baker
47c2ca3384 Tweak wording on logout warning
I further tweaked the wording from Tom's in the bug report to
put passphrases first since they are supposed to be the norm
(and the correct term is "recovery passphrase").

Fixes https://github.com/vector-im/riot-web/issues/8214
2019-01-25 18:01:40 +00:00
David Baker
de9b964490 Fix NPE in RoomRecoveryReminder
Also fix a bug introduced in
https://github.com/matrix-org/matrix-react-sdk/pull/2506
where I failed to set the button caption in one case.

Fixes https://github.com/vector-im/riot-web/issues/8216
2019-01-25 17:49:02 +00:00
Bruno Windels
2d2f9712b5 update layout on window resize 2019-01-25 18:48:25 +01:00
David Baker
7aa779c160 Remove outdated paragraph promising better verification 2019-01-25 17:31:46 +00:00
J. Ryan Stinnett
939f8b5591
Fullstop
Co-Authored-By: dbkr <dbkr@users.noreply.github.com>
2019-01-25 17:30:59 +00:00
J. Ryan Stinnett
e3cd50da1f
Fullstop
Co-Authored-By: dbkr <dbkr@users.noreply.github.com>
2019-01-25 17:30:47 +00:00
J. Ryan Stinnett
44a5ee3e44
Add fullstop
Co-Authored-By: dbkr <dbkr@users.noreply.github.com>
2019-01-25 17:30:22 +00:00
David Baker
1b5be8603c
Merge pull request #2506 from matrix-org/dbkr/room_recovery_reminder_verifydevice
New text/caption for key backup by verifying device
2019-01-25 17:13:09 +00:00
David Baker
f6bbfd7e0d New text/caption for key backup by verifying device
https://github.com/vector-im/riot-web/issues/8072
2019-01-25 16:25:15 +00:00
Travis Ralston
fb36f7abef Fix imports and quotes 2019-01-25 09:18:00 -07:00
Travis Ralston
f7f23e4dea Merge branch 'experimental' into travis/usettings/tab/security 2019-01-25 09:12:07 -07:00
Travis Ralston
7a2cc3a242
Merge pull request #2503 from matrix-org/travis/settings/placeholders
Default a Field's placeholder to the label
2019-01-25 07:51:07 -07:00
Travis Ralston
3301c35f7d
Merge pull request #2501 from matrix-org/travis/settings/dialog-size
Have the settings dialog be fixed in size
2019-01-25 07:46:36 -07:00
Travis Ralston
cb6f415a05 Be more positive with setting labels
Fixes https://github.com/vector-im/riot-web/issues/6435

This is done through an on-the-fly inverter for the settings. All the settings changed are boolean values, so this should be more than safe to just let happen throughout the SettingsStore. Typically a change like this would be done in the individual handlers (similar to how setting names are remapped to different properties or even different storage locations on the fly), however doing that for this many settings would be a huge nightmare and involve changing *all* the layers. By putting a global "invert this" flag on the setting, we can get away with doing the inversion as the last possible step during a read (or write).

To speed up calculations of the default values, we cache all the inverted values into a lookup table similar to how we represent the defaults already. Without this, the DefaultHandler would need to iterate the setting list and invert the values, slowing things down over time. We invert the value up front so we can keep the generic inversion logic without checking the level ahead of time. It is fully intended that a default value represents the new setting name, not the legacy name.

This commit also includes a debugger for settings because it was hard to visualize what the SettingsStore was doing during development. Some added information is included as it may be helpful for when someone has a problem with their settings and we need to debug it. Typically the debugger would be run in conjunction with `mxSendRageshake`: `mxSettingsStore.debugSetting('showJoinLeaves') && mxSendRageshake('Debugging showJoinLeaves setting')`.
2019-01-24 20:57:40 -07:00
Travis Ralston
d819095a76 Default a Field's placeholder to the label
Fixes https://github.com/vector-im/riot-web/issues/8250

This keeps all fields in line with the design without them having to defining it twice. The option is kept in the first place as some fields might want to override the placeholder to be longer than the label or something.
2019-01-24 19:36:23 -07:00
Travis Ralston
5dc75e2d3c Have the settings dialog be fixed in size
This also brings out some classes that aren't solely applicable to the user settings and will be applicable to the room settings as well.
2019-01-24 19:12:09 -07:00
Travis Ralston
1f10cda5e4 Implement the "Help & About" tab of new user settings 2019-01-24 17:10:35 -07:00
Travis Ralston
b0a8cbf75f Implement the "Security & Privacy" tab of new user settings 2019-01-24 15:47:04 -07:00
Travis Ralston
c5deeeaceb
Merge pull request #2498 from matrix-org/travis/usettings/tab/voice
Implement the "Voice & Video" tab of new user settings
2019-01-24 14:59:32 -07:00
Travis Ralston
87cea5ef09 Fix sizings and margins 2019-01-24 14:41:00 -07:00
Travis Ralston
3e09cd1d2e Appease the linter 2019-01-24 13:43:16 -07:00
Travis Ralston
a4e0796bfe Swap out the media permissions text for a paragraph element
The sizing ratio looks way off when the text is just subtext.
2019-01-24 13:37:20 -07:00
Travis Ralston
27ee6625ee Implement the "Voice & Video" tab of new user settings 2019-01-24 13:33:22 -07:00
Travis Ralston
67ba728457 Add widget screenshots to the Labs section
This is a normal setting and not a real labs setting, however the design calls for it to be here.
2019-01-24 12:38:48 -07:00
Travis Ralston
13e36bcead
Merge pull request #2495 from matrix-org/travis/usettings/tab/preferences
Implement the "Preferences" tab on new user settings
2019-01-24 12:05:25 -07:00
David Baker
8c412b85ee
Merge pull request #2496 from matrix-org/dbkr/target_blank
Add target="_blank" to links that don't have it
2019-01-24 18:15:18 +00:00
Travis Ralston
5479a4dac5 Implement the "Preferences" tab on new user settings 2019-01-24 10:32:29 -07:00
Travis Ralston
a9243cf851 Appease the linter 2019-01-24 10:12:25 -07:00
Travis Ralston
06a9ab3a70 Styling to match the other tabs a bit closer
Introduces a new component to reduce code duplication
2019-01-24 10:12:25 -07:00
Travis Ralston
d267f232bc Embed existing notifications settings into the tab 2019-01-24 10:12:25 -07:00
David Baker
4bcb9f12d4 Add target="_blank" to links that don't have it
This is now more of a problem in the Electron app because of
https://github.com/electron/electron/issues/8841 but is still
annoying in the webapp if you're taken away from your chat client.

Exception is the SSO link, as commented (issue filed at
https://github.com/vector-im/riot-web/issues/8247).

Fixes https://github.com/vector-im/riot-web/issues/8226
2019-01-24 16:19:18 +00:00
Travis Ralston
1251f607ef Add missing import 2019-01-24 08:52:45 -07:00
Travis Ralston
d2684638b4 Actually include the lazy loading function 2019-01-24 08:52:45 -07:00
Travis Ralston
f1c1caac62 Implement labs tab in new user settings 2019-01-24 08:52:45 -07:00
Travis Ralston
2a9f6186d7
Merge pull request #2491 from matrix-org/travis/usettings/tab/general
Implement the "General" tab of new user settings
2019-01-24 08:51:11 -07:00
Bruno Windels
636955daef use offsetHeight for consistency with sizer 2019-01-24 16:45:26 +01:00
Bruno Windels
067a861f80 integrate layout/distributor with RoomList 2019-01-24 15:43:49 +01:00
J. Ryan Stinnett
7b5500b9e8
Merge pull request #2493 from jryans/auth-lint
Appease linter in auth related files
2019-01-23 19:04:54 -06:00
J. Ryan Stinnett
41c79a93c0
Merge pull request #2489 from jryans/auth-text-and-links
Update text and links in authentication flows
2019-01-23 18:40:55 -06:00
J. Ryan Stinnett
319369d1be Fix remaining warnings for enabled files 2019-01-23 18:38:49 -06:00
J. Ryan Stinnett
9470424bcb Enable linting for all auth related files 2019-01-23 18:32:36 -06:00
Travis Ralston
6f947ab6d9 Appease the linter 2019-01-23 16:09:58 -07:00
Travis Ralston
7fb0cd6c42 Bring over the deactivate account button 2019-01-23 15:56:58 -07:00
Travis Ralston
3f897468a6 Add a ToggleSwitch and use it for SettingsFlag
Also bring in the compact timeline option.

Without minor CSS changes, the old user settings are completely unusable with this change. As such, minimal effort has been put in to have it be useful. Similarly, the changes drop the use of radio groups and the old theme selector was the only one that used it. See the comments for more details on how/why this was mitigated the way it was.
2019-01-23 15:50:41 -07:00
J. Ryan Stinnett
9f5f552be1 Move LanguageSelector to views
It's too simple to be called a structure.
2019-01-23 16:14:03 -06:00
J. Ryan Stinnett
e396954a20 Update forgot password link text and style 2019-01-23 15:50:44 -06:00
Travis Ralston
97666d39bc Bring in theme and language options 2019-01-23 14:43:45 -07:00
Travis Ralston
d55d145223 Bring over phone number management 2019-01-23 14:16:18 -07:00
David Baker
6a90625d36 Merge remote-tracking branch 'origin/experimental' into dbkr/sas 2019-01-23 17:32:18 +00:00
Travis Ralston
4a819d319e Early de-linting 2019-01-23 09:41:07 -07:00
Travis Ralston
875c0f94d3 Include a ref so that get/set value works again 2019-01-23 09:29:44 -07:00
Travis Ralston
aa7afe819f Bring over email address management 2019-01-23 09:28:53 -07:00
Travis Ralston
fa1ce61a06 Move profile settings to a dedicated component
The tab component is getting a bit hard to navigate
2019-01-23 09:28:53 -07:00
Travis Ralston
19de6694ca Bring in the change password section
This also changes the layout slightly in the user settings, but nothing detrimental.
2019-01-23 09:28:53 -07:00
Travis Ralston
677b3ca7b5 Bring flair into the new settings
Makes the flair options in old settings look broken (cosmetic issues), but it's fine because we're ripping that out in due time.
2019-01-23 09:27:04 -07:00
Travis Ralston
f643d7a143 Finish the box for displayname/avatar changes 2019-01-23 09:27:04 -07:00
Travis Ralston
de81c8d768 Template out remaining sections 2019-01-23 09:27:04 -07:00
J. Ryan Stinnett
36ebd91f07 Move language selector to auth header 2019-01-23 10:18:06 -06:00
David Baker
6d7e88a84a Fix desktop captcha check
Change gnarly hardcoded protocol to detect running in the electron app

Fixes https://github.com/vector-im/riot-web/issues/8236
2019-01-23 15:06:49 +00:00
Travis Ralston
94b1d739fb
Merge pull request #2476 from matrix-org/travis/modal-tab-settings
Basic structure for tabbed user settings
2019-01-23 07:52:44 -07:00
Bruno Windels
45c4ca3183
Merge pull request #2481 from matrix-org/bwindels/showroomsandpeoplewhenempty
Fix: show rooms and people section when empty while filtering
2019-01-23 09:39:17 +00:00
J. Ryan Stinnett
0f3ee9c786 Extract auth header logo to new component
This will allow `riot-web` to replace only the logo, rather than the whole
header.
2019-01-22 22:41:10 -06:00
Travis Ralston
b83227c035
Merge pull request #2484 from matrix-org/travis/select-field
Support selects on Field
2019-01-22 20:13:06 -07:00
Travis Ralston
2b3c8c4450 Correctly form a select/input element 2019-01-22 20:03:59 -07:00
J. Ryan Stinnett
575cd1e37b Add modal look to authentication flows
This changes the auth screens to use the modal-like style of the redesign.

This does not attempt to style the actual body content of each screen.  Instead,
it covers the header area with logo, footer links, and overall modal container
only.
2019-01-22 20:44:49 -06:00
Travis Ralston
f0e8182ff3 Support selects on Field
Luckily, the styling is copy/paste capable.
2019-01-22 19:25:09 -07:00
Bruno Windels
2234a691c6
Merge pull request #2480 from matrix-org/bwindels/typingnotifsmallfix
Fix: apparently room can be null here
2019-01-22 17:04:00 +00:00
Travis Ralston
0deb210fd8 Collapse DOM around tab label icon 2019-01-22 09:54:35 -07:00
Bruno Windels
7d4165802c show rooms and people section when empty while filtering 2019-01-22 17:54:04 +01:00
Bruno Windels
1373b2f5e2 apparently room can be null here 2019-01-22 17:34:48 +01:00
Bruno Windels
85b55847e1 missing semicolon 2019-01-22 14:52:22 +01:00
Bruno Windels
689df1b506 copyright 2019-01-22 14:51:11 +01:00
Bruno Windels
5dd5f4f1dc add JumpToBottomButtom component 2019-01-22 14:49:04 +01:00
Bruno Windels
3c8bd3fc78
Merge pull request #2456 from matrix-org/bwindels/extendtypingbartiming
Avoid "jumpiness" with inline typing indicator
2019-01-22 11:04:25 +00:00
Bruno Windels
f83411ea0b whitespace 2019-01-22 11:46:02 +01:00
Bruno Windels
0e0128c297 if instead of short-circuit and for readability 2019-01-22 11:37:18 +01:00
Travis Ralston
881353037e
forgot .length somehow
Co-Authored-By: bwindels <bruno@windels.cloud>
2019-01-22 10:34:54 +00:00
Travis Ralston
feed17d9ac Minor code style fix 2019-01-21 20:55:40 -07:00
Travis Ralston
a488304410 Appease the linter
Appease the linter round 2

Appease the linter round 3

Appease the linter round 4

Appease the linter round 5
2019-01-21 18:41:49 -07:00
J. Ryan Stinnett
1d01ac398c Rename mx_Login_box to mx_AuthPage_modal and fold into AuthPage 2019-01-21 19:11:43 -06:00
J. Ryan Stinnett
3bd765f63f Rename LoginPage, Header, Footer views to Auth* 2019-01-21 19:11:43 -06:00
J. Ryan Stinnett
c7354f483b Rename LoginBox to AuthButtons
This component displays login and register buttons. It's currently used in the
composer when viewing a room as a guest.

The name is confusing because the login flow uses are very similarly named
`mx_Login_box` as a wrapping around forms, which is totally different than these
buttons.

Additionally, the components is moved to `views/auth` since it is very simple
and auth related.
2019-01-21 19:11:43 -06:00
Travis Ralston
15a56fa90b Improve the profile section a bit and add a highlight to the temp tab 2019-01-21 17:27:43 -07:00
Travis Ralston
a8ec40a8b0 Add a temporary tab for visiting the old settings
For debugging purposes
2019-01-21 16:51:43 -07:00
Travis Ralston
f1e44757f0 Very early work on the "General" tab 2019-01-21 16:51:43 -07:00
Travis Ralston
22435bf8d2 Make the dialog look more like a new dialog 2019-01-21 16:51:43 -07:00
Travis Ralston
a7e3d7df28 Make the tabs look like the design 2019-01-21 16:51:43 -07:00
Travis Ralston
15709040e7 Make tabs be their own panels 2019-01-21 16:51:43 -07:00
Travis Ralston
5adfc09237 Bring in TabbedView nearly verbatim from prior work
Sourced from https://github.com/matrix-org/matrix-react-sdk/pull/1644 and related PRs.
2019-01-21 16:51:43 -07:00
Travis Ralston
0e42c0892e Early modalization of UserSettings
Basically just shove it into a modal and call it good.
2019-01-21 16:51:43 -07:00
J. Ryan Stinnett
29be3ee4b5 Rename login directory to auth 2019-01-21 17:45:55 -06:00
J. Ryan Stinnett
e714b2aed2 Remove Status theme-specific hacks 2019-01-21 13:59:22 -06:00
David Baker
eecc37038a
Merge pull request #2469 from matrix-org/dbkr/warn_on_wrong_recovery_key
Error if no sessions decrypted
2019-01-21 19:18:33 +00:00
David Baker
31889ecfad Lint 2019-01-21 19:07:44 +00:00
David Baker
e42b0a9972 Make error string less redundant 2019-01-21 18:02:09 +00:00
David Baker
1a9c3f1ac7 Make error string less technical 2019-01-21 17:41:55 +00:00
David Baker
0a2b79b62d Error if no sessions decrypted
Tell the user if they entered the wrong recovery key

Fixes https://github.com/vector-im/riot-web/issues/8143
2019-01-21 16:51:30 +00:00
Bruno Windels
86357fde51 sort combined typing users by name so order is stable 2019-01-21 17:49:46 +01:00
Bruno Windels
25aa58f29f increase/clear min-height on timeline on new message(s)
depending on whether the typing bar is visible
2019-01-21 17:35:40 +01:00
David Baker
4c381c32ee Show verify button when we have a device to verify
rather than when we don't
2019-01-21 11:34:13 +00:00
Matthew Hodgson
8511bc27cc only request thumbs on retina if the original image is too big to be used as a thumbnail 2019-01-20 15:35:16 +00:00
Travis Ralston
36ffbef010
Tweak comment about field ID
Co-Authored-By: jryans <jryans@gmail.com>
2019-01-19 22:29:57 -06:00
J. Ryan Stinnett
efd5405267 Add a form field component for the redesign
The label moves into the border on focus and after being filled. A valid color
is applied to the label and input border. Other states like invalid can be added
later as needed.

Adapted from @ara4n's experiment into a React component with a CSS only
approach.
2019-01-19 22:13:53 -06:00
David Baker
60a8d560d1 Undo abortive first attempt at factoring out 2019-01-19 11:54:01 +00:00
J. Ryan Stinnett
7c9509ceb8
Merge pull request #2460 from matrix-org/jryans/versioned-img-urls
Load fonts and images via source-relative URLs and requires
2019-01-18 14:27:55 -06:00
David Baker
630a6a479b Lint 2019-01-18 18:43:40 +00:00
David Baker
970880737e Merge remote-tracking branch 'origin/experimental' into dbkr/sas 2019-01-18 18:33:11 +00:00
David Baker
4f2f2f4f4e Move common UI bits out to separate components 2019-01-18 18:24:38 +00:00
David Baker
ec2d51cbbb SAS verification screen matching design 2019-01-18 16:56:49 +00:00
David Baker
4b68ca141c
Merge pull request #2455 from matrix-org/dbkr/key_backup_status_unknown_device
Say when backup is signed by unknown device
2019-01-18 10:58:26 +00:00
J. Ryan Stinnett
20e296b20e Convert image URLs in React to require calls
This allows Webpack to insert the proper image URL after builds steps like
adding a hash and so on. The path you supply to `require` is relative to the JS
source file, just like any other would be.
2019-01-17 22:06:49 -06:00
Travis Ralston
7f6ce69c3e Merge branch 'experimental' into travis/develop2 2019-01-17 16:03:45 -07:00
Bruno Windels
2920deaefe better naming 2019-01-17 18:52:22 +01:00
Bruno Windels
146e651dae add comments 2019-01-17 18:52:14 +01:00
Bruno Windels
1db6f1b652 remove logging 2019-01-17 18:32:46 +01:00
Bruno Windels
d787d3d821 clear typing bar when receiving event from user 2019-01-17 18:26:11 +01:00
David Baker
b551d2f43a Say when backup is signed by unknown device
rather than say it isn't signed by any devices

https://github.com/vector-im/riot-web/issues/8142

Requires https://github.com/matrix-org/matrix-js-sdk/pull/826
2019-01-17 16:45:00 +00:00
Bruno Windels
7df8951efa wait to hide typing bar until event arrives or 5s timeout 2019-01-17 16:30:55 +01:00
Bruno Windels
89b576936b
Merge pull request #2448 from matrix-org/bwindels/searchmakeover
Redesign: search makeover
2019-01-17 12:12:26 +00:00
Bruno Windels
8c30d05eb8 Revert "Merge pull request #2348 from matrix-org/bwindels/roomgridview-experimental"
This reverts commit ece5cb1fcc, reversing
changes made to 64a3d2521c.
2019-01-17 10:29:37 +01:00
J. Ryan Stinnett
859f2a8646 Show spinner while waiting on status message to commit
It can take some time to actually set the status message and see it play back as
a committed event.  This adds a spinner for immediate feedback so it's clear
that something is happening.

Fixes https://github.com/vector-im/riot-web/issues/8135.
2019-01-16 09:33:39 -06:00
David Baker
55889d5491 Change wording of 'invite anyway' setting
https://github.com/vector-im/riot-web/issues/7922
2019-01-16 15:07:30 +00:00
David Baker
4da4e0c37a Iminimal lint-fixes to make develop CI build 2019-01-16 13:57:18 +00:00
Bruno Windels
622b11fd91 remove commented out code from shifting things around 2019-01-16 13:04:49 +01:00
Bruno Windels
0229453482
Merge pull request #2440 from matrix-org/bwindels/smarterresizer
Improve room sublist resizing
2019-01-16 10:55:53 +00:00
Bruno Windels
899ee265e3 Merge branch 'experimental' into bwindels/searchmakeover 2019-01-16 11:17:38 +01:00
Bruno Windels
cbe3afaa1f resubmit query when switching between "This Room" / "All Rooms" 2019-01-16 11:13:35 +01:00
David Baker
1d2538a7bc First working version of SAS 2019-01-15 18:08:13 +00:00
J. Ryan Stinnett
4b13774585 Revert to avatar only when custom status disabled
This returns to the previous behavior of avatar only without a button when the
custom status feature is disabled so that you don't get pointer cursor for
something that does nothing when clicked.

The avatar ring spacing is kept consistent with and without the feature enabled
by using a different class in CSS.
2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
d8de607edc Update RoomTile on status change 2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
77cee8e67e Update MemberTile on status change 2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
443198c180 Fix lints in MemberTile.js 2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
233288475e Use status events for avatar ring
Similar to changes in `StatusMessageContextMenu`, this changes to using the new
status message event emitted in js-sdk to simplify state handling for the avatar
ring when a status is present.
2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
5b88b64950 Rework custom status context menu
This updates the custom status context menu to match the latest comps.  A single
button is used for setting / clearing, depending on what is appropriate.

The state logic is also changed to depend on events and storage from js-sdk for
the committed status message.  This makes it easy to distinguish the value being
edited from what's currently committed.
2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
fc3055f541 Tweak custom status menu size and placement 2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
eae1e4c9aa Tweak custom status avatar ring
Adjusts the appearance of the avatar ring to match the latest comps.

In addition, we now always render the surrounding button element, which
simplifies styling since the same size is now occupied both with and without the
feature.

This improves alignment between text in the composer and text in the message
history (https://github.com/vector-im/riot-web/issues/8111).
2019-01-15 10:54:29 -06:00
J. Ryan Stinnett
c76b273fae Update RoomTiles on custom status change 2019-01-15 10:54:29 -06:00
Bruno Windels
77a62b9174 style search bar 2019-01-15 16:20:04 +01:00
Matthew Hodgson
ef78036a72 fix vector-im/riot-web#8105 2019-01-15 14:40:58 +00:00
Bruno Windels
1bbf1502ec Merge branch 'experimental' into bwindels/smarterresizer 2019-01-15 10:23:50 +01:00
Travis Ralston
177d9f245a
Merge pull request #2441 from matrix-org/develop
Merge develop -> experimental
2019-01-14 14:45:20 -07:00
Bruno Windels
7e395f0fb6 cleanup - part II
reshuffle file structure to make more sense
2019-01-14 20:33:33 +01:00
Bruno Windels
9ecb23ce71 cleanup
- move some methods to ResizeItem subclass
- allow distributor to instanciate sizer and resizeitem it needs
  through static factory methods, instead of passing in another ctor
  a distributor can only function with the right item and sizer anyways.
- use consistent import/export style
- remove obsolete code
2019-01-14 20:24:54 +01:00
Matthew Hodgson
577c411a39 experimental fix for https://github.com/vector-im/riot-web/issues/2985
needs server to support 1600x1200 thumbnails for retina large ones.
ideally need to cap maximum thumbnail size to 800x600 rather than expand to arbitrary widths.
need to check that luke's funky timeline code doesn't get confused between naturalWidth and infoWidth etc.
also need to consider whether to encode a resolution metric in the event rather than lying about resolution.
2019-01-14 17:10:22 +00:00
Travis Ralston
a05c0f9214 Rephrase everything to be "invite anyways" rather than "retry"
Also handle profile errors better
2019-01-11 15:46:03 -07:00
David Baker
e0bc0494fa
Merge pull request #2433 from matrix-org/travis/rver/7992
Recalculate the visible rooms when rooms are upgraded
2019-01-11 10:37:32 +00:00
David Baker
93cf281ff9
Merge pull request #2432 from matrix-org/travis/rver/7998
Navigate to the upgraded room's create event where possible
2019-01-11 10:35:30 +00:00
David Baker
531822394d
Merge pull request #2429 from matrix-org/travis/rver/8076
Don't show rooms with tombstones in the address picker
2019-01-11 10:33:53 +00:00
Travis Ralston
c351ee3d30 Appease the linter 2019-01-10 21:54:07 -07:00
Travis Ralston
5333114d7b Give a route for retrying invites for users which may not exist
Fixes https://github.com/vector-im/riot-web/issues/7922

This supports the current style of errors (M_NOT_FOUND) as well as the errors presented by MSC1797: https://github.com/matrix-org/matrix-doc/pull/1797
2019-01-10 21:43:21 -07:00
Travis Ralston
33eef6f5ac
Merge pull request #2428 from matrix-org/travis/rver/7991
Set which servers to try and join upgraded rooms through
2019-01-10 16:28:11 -07:00
Travis Ralston
7d4b6add2c Recalculate the visible rooms when rooms are upgraded
We also do this when they are created just in case we missed the tombstone event.

Fixes https://github.com/vector-im/riot-web/issues/7992
2019-01-10 15:43:22 -07:00
Travis Ralston
b09219fe33 Navigate to the upgraded room's create event where possible
Fixes https://github.com/vector-im/riot-web/issues/7998
2019-01-10 15:29:12 -07:00
Travis Ralston
e24d3cd671 Render a tile for tombstone events
Fixes https://github.com/vector-im/riot-web/issues/7997

This isn't super elegant, but it also provides some amount of utility for people. As users might leave the old room, it might be useful to see when exactly a room was upgraded. We should fix the underlying cause for infinite back pagination though.
2019-01-10 15:15:45 -07:00
Travis Ralston
18ba5f6f19 Don't show rooms with tombstones in the address picker
Fixes https://github.com/vector-im/riot-web/issues/8076
2019-01-10 14:44:19 -07:00
Travis Ralston
cec9c908fc Set which servers to try and join upgraded rooms through
Fixes https://github.com/vector-im/riot-web/issues/7991
2019-01-10 14:33:46 -07:00
David Baker
fc346b2766
Merge pull request #2423 from matrix-org/dbkr/lint_messagecomposerinput
Fix lint errors in MessageComposerInput
2019-01-10 18:33:52 +00:00
Bruno Windels
92b9a8cc1f persist cleared size sublists 2019-01-10 18:40:26 +01:00
Erik Johnston
cbf9ff6aee Merge branch 'experimental' of github.com:matrix-org/matrix-react-sdk into erikj/state_counters 2019-01-10 16:56:47 +00:00
Erik Johnston
fa6b33d629 Only update component state when feature is enabled 2019-01-10 16:54:08 +00:00
David Baker
9903c61a21 Fix lint errors in MessageComposerInput
and remove from ignored files

Missed a load of the async arrows functions when changing them because
they were in the ignored files, so trying to chip away at this.

A lot of these were unused imports / variables. Probably the only
interesting one was a 'this' in a non-member function which I've moved
to be a member function.
2019-01-10 09:41:26 +00:00
David Baker
3555b02f34 Merge remote-tracking branch 'origin/experimental' into dbkr/fix_recovery_reminder_cancel 2019-01-10 09:39:57 +00:00
David Baker
c45ffb6733
Merge pull request #2422 from matrix-org/dbkr/eslint_async_space
Add spaces back to async arrow functions
2019-01-10 09:35:58 +00:00
David Baker
b9719abbc2 Oops, missed some asyncs 2019-01-09 19:36:34 +00:00
David Baker
f269b5fbbc Fix spaceless async in ignored files too 2019-01-09 19:14:30 +00:00
David Baker
8e4d8ccca7 Add spaces back to async arrow functions
As per https://github.com/matrix-org/matrix-js-sdk/pull/821

Requires https://github.com/matrix-org/matrix-js-sdk/pull/821
2019-01-09 18:10:35 +00:00
J. Ryan Stinnett
365a7273d8 Move initial key backup to background
Since the initial key backup can take several minutes for some users, this moves
the upload step to the background.  The create key backup flow now only marks
all sessions for backup synchronously, with the actual backup happening later.

The key backup panel in Settings gains a new row to show a summary of upload
status.  Users are directed there if they wish to know if the backup is done.

The text in various related dialogs has also been tweaked to fit the new flow.
2019-01-09 12:04:17 -06:00
J. Ryan Stinnett
731f9ee7df Display key backup upload progress in Settings
This adds a summary of the keys currently waiting for backup, which may be
useful for following a large upload as it progresses.
2019-01-09 12:04:17 -06:00
J. Ryan Stinnett
7dbc970347 Mark KeyBackupPanel as a pure component
KeyBackupPanel depends only on its own state and its children are pure, so it
can be pure as well. This avoids some unnecessary re-renders.
2019-01-09 12:04:17 -06:00
Bruno Windels
ece5cb1fcc
Merge pull request #2348 from matrix-org/bwindels/roomgridview-experimental
Tiled room UI
2019-01-09 17:25:08 +00:00
David Baker
7381879e3a Fix a few things with cancelling recovery reminder
* Put a cancel button on the first page of the create key backup
   dialog
 * Move settings logic into the room reminder: I know this is moving
   logic *into* a view but RoomView is quite heavyweight as it is.
 * Give the recovery reminder an explicit 'onDontAskAgainSet' rather
   than onFinished which was getting called with false when the last
   screen of the dialog was closed with the cancel 'x' rather than
   the 'close' button.

https://github.com/vector-im/riot-web/issues/8066
2019-01-09 16:27:41 +00:00
Bruno Windels
254427461d fix PR feedback 2019-01-09 12:48:13 +01:00
J. Ryan Stinnett
02a83a7c2b Use per-message string substitutions in key backup panel
Including unused substitutions triggers console logs, so change the key backup
panel to only substitute what's actually used in each message.

Fixes https://github.com/vector-im/riot-web/issues/8047.
2019-01-08 09:31:33 -06:00
Bruno Windels
9e67dbf008 change icon 2019-01-08 14:35:26 +01:00
Bruno Windels
52c5610660 update copy 2019-01-08 14:35:06 +01:00
Erik Johnston
07c2010cce Use state rather than forceUpdate 2019-01-08 11:14:31 +00:00
Bruno Windels
56726ba8e5 fix lint 2019-01-08 12:10:42 +01:00
Bruno Windels
7227049c2a add right panel toggle button to room header when in grid 2019-01-08 12:05:39 +01:00
J. Ryan Stinnett
bf87547f88 Remove unexpected underline from pills
Fixes vector-im/riot-web#8031.
2019-01-07 09:56:40 -06:00
Bruno Windels
c6952ba5b6 fix some more lint warnings, as limit is 16 now 2019-01-07 16:56:35 +01:00
Bruno Windels
c2f6fc381c add feature flag for grid view 2019-01-07 16:13:35 +01:00
Erik Johnston
4c204e88be Add feature flag for counters 2019-01-07 13:52:13 +00:00
Erik Johnston
712241d710 Add simple state counters to room heading 2019-01-07 13:52:13 +00:00
Bruno Windels
290dc9d8fb Merge branch 'experimental' into bwindels/roomgridview-experimental 2019-01-07 14:17:57 +01:00
David Baker
8fbb0607ff Re-write as full class component
So we can re-use the functions we pass to props
2019-01-07 12:09:19 +00:00
David Baker
522dddbd13 Lint 2019-01-07 10:13:02 +00:00
David Baker
47f303dc9d Make logout warning nag about key backups
https://github.com/vector-im/riot-web/issues/7805
2019-01-07 10:08:57 +00:00
Travis Ralston
5a2113e1a9 Fix a comparison bug in ordering the MemberList 2019-01-03 21:56:19 -07:00
Travis Ralston
77dfba8a22 Add unit tests for MemberList
Particularly the ordering of the tiles.
2019-01-03 21:55:52 -07:00
Travis Ralston
cc8fa7911b Merge remote-tracking branch 'origin/experimental' into travis/fix-memberlist-order 2019-01-03 20:01:28 -07:00
J. Ryan Stinnett
920911c0a1 Room list fixes for custom status 2019-01-03 18:49:15 -06:00
Travis Ralston
1481dcf9d7 Don't re-sort the room list if the user is hovering over it
Fixes vector-im/riot-web#5624
2019-01-03 16:27:59 -07:00
Travis Ralston
8017f0a4a1 Merge remote-tracking branch 'origin/experimental' into travis/develop-for-real 2019-01-03 16:00:23 -07:00
Travis Ralston
6447a60e1f Revert "Merge pull request #2336 from matrix-org/travis/notif-button"
This reverts commit 96300b45b7.
2019-01-03 15:44:07 -07:00
David Baker
f928be6f59 Revert "Merge pull request #2395 from matrix-org/dbkr/merge_develop_experimental"
This reverts commit ad47144355.
2019-01-03 15:37:03 -07:00
Travis Ralston
d111fe27bb Revert "Merge pull request #2396 from matrix-org/travis/room-list-hover"
This reverts commit 5098b28672.
2019-01-03 15:36:56 -07:00
Travis Ralston
223a49d81f Don't re-sort the room list if the user is hovering over it
Fixes vector-im/riot-web#5624
2019-01-03 13:57:20 -07:00
Travis Ralston
95844ebf9d Comment out debugging statements
They are useful to have around, but not to have enabled all the time.
2019-01-03 12:15:27 -07:00
Travis Ralston
63a7b86eac Flatten and simplify the memberlist sorting algorithm
The previous algorithm had a bug where it was getting stuck on the power level comparison, leaving the memberlist incorrectly ordered. The new algorithm uses less branching to try and walk through the different cases instead. Additionally, the steps used to determine the order have changed slightly to better represent an active member list.

This commit also includes changes to try and re-sort the member list more often during presence changes. Events are not always emitted, however. This may be a js-sdk bug but appears to happen prior to these changes as well.

Fixes https://github.com/vector-im/riot-web/issues/6953
2019-01-03 12:15:19 -07:00
David Baker
982e037822 Fix merge 2019-01-03 18:05:38 +00:00
David Baker
7d161de35b Partial merge of develop to experimental
Does not include #2336 as the file has been moved out from underneath it:
will do this separately
2019-01-03 15:02:58 +00:00
David Baker
c11d0bdf0c
Merge pull request #2394 from jryans/key-backup-unverified-creator
Show in-room reminder when key backup creating device unverified
2019-01-03 10:27:35 +00:00
J. Ryan Stinnett
758e867208
Merge pull request #2389 from christopherjmedlin/consistent-flair-ordering
Consistent flair ordering.
2019-01-02 16:35:50 -06:00
J. Ryan Stinnett
402f58225f Show in-room reminder when key backup creating device unverified
If the current device hasn't verified the device that created the account's
current key backup version, then the current device is won't use the key backup.
This change adjusts an existing in-room reminder to do the right thing for this
case by allowing the user to verify the device that created the key backup.

Fixes vector-im/riot-web#7902.
2019-01-02 15:36:40 -06:00
Christopher Medlin
384320e29f Consistently order flairs based on room configuration. 2018-12-24 14:46:36 -08:00
Travis Ralston
f5ff580e35 Add some logging for riot-web#7838
See https://github.com/vector-im/riot-web/issues/7838
2018-12-21 14:51:05 -07:00
Travis Ralston
2e1e536d5c
Merge pull request #2347 from matrix-org/travis/custom-status
Custom status messages
2018-12-19 11:11:15 -07:00
J. Ryan Stinnett
fd94dc686f Handle errors when fetching commits for changelog
It's possible to get errors when fetching commits (for example, if the rate
limit is exceeded), so this will handle the error case and display it instead of
an infinite spinner.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-19 18:10:21 +00:00
Travis Ralston
a1347add95 Merge branch 'develop' into travis/custom-status 2018-12-19 10:33:34 -07:00
Travis Ralston
45f05092ed Add a comment to describe why we're not using the property we should be 2018-12-19 10:21:43 -07:00
Bruno Windels
b3a12867a6 remove extra blank lines 2018-12-19 12:56:08 +01:00
Bruno Windels
b826b0d998 Add redesign feedback dialog + button in tag panel 2018-12-19 12:27:05 +01:00
David Baker
1ca91370f3
Merge pull request #2372 from matrix-org/dbkr/electron_sandbox
React-sdk changes to support sandboxed electron
2018-12-19 09:48:05 +00:00
Travis Ralston
04c9fff6ce Add a feature flag for custom status messages 2018-12-18 15:11:08 -07:00
Travis Ralston
d20a934642 Appease the linter 2018-12-18 11:04:16 -07:00
David Baker
3a8b9ab850 unused import 2018-12-18 17:57:23 +00:00
Travis Ralston
ef60a34180 Clean up and follow code style 2018-12-18 10:53:37 -07:00
David Baker
37b3644fd9 React-sdk changes to support sandboxed electron 2018-12-18 17:40:30 +00:00
Bruno Windels
1d43712a8f Merge branch 'experimental' into nadonomy/icons 2018-12-18 18:22:24 +01:00
Nad Chishtie
074c96cd3e First pass of normalising icons. 2018-12-18 16:48:20 +00:00
Bruno Windels
5e2ee883aa
Merge pull request #2366 from matrix-org/bwindels/fixrhscollapse
Redesign: fix remaining right panel collapse issues.
2018-12-18 16:19:02 +00:00
Bruno Windels
4b788fcb7e fix lint 2018-12-18 16:29:31 +01:00
Bruno Windels
c0ab74d5f1 reemit view_right_panel_phase when showing rhs, so right tab is active 2018-12-18 16:27:17 +01:00
Bruno Windels
dafc54c434 don't highlight room header buttons when right panel is collapsed 2018-12-18 15:36:54 +01:00
Bruno Windels
a10f0a3267 don't open right panel when switching room again
a view_right_panel_phase is dispatched by RoomHeaderButtons
on view_room, which was triggering this to show the panel again.

Check the fromHeader flag just like when hiding the panel so
only room header buttons can hide or show the right panel
2018-12-18 15:33:45 +01:00
Bruno Windels
2cb817ae26 remove dead code (collapse button was removed) 2018-12-18 15:33:28 +01:00
Bruno Windels
acba36c975
Merge pull request #2364 from matrix-org/bwindels/fixresizepersistenceandscrollindicator-again
Redesign: left panel fixes
2018-12-18 14:23:38 +00:00
Bruno Windels
2cda6d8f35 fix empty comment line 2018-12-18 15:06:56 +01:00
Bruno Windels
279521cab4 add id to props for completeness 2018-12-18 14:31:38 +01:00
Bruno Windels
cdcb3c1a55 check overflow and restore sizes in more places inside RoomList:
check overflow on mount
restore size on query change (in case a sublist appeared)
check overflow when updating rooms

avoid duplicating for restoring size and checking overflow
2018-12-18 14:26:33 +01:00
J. Ryan Stinnett
acc2e98355 Add New Recovery Method dialog
Adds a New Recovery Method dialog which is shown when key backup fails because
of a version mismatch / version not found error.

The set up button in the dialog currently only marks a device as verified (via a
verification prompt) instead of the eventual restore and cross-sign flow, since
those pieces don't exist yet.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-18 10:20:12 +00:00
Bruno Windels
b359a2edee call header clicked callback after rerendering, so resizer has DOM nodes 2018-12-18 10:56:00 +01:00
Bruno Windels
0676c1b8ad
Merge pull request #2361 from matrix-org/bwindels/collapserhs
Redesign: allow to hide the right panel when clicking already active button & persist
2018-12-18 09:46:30 +00:00
Bruno Windels
f6727c5724 add collapsedRhs to propTypes 2018-12-18 10:34:26 +01:00
Willem Mulder
d304c35b38 Allow widgets to autoplay media
This is useful for e.g. webcam streams in widgets.

Signed-off-by: Willem Mulder <willemmaster@hotmail.com>
2018-12-18 00:43:37 +00:00
Bruno Windels
a734fb9d35 dont set initial phase, show panel when collapsed 2018-12-17 15:55:26 +01:00
Bruno Windels
65f9bc9754 remove expand button in room header 2018-12-17 15:23:46 +01:00
Bruno Windels
bbafd8c2d3 toggle right panel when clicking already active header button 2018-12-17 15:22:02 +01:00
Bruno Windels
242b0c21ac make avatar 24px and tile height 32px 2018-12-17 14:03:48 +01:00
Travis Ralston
7b0766a303 Apply 50% opacity to the checkmark when there is no status 2018-12-14 13:49:35 -07:00
Travis Ralston
7efd82f713 Disable password managers on the status form 2018-12-14 13:44:40 -07:00
Bruno Windels
3ea0fd1a2f fix overflow indicators not being updated when searching 2018-12-14 17:06:51 +01:00
Bruno Windels
e4d2b6f2b7 fix resize handles being too thick on edge (hopefully) 2018-12-14 17:06:00 +01:00
Travis Ralston
8592e76e12 Standardize errors about localpart structure
Fixes https://github.com/vector-im/riot-web/issues/5833

This also includes changing some Jira references that aren't searchable anymore, and a thing to replace the spinner on the SetMxidDialog as per https://github.com/vector-im/riot-web/issues/5833#issuecomment-445323177
2018-12-13 16:45:30 -07:00
Travis Ralston
366f343432
Merge pull request #2327 from matrix-org/travis/well-known-improvements
Introduce a default_server_name for aesthetics and rework .well-known
2018-12-13 14:55:04 -07:00
Travis Ralston
63658e0441 Add a missing null check 2018-12-13 14:29:12 -07:00
Travis Ralston
96300b45b7
Merge pull request #2336 from matrix-org/travis/notif-button
Show the number of unread notifications above the bell on the right
2018-12-13 08:16:48 -07:00
Bruno Windels
0ffd77762a make menu option look somewhat better 2018-12-13 13:02:35 +01:00
Bruno Windels
c8243357ea disable editor history/persistence when in grid to avoid pesky bug 2018-12-13 13:01:59 +01:00
Bruno Windels
f593bff3c3 show right panel tabs inside panel instead of room header in grid mode 2018-12-13 13:01:59 +01:00
Bruno Windels
44200a6f78 only listen and dispatch to room-local dispatcher in room view, composer 2018-12-13 13:01:59 +01:00
Bruno Windels
cf0f75cad4 allow changing active room in grid by clicking it 2018-12-13 13:01:59 +01:00
Bruno Windels
399d3c5c24 wire up view_group_grid action from community context menu to new view 2018-12-13 13:01:59 +01:00
Bruno Windels
720bc11aa4 avoid using roomviewstore for detecting selected room 2018-12-13 13:01:59 +01:00
Bruno Windels
43efa29ef8 track active room with OpenRoomsStore 2018-12-13 12:59:18 +01:00
Bruno Windels
df8539d6bc pass the RoomViewStore down with a prop instead of global var.
this will allow to have more than 1 RoomView further on
2018-12-13 12:59:18 +01:00
Travis Ralston
f2649f7807 Use the now-prefixed js-sdk status message API
See 08b3dfa3b5
2018-12-12 23:07:03 -07:00
Travis Ralston
b0b7932f5f Move status context menu to its own component
This fixes a lot of the state bugs such as buttons not updating, etc. 

This commit also adds the border around the avatar to indicate a status is set.
2018-12-12 22:26:39 -07:00
Travis Ralston
99f5b9e39b Misc cleanup of whitespace 2018-12-12 18:18:43 -07:00
Travis Ralston
a91963e5ee Replace the avatar next to the composer with a status entry menu
The checkmark might change, and there appears to be some state tracking mishaps that need to be worked out.

Part of https://github.com/vector-im/riot-web/issues/1528
2018-12-12 18:03:30 -07:00
Travis Ralston
dd382ecb05 Fix a bug with determining 1:1 rooms
We shouldn't consider rooms where people have left or been banned
2018-12-12 13:20:26 -07:00
Travis Ralston
cd9ea2b2d7 Fix alignment of avatars and status messages
also introduce the status message to the MemberInfo pane

Part of https://github.com/vector-im/riot-web/issues/1528
2018-12-12 12:57:48 -07:00
Travis Ralston
bc9c08b11a
Merge pull request #2338 from matrix-org/travis/validate-emails
Check to make sure email addresses look roughly valid before inviting them to rooms
2018-12-12 08:12:15 -07:00
Bruno Windels
9f5a0250bf
Merge pull request #2345 from matrix-org/bwindels/jumptofirstunread-rebased
Redesign: restyle jump to first unread message & rework read marker logic (rebased)
2018-12-12 10:13:51 +00:00
Travis Ralston
ce7969e3d5 Display custom status messages in the UI
Part of https://github.com/vector-im/riot-web/issues/1528
2018-12-11 21:40:11 -07:00
J. Ryan Stinnett
04c30181c6 Expose hidden notification rules in UI
Adds UI control for 3 hidden notification rules:

* Messages containing @room
* Encrypted one-to-one messages
* Encrypted group messages

This should help to clarify some mysterious notification behavior, as it wasn't
obvious that these rules existed.

Fixes vector-im/riot-web#7833.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-12 01:41:27 +00:00
Bruno Windels
ac9902e52a apply redesign to topunreadmessagebar
with placeholder for message count
2018-12-11 15:43:00 +01:00
Bruno Windels
a31dacc4bc allow logout dialog to be cancelled (can't see why not?) 2018-12-11 12:43:56 +01:00
Bruno Windels
fc57109c54 use logout dialog in topleft menu instead of dispatching logout 2018-12-11 12:43:17 +01:00
Bruno Windels
48cfd08ea6 move logout dialog to own component so we can reuse it 2018-12-11 12:42:52 +01:00
Bruno Windels
84044fca1c fix lint 2018-12-11 11:09:11 +01:00
Bruno Windels
02367742bc bring back autocomplete attribute 2018-12-11 10:54:36 +01:00
Bruno Windels
3040f2d2e2 remove try/catch as the error is already prevented inside resize 2018-12-11 10:51:14 +01:00
Bruno Windels
93767fa5f1 fix invite button layout 2018-12-10 17:46:22 +01:00
Bruno Windels
ccf65d5f3c remove background from group room list header button 2018-12-10 17:45:47 +01:00
Bruno Windels
397e44b7ba fix query field width 2018-12-10 17:45:30 +01:00
Bruno Windels
dbe5449d0c bring invite buttons back in group member / room list
also put filter field on bottom
2018-12-10 17:21:55 +01:00
Bruno Windels
f4e61b2bf1 fixup for roomsublist fix 2018-12-10 16:53:04 +01:00
Bruno Windels
fb4a441341 fix navigation to room info in group view 2018-12-10 16:52:45 +01:00
Bruno Windels
fe76287035 style communities button, make it visible again 2018-12-10 15:43:48 +01:00
Bruno Windels
10a989a003 make icon optional in action button
as we'll draw the icon with css
2018-12-10 15:33:35 +01:00
Travis Ralston
a969237dc0 Disable the submit button while .well-known is underway
To give the user a little feedback about something happening. This definitely needs to be improved in the future though.
2018-12-07 15:37:20 -07:00
Travis Ralston
6707186edc Change how the default server name and HS URL interact
They are now independent of each other. If both are specified in the config, the user will see an error and be prevented from logging in. The expected behaviour is that when a default server name is given, we do a .well-known lookup to find the default homeserver (and block the UI while we do this to prevent it from using matrix.org while we go out and find more information). If the config specifies just a default homeserver URL however, we don't do anything special.
2018-12-07 15:36:49 -07:00
Travis Ralston
0a32570026 Merge branch 'develop' into travis/well-known-improvements 2018-12-07 15:08:19 -07:00
Travis Ralston
d062e2c2f4 Check to make sure email addresses look roughly valid before inviting them to room
Fixes https://github.com/vector-im/riot-web/issues/6854
2018-12-07 15:03:58 -07:00
J. Ryan Stinnett
a92d2902c4 Add an in-room reminder to set up key recovery
This adds an in-room reminder above the message timeline to set up Secure
Message Recovery so that your keys will be backed up. If you try to ignore it,
an additional dialog is shown to confirm.

Fixes vector-im/riot-web#7783.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-07 14:13:02 -06:00
Travis Ralston
95d15b7863 Fix tinting of notification icon and use a more reliable notification source
The js-sdk's placement of the notification change was unreliable and could cause stuck notifications. The new location (piggybacking the Notifier) is a lot more reliable.

The tinting has been changed fairly invasively in order to support the changing of the `fill` attribute. What was happening before was the `fill` property would happily get set to the forced color value, but when it came time to reset it it wouldn't be part of the colors array and fail the check, therefore never being changed back. By using a second field we can ensure we are checking the not-forced value where possible, falling back to the potentially forced value if needed. 

In addition to fixing which color the Tinter was checking against, something noticed during development is that `this.colors` might not always be a set of hex color codes. This is problematic when the attribute we're looking to replace is a rgb color code but we're only looking at `keyHex` - the value won't be reset. It appears as though this happens when people use custom tinting in places as `this.colors` often gets set to the rgb values throughout the file. To fix it, we just check against `keyHex` and `keyRgb`.
2018-12-06 22:26:51 -07:00
Travis Ralston
173669b375 Show the number of unread notifications above the bell on the right
Fixes https://github.com/vector-im/riot-web/issues/3383

This achieves the result by counting up the number of highlights across all rooms and setting that as the badge above the icon. If there are no highlights, nothing is displayed. The red highlight on the bell is done by abusing how the Tinter works: because it has access to the properties of the SVG that we'd need to override it, we give it a collection of colors it should use instead of the theme/tint it is trying to apply. This results in the Tinter using our warning color instead of whatever it was going to apply.

The RightPanel now listens for events to update the count too, otherwise when the user receives a ping they'd have to switch rooms to see the change.
2018-12-06 16:18:02 -07:00
Travis Ralston
ca1313099f Show the IncomingCallBox if the call is for the RoomSubList
Fixes https://github.com/vector-im/riot-web/issues/4369

Previously the RoomSubList would filter its list of rooms to verify that the incoming call belongs to it. This causes problems when the sub list is being told some rooms don't exist (ie: the list is filtered). It is trivial for the RoomList to instead track which RoomSubList (tag) it should be handing the call off to so we do that instead now. The RoomSubList trusts that the caller has already filtered it and will render the IncomingCallBox if it has an incoming call.
2018-12-06 11:45:58 -07:00
Travis Ralston
31b7a0ddcb
Merge pull request #2259 from matrix-org/t3chguy/account_deactivation_preferences
Remove temporary account_deactivation_preferences
2018-12-06 10:45:04 -07:00
Travis Ralston
0f348a7c78 Merge branch 'develop' into travis/invite-errors 2018-12-05 11:25:45 -07:00
David Baker
dad8e6a261
Merge pull request #2326 from jryans/group-users-error
Allow group summary to load when /users fails
2018-12-05 10:56:32 +00:00
Travis Ralston
633be5061c Introduce a default_server_name for aesthetics and rework .well-known
Fixes https://github.com/vector-im/riot-web/issues/7724

The `default_server_name` from the config gets displayed in the "Login with my [server] matrix ID" dropdown when the default server is being used. At this point, we also discourage the use of the `default_hs_url` and `default_is_url` options because we do an implicit .well-known lookup to configure the client based on the `default_server_name`. If the URLs are still present in the config, we'll honour them and won't do a .well-known lookup when the URLs are mixed with the new server_name option. Users will be warned if the `default_server_name` does not match the `default_hs_url` if both are supplied. Users are additionally prevented from logging in, registering, and resetting their password if the implicit .well-known check fails - this is to prevent people from doing actions against the wrong homeserver.

This relies on https://github.com/matrix-org/matrix-js-sdk/pull/799 as we now do auto discovery in two places. Instead of bringing the .well-known out to its own utility class in the react-sdk, we might as well drag it out to the js-sdk.
2018-12-04 23:34:57 -07:00
J. Ryan Stinnett
22ff76e6b7 Add error to UI when group member list fails to load
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-04 18:46:15 -06:00
Bruno Windels
13491e797d persists & load collapsed room sub lists 2018-12-03 10:39:31 +01:00
Will Hunt
2b077b4f5d Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-12-01 16:24:43 +00:00
Travis Ralston
987ad0b0db Check if users exist before inviting them and communicate errors
Fixes https://github.com/vector-im/riot-web/issues/3283
Fixes https://github.com/vector-im/riot-web/issues/3968
Fixes https://github.com/vector-im/riot-web/issues/4308
Fixes https://github.com/vector-im/riot-web/issues/1597
Fixes https://github.com/vector-im/riot-web/issues/6790

This does 3 things:
* Makes the `MultiInviter` check for a user profile before attempting an invite. This is to prove the user exists.
* Use the `MultiInviter` everywhere to avoid duplicating the logic. Although a couple places only invite one user, it is still worthwhile.
* Communicate errors from the `MultiInviter` to the user in all cases. This is done through dialogs, where some existed previously but were not invoked.

Specifically to the 403 error not working: What was happening was the `MultiInviter` loop was setting the `fatal` flag, but that didn't resolve the promise it stored. This caused a promise to always be open, therefore never hitting a dialog.
2018-11-29 15:05:53 -07:00
Travis Ralston
e3f2e69087
Merge pull request #2227 from matrix-org/travis/well-known
Support .well-known discovery
2018-11-27 13:51:44 -07:00
Bruno Windels
8f4292399b
Merge pull request #2297 from matrix-org/bwindels/roomlistsizingimprovements
Redesign: improve room sub list sizing & persist sizes
2018-11-27 13:40:48 +00:00
Bruno Windels
887defda9c temp solution to make room settings usable
make mx_fadable not do anything anymore, and make room settings
full size.

Room settings haven't been designed yet, so all of this will
have a full pass when we have a go at it.
2018-11-26 17:58:51 +01:00
Bruno Windels
0c7d51d70d persist room sub list sizes 2018-11-26 16:46:57 +01:00
Bruno Windels
f7a37be6dd support associating an id with a resize item/handle 2018-11-26 16:46:27 +01:00
Bruno Windels
8929ff9b5e use room resize classes 2018-11-26 14:42:01 +01:00
Bruno Windels
67e0030ccd Merge branch 'develop' into experimental 2018-11-26 13:10:29 +01:00
David Baker
4f8c4f1c6e Make create key backup dialog async
So we can add zxcvbn to it without inflating the main bundle size
2018-11-23 10:55:18 +00:00
David Baker
d443d6173d Forgot to enable continue button on download 2018-11-22 19:06:58 +00:00
Travis Ralston
4cfefe4c3c Introduce an onUsernameBlur and fix hostname parsing 2018-11-21 14:13:56 -07:00
Travis Ralston
6f0f930e0a Merge branch 'develop' into travis/well-known 2018-11-21 13:30:57 -07:00
David Baker
d714176fcd
Merge pull request #2169 from matrix-org/dbkr/e2e_backups
Online incremental megolm backups (v2)
2018-11-21 18:37:43 +00:00
David Baker
b529c98095
Merge pull request #2284 from matrix-org/dbkr/e2e_backups_download_recovery_key
Add recovery key download button
2018-11-21 18:25:33 +00:00
David Baker
3828798099 lint 2018-11-21 18:17:26 +00:00
David Baker
40ef2e0cf4 another missed translation 2018-11-21 18:08:44 +00:00
David Baker
1c06d781ae Missed translation 2018-11-21 18:06:37 +00:00
David Baker
08e2ba8c6c Don't allow enter to submit if field invalid 2018-11-21 18:02:58 +00:00
David Baker
985966f8be Update async dialog interface to use promises
Hopefully makes the syntax a bit nicer. Also uses ES6 async import
rather than require.ensure which is now deprecated. Also also
displays an error if the component fails to load rather than falling
over in a heap, which is nice.
2018-11-21 16:56:44 +00:00
David Baker
ed5d87e797 Add recovery key download button 2018-11-21 13:57:31 +00:00
David Baker
6fe2c9c2bb Merge branch 'dbkr/e2e_backups' into dbkr/e2e_backups_passphrase 2018-11-20 18:10:57 +00:00
David Baker
8ccaf53d20 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-11-20 18:08:39 +00:00
David Baker
63a7ff5273 lint 2018-11-20 16:20:31 +00:00
David Baker
132408cf02 Add e2e backup recovery with passphrase 2018-11-20 16:16:24 +00:00
David Baker
fbab8ceeef Passphrase based key backups
Add passphrase support to backup creation stage
2018-11-20 13:11:58 +00:00
Richard van der Hoff
c61031d3e1
Merge pull request #2279 from matrix-org/rav/sso_login_type
Support for m.login.sso
2018-11-19 14:14:21 +01:00
Travis Ralston
7dd610b41e
Merge pull request #2235 from MaxwellKepler/develop
Added badge to non-autoplay GIFs
2018-11-16 13:25:40 -07:00
Travis Ralston
2408eeeb3d
Merge pull request #2277 from matrix-org/travis/terms-auth-improvements
Improve terms auth flow
2018-11-16 12:36:17 -07:00
Travis Ralston
7df003ef74 Be more positive in property naming 2018-11-16 12:15:44 -07:00
David Baker
8281bdf875 Actually add the dialog 2018-11-16 11:33:09 +00:00
Travis Ralston
8916c90fed Make the 'Accept' button for consent a little more friendly
Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-15 20:26:37 -07:00
Richard van der Hoff
90f22c7b43 Support for m.login.sso
Adds support for the m.login.sso login type, which is handled the same way as
CAS, and also makes it look a bit nicer.
2018-11-15 19:05:39 +00:00
Travis Ralston
c8b38606cc Fix terms auth continue button CSS 2018-11-14 18:40:00 -07:00
Travis Ralston
2ffc024fab Add a dedicated "Continue" button to the terms auth stage
The button itself is conditionally enabled because the ILAG dialog already has a continue button. It'd be confusing to users to have 2 continue buttons on the same dialog, so this commit adds the structure required to pass along clicks from the dialog's button down to the UI auth component. 

The other place the continue button would appear is on the register page (not ILAG). The button's style is different here, however that will be improved in a later commit. 

Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-14 18:26:35 -07:00
Bruno Windels
ece549bf71 fix lint 2018-11-13 09:17:37 +01:00
Bruno Windels
ffc73c59b4 make padding and DOM more like event tile 2018-11-13 09:15:43 +01:00
Bruno Windels
8ddd2dd078 scroll down when showing typing notif and stuck at bottom 2018-11-13 09:15:16 +01:00
Bruno Windels
20b8994714 simplify DOM and style to design 2018-11-12 18:19:18 +01:00
Bruno Windels
7df47cbc87 move typing notifications to WhoIsTypingTile, shown in ScrollPanel 2018-11-12 16:09:51 +01:00
Bruno Windels
883126a528 Merge branch 'experimental' into bwindels/memberqueryfield 2018-11-07 13:29:28 +01:00
Bruno Windels
9e95a1402c
Merge pull request #2269 from matrix-org/bwindels/roomlistpolish
Redesign: room list visual polish
2018-11-07 11:44:47 +00:00
Bruno Windels
4e773c2665 Make right panel a dark-panel instead of every descendant.
Also move bg color central.
2018-11-06 14:47:58 +01:00
Bruno Windels
92e43ea181 move filter member field to bottom of memberlist
reorganize styles as well
2018-11-06 14:47:11 +01:00
Bruno Windels
ef26189add add dedicated menu button to room tile with new design 2018-11-05 17:42:25 +01:00
Bruno Windels
c0becc7664 fix roomtile badge
only put it in the dom if it has
anything to show as it has a border now in collapsed mode
2018-11-05 14:24:12 +01:00
Bruno Windels
3cd32e2f44 update search icon(s) 2018-11-05 13:07:49 +01:00
Bruno Windels
064662380f support search icon in mx_textinput, use in memberlist 2018-11-05 09:35:27 +01:00
Bruno Windels
46389457e3 add input styling for light and dark panels (leftpanel vs room header) 2018-11-05 09:32:37 +01:00
Bruno Windels
e29227db4e bring back "filter rooms" field
this does the filtering in RoomList instead of RoomSubList, so
we can hide sections that don't have any results.

The filtering does happen with every rerender of RoomList,
but only does something while searching, so the performance
implications are probably negligible.
2018-11-02 15:27:17 +01:00
Bruno Windels
9546df609e
Merge pull request #2260 from matrix-org/bwindels/rightpanelbelowheader
Redesign: move right panel below room/group header
2018-11-02 14:12:24 +00:00
Bruno Windels
4c5bd71114 fix lint 2018-11-01 17:56:08 +01:00
David Baker
6d6e6b5a4e Remove cryptic abbreviation 2018-10-31 20:01:36 +00:00
David Baker
1a878fc77a Quote consistency 2018-10-31 19:56:34 +00:00
David Baker
23332e16c5 keyBackupStatus event now has crypto. prefix 2018-10-31 18:07:29 +00:00
Bruno Windels
b4dd739771 Merge branch 'experimental' into bwindels/rightpanelbelowheader 2018-10-31 14:57:16 +01:00
Bruno Windels
ba83166661 Merge branch 'develop' into experimental 2018-10-31 14:54:22 +01:00
Bruno Windels
bd9c0dc6cf fix lint 2018-10-31 12:20:10 +01:00
Bruno Windels
e80a1c5051 move room/group panel header buttons into room/group header 2018-10-30 17:15:19 +01:00
Michael Telatynski
328d57f063 Remove temporary account_deactivation_preferences
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-10-29 22:57:33 +00:00