Commit Graph

516 Commits

Author SHA1 Message Date
Bruno Windels
b6cbb03edd keep filling gaps while viewport not filled or new content < 100px 2020-08-17 16:34:58 +02:00
Bruno Windels
08de7c3569 loading screen while loading timeline
so we can set timelineVM directly to TimelineList
2020-08-17 16:34:25 +02:00
Bruno Windels
5ae4a1aae3 increase offset to start back-filling 2020-08-17 15:22:55 +02:00
Bruno Windels
2cfd38379f change looks of gap tile as it's auto-loaded now 2020-08-17 15:22:39 +02:00
Bruno Windels
56efd7eee0 don't load timeline past gaps 2020-08-17 15:22:25 +02:00
Bruno Windels
1e4f331989 fill top gap instead of loading more events from storage 2020-08-17 15:13:12 +02:00
Bruno Windels
cf0af775e3 make SimpleTile inherit from ViewModel
to use same update mechanism and have viewmodel infra available for tile
2020-08-17 15:11:39 +02:00
Bruno Windels
9745c58144 use readPath in ImageTile 2020-08-17 14:20:54 +02:00
Bruno Windels
0d3ab21044
Merge pull request #19 from vector-im/bwindels/small-bits
Various small bits
2020-08-17 12:15:28 +00:00
Bruno Windels
bbd5217fdf
Merge pull request #18 from vector-im/bwindels/ignore-empty-timelines
ignore rooms with empty timelines during initial sync
2020-08-17 12:14:46 +00:00
Bruno Windels
59588dc8b5 ignore rooms with empty timelines during initial sync 2020-08-17 14:13:23 +02:00
Bruno Windels
306309c4f8 wrap error and expose room id
this makes it easier to track down a (storage) error to a room
2020-08-17 10:48:00 +02:00
Bruno Windels
b5e7131050 only use 1 letter for avatar initial 2020-08-17 10:47:47 +02:00
Bruno Windels
404e6f8b87 make alphabetical sort order stable 2020-08-17 10:47:27 +02:00
Bruno Windels
70e6515b5c dont crash on m.image without url 2020-08-17 10:29:29 +02:00
Bruno Windels
bab1178790 style login page 2020-08-14 14:49:22 +02:00
Bruno Windels
c12ecd6cc1 style session picker 2020-08-14 14:49:15 +02:00
Bruno Windels
19e5d310e0 move avatar one level lower because we'll need it in the session picker 2020-08-14 14:33:13 +02:00
Bruno Windels
61801ee2cd add send button to composer 2020-08-13 18:10:45 +02:00
Bruno Windels
bf35cfc9fd make spinner look slightly better in IE 2020-08-13 17:59:49 +02:00
Bruno Windels
84d4584302 switch view gallery to element theme 2020-08-13 17:59:36 +02:00
Bruno Windels
d386343d5c adjust spacing, etc in timeline 2020-08-13 17:58:56 +02:00
Bruno Windels
44cc691c79 add avatar and sender user colors 2020-08-13 12:41:00 +02:00
Bruno Windels
d33e7b2a8b basic element theme colors 2020-08-13 12:40:30 +02:00
Bruno Windels
68574715dc style active room 2020-08-12 17:49:39 +02:00
Bruno Windels
5aacf85166 mark room tile as active when clicked 2020-08-12 17:40:41 +02:00
Bruno Windels
7f50e3d137 allow overriding the "emit change" mechanism in ViewModel
so view models that should send updates through their collection
can still use the same "emitChange" method on ViewModel
2020-08-12 17:39:11 +02:00
Bruno Windels
fbf72b8825 bind key for spontaneous updates in MappedMap
so we just have to pass in the params
2020-08-12 17:38:40 +02:00
Bruno Windels
cb10d40c3a Revert "use intrinsic aspect-ratio supported by chrome and firefox (although not safari)"
This reverts commit 0e5ad9805a.

It does not seem to work anymore in FF & chrome (the tile grows after the image is loaded)
and this won't work in IE11 anyways
2020-08-12 16:47:57 +02:00
Bruno Windels
d7657b519a add element theme (only some color changes + Inter font for now) 2020-08-12 16:41:03 +02:00
Bruno Windels
c6f38a4614 missing rename 2020-08-12 16:40:47 +02:00
Bruno Windels
e1a5c362dc add theme assets to offline definition 2020-08-12 16:40:28 +02:00
Bruno Windels
211abd9269 move emoji font collection to own font definition 2020-08-12 16:32:49 +02:00
Bruno Windels
695bcb2da3 move speech bubble alignment to theme 2020-08-12 16:31:58 +02:00
Bruno Windels
d7c1dc8a38 make fields disabled in loading state in gallery 2020-08-12 11:52:18 +02:00
Bruno Windels
be9e476874 extract theme from current styling 2020-08-12 11:52:03 +02:00
Bruno Windels
23d96b554a make theme directory
+ readme of ~what should go in a theme
2020-08-12 11:51:21 +02:00
Bruno Windels
5546460510 more brawl -> hydrogen renaming 2020-08-12 11:42:42 +02:00
Bruno Windels
eb92b9a086 Disable rubberband scrolling for IE11 2020-08-07 18:15:17 +01:00
Bruno Windels
e054dfb623 Merge branch 'master' into bwindels/legacy-css 2020-08-07 17:03:45 +01:00
Bruno Windels
fdc7f60f4d Build legacy bundle from same entry point as normal build
as the plan is to only use different CSS for IE11, but the same view code
2020-08-07 15:50:18 +01:00
Bruno Windels
a0c8d147c3 Use parentNode, parentElement is not supported on IE11 2020-08-07 15:07:44 +01:00
Bruno Windels
b1dd3933e2 WIP 2020-08-07 11:16:46 +01:00
Bruno Windels
a7acb0278d Element.remove polyfill 2020-08-07 11:14:07 +01:00
Bruno Windels
73c0a92377 Add .closest polyfill 2020-08-06 10:38:38 +01:00
Bruno Windels
1699600ffc fix test 2020-08-05 19:06:54 +02:00
Bruno Windels
3154b047a6 Merge branch 'bwindels/ie11' of github.com:vector-im/hydrogen-web into bwindels/ie11 2020-08-05 19:02:42 +02:00
Bruno Windels
d0ba894e2d apply new license headers in new code 2020-08-05 18:59:16 +02:00
Bruno Windels
45bd49861b Add build for IE 11 2020-08-05 18:56:06 +02:00
Bruno Windels
5ddc02ebc8 XHR request support for legacy browsers 2020-08-05 18:56:06 +02:00
Bruno Windels
e8e9740521 Move timeout to fetch, as XHR has native timeout support 2020-08-05 18:56:06 +02:00
Bruno Windels
5c50a48eb5 Add build for IE 11 2020-08-05 16:47:48 +00:00
Bruno Windels
00a85697ab add license header in all source files 2020-08-05 18:38:55 +02:00
Bruno Windels
69142909d9 XHR request support for legacy browsers 2020-08-05 15:37:37 +00:00
Bruno Windels
b26bc69042 Move timeout to fetch, as XHR has native timeout support 2020-08-05 15:36:44 +00:00
Bruno Windels
f5d3092031 WIP 2020-06-26 23:26:24 +02:00
Bruno Windels
e2c8b5e595 pass vm field to emitChange 2020-06-24 22:43:29 +02:00
Bruno Windels
9712b397ce add TODO comment 2020-05-26 10:31:23 +02:00
Bruno Windels
0e5ad9805a use intrinsic aspect-ratio supported by chrome and firefox (although not safari) 2020-05-13 10:20:28 +02:00
Bruno Windels
1ec2543467 fix image aspect ratio when scaling, again
also when image hasn't loaded yet to prevent scroll position jumps
2020-05-10 11:56:05 +02:00
Bruno Windels
174b0b7d52 disable pull to refresh on android 2020-05-10 10:00:13 +02:00
Bruno Windels
d79e34e450 fix image height scaling when full width doesn't fit on screen 2020-05-10 09:59:51 +02:00
Bruno Windels
df08ac216d prevent images from growing larger than container 2020-05-09 21:22:30 +02:00
Bruno Windels
d6882f075a don't let long status messages create overflow 2020-05-09 21:22:09 +02:00
Bruno Windels
2b17d0f691 spell height correctly 2020-05-09 21:21:55 +02:00
Bruno Windels
7f221cda65 show images intimeline 2020-05-09 20:02:08 +02:00
Bruno Windels
426dd726e7 default to true 2020-05-08 09:31:41 +02:00
Bruno Windels
5aee3df7fe fix SessionPickerItemView not updating 2020-05-08 09:12:33 +02:00
Bruno Windels
c55a197303 pass options to parent in LoginViewModel 2020-05-07 19:17:15 +02:00
Bruno Windels
f56b96b0ff add some ideas for relations 2020-05-07 19:14:53 +02:00
Bruno Windels
f9c0b4b53e add logging in case #45 would happen again 2020-05-07 19:14:30 +02:00
Bruno Windels
6b453c1ec4 we need to start when online actually, so invert 2020-05-07 18:46:45 +02:00
Bruno Windels
24cb9e3f5c only increment sent counter after successful send
otherwise the message doesn't get sent after coming back online
2020-05-07 18:46:16 +02:00
Bruno Windels
b65da9b8a9 display sync errors in status bar 2020-05-07 00:05:21 +02:00
Bruno Windels
52e2d3203e also make filter request interruptable 2020-05-07 00:04:41 +02:00
Bruno Windels
cc19063c79 set timeout on /sync request
as long running requests run higher risk of getting wedged
2020-05-06 23:50:12 +02:00
Bruno Windels
06fc3101e8 make login view enabled again if load view is not busy anymore 2020-05-06 23:44:52 +02:00
Bruno Windels
e17fc57d9c fix c/p error in disposables 2020-05-06 23:31:36 +02:00
Bruno Windels
abc99c2f0b fix svg error in spinner 2020-05-06 23:31:22 +02:00
Bruno Windels
2010704f14 fix only reconnecting the first time 2020-05-06 20:58:48 +02:00
Bruno Windels
f8f13f54be fix timeouts not working
and also not being handled in the Reconnector
2020-05-06 19:38:33 +02:00
Bruno Windels
54502c906f make disposeTracked suitable to reassign member 2020-05-05 23:19:02 +02:00
Bruno Windels
d0f09c5334 add status bar to view gallery for design 2020-05-05 23:18:44 +02:00
Bruno Windels
22821af346 css changes for status bar 2020-05-05 23:18:31 +02:00
Bruno Windels
0623c1c665 subViews is in TemplateView 2020-05-05 23:17:48 +02:00
Bruno Windels
c4b17e4be6 cleanup SessionViewModel, use ViewModel dispose infrastructure 2020-05-05 23:17:27 +02:00
Bruno Windels
3adc609e07 implement session status bar, with feedback on connection status 2020-05-05 23:16:51 +02:00
Bruno Windels
b0e59c30dd correctly pass options to ViewModel ctor 2020-05-05 23:14:58 +02:00
Bruno Windels
0eefc88fe3 waitForRetry doesn't reject when aborted 2020-05-05 23:13:41 +02:00
Bruno Windels
8e9c76c26b options is the 5th arg 2020-05-05 23:13:05 +02:00
Bruno Windels
4de29779c7 also abort timeout timer when response is rejected 2020-05-05 23:12:46 +02:00
Bruno Windels
4ffaa82435 add interval to clock 2020-05-05 23:12:14 +02:00
Bruno Windels
f90b435362 No need for Offline state if we're always in Waiting really 2020-05-04 23:42:34 +02:00
Bruno Windels
d70a57a7c9 remove support for observablevalues from templateview
it's not used, and so params haven't been standardized
trying to unify it, it messes up overriding update in RoomView
that extends it to set the timelineViewModel upon update.
2020-05-04 22:24:49 +02:00
Bruno Windels
d6645cbba9 null guard if list was never set 2020-05-04 22:24:10 +02:00
Bruno Windels
d7a8b1616a use t.view for room sub views
also move composer to own vm
2020-05-04 22:23:43 +02:00
Bruno Windels
28bed56b5a prevent closing more than once 2020-05-04 22:21:56 +02:00
Bruno Windels
1fa14a99e9 correctly wait for catchup sync 2020-05-04 19:38:23 +02:00
Bruno Windels
225fe873be show session load view when picking a session 2020-05-04 19:38:03 +02:00
Bruno Windels
3dde23fc4b dispose viewmodels from TemplateView 2020-05-04 19:24:27 +02:00
Bruno Windels
1ef564bdb0 cleanup 2020-05-04 19:24:20 +02:00
Bruno Windels
cc87e35f23 use ViewModel super class for all view models that need binding 2020-05-04 19:23:11 +02:00
Bruno Windels
d91ab5355c support svg namespace, fix spinner 2020-05-03 01:08:53 +02:00
Bruno Windels
d69987b426 make view gallery of views in different states 2020-04-30 18:28:21 +02:00
Bruno Windels
d3f7fb5089 prototype how i18n would look like 2020-04-30 18:27:59 +02:00
Bruno Windels
ceec8937ef apply template view api changes 2020-04-30 18:27:21 +02:00
Bruno Windels
cdf051f19b api changes 2020-04-29 19:16:52 +02:00
Bruno Windels
2c8c1eb767 move el with the publics 2020-04-29 19:12:48 +02:00
Bruno Windels
6a9315e70a do what we said in the comment 2020-04-29 19:12:12 +02:00
Bruno Windels
f4bb609ab6 notes 2020-04-29 10:10:33 +02:00
Bruno Windels
8bde627cdb more WIP 2020-04-29 10:10:20 +02:00
Bruno Windels
37c602f7d2 rename Template to TemplateView, as it is a view now. 2020-04-29 10:04:40 +02:00
Bruno Windels
2008cf74f1 Template becomes a view 2020-04-29 10:01:08 +02:00
Bruno Windels
657ec9aa62 move loading view state to own view model, so we're more free how to show it, and we can better reuse it 2020-04-23 09:06:04 +02:00
Bruno Windels
acc511e69f extract loading into a sub viewmodel
to show the loading in a separate view
2020-04-22 21:53:55 +02:00
Bruno Windels
b2954fd774 extract loadLabel logic to reuse in SessionPickerViewModel 2020-04-22 21:53:37 +02:00
Bruno Windels
0424ffe231 disable this for now as sync is not an EventEmitter anymore 2020-04-22 20:53:57 +02:00
Bruno Windels
e080bf28a7 expose root view model as global variable for console inspecting 2020-04-22 20:53:38 +02:00
Bruno Windels
e0799181d9 show error when mount() fails in SwitchView 2020-04-22 20:53:18 +02:00
Bruno Windels
449262e3c1 adjust ctor of SessionViewModel to accept sessionContainer now 2020-04-22 20:52:56 +02:00
Bruno Windels
e37101210c adjust LoginView(Model) further to showing loading status in place 2020-04-22 20:52:28 +02:00
Bruno Windels
96aa4f83b9 remove loading section in BrawlView 2020-04-22 20:49:49 +02:00
Bruno Windels
a19e541e1e less http specific 2020-04-22 20:49:21 +02:00
Bruno Windels
3359c6950f typo (this made the loadStatus undefined :/) 2020-04-22 20:49:03 +02:00
Bruno Windels
08b1c02af7 remove start value, can be hardcoded for now
also fix params in wrong order this way
2020-04-22 20:48:49 +02:00
Bruno Windels
f826258c75 null doesn't set queryParams to {} here, so revert explicitly 2020-04-22 20:47:53 +02:00
Bruno Windels
174fd3ea4a don't assume options 2020-04-22 20:47:46 +02:00
Bruno Windels
3f840d9d33 simple unit test for hsApi 2020-04-22 20:47:31 +02:00
Bruno Windels
277c8af628 Headers is a DOM specific class, use Map instead in HomeServerApi 2020-04-22 20:46:47 +02:00
Bruno Windels
c95981a35d remove unused code 2020-04-20 23:10:33 +02:00
Bruno Windels
b32f5711bf port BrawlViewModel to SessionContainer 2020-04-20 23:10:13 +02:00
Bruno Windels
f4983b5ba6 port SessionPickerViewModel to SessionContainer 2020-04-20 22:49:14 +02:00
Bruno Windels
a5965ad378 port LoginViewModel over to SessionContainer 2020-04-20 22:48:56 +02:00
Bruno Windels
bb7fca0592 support deleting the session from the container 2020-04-20 22:29:25 +02:00
Bruno Windels
de7dcf6a40 adjust main.js to use SessionContainer 2020-04-20 21:56:10 +02:00
Bruno Windels
a097929dbd rename lowercase filenames of classes to camelcase like class 2020-04-20 21:41:10 +02:00
Bruno Windels
31f3886eba move EventEmitter to utils 2020-04-20 21:35:53 +02:00
Bruno Windels
c379caf4c0 remove obsolete ifdef comments 2020-04-20 21:31:27 +02:00
Bruno Windels
0f29fdb24e some notes 2020-04-20 21:27:07 +02:00
Bruno Windels
001dbefbcf stop using default exports
because it becomes hard to remember where you used them and where not
2020-04-20 21:26:39 +02:00
Bruno Windels
0de5e899ea remove dead code 2020-04-20 21:25:17 +02:00
Bruno Windels
164d9d594f finish implemenation of SessionContainer 2020-04-20 19:48:21 +02:00
Bruno Windels
87b23d062c fix imports after reshuffleling 2020-04-20 19:47:45 +02:00
Bruno Windels
72b0eefccb replace isSyncing and emit with an Observable SyncStatus 2020-04-19 19:52:26 +02:00
Bruno Windels
80f7caadbe rename SessionsStore to SessionInfoStorage 2020-04-19 19:13:38 +02:00
Bruno Windels
8c56ac3e4f rename NetworkError to ConnectionError 2020-04-19 19:05:12 +02:00
Bruno Windels
8c5411cb7d moar WIP 2020-04-19 19:02:10 +02:00
Bruno Windels
1f15ca6498 more WIP 2020-04-18 19:16:16 +02:00
Bruno Windels
378b75c98a more WIP and breakage 2020-04-09 23:19:49 +02:00
Bruno Windels
ef267ca331 WIP2 2020-04-05 15:11:15 +02:00