Commit graph

143 commits

Author SHA1 Message Date
Lim Chee Aun 06edafa5f8 Need more debug info for dedupe boosts 2023-03-27 15:05:07 +08:00
Lim Chee Aun caee38c98f New experiment: dedupe boosts and group context 2023-03-26 23:18:36 +08:00
Lim Chee Aun 5208df4a28 Fix filter logic 2023-03-23 21:49:09 +08:00
Lim Chee Aun 422813be9c New experimental Filtered Posts UI 2023-03-22 00:09:36 +08:00
Lim Chee Aun bc4dfaf62f Add previewMode 2023-03-16 13:02:46 +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 b4f8f92431 Another bug fix 2023-03-11 09:13:11 +08:00
Lim Chee Aun 731f91122b Fix toggle values for settings for translation 2023-03-09 13:20:01 +08:00
Lim Chee Aun cff8c90478 Quick fix for back link not working for unfurled mastodon links
This is obviously the wrong 'location'
2023-03-08 23:33:53 +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 af7c9bc1b1 Differentiate clickable vs static toasts 2023-03-06 16:01:33 +08:00
Lim Chee Aun d86a69903f Need more datetime detail for Edit History 2023-03-03 18:11:37 +08:00
Lim Chee Aun 50fd06057f Refactor niceDateTime out 2023-03-01 20:07:22 +08:00
Lim Chee Aun a86daaac0b Fix useScroll bug 2023-02-28 21:56:41 +08:00
Lim Chee Aun b2b8b58863 Very basic update checker 2023-02-28 15:27:42 +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 aca3cb677b Sometimes need exact distance instead ratio 2023-02-25 10:50:02 +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 3c8ba1c34e Need to pass instance here too 2023-02-24 00:50:06 +08:00
Lim Chee Aun e2a679e202 memoize status calls 2023-02-23 22:53:12 +08:00
Lim Chee Aun e6d6adb480 First small step to resolving mastodon links
And open them inside Phanpy instead of like an external link
2023-02-23 16:45:53 +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 5c6c9a43f2 Fix regression: threadify stopped working
This is due to status key changed with extra instance string
2023-02-19 21:16:23 +08:00
Lim Chee Aun 522d55ebb8 New experiment: multi-column mode 2023-02-18 20:48:24 +08:00
Lim Chee Aun 4337c89ddf Add one more hide modal 2023-02-17 11:29:53 +08:00
Lim Chee Aun ca943cbc5a A bit late to fix this but better be consistent 2023-02-17 10:17:41 +08:00
Lim Chee Aun 82c8247ac8 Fix infinite loop bug!! 2023-02-17 01:54:19 +08:00
Lim Chee Aun 7aba448f42 Handle multi-paragraph code blocks
This ain't going to be fun if the HTML gets messier in the future
2023-02-16 21:51:22 +08:00
Lim Chee Aun 0bef245c83 New feature: Shortcuts 2023-02-16 17:52:16 +08:00
Lim Chee Aun 255ca8eaa6 Support edit media description for Mastodon v4.1 2023-02-13 01:21:18 +08:00
Lim Chee Aun 25ff2b9176 Smarter distancing for useScroll 2023-02-12 17:46:20 +08:00
Lim Chee Aun 0b6dd07eee Rewrote notifications, again 2023-02-12 17:38:50 +08:00
Lim Chee Aun 55d8908cf5 For page not loading when logged out
Because path is undefined
2023-02-11 19:36:28 +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 863ac2663c Fix titles 2023-02-11 17:57:26 +08:00
Lim Chee Aun a4df58d297 Immediately I found a bug right after I toot about it 2023-02-10 01:01:06 +08:00
Lim Chee Aun 91aeed5fe6 Respect your preferences 2023-02-09 23:59:57 +08:00
Lim Chee Aun 58d4ca0ff2 Finally replace Home 2023-02-09 22:27:49 +08:00
Lim Chee Aun 129417bad3 Fix wrong links 2023-02-09 17:41:42 +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 1357c1b2bd Fix more edge cases after breaking changes 2023-02-06 16:35:03 +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 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 fa3ee31cd3 Fix #55 2023-02-02 10:30:16 +08:00
Lim Chee Aun bbb3017b2d Quietly handle hashtag links
No follow/unfollow yet.
2023-01-31 19:31:25 +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 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 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 e83d128f62 Rewrite Notifications page + experimental fix on getting/showing updates 2023-01-27 11:47:30 +08:00
Lim Chee Aun 4c05692ef5 This account resolving thingie is getting ridiculous 2023-01-22 20:29:48 +08:00
Lim Chee Aun 952f048913 Fix disabling Boosts Carousel not working 2023-01-21 23:36:31 +08:00
Lim Chee Aun baf139762c Scroll start logic should work when overscroll too 2023-01-20 16:05:27 +08:00
Lim Chee Aun e382cad22a Enable Boosts Carousel by default
Fix the logic here
2023-01-17 10:06:19 +08:00
Lim Chee Aun 62a3ba7c5f Bug fixes for boosts carousel + scrolling 2023-01-16 20:32:30 +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 dfaec0605a Can re-use the UID as new window target name! 2023-01-11 23:23:49 +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 292f337a44 Yes, never forget the reblogs 2023-01-10 22:58:54 +08:00
Lim Chee Aun c4236e6de7 New feature: thread numbering 2023-01-10 19:59:02 +08:00
Lim Chee Aun 13c3b8fa3b Finally DRY this saving status code 2023-01-09 19:11:34 +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 de45a0f9d5 Update useScroll to check distance in threshold instead of pixels 2023-01-05 15:29:11 +08:00
Lim Chee Aun 1f12c53ee1 Refactor textarea and chars count meter
It won't re-render on every key press anymore
2023-01-04 19:03:11 +08:00
Lim Chee Aun 5074716378 Set scroll threshold for up/down
Else it'll be too trippy
2023-01-02 23:16:49 +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 334584ecef Fix HTML inside code blocks being rendered 2022-12-26 18:04:49 +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 31e2196cd6 Safeguard for unknown HTML cases in status content
1. Mark up code blocks first because anything inside code blocks cannot be "enhanced".
2. Set default rejects for elements that don't need to be "enhanced". Not a complete list but best-effort. Probably allowlist works better than blocklist, but some content doesn't even start with any parent nodes.
2022-12-23 09:20:34 +08:00
Lim Chee Aun 1c98433333 Linkify twitter usernames
This is due to some folks cross-posting from Twitter.
2022-12-23 00:40:25 +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 39efda9e38 Track spoilers
Turns out I'm using WeakMap wrong
2022-12-20 19:14:50 +08:00
Lim Chee Aun 509c1d971e Return 0 if no html 2022-12-19 17:30:10 +08:00
Lim Chee Aun dc37100442 Refactor Carousel 2022-12-18 22:56:00 +08:00
Lim Chee Aun d0579a57d6 Fix bug when text nodes contain HTML <>
Text nodes don't escape them
2022-12-17 17:24:26 +08:00
Lim Chee Aun 665b908698 Put names into every export 2022-12-16 13:27:04 +08:00
Lim Chee Aun 2ddc1b8005 Better document titles for pop-out compose window 2022-12-15 17:11:15 +08:00
Lim Chee Aun 58860c334c Responsive font size based on content length
The shorter, the larger font-size
2022-12-15 00:41:48 +08:00
Lim Chee Aun e2346bc32a Shift+click to open compose window
- Fixes for closing
- Easier code for checking if can close window
2022-12-13 21:54:16 +08:00
Lim Chee Aun 3e80ee03f3 Simpler code for content enhancement
Also fixed some shortcodes not converted
2022-12-13 20:15:02 +08:00
Lim Chee Aun d32d9c62eb Style backtick inline codes
The tree walker code is generated via Copilot, hope it works
2022-12-12 21:51:59 +08:00
Lim Chee Aun 9c5586e43b This "@" icon for direct-visibility posts is very confusing
Change to the envelope icon for now
2022-12-11 10:56:09 +08:00
Lim Chee Aun 039d4661fb Remove target=_blank from username links
Mobile Safari ignores the click preventDefault and not show the Account popover. Removing target_blank fixes this ignorance

Kinda hacky fix for now
2022-12-11 09:28:02 +08:00
Lim Chee Aun b26f1204c7 Enhance the account note and make sure links open in new window 2022-12-10 19:16:11 +08:00
Lim Chee Aun 2b9390a0a1 Initial commit 2022-12-10 17:14:48 +08:00