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
Lim Chee Aun
07dff34e20
Show formatted duration for video media
2023-01-02 14:21:38 +08:00
Lim Chee Aun
951c93a070
Add link to media in carousel modal
2023-01-01 12:28:54 +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
9201f7a118
First step in making things focusable
2022-12-30 20:37:57 +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
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
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
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
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
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
cf42aab4b7
Experimental language selector in Compose field
2022-12-27 18:09:23 +08:00
Lim Chee Aun
3ac2a45244
Got trolled by @neet
2022-12-27 01:17:04 +08:00
Lim Chee Aun
9278645069
Another attempt at fixing GIF not autoplaying on Mobile Safari
2022-12-26 01:09:19 +08:00
Lim Chee Aun
3daa7e4f9d
Fix poll showing NaN when total votes = 0
...
So 0/0 = NaN
2022-12-25 23:29:25 +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