Commit graph

632 commits

Author SHA1 Message Date
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 1a5816f886 Try disabling the fade-out when loading context
Too distracting.
2023-01-28 14:05:04 +08:00
Lim Chee Aun ce0c0563f3 Show common followers, only when not following 2023-01-27 21:36:04 +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 ded6420c1a Fallback if browser doesn't autoplay 2023-01-27 17:51:31 +08:00
Lim Chee Aun 31b342d68e Fix undefined inHome 2023-01-27 15:17:56 +08:00
Lim Chee Aun 515b988b94 Getting trolled by my own code 2023-01-27 14:36:47 +08:00
Lim Chee Aun 77c1b36a1f Fix wrong shadow color 2023-01-27 14:35:44 +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 7785e29f0d Fun stuff 2023-01-27 11:47:37 +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 7c6157d47c Try get the v2 instance config then fallback to v1
There are new things in v2 that will be needed later
2023-01-27 11:45:38 +08:00
Lim Chee Aun 6a7e7085bd Bump up retries
Slow servers are slow.
2023-01-26 21:02:39 +08:00
Lim Chee Aun dda83c7834 Better error state for Account sheet
Some accounts… can't be resolved by the API
2023-01-26 11:26:24 +08:00
Lim Chee Aun 285f8b46f2 Add logo and link to @phanpy 2023-01-26 00:54:30 +08:00
Lim Chee Aun f2d50b0bac Add lang to all fields based on chosen language
Reference: https://github.com/mastodon/mastodon/issues/19858
2023-01-26 00:34:52 +08:00
Lim Chee Aun a1e2207e96 Reset input[type=file] after media is added
Bug: Add file A, remove fie A, add file A = nothing happens
2023-01-26 00:34:00 +08:00
Lim Chee Aun b6dfbd0819 s/Spoiler text/Content warning 2023-01-26 00:32:56 +08:00
Lim Chee Aun 9a898437f9 Remove unused code 2023-01-25 21:53:43 +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 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 5b8657a2ab Subtle fade in for menus 2023-01-25 16:39:57 +08:00
Lim Chee Aun 7c4bda105b Fix profile metadata labels and values could have shortcode emojis 2023-01-25 16:25:23 +08:00
Lim Chee Aun 20b0a80c45 Delicate adjustments to the gradient hints 2023-01-25 01:01:04 +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 7f9742b50a Animate skeleton 2023-01-25 00:26:47 +08:00
Lim Chee Aun a18659ee27 Test: Disable user-selection in carousel 2023-01-24 22:21:27 +08:00
Lim Chee Aun 0ea65b2cfd Remove old spoiler effect
This was fun but sadly perf is really bad
2023-01-24 22:21:04 +08:00
Lim Chee Aun 5f89c0673a Fix wrong colors for menu on Mobile Safari 2023-01-24 22:00:50 +08:00
Lim Chee Aun f16c29097c Experiment: more radius for media 2023-01-24 21:10:44 +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 082745ee4f Experiment: disable :hover state on non-hover devices 2023-01-24 16:26:22 +08:00
Lim Chee Aun 8cbed0911e Style carousel dots to look the same too 2023-01-24 12:15:39 +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 348e7a52c9 Fix stupid mistake 2023-01-23 17:58:33 +08:00
Lim Chee Aun 3213e8503e Fix alt tag text got chopped off at the bottom 2023-01-22 23:57:43 +08:00
Lim Chee Aun b72f683a97 Add "12 hours" option for poll duration 2023-01-22 20:50:11 +08:00
Lim Chee Aun 4c05692ef5 This account resolving thingie is getting ridiculous 2023-01-22 20:29:48 +08:00
Lim Chee Aun a522511e0e Add "Mark media as sensitive" checkbox
It does the same thing as spoiler text toggle.
2023-01-22 19:33:45 +08:00
Lim Chee Aun e7dffecfe0 Need to reset cachedStatusesMap too 2023-01-22 19:21:24 +08:00
Lim Chee Aun a495e1fa68 Only do transition for large screens 2023-01-22 17:19:37 +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 d093bddf43 Lighten the purple further for dark mode 2023-01-22 16:32:45 +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 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 4760efe837 Need to pass the 'e' too 2023-01-21 23:43:39 +08:00
Lim Chee Aun 952f048913 Fix disabling Boosts Carousel not working 2023-01-21 23:36:31 +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 e0d50168fd Don't need useLocation when in compose pop-out 2023-01-21 13:21:57 +08:00
Lim Chee Aun 37fc65b47a Don't need useEffect for backgroundLocation 2023-01-21 10:08:55 +08:00
Lim Chee Aun d66d1bca12 Stronger colors for dark mode 2023-01-21 01:04:40 +08:00
Lim Chee Aun ddce5bb0ff Fix background location need to persist 2023-01-21 01:04:27 +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 baf139762c Scroll start logic should work when overscroll too 2023-01-20 16:05:27 +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 a362a9367f Reduce width of boosts carousel
Make it show roughly 3 boosts at a time
2023-01-18 00:56:35 +08:00
Lim Chee Aun 76e9e8d69d New logo, banner and metacrap 2023-01-17 20:35:54 +08:00
Lim Chee Aun a87b95ed18 Restyle settings sheet 2023-01-17 17:58:04 +08:00
Lim Chee Aun d0880f5c56 Link to status page instead 2023-01-17 16:18:24 +08:00
Lim Chee Aun cf0cf27283 Embrace the web's a:visited 2023-01-17 13:37:48 +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 8834c03d7a Need to cancel the debounce 2023-01-17 08:56:13 +08:00
Lim Chee Aun 76aeff47ae Test expand boosts carousel to almost full-width for large screens 2023-01-17 00: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 dc25c52e07 Back to left side 2023-01-16 20:49:26 +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 6e72601833 Compose now supports paste/drag-drop files 2023-01-16 09:42:44 +08:00
Lim Chee Aun a5e2c30400 Don't need to fade the numbers out 2023-01-15 01:20:35 +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 f00cb82b2c Maybe this is enough, then let autoprefixer handle this 2023-01-14 23:03:56 +08:00
Lim Chee Aun 8c0078ddd8 It's time for hairline width 2023-01-14 22:27:02 +08:00
Lim Chee Aun 0f4f1505ad More purple please 2023-01-14 22:17:47 +08:00
Lim Chee Aun 68b6cb869e No need these console logs anymore 2023-01-14 22:05:38 +08:00
Lim Chee Aun b8b8cc57cd Try rotate3d instead
Got to squeeze out that GPU power yo
2023-01-14 20:22:41 +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 d9096ce831 Make media modal sheet max 2023-01-13 17:23:18 +08:00
Lim Chee Aun 45c107d403 Make leading poll votes more prominent 2023-01-13 15:44:42 +08:00
Lim Chee Aun 1d4c604899 Still too fast 2023-01-13 15:39:10 +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 f106036072 Rotate the poll to look more like what we see 2023-01-13 00:20:36 +08:00
Lim Chee Aun 542c26dce5 Default tab size is too large (8) 2023-01-12 19:28:50 +08:00
Lim Chee Aun 7ac7965ea3 Also avoid :active bubbling for buttons 2023-01-12 19:28:37 +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 162fc7ad07 Pass UID across composer popups 2023-01-11 17:07:47 +08:00
Lim Chee Aun adcea89a25 Add UID as Idempotency key 2023-01-11 14:44:20 +08:00
Lim Chee Aun a421406a11 DRY get current Account 2023-01-11 13:28:42 +08:00
Lim Chee Aun cda16b1da6 720deg is too fast 😂 2023-01-11 11:16:32 +08:00
Lim Chee Aun d6c0f83c15 Remove iconify-icon web component, bundle all icons
The whole iconify thing is about 20KB (8KB min-gzip), it's too huge just for icons.

Instead of getting icons from the API/CDN, bundle them all in.
2023-01-11 09:47:46 +08:00
Lim Chee Aun affc977f42 Need this width 2023-01-11 01:11:13 +08:00
Lim Chee Aun 57d0e0cb77 Prevent horizontal scroll 2023-01-11 01:08:18 +08:00
Lim Chee Aun 292f337a44 Yes, never forget the reblogs 2023-01-10 22:58:54 +08:00
Lim Chee Aun 9338c6905d Try another spoiler effect 2023-01-10 22:10:29 +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 021d2aa2ae Feather spins 2023-01-10 21:03:36 +08:00
Lim Chee Aun 6319bfb580 Forgot the dark mode color 2023-01-10 20:58:30 +08:00
Lim Chee Aun 9743da1e9b Fix cached statuses gone 2023-01-10 20:05:47 +08:00
Lim Chee Aun c4236e6de7 New feature: thread numbering 2023-01-10 19:59:02 +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 c4bba6e507 Slight change in poll styles 2023-01-09 23:44:24 +08:00
Lim Chee Aun a1401e0b69 Active style when click on media 2023-01-09 23:44:02 +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 3506285176 Better ID for media attachments
The `i` persists for other attachments too. Not good.
2023-01-09 14:33:47 +08:00
Lim Chee Aun 8a8dad12c8 Better handling of audio 2023-01-09 01:17: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 5b90ab46a8 Make it more hearty 2023-01-07 21:37:16 +08:00
Lim Chee Aun c252667ce4 Make updates button drop faster 2023-01-07 21:03:01 +08:00
Lim Chee Aun 54a95363f0 Use console.debug 2023-01-07 21:02:46 +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 ba1674b846 Temporarily disable this
This is affecting the default scrollTop position of the status
2023-01-07 11:46:30 +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 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 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 fffc8cc983 Further grouping of notifications 2023-01-06 12:51:53 +08:00
Lim Chee Aun 3ca696dd3d Modals for media attachments in composer
Dedicated editor experience per media attachment
2023-01-06 01:51:39 +08:00
Lim Chee Aun abe5d02d93 Different logic for relative time 2023-01-05 17:36:43 +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 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 a4b452e177 Switch back to blur effect for spoilers
The SVG filter is too heavy for mobile browsers
2023-01-05 13:30:19 +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 c77ed16804 Even shorter name text 2023-01-05 10:41:25 +08:00
Lim Chee Aun eef658b758 Slightly higher z-index for updates-button 2023-01-04 19:41:35 +08:00
Lim Chee Aun edeceba729 Allow people to type essays 2023-01-04 19:16:43 +08:00