Lim Chee Aun
f957d9a8a8
Show toasts. Lots of toasts.
2023-04-09 01:01:36 +08:00
Lim Chee Aun
5b2cbc5bf1
Fix hashtag shortcut added check
2023-04-09 00:46:30 +08:00
Lim Chee Aun
959ac468d8
Allow instance-based hashtags
...
Also change design a little
2023-04-08 20:42:38 +08:00
Lim Chee Aun
eebb55ba38
Only show replies count if ancestors is a thread
2023-04-08 19:47:54 +08:00
Lim Chee Aun
b227d816bc
Show replies count for ancestors
2023-04-08 16:52:34 +08:00
Lim Chee Aun
224a289a20
New Mentions page
2023-04-06 19:32:26 +08:00
Lim Chee Aun
6773207610
Fix missing only mentions bug
2023-04-06 17:48:40 +08:00
Lim Chee Aun
efb38bc5d1
Forgot to switch back the limit
2023-04-06 11:33:13 +08:00
Lim Chee Aun
17ae03f766
since_id is not supported in trends/statuses
...
And change update interval to 5 mins
2023-04-06 10:24:52 +08:00
Lim Chee Aun
913a352dee
Add Trending page
2023-04-06 01:14:38 +08:00
Lim Chee Aun
f1bb1454c3
Sort followed hashtags
2023-04-06 00:49:32 +08:00
Lim Chee Aun
ff1a9fa444
Full CRUD for Lists
2023-04-05 23:30:26 +08:00
Lim Chee Aun
8ce8e06913
Add '- Boosts' filter
2023-04-04 11:01:53 +08:00
Lim Chee Aun
0ee17395ae
Auto-scroll to filter & add clear filter "button"
2023-04-03 13:17:22 +08:00
Lim Chee Aun
c7f4087ed2
Preliminary steps in adding filter bar
2023-04-03 10:36:31 +08:00
Lim Chee Aun
04b4101e55
Handle /notes/ url too
2023-04-03 10:05:57 +08:00
Lim Chee Aun
c8d582184f
Revert "Sometimes, a bracket makes a huge difference"
...
This reverts commit 45c872df28
.
2023-03-31 19:46:54 +08:00
Lim Chee Aun
45c872df28
Sometimes, a bracket makes a huge difference
2023-03-31 19:21:27 +08:00
Lim Chee Aun
347d288c83
It's time to level up ALL replies
...
When reach level 4, horizontal scrolling will kick in!
2023-03-30 20:07:07 +08:00
Lim Chee Aun
64b59e42a5
Remember replies toggle state during the "session"
2023-03-28 20:33:00 +08:00
Lim Chee Aun
f160a576d6
Add settings to hide translate button for certain languages
2023-03-28 19:04:52 +08:00
Lim Chee Aun
325bccf010
Prevent re-render when page visibility changes
...
Also time to remove legacy homeV1 🙏
2023-03-27 15:05:50 +08:00
Lim Chee Aun
4f8b5cf5fb
Fix deduping happened before saving the status
2023-03-27 00:47:29 +08:00
Lim Chee Aun
caee38c98f
New experiment: dedupe boosts and group context
2023-03-26 23:18:36 +08:00
Lim Chee Aun
f5646fe8a8
Attempt to fix weird "latest" item bug
2023-03-25 20:18:53 +08:00
Lim Chee Aun
2c8112baa5
Add ability to switch post to its own instance
2023-03-24 15:05:57 +08:00
Lim Chee Aun
e6da22a1e0
Nav Menu show avatar if multiple accounts
...
Accounts sheet default to 'switch' when click on account
2023-03-23 09:51:52 +08:00
Lim Chee Aun
422813be9c
New experimental Filtered Posts UI
2023-03-22 00:09:36 +08:00
Lim Chee Aun
ed1d475a12
Fix .status conflicting with .notification.status
...
Naming is hard
2023-03-20 23:07:21 +08:00
Lim Chee Aun
47b51bdef8
Add Refresh menu item to Status page
2023-03-19 20:12:45 +08:00
Lim Chee Aun
d9b9c04ec0
Fix pinned statuses gone missing
2023-03-18 22:25:02 +08:00
Lim Chee Aun
a0d4d9e08c
Time to save all to states
...
Memory usage might go up but need this for reactivity
2023-03-18 20:20:48 +08:00
Lim Chee Aun
ba2e9c29e4
Adjust adjust
2023-03-15 14:01:32 +08:00
Lim Chee Aun
f4310ad8e4
Add ability to reload hero status
2023-03-14 00:36:40 +08:00
Lim Chee Aun
0d29043358
Better profile document.title
2023-03-13 10:07:22 +08:00
Lim Chee Aun
e0e1196c9e
Make account info load wayyyy faster on Profile page
2023-03-11 21:33:55 +08:00
Lim Chee Aun
6fd9c106c6
Add account info into Account statuses page
2023-03-11 14:05:56 +08:00
Lim Chee Aun
cf437a83da
Make statuses in notifications reactive
2023-03-10 23:01:26 +08:00
Lim Chee Aun
731f91122b
Fix toggle values for settings for translation
2023-03-09 13:20:01 +08:00
Lim Chee Aun
bbdfb5dd7d
Prettify About section
2023-03-09 11:23:07 +08:00
Lim Chee Aun
66e068ee7b
Fix bug with reblogs/favourites counting
2023-03-08 23:32:54 +08:00
Lim Chee Aun
87a5eb5492
Add configurable text size
2023-03-08 17:17:23 +08:00
Lim Chee Aun
73b8294811
Split Accounts away from Settings
...
Very MVP, even #settings-container is the same for now
2023-03-08 00:32:33 +08:00
Lim Chee Aun
355b3be6e9
Alrighty, let's test this post translation out!
2023-03-07 22:38:06 +08:00
Lim Chee Aun
7b8c7f3fb6
Grouped favourite+boost notifications!
2023-03-03 11:38:10 +08:00
Lim Chee Aun
a9412609cf
Enable boosts carousel for public timelines too
2023-03-02 22:10:32 +08:00
Lim Chee Aun
37f7c2a581
Make the hashtag typing experience slightly better
2023-03-01 23:39:31 +08:00
Lim Chee Aun
9f84297b8f
Ooops typo
2023-03-01 22:18:45 +08:00
Lim Chee Aun
50fd06057f
Refactor niceDateTime out
2023-03-01 20:07:22 +08:00
Lim Chee Aun
b1d6f2001e
Fix focus when switching to new pages
2023-03-01 15:47:19 +08:00
Lim Chee Aun
3c7fc30444
Add simple loading state for switching instances
2023-02-28 22:44:10 +08:00
Lim Chee Aun
a86daaac0b
Fix useScroll bug
2023-02-28 21:56:41 +08:00
Lim Chee Aun
ba2aa18843
Fix/Beautify the menus in Settings
2023-02-28 17:12:17 +08:00
Lim Chee Aun
0bc009140e
It's time to bring back the tab bar
2023-02-27 23:59:41 +08:00
Lim Chee Aun
8aaba24d1f
Add 'more' menu
...
- Refactor Toast
- Fix locale for datetime strings in status
- Nicer shadow for menus
2023-02-27 00:55:04 +08:00
Lim Chee Aun
7b66b832d5
Add more "instance" + saveStatus for new notifications
2023-02-25 14:20:26 +08:00
Lim Chee Aun
b4a8e60144
Fix wrong authenticated
2023-02-25 12:40:59 +08:00
Lim Chee Aun
1c8bba456d
Add menu for Public timeline
...
Add menu item to switch between Local and Federated
2023-02-25 11:25:50 +08:00
Lim Chee Aun
aca3cb677b
Sometimes need exact distance instead ratio
2023-02-25 10:50:02 +08:00
Lim Chee Aun
1f2dbb8e06
Experimental multi-hashtag timeline
2023-02-25 10:04:30 +08:00
Lim Chee Aun
9e867c7af5
Fix title not working when not logged in
...
Welcome page's useTitle overridden other page's useTitle
2023-02-25 10:03:34 +08:00
Lim Chee Aun
732244b4b3
Shiny pill style
2023-02-23 16:43:17 +08:00
Lim Chee Aun
2120a1e28e
Still got to make sure instance is lowercase
...
Also, spellcheck={false} > spellcheck="false"
2023-02-22 09:46:50 +08:00
Lim Chee Aun
cd9b01095c
Fix post status banner showing wrong thing for non-logged-in users
2023-02-22 00:42:43 +08:00
Lim Chee Aun
8e4ecd242b
Revert flush to cancel, speed up scroll position caching
...
Somehow the flush cache the scroll position for a different status ID
2023-02-20 20:59:46 +08:00
Lim Chee Aun
58208a417c
Check if there are shortcuts too before displaying Columns
2023-02-20 00:22:10 +08:00
Lim Chee Aun
be35f3a415
Remove console.log
2023-02-19 21:15:40 +08:00
Lim Chee Aun
d5bceb1d81
Handle logged-out cases
2023-02-19 14:49:53 +08:00
Lim Chee Aun
7f22ec6a9b
Go back to root after log out
2023-02-19 14:49:05 +08:00
Lim Chee Aun
f0eb684412
Got to instance them all
2023-02-19 00:05:46 +08:00
Lim Chee Aun
d4a6aa2d3b
Only show alert if user typed something
2023-02-18 23:29:17 +08:00
Lim Chee Aun
ab2328f364
Handle use-case when Following is not in Home, in multi-column mode
2023-02-18 21:37:34 +08:00
Lim Chee Aun
02eb2ff470
Extract columns out & don't use dynamic imports
...
Vite have difficulties importing them dynamically. Sad face.
Also this makes Home look cleaner.
2023-02-18 21:14:24 +08:00
Lim Chee Aun
522d55ebb8
New experiment: multi-column mode
2023-02-18 20:48:24 +08:00
Lim Chee Aun
161aff64ac
This footer is kinda abrupt, so try "delay" it a little
2023-02-18 10:51:39 +08:00
Lim Chee Aun
29d4cddbf4
Add experimental instance switcher for public timelines
2023-02-18 01:40:37 +08:00
Lim Chee Aun
046fde0f70
Restyle the footer
2023-02-18 01:28:10 +08:00
Lim Chee Aun
07d1734720
Sometimes autofocus ain't working
2023-02-18 01:27:59 +08:00
Lim Chee Aun
b06cd36b3f
Initial work to allow cross-instance linking
...
- Load current-instance relationship on remote-instance account sheet
- Add button to switch to current-instance status page from remote-instance status page
2023-02-17 17:37:31 +08:00
Lim Chee Aun
e57b362ee0
Fix undefined turned into a "undefined" string due to string concat
2023-02-17 11:28:25 +08:00
Lim Chee Aun
0430f4ae89
Reuse BoostCarousel for pinned posts
...
Now we can show *anything* into a carousel
2023-02-17 10:55:16 +08:00
Lim Chee Aun
62ce0250c6
Don't need this
2023-02-17 10:14:44 +08:00
Lim Chee Aun
c37df11a25
Show pinned posts
2023-02-17 10:12:59 +08:00
Lim Chee Aun
4dae1d1576
Shorter copies
2023-02-16 19:10:26 +08:00
Lim Chee Aun
0bef245c83
New feature: Shortcuts
2023-02-16 17:52:16 +08:00
Lim Chee Aun
11d74b3258
Disable grouping for follow requests
2023-02-15 14:49:15 +08:00
Lim Chee Aun
f9794c1cd5
Fix more bugs from learnings
2023-02-15 11:20:48 +08:00
Lim Chee Aun
bc7ac30e74
Switch to logged-in instance URL
2023-02-15 10:51:09 +08:00
Lim Chee Aun
8da6532cd3
Propagate learnings to Notifications page
2023-02-15 10:50:20 +08:00
Lim Chee Aun
d324d3a672
Move notifications link from Following to Home
2023-02-15 10:49:36 +08:00
Lim Chee Aun
6f242aad27
Followed hashtags are paginated
...
Gotta fetch 'em all!
I don't know the limit, but let's fetch ALL for now instead of lazy loaded.
2023-02-12 22:58:36 +08:00
Lim Chee Aun
a37a1ca21b
Instance-specific search?
...
I don't know if this is even useful??
2023-02-12 19:36:55 +08:00
Lim Chee Aun
08be313757
Additional styling for search page again
...
This is such a weird page
2023-02-12 19:29:27 +08:00
Lim Chee Aun
ac30963ddf
New AccountBlock component
2023-02-12 19:29:03 +08:00
Lim Chee Aun
0b6dd07eee
Rewrote notifications, again
2023-02-12 17:38:50 +08:00
Lim Chee Aun
6c43ced27c
Desperate attempt to make the text and buttons flows nicely in the header
...
This code will probably haunt me in the future
2023-02-11 23:35:03 +08:00
Lim Chee Aun
4a01d3d404
Try save some space here
2023-02-11 20:56:33 +08:00
Lim Chee Aun
b29e7ad1cb
Clear q URL when clear search field
2023-02-11 20:39:37 +08:00
Lim Chee Aun
d9564bff72
Still need these fallbacks for now
2023-02-11 18:55:21 +08:00
Lim Chee Aun
b8a938b6d8
Don't need Home button in public timeline
2023-02-11 18:21:39 +08:00
Lim Chee Aun
26f8b618a5
At this point, better write my own matchPath right?
2023-02-11 18:19:23 +08:00
Lim Chee Aun
9401fc38e1
Need location.search too because Search page is using it
2023-02-11 17:58:49 +08:00
Lim Chee Aun
27c7a2dee9
Shorter placeholder for Search field
2023-02-11 17:58:23 +08:00
Lim Chee Aun
c1eade0fd8
Stupid mobile safari doesn't apply radius to outlines
2023-02-11 17:58:12 +08:00
Lim Chee Aun
afa8a0c057
Maybe better copy for search page
2023-02-11 17:57:44 +08:00
Lim Chee Aun
863ac2663c
Fix titles
2023-02-11 17:57:26 +08:00
Lim Chee Aun
62eb6d6b30
Reuse style for search page, time to surface it
2023-02-11 17:01:43 +08:00
Lim Chee Aun
068a49abce
Add Followed Hashtags
2023-02-11 16:48:47 +08:00
Lim Chee Aun
ffc8d88f82
Add update checking to these pages
2023-02-11 16:28:03 +08:00
Lim Chee Aun
ee5ab3f22c
Add loader to search page
2023-02-11 16:27:52 +08:00
Lim Chee Aun
0a7189d35a
Fix wrong paths again
2023-02-11 16:27:40 +08:00
Lim Chee Aun
722852f5c2
Expose more pages now
...
Except one
2023-02-11 00:05:18 +08:00
Lim Chee Aun
3490b0e714
Revert "Sort first"
...
This reverts commit 96f61e6e3f
.
2023-02-10 22:23:19 +08:00
Lim Chee Aun
e0e236bd26
Experimental hidden search page
...
And refactored out some reusable components
2023-02-10 22:10:13 +08:00
Lim Chee Aun
541d318fdc
One more logic for comment collapsing
2023-02-10 17:35:38 +08:00
Lim Chee Aun
96f61e6e3f
Sort first
2023-02-10 14:20:48 +08:00
Lim Chee Aun
81ebb61096
Sneak in this little menu
...
And… fix title leak bug
2023-02-10 13:39:46 +08:00
Lim Chee Aun
83e6a2b599
Remove console.log
2023-02-09 23:05:40 +08:00
Lim Chee Aun
109cae9c19
More path fixes
2023-02-09 23:01:33 +08:00
Lim Chee Aun
58d4ca0ff2
Finally replace Home
2023-02-09 22:27:49 +08:00
Lim Chee Aun
f511b0a5ab
More code porting
2023-02-08 19:11:33 +08:00
Lim Chee Aun
9921e487e8
Minimum viable Home → Following port
2023-02-08 00:31:46 +08:00
Lim Chee Aun
f6897ef4d8
Don't open sub comments is parent is a thread
2023-02-07 12:01:36 +08:00
Lim Chee Aun
9992299716
More ports to reusable Timeline component
...
- use status id instead of status, for "auto-update" feature
- hot keys!
2023-02-06 23:50:00 +08:00
Lim Chee Aun
db428c04d1
Scoped keyboard shortcuts
2023-02-06 23:47:58 +08:00
Lim Chee Aun
4520822f1f
Use nested routes
2023-02-06 20:17:07 +08:00
Lim Chee Aun
b58a838af0
Forgot to update these
2023-02-06 20:01:56 +08:00
Lim Chee Aun
7e5c3f1bac
Allow Account sheet on welcome page
2023-02-06 19:55:04 +08:00
Lim Chee Aun
719a407414
Use /:instance?/xxx instead
2023-02-06 19:54:18 +08:00
Lim Chee Aun
3aea09fd42
Experimental feature to see post in currently logged-in instance
2023-02-06 19:09:25 +08:00
Lim Chee Aun
1357c1b2bd
Fix more edge cases after breaking changes
2023-02-06 16:35:03 +08:00
Lim Chee Aun
1debfc2c12
Fix missing states
2023-02-06 01:10:49 +08:00
Lim Chee Aun
a130743d4c
Breaking: refactor all masto API calls
...
Everything need to be instance-aware!
2023-02-06 00:17:19 +08:00
Lim Chee Aun
7e9b6f681f
Forgot to emojify again
...
This is getting ridiculous
2023-02-04 13:18:23 +08:00
Lim Chee Aun
e0bab6c70a
More refactoring work
2023-02-03 21:08:08 +08:00
Lim Chee Aun
e95954a7fd
Begin work on account-specific store
...
1. Move boostsCarousel setting to account-specific, sadly no migration from previous setting
2. Cache last notification to prevent keep getting unread notification badge
2023-02-02 17:29:57 +08:00
Lim Chee Aun
eb2f80162a
Don't debounce if loading subsequent posts
2023-02-02 15:48:12 +08:00
Lim Chee Aun
20e569da0c
Strip out @acct@ from instance URL when log in
2023-02-01 10:49:42 +08:00
Lim Chee Aun
3d2b7f683c
Fix notifications grouping bug
2023-02-01 02:09:07 +08:00
Lim Chee Aun
ed8fce3cbf
Don't need --invisible hack
...
Protip: use `:not(details:not([open]) > summary ~ *, details:not([open]) > summary ~ * *)`
2023-02-01 01:21:58 +08:00
Lim Chee Aun
6647b6cc28
Fix j/k shortcuts to work with collapsed comments
...
Use x key to expand/collapse comments
2023-02-01 00:10:38 +08:00
Lim Chee Aun
9a261470df
Custom titleComponent for Timeline
2023-01-31 19:08:10 +08:00
Lim Chee Aun
18b48c8d19
Smarter collapsing, show total comments count, show 3 avatars
2023-01-31 16:13:16 +08:00
Lim Chee Aun
4ed2852c41
Don't show updates button when loading
2023-01-31 11:24:46 +08:00
Lim Chee Aun
1c52875ba4
Add links to privacy policy
2023-01-30 23:16:00 +08:00
Lim Chee Aun
c40fd1ec48
Better hues
2023-01-30 22:31:21 +08:00
Lim Chee Aun
3cec4f66c5
Fix document.title bug
2023-01-30 22:00:14 +08:00
Lim Chee Aun
969fddc581
Time for use-debounce
...
Try a leading debounce here
2023-01-30 20:51:06 +08:00
Lim Chee Aun
509aac11ab
Fix document title leaked out
...
Probably need to rethink this one day
2023-01-30 20:36:10 +08:00
Lim Chee Aun
1cfef22465
Let's test this out
2023-01-30 20:30:45 +08:00
Lim Chee Aun
88ffb3a44c
Reduce distance from start to show the scroll to top button
2023-01-30 19:59:41 +08:00
Lim Chee Aun
1fed35f674
Flush instead of cancel
2023-01-30 19:36:47 +08:00
Lim Chee Aun
e5e2bd6f2a
Add account statuses timeline + few aesthetic changes to Account sheet
...
And secretly link to this timeline, don't tell anyone lol
2023-01-29 23:37:13 +08:00
Lim Chee Aun
292186e918
New UI experiment: media modal + status detail page
...
- Extracted out the media modal and media component from Status
- Use :has CSS selector to do most of the layout work
- Expecting edge case UI bugs
2023-01-29 15:23:53 +08:00
Lim Chee Aun
ae37d58826
Fix document.title not working properly
2023-01-29 15:22:16 +08:00
Lim Chee Aun
66216e911e
At this point, might as well support level 4
...
Also still need to show the comment icon IF THERE'S LEVEL 5++
2023-01-29 01:29:26 +08:00
Lim Chee Aun
a088b48eb7
Status thread page improvements
...
- Show level 3 comments
- Change header-tap to scroll top to a button instead (prevent accidental scroll top)
- Show avatars in <summary>
- Clean up CSS a bit
2023-01-29 01:02:25 +08:00
Lim Chee Aun
ae90b41aae
New feature: "Show all sensitive content" menu
2023-01-28 22:34:36 +08:00
Lim Chee Aun
aaeca7dd03
Refactor out a Timeline component
...
Also replace login() with createClient() for faster log in
2023-01-28 18:52:18 +08:00
Lim Chee Aun
816653e2e6
Add j/k keyboard navigation to status page
...
At the same time, fix shift+k not working in Home page
2023-01-27 20:54:18 +08:00
Lim Chee Aun
912506afcc
Fix some scrolling edge cases
...
This is tough
2023-01-27 11:48:13 +08:00
Lim Chee Aun
e83d128f62
Rewrite Notifications page + experimental fix on getting/showing updates
2023-01-27 11:47:30 +08:00
Lim Chee Aun
6a7e7085bd
Bump up retries
...
Slow servers are slow.
2023-01-26 21:02:39 +08:00
Lim Chee Aun
285f8b46f2
Add logo and link to @phanpy
2023-01-26 00:54:30 +08:00
Lim Chee Aun
9a898437f9
Remove unused code
2023-01-25 21:53:43 +08:00
Lim Chee Aun
d2c820ce5a
Only show 'Set as default' if has more than 1 account
2023-01-25 16:42:01 +08:00
Lim Chee Aun
c24a3ef251
Add fetch retries in status page
2023-01-25 16:41:28 +08:00
Lim Chee Aun
28281bb752
New component: Menu
...
It's time to do this menu thing the right way instead of hacky CSS
2023-01-24 20:56:43 +08:00
Lim Chee Aun
19ee95d188
Add a key, just in case
2023-01-24 20:55:04 +08:00
Lim Chee Aun
791ac667f0
Style adjustments for Settings page
2023-01-24 17:06:13 +08:00
Lim Chee Aun
10b99d2af4
Fix k, shift+k not working
2023-01-24 16:27:09 +08:00
Lim Chee Aun
348e7a52c9
Fix stupid mistake
2023-01-23 17:58:33 +08:00
Lim Chee Aun
e7dffecfe0
Need to reset cachedStatusesMap too
2023-01-22 19:21:24 +08:00
Lim Chee Aun
0ecd7f572f
s/Loader/loader
2023-01-22 16:40:10 +08:00
Lim Chee Aun
78839913ed
s/Icon/icon
2023-01-22 16:39:04 +08:00
Lim Chee Aun
2a44f3a670
Hidden way to update the account info
...
Usually when avatar or name changes
2023-01-22 00:37:46 +08:00
Lim Chee Aun
6f4a5553ec
Simplify and robustify
2023-01-21 20:21:16 +08:00
Lim Chee Aun
81170c6d05
When clicked, don't use cached scroll position
2023-01-21 19:52:51 +08:00
Lim Chee Aun
fa5a468005
Don't really get how this becomes multi-line
2023-01-21 18:59:13 +08:00
Lim Chee Aun
9bff95bcec
Replace preact-router with react-router
...
Need more routing powers, hopefully things don't break 🤞
2023-01-21 00:23:59 +08:00
Lim Chee Aun
a87b95ed18
Restyle settings sheet
2023-01-17 17:58:04 +08:00
Lim Chee Aun
8834c03d7a
Need to cancel the debounce
2023-01-17 08:56:13 +08:00
Lim Chee Aun
f7cbf238b1
Shift+j/k shortcut to skip posts in Boosts Carousel
2023-01-16 21:26:33 +08:00
Lim Chee Aun
58cefc2853
Also activate boosts carousel for serial boosts
2023-01-16 20:50:03 +08:00
Lim Chee Aun
d7d9d9f0a2
Don't store scroll position while in loading state
2023-01-16 20:32:51 +08:00
Lim Chee Aun
62a3ba7c5f
Bug fixes for boosts carousel + scrolling
2023-01-16 20:32:30 +08:00
Lim Chee Aun
68b6cb869e
No need these console logs anymore
2023-01-14 22:05:38 +08:00
Lim Chee Aun
0dcccd1e57
Fix scroll direction stopped working
...
s/up/start s/down/end
2023-01-14 20:16:13 +08:00
Lim Chee Aun
e2139399ee
New experiment: Boosts Carousel ™️
2023-01-14 19:42:04 +08:00
Lim Chee Aun
71b50382e9
New feature: Unsent Drafts
...
For now, this only works for unsent unsaved drafts e.g. the browser kill the page without giving the user the chance to discard
2023-01-13 15:30:09 +08:00
Lim Chee Aun
e2b6f2df6a
Auto-threadify when open a status page with context
2023-01-11 17:45:37 +08:00
Lim Chee Aun
a421406a11
DRY get current Account
2023-01-11 13:28:42 +08:00
Lim Chee Aun
9faf730e82
Handle accept/reject follow requests for locked accounts
2023-01-10 21:49:23 +08:00
Lim Chee Aun
9743da1e9b
Fix cached statuses gone
2023-01-10 20:05:47 +08:00
Lim Chee Aun
53f70e68f7
Need better distancing
2023-01-10 16:37:34 +08:00
Lim Chee Aun
2bed0c7f03
Add Experimental scroll to top button for status page
2023-01-10 10:44:16 +08:00
Lim Chee Aun
1727475336
Reduce more code for scrolling logic
...
- Move from sessionStorage to in-memory for statuses cache
- Remove userInitiated, it's getting hard to differentiate between user-initiated and non-user-initiated. Probably better done from the route side instead of only stuck to this component's state
2023-01-10 01:31:38 +08:00
Lim Chee Aun
7f5214c8c6
Need a way to refresh status page on-demand
2023-01-09 21:51:30 +08:00
Lim Chee Aun
13c3b8fa3b
Finally DRY this saving status code
2023-01-09 19:11:34 +08:00
Lim Chee Aun
522dd08925
Remove unused imports
2023-01-09 17:05:42 +08:00
Lim Chee Aun
cab06ae936
Further simplify the scrolling logic in Status page
...
Previous code is too darn complicated and doesn't work in async cases
e.g. user scrolled while the status is loading
2023-01-09 16:56:16 +08:00
Lim Chee Aun
600edbee5d
Might as well make my own link open up the Account modal
2023-01-07 21:43:56 +08:00
Lim Chee Aun
41df88e625
Perf fixes
...
Turns out, adding an object to states.statuses proxyMap object, re-render ALL statuses
2023-01-07 20:26:23 +08:00
Lim Chee Aun
ee9bfe6331
Lots of tiny adjustments
2023-01-07 14:45:04 +08:00
Lim Chee Aun
ac557e1271
Delete cache in SW before reloading status page
...
Seems kinda hacky… probably might cause new side effects
2023-01-06 21:29:16 +08:00
Lim Chee Aun
fffc8cc983
Further grouping of notifications
2023-01-06 12:51:53 +08:00
Lim Chee Aun
de45a0f9d5
Update useScroll to check distance in threshold instead of pixels
2023-01-05 15:29:11 +08:00
Lim Chee Aun
04ccf8aca9
Replace @github/relative-time-element with dayjs
2023-01-05 10:50:27 +08:00
Lim Chee Aun
8e19d098eb
Test add this condition to see how it works
2023-01-04 17:12:44 +08:00
Lim Chee Aun
b0271c50ae
Fix forgot to put back the fake <li>
2023-01-03 00:56:11 +08:00
Lim Chee Aun
dbf9c22ea5
Less obstrusive "New posts"
2023-01-03 00:52:16 +08:00
Lim Chee Aun
d15b1fe03e
Fix route() actually not working
2023-01-03 00:48:36 +08:00
Lim Chee Aun
9ea941368d
More fixes
2023-01-03 00:27:47 +08:00
Lim Chee Aun
d235f56cff
Always clear 'new' when load from beginning
2023-01-02 23:19:12 +08:00
Lim Chee Aun
39124ccc70
Add experimental scroll-based effects
...
- Scroll to top = refresh Home
- Scroll up/down = show/hide header and compose button
- Scroll near bottom = load next statuses
- Move Compose button to only at Home instead of 'App' level
2023-01-02 21:36:24 +08:00
Lim Chee Aun
44f179a69f
Beautify notifications slightly
2023-01-02 14:42:28 +08:00
Lim Chee Aun
8099fedf82
Don't store instances list inside JS bundle
2023-01-01 21:02:06 +08:00
Lim Chee Aun
727b944f3b
toLowerCase() all the instance URLs!
2023-01-01 20:59:55 +08:00
Lim Chee Aun
bfaefbe178
Disable autocapitalize on input field
...
And disable a bunch of others too
2023-01-01 20:53:40 +08:00
Lim Chee Aun
d2d8571b3f
Fix updates button got cut off in larger viewport
2023-01-01 19:24:08 +08:00
Lim Chee Aun
b62cff4d0e
Different gradient for welcome
2023-01-01 17:19:07 +08:00
Lim Chee Aun
2031e88d87
Better handling of failures
...
Some mastodon instances are getting hit hard
2023-01-01 15:28:07 +08:00
Lim Chee Aun
842db90f9c
Handle context API call fail error
2023-01-01 12:02:11 +08:00
Lim Chee Aun
ac91dc7983
Make this manual opt-in
2023-01-01 08:51:56 +08:00
Lim Chee Aun
895602e446
Gosh this need to be low threshold
...
It's actually % of the full height of the element. So if the status is super long (100K chars), it'll never be 0.25
2022-12-31 23:58:48 +08:00
Lim Chee Aun
b12b0c588d
Experimental j,k,o,esc,backspace shortcuts
2022-12-31 09:52:31 +08:00
Lim Chee Aun
c0234dd26e
Add focus for notification block too
2022-12-30 23:08:55 +08:00
Lim Chee Aun
d605fc6ebe
Fix missing border
2022-12-30 20:39:27 +08:00
Lim Chee Aun
9201f7a118
First step in making things focusable
2022-12-30 20:37:57 +08:00
Lim Chee Aun
123d2469f6
Don't show hero pointer when loading
2022-12-30 13:26:05 +08:00
Lim Chee Aun
3338c49c25
Fix threshold for larger-than-viewport statuses
2022-12-29 16:15:58 +08:00
Lim Chee Aun
5804ddbdb9
Add all the focuses
2022-12-29 16:11:58 +08:00
Lim Chee Aun
bdcefb1ab0
Add a nice pointer
2022-12-29 11:47:10 +08:00
Lim Chee Aun
353c911232
Temporarily disable this now
2022-12-29 10:27:36 +08:00
Lim Chee Aun
7e3733d79e
Delay hero status fetch if already cached
...
The context call is more important
2022-12-28 18:06:05 +08:00
Lim Chee Aun
2dca345818
More breathing space after the negative top margin hack
2022-12-28 00:24:36 +08:00
Lim Chee Aun
e7cff25337
Fix wrong logic for silent fail
...
Some mastodon instances are getting swamped
2022-12-27 21:30:18 +08:00
Lim Chee Aun
fb88129ae7
Check for ref before access scrollTop
2022-12-27 09:05:45 +08:00
Lim Chee Aun
6da4834b71
Change back to limit 1
...
Sometimes, there's really just one new status update.
2022-12-26 01:09:53 +08:00
Lim Chee Aun
c75bf36345
Try dblclick for reloading
...
Not sure if this'll work on touch-based devices. Also good for debugging.
2022-12-25 23:53:18 +08:00
Lim Chee Aun
86f38ee3b8
Fix Account sheet relationship check not working when clicking from Settings page
...
This is because accounts from different instances have different IDs!
They're NOT unique cross-instance. So while on one instance, cannot use the account ID of the other instance to query for relationship because the ID doesn't exist on *current* instance.
2022-12-25 23:31:50 +08:00
Lim Chee Aun
318c2aeffc
Upgrade masto.js to V5
...
- Fix all breaking changes
- Have to manual remove null/undefined values before creating statuses
- Have to recreate iterator instance if start from scratch because can't pass args in next()
2022-12-25 23:28:55 +08:00
Lim Chee Aun
cf4fbc8553
Make sheet have header and body section
2022-12-25 18:01:01 +08:00
Lim Chee Aun
ec67811823
Smart status heading + tap to scroll to hero status
...
I'll probably need to componentize relative-time, it's getting not DRY
2022-12-24 22:26:43 +08:00
Lim Chee Aun
8eec844781
Scroll-to-top for Notifications
2022-12-24 17:54:42 +08:00
Lim Chee Aun
42fa30d8f8
Move the onVisibilityChange API check to app.jsx
...
Doesn't make sense to make it part of Home. Also add in Notifications check.
2022-12-24 10:26:05 +08:00
Lim Chee Aun
f8fac1294b
Fixes & adjustments to statuses in Status page
2022-12-24 01:11:11 +08:00
Lim Chee Aun
dd99d186bf
Add one more case for scrolling
2022-12-23 23:42:41 +08:00
Lim Chee Aun
fcd29d4bdc
Aesthetic changes
...
- Icon change for "Unlisted"
- Dynamic text size for compose field depending on char count
2022-12-23 21:25:01 +08:00
Lim Chee Aun
a2e55eca90
Make fetches concurrent
2022-12-23 12:30:49 +08:00
Lim Chee Aun
fe78ac5fa0
Fix userInitiated undefined
2022-12-23 12:30:07 +08:00
Lim Chee Aun
d3e3e47527
Fix logic for cached statuses
2022-12-23 11:28:25 +08:00
Lim Chee Aun
7e84088d67
Handle case when too many sub-comments
...
For now, encourage clicking on status to see more replies instead of expanding the sub-comments
Feels "wasted" since the comments are already loaded but it's just too much scrolling
Also auto-open if the sub-comments are not a lot.
2022-12-23 00:30:55 +08:00
Lim Chee Aun
de409bd668
Fix empty statuses when (pre)loading homeNew
2022-12-22 21:38:43 +08:00
Lim Chee Aun
ade3ebb5ae
Experiment: new reply/thread "badges"
...
Also totally forced one-lined the name text + date at the top of a status
2022-12-22 10:35:39 +08:00
Lim Chee Aun
6c0aedcd3e
Fix new posts check not working
2022-12-22 08:39:01 +08:00
Lim Chee Aun
eba78e3f07
Time to embrace sheets
...
.box class is just… weird…
2022-12-21 20:00:45 +08:00
Lim Chee Aun
3b6f0f277e
Rewrite whole scroll logic for Status page
...
Handle 3 cases, all written down in comments.
Crossing my fingers 🤞 🤞 🤞
2022-12-21 18:02:13 +08:00
Lim Chee Aun
237ceae356
Visual indicator that it tries to get new updates
...
Probably too subtle. Loader also only appears after 1s delay 😆
2022-12-21 08:54:39 +08:00
Lim Chee Aun
becb8aa89d
Emphasize mentions on notifications
2022-12-21 08:48:11 +08:00
Lim Chee Aun
3589438556
Fix clash of styles
...
.status got overriden 😂 (maybe I should scope the CSS or something)
2022-12-21 07:42:48 +08:00
Lim Chee Aun
a9538e6cf0
Beautify log in page a little
2022-12-21 01:04:04 +08:00
Lim Chee Aun
e80e09c398
Need a little padding as breathing space
2022-12-21 01:03:49 +08:00
Lim Chee Aun
04323f05ff
Experimental: caching status + context
...
Cache all statuses from Status page so that it can load faster when
navigating between statuses. Uses sessionStorage
2022-12-21 01:02:48 +08:00
Lim Chee Aun
8babc97877
Fix status jumping bug
...
This part is too complex.
The thread can get very fancy and it's impossible to handle all use-cases without a lot of code.
Solution is just fading all of them out while loading.
2022-12-20 15:32:31 +08:00
Lim Chee Aun
c116db79cc
Have fun with welcome page
2022-12-20 00:16:45 +08:00
Lim Chee Aun
ad2bebec0e
Bump notifications limit
2022-12-20 00:11:55 +08:00
Lim Chee Aun
99357dc887
Shorten number for replies count
2022-12-19 17:38:20 +08:00
Lim Chee Aun
9beee6cb37
Revert back to 'X' instead of '<'
...
It can be confused with the browser back button. It doesn't function as back button as well
2022-12-19 16:25:57 +08:00
Lim Chee Aun
681dfaaaff
Auto-open details and hide summary button
...
Only show toggle comments button if there are many statuses
2022-12-19 10:05:27 +08:00
Lim Chee Aun
141f4a94dc
Fix "show more" appearing below the faux padding
2022-12-19 10:04:50 +08:00
Lim Chee Aun
0a4898059b
Set to 2
2022-12-19 10:04:11 +08:00
Lim Chee Aun
f110ac6812
Fix flash of un-nested comments
2022-12-19 00:19:19 +08:00
Lim Chee Aun
a029c7ccae
Change from 'x' to '<' on Status page
2022-12-18 20:53:32 +08:00
Lim Chee Aun
2f24713d71
✨ Real nested comments
...
- Collapsed/expandable replies
- Pagination for many many comments
2022-12-18 20:46:13 +08:00
Lim Chee Aun
9eb40d165f
Only snap to top when there are ancestors
2022-12-18 13:43:34 +08:00
Lim Chee Aun
548af18bee
Only show "New posts" when more than 1 new post
2022-12-18 11:53:58 +08:00
Lim Chee Aun
03b319a517
Make loading new posts less destructive
2022-12-18 11:53:41 +08:00
Lim Chee Aun
16ae8af889
Replace deprecated methods
2022-12-18 11:52:53 +08:00
Lim Chee Aun
6e09d5f836
Fix .insignificant class affecting other elements
...
Remove them because they were used in previous discarded design
2022-12-18 01:14:44 +08:00
Lim Chee Aun
72b0931554
Super lazy way to implement "only mentions" in Notifications
...
#OnlyMentions
Could have make another tab that makes another request to /notifications but I feel lazy
2022-12-18 01:04:26 +08:00
Lim Chee Aun
665b908698
Put names into every export
2022-12-16 13:27:04 +08:00
Lim Chee Aun
94dd2bf627
Fix spoiler content accidentally get leaked in document.title
...
- Also add quotes
- Add comment to why use 64 chars (soft) limit
2022-12-15 17:14:33 +08:00
Lim Chee Aun
95519a538e
Some breathing space for "Show more" button
2022-12-15 17:00:11 +08:00
Lim Chee Aun
56cab34a9c
Test add last build time and commit hash
2022-12-15 14:42:34 +08:00
Lim Chee Aun
ca98863c01
Fix bug when the first notification is already a grouped one
2022-12-15 13:11:28 +08:00
Lim Chee Aun
ca71d45a77
Fix wrong isSelf logic
2022-12-15 01:45:36 +08:00
Lim Chee Aun
735cbf05b7
Very embarrassing mistake
...
Why do I even name such bad variable names
2022-12-14 22:53:14 +08:00
Lim Chee Aun
fa1769c3c2
New feature: Grouped notifications
...
- Grouped based on notification.type and notification.status.id
- Crossing fingers here
2022-12-14 22:46:50 +08:00
Lim Chee Aun
6195f45800
Remove unused code
2022-12-13 20:42:19 +08:00
Lim Chee Aun
3396aa2512
Fix InView creating div inside ul
...
Make it create li but only observe one of the skeleton instead
2022-12-12 22:42:58 +08:00
Lim Chee Aun
21cfec3386
Remove console logs
2022-12-12 08:47:11 +08:00
Lim Chee Aun
cb64f5ffda
Add "Edited at" meta with Edit History modal
...
Much refactor, kinda ugly code still.
Edit History design is still very basic.
2022-12-11 21:22:22 +08:00
Lim Chee Aun
6f3eae15b6
Fix missing boost icon
2022-12-11 17:10:10 +08:00
Lim Chee Aun
9f9395d965
Better copy to differentiate poll created vs voted
2022-12-11 12:15:39 +08:00
Lim Chee Aun
3bee69dc84
Clear notificationsNew when loading fresh
2022-12-11 12:07:36 +08:00
Lim Chee Aun
5aa9649935
Convert all outlines to borders
...
Because Safari ain't respecting border-radius with outlines
2022-12-11 00:52:04 +08:00
Lim Chee Aun
f41ca129c2
Fix Notifications link on Home header triggering scroll-to-top
2022-12-10 23:45:52 +08:00
Lim Chee Aun
b3941462d6
Facepalm moment
...
s/created_at/createdAt
2022-12-10 21:23:19 +08:00
Lim Chee Aun
d884cddf16
Fix bugs on status page
2022-12-10 21:19:38 +08:00