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
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
abb7f11c12
Fix danger appearing for "Follow" too 😆
2022-12-28 00:15:27 +08:00
Lim Chee Aun
e8a0b401f9
Add safe fallback
2022-12-27 22:02:55 +08:00
Lim Chee Aun
cf42aab4b7
Experimental language selector in Compose field
2022-12-27 18:09:23 +08:00
Lim Chee Aun
43e0f51bcf
Add bot indicator
2022-12-27 18:09:07 +08:00
Lim Chee Aun
1bb547e1a3
Use box-shadow, border skews the actual dimension
2022-12-27 11:00:05 +08:00
Lim Chee Aun
f7489710a1
Temporary fix for corrupted data
2022-12-27 08:52:01 +08:00
Lim Chee Aun
04ff8eca4c
Make modal backdrop appear nicely
...
I probably created too many similar keyframes
2022-12-27 01:44:41 +08:00
Lim Chee Aun
3ac2a45244
Got trolled by @neet
2022-12-27 01:17:04 +08:00
Lim Chee Aun
eb3880b435
Handle errors here
2022-12-27 01:07:33 +08:00
Lim Chee Aun
ccb0032f81
Fix displayName don't need to be encoded
2022-12-26 21:19:10 +08:00
Lim Chee Aun
af437ae4c8
Image vertical alignment is always a pain
2022-12-26 20:39:49 +08:00
Lim Chee Aun
e96cc9cc16
Fix snakecase not working in Compose pop-out
2022-12-26 20:22:13 +08:00
Lim Chee Aun
b25b54b79e
Silent fail for custom emojis fetch
2022-12-26 20:21:16 +08:00
Lim Chee Aun
e320a5be4a
pre-wrap for code blocks
2022-12-26 18:05:00 +08:00
Lim Chee Aun
be656d585a
Make boosts shorter
2022-12-26 14:33:46 +08:00
Lim Chee Aun
f1ca52d561
Button text swapper for Unfollow button
2022-12-26 14:29:57 +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
c8ea2e8703
Restyle cards
...
Got to max-height it, and then make sure the images crop smaller
2022-12-26 00:43:17 +08:00
Lim Chee Aun
01963c9d7a
Try different heart animation
2022-12-25 23:51:17 +08:00
Lim Chee Aun
641bccd685
Prettier decided to prettify this
2022-12-25 23:33:59 +08:00
Lim Chee Aun
86f38ee3b8
Fix Account sheet relationship check not working when clicking from Settings page
...
This is because accounts from different instances have different IDs!
They're NOT unique cross-instance. So while on one instance, cannot use the account ID of the other instance to query for relationship because the ID doesn't exist on *current* instance.
2022-12-25 23:31:50 +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
Lim Chee Aun
cf4fbc8553
Make sheet have header and body section
2022-12-25 18:01:01 +08:00
Lim Chee Aun
0276820185
Fix className typo
2022-12-25 15:49:39 +08:00
Lim Chee Aun
cff13d53f0
Forgot to revert the optimistism
2022-12-25 13:22:41 +08:00
Lim Chee Aun
05fd9bdd2c
Make spoiler effect work in dark mode
2022-12-24 22:52:19 +08:00
Lim Chee Aun
17ac9cc2c6
Seems like these have special URL treatments too
2022-12-24 21:14:05 +08:00
Lim Chee Aun
c6b9e3fc78
New spoiler filter
2022-12-24 16:51:19 +08:00
Lim Chee Aun
d6421972df
Reduce spacing at the top of the thread badge
2022-12-24 14:15:47 +08:00
Lim Chee Aun
c4efc26d62
Attempt to fix video not autoplaying on Mobile Safari
2022-12-24 14:15:34 +08:00
Lim Chee Aun
71514312bf
Should be OR
...
A short video can be treated as GIF.
Loopability is only for <= 60 second video
2022-12-24 10:23:06 +08:00
Lim Chee Aun
b96f263f69
Make "Unfollow" button look dangerous
...
Also add ellipsis
2022-12-24 10:05:01 +08:00
Lim Chee Aun
55ad4be580
Only show reply badge if not inside mentions
2022-12-24 01:22:25 +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
2def939821
Fix textarea focus not working
2022-12-23 19:33:51 +08:00
Lim Chee Aun
13a347ce37
New: char count for Compose field
...
Uses pre-compiled regex for perf
2022-12-23 16:45:02 +08:00
Lim Chee Aun
5944b4fe30
Don't remove status immediately
...
It'll be too abrupt. Set `_deleted` flag for now, no UI yet.
2022-12-22 22:43:04 +08:00
Lim Chee Aun
37c44c2264
Update poll at point of expiry
2022-12-22 21:52:59 +08:00
Lim Chee Aun
263e48d019
New feature: :shortcode: expander in compose field
...
Using `innerHTML` because easier to code but the `encodeHTML` function is troublesome
2022-12-22 19:24:07 +08:00
Lim Chee Aun
122f6877c9
Fix some accounts not working
...
All these webfinger/custom-server/moving-instances things are very annoying
2022-12-22 18:25:18 +08:00
Lim Chee Aun
7b6d30f37d
Limit iterations for image hover position animation
2022-12-22 15:08:37 +08:00
Lim Chee Aun
65c2fb3648
Special rounding precision for poll percentage
2022-12-22 14:59:36 +08:00
Lim Chee Aun
c3bbd04e77
Different way of shifting the pixels
2022-12-22 12:59:44 +08:00
Lim Chee Aun
9d8286234f
Fix the 'thread' badge being jumpy
2022-12-22 12:14:01 +08:00
Lim Chee Aun
3c4c59106a
Handle media > 2 taking a lot of vertical space
...
Also handle media > 4, which I think some instances probably allow
2022-12-22 10:47:45 +08:00
Lim Chee Aun
ade3ebb5ae
Experiment: new reply/thread "badges"
...
Also totally forced one-lined the name text + date at the top of a status
2022-12-22 10:35:39 +08:00
Lim Chee Aun
9a0f538d69
username = displayName matching, minus the shortcodes
2022-12-22 10:32:27 +08:00
Lim Chee Aun
4e60cae42c
Fix spoiler bug
2022-12-22 09:02:22 +08:00
Lim Chee Aun
eba78e3f07
Time to embrace sheets
...
.box class is just… weird…
2022-12-21 20:00:45 +08:00
Lim Chee Aun
71083b46e2
Add "Refresh" button for polls
2022-12-21 19:46:38 +08:00
Lim Chee Aun
23745d0683
Update poll reactively
2022-12-21 19:29:37 +08:00
Lim Chee Aun
f6e3c979af
Fix onClick not a function
2022-12-21 01:18:37 +08:00
Lim Chee Aun
33f0f21399
My sense of logic is getting worse
2022-12-21 01:03:24 +08:00
Lim Chee Aun
b7c5dce372
Fix z-indexing bug
2022-12-21 01:03:07 +08:00
Lim Chee Aun
3fede678c7
Case-insensitive and don't apply for short:true
2022-12-20 22:00:11 +08:00
Lim Chee Aun
d6575037eb
No popping in standalone mode
2022-12-20 20:23:57 +08:00
Lim Chee Aun
4acb6aa3c2
Subtle badges
2022-12-20 20:17:38 +08:00
Lim Chee Aun
39a5634112
Further shorten name text if displayName === username
2022-12-20 19:52:55 +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
091960bdff
Fix border not visible for media-video
2022-12-20 17:50:43 +08:00
Lim Chee Aun
5e687e871f
Bring back polling but bump up timeout
...
- Polling is needed because status post requires the media to be done processing (not just uploaded)
- But the default timeout set in masto.js is 3s, a bit too low if uploading a large video
- Bumping up to 30s
2022-12-20 13:29:38 +08:00
Lim Chee Aun
9bc5340714
Extra check on loading state before allow closing
2022-12-20 13:27:14 +08:00
Lim Chee Aun
e274950324
Disable popping-in/out and closing when loading
2022-12-20 13:26:45 +08:00
Lim Chee Aun
3921f8a6f9
Debugging
2022-12-20 13:24:56 +08:00
Lim Chee Aun
1538400dc0
Oops, forgot to put confirm dialog before boosting
2022-12-20 10:09:05 +08:00
Lim Chee Aun
bf907abc17
Disable this small font sizing
2022-12-20 09:37:29 +08:00
Lim Chee Aun
da19e7ad02
This min-width: 0 hack is getting annoying
...
Without this, long words would overflowwww
2022-12-19 18:02:45 +08:00
Lim Chee Aun
db25770a31
Add "verified" state for profile fields
2022-12-19 17:02:47 +08:00
Lim Chee Aun
d08848fff3
Fix some profile notes don't have <p>
2022-12-19 17:02:01 +08:00
Lim Chee Aun
8c97dcc5bc
💅 Aesthetic changes
2022-12-19 13:38:16 +08:00
Lim Chee Aun
96a38e5df1
Bigger check for poll option
2022-12-18 23:06:05 +08:00
Lim Chee Aun
c6e71e2432
Smaller gaps between media attachments
2022-12-18 23:05:49 +08:00
Lim Chee Aun
dc37100442
Refactor Carousel
2022-12-18 22:56:00 +08:00
Lim Chee Aun
0b8460cd55
Move things around
2022-12-18 21:10:05 +08:00
Lim Chee Aun
a029c7ccae
Change from 'x' to '<' on Status page
2022-12-18 20:53:32 +08:00
Lim Chee Aun
2f24713d71
✨ Real nested comments
...
- Collapsed/expandable replies
- Pagination for many many comments
2022-12-18 20:46:13 +08:00
Lim Chee Aun
762e525c68
Add profile metadata
2022-12-18 12:21:57 +08:00
Lim Chee Aun
1ffcffa1f4
Try different style for "Read more"
2022-12-18 10:08:44 +08:00
Lim Chee Aun
4b49c6fb03
Aesthetic changes to Account sheet
...
- Larger avatar
- Less rounded sheet
- Add Joined date
2022-12-18 00:38:19 +08:00
Lim Chee Aun
7c30ba35e4
Show total count for fun
2022-12-18 00:13:56 +08:00
Lim Chee Aun
d3f7659331
Tabular nums for the numbers
2022-12-18 00:09:22 +08:00
Lim Chee Aun
3a21b58f55
Prevent this from wrapping
2022-12-17 23:17:13 +08:00
Lim Chee Aun
58fe7a46f4
Change from line-clamp to max-height
...
-webkit-line-clamp doesn't work on multiple <p>s on Mobile Safari
2022-12-17 23:01:34 +08:00
Lim Chee Aun
400bc6f696
Truncate long posts on timeline, show "Read more"
...
10-line clamping for now
2022-12-17 21:06:51 +08:00
Lim Chee Aun
734a9b2b76
Remove unused code
2022-12-17 19:51:48 +08:00
Lim Chee Aun
5f0d1e8656
Refactor action buttons + optimistic UI
2022-12-17 17:26:41 +08:00
Lim Chee Aun
1c18184ef4
Fix one-char space inserted when replying to own posts
2022-12-17 17:25:04 +08:00
Lim Chee Aun
e6ed64cfd0
Fix auto display: none not working
...
`this` probably refers to something else
2022-12-17 14:38:21 +08:00
Lim Chee Aun
665b908698
Put names into every export
2022-12-16 13:27:04 +08:00
Lim Chee Aun
c026635221
Try this 50% width for card image
...
It's tough trying to balance the space required by the image vs the card title/desc/etc
2022-12-16 13:26:38 +08:00
Lim Chee Aun
3ae82d6898
Handle "unknown" media
...
On mastodon.social, images have type:image, but hachyderm returns type:unknown
Found this when editing a post and add two images, on mastodon.social.
2022-12-16 09:20:30 +08:00
Lim Chee Aun
5148462670
Have a little fun with action icons' animations
...
Also fix the jumpy border
2022-12-16 01:28:22 +08:00
Lim Chee Aun
db1e481bd3
Ugh have to manual trigger onInput
...
Is there a way to just auto trigger this?
2022-12-16 00:54:44 +08:00
Lim Chee Aun
03d2e2aa72
Add TODO for now for handling multiple mentions
...
If it's just all mentions with no textual content = can close(?)
But if there're a lot of mentions, won't it be dangerous to close?
User can still edit whatever in between like rearranging the mentions etc
2022-12-16 00:53:04 +08:00
Lim Chee Aun
859500a292
Fix copy since it's not just replying to one person
2022-12-16 00:51:08 +08:00
Lim Chee Aun
a41b18b331
Fix auto-prepending mentions when replying
...
Prepend not just the reply-to status's acct, but also all mentions' acct
BUT excluding self
2022-12-16 00:50:38 +08:00
Lim Chee Aun
45babb150b
Try skip polling
...
For large medias, API returns 202 Accepted and media is still processing https://docs.joinmastodon.org/methods/media/#v2
masto.js does extra manual poll check by GET-ing the media after uploaded to see if the media is done processing
2022-12-15 21:34:21 +08:00
Lim Chee Aun
31b3d824cd
Center the items in toolbar
2022-12-15 21:31:44 +08:00
Lim Chee Aun
12c11c65c1
The title inside the card has weird line height
2022-12-15 20:18:48 +08:00
Lim Chee Aun
f5da383ef3
Sometimes external, sometimes not.
2022-12-15 19:45:25 +08:00
Lim Chee Aun
332dd30c1d
Writing logic code is hard
2022-12-15 17:27:28 +08:00
Lim Chee Aun
45b7d42d38
Add lazy loading to all images
2022-12-15 14:19:48 +08:00
Lim Chee Aun
fc235024aa
Handle pop-in case when there's already a Compose field open
...
Show confirmation first before popping-in
2022-12-15 13:03:20 +08:00
Lim Chee Aun
b490974638
Responsive font-size for the poll and actions too
2022-12-15 10:01:18 +08:00
Lim Chee Aun
27c0ba7f4b
Make sure the media has min height
...
Some images have *very* small height
2022-12-15 01:46:04 +08:00
Lim Chee Aun
da0309ab0f
Light tint of background for poll options
2022-12-15 01:18:23 +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
b0372ea83b
Dispatch oninput manually when textarea value change
...
I thought… React/Preact should do this automagically…
2022-12-14 22:54:12 +08:00
Lim Chee Aun
fa1769c3c2
New feature: Grouped notifications
...
- Grouped based on notification.type and notification.status.id
- Crossing fingers here
2022-12-14 22:46:50 +08:00
Lim Chee Aun
0aa7066274
Prevent conflicting style for poll when replying to status with a poll
2022-12-14 21:49:42 +08:00
Lim Chee Aun
72751709df
New feature: poll
...
- More fixes
2022-12-14 21:48:17 +08:00
Lim Chee Aun
121e9176f3
Add style for leading choices
...
Also make sure the votes percentage doesn't shrink
2022-12-14 19:00:04 +08:00
Lim Chee Aun
f2dc15c8ef
Slightly smaller font size for meta text in poll
2022-12-14 18:45:34 +08:00
Lim Chee Aun
b883836f8a
Fix percentage count for multiple-choice polls
2022-12-14 17:56:08 +08:00
Lim Chee Aun
410548603f
Fix check icon not appearing for own-voted poll choices
2022-12-14 17:11:16 +08:00
Lim Chee Aun
8b5ac5154c
Fix pre meta text taking up space, due to some *very* long names/usernames
2022-12-14 16:16:08 +08:00
Lim Chee Aun
5c6fb7b7c8
Better username lookup
2022-12-14 15:39:20 +08:00
Lim Chee Aun
d4cdf2435f
Fix poll percentage showing NaN
...
This happens when votes are still 0, so 0 divide by 0
2022-12-14 01:48:55 +08:00
Lim Chee Aun
975f3dd33f
Finally fix HMR not working for this file
2022-12-14 00:39:35 +08:00
Lim Chee Aun
38aaf89529
Don't need this animation, too many happening at the same time
2022-12-14 00:20:43 +08:00
Lim Chee Aun
0e1f4c527e
This close window check is getting on my nerves
2022-12-14 00:20:24 +08:00
Lim Chee Aun
2b21c421d1
Comment out this console.log
2022-12-14 00:19:49 +08:00
Lim Chee Aun
04084d3339
'not-allowed' cursor looks very annoying
2022-12-13 22:34:23 +08:00
Lim Chee Aun
fb6bca9016
Fix wrong logic again
2022-12-13 22:26:29 +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
6195f45800
Remove unused code
2022-12-13 20:42:19 +08:00
Lim Chee Aun
9d78e67381
New feature: pop-out compose window
...
- More consistent design for both reply-to status and source status preview
- Fixed bugs too
- Make sure index.css is always above
2022-12-13 20:42:09 +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
19074844be
Fix avatars inside text expander menu
2022-12-13 18:44:35 +08:00
Lim Chee Aun
7b7b8b9443
Different copy for editing
2022-12-13 01:14:52 +08:00
Lim Chee Aun
74ef381a9c
Remove this console.log
2022-12-13 00:23:47 +08:00
Lim Chee Aun
de5c33a568
Fix gifv not loading
2022-12-13 00:23:37 +08:00
Lim Chee Aun
2a13571328
Remove unused hook
2022-12-13 00:23:12 +08:00
Lim Chee Aun
f649f60b5b
Move the time to the right
2022-12-12 22:56:38 +08:00
Lim Chee Aun
4d09d24e00
Better card preview styling
...
Test in case all the texts are too long and overflowing
2022-12-12 22:43:47 +08:00
Lim Chee Aun
79f1b255d2
Slight layout adjustments
2022-12-12 22:15:13 +08:00
Lim Chee Aun
ad8ae165a6
Fix check before closing
2022-12-12 21:58:02 +08:00
Lim Chee Aun
5353a4535a
New feature: Edit status!
...
Get's a bit hacky now
2022-12-12 21:54:31 +08:00
Lim Chee Aun
111bc27f96
Fix spacing inside the card preview
2022-12-12 21:53:06 +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
b988b10c3d
Fixes and refactor for compose UI with media uploads
...
Somehow prettier (for CSS) start running properly
2022-12-12 16:27:44 +08:00
Lim Chee Aun
f7571f6df1
Need to show media attachments even when status size=s
...
This is because status is optional when there are media attachments
So if the status is empty, there's nothing to show at all lololol
2022-12-12 16:25:55 +08:00
Lim Chee Aun
e5fa7536e0
Prompt to double-confirm unfollow
2022-12-12 10:03:41 +08:00
Lim Chee Aun
299b638ac3
Attempt to fix videos not autoplaying on Mobile Safari
...
Fallback onClick to play in case it really still doesn't autoplay
2022-12-12 10:00:59 +08:00