Commit graph

1114 commits

Author SHA1 Message Date
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
Bruno Windels 06e4dea590 move ui and dom under platform/web 2020-10-26 10:28:11 +01:00
Bruno Windels 2e0d1363c7 fix 2020-10-26 10:16:23 +01:00
Bruno Windels a6224135e3 extract blob url code to platform (WIP) 2020-10-26 10:14:46 +01:00
Bruno Windels 4fd71279cf don't disable cache for media repository downloads 2020-10-26 09:58:39 +01:00
Bruno Windels cbd48aa528 only load main image when clicking thumbnail 2020-10-26 09:49:42 +01:00
Bruno Windels 6a468a0883 decrypt attachment code 2020-10-23 17:45:15 +02:00
Bruno Windels 3a6268f0c1 basic PoC of image decryption working
needs looooaaads of cleanup still
2020-10-23 17:25:11 +02:00
Bruno Windels f214c53fa9 add @internal and other comments to Session 2020-10-23 12:59:40 +02:00
Bruno Windels 62c8d6574c fix index.html not being restored from cache when offline on #hash url 2020-10-23 12:58:45 +02:00
Bruno Windels df8eed14aa expose whether we already have a 4s key,to show the 4s setup in settings
it's a tri-state of null/false/true with null meaning we need to
go online first to know as only then we try to setup session backup
2020-10-23 12:57:47 +02:00
Bruno Windels df72e829bf setup session backup as part of start method, so we know we're online
also don't upload OTKs in case of existing account until
catchup sync has happened
2020-10-23 12:22:52 +02:00
Bruno Windels f1aef6c034 render should return nodes otherwise the mapView binding doesn't work
this broke e2ee messages appearing when decrypted
2020-10-21 12:10:42 +02:00
Bruno Windels 7459985e00 show storage usage in settings 2020-10-20 17:50:43 +02:00
Bruno Windels 545a2e481a prevent cached thumbnails from being opaque responses
fixes https://github.com/vector-im/hydrogen-web/issues/169
2020-10-20 17:28:42 +02:00
Bruno Windels a7a922680d request persisted storage when logging in/restoring a session 2020-10-20 17:02:34 +02:00
Bruno Windels 2b93d50396 dont crash when value is undefined 2020-10-20 16:51:51 +02:00
Bruno Windels 4dd303e558 remove unused code 2020-10-20 15:29:36 +02:00
Bruno Windels 1e1b254678 adjust prop names 2020-10-20 15:26:22 +02:00
Bruno Windels 601bdbb25d make session backup banner dismissable 2020-10-20 14:42:17 +02:00
Bruno Windels 446d30469b improve wording and cleanup 2020-10-20 12:12:07 +02:00
Bruno Windels 98d7ffe87c add button to set up field 2020-10-20 12:11:58 +02:00
Bruno Windels 16e0f515dc make text not sprawl across screen on large monitors 2020-10-20 12:10:56 +02:00
Bruno Windels 6f09bd97b6 move setting view models in own dir / file 2020-10-20 12:10:41 +02:00
Bruno Windels 6f82d81f39 better session backup ui 2020-10-19 18:29:13 +02:00
Bruno Windels d3b7d176b8 extract SettingsView into own file
also fix some copyright attributions
2020-10-19 14:55:01 +02:00
Bruno Windels 1fe3f646dc further style settings page 2020-10-19 14:53:05 +02:00
Bruno Windels d8f8342a10 make middle panel responsive styling + hide back b. + header css generic 2020-10-19 14:52:18 +02:00
Bruno Windels 1e599be142 Merge branch 'master' into bwindels/settings-screen 2020-10-19 13:45:17 +02:00
Bruno Windels 6bf8e976cb don't assign timelineVM before loaded, so prop doesn't return it
... if the binding happens to be evaluating (which it was during mount)

follow-up from bwindels/fix-crash-switch-rooms-too-fast
2020-10-19 13:39:19 +02:00
Bruno Windels f07b4a6554
Merge pull request #167 from vector-im/bwindels/fix-redirects
Fix back button not working when changing rooms
2020-10-19 11:01:07 +00:00
Bruno Windels cdcdc07c06 fix a crash when switching rooms before the messages have loaded
as we were not disposing the timeline view model
(but still not leaking though)
2020-10-19 12:57:21 +02:00
Bruno Windels 8357260133 fix an applying an url also pushing a copy of the url back on history
it should replace instead, as it is a redirect
2020-10-19 12:55:42 +02:00
Bruno Windels fb273782bf use handleEvent in History so we don't have to bind 2020-10-19 12:55:10 +02:00
Bruno Windels 3e34ccb7e1 rename, I think, last occurrence of brawl to hydrogen 👋 2020-10-19 12:52:57 +02:00
Bruno Windels db102e63d2 Merge branch 'master' into bwindels/settings-screen 2020-10-19 10:13:41 +02:00
Bruno Windels 90910dae15 render multiline messages with br's 2020-10-19 10:00:32 +02:00
Bruno Windels 4828e141c9 add br tag to html template 2020-10-19 10:00:18 +02:00
Bruno Windels efe6956a79 support render method and value in StaticView 2020-10-19 09:59:56 +02:00
Bruno Windels 974f77a71d WIP 2020-10-16 18:06:20 +02:00
Bruno Windels 90435a8fb7 semicolons, add them 2020-10-16 15:48:49 +02:00
Bruno Windels e599d8b6fa also clear 2020-10-16 15:47:13 +02:00
Bruno Windels 74e6d018f4 ensure url creation does not race on the current path of the navigation 2020-10-16 15:46:06 +02:00
Bruno Windels 0ca926d427 claim clients immediately from service worker 2020-10-16 14:52:34 +02:00
Bruno Windels 743cdd0bea safari is tooo fast and skips it when it shouldn't
also, I've never had the registration fail, seems very unlikely
2020-10-16 13:26:19 +02:00
Bruno Windels c125335ef0 undo debug squibels 2020-10-16 13:03:16 +02:00
Bruno Windels 5a30855227 rename urlRouter option in view models to urlCreator 2020-10-16 13:02:21 +02:00
Bruno Windels 0d622164df close session db in other tabs when opening 2020-10-16 12:50:37 +02:00
Bruno Windels fc61729cb3 support closing session in other clients in service worker 2020-10-16 12:50:19 +02:00
Bruno Windels 101c7015f2 move service worker code in bundle, and support closing sessions 2020-10-16 12:49:42 +02:00
Bruno Windels 788bce7904 reduce navigation boilerplate
this makes the url router adjust the url when the navigation path is
changed, instead of doing urlRouter.applyUrl() and
urlRouter.history.pushUrl().

This history field and applyUrl method on URLRouter are now private,
as the URLRouter should only be used to generate urls you want to
put in an <a href="..."></a>, anything else should use navigator.push()
2020-10-16 12:46:14 +02:00
Bruno Windels ddf7d01760 WIP working 2020-10-15 21:35:10 +02:00
Bruno Windels 3aa1992a3f WIP of messaging to sw 2020-10-15 19:12:16 +02:00
Bruno Windels 6b15e7e3ba remove extra newline 2020-10-15 15:58:59 +02:00
Bruno Windels 5fcf8022a1 store the url on every change, as PWAs don't trigger beforeunload ...
... when (force) closed
2020-10-14 15:30:40 +02:00
Bruno Windels 3d8dfc9635 also show grid layout in mobile layout, just in case of restoring url 2020-10-14 15:29:51 +02:00
Bruno Windels 7c2fc516bb restore last url if not providing a specific one on startup 2020-10-14 15:10:32 +02:00
Bruno Windels 19e774ce01 don't assume grid button is a button, just in case 2020-10-14 14:54:56 +02:00
Bruno Windels 4f46854362 add close session button 2020-10-14 14:54:46 +02:00
Bruno Windels d96f8adcc7 fix back button in room header not working 2020-10-14 14:53:52 +02:00
Bruno Windels cf99f55f3d fix typo making the room list not shown on the mobile layout 2020-10-14 14:20:53 +02:00
Bruno Windels fd1df595c8 remove leftover logging 2020-10-14 14:06:11 +02:00
Bruno Windels 8122d76e73 Merge branch 'master' into bwindels/url-routing 2020-10-14 12:45:49 +02:00
Bruno Windels b00db1af3e only keep 20 outbound olm sessions in memory at once to prevent OOM 2020-10-14 12:44:27 +02:00
Bruno Windels 07701117cd reduce megolm sync cache size to 1 session
as this is kept around for every e2ee room, and we only have
limited olm memory
2020-10-14 12:43:35 +02:00
Bruno Windels 6ad7be8726 fix leaking left panel view model after closing session 2020-10-14 11:34:34 +02:00
Bruno Windels de83d7740b replace custom error view with staticview 2020-10-14 11:26:39 +02:00
Bruno Windels fa8bec0b56 fix room view model being leaked when closing session 2020-10-14 11:26:10 +02:00
Bruno Windels b29b776e9f fix olm session cache being leaked when closing session 2020-10-14 11:25:49 +02:00
Bruno Windels 789a41c671 fix styling for session info entries 2020-10-14 10:34:25 +02:00
Bruno Windels 692fa808e4 make utility buttons also useable for links 2020-10-14 10:34:11 +02:00
Bruno Windels 7e477b3c8d rename button.styled to .button-action so it can also be used for links 2020-10-14 10:33:48 +02:00
Bruno Windels 5fe479e8a9 fix styling for room list items 2020-10-14 10:20:20 +02:00
Bruno Windels 3d327b0875 also open the initial room in the room list 2020-10-14 10:20:00 +02:00
Bruno Windels 2333a959a2 actually apply the /session/<id> url after login! 2020-10-13 17:10:28 +02:00
Bruno Windels ab354e9f38 update prop type 2020-10-13 15:19:54 +02:00
Bruno Windels afbfb0c82c anticipate non-found rooms 2020-10-13 15:18:13 +02:00
Bruno Windels 081820d8fb also update view when going to an not-found room 2020-10-13 15:14:07 +02:00
Bruno Windels a14795e3f8 unused 2020-10-13 15:05:11 +02:00
Bruno Windels d1d675ed7a make navigation observables already return new value before they emit 2020-10-13 14:54:57 +02:00
Bruno Windels 7f3e0f237b also do redirect after initial navigation 2020-10-13 14:43:45 +02:00
Bruno Windels 1780f334ea more tests 2020-10-13 13:13:47 +02:00
Bruno Windels d9c8a6339e support empty strings for rooms segment 2020-10-13 13:13:35 +02:00
Bruno Windels 7b13e45e19 fix creating the rooms segment 2020-10-13 13:13:15 +02:00
Bruno Windels a360d0a2b9 also unset room vm if moving away from room 2020-10-13 13:12:49 +02:00
Bruno Windels 379d65edf1 also create new vm when coming for grid if transfering vm fails 2020-10-13 13:12:30 +02:00
Bruno Windels 77a58041eb clean-up room grid initialization with vm transfering
also handle duplicate rooms, and add unit tests for grid vm
2020-10-13 13:11:19 +02:00
Bruno Windels c8dd7b42e7 encountered this very unlikely race while testing, so prevent it 2020-10-13 13:10:35 +02:00
Bruno Windels db5c98a706 support reassigning to null from untrack 2020-10-13 13:10:27 +02:00
Bruno Windels 4e8e9eae26 first round of fixes 2020-10-12 18:31:55 +02:00
Bruno Windels 14d2dcbc60 remove dead code 2020-10-12 17:49:41 +02:00
Bruno Windels b2d6b7014b first draft of url navigation for grid 2020-10-12 17:49:06 +02:00
Bruno Windels 6c2c29a7da WIP 2020-10-09 19:43:11 +02:00
Bruno Windels 83ac3eccc5 apply url changes to view gallery 2020-10-09 17:04:25 +02:00
Bruno Windels 56e51fc2aa idea comment 2020-10-09 17:04:17 +02:00
Bruno Windels 927e8134d3 use url navigation in root view model
also track all view models as it is
important everything is properly disposed now
2020-10-09 17:03:38 +02:00
Bruno Windels 33627edcb3 use url to go back in login view 2020-10-09 17:03:24 +02:00
Bruno Windels 35e85c55e0 use urls instead of callbacks to navigate in session picker 2020-10-09 17:03:13 +02:00
Bruno Windels 7b86b483ed confirm before clearing 2020-10-09 17:02:19 +02:00
Bruno Windels 3ab68ef438 throw when something tracked is not disposable, fail early 2020-10-09 17:01:54 +02:00
Bruno Windels 1289f065d6 implement root view as template view 2020-10-09 17:01:39 +02:00
Bruno Windels 0f8f558889 dispose session container from view model 2020-10-09 17:01:22 +02:00
Bruno Windels d48bbd122a make applyUrl and history public
so we don't need to bother with silent flags in replaceUrl
2020-10-09 17:00:19 +02:00
Bruno Windels 35b83b7976 make SessionLoadViewModel transfer ownership of container with callback
also, deleting the session when navigating away is now done by
LoginViewModel
2020-10-09 16:59:34 +02:00
Bruno Windels 4ae622bdd3 make pushUrl silent again 2020-10-09 16:58:53 +02:00
Bruno Windels 41c1c9a6c3 rename Brawl -> Root
one of the last occurrences of brawl
2020-10-09 09:59:59 +02:00
Bruno Windels c9bb18b87e make loading screen a bit prettier
by wrapping it in a view with common pre-session chrome

this renames the existing SessionLoadView to SessionLoadStatusView
so we can call the wrapper the former.
2020-10-09 09:58:00 +02:00
Bruno Windels 696e7856f8 some cleanup 2020-10-09 09:56:01 +02:00
Bruno Windels da9798979c Merge branch 'master' into bwindels/url-routing 2020-10-09 09:30:38 +02:00
Bruno Windels 24690f8035 fix placeholder not being hidden in mobile layout 2020-10-09 09:30:06 +02:00
Bruno Windels 0d54f88670 early draft of showing load progress of a session loaded through url 2020-10-08 18:23:53 +02:00
Bruno Windels 00bd4364f0 early draft of loading session via url scheme 2020-10-08 18:23:37 +02:00
Bruno Windels 087aff4ef4 set to true if undefined passed in as well 2020-10-08 18:23:08 +02:00
Bruno Windels 4fe971775c more url router work, differentiate between path and url
rename hashobservable to history
2020-10-08 18:22:36 +02:00
Bruno Windels 547241f577 Merge branch 'master' into bwindels/url-routing 2020-10-08 16:42:14 +02:00
Bruno Windels ca0f8fd142 leave some space between room list tile and edge 2020-10-08 16:37:24 +02:00
Bruno Windels 5c2425796c Merge branch 'master' into bwindels/url-routing 2020-10-08 16:33:19 +02:00
Bruno Windels cb0ef1a1ae this makes the caret huge on gnome web 2020-10-08 16:29:38 +02:00
Bruno Windels 35832e387a Swap grid tile description based on focus
swap RoomPlaceholderView for generic StaticView
2020-10-08 16:14:59 +02:00
Bruno Windels 93e301e4fa fix spinner margins 2020-10-08 15:53:12 +02:00
Bruno Windels 4783e03871 fix room header margin issue with hidden back button 2020-10-08 15:21:16 +02:00
Bruno Windels 868b1a1045 style composer 2020-10-08 15:20:52 +02:00
Bruno Windels 59802d1812 style room header 2020-10-08 15:00:20 +02:00
Bruno Windels 2cbe349a4d don't read private parts 2020-10-08 14:21:34 +02:00
Bruno Windels 5c299c1db9 remove prefixes now we auto prefix 2020-10-08 14:18:48 +02:00
Bruno Windels 47a43869e6 fix grid layout in IE 11
this brings back index addressing rather than x y in the grid vm,
as we need to have a css class for every position for IE 11,
as we can't use css variables and autoprefixer can
translate grid-areas
2020-10-08 14:17:43 +02:00
Bruno Windels c4cfb6f6d1 align left panel to 4px grid better, and simply margins 2020-10-08 10:29:30 +02:00
Bruno Windels fd4b3d238f increase click area of clear filter button, add search icon 2020-10-08 10:13:05 +02:00
Bruno Windels c2eebb9af2 prevent filter field and composer breaking narrow layouts 2020-10-08 10:11:12 +02:00
Bruno Windels e80f37603b prevent breaking narrow layouts with inputs 2020-10-08 10:10:39 +02:00
Bruno Windels 26112fe3de update grid icons 2020-10-08 10:10:03 +02:00
Bruno Windels dafa995429 placeholder does not count as room shown 2020-10-07 18:00:07 +02:00
Bruno Windels b79b41adcd keep focused class 2020-10-07 17:59:58 +02:00
Bruno Windels c80c369c42 prevent grid item from growing to max content height 2020-10-07 17:59:40 +02:00
Bruno Windels bd959bc147 style grid button 2020-10-07 17:59:28 +02:00
Bruno Windels ddda03d82c style filter field and grid button 2020-10-07 17:59:14 +02:00
Bruno Windels 61b5369f2f also show status view a bit lower for grid 2020-10-07 14:53:41 +02:00
Bruno Windels f6d9ffa7bb friends don't read each others private properties 2020-10-07 14:36:08 +02:00
Bruno Windels 46b24c3f24 fix room not changing when not in grid view 2020-10-07 14:32:57 +02:00
Bruno Windels 537972b97b clarify comment 2020-10-07 14:25:32 +02:00
Bruno Windels de14d6b54b fix filter field taking up too much width 2020-10-07 14:22:14 +02:00
Bruno Windels 152a83f75f css for the grid view 2020-10-07 14:22:00 +02:00