Commit graph

17997 commits

Author SHA1 Message Date
Essem
a61794d914
Merge remote-tracking branch 'neatchee/feat/emoji_reactions' 2023-05-08 00:01:26 -05:00
neatchee
f560ee44e9 Fix appearance/show.html.haml 2023-05-07 16:52:52 -07:00
neatchee
5bd0c35304 Revert "Fix appearance/show.html.haml"
This reverts commit 34f9e54f9f.
2023-05-07 16:30:59 -07:00
neatchee
eb68f6250c Revert "Fix missed merge conflict text in version.rb"
This reverts commit 2a8b66ad40.
2023-05-07 16:30:45 -07:00
neatchee
730878a587 Remove stale/missed references to makeCustomEmojiMap / EmojiMap 2023-05-07 16:26:37 -07:00
neatchee
2a8b66ad40 Fix missed merge conflict text in version.rb 2023-05-07 16:12:37 -07:00
Jeremy Kescher
4bd3c80038 Reactions: Return 404 when status should not be visible, asynchronous unreact 2023-05-07 15:36:34 -07:00
Jeremy Kescher
ec687d7edb Remove failing skip_before_action from v1/custom_emojis_controller.rb
Fixes incorrect merge at 9eb149477a24daf6e17a72ef550c76d4cf6ad506
2023-05-07 15:36:06 -07:00
Jeremy Kescher
b0b593d525 Add missing authorization to ReactService 2023-05-07 15:34:48 -07:00
neatchee
fa0a5a70c7 Restore loc files for non-English languages; CrowdIn should handle this 2023-05-07 15:33:50 -07:00
Jeremy Kescher
e0db7dc35a Update emoji reaction patches 2023-05-07 15:27:26 -07:00
neatchee
7d7eff8f75 Restoring missing db migrate for reactions. How did this even go missing??? 2023-05-07 15:08:26 -07:00
neatchee
759a27781d Fix placement of reactions bar for new threading UI 2023-05-07 15:08:26 -07:00
Jeremy Kescher
34f9e54f9f Fix appearance/show.html.haml 2023-05-07 15:08:26 -07:00
Jeremy Kescher
0c230226e4 Migrate emoji reactions 2023-05-07 15:08:26 -07:00
neatchee
f718c027b0 Remove old .js locale files accidentally restored during rebase 2023-05-07 15:08:26 -07:00
Ivan Rodriguez
b78ea8b4a3 Keep emoji picker within screen bounds
Adds the `flip` prop to `<Overlay>`. Fixes #40
2023-05-07 15:08:26 -07:00
neatchee
98eab315c1 Fix rebase issues 2023-05-07 15:08:26 -07:00
neatchee
26646218c7 Per PR suggestion, split name and domain, and look for emoji ID, for unreact, so remote emoji's can be unreacted 2023-05-07 15:08:26 -07:00
fef
49b25c5153 move emoji reaction strings to locales-glitch 2023-05-07 15:08:26 -07:00
Jeremy Kescher
b753263ba7 Fix status reactions preventing an on_cascade delete 2023-05-07 15:08:26 -07:00
fef
275a67b5a3 bypass reaction limit for foreign accounts 2023-05-07 15:08:26 -07:00
fef
79ff467687 fix 404 when reacting with Keycap Number Sign
The Unicode sequence for this emoji starts with an
ASCII # character, which the browser's URI parser
truncates before sending the request to the
backend.
2023-05-07 15:08:26 -07:00
fef
4761bd3e69 fix status action bar after upstream changes 2023-05-07 15:08:26 -07:00
fef
ed60e5b915 fix schema after rebase 2023-05-07 15:08:26 -07:00
fef
215a76cca0 delete reaction notifications when deleting status 2023-05-07 15:08:26 -07:00
fef
3eab0d0cd0 support reacting with foreign custom emojis 2023-05-07 15:08:26 -07:00
fef
f6b1ec0f3d properly disable reactions when not logged in 2023-05-07 15:08:26 -07:00
fef
13b5375fb7 serialize custom emoji reactions properly for AP
Akkoma and possibly others expect the `tag` field
in an EmojiReact activity to be an array, not just
a single object, so it's being wrapped into one
now.  I'm not entirely sure whether this is the
idiomatic way of doing it tbh, but it works fine.
2023-05-07 15:08:26 -07:00
fef
588315ab24 also disable reaction buttons in vanilla flavour 2023-05-07 15:08:26 -07:00
fef
6a1c43856e disable reaction button when not signed in 2023-05-07 15:08:26 -07:00
fef
799fb2812a fix image for new custom emoji reactions 2023-05-07 15:08:26 -07:00
fef
eac272d80f run i18n-tasks normalize 2023-05-07 15:08:26 -07:00
fef
d0f3f649f5 display external custom emoji reactions properly
Using an emoji map was completely unnecessary in
the first place, because the reaction list from
the API response includes URLs for every custom
emoji anyway.  The reaction list now also contains
a boolean field indicating whether it is an
external custom emoji, which is required because
people should only be able to react with Unicode
emojis and local custom ones, not with custom
emojis from other servers.
2023-05-07 15:08:25 -07:00
fef
dbbfea1b48 handle incoming custom emoji reactions properly 2023-05-07 15:05:56 -07:00
fef
7349a5a2f5 support Undo action for EmojiReaction 2023-05-07 15:05:56 -07:00
fef
16e08e1e3f download remote custom emojis from reactions
Emoji reactions containing custom emojis from
remote instances were assumed to already have
been downloaded and stored in the database.
This might obviously not be the case.
2023-05-07 15:05:56 -07:00
fef
d8205100c8 sanitize setting for number of visible reactions
This is kind of a hack, but the lack of
validation for settings unfortunately makes it
necessary.
2023-05-07 15:05:56 -07:00
Jeremy Kescher
d5ccf3b438 Add reaction limit to instance serializer 2023-05-07 15:05:56 -07:00
fef
8aadf99a54 fix padding on posts without reactions
The margins of the elements above and below the
main reaction list element overlapped before
reactions were added.  Adding display: none to
empty reaction bars restores this exact look.
2023-05-07 15:05:56 -07:00
fef
9f6a880c96 rename nop handler to handleNoOp
This also adds the comment in action_bar.js to
status_action_bar.js, clarifying that a future
version could improve this code by modifying
EmojiPickerDropdown.
2023-05-07 15:05:56 -07:00
fef
4452ddbc88 cleanup JS imports and other minor stuff 2023-05-07 15:05:56 -07:00
fef
490c1a2244 remove unnecessary parameter 2023-05-07 15:05:56 -07:00
fef
be710b6a5f change reaction api to match other interactions
Status reactions had an API similar to that of
announcement reactions, using PUT and DELETE at a
single endpoint.  I believe that for statuses, it
makes more sense to follow the convention of the
other interactions and use separate POST endpoints
for create and destroy respectively.
2023-05-07 15:05:56 -07:00
fef
946debee55 fix reaction deletion bug and clean up controller
Turns out the strange error where it would delete
the wrong reaction occurred because I forgot to
pass the emoji name to the query, which resulted
in the database deleting the first reaction it
found.  Also, this removes the unused set_reaction
callback and includes the Authorization module for
the status reactions controller.
2023-05-07 15:05:56 -07:00
fef
a8afee509b remove outdated comments 2023-05-07 15:05:56 -07:00
fef
49c8048b98 clean up new imports in vanilla flavour 2023-05-07 15:05:56 -07:00
fef
7403e91a6e rebase with upstream 2023-05-07 15:05:56 -07:00
fef
573f12ef46 make number of visible reactions a vanilla setting
Reactions will be backported to the vanilla
flavour, which requires all related settings to
be accessible from the vanilla settings page
rather than the glitch specific settings modal.
2023-05-07 15:05:56 -07:00
fef
c3a18c6fff make number of displayed reactions a setting
This adds an extra item to the local settings for
specifying the number of reactions shown in toots.
The detailed status view always shows all
reactions.
2023-05-07 15:05:56 -07:00