Commit graph

5225 commits

Author SHA1 Message Date
Travis Ralston
17ed62de7d Move MessageComposer typing timeout to TypingStore 2019-06-27 10:35:44 -06:00
Travis Ralston
cd089a3f95 Track the user's own typing state external to the composer
Fixes https://github.com/vector-im/riot-web/issues/9986

There's a few reasons for pushing this out to its own place:
* In future, we might want to move WhoIsTyping here.
* We have multiple composers now, and although they don't send typing notifications, they could (see https://github.com/vector-im/riot-web/issues/10188)
* In future we may have status for where/what the user is typing (https://github.com/matrix-org/matrix-doc/issues/437)
* The composer is complicated enough - it doesn't need to dedupe typing states too.

Note: This makes use of the principles introduced in https://github.com/vector-im/riot-web/issues/8923 and https://github.com/vector-im/riot-web/issues/9090
2019-06-26 22:36:55 -06:00
Bruno Windels
15d286ed93
Merge pull request #3144 from matrix-org/bwindels/edit-history
Edit history dialog
2019-06-26 14:38:53 +00:00
Bruno Windels
c9c84016cb move EditHistoryMessage to messages directory 2019-06-26 16:17:25 +02:00
Bruno Windels
54de0b298b add "Click to see edits." to tooltip 2019-06-26 16:13:32 +02:00
Bruno Windels
a1548285b5 fix copyright header and whitespace 2019-06-26 16:13:15 +02:00
Bruno Windels
c987f4e8d8 remove passthrough ctor 2019-06-26 16:12:57 +02:00
Bruno Windels
d606c966ea use PureComponent 2019-06-26 16:12:44 +02:00
Bruno Windels
929020a139 remove leftover logging 2019-06-26 15:51:55 +02:00
Bruno Windels
39c96b15d8 set state in ctor 2019-06-26 15:51:46 +02:00
Bruno Windels
f4b86ca265 don't bind 2019-06-26 15:51:28 +02:00
Bruno Windels
fa0319f14b apply renamed (token -> from) option 2019-06-26 15:49:24 +02:00
Travis Ralston
8d85967824
Merge pull request #3139 from matrix-org/travis/upgrades-final
Fix room upgrade warning being chopped off and a spelling mistake
2019-06-26 07:12:39 -06:00
Bruno Windels
fe3be39fe7 don't hide timestamps 2019-06-26 11:59:56 +02:00
Bruno Windels
ee03a0f31d recycle EventTile css to make history items look mostly similar 2019-06-26 11:59:56 +02:00
Bruno Windels
8c9a6ddf96 support edits pagination in a ScrollPanel 2019-06-26 11:59:56 +02:00
Bruno Windels
0fe28cba43 support emotes in edit history 2019-06-26 11:59:56 +02:00
Bruno Windels
e7fc84d5da render history items in own component
including:
- respect 12/24 hour setting
- pillify
2019-06-26 11:59:56 +02:00
Bruno Windels
19b4699bc2 WIP for showing pills in edit history 2019-06-26 11:59:56 +02:00
Bruno Windels
e54881aa24 WIP 2019-06-26 11:59:56 +02:00
Bruno Windels
8b5f07e63d open edit dialog on clicking (edited) 2019-06-26 11:59:56 +02:00
Bruno Windels
ef71e6fd4f very basic & hackish edit history dialog 2019-06-26 11:59:56 +02:00
Travis Ralston
0701d89bbe Fix upgrade warning being chopped off
The flex box was behaving a bit strange, so we just wrap the content and change `height: 235px` to `max-height: 235px` to get scrollbars.
2019-06-25 15:40:22 -06:00
Travis Ralston
b6242dbad2 Fix spelling 2019-06-25 13:54:48 -06:00
J. Ryan Stinnett
93384f91f5 Show reaction title and shortcode on hover
This shows the title and shortcode for the hovered reaction at the bottom of the
tooltip. If nothing is hovered, a blank space is shown for now, but will
eventually become a link to a full emoji picker in future work.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 18:15:03 +01:00
J. Ryan Stinnett
c1821fabd3 Remove toggling reaction dimensions
This removes the v1 Reactions UX which only allowed you to choose only one emoji
out of each pair. It is replaced by a different UX inside a tooltip and without
these constraints.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 16:23:31 +01:00
J. Ryan Stinnett
fd2723585f Add quick reaction buttons in tooltip
This adds the set of quick reactions as buttons in a new tooltip accessed via
the react action in the message action bar.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 16:23:13 +01:00
J. Ryan Stinnett
91f707341a Tweak handler name to match others 2019-06-25 15:12:30 +01:00
J. Ryan Stinnett
8926992feb Add react button to action bar
This adds a (temporarily non-functional) react button to the action bar.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 15:12:30 +01:00
J. Ryan Stinnett
c9dc4cbea3
Merge pull request #3137 from matrix-org/jryans/tooltip-interaction
Improve API and interactivity of new tooltip
2019-06-25 12:26:25 +01:00
J. Ryan Stinnett
67130cb45f Condense isInRect 2019-06-25 11:57:55 +01:00
Bruno Windels
a9b5d2095c
Merge pull request #3132 from matrix-org/bwindels/edit-full-feature-flag
feature flag for displaying edits as well
2019-06-24 21:00:58 +00:00
J. Ryan Stinnett
72bfc3b5ea Improve API and interactivity of new tooltip
This reworks the API the `InteractiveTooltip` component so that it's more
natural to use just like other React components. You can now supply the target
component as a child and the tooltip content as a prop.

In addition, this tweaks the interactivity to keep the tooltip on screen until
you move the mouse away from the tooltip and its target.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-24 17:32:36 +01:00
J. Ryan Stinnett
f366f7d2b3
Merge pull request #3131 from matrix-org/jryans/interactive-tooltip
Add interactive tooltip style
2019-06-24 15:42:02 +01:00
Bruno Windels
5fa3f70fb4 feature flag for displaying edits as well 2019-06-21 18:32:15 +02:00
Bruno Windels
1c7af38d83
Merge pull request #3126 from matrix-org/bwindels/caret-refactoring
Editor caret improvements
2019-06-21 15:02:41 +00:00
J. Ryan Stinnett
32bf4588dd Center tooltip along top or bottom of target
This adjusts the positioning to work more the way we want:

* Tooltip is position on the top or bottom edge of the target depending on where
  space is available
* Tooltip and chevron are centered

In addition, more bits borrowed from `ContextualMenu` are not needed, so they
have been removed for simplicity.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
J. Ryan Stinnett
6dcdad028e Clone ContextualMenu to InteractiveTooltip
As part of reactions and editing work, we're adding a new style of tooltip that
allows interacting with the content of the tooltip.  `ContextualMenu` is closest
out of the things we have today, but it doesn't position in quite the way we
want and it's already quite complex.

To get started, let's first clone that to a new `InteractiveTooltip`.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
Bruno Windels
cf0799289d Disable left/right arrow navigating completions for now
as the autocomplete is now very eager to appear, this breaks
caret navigation when typing e.g. anything with a colon.

Ideally, we should make the AC less eager to appear,
but this is a quick fix for now.
2019-06-21 13:48:52 +02:00
Michael Telatynski
dea412c906 Add file size to UploadConfirmDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-21 09:03:28 +01:00
Travis Ralston
2a0660c545
Merge pull request #3123 from matrix-org/travis/sas-timeouts
Consider cancelled verifications when mounting IncomingSasDialog
2019-06-20 14:29:20 -06:00
Travis Ralston
0f8dd102bf Move early-cancel stuff to constructor 2019-06-20 14:17:06 -06:00
Travis Ralston
bf443149b5 Make the verification cancelled dialog say OK instead of Cancel
Fixes https://github.com/vector-im/riot-web/issues/9306

Includes unexpected cleanup of i18n
2019-06-19 15:07:45 -06:00
Travis Ralston
ff3c52a736 Consider cancelled verifications when mounting IncomingSasDialog
The cancellation can be because of a background problem, or because the user received another verification request from the same user. The cancel function does get called, however due to the speed of our dialog handling the state ends up being lost forever. Instead of trying to de-layer dialogs, this just fastforwards the whole dialog to "cancelled" on mount if required.

Fixes https://github.com/vector-im/riot-web/issues/10118
2019-06-19 14:59:59 -06:00
J. Ryan Stinnett
78b0f61efe
Merge pull request #3119 from matrix-org/jryans/rename-tooltip-button
Fix casing of TooltipButton
2019-06-19 19:18:15 +01:00
Bruno Windels
b16bc0178a insert manually, as insertHTML command moves caret inconsistently
across browsers
2019-06-19 17:42:18 +02:00
David Baker
0e6f401b62 copyright 2019-06-19 11:48:47 +01:00
David Baker
c57d93702a De-duplicate notif badge code
We had two different places we were deciding whether to show a badge.
Let's just have one.
2019-06-19 11:46:24 +01:00
J. Ryan Stinnett
bb4b5d7798 TooltipButton rename step 2 of 2 2019-06-19 11:32:03 +01:00
J. Ryan Stinnett
ab4c5f0152 TooltipButton rename step 1 of 2 2019-06-19 11:30:37 +01:00