Commit graph

329 commits

Author SHA1 Message Date
Lim Chee Aun 7286a4e03b Attempt to fix menu confirm not opening 2023-07-19 15:19:03 +08:00
Lim Chee Aun 38a13b07c5 Fix boost menu bug 2023-07-18 18:45:38 +08:00
Lim Chee Aun 92a4f502a0 Experimental Auto Inline Translation (AIT)
For short posts for now and throttled API calls
2023-07-18 13:31:26 +08:00
Lim Chee Aun ff41cd3563 Replace (most) alert/confirms with alternative UI
Everything might break lol
2023-07-17 21:01:00 +08:00
Osma Ahvenlampi aa1b2e30cf
Merge branch 'cheeaun:main' into main 2023-06-14 17:26:54 +03:00
Osma Ahvenlampi 804e4571d9 tweak the behavior of status context menu 2023-06-14 17:23:56 +03:00
Lim Chee Aun 3b3e0e6fde EmojiText component replacing dangerouslySetInnerHTML 2023-06-14 17:37:41 +08:00
Lim Chee Aun cea4590686 Cache textWeight 2023-06-14 11:14:49 +08:00
Lim Chee Aun a1ee5be54b Upgrade react-menu and bug fixes 2023-06-13 17:46:37 +08:00
Lim Chee Aun cab2e47a77 Perf fixes 2023-06-11 23:31:14 +08:00
Lim Chee Aun 9a10bc0fec Use proper alt 2023-05-20 19:43:32 +08:00
Lim Chee Aun 753789c0c7 Try/catch match because it throws when there's invalid language code 2023-05-20 14:14:35 +08:00
Lim Chee Aun 0df21af374 Handle cases when statusID is not used 2023-05-20 01:06:16 +08:00
Lim Chee Aun 48eb3b1a42 Prevent repetitive unfurling 2023-05-17 16:13:49 +08:00
Lim Chee Aun 166f9da232 Prevent showing card and QP for links that link the post itself
Use case: links from lemmy
2023-05-16 10:40:05 +08:00
Lim Chee Aun 8519f68e9f Quick-translate from timeline to Post page 2023-05-03 10:22:15 +08:00
Lim Chee Aun 6532b97a44 Update copy: s/status/post 2023-04-29 22:22:07 +08:00
Lim Chee Aun a196540d66 Differentiate between previewMode vs quoted
When previewMode, auto-reveal spoiler
2023-04-27 08:25:39 +08:00
Lim Chee Aun 4001e1c47a Match logic for context menu and long press 2023-04-26 10:35:26 +08:00
Lim Chee Aun 6f430ca0f5 Fix wrong index of QTs for links that are not QTs 2023-04-25 21:57:12 +08:00
Lim Chee Aun 963312aacb Swipe to toggle poll results 2023-04-25 20:41:08 +08:00
Lim Chee Aun 535715cfe8 Prevent infinite loop of QT of QT of QT
Use case: Status A QT status B, then status B QT status A = recursive QT
2023-04-25 13:03:26 +08:00
Lim Chee Aun 8e46da5e80 Fix set focus on status, make status itself scroll unwillingly 2023-04-24 21:56:13 +08:00
Lim Chee Aun e7a1aa1418 Try 600 2023-04-24 21:36:03 +08:00
Lim Chee Aun 944a896586 Risky bump of use-long-press and to 1s delay 2023-04-24 19:16:07 +08:00
Lim Chee Aun 89d62d6d0f Fixes for QTs 2023-04-23 19:29:25 +08:00
Lim Chee Aun 3eaf3ef62b New experiment: rendering quote toots 2023-04-23 00:55:47 +08:00
Lim Chee Aun 12957c8ea7 Focus back on status after context menu closed 2023-04-20 17:51:40 +08:00
Lim Chee Aun 5dc3603795 Close button for modal sheets 2023-04-20 16:10:57 +08:00
Lim Chee Aun 08890bb04e Rearrange the interactions buttons in context menu 2023-04-19 00:00:47 +08:00
Lim Chee Aun b164d68b4f Try show non-image cards 2023-04-18 23:46:59 +08:00
Lim Chee Aun 9a04cb6ba3 Add 'Full' view for status pages 2023-04-17 00:14:09 +08:00
Lim Chee Aun 5d2a14442a Bump up long press threshold 2023-04-15 12:04:31 +08:00
Lim Chee Aun 020019132d Spoiler text also can be emoji-fied 2023-04-14 23:05:46 +08:00
Lim Chee Aun 5d8cddc07e Poll titles can be emoji-fied 2023-04-14 23:03:04 +08:00
Lim Chee Aun f303c6d36c Rewrite status page + media modal
Media modals now have their own URLs
2023-04-14 15:30:04 +08:00
Lim Chee Aun 13b2273022 Bot avatars will be squircles 2023-04-11 00:26:43 +08:00
Lim Chee Aun c9c49d9a93 Fixes for logical properties 2023-04-10 20:23:40 +08:00
Lim Chee Aun c7db204d5b More compact menu items 2023-04-10 01:21:02 +08:00
Lim Chee Aun 60cfeea89f Add 'Mute conversation' menu item 2023-04-10 00:30:32 +08:00
Lim Chee Aun 82d88dbe10 Fix wrong color for bookmark icon 2023-04-09 00:19:15 +08:00
Lim Chee Aun c8d1ab4748 Need loader 2023-04-07 20:09:59 +08:00
Lim Chee Aun 2b26635e72 New: Reactions Modal 2023-04-06 22:51:48 +08:00
Lim Chee Aun 6f8390c3f8 Embrace "Private mention" 2023-04-06 18:21:56 +08:00
Lim Chee Aun 66e32fa03f Fix vertical alignment issues, again 2023-04-06 13:21:53 +08:00
Lim Chee Aun 18b00b2b7a Fix toast showing even when canceling a boost/unboost confirmation 2023-04-04 18:46:05 +08:00
Lim Chee Aun 3b100ad30f Disable poll auto-refresh at point of expiry 2023-04-03 09:26:27 +08:00
Lim Chee Aun 1405296e67 Show boost button but disable if can't boost 2023-04-03 09:09:52 +08:00
Lim Chee Aun d2214c59be Beautify poll 2023-03-30 11:11:35 +08:00
Lim Chee Aun a41871ae4b Experimental feature: translate bio 2023-03-29 01:12:59 +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 1d1bb1de61 Hide open media file in More button 2023-03-28 15:59:20 +08:00
Lim Chee Aun 35a8641f16 Make filtered status work for boosts too 2023-03-26 15:09:45 +08:00
Lim Chee Aun fa27308132 Additional locale match check before showing Translate button 2023-03-24 10:05:23 +08:00
Lim Chee Aun 6685549d11 Need debugHover for filtered status 2023-03-23 21:48:29 +08:00
Lim Chee Aun 402166e9b2 If there's no image, use blurhash "image" 2023-03-23 20:18:54 +08:00
Lim Chee Aun 0f5a98e42f Remove context menu from statuses inside Edit History sheet 2023-03-22 14:16:41 +08:00
Lim Chee Aun b8ec7d3c51 Show small hints of filter titles 2023-03-22 12:26:28 +08:00
Lim Chee Aun 422813be9c New experimental Filtered Posts UI 2023-03-22 00:09:36 +08:00
Lim Chee Aun ed3d86c67a Make youtube embeds lighter
And possibly more privacy-enhanced
2023-03-18 20:05:12 +08:00
Lim Chee Aun 89c03945a3 "Delete" status feature 2023-03-17 17:14:54 +08:00
Lim Chee Aun 16c52ad3ea Possible fix for weird truncation bug 2023-03-16 16:16:15 +08:00
Lim Chee Aun bc4dfaf62f Add previewMode 2023-03-16 13:02:46 +08:00
Lim Chee Aun 81bf7aeebe Default to static, with fallback 2023-03-15 19:30:53 +08:00
Lim Chee Aun a838e30f4a Check for no media descriptions when posting & boosting 2023-03-14 20:42:37 +08:00
Lim Chee Aun 0cc4075eaa Make sure context menu doesn't exceed safe areas 2023-03-14 19:02:54 +08:00
Lim Chee Aun 5882228b97 Hide interaction menu items for non-same-instance statuses 2023-03-14 14:11:40 +08:00
Lim Chee Aun 13201260d6 Fix weird bug… I don't even know why url is undefined 2023-03-12 19:23:42 +08:00
Lim Chee Aun adc4e8f53b Fix translate menu item missing in large status 2023-03-11 18:13:30 +08:00
Lim Chee Aun 740b0ad497 Sprinkle one wbr here 2023-03-10 19:34:04 +08:00
Lim Chee Aun f15b859971 Fix boostability for private-visibility posts 2023-03-10 15:49:23 +08:00
Lim Chee Aun 50eb9b9f59 Improve context menu design 2023-03-09 21:51:50 +08:00
Lim Chee Aun 6e487ad848 Use use-long-press instead 2023-03-08 00:01:51 +08:00
Lim Chee Aun 497f5334e4 Revert "Remove long-press-event, not really working"
This reverts commit 4d59e5a804.
2023-03-07 22:40:29 +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 2cb22c34e3 Extra checks for prevent weird font size 2023-03-06 18:20:49 +08:00
Lim Chee Aun d86a69903f Need more datetime detail for Edit History 2023-03-03 18:11:37 +08:00
Lim Chee Aun 959c6f4ad3 it's cool that I always find bugs faster when announcing new releases 2023-03-02 22:54:35 +08:00
Lim Chee Aun d0953a321a Fix context menu bugs
- It got mounted initially, need to set state to undefinde
- Missing zIndex
- Context menu got disabled on large status
2023-03-02 20:37:40 +08:00
Lim Chee Aun 4d59e5a804 Remove long-press-event, not really working 2023-03-02 17:58:57 +08:00
Lim Chee Aun a78417ac60 Forgot to import 2023-03-02 17:22:54 +08:00
Lim Chee Aun 228c0e5028 Try contextmenu + long press events 2023-03-02 15:15:49 +08:00
Lim Chee Aun 7fd66a19db Remove unused code 2023-03-02 13:45:12 +08:00
Lim Chee Aun 50fd06057f Refactor niceDateTime out 2023-03-01 20:07:22 +08:00
Lim Chee Aun 6d72375236 Small style nudge for clicking the timestamp 2023-03-01 19:17:04 +08:00
Lim Chee Aun 6342268945 Fix menu not appearing due to portal-ing to different container 2023-03-01 15:44:58 +08:00
Lim Chee Aun b06f9a2a09 Do additional unfurl step for Mastodon links 2023-02-28 20:54:26 +08:00
Lim Chee Aun dd1cd56a87 Retry this again
max(0, env) doesn't work at all lolol
2023-02-28 16:56:30 +08:00
Lim Chee Aun 1ae135f21a Temporarily disable fix 2023-02-28 16:27:40 +08:00
Lim Chee Aun 59cf6b2a58 Attempt to fix menu sometimes not closeable on Mobile Safari 2023-02-28 15:45:38 +08:00
Lim Chee Aun 49bb42e6cc Match text from Composer
Should really extract this out one day
2023-02-27 11:21:11 +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 45950da714 Don't POST if no choices set in poll 2023-02-24 23:38:59 +08:00
Lim Chee Aun 2ced21c9dd Remove this noise 2023-02-24 01:26:37 +08:00
Lim Chee Aun 7ebd0e7601 Don't refetch failed unfurls 2023-02-23 22:53:28 +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 c13cab51a9 Show large card for content with text-weight=1
Also finally replace the hacky CSS with something more legit
2023-02-21 23:59:34 +08:00
Lim Chee Aun c2e9dc0efe Use url, not uri 2023-02-21 14:29:25 +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 d5bceb1d81 Handle logged-out cases 2023-02-19 14:49:53 +08:00
Lim Chee Aun 7e65d8be5d Make smaller statuses stand out in the carousel 2023-02-19 01:10:06 +08:00
Lim Chee Aun 5707da703f Revert "Skeleton avatar should follow size"
This reverts commit f579a8bfb9.
2023-02-18 01:45:44 +08:00
Lim Chee Aun f579a8bfb9 Skeleton avatar should follow size 2023-02-17 19:08:19 +08:00
Lim Chee Aun 9e1f62e47b Use instance check instead of authenticated check 2023-02-17 17:40:39 +08:00
Lim Chee Aun d8e6d349a0 Fix undefined 'votes' 2023-02-17 11:00:34 +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 c01d3098b8 Add pencil 2023-02-13 09:22:03 +08:00
Lim Chee Aun 30b747527e Okayyy this is dangerous 2023-02-12 14:24:27 +08:00
Lim Chee Aun 2f2e343115 Shorter skeleton 2023-02-11 21:09:36 +08:00
Lim Chee Aun d9564bff72 Still need these fallbacks for now 2023-02-11 18:55:21 +08:00
Lim Chee Aun 129417bad3 Fix wrong links 2023-02-09 17:41:42 +08:00
Lim Chee Aun c6c18aae09 Fix spoiler bug again 2023-02-07 12:56:26 +08:00
Lim Chee Aun 1357c1b2bd Fix more edge cases after breaking changes 2023-02-06 16:35:03 +08:00
Lim Chee Aun de411b4dff Fix some posts can be spoiler but sensitive: false 2023-02-06 00:19:22 +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 bbb3017b2d Quietly handle hashtag links
No follow/unfollow yet.
2023-01-31 19:31:25 +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 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 ded6420c1a Fallback if browser doesn't autoplay 2023-01-27 17:51:31 +08:00
Lim Chee Aun 3392f57462 Rewrite scrolling logic in carousel
Just normal scroll event is enough, don't need intersection observer
2023-01-25 20:37:59 +08:00
Lim Chee Aun 5fb123f228 Need to preserve white space in media descriptions 2023-01-25 00:40:05 +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 51eaf4f1f2 Replace blue-text buttons on carousel modal 2023-01-24 11:32:33 +08:00
Lim Chee Aun cdb5435796 Nicer radius for multi-media container 2023-01-23 20:35:15 +08:00
Lim Chee Aun 56b6552d65 Show thread counter for small <Status /> too 2023-01-23 20:34:53 +08:00
Lim Chee Aun 4c05692ef5 This account resolving thingie is getting ridiculous 2023-01-22 20:29:48 +08:00
Lim Chee Aun 1439b22963 New feature: ALT badge in image carousel
Adjusted the layout and fix some styles as well
2023-01-22 16:27:00 +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 1b6348fb08 Fix some links that are actually not user-links 2023-01-19 15:51:54 +08:00
Lim Chee Aun d0880f5c56 Link to status page instead 2023-01-17 16:18:24 +08:00
Lim Chee Aun 0f5764580b Fix bug due to votersCount can be null if multiple=false 2023-01-15 00:17:07 +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 8a8dad12c8 Better handling of audio 2023-01-09 01:17:16 +08:00
Lim Chee Aun 33176c5ea7 Have a little fun with CSS variables X JS 2023-01-07 20:38:05 +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 862107f2e6 Few styling changes to card etc 2023-01-07 20:25:13 +08:00
Lim Chee Aun ee9bfe6331 Lots of tiny adjustments 2023-01-07 14:45:04 +08:00
Lim Chee Aun aab9a475e8 Fix text alignment in small card
It's confusing when status can be small/large and card can small/large too
2023-01-07 11:52:23 +08:00
Lim Chee Aun 096712a9dd No lazy loading when loading in the carousel 2023-01-06 22:08:22 +08:00
Lim Chee Aun 6d893967ec Maybe some videos are short 2023-01-06 19:14:47 +08:00
Lim Chee Aun ca18ea138a Revert Video rewrite because still doesn't work in Mobile Safari
Works in simulator but not the real iPhone
2023-01-06 19:07:04 +08:00
Lim Chee Aun 5c162d211f Rewrite the <video autoplay> hack for Mobile Safari
- Auto animate when in Status page
- Object-fit contain for GIFs in Status page
- Add GIF label on timeline
2023-01-06 18:25:47 +08:00
Lim Chee Aun 599d81f924 Disable card if there's a poll or media attachment
Regardless of the size
2023-01-05 15:28:04 +08:00
Lim Chee Aun a429da37f4 Don't show card for sensitive/CW content 2023-01-05 13:29:44 +08:00
Lim Chee Aun 04ccf8aca9 Replace @github/relative-time-element with dayjs 2023-01-05 10:50:27 +08:00
Lim Chee Aun fea7145ac9 The mention is hidden *inside* spoiler text 2023-01-04 17:27:43 +08:00
Lim Chee Aun e4de6d1d22 Don't need to focus on status after closing carousel
It causes unnecessary scroll
2023-01-03 00:48:16 +08:00