RMidhunSuresh
2ceaebbd1f
Don't find roomId in getter
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-18 18:17:37 +05:30
RMidhunSuresh
7e177f6953
Modify open-room action to fix bug
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-18 17:43:40 +05:30
Danila Fedorin
f239199b1b
Add rendering for horizontal rules
2021-08-06 15:50:03 -07:00
Bruno Windels
2c8e259339
focus composer when replying
2021-08-06 23:43:10 +02:00
Bruno Windels
c3177b06bf
Merge pull request #418 from vector-im/replies
...
Sending replies
2021-08-06 21:28:42 +00:00
Bruno Windels
9f0c3b9cea
await sending a message before clearing composer (this was missing all along)
2021-08-06 23:06:58 +02:00
Danila Fedorin
053c94b60e
Stop passing room to tiles in tests
2021-08-06 11:02:41 -07:00
Danila Fedorin
f8dae8e20c
Merge branch 'replies' of github.com:vector-im/hydrogen-web into replies
2021-08-06 10:54:33 -07:00
Danila Fedorin
bf1f288a92
Make RoomViewModel's room public and stop feeding it to tileCreator
2021-08-06 10:40:25 -07:00
Danila Fedorin
4c1aeb342a
Add two new tests for replies
2021-08-06 10:35:45 -07:00
Danila Fedorin
8dc80e68a7
Remove out-of-date comment
2021-08-06 10:31:01 -07:00
Bruno Windels
2a92363317
use disposeTracked
2021-08-06 17:56:02 +02:00
Bruno Windels
3feaf38252
use internalId to compare so we don't have to cache the entry id separately
2021-08-06 17:53:58 +02:00
Bruno Windels
5426908444
add copyright header
2021-08-06 17:49:39 +02:00
RMidhunSuresh
b97b9da14a
Link to member-panel from avatar
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-06 20:51:39 +05:30
RMidhunSuresh
be57352f71
Move PowerLevels.js into /room
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-06 19:49:48 +05:30
Bruno Windels
1862e31396
Merge pull request #417 from MidhunSureshR/member-details
...
Member Panel - PR 2 - UI
2021-08-06 11:18:52 +00:00
RMidhunSuresh
bc8e6237d6
Merge suggestion from Github
2021-08-06 16:05:08 +05:30
R Midhun Suresh
3ff55204f3
No need for lambda here
...
Co-authored-by: Bruno Windels <bruno@windels.cloud>
2021-08-06 16:04:51 +05:30
RMidhunSuresh
dbd205701c
Remove unused prop
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-06 16:03:19 +05:30
RMidhunSuresh
86ddfc1e9e
Only need to emit
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-06 13:06:38 +05:30
R Midhun Suresh
974d9bf199
Don't cache powerlevel value
...
Co-authored-by: Bruno Windels <bruno@windels.cloud>
2021-08-06 13:02:58 +05:30
Danila Fedorin
21b067eaff
Create new tiles instead of keeping old ones
2021-08-05 10:05:50 -07:00
Danila Fedorin
434882069e
Lift tiles creator to RoomViewModel
2021-08-05 09:39:59 -07:00
RMidhunSuresh
d3ea26a38a
Use i8n in role
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
862e8569a9
Describe what changed in emitChange()
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
a16c3aacab
Create getter
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
0ff0850979
Remove dm user option
...
- I don't know why but I thought .../open-room/<user_id> would open an
invite view to a room with the specified user.
- Does not work like that, so removed.
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
d056a9f961
Keep memberlist until rightpanel is closed
...
- This should make switching between memberlist and
member-details panel smoother for large rooms
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
65b1a1958a
Add link to open member details
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
7dacbdb700
Show back button
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
ef17808fbd
Fallback to memberlist if member not available
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
f9b1068bae
Add links
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
fe6551ff3c
Use powerlevel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
c2b9c3f726
Add isEncrypted to vm
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
7ef7c419e3
Add basic UI and styling
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
acdba8fc02
Add license headers
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
e4bb20575b
Create navigation and add to right panel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
RMidhunSuresh
fdd4caa0b7
Create vm and view
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-08-05 16:32:30 +05:30
Danila Fedorin
a9731f5a1d
Clean up code for inserting emotes
2021-08-04 16:02:37 -07:00
Danila Fedorin
b4a0c31e1c
Update test code with new function signature
2021-08-04 15:54:11 -07:00
Danila Fedorin
508214a46b
Insert emote text after quotes
2021-08-04 15:50:42 -07:00
Danila Fedorin
b5f16468ce
Add a flag to strip replies
2021-08-04 15:31:25 -07:00
Danila Fedorin
1a0e305212
Extract ComposerViewModel to its own file
2021-08-03 14:02:11 -07:00
Danila Fedorin
99a630fb84
Add a note on TilesCollection and diposing of tiles
2021-07-29 10:46:17 -07:00
Danila Fedorin
e2ad589aa3
Go through and clean up affected files.
2021-07-27 16:51:34 -07:00
Danila Fedorin
242a9c209b
Handle replies in EventEntry
2021-07-23 14:34:11 -07:00
RMidhunSuresh
281dc8bdb4
Add missing license headers
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-23 18:05:48 +05:30
Danila Fedorin
7adb0e5ddc
Get rid of intermediate view model
2021-07-22 10:56:30 -07:00
Danila Fedorin
d33d55376a
Put reply into its own view model.
...
Otherwise, we re-render the reply message on
every keystroke.
2021-07-20 16:51:36 -07:00
Danila Fedorin
f486bc0e04
Reset reply state after successfully sending a reply
2021-07-20 13:01:04 -07:00
Danila Fedorin
46215b3c51
Add the ability to reply
2021-07-20 12:53:31 -07:00
Danila Fedorin
fdcafaf6d3
Add _replyTo field to ComposerViewModel that can be set from a message
2021-07-19 16:10:35 -07:00
Danila Fedorin
0c0633fdd4
Fix body.string in BaseMessageTile
2021-07-16 14:28:18 -07:00
Danila Fedorin
fb29913ef0
Add lint fixes
2021-07-16 14:21:39 -07:00
Danila Fedorin
c835dc324e
Merge branch 'master' of github.com:vector-im/hydrogen-web into formatted-messages
2021-07-16 14:05:43 -07:00
Danila Fedorin
3e4314e7f3
Update comment based on 'small object' version of code.
2021-07-16 13:53:14 -07:00
Danila Fedorin
da48ddec83
Fix == typo
2021-07-16 13:49:33 -07:00
Danila Fedorin
7cfdd4f663
Rename TextTileFormat to BodyFormat
2021-07-16 13:46:25 -07:00
Danila Fedorin
031ce42831
Properly cache message format.
2021-07-16 13:43:40 -07:00
Danila Fedorin
9e1f57a2b1
Switch tiles to using enums and checking format.
2021-07-16 13:36:26 -07:00
Danila Fedorin
1e2945ca54
Add license headers to new files.
2021-07-16 13:12:26 -07:00
Danila Fedorin
900ebfe289
Properly pass children to list block
2021-07-16 13:05:47 -07:00
Danila Fedorin
cdf85edad9
Move pill parsing into deserialize and avoid intermediate objects.
2021-07-16 13:01:33 -07:00
Danila Fedorin
eacc033929
Make code blocks accept non-code tags.
2021-07-16 11:38:41 -07:00
Bruno Windels
b5b19abb24
only allow links for the schemas mentioned in the spec
2021-07-16 18:32:40 +02:00
RMidhunSuresh
ec4a783759
Fix disambiguator
...
- Do not disambiguate name on room rejoin
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ec8b6f9dd2
Inline method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
694b627309
Inline method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
da733f9f8a
Move files to members directory
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
60793798c7
Subscribe to powerLevels
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
960f2c283e
Remove comment
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
5873ab63ba
Release memberlist after panel is closed
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
c7e12c98b5
Make addPanelIfNeeded more generic
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
f98a8847e3
Implement UX
...
- Add chevron to member count in room details
- Make some rows in panel buttons
- Add user chrome to right panel
- Style UI
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
8e55967db3
Create UI to open memberlist from details panel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
2502c4024a
Fix broken tests
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
8a976ef24b
Make powerLevels observable
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ea0851eb94
Keep memberlist panel open on room/grid change
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
db515d48c1
Inline flatten method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
53fc6a7af9
Check prev name is string
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
11d411c9a9
Add failing test
...
For empty names not un-disambiguating
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
89e256e563
Return array to prevent fetching again
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ea06d4f88e
Eliminate double lookup
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
da1e981948
name changes
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ab0a48ab31
rename rightpanel to right-panel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
3bb82e55bf
Disambiguator is not async
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
e935423814
Remove duplication in RightPanelViewModel
2021-07-16 17:08:18 +05:30
RMidhunSuresh
bcfd1bd135
Support loading view for all panels
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
7139711314
Add avatar to tile
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
86c1550850
Switch to collator for perf reasons
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ef40027502
Call disambiguate on update/map
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
bcb46fc54a
Make tile vm support disambiguation
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
b8542c6754
Implement name disambiguation
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
404129f60e
Settle on MappedMap
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
0819dcb29e
Use MappedList instead of MappedMap
...
- MappedList supports an optional updater method
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
b62473ae79
Add update method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
a1e3ff3ed8
Use name instead of displayName
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
a9ff6ab026
Sort memberlist using powerlevel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
3e23392a0e
Consider powerlevels in comparator and add tests
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
ddb7a16fb8
Make member private
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
a765d7fc7d
Create memberlist view from rightpanel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
f3c7ab337d
Remove code from session view/vm
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
dfe7385611
Accommodate "rightpanel" navigation segment
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
8b01ca502e
Create RightPanel from SessionViewModel
...
- Also remove old methods used in RoomDetails
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
b74e4452dd
Move rightpanel to separate view and vm
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
7e6e4ecfab
Duplicate navigation from room details
...
- TODO: Remove duplication
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
RMidhunSuresh
69237fce85
Basic barebones of memberlist view
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-07-16 17:08:18 +05:30
Danila Fedorin
d69b78469c
Add table viewing code.
2021-07-15 13:19:54 -07:00
Danila Fedorin
c13daedcb0
Ignore non-absolute links.
2021-07-15 13:15:56 -07:00
Danila Fedorin
025ab16668
Fix /me body rendering.
2021-07-14 18:10:59 -07:00
Danila Fedorin
038b101ed7
Render matrix.to user links as pills
2021-07-14 17:57:53 -07:00
Danila Fedorin
78d7d556e4
Add blockquote and del elements.
2021-07-14 12:38:55 -07:00
Danila Fedorin
763e1cd5de
Add tentative version of linkification.
2021-07-13 16:56:46 -07:00
Danila Fedorin
0c05ff459c
Add another test.
2021-07-13 15:14:03 -07:00
Danila Fedorin
5e39eb8f6c
Do some additional validation, blocking block nodes inside inline nodes.
2021-07-13 14:47:10 -07:00
Danila Fedorin
4b92903ddd
Add a test for auto-closing tags.
2021-07-12 15:16:04 -07:00
Danila Fedorin
4022c6121b
Switch to DOMPurify in platform layer for sanitization.
2021-07-12 15:00:16 -07:00
Danila Fedorin
012ef2b215
Validate w/h and avoid use of properties object.
2021-07-12 13:42:39 -07:00
Danila Fedorin
1e9cdbafd4
Move test-specific code into the testing function.
2021-07-12 13:31:33 -07:00
Danila Fedorin
fd17ffecfb
Pass parameters to parseHTMLBody directly instead of via object.
2021-07-12 12:55:33 -07:00
Danila Fedorin
c261b9fb23
Avoid intermediate objects while parsing TextTiles' bodies.
2021-07-12 12:47:22 -07:00
Danila Fedorin
9304ca330e
Rewrite deserialize as a class to avoid passing options
around.
2021-07-12 12:19:51 -07:00
Danila Fedorin
abd62373e5
Remove copy of MediaRepository mxcUrl parsing.
2021-07-09 13:09:19 -07:00
Danila Fedorin
1435c2c9a2
Add HTML sanitization to domain layer.
2021-07-09 13:06:24 -07:00
Danila Fedorin
d38c52d311
Display images in messages
2021-07-08 00:16:58 -07:00
Danila Fedorin
c582b723bd
Start working on images.
2021-07-07 23:40:16 -07:00
Danila Fedorin
eca5308742
Move deserialization into domain and fix tests.
2021-07-07 12:21:10 -07:00
Danila Fedorin
e56b15237e
Parse formatted message bodies in addition to plain ones.
2021-07-06 16:14:04 -07:00
Danila Fedorin
6ba2deffef
Make small tweaks to formatted representation.
2021-07-02 18:19:40 -07:00
Danila Fedorin
94f6c99ea6
Begin a parser implementation from HTML into an internal representation.
2021-07-02 00:18:37 -07:00
Danila Fedorin
4ee15005f5
Inline code blocks don't contain other elements
2021-07-01 13:55:01 -07:00
Danila Fedorin
fd12baae3b
Add some other message parts as demo.
2021-07-01 13:55:01 -07:00
Danila Fedorin
ad868818c7
Add some initial thoughts on the implementation.
2021-07-01 13:55:01 -07:00
Danila Fedorin
ee1f1500e9
Roll back to using heroes for computing DM color
2021-06-30 15:07:40 -07:00
Danila Fedorin
dec0683145
Correctly color archived and invited rooms
2021-06-29 16:50:42 -07:00
Danila Fedorin
6527a0c677
Make the room color match up on the left panel, too.
2021-06-28 11:54:49 -07:00
Danila Fedorin
97854423c4
Ensure DM rooms have the same color in timeline and left panel.
2021-06-28 11:44:27 -07:00
Bruno Windels
09aba78803
Merge branch 'master' into room-info
2021-06-24 15:06:37 +00:00
Bruno Windels
dbaef5117a
Merge pull request #384 from vector-im/bwindels/reactions
...
Reactions
2021-06-24 15:01:44 +00:00
Bruno Windels
bb6417dab9
fix lint
2021-06-24 15:24:53 +02:00
Bruno Windels
5984e8dd6d
don't show reactions for redacted messages
2021-06-24 14:49:43 +02:00
Bruno Windels
787308375c
prevent toggling in vm while already busy
...
otherwise the check in SendQueue to prevent duplicates might fail
2021-06-24 14:33:16 +02:00
Bruno Windels
299294daff
prevent re(d)action in left/kicked room
2021-06-24 14:24:22 +02:00
Bruno Windels
3fa0f234bb
not used
2021-06-24 14:12:55 +02:00
Bruno Windels
366d3761b8
remove waiting for update event (it might not come in case of dupe)
...
also remove duplicate logging impl for re(d)action at cost of
double haveAnnotation call
2021-06-24 13:35:59 +02:00
Bruno Windels
7557e2f437
not used
2021-06-24 13:26:14 +02:00
Bruno Windels
38b465cb9d
rename vm.toggleReaction to vm.toggle
2021-06-24 13:15:20 +02:00
Bruno Windels
a4a7c23148
use pending re(d)action timestamp to have stable reaction sorting order
...
also move more logic into the matrix layer, from Reaction(s)ViewModel
to PendingAnnotation
2021-06-24 12:26:38 +02:00
RMidhunSuresh
eb35f46214
Make sure room does exist before creating vm
...
- This will stop the code from throwing when opening /details on
UnknownRoomView.
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-24 14:58:02 +05:30
RMidhunSuresh
e2fd90bdc2
Remove Segment import
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-24 13:48:53 +05:30
Bruno Windels
c585d76ce5
also clear pending reaction promise when an error is thrown
2021-06-23 17:47:47 +02:00
Bruno Windels
1a5a64864a
don't double log redactReaction
2021-06-23 17:47:18 +02:00
Bruno Windels
48588687a5
share logic whether have reacted already between basemsgtile & reactvm
2021-06-23 15:38:12 +02:00
Bruno Windels
a1d24894eb
this will block if we have a pending redaction & reaction
...
so the reaction won't be aborted
2021-06-23 11:45:24 +02:00
Bruno Windels
442d4cce03
make the react/redactReaction promise only return after update happened
2021-06-23 11:44:53 +02:00
Bruno Windels
18562d30d8
integration tests for local echo of toggling reactions
2021-06-23 11:43:14 +02:00
Bruno Windels
b153613200
determine toggle state correctly with both pending redaction & reaction
2021-06-23 11:41:28 +02:00
RMidhunSuresh
12305be06a
Fix issue #397
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-19 16:01:02 +05:30
Bruno Windels
099f99a96b
check power levels to see if we can react
2021-06-17 09:41:25 +02:00
Bruno Windels
fd54539e1c
clarify comment
2021-06-17 09:41:10 +02:00
Bruno Windels
94635a18e0
actually, 0 or -1 mean you have a local redaction
2021-06-16 12:41:42 +02:00
Bruno Windels
3b629622d9
need to keep pending count around if 0 or less for redaction local echo
...
also need to be able to tell the difference between no pending reactions
and redactions and the sum being 0 (having both a redaction and
reaction) so we keep isPending to true
2021-06-16 10:23:22 +02:00
Bruno Windels
e5c1094153
WIP
2021-06-15 19:06:41 +02:00
RMidhunSuresh
4f05d9a5b7
Make navigation changes in one go
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-15 14:34:26 +05:30
RMidhunSuresh
97e484b8e6
Rename toggle --> open
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-15 14:30:27 +05:30
RMidhunSuresh
88a1e34987
Unsubscribe on dispose
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-14 21:04:44 +05:30
RMidhunSuresh
7b811aa927
Remove space after brace in two places
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-14 20:33:32 +05:30
RMidhunSuresh
e10b455b27
Rename method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-14 20:32:05 +05:30
Bruno Windels
75ee509361
fix lint
2021-06-11 11:30:11 +02:00
Bruno Windels
81a721f880
make equality stable in comparator for reaction
2021-06-11 11:04:48 +02:00
Bruno Windels
1d9709d4e3
also compare by key if the timestamps are the same
2021-06-11 11:02:31 +02:00
Bruno Windels
757e08c62c
WIP 4
2021-06-10 18:29:10 +02:00
RMidhunSuresh
f3f1436bb0
Rename room info to room details everywhere
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
efd37d811f
Update on changes to vm
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
008f3601ca
Remove link support from Menu
...
- Not needed anymore since every link item has been rewritten as a
button.
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
332fbdda84
Move variable to scope of conditional
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
7fbcf89539
Remove unncessary empty line
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
eb870cfc23
Use url instead of link
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
fcc2afba08
Do not compute link in getter
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
04065847dc
Remove unused getter
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
c6f3b1fbbe
Do not use private props from room summary
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
5b74038912
Check value of details everywhere
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
b2448e1207
Calculate path when button is clicked
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
a4bcb21a85
Move details handling to separate function
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
7f922afe79
Reduce duplication in code
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
04933acbfb
Add missing checks
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
8d254c91e3
Undo formatting/stylistic changes
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
3273682155
Do not show room id instead of canonical alias
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
00dbd3db06
Add menu entry to launch RoomInfoView
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
426d0779ee
Keep RoomInfoView open across room/grid changes
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
02d79b52a4
Prefer canonical alias over room_id if available
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
2dcec6343d
Info icon should open/close view alternatively
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
9ac415fa4f
Show panel when first visit contains /details
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
4edc58ebcf
Add button in Room header to open details
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
37367cde65
Make close button close the view
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
6f1b77b6fa
Add room avatar to RoomInfoView
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
191eb09a76
Fallback to canonical alias if no names found
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
9a605cc6c6
Remove unnecessary check
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
c3333f5fe8
Extract method
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
ddaa9b46c0
Dispose vm preemptively
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
7e38c3ea88
Remove right panel on grid update if needed
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
439910f6ca
Handle case when path.get() may be null
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
96959a3c4c
Put name of property in emitChange
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
986271d02a
Add code to toggle RoomInformation panel
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
RMidhunSuresh
c7ba472042
Add view and vm for RoomInformation
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-06-09 16:51:18 +05:30
Bruno Windels
206d18f498
WIP2
2021-06-08 16:56:17 +02:00
Bruno Windels
2ebadb36c3
WIP
2021-06-08 13:20:55 +02:00
Bruno Windels
280de98858
fix lint
2021-06-04 16:41:37 +02:00
Bruno Windels
b7402ce43c
support local echo for adding a reaction
2021-06-04 15:34:44 +02:00
Bruno Windels
3e2b7ba5fa
obsolete, already provided in parent class
2021-06-03 21:01:26 +02:00
Bruno Windels
1385a22e60
don't recreate the reactions after clearing it with the last one removed
2021-06-03 21:00:57 +02:00
Bruno Windels
cc444fa207
we actually don't need any of the view model infrastructure
...
all the updates go over the observable list
2021-06-03 21:00:25 +02:00
Bruno Windels
8d4d9c6e8d
WIP
2021-06-03 19:57:48 +02:00
Bruno Windels
2eb2e4e9b3
more stable sorting order for reactions
2021-06-03 19:57:29 +02:00
Bruno Windels
bb8acbefa3
support undoing a reaction
2021-06-03 19:57:16 +02:00
Bruno Windels
20abb01ee8
very basic way of sending a reaction
2021-06-03 19:16:53 +02:00
Bruno Windels
2152d5e833
expose reactions on base message tile as vm with observable list
2021-06-03 19:15:49 +02:00
Bruno Windels
b05345ee27
only show redacted messages
2021-06-03 16:50:37 +02:00
Bruno Windels
b83613924c
don't assume there is at least 1 tile before loading at top
...
it can happen that all tiles are not renderable, and we should just
keep calling loadAtTop
2021-06-03 09:25:56 +02:00
Bruno Windels
7a96f84cab
also show redaction reason for redaction local echo
2021-06-02 12:17:09 +02:00
Bruno Windels
15f6ab8b7e
only show cancel option if not already sending
2021-06-02 11:56:15 +02:00
Bruno Windels
dc2e21495b
explain why this is needed
2021-05-31 15:46:57 +02:00
Bruno Windels
8196a02f9d
don't even need isOwn member anymore
2021-05-31 15:25:01 +02:00
Bruno Windels
00231443d3
timeline has the own member, so can just use timeline, not ownUserId
2021-05-31 15:18:44 +02:00
Bruno Windels
606d40c9d4
simplify canRedact logic in view by overriding in RedactedTile
2021-05-31 13:55:08 +02:00
Bruno Windels
23459aad52
check if you are allowed to redact a message
2021-05-31 13:52:03 +02:00
Bruno Windels
762ed96a3b
Not needed as both evententry and pendingevententry return timestamp
2021-05-31 11:58:01 +02:00
Bruno Windels
0596ca06b1
emit remove before linking up sibling tiles
...
otherwise emitting the update from updatePreviousSibling has
the wrong idx
2021-05-31 11:56:41 +02:00
Bruno Windels
c6e2607f1f
guard against updates emitted while populating during first subscription
...
This came up now because Timeline uses a MappedList to map PendingEvents
to PendingEventEntries. In the map function, we setup links between
entries to support local echo for relations. When opening a timeline
that has unsent relations, the initial populating of the MappedList
will try to emit an update for the target entry in remoteEntries.
This all happens while the ListView of the timeline is calling subscribe
and all collections in the chain are populating themselves based on
their sources.
This usually entails calling subscribe on the source,
and now you are subscribed, iterate over the source (as you're not
allowed to query an unsubscribed observable collection, as it might not
be populated yet, and even if it did, it wouldn't be guaranteed to be
up to date as events aren't flowing yet).
So in this concrete example, TilesCollection hadn't populated its tiles
yet and when the update to the target of the unsent relation reached
TilesCollection, the tiles array was still null and it crashed.
I thought what would be the best way to fix this and have a solid model
for observable collections to ensure they are always compatible with
each other. I considered splitting up the subscription process in two
steps where you'd first populate the source and then explicitly start
events flowing.
I didn't go with this way because it's really only updates that
make sense to be emitted during setup.
A missed update wouldn't usually bring the collections out of sync
like a missed add or remove would. It would just mean the UI isn't
updated (or any subsequent filtered collections are not updated),
but this should be fine to ignore during setup, as you can rely
on the subscribing collections down the chain picking up the update
while populating. If we ever want to support add or remove events
during setup, we would have to explicitly support them, but for now
they are correct to throw.
So for now, just ignore update events that happen during setup
where needed.
2021-05-27 10:02:05 +02:00
Bruno Windels
a8e43d4850
remove leftover logging
2021-05-27 09:18:22 +02:00
Bruno Windels
56495c9d13
fix gap failing to fill 2nd time + unit regression test
2021-05-27 09:10:10 +02:00
Bruno Windels
ca4d09e923
add logging and return promise from Tile.redact
2021-05-26 13:08:54 +02:00
Bruno Windels
ce7147e463
put redactions in their own view, and allow aborting while still queued
2021-05-26 13:07:56 +02:00
Bruno Windels
cb622be653
rerender tile when becoming or stopped being redacted
2021-05-25 12:58:20 +02:00
Bruno Windels
8a8c5569dc
provide redact method on tile and room
...
also add some logging
2021-05-20 14:53:17 +02:00
Bruno Windels
b655c34bbb
also show reason for redaction
2021-05-20 13:20:12 +02:00
Bruno Windels
780ad44032
render redacted messages
2021-05-20 13:15:35 +02:00
Bruno Windels
df8686099f
Merge pull request #356 from MidhunSureshR/linkify-doc
...
Add jsdoc comments for clickable link code + Minor Changes
2021-05-18 13:30:23 +00:00
Bruno Windels
754e7e7bb2
clarify with comments
2021-05-18 11:54:18 +02:00
Bruno Windels
f92b1df4fc
update copyright comments
2021-05-18 11:54:10 +02:00
Bruno Windels
54798d3079
unreachable now
2021-05-18 11:50:02 +02:00
Bruno Windels
2cf100efaa
refine unknown room view
2021-05-18 11:46:55 +02:00
Bruno Windels
c04a8140a3
offer to rejoin archived room from menu
2021-05-18 11:07:46 +02:00
Bruno Windels
03be63572d
ask to join when room id is unknown
2021-05-18 11:07:19 +02:00
Bruno Windels
3acb3bb48c
fix memory leak when switching room ids
2021-05-18 11:06:48 +02:00
RMidhunSuresh
72f58b6001
Change lines[i] to line
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-05-18 14:26:56 +05:30
RMidhunSuresh
11d551f8a3
Add js-doc for parsePlainBody
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-05-17 20:39:23 +05:30
RMidhunSuresh
d671bcec31
Add js-docs for linkify function
...
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-05-17 20:32:35 +05:30
Bruno Windels
645470cd03
no need for private prop here
2021-05-17 12:45:55 +02:00