Commit graph

3636 commits

Author SHA1 Message Date
David Baker
ec4c7ffb71 Make ActiveWidgetStore clear persistent widgets
ActiveWidgetStore is now reponsible for removing the current
persistent widget from the store if it's been removed from whatever
room it was in. As per comment, this leaves us with the store updating
itself in this case but in all other cases, views call setters on the
store to update its state. We should make it so the store keeps itself
up to date and views aren't responsible for keeping the store up to date.

The store now emits events so it can notify PersistentApp when it changes.

Fixes https://github.com/vector-im/riot-web/issues/7076
2018-07-24 16:21:43 +01:00
David Baker
6804647dda Destroy widget when its permission is revoked 2018-07-23 17:11:53 +01:00
David Baker
4f8ece53b2 Fix CSS naming 2018-07-23 15:58:07 +01:00
David Baker
5adcd673ab Fix persisent apps being the wrong size 2018-07-23 15:08:17 +01:00
David Baker
00f78822c5 Fix widgets resetting when going to the top-left
Remove the hash from the parentUrl because this change when we
change rooms.
2018-07-23 13:50:16 +01:00
Bruno Windels
6f278ceab0
Merge pull request #2071 from matrix-org/dbkr/persistedelement_border
Fix border around persisted widgets
2018-07-20 12:23:02 +01:00
David Baker
f9af96d422
Merge pull request #2070 from matrix-org/t3chguy/slate_cont2
Even More Slate Fixes :D
2018-07-19 13:49:42 +01:00
Michael Telatynski
855f8871b8
replace heuristic for the time being as it failed with inlines like pills. Fixes vector-im/riot-web#7059
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 16:50:07 +01:00
David Baker
f868cd6699 Fix border around persisted widgets
The PersistedElement had zero height so the border ended up in the
wrong place. Add a wrapper to fix the height back.

Fixes https://github.com/vector-im/riot-web/issues/7030
Fixes https://github.com/vector-im/riot-web/issues/7029
2018-07-18 11:52:57 +01:00
Michael Telatynski
88dddb628d
in MD mode forgo any Magic Rich Pasting conversion as its confusing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:50:13 +01:00
Michael Telatynski
6bb88c0548
attempt to fix clash of Cmd-M on Mac. Should fix vector-im/riot-web#7047
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:28:48 +01:00
Michael Telatynski
3e956514b3
also prevent merge/skip on rich text pastes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:00:45 +01:00
Michael Telatynski
1a9de3fabe
fix undo on pasting plaintext content
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:58:27 +01:00
Michael Telatynski
f5856270cc
undo removal of stripping <p>s as it breaks HTML /mes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:48:54 +01:00
David Baker
68c46a694e lint 2018-07-18 10:18:55 +01:00
Michael Telatynski
19e5dc5799
do less rewriting for composer quote to prevent breaking pills
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:10:42 +01:00
Michael Telatynski
8bb08b1b75
fix focus on new editorState as it didn't have focus so broke when alt tab
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:10:11 +01:00
David Baker
7aab6fa6f1 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-18 09:35:57 +01:00
Matthew Hodgson
02c3bc9476
Merge pull request #2069 from matrix-org/t3chguy/slate_cont2
Moar Slate Fixes
2018-07-17 17:15:01 +01:00
Michael Telatynski
720a728278
workaround for placeholder being shown when empty text but block. Fixes vector-im/riot-web#7042
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 16:13:33 +01:00
Michael Telatynski
1b467f6ca8
fix pasting of plaintext content (prevent loads of <p>s) Fixes vector-im/riot-web#7043
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 16:02:37 +01:00
Michael Telatynski
414908611d
prevent exception if there is no text node at anchor
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:48:15 +01:00
Michael Telatynski
688776bc10
allow enter to remove current block if its empty useful for lists
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:29:40 +01:00
Michael Telatynski
8d4cead105
special-case 'inline-code' button because mark is called 'code'
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:24:28 +01:00
Michael Telatynski
ff76b6a981
allow user to break out of blockquote/etc by hitting enter twice
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 12:30:22 +01:00
Matthew Hodgson
48fbf1406f
Merge pull request #2068 from matrix-org/t3chguy/slate_cont2
fix 2nd typo in one PR :(
2018-07-16 21:36:57 +01:00
Michael Telatynski
1c24f1fd5a
fix 2nd typo in one PR :(
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 21:34:25 +01:00
Matthew Hodgson
8c17ee7281
Merge pull request #2067 from matrix-org/t3chguy/slate_cont2
check if has some completions, not if >=0
2018-07-16 21:32:04 +01:00
Michael Telatynski
547e0ed52c
check if has some completions, not if >=0
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 21:30:04 +01:00
Matthew Hodgson
a5b932bfdd
Merge pull request #2066 from matrix-org/t3chguy/slate_cont2
Slate fixes
2018-07-16 21:29:20 +01:00
Michael Telatynski
3000099991
add additional checks for hiding autocomplete to prevent text calculation
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 21:27:52 +01:00
Michael Telatynski
bdbc2cbd38
disable spellCheck when the placeholder is shown because "unencrypted"
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 18:32:50 +01:00
Michael Telatynski
c7859fed1a
add heuristic to compare documents to prevent autocomplete flicker
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 18:27:06 +01:00
David Baker
a79caed0c9 Merge remote-tracking branch 'origin/develop' into dbkr/tiny_jitsi_follows_you_between_rooms 2018-07-16 17:21:51 +01:00
David Baker
379d65bd6c
Merge pull request #2064 from matrix-org/t3chguy/slate_cont2
simplify MessageComposerStore and improve its performance
2018-07-16 17:20:48 +01:00
Michael Telatynski
2f1779751b
make the MessageComposerStore stateless for better performance
and inter-tab composition (by simplifying it. WIN-WIN)

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-16 16:56:08 +01:00
David Baker
d16ac4d80c
Merge pull request #1890 from matrix-org/matthew/slate
Replace Draft with Slate
2018-07-16 14:16:25 +01:00
David Baker
4c6419a3c5 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-16 13:24:13 +01:00
David Baker
ff96537048 lint 2018-07-16 11:49:53 +01:00
Michael Telatynski
4850387ae0
add null-guard for stickerpickerWidget in StickerPicker 2018-07-13 14:24:29 +01:00
Bruno Windels
7bbb967ddd
Merge pull request #2053 from matrix-org/dbkr/jitsi_always_on_screen
Implement always-on-screen capability for widgets
2018-07-13 11:14:37 +01:00
David Baker
e56feea9ec Put always-on-screen widgets in top left
always-on-screen widgets now appear in the top-left where the
call preview normally is if you're not in the room that they're in.

Fixes https://github.com/vector-im/riot-web/issues/7007
Based off https://github.com/matrix-org/matrix-react-sdk/pull/2053
2018-07-12 18:43:49 +01:00
David Baker
5a5e967262 Fix avatars vanishing on hover
Turns out the z-index was to make the avatar appear above the
EventTile_line even though it comes before in the DOM (it's
absolutely positioned to overlap with it). Instead, just put
it afterwards in the DOM.
2018-07-12 17:48:49 +01:00
Michael Telatynski
7405c5eff2
specify alternate history storage key to prevent conflicts with draft
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-12 16:35:42 +01:00
David Baker
8f10ee01c6 Implement always-on-screen capability for widgets
As per https://github.com/matrix-org/matrix-doc/issues/1354

This is whitelisted to only jitsi widgets for now as per comment,
mostly because any widget that we may make always-on-screen we need
to preemptively put in a PersistedElement container, which is
unnecessary for any other widget.

Apologies that this does a bunch of refactoring which could have
been split out separately: I only discovered what needed to be
refactored in the process of doing this.

Fixes https://github.com/vector-im/riot-web/issues/6984
2018-07-11 18:07:32 +01:00
Michael Telatynski
b4bc09c335
null-guard savedState since now we're accessing its props
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-11 17:13:33 +01:00
Michael Telatynski
3e05bf19c5
hide autocomplete when moving caret to match existing behaviour
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-11 16:30:45 +01:00
Michael Telatynski
95909de446
fix MessageComposer not marking translatable strings. run gen-i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-11 11:39:55 +01:00
Michael Telatynski
c3aef6e3a0
workaround for tommoor/slate-md-serializer#14
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-11 10:29:14 +01:00
Michael Telatynski
fd4f9679df
convert md<->rt if the stored editorState was in a different state
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-11 09:43:39 +01:00