Commit graph

96 commits

Author SHA1 Message Date
Johannes Marbach
14ed5fd1e8 Manually adapt UI when keyboard shows or hides on mobile Safari
Mobile Safari seems to be the only browser that does *not* resize the
viewport when the keyboard shows and hides. Instead the window is moved
to make room for the keyboard which moves content at the top off screen.

This uses the VisualViewport API to manually resize the `SessionView`
in response to keyboard display events. Additionally, if a DOM element
exists that has the `bottom-aligned-scroll` CSS class, its scroll
position is retained. Currently this only applies to the `Timeline`.

Note that the VisualViewport API was only introduced with iOS 13.
According to [statista.com], versions below 13 made up for 19% of
all iOS users in summer 2020, with the share continuing to fall off.
As a result, this seems like an acceptable workaround.

Fixes: #181

[statista.com]: https://www.statista.com/statistics/565270/apple-devices-ios-version-share-worldwide/

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2021-03-26 08:29:33 +01:00
Bruno Windels
2a0045bed7 support override main css file 2021-03-25 18:54:10 +01:00
Bruno Windels
cd615265f8 support overriding imports for customizations 2021-03-25 18:08:47 +01:00
Bruno Windels
165532be30 add badge icon to notifs 2021-03-25 00:12:57 +01:00
Bruno Windels
178790d816 symlink service worker for local dev, so its scope captures whole app
also rename service worker (as it is not a template anymore)
2021-03-23 18:20:23 +01:00
Bruno Windels
a8ca82ca4d support running the service worker during local development 2021-03-23 18:20:23 +01:00
Bruno Windels
f92f3b2c21 copy push config in build script 2021-03-23 18:20:23 +01:00
Bruno Windels
0052a11a1e convert post-install script to CJS so we can use require.resolve
this allows us to find where npm/yarn has installed deps, as we can't
assume our own node_modules directory when hydrogen is installed as a
dependency
2021-03-08 14:40:21 +01:00
Bruno Windels
5b14d14286 better time formatting and overlap logging in log viewer 2021-02-24 20:56:36 +01:00
Bruno Windels
ee8886f7c2 serialize child items with parent start offset subtracted
for compactness
2021-02-24 10:37:20 +01:00
Bruno Windels
113b47540a render refs in log viewer 2021-02-23 22:11:01 +01:00
Bruno Windels
851c469727 show forced finished
this means the item was forcefully finished when the app closed down,
and the underlying operation was still running
2021-02-23 21:10:16 +01:00
Bruno Windels
ba4fa1ee3e sort by start time 2021-02-23 21:10:03 +01:00
Bruno Windels
61adca3b10 show object properties in the details of the log viewer 2021-02-23 21:00:15 +01:00
Bruno Windels
204cc25304 more colors in log viewer 2021-02-19 11:57:57 +01:00
Bruno Windels
cfc17ad176 stringify values in log viewer, other number 0 does not get rendered 2021-02-18 15:38:56 +01:00
Bruno Windels
499efb5ce0 add error and status to caption in logviewer 2021-02-18 13:07:12 +01:00
Bruno Windels
69feb40075 add copyright headers 2021-02-18 12:28:57 +01:00
Bruno Windels
560918e373 format times between root items better 2021-02-18 12:25:41 +01:00
Bruno Windels
19df43ca3c more compact layout, a few more detail fields and expand recursively but 2021-02-18 12:25:41 +01:00
Bruno Windels
be1650defc add expand button to log items 2021-02-18 12:25:41 +01:00
Bruno Windels
17c2fad4b4 finish log viewer details panel 2021-02-18 12:25:40 +01:00
Bruno Windels
6b527cef65 basic log viewer 2021-02-18 12:25:40 +01:00
Bruno Windels
4477073d6d add platform method to offer saving a buffer handle 2020-11-10 17:24:30 +01:00
Bruno Windels
22a88d06b4 fix build 2020-10-26 15:56:06 +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
101c7015f2 move service worker code in bundle, and support closing sessions 2020-10-16 12:49:42 +02:00
Bruno Windels
3aa1992a3f WIP of messaging to sw 2020-10-15 19:12:16 +02:00
Bruno Windels
a94b099819 cache legacy js on request 2020-10-15 16:18:09 +02:00
Bruno Windels
0f71564d65 also make changes in index.html and sw.js trigger an update 2020-10-15 15:58:29 +02:00
Bruno Windels
eaaf18fb82 set icon on iOS 2020-10-15 11:17:33 +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
423a463cd6 disable css variables transformation as it breaks the grid layout f/ now 2020-10-07 18:00:26 +02:00
Bruno Windels
e70f0d3e89 fix regeneratorRuntime being loaded too late 2020-10-06 12:56:20 +02:00
Bruno Windels
c8fd9d423d log requests to dev server 2020-10-05 15:10:15 +02:00
Bruno Windels
8dc2816d6e keep hashed files in cache as long as they don't change 2020-10-02 19:54:24 +02:00
Bruno Windels
dff8ddb532 remove logging 2020-10-02 09:34:12 +02:00
Bruno Windels
38a30bcc49 targetDir doesn't need to be global anymore 2020-10-02 09:33:57 +02:00
Bruno Windels
441bfa4890 also write unhashed assets from asset map 2020-10-02 09:33:48 +02:00
Bruno Windels
4a19c8d575 move asset writing into AssetMap as well 2020-10-02 09:33:07 +02:00
Bruno Windels
07b6458f19 track assets centrally in build script 2020-10-01 19:21:27 +02:00
Bruno Windels
6d003f9565 don't include corejs promise polyfill anymore 2020-09-28 15:28:22 +02:00
Bruno Windels
e3581c8260 use our fork of es6-promise with flush exposed as the promise polyfill 2020-09-28 15:27:38 +02:00
Bruno Windels
ae2f9c6332 extract manifest out of build script and have both (non)-maskable icons
also make PWA standalone instead of fullscreen as that doesn't seem
to play well with the onscreen keyboard on mobile
2020-09-24 11:15:15 +02:00
Bruno Windels
36b56132b0 add TextEncoder/Decoder polyfill to legacy bundle 2020-09-18 12:04:22 +02:00
Bruno Windels
5752cca69c go back to bs58 and use other base64 decoder
as base-x isn't meant for base64
2020-09-17 17:56:05 +02:00
Bruno Windels
4ec0e67384 use base-x to support both base64 and base58 2020-09-17 11:36:54 +02:00
Bruno Windels
ab01c903a6 turns out that rollup-plugin-cleanup doesn't like line 259 in aes-js
so don't remove comments for now in the legacy build
2020-09-17 09:36:37 +02:00
Bruno Windels
77a21c08eb add legacy extras, so deps only needed for legacy are not in main bundle 2020-09-16 18:31:17 +02:00
Bruno Windels
729e669ec8 add aes-js dep 2020-09-16 18:31:17 +02:00