Commit graph

743 commits

Author SHA1 Message Date
Lim Chee Aun
1fed35f674 Flush instead of cancel 2023-01-30 19:36:47 +08:00
Lim Chee Aun
0a4c3069dd Fix this translateY making carousel jumpy
- It moves outside of the box
- Causes the container to have a vertical scrollbar
- When scrolling, it's moves up and down, causing the carousel to jump
- Don't quite understand why, maybe a super rare browser (Chrome) bug
2023-01-30 19:35:28 +08:00
Lim Chee Aun
305bb92906 Fix optimizeSpeed rendering can affect text kerning and layout
Seems like Mobile Safari make less font rendering calculation to speed up rendering. When toggling between text-rendering modes, the text can be shifted or relayout-ed.
2023-01-30 10:01:34 +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
99b9194713 Fix wrong status link when it's a boost in Timeline 2023-01-29 23:34:51 +08:00
Lim Chee Aun
cc2d4d4cc1 Fix text-expander positioning bug
Also fix related bugs
2023-01-29 21:45:59 +08:00
Lim Chee Aun
09272e8407 Make header go up a little 2023-01-29 19:11:58 +08:00
Lim Chee Aun
b8c9059562 Quick fix for "See post" messing up the top controls div in small screens 2023-01-29 15:55:15 +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
80cc387c1c Home header style change 2023-01-29 10:17:29 +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
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
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
fea7145ac9 The mention is hidden *inside* spoiler text 2023-01-04 17:27:43 +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
7e869949e2 Turns out, still change CW when editing 2023-01-03 17:41:18 +08:00
Lim Chee Aun
88297fa17e Remove opacity from spoiler content 2023-01-03 15:52:28 +08:00
Lim Chee Aun
5478e407aa For large cards, align the meta left 2023-01-03 15:51:33 +08:00
Lim Chee Aun
a41655698f Disable text selection on some elements 2023-01-03 15:51:16 +08:00
Lim Chee Aun
910120ecd7 When status is small, need more breathing space 2023-01-03 13:52:13 +08:00
Lim Chee Aun
a71f66dcbd Handle locked accounts 2023-01-03 13:25:55 +08:00
Lim Chee Aun
dbfdd6ec68 Add border for card 2023-01-03 13:03:22 +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
72e3d96675 Add more contrast to green 2023-01-03 00:49:05 +08:00
Lim Chee Aun
d15b1fe03e Fix route() actually not working 2023-01-03 00:48:36 +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
Lim Chee Aun
8d609e14a6 This subtle press-down effect starts to annoy me 2023-01-03 00:30:40 +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
5074716378 Set scroll threshold for up/down
Else it'll be too trippy
2023-01-02 23:16:49 +08:00
Lim Chee Aun
7408d7a5d4 No need opacity 2023-01-02 23:16:21 +08:00
Lim Chee Aun
f8821d530d Maybe these might help a little 2023-01-02 22:02:21 +08:00
Lim Chee Aun
597232067d Not down enough 2023-01-02 21:43:04 +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
c3aef80ad4 More styles 2023-01-02 15:00:13 +08:00
Lim Chee Aun
44f179a69f Beautify notifications slightly 2023-01-02 14:42:28 +08:00
Lim Chee Aun
07dff34e20 Show formatted duration for video media 2023-01-02 14:21:38 +08:00
Lim Chee Aun
21bdb51cd6 Compose pop-in/out now can work with non-id medias
Commented out for now to see if it really works

The bug is due to valtio proxying the File object
2023-01-02 12:03:06 +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
2925afeefc Refetch list of instance URLs
Also bump list to more than 200
2023-01-01 21:00:43 +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
0d92f65f7e Esc for compose field 2023-01-01 19:41:42 +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
151f0875ad Upgrade relative-time-elements
They've renamed the package name
2023-01-01 18:14:35 +08:00
Lim Chee Aun
0517690ed3 Spruce up the compose button 2023-01-01 17:19:20 +08:00
Lim Chee Aun
b62cff4d0e Different gradient for welcome 2023-01-01 17:19:07 +08:00
Lim Chee Aun
4d7aeca10f Make skeleton unpointerable 2023-01-01 16:09:10 +08:00
Lim Chee Aun
6306ed9602 Move updates button further down 2023-01-01 16:02:15 +08:00
Lim Chee Aun
c116de8456 Don't show card when status is truncated 2023-01-01 16:01:57 +08:00
Lim Chee Aun
811de6ec0a Remove that one tiny white space at the bottom of the avatar image 2023-01-01 16:01:44 +08:00
Lim Chee Aun
cf1c03f55f Delay focus compose field a little 2023-01-01 15:32:36 +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
951c93a070 Add link to media in carousel modal 2023-01-01 12:28:54 +08:00
Lim Chee Aun
842db90f9c Handle context API call fail error 2023-01-01 12:02:11 +08:00
Lim Chee Aun
4e80e9e0cb Debounce new statuses 2023-01-01 12:01:54 +08:00
Lim Chee Aun
b153d7526c Add even more spacing 2023-01-01 12:01:39 +08:00
Lim Chee Aun
5e52874aa5 Use v1 instance api
v2 is too new, only added for Mastodon v4
2023-01-01 10:59:20 +08:00
Lim Chee Aun
07163f0c3f Fix layout bug with routes
At this point, it feels like I'm writing my own react-router
2023-01-01 09:18:11 +08:00
Lim Chee Aun
ac91dc7983 Make this manual opt-in 2023-01-01 08:51:56 +08:00
Lim Chee Aun
e22e50705f Move things around 2023-01-01 01:46:08 +08:00
Lim Chee Aun
d46a1e8b38 Set min height for timeline 2023-01-01 00:50:48 +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
f9e1704727 Disable this hover effect for large status
Will still animate in timeline but at least not as distracting
2022-12-31 20:18:56 +08:00
Lim Chee Aun
b12b0c588d Experimental j,k,o,esc,backspace shortcuts 2022-12-31 09:52:31 +08:00
Lim Chee Aun
36a33e488b Use focus-visible 2022-12-31 09:51:59 +08:00
Lim Chee Aun
52d5756d44 Remove unused code 2022-12-31 09:51:28 +08:00
Lim Chee Aun
2c970f635a Make focus ring nicer 2022-12-30 23:09:25 +08:00
Lim Chee Aun
c0234dd26e Add focus for notification block too 2022-12-30 23:08:55 +08:00
Lim Chee Aun
724be17d3e Basic keyboard shortcuts
Esc for carousel modal, Ctrl/Cmd+Enter for Compose field
2022-12-30 21:36:14 +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
30c529fe02 No opacity for sheet animation
Move things around a bit
2022-12-30 13:55:46 +08:00
Lim Chee Aun
a409ff6712 Some images are just… too high 2022-12-30 13:37:59 +08:00
Lim Chee Aun
123d2469f6 Don't show hero pointer when loading 2022-12-30 13:26:05 +08:00
Lim Chee Aun
167399f889 Subtle press state 2022-12-30 11:03:03 +08:00
Lim Chee Aun
3338c49c25 Fix threshold for larger-than-viewport statuses 2022-12-29 16:15:58 +08:00
Lim Chee Aun
6ffc40fdf3 Use semantic <article> 2022-12-29 16:12:09 +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
160b535552 Not all cards work in large size
Check the image aspect ratio before converting to large size
2022-12-29 11:34:29 +08:00
Lim Chee Aun
808d56432e Use sinceId for new checks 2022-12-29 10:45:47 +08:00
Lim Chee Aun
353c911232 Temporarily disable this now 2022-12-29 10:27:36 +08:00
Lim Chee Aun
a6196f923f Better styles for card
Show large card for large status, but only when there's no poll and media
2022-12-29 08:57:01 +08:00
Lim Chee Aun
afb1a75f69 Show carousel controls initially 2022-12-28 20:46:38 +08:00
Lim Chee Aun
c205a43125 Try this fancy touch-action 2022-12-28 20:38:16 +08:00
Lim Chee Aun
e32c6c6473 Revert "Delay onClose after swipe"
This reverts commit 0feee7ea93.
2022-12-28 20:35:49 +08:00
Lim Chee Aun
0feee7ea93 Delay onClose after swipe 2022-12-28 20:02:28 +08:00
Lim Chee Aun
7200acc2a7 Swipe down for closing carousel 2022-12-28 19:43:02 +08:00
Lim Chee Aun
86df9fd9f8 Tap media to toggle carousel controls 2022-12-28 19:31:08 +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
02c464a139 Delay showing "status posted" toast 2022-12-28 18:05:22 +08:00
Lim Chee Aun
44617cffca Make sure bottom toast respect safe area 2022-12-28 18:04:58 +08:00
Lim Chee Aun
422a924844 Make GIF autoplay on Mobile Safari
Only in carousel, and seems like `autoplay` with `muted` ain't working in (P)react.
2022-12-28 14:47:39 +08:00
Lim Chee Aun
23a6cdbe3b Fix video alignment 2022-12-28 14:43:58 +08:00
Lim Chee Aun
5869ec3b9f Move "Read more" slightly to the left 2022-12-28 10:52:08 +08:00
Lim Chee Aun
fa0ccece32 Handle > 4 medias
- Mastodon now doesn't allow >4, so this is for the future or maybe the forks.
- Using grid for better control on how images lay out
2022-12-28 10:51:57 +08:00
Lim Chee Aun
8b6cae5611 More gradients for headers 2022-12-28 10:49:43 +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
abb7f11c12 Fix danger appearing for "Follow" too 😆 2022-12-28 00:15:27 +08:00