Commit graph

252 commits

Author SHA1 Message Date
hippoz
10c851c679
"clump" messages send from the same author within 100 seconds 2022-09-03 21:39:12 +03:00
hippoz
82452e77b6
display dates 2022-09-03 20:46:27 +03:00
hippoz
5ea8cc62cd
move "become superuser" action into the debug menu 2022-09-03 17:40:54 +03:00
hippoz
4c9e321167
greatly overhaul overlay system 2022-09-03 17:30:39 +03:00
hippoz
d8552c0328
fix unread indicator offset 2022-09-03 13:04:53 +03:00
hippoz
7b9379732e
significantly improve unread system 2022-09-02 22:07:08 +03:00
hippoz
81e9de6cd8
user a different method of detecting scroll, hopefully fixing ios webkit scroll 2022-09-02 19:13:10 +03:00
hippoz
476a36b79a
remove webkit hack 2022-09-02 16:47:42 +03:00
hippoz
9ea7c32bfd
add workaround for old webkit 2022-09-02 15:25:47 +03:00
hippoz
254bec0a48
stop using visualviewport, because it made things worse 2022-09-02 15:13:25 +03:00
hippoz
56487d1359
don't automatically focus message input on mobile 2022-09-02 15:08:47 +03:00
hippoz
ae7875955a
use visualviewport instead of innerheight 2022-09-02 14:47:53 +03:00
hippoz
8b14ff2c96
add simple debug prompt to make it easier to debug on mobile devices 2022-09-02 13:40:59 +03:00
hippoz
6a962f2fba
fix setMessageInputEvent being called initially 2022-09-02 12:35:33 +03:00
hippoz
5072ea5ab5
change viewport size justification to use a javascript solution 2022-09-02 12:33:09 +03:00
hippoz
96066a1345
change color of messages containing mentions once again 2022-09-01 22:40:31 +03:00
hippoz
c84d95d0e3
finally make consistent focus ring for messageinput 2022-09-01 21:07:53 +03:00
hippoz
1c8d2838c4
lower alpha of background of mentions 2022-09-01 20:53:57 +03:00
hippoz
8bb4efb638
make messages cut off less on smaller viewports (still not fully fixed) 2022-09-01 20:49:55 +03:00
hippoz
186fcb1779
change color of messages containing mentions 2022-09-01 20:45:01 +03:00
hippoz
45537347f3
highlight messages in which the user is mentioned 2022-09-01 20:10:27 +03:00
hippoz
74cd9cd06e
add placeholder janky reply button 2022-09-01 19:56:19 +03:00
hippoz
0a37d64c77
fix selector 2022-09-01 19:35:03 +03:00
hippoz
cdb4e02413
fix autoscroll not working in certain cases 2022-09-01 19:21:10 +03:00
hippoz
884fec6c5f
hopefully fix mobile viewport issues 2022-09-01 18:25:21 +03:00
hippoz
ec71cea0dd
remove maxlength from edit message 2022-09-01 16:39:46 +03:00
hippoz
5d18c631d7
improve html meta 2022-09-01 15:33:26 +03:00
hippoz
90eb1bfb7a
blindly attempt to work around webkit bug preventing websocket connection 2022-08-31 22:59:11 +03:00
hippoz
c549823e37
remove input length constraints for prompt 2022-08-31 20:19:47 +03:00
hippoz
15d22f261c
add "request key" mechanism to protect resources such as auth 2022-08-31 17:12:50 +03:00
hippoz
0c6c88f7f5
improve handling of themes 2022-08-31 16:12:54 +03:00
hippoz
4d4e054291
fix mobile send button for chromium 2022-08-31 12:58:12 +03:00
hippoz
a1ee6f8f6b
fix sidebar button accent for light theme 2022-08-31 12:57:49 +03:00
hippoz
abad0841fe
improve accent colors and sidebar buttons 2022-08-31 12:44:54 +03:00
hippoz
e1490f1081
automatically focus the message input when the user selects another channel 2022-08-31 12:07:25 +03:00
hippoz
4080e69b11
add ui:alwaysUseMobileChatBar option 2022-08-31 11:46:51 +03:00
hippoz
8c75b96696
add config settings for typing notifications, message history and typing updates 2022-08-31 11:40:10 +03:00
hippoz
e42176fac7
add javascript notice 2022-08-28 22:13:20 +03:00
hippoz
ee0272b387
clean up imports 2022-08-28 21:58:44 +03:00
hippoz
325583e4d7
update dependencies 2022-08-28 21:56:50 +03:00
hippoz
fcf25320cb
Don't render anything until gateway connection 2022-08-28 20:52:34 +03:00
hippoz
71f3773488
make app look more similar across browsers 2022-08-28 17:57:01 +03:00
hippoz
537036e8bb
apply transitions to sidebars on large viewports 2022-08-28 16:02:51 +03:00
hippoz
fc8d81753e
improve conditional animations 2022-08-28 16:02:28 +03:00
hippoz
9d1d91711e
improve sidebar contrast 2022-08-28 15:25:18 +03:00
hippoz
6cf7da5089
improve message bar appearance on small viewports 2022-08-20 03:32:31 +03:00
hippoz
34f945b7f4
add optimistic_id field for messages, allowing us to show our own messages from other clients 2022-08-20 00:12:27 +03:00
hippoz
8b9679b93d
fix flashes of no content on small viewports 2022-08-14 05:50:26 +03:00
hippoz
9a8b769e95
don't show presence sidebar if sidebar is present 2022-08-08 05:39:03 +03:00
hippoz
e31d8c5973
add presence and user list 2022-08-08 05:12:31 +03:00
hippoz
f9a62cec4e
making typing indicators per-channel 2022-08-07 21:57:41 +03:00
hippoz
579ff19921
add typing indicators 2022-08-07 03:00:14 +03:00
hippoz
4264d9ffac
add fetch polyfill 2022-08-05 22:29:20 +03:00
hippoz
f87077d381
move "connecting..." indicator to the sidebar to prevent layout shifts 2022-08-05 05:24:45 +03:00
hippoz
79efc49cd2
clean up css 2022-08-05 02:18:03 +03:00
hippoz
f5aeedfbab
add content security policy and standard meta tags 2022-08-05 02:11:26 +03:00
hippoz
24a956c940
refactor modal animations and add more padding to the modal footer 2022-08-04 21:31:02 +03:00
hippoz
1feb79b2e8
update packages 2022-08-04 19:57:40 +03:00
hippoz
662fceee57
label icon buttons 2022-08-04 05:33:20 +03:00
hippoz
dcef776d44
slightly optimize stores 2022-08-04 04:59:28 +03:00
hippoz
e1fccd2a66
hide "add channel" button if the user cant create channels + public user object now shows permissions 2022-08-04 04:51:09 +03:00
hippoz
e7615879e4
add ui:showSidebarToggle config 2022-08-04 02:17:23 +03:00
hippoz
ad8e6315ed
improve config entry names and fix selected channel persistance 2022-08-04 02:00:55 +03:00
hippoz
8d45594d03
fix light theme 2022-08-03 19:06:10 +03:00
hippoz
12837db5a4
add custom iosevka font 2022-08-03 18:55:12 +03:00
hippoz
062de0e380
fix top bar having fixed height 2022-08-03 04:59:38 +03:00
hippoz
8277c0901f
fix messageinput inconsistencies 2022-08-03 04:49:03 +03:00
hippoz
954c5bd540
fix bogus "messages failed to load" after logging out 2022-08-03 02:46:48 +03:00
hippoz
6d76dec265
add initial concept of "superuser" accounts 2022-08-03 02:34:15 +03:00
hippoz
314a7f2be0
hopefully fix mobile viewport weirdness 2022-08-02 22:36:18 +03:00
hippoz
3bcf605ef9
add more message spacing, ensure author is always displayed at the top left 2022-08-02 22:35:53 +03:00
hippoz
ec7de22dca
frontend: enforce valid overlays in overlaystore 2022-05-08 22:05:58 +03:00
hippoz
200f1005b9
frontend: prevent loading messages for channels with -1 as the id 2022-05-08 22:02:16 +03:00
hippoz
97d155667d
frontend: initial multi-line support 2022-05-07 16:50:04 +03:00
hippoz
d1654546fa
frontend: housekeeping and clean up Store code 2022-05-07 04:04:54 +03:00
hippoz
e3b4e28428
frontend: add animation on/off setting 2022-05-07 03:45:09 +03:00
hippoz
a725e46ff0
frontend: add generic StorageItemStore 2022-05-07 03:36:27 +03:00
hippoz
704b35ae2b
frontend: add theme switching 2022-05-07 03:27:41 +03:00
hippoz
c8604515d6
frontend: perform primary action in most modals by pressing enter 2022-05-06 03:19:52 +03:00
hippoz
96975c149b
frontend: improve settings page 2022-05-06 03:10:14 +03:00
hippoz
d837dbddb4
frontend: fallback to first channel if the selected channel cant be found 2022-05-06 02:56:22 +03:00
hippoz
0a17ea2ac6
frontend: save selected channel 2022-05-06 01:55:21 +03:00
hippoz
0198955f7d
frontend: extend debugging/plugin api 2022-05-05 21:49:25 +03:00
hippoz
06e081d785
frontend: change storage value naming scheme 2022-05-05 21:30:21 +03:00
hippoz
144877e682
frontend: rework logging system 2022-05-05 20:52:35 +03:00
hippoz
243036f29e
frontend: add useAuthHandlers in main.js 2022-05-05 20:39:24 +03:00
hippoz
d0a61450c5
fix sidebar fly animation 2022-05-05 20:35:00 +03:00
hippoz
b93b610eef
frontend: refactor storage.js 2022-05-05 16:31:10 +03:00
hippoz
b084de7ffc
frontend: make animations optional 2022-05-05 15:33:22 +03:00
hippoz
92ce055dd7
frontend: cleanup stores exports 2022-04-28 18:49:29 +03:00
hippoz
8539e4ab7c
frontend: cleanup 2022-04-28 18:48:44 +03:00
hippoz
7f3735502f
frontend: add unread indicator 2022-04-28 18:40:38 +03:00
hippoz
129d2ea4ec
add docker support 2022-04-27 23:51:08 +03:00
hippoz
6cfac8a6aa
frontend: fix behavior when no channels are present 2022-04-27 23:41:50 +03:00
hippoz
34dc98af95
frontend: add simple settings menu 2022-04-27 22:03:51 +03:00
hippoz
fb9fccb038
frontend: hide edit buttons for channels and messages if the user can't edit them 2022-04-27 20:24:50 +03:00
hippoz
21b06c38d2
frontend: fix messages container padding 2022-04-27 20:19:40 +03:00
hippoz
d2d985516c
frontend: show channel edit button when channel button is selected 2022-04-27 20:13:14 +03:00
hippoz
e0ba97deb3
frontend: add "send" button for small viewports 2022-04-27 20:12:04 +03:00
hippoz
f67909c8e7
frontend: fix message view not scrolling to bottom when re-selecting channel 2022-04-27 17:08:32 +03:00
hippoz
25b1ba653c
frontend: fix gateway reconnect 2022-04-27 17:08:19 +03:00
hippoz
24fb9feead
frontend: animate sidebar on small viewports 2022-04-27 17:03:35 +03:00
hippoz
1c87fa9758
frontend: automatically keep scroll position when viewport is resized 2022-04-27 15:44:50 +03:00
hippoz
2847cfcebc
frontend: inital steps for responsive design and mobile support 2022-04-27 05:03:47 +03:00
hippoz
1f800b6d4c
frontend: fix error for 204 response 2022-04-26 23:57:06 +03:00
hippoz
b72a445e97
frontend: improve message component layout 2022-04-26 23:44:06 +03:00
hippoz
d3dff302c5
frontend: prevent accessing stores of channels that have not been loaded yet 2022-04-26 23:20:28 +03:00
hippoz
66bdd7e06f
frontend: add message edit overlay 2022-04-26 23:15:49 +03:00
hippoz
82926ab172
frontend: add auth overlays 2022-04-26 22:45:40 +03:00
hippoz
706372716e
frontend: add maxlength and minlength to channel edit and create modals 2022-04-26 04:04:55 +03:00
hippoz
96da377e4e
frontend: fix error toast when the server returns no messages 2022-04-26 04:00:18 +03:00
hippoz
871ed87687
frontend: add "toast" system to tell the user of errors 2022-04-26 03:47:51 +03:00
hippoz
2ab2899529
frontend: improve directory structure 2022-04-26 03:09:16 +03:00
hippoz
f17fd0174b
frontend: add channel editing 2022-04-26 03:01:21 +03:00
hippoz
240411ddd3
frontend: add props to overlay store 2022-04-25 23:02:15 +03:00
hippoz
fbc84a1659
frontend: add comments for each global.css section 2022-04-25 22:55:23 +03:00
hippoz
a8479ee549
frontend: slightly improve create channel modal 2022-04-25 22:53:40 +03:00
hippoz
131a270562
frontend: make "create channel" modal functional 2022-04-25 22:48:29 +03:00
hippoz
b1ff452732
frontend: start working on "create channel" modal 2022-04-25 18:47:27 +03:00
hippoz
6c3d6a09fb
frontend: make generic fullscreen message class 2022-04-24 21:31:22 +03:00
hippoz
a5ade22483
frontend: add "connecting" indicator 2022-04-24 21:29:25 +03:00
hippoz
9122434a36
frontend: improve channel switch latency by reducing reflows due to scroll-related getters 2022-04-24 20:14:04 +03:00
hippoz
15e57c2372
frontend: improve logging 2022-04-23 23:07:46 +03:00
hippoz
2574e7e0e6
frontend: add username to top bar and improve paddings 2022-04-23 03:38:19 +03:00
hippoz
3668b45a30
frontend: separate more elements into different components 2022-04-23 01:06:04 +03:00
hippoz
6a1e89c288
frontend: remove debug function 2022-04-23 00:31:36 +03:00
hippoz
164545bb26
frontend: add placeholder color for message input 2022-04-22 23:34:02 +03:00
hippoz
9bfc645a32
frontend: improve messages container padding 2022-04-22 23:10:00 +03:00
hippoz
e552de269b
frontend: improve readability and css 2022-04-22 23:01:44 +03:00
hippoz
f7f536b318
frontend: preserve scroll position when loading more messages 2022-04-22 16:43:26 +03:00
hippoz
e19a3aa6cc
frontend: fix unnecessary requests being sent when switching between channels 2022-04-21 02:11:44 +03:00
hippoz
459b1c6703
frontend: show pending messages in a different color 2022-04-21 01:55:37 +03:00
hippoz
addfddd3ac
frontend: fix autoscroll breaking message loading 2022-04-20 17:53:20 +03:00
hippoz
e267ca4fc4
frontend: implement autoscroll 2022-04-20 17:49:31 +03:00
hippoz
0d95b02401
frontend: send messages 2022-04-20 03:44:48 +03:00
hippoz
7260525eec
frontend: message loading
This command finalizes support for dynamic message loading. The behavior is as follows:
When a user selects a channel for the first time, an "initial load" of messages will happen.
When the user is scrolled all the way to the bottom of the message view,
the store will continuously remove old messages to save memory.
Scrolling all the way to the top loads more messages.
2022-04-20 03:14:28 +03:00
da7e57fe82 frontend: add experimental message loading and display support 2022-04-19 21:21:55 +03:00
hippoz
efae331f99
frontend: move value assignment into Store constructor 2022-04-19 02:22:32 +03:00
hippoz
ce4592c6c0
frontend: fix array index checks in channels store 2022-04-19 02:19:24 +03:00
hippoz
abdaa80d1a
frontend: simplify store code
This commit simplifies the store code by removing the _init method, and instead initializing
everything on instantiation. This leads to not missing events and less complexity.
2022-04-19 02:17:24 +03:00
hippoz
59145c3dc2
frontend/design: move border from channelview to sidebar 2022-04-17 21:32:11 +03:00
hippoz
fea7d24166
frontend: allow users to select channels 2022-04-17 20:50:04 +03:00
hippoz
304cef3c11
frontend: add loading screen for initially loading the js and connecting to the gateway 2022-04-17 20:23:20 +03:00
hippoz
541464cdd9
frontend+backend: fix gateway-updated channel order 2022-04-17 17:56:03 +03:00
hippoz
381f1ae454
frontend: link up channel sidebar with gateway and fix channel button layout issue 2022-04-17 04:08:40 +03:00
hippoz
01649150a4
frontend/design: lay out basic design and layout 2022-04-16 04:17:48 +03:00
hippoz
2466b91f52
frontend: very basic layout prototype 2022-04-15 02:39:13 +03:00
hippoz
1885653815
frontend: add basic gateway debug messages 2022-04-14 22:08:08 +03:00
hippoz
fdbf6c9839
frontend: fix reconnect timeout 2022-04-14 22:04:41 +03:00
hippoz
d21408ac63
frontend: gateway reconnect + add frontend directory to express server 2022-04-14 16:56:01 +03:00