Bruno Windels
c5c0a181ff
move check for devicelists up in Session.writeSync, and more logging
2021-02-18 19:56:10 +01:00
Bruno Windels
ad0c813833
don't take network time into account in sync log filter
2021-02-18 19:48:19 +01:00
Bruno Windels
f2f9162b85
log pagehide event
2021-02-18 19:47:16 +01:00
Bruno Windels
bd85dc2393
children is undefined here actually, so filter wasn't working properly
2021-02-18 15:38:32 +01:00
Bruno Windels
cd68bb7b3f
log when devices get marked as outdated
2021-02-18 14:00:06 +01:00
Bruno Windels
8539b0c893
also log session in after sync completed as detail level
2021-02-18 13:07:52 +01:00
Bruno Windels
dea11845f5
log encrypted event count in session sync write
2021-02-18 13:07:32 +01:00
Bruno Windels
e590b573fb
log remaining specific room entries as detailed
2021-02-18 12:44:19 +01:00
Bruno Windels
9f9de0988e
don't log here yet as the logger isn't passed from createIdentity yet
2021-02-18 12:44:19 +01:00
Bruno Windels
7524a912c3
use (t)ype rather than kind
2021-02-18 12:44:19 +01:00
Bruno Windels
f321968ac3
add more sync logging
2021-02-18 12:44:19 +01:00
Bruno Windels
e14929bd4f
inherit log level from parent rather than defaulting to info if not set
2021-02-18 12:44:19 +01:00
Bruno Windels
cc916b80de
add app version to logs
2021-02-18 12:44:19 +01:00
Bruno Windels
d201d2c9de
don't use depth based log filtering, also add Detail log level
...
it's hard to make it work with an override where you don't want
to filter by depth if a given loglevel is present in the children.
2021-02-18 12:44:19 +01:00
Bruno Windels
d39c3812b2
Merge pull request #231 from vector-im/bwindels/logs
...
Structured logging
2021-02-17 10:19:46 +00:00
Bruno Windels
5bec4d5a72
comment
2021-02-16 20:05:33 +01:00
Bruno Windels
630ac40f05
this is broken now, but we're not using it anyway, so remove
2021-02-16 20:00:08 +01:00
Bruno Windels
0ccf735148
console log when failing to restore queued items
2021-02-16 19:57:45 +01:00
Bruno Windels
b28eefb2db
do emergency serialization without log filter
2021-02-16 19:53:37 +01:00
Bruno Windels
c3637def2e
ensure any breakage does not disrupt logging
2021-02-16 18:36:41 +01:00
Bruno Windels
2dd8803efc
better error handling if something goes wrong serializing log items
2021-02-16 18:30:23 +01:00
Bruno Windels
338f628627
remove option to anonymize
2021-02-16 18:30:06 +01:00
Bruno Windels
90cfcad5f1
add privacy notice in settings
2021-02-16 18:25:52 +01:00
Bruno Windels
59928432df
better logs filename
2021-02-16 17:46:07 +01:00
Bruno Windels
1f91fa9a94
final flush interval
2021-02-16 17:45:47 +01:00
Bruno Windels
e629a93edd
delete extra log items when over limit,to not have to delete every flush
2021-02-16 17:45:19 +01:00
Bruno Windels
ee4a382578
revert this back
2021-02-16 15:38:43 +01:00
Bruno Windels
5d67db0c5e
Fix NullLogger
2021-02-16 15:35:30 +01:00
Bruno Windels
7dc3707871
add button to export logs
2021-02-16 15:27:24 +01:00
Bruno Windels
48569c28bc
serialize logs as json
2021-02-16 15:08:08 +01:00
Bruno Windels
4defbe1322
simplify log filtering, while also adding depth based filtering
2021-02-16 15:07:17 +01:00
Bruno Windels
78805f0a65
implement dynamic log filtering
...
the logger does not have a base level any more, because there is
no sensible place to configure this.
instead, we allow to dynamically determine what should be logged
after an operation finished by setting the threshold and default
log level inspecting the finished log item.
2021-02-16 11:37:48 +01:00
Bruno Windels
510d5ab2cd
add bool settings type
2021-02-12 19:08:13 +01:00
Bruno Windels
704708bd6c
add some logging to sync
2021-02-12 18:56:26 +01:00
Bruno Windels
07f8500d29
don't read from settings for now, as it is async
2021-02-12 18:55:37 +01:00
Bruno Windels
1183305d71
wrapLog => run is a better name
2021-02-12 18:36:21 +01:00
Bruno Windels
42780df94f
actually track log items, and correctly remove them
2021-02-12 18:36:04 +01:00
Bruno Windels
a53c25d2ae
support logging in hsApi
2021-02-12 18:35:33 +01:00
Bruno Windels
e6c108c6e0
no need to copy it over in viewmodel
2021-02-12 18:06:14 +01:00
Bruno Windels
f65db338cf
make it work
2021-02-12 18:05:39 +01:00
Bruno Windels
89139bba30
expose some meta data on a log export to show before submitting
2021-02-12 16:08:28 +01:00
Bruno Windels
c0a03858eb
add option to anonymize logged values
2021-02-12 16:08:07 +01:00
Bruno Windels
bbab1e9ecc
move base64/58 encoding into platform
...
fixes https://github.com/vector-im/hydrogen-web/issues/99
2021-02-12 16:01:54 +01:00
Bruno Windels
2bb7b3b598
add null logger
2021-02-12 14:06:09 +01:00
Bruno Windels
0763410aa1
filter output when serializing by loglevel
2021-02-12 14:05:51 +01:00
Bruno Windels
4c2abcf9c7
add logger to platform
2021-02-12 13:04:18 +01:00
Bruno Windels
91bd5f638c
finish logging api
2021-02-12 13:04:05 +01:00
Bruno Windels
e515548037
add some comments while debugging a problem
2021-02-11 21:08:06 +01:00
Bruno Windels
89599e9f87
WIP
2021-02-11 21:07:18 +01:00
Bruno Windels
e49639fda2
move textencoder/decoder into platform
2021-02-11 17:29:48 +01:00
Bruno Windels
ac1bbb3937
ensure thumbnail dimensions are integer, fixes #203
2021-02-11 11:15:20 +01:00
Bruno Windels
a9a27133b9
fix #204
2020-11-26 09:49:25 +01:00
Bruno Windels
1c4818cf1d
prevent a new iframe being created for every download
2020-11-23 10:28:20 +01:00
Bruno Windels
2f0f168c6e
show 'sending' while waiting for remote echo for filetile instead of unknown status
2020-11-20 16:38:16 +01:00
Bruno Windels
b7aca076ba
better wording
2020-11-20 16:32:33 +01:00
Bruno Windels
7bf02f42b7
don't use grid to put lightbox on top, as it broke again in IE11
2020-11-20 16:32:13 +01:00
Bruno Windels
83d54351b1
put spacer behind rather than before link to open lightbox
2020-11-20 16:14:32 +01:00
Bruno Windels
45dd539179
also update preference onchange for IE
2020-11-20 16:06:16 +01:00
Bruno Windels
3eec897630
better wording
2020-11-20 16:06:05 +01:00
Bruno Windels
9ab81eea02
add setting for image compression level
2020-11-20 15:51:16 +01:00
Bruno Windels
764cddcdec
can be cached
2020-11-20 11:45:38 +01:00
Bruno Windels
f7a07a9e79
adjust fileview/tile to pendingevent changes
2020-11-20 11:45:14 +01:00
Bruno Windels
628a3b65c6
cancel > remove
2020-11-19 15:02:59 +01:00
Bruno Windels
8b8d06cf3e
show error for attachments still need upload but missing after refresh
2020-11-19 14:42:29 +01:00
Bruno Windels
18407e17a8
toggle popup menu
2020-11-18 20:18:09 +01:00
Bruno Windels
59a92bdf97
vm changes for improved image view
2020-11-18 20:10:05 +01:00
Bruno Windels
0581066350
upload smallest attachments first
...
so you don't get a delay at the end of the upload
when starting a new request
2020-11-18 20:09:27 +01:00
Bruno Windels
a23075a326
make safe to call when no attachments present
2020-11-18 20:09:07 +01:00
Bruno Windels
fba5877b3b
dispose attachment blobs when pending event is removed/closing session
2020-11-18 20:08:42 +01:00
Bruno Windels
f6dbb23f79
better error handling for file and picture upload
2020-11-18 20:07:31 +01:00
Bruno Windels
47147f2d46
progress bar for upload, add cancel button, no lightbox while uploading
2020-11-18 20:06:34 +01:00
Bruno Windels
6f94ca1a4a
make toBlob work on IE11
2020-11-18 16:28:48 +01:00
Bruno Windels
a930dec8db
adjust ImageTile to state machine changes
2020-11-18 13:05:10 +01:00
Bruno Windels
fd81111bfb
merge state machine from AttachmentUpload into PendingEvent
...
to have less state machines, and we are mostly interested in the
aggregate status of all attachments of an event
this will also drive updates through the pending events collection
that already exists rather than an extra observablevalue, so less
housekeeping to update the UI.
2020-11-18 13:04:23 +01:00
Bruno Windels
91f7970d66
Merge branch 'master' into bwindels/upload-images
2020-11-16 19:31:04 +01:00
Bruno Windels
ca7c07a23c
fix #200
2020-11-16 19:29:51 +01:00
Bruno Windels
d1a95c664d
require space after /me
2020-11-16 19:29:29 +01:00
Bruno Windels
671e23a123
basic reporting of image upload progress in %
2020-11-16 15:10:44 +01:00
Bruno Windels
6bd777e7be
make sure cors errors on setting headers don't fail sending the request
2020-11-16 15:10:25 +01:00
Bruno Windels
83cbe78cd6
report attachment upload progress
2020-11-16 10:45:46 +01:00
Bruno Windels
1dd46b875b
this is fine actually, as it will get encrypted.
...
just don't pass it to the upload
2020-11-13 19:22:06 +01:00
Bruno Windels
41738ad660
local echo for image tiles
2020-11-13 19:15:21 +01:00
Bruno Windels
8b82c991e7
wire up image uploads
2020-11-13 19:15:03 +01:00
Bruno Windels
41fb3e742e
fix file upload attachment api changes
2020-11-13 19:13:35 +01:00
Bruno Windels
0292725076
better formatting
2020-11-13 19:10:18 +01:00
Bruno Windels
262cc8936e
don't leak mimetype for encrypted attachments
2020-11-13 19:10:04 +01:00
Bruno Windels
96e46d154c
copyright header for legacy platform
2020-11-13 19:05:09 +01:00
Bruno Windels
791b3ae04f
don't center align link buttons (while at it)
2020-11-13 19:04:46 +01:00
Bruno Windels
d2a4242e5b
support multiple attachments per event
2020-11-13 17:19:19 +01:00
Bruno Windels
14b3c4b701
no need for a dedicated class just to hide it
2020-11-13 16:00:32 +01:00
Bruno Windels
9bb521986b
first draft of generic popup and menu views
2020-11-13 15:58:40 +01:00
Bruno Windels
6fd10b63e5
add device pixel ratio scaling while at it
2020-11-12 13:50:32 +01:00
Bruno Windels
1ad8af34d1
add thumbnailing code
2020-11-12 13:50:06 +01:00
Bruno Windels
f23312b0d3
fix decrypt/encrypt wording in error message
2020-11-11 13:17:05 +01:00
Bruno Windels
8b16d8bc99
handle upload failures better
2020-11-11 13:06:03 +01:00
Bruno Windels
d477be2b41
put paperclip in send file button
2020-11-11 12:57:43 +01:00
Bruno Windels
6384702863
fix file selector for IE11
2020-11-11 12:47:26 +01:00
Bruno Windels
8db7499f5a
support AES-CTR 256 JWK keys in legacy crypto for IE11
2020-11-11 12:44:59 +01:00
Bruno Windels
fd9eccec4d
support local echo in FileTile while uploading
2020-11-11 11:52:06 +01:00
Bruno Windels
af4f3f902f
wait for attachment to be uploaded in send queue
...
also expose attachment from PendingEvent(Entry)
2020-11-11 11:51:39 +01:00
Bruno Windels
48cd4ac95d
track upload error
2020-11-11 11:51:11 +01:00
Bruno Windels
91f15074be
/upload is on /media/r0, not /client/r0
2020-11-11 11:50:40 +01:00
Bruno Windels
366f3c0bba
iv and digest are sent in unpadded base64
2020-11-11 11:50:20 +01:00
Bruno Windels
e9324ad678
support jwk keys to encrypt
2020-11-11 11:47:39 +01:00
Bruno Windels
e2dd9b9f77
fix typos/refactor errors
2020-11-11 11:47:13 +01:00
Bruno Windels
65d02072c8
hook up UI
2020-11-11 11:47:05 +01:00
Bruno Windels
7088b2cdc8
support attachment upload and sending from room api
2020-11-11 10:47:55 +01:00
Bruno Windels
0c70a67ebb
pass platform to room
...
as we'll need it to access crypto and creating blobs
2020-11-11 10:47:19 +01:00
Bruno Windels
c289bcd097
return blob from encryptAttachment
2020-11-11 10:46:37 +01:00
Bruno Windels
32b7b1f064
draft of AttachmentUpload class
2020-11-11 10:46:20 +01:00
Bruno Windels
2890a6aff7
implement attachment uploading in hs api rather than media repo
...
as we need the access token
2020-11-11 10:45:44 +01:00
Bruno Windels
9f2c7c1e32
support uploading blobs in hs api
2020-11-11 10:45:23 +01:00
Bruno Windels
c278b0f4a3
rename blob.blob to blob.nativeBlob
...
also to make the name a bit more unique where we want to do duck typing
2020-11-11 10:44:44 +01:00
Bruno Windels
2cfffa015d
WIP
2020-11-10 22:36:26 +01:00
Bruno Windels
a37d8c0223
implement AES encryption
2020-11-10 19:48:36 +01:00
Bruno Windels
c65e8bea11
clean up properly
2020-11-10 19:05:50 +01:00
Bruno Windels
d14f485292
Merge branch 'master' into bwindels/file-downloads
2020-11-10 18:55:27 +01:00
Bruno Windels
2ad34c2dd2
c/p error for passing arguments to create_outbound
2020-11-10 18:31:33 +01:00
Bruno Windels
f5480b7708
provide random value for IE11
2020-11-10 18:31:18 +01:00
Bruno Windels
ba323c65d6
fix typo in name
2020-11-10 18:30:48 +01:00
Bruno Windels
6fa9471292
remove trailing whitespace
2020-11-10 17:51:39 +01:00
Bruno Windels
2d8000d11d
file tile view
2020-11-10 17:50:53 +01:00
Bruno Windels
a3ca0feda9
file tile view model
2020-11-10 17:50:38 +01:00
Bruno Windels
21a7ec0dff
byte size formatting
2020-11-10 17:50:20 +01:00
Bruno Windels
373a42c7a8
allow downloading plaintext attachments also, with or without cache
2020-11-10 17:49:48 +01:00
Bruno Windels
4477073d6d
add platform method to offer saving a buffer handle
2020-11-10 17:24:30 +01:00
Bruno Windels
de143fdafc
update timestamp when creating a new megolm session
2020-11-10 16:17:56 +01:00
Bruno Windels
a4f610ad3f
support emotes
2020-11-10 15:13:31 +01:00
Bruno Windels
1c978f060e
Merge pull request #182 from Newbytee/submit-for-login
...
Use submit event for login instead of click
2020-11-10 14:09:56 +00:00
Bruno Windels
e4fa4ded6c
hide clear button in composer on IE
2020-11-10 14:02:37 +01:00
Bruno Windels
769feac73c
cleanup
2020-11-10 14:02:27 +01:00
Bruno Windels
fd498b3d24
no need to keep track of promise, fn is internally rate-limited now
2020-11-10 14:02:07 +01:00
Bruno Windels
89c66699d7
some Lock refactoring that I didn't end up needing but still useful
2020-11-10 11:04:53 +01:00
Bruno Windels
f13f1cd593
prevent leaking resources in olm worker
2020-11-10 11:04:39 +01:00
Bruno Windels
5f6ad91ff2
offload creating an olm session to the olm worker
...
so IE11 doesn't lock up when you start typing
2020-11-10 11:04:09 +01:00
Bruno Windels
bd5771e449
remove obsolete comment
2020-11-09 17:22:37 +01:00
Bruno Windels
6572377832
move tracking the room to where we need the devices
2020-11-09 16:50:39 +01:00
Bruno Windels
9cfb3c8e95
only check to pre-share new megolm session every minute
2020-11-09 16:50:05 +01:00
Bruno Windels
44a2febce9
hook it up
2020-11-06 23:43:02 +01:00
Bruno Windels
c6ff4c2517
finish room encryption part
2020-11-06 18:56:32 +01:00
Bruno Windels
d0d1f68a9c
WIP
2020-11-06 16:56:12 +01:00
Bruno Windels
5d12aef6db
support pre-sharing room keys in room encryption
2020-11-06 10:32:37 +01:00
Bruno Windels
85ba1676e5
log non-network errors in service worker to diagnose #187
2020-11-05 22:51:21 +01:00
Bruno Windels
9708e394a0
don't assume the thumbnail was cached already
2020-11-05 22:45:20 +01:00
Bruno Windels
e0c8be3a9a
try to call out when #187 happens
2020-11-05 22:41:33 +01:00
Bruno Windels
c696a75f88
fix #177
2020-11-05 22:37:39 +01:00
Bruno Windels
16542284f3
fix #48
2020-11-05 21:24:14 +01:00
Bruno Windels
b8370d53b6
always throw here so we never get to Ready status when stopped
2020-11-05 21:22:29 +01:00
Bruno Windels
134f018849
always have an error when stopping sync
2020-11-05 21:21:27 +01:00
Bruno Windels
9f453c0984
fix #152
2020-11-05 21:19:34 +01:00
Bruno Windels
b27f6a067f
implement .size for all observable maps
...
as SortedMapList uses it, putting undefined in its list
initially when missing, creating a crash in
the TemplateView that renders it
2020-11-05 12:00:17 +01:00
Newbyte
e112e9c2d2
Use submit event for login trigger
...
Signed-off-by: Newbyte <newbie13xd@gmail.com>
2020-11-05 11:21:04 +01:00
Newbyte
3ab70861cc
Add form to element list
...
Signed-off-by: Newbyte <newbie13xd@gmail.com>
2020-11-05 11:21:04 +01:00
Bruno Windels
0003ddebb5
also fix grid layout
2020-11-03 09:12:11 +01:00
Bruno Windels
9131cf00a3
load images when they becomes partly into view
2020-11-02 14:49:59 +01:00
Bruno Windels
72fdce4a86
fix broken layout after changing to grid
2020-11-02 14:15:24 +01:00
Bruno Windels
a3ec01385b
Merge pull request #178 from vector-im/bwindels/lightbox
...
Lightbox for picture messages
2020-11-02 11:23:10 +00:00
Bruno Windels
f1b557f995
add comment
2020-11-02 11:29:22 +01:00
Bruno Windels
fd28b39e23
fix spacing between spinner and loading text in lightbox
2020-11-02 11:29:09 +01:00
Bruno Windels
7e9e937742
IE11 doesn't calculate padding percentages based on parent width in grid
...
so do progressive fallback. This won't scale the height of the
image tile height, but it will still scale the thumbnail
on narrow viewports, leaving a blank space underneath the image.
2020-11-02 11:16:35 +01:00
Bruno Windels
fbbdaf7dfa
expose IE11 flag in JS as well
2020-11-02 11:16:19 +01:00
Bruno Windels
57da68fb1e
padding for lightbox
2020-10-31 00:25:51 +01:00
Bruno Windels
4d08e415bd
fallback for IE11
2020-10-31 00:25:42 +01:00
Bruno Windels
8507a3eb16
prevent jumps when image loads by adding a spacer
2020-10-31 00:25:05 +01:00
Bruno Windels
5aa2c7dc5c
dom changes for timeline image view
2020-10-30 22:52:54 +01:00
Bruno Windels
5a31bc5f2b
basic focus trapping of lightbox
2020-10-30 22:52:32 +01:00
Bruno Windels
708893022a
use justify/align-self rather than auto margins, works better in IE11
2020-10-30 22:52:08 +01:00
Bruno Windels
a21765757d
don't use position: absolute for scaling images in the timeline
...
as it bleeds through the lightbox on IE11, and is a bad idea anyway
2020-10-30 22:51:57 +01:00
Bruno Windels
581dc95c53
allow adding custom event handlers to a template view
...
so you don't have to remove them yourself
2020-10-30 22:48:56 +01:00
Bruno Windels
c847cfb200
WIP: Esc key on lightbox
2020-10-30 19:59:42 +01:00
Bruno Windels
597a57eae3
too much whitespace
2020-10-30 19:59:21 +01:00
Bruno Windels
c9147e6b9a
implement first draft of image lightbox
2020-10-30 15:20:11 +01:00
Bruno Windels
137264edcb
implement subscribing to a single event
2020-10-30 15:19:51 +01:00
Bruno Windels
7d81306a49
return BufferHandles from the media repository
...
BufferHandles are platform specific handles to a buffer. On web,
they have a .blob and .url property.
2020-10-30 15:18:27 +01:00
Bruno Windels
0691f34650
detect abort error by name here too
2020-10-30 09:55:03 +01:00
Bruno Windels
3008367307
detect AbortError properly, name is a string
2020-10-30 09:54:38 +01:00
Bruno Windels
68a0dd30ca
add lightbox navigation and basic view & view model
2020-10-29 11:12:32 +01:00
Bruno Windels
fe6e4464fd
pass all viewmodel options to tile view models
2020-10-29 11:10:34 +01:00
Bruno Windels
d7ccdd3304
switch main layout from flexbox to grid so we can overlay a lightbox
2020-10-29 11:10:34 +01:00
Bruno Windels
862a0ba56b
show image decryption error
2020-10-29 10:29:08 +01:00
Bruno Windels
d1e78a735a
show error in label for now
2020-10-29 10:18:05 +01:00
Bruno Windels
0405af0116
disable click-to-zoom on image
...
so we can release before the lightbox ix ready
2020-10-29 10:17:19 +01:00
Bruno Windels
b69464b87d
improve picture styling
2020-10-27 16:47:22 +01:00
Bruno Windels
d55f38a9e9
don't reimplement removing an item from the list
2020-10-27 16:26:45 +01:00
Bruno Windels
97c3a4b8f3
store error when loading encrypted images
2020-10-27 16:21:08 +01:00
Bruno Windels
e7ff6decbf
remove unneeded quotes
2020-10-27 16:20:41 +01:00
Bruno Windels
c9efee77f2
if shape is update and item should be different view, recreate the tile
2020-10-27 16:20:04 +01:00
Bruno Windels
77dca5dd55
add update parameter when replacing tile
2020-10-27 16:19:36 +01:00
Bruno Windels
932542bea0
some more cleanup
2020-10-27 14:35:47 +01:00
Bruno Windels
fcc4c21ad2
filter mime types for blob urls
2020-10-27 14:35:33 +01:00
Bruno Windels
ade01f6cf7
space
2020-10-27 13:51:40 +01:00
Bruno Windels
2ebce8eb7b
set responseType after calling open
2020-10-27 13:50:09 +01:00
Bruno Windels
a61d7fc68a
jwk key support for aesjs
2020-10-27 13:21:12 +01:00
Bruno Windels
a3aa25449b
make it work with xhr
2020-10-26 17:37:32 +01:00
Bruno Windels
ee1e62207c
apply platform changes to decrypting images
2020-10-26 17:18:17 +01:00
Bruno Windels
3ed5ea8b0b
Merge branch 'master' into bwindels/decrypt-images
2020-10-26 17:08:29 +01:00
Bruno Windels
98be9a8f4d
fix legacy spinner
2020-10-26 16:44:12 +01:00
Bruno Windels
1a518cdd28
more refactor fixes
2020-10-26 16:31:30 +01:00
Bruno Windels
03351d2e1f
extract platform class to put all platform specific code in
2020-10-26 15:44:11 +01:00
Bruno Windels
46fd769dda
(re)move old (compile-time) platform code
2020-10-26 10:34:35 +01:00