Commit Graph

25 Commits

Author SHA1 Message Date
Umar Getagazov
e09541ad2f Resize content viewport to accommodate for keyboard
As of Chrome 108 and Firefox 133, when the virtual keyboard appears on a
mobile device, the default behavior changed from resizing both visual
and layout viewports to resizing just the visual viewport to match the
behavior of Safari iOS.

https://developer.chrome.com/blog/viewport-resize-behavior/
https://github.com/bramus/viewport-resize-behavior/blob/main/explainer.md

Supported in Chrome 108+ and Firefox 133+, but not in Safari yet:

https://chromestatus.com/feature/6145225857171456
https://bugzilla.mozilla.org/show_bug.cgi?id=1831649
https://bugs.webkit.org/show_bug.cgi?id=259770
2025-05-07 19:59:51 +01:00
Drew DeVault
b1d5f1436e Improve noscript UI appearance 2021-11-29 13:53:23 +01:00
Simon Ser
e29ccf7220 Add embedded Content-Security-Policy
Add a baseline CSP applicable to all gamja deployments. Resources
can only be loaded from the current host, frames and objects are
disallowed, and scripts are allowed to connect to any host (to allow
cross-site WebSocket connections).

If the server returns a different CSP via an HTTP header, the
effective CSP will be the intersection.
2021-11-27 12:35:02 +01:00
Simon Ser
c4c0a77162 Avoid inline script in index.html
This helps Parcel generate a proper standalone JS bundle.
2021-11-17 10:58:02 +01:00
Simon Ser
1a8d539c9e Use linkifyjs module 2021-10-14 20:55:55 +02:00
Simon Ser
631f119061 Switch from anchorme to linkifyjs 2021-10-13 15:33:41 +02:00
Simon Ser
ca8649c506 Add web app manifest
We'll need this to register protocol handlers.
2021-06-22 10:42:16 +02:00
Simon Ser
7c81fa6e8c Set the viewport meta tag 2021-05-26 22:42:35 +02:00
Simon Ser
80e0175d36 Make all resource paths relative
Closes: https://todo.sr.ht/~emersion/gamja/17
2021-03-02 22:46:48 +01:00
Simon Ser
0c79b9a3ee Add <noscript> message
Avoids a blank page when JS is disabled.
2020-06-24 15:43:19 +02:00
Simon Ser
b449ace4b4 Switch to react
Under the hood, preact is used to reduce dependency size. We still don't
have a build stage, so htm is used instead of JSX.
2020-06-24 14:37:49 +02:00
Simon Ser
62300746d3 Remove assets/ 2020-06-24 11:18:51 +02:00
Simon Ser
eef5609dcf Introduce Client class 2020-06-23 20:00:49 +02:00
Simon Ser
a1582dcc62 Switch to ES6 imports 2020-06-14 14:50:59 +02:00
Simon Ser
b3bcd4d230 Move server URL to advanced options 2020-06-12 18:22:25 +02:00
Simon Ser
ef23d44eed Add back form input for PASS 2020-06-12 18:19:59 +02:00
Simon Ser
73723f6696 Smarter server URL auto-detection 2020-06-07 13:46:46 +02:00
Simon Ser
67ca372657 Add option to auto-join channels 2020-06-07 12:46:38 +02:00
Simon Ser
deb82c7abe Add "server" query parameter 2020-06-07 12:31:01 +02:00
Simon Ser
a08fdeea8f Add "remember me" checkbox in connect form 2020-06-06 10:43:11 +02:00
Simon Ser
8b35d40702 Handle self NICK messages 2020-06-06 10:02:22 +02:00
Simon Ser
f66c7c52f3 Add connect form, add /join command 2020-06-05 23:40:59 +02:00
Simon Ser
f3091f0340 Rename #log to #buffer 2020-04-25 12:51:35 +02:00
Simon Ser
19ee9be928 Replace getElementById with querySelector 2020-04-25 12:48:50 +02:00
Simon Ser
f7569a43b7 Initial commit 2020-04-24 19:03:43 +02:00