* Add regex filter back to firehose
The regex filter will apply to all tabs and not be automatically applied when pinned.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Keep regex when pinned
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
---------
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Fix warnings about missing dependency in hooks
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Add `allowLocalOnly` to timelineId
Without this local-only toots will never be loaded.
feedType is checked to be public to not show local-only toots in the "Remote" tab.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
---------
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Conflicts:
- `app/models/user_settings.rb`:
Upstream added a constraint on a setting textually close
to glitch-soc-only settings.
Applied upstream's change.
- `lib/sanitize_ext/sanitize_config.rb`:
Upstream added support for the `translate` attribute on a few elements,
where glitch-soc had a different set of allowed elements and attributes.
Extended glitch-soc's allowed attributes with `translate` as upstream did.
- `spec/validators/status_length_validator_spec.rb`:
Upstream refactored to use RSpec's `instance_double` instead of `double`,
but glitch-soc had changes to tests due to configurable max toot chars.
Applied upstream's changes while keeping tests against configurable max
toot chars.
Conflicts:
- `app/views/layouts/application.html.haml`:
Conflicts due to glitch-soc's theming system.
Added `crossorigin: 'anonymous'` like upstream did, to the glitch-soc-specific code.
- `app/views/layouts/embedded.html.haml`:
Conflicts due to glitch-soc's theming system.
Added `crossorigin: 'anonymous'` like upstream did, to the glitch-soc-specific code.
Conflicts:
- `app/views/settings/profiles/show.html.haml`:
Upstream redesigned the settings page, where glitch-soc had changes because of
the ability to set some custom limits.
Went with upstream's design while keeping our custom limits.
- `yarn.lock`:
Upstream updated dependencies textually close to a glitch-soc-only dependency.
Updated the dependnencies as well.
Conflicts:
- `app/views/settings/preferences/appearance/show.html.haml`:
Upstream fixed a translation bug in the theme selector that is absent from
glitch-soc due to our different theming system.
Discarded upstream changes.
- `streaming/index.js`:
Upstream changed the signature of a function to change its return type.
This is not a real conflict, the conflict being caused by an extra
argument in glitch-soc's code.
Applied upstream's change while keeping our extra argument.
Conflicts:
- `app/javascript/mastodon/load_locale.js`:
The file moved to `app/javascript/mastodon/locales/load_locale.ts`.
Ported the changes there and deleted `app/javascript/mastodon/load_locale.js`.
- `app/javascript/mastodon/locales/index.js`:
The file moved to `app/javascript/mastodon/locales/index.ts`.
Did *not* port the changes as I want to try something a bit different.
Conflicts:
- `package.json`:
Upstream changed various script definitions in lines surrounding the one for
`i18n:extract`, which had glitch-soc-specific changes.
Updated the scripts as upstream did, while keeping our changes to
`i18n:extract`.
Conflicts:
- `.github/dependabot.yml`:
Updated upstream, but we've deleted it.
Keep it deleted.
- `app/javascript/mastodon/locales/index.js`:
Reworked upstream, but the code was mostly in
`app/javascript/locales/index.js` in glitch-soc.
Updated that file accordingly.
- `app/javascript/packs/public.jsx`:
Not a real conflict, but different imports in
glitch-soc and upstream.
- `app/views/layouts/application.html.haml`:
Conflict due to locales loading and theme system
discrepancies.
Updated in our own way.
- `app/views/layouts/embedded.html.haml`:
Conflict due to locales loading and theme system
discrepancies.
Updated in our own way.
- `config/webpack/generateLocalePacks.js`:
Deleted upstream, as upstream now directly loads the
JSON at runtime.
Deleted as well, will switch to runtime loading in
an upcoming commit.
- `config/webpack/shared.js`:
Not a real conflict, but different imports in
glitch-soc and upstream.
- `config/webpack/translationRunner.js`:
Mostly deleted upstream, to be replaced with `formatjs-formatter.js`
instead.
Moved the glitch-soc logic there and deleted the file.
Conflicts:
- `.eslintrc.js`:
Upstream moved a configuration block in which we had added a glitch-only
path.
Moved the configuration block as upstream did.
- other files:
Upstream reordered imports, and those files had different ones.
Kept our version and reordered imports using the same rules.
When reacting with different custom emojis with the same shortcode, it would count as an already present reaction and processed, bypassing the limit.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Instead of processing tag and then look for the custom emoji, let the processing return an emoji.
Add `name` to `process_emoji_tags` to check if it matches the shortcode.
Removed `process_single_emoji` and added its code to `process_emoji_tags`
Removed arg from `maybe_process_misskey_reaction`.
Ideally, `original_status` should be a global object, but I wanted to modify vanilla code as little as possible.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Handling remote reactions with foreign emojis would require an extensive rewrite of vanilla code, so instead prevent reactions with remote emojis when the status is not local.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
When an account and a remote account reacted with a custom emoji with the same shortcode, the `me` attribute was also true for the remote reaction, despite being a different emoji.
This query should probably be optimised, but it works.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Right now Misskey users were able to react, but couldn't remove their reactions.
delegates `Undo` for a `Like` to `undo_emoji_react` when there is no favourite found.
(Misskey `Like` activities can still create a fav when the emoji tag is invalid, I don't see the point though)
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Processing all custom emojis is neither wise nor necessary as both `Like` and `EmojiReact` only expect a single custom emoji
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
These occur when an account tries to react with disabled custom emojis.
In both `EmojiReact` and `Like? activities, the activity is discarded.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
Conflicts:
- `app/controllers/auth/confirmations_controller.rb`:
Upstream merged our captcha code, but there are some
conflicts due to glitch-soc's theming system.
- `app/views/admin/settings/registrations/show.html.haml`:
Upstream merged our captcha code, but there are some
conflicts due to glitch-soc's theming system.
Additional changes:
- `Gemfile`:
Upstream added hcaptcha dependency in another place in the file.
- `config/settings.yml`:
Upstream added the `captcha_enabled` setting in another place in the file.
Conflicts:
- `config/webpack/generateLocalePacks.js`:
A dependency update changed how functions are imported.
Also, some linting fixes not applicable to glitch-soc.
Fixes#2220
This drops the ability to shift+click on “Back” to get back to a pinned
column, but that was inconsistent, broken, and undocumented.
This also brings us slightly closer to upstream.
Conflicts:
- `.github/dependabot.yml`:
We deleted it.
Kept it removed.
- `app/javascript/packs/public.jsx`:
Upstream changed an import, we have slightly different ones.
Ported upstream changes.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
Conflicts:
- `app/javascript/packs/admin.jsx`:
Upstream reworked imports, but we had many changes.
Reworked imports as upstream did.
- `app/javascript/packs/public.jsx`:
Upstream reworked imports, but we had many changes.
Reworked imports as upstream did.
Conflicts:
- `tsconfig.json`:
Upstream changed the config to properly process imports.
Glitch-soc had previously already done so.
Changed the config to better match upstream.
Conflicts:
- `.github/dependabot.yml`:
Upstream made changes, but we had removed it.
Discarded upstream changes.
- `.rubocop_todo.yml`:
Upstream regenerated the file, we had some glitch-soc-specific ignores.
- `app/models/account_statuses_filter.rb`:
Minor upstream code style change where glitch-soc had slightly different code
due to handling of local-only posts.
Updated to match upstream's code style.
- `app/models/status.rb`:
Upstream moved ActiveRecord callback definitions, glitch-soc had an extra one.
Moved the definitions as upstream did.
- `app/services/backup_service.rb`:
Upstream rewrote a lot of the backup service, glitch-soc had changes because
of exporting local-only posts.
Took upstream changes and added back code to deal with local-only posts.
- `config/routes.rb`:
Upstream split the file into different files, while glitch-soc had a few
extra routes.
Extra routes added to `config/routes/settings.rb`, `config/routes/api.rb`
and `config/routes/admin.rb`
- `db/schema.rb`:
Upstream has new migrations, while glitch-soc had an extra migration.
Updated the expected serial number to match upstream's.
- `lib/mastodon/version.rb`:
Upstream added support to set version tags from environment variables, while
glitch-soc has an extra `+glitch` tag.
Changed the code to support upstream's feature but prepending a `+glitch`.
- `spec/lib/activitypub/activity/create_spec.rb`:
Minor code style change upstream, while glitch-soc has extra tests due to
`directMessage` handling.
Applied upstream's changes while keeping glitch-soc's extra tests.
- `spec/models/concerns/account_interactions_spec.rb`:
Minor code style change upstream, while glitch-soc has extra tests.
Applied upstream's changes while keeping glitch-soc's extra tests.
Conflicts:
- `app/javascript/styles/mastodon/forms.scss`:
Conflict because we ran eslint autofix on upstream files.
- `config/initializers/content_security_policy.rb`:
Code style changes but we have a different version.
Kept our version.
- `streaming/index.js`:
Upstream fixed a typo close to glitch-soc-only code.
Applied upstream's changes.
* Minor refactor and linting fixup in `flavours/glitch/actions/accounts.js`
This is some added boilerplate but it's much more consistent with the remaining
of the code, and avoids the linting issue.
* Fix missing /privacy-policy link in DM warning because of wrongly-named import
* Fix unnecessary import
* Fix regexp in flavours/glitch/utils/hashtag.js
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
When cancelling a reply, the language was still set to the language of the replied to toot.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Run eslint --fix
* Fix linting issues in video player and reduce divergences with upstream
This includes a behavior change of not auto-looping videos anymore. I don't
remember loops being ever intended, and they have been removed from upstream
a while ago, but we somehow missed the change.
* Fix lint issues in `app/javascript/flavours/glitch/selectors/index.js`
Those were basically caused by dead code that isn't present upstream, so
that brings us closer to upstream as well.
* Fix linting issue and bug in streaming/index.js
* Fix linting issues in config/webpack/shared.js
* Fix unused import in flavours/glitch/features/ui/index.js
* Fix linting issues and reduce divergences from upstream in flavours/glitch/features/ui/components/video_modal.jsx
* Fix linting issues in flavours/glitch/reducers
* Fix linting issues in glitch-soc onboarding modal
* Fix linting issues in flavours/glitch/features/ui/components/navigation_panel.jsx
* Remove dead code for unused local setting navbar_under
* Fix various linting issues
* Fix linting issues in flavours/glitch/components/scrollable_list.jsx and reduce divergences with upstream
* Disable font-family-no-missing-generic-family-keyword for font-awesome accessibility icons
* Run stylelint --fix
* Avoid `@extend` directives with doodle modal CSS
* Drop use of `@extend` for notification cleanup buttons SCSS
* Run prettier on SCSS
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
Conflicts:
- `.github/dependabot.yml`:
Updated upstream, removed in glitch-soc to disable noise.
Kept removed.
- `CODE_OF_CONDUCT.md`:
Upstream updated to a new version of the covenant, but I have not read it
yet, so kept unchanged.
- `Gemfile.lock`:
Not a real conflict, one upstream dependency updated textually too close to
the glitch-soc only `hcaptcha` dependency.
Applied upstream changes.
- `app/controllers/admin/base_controller.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/controllers/application_controller.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/controllers/disputes/base_controller.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/controllers/relationships_controller.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/controllers/statuses_cleanup_controller.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/helpers/application_helper.rb`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `app/javascript/mastodon/features/compose/components/compose_form.jsx`:
Upstream added a highlight animation for onboarding, while we changed the
max character limit.
Applied our local changes on top of upstream's new version.
- `app/views/layouts/application.html.haml`:
Minor conflict due to glitch-soc's theming system.
Applied upstream changes.
- `stylelint.config.js`:
Upstream added ignore paths, glitch-soc had extra ignore paths.
Added the same paths as upstream.
Borders in blockquotes in reply-indicator weren't colored properly.
avatar margin when viewing edited toots dropdown was applied to wrong side.
Conversations had padding applied to the wrong side.
Padding for notifcation cleaner checkboxes was applied to wrong side.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Conflicts:
- `app/controllers/auth/setup_controller.rb`:
Upstream removed a method close to a glitch-soc theming-related method.
Removed the method like upstream did.
Conflicts:
- `package.json`:
Upstream removed a dependency that was textually close to a glitch-soc-only
dependency.
Removed the dependency as upstream did, while keeping the glitch-soc-only
dependency.
* Run rubocop --autocorrect on app/, config/ and lib/, also manually fix some remaining style issues
* Run rubocop --autocorrect-all on db/
* Run rubocop --autocorrect-all on `spec/` and fix remaining issues
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
Conflicts:
- `README.md`:
Upstream added a link to the roadmap, but we have a completely different README.
Kept ours.
- `app/models/media_attachment.rb`:
Upstream upped media attachment limits.
Updated the default according to upstream's.
- `db/migrate/20180831171112_create_bookmarks.rb`:
Upstream changed the migration compatibility level.
Did so too.
- `config/initializers/content_security_policy.rb`:
Upstream refactored this file but we have a different version.
Kept our version.
- `app/controllers/settings/preferences_controller.rb`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
The file does not directly references individual settings anymore.
Applied upstream changes.
- `app/lib/user_settings_decorator.rb`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
The file got removed entirely.
Removed it as well.
- `app/models/user.rb`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
References to individual settings have been removed from the file.
Removed them as well.
- `app/views/settings/preferences/appearance/show.html.haml`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
Applied upstream's changes and ported ours back.
- `app/views/settings/preferences/notifications/show.html.haml`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
Applied upstream's changes and ported ours back.
- `app/views/settings/preferences/other/show.html.haml`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
Applied upstream's changes and ported ours back.
- `config/settings.yml`:
Upstream completely refactored user settings storage, and glitch-soc has a
different set of settings.
In particular, upstream removed user-specific and unused settings.
Did the same in glitch-soc.
- `spec/controllers/application_controller_spec.rb`:
Conflicts due to glitch-soc's theming system.
Mostly kept our version, as upstream messed up the tests.
Conflicts:
- `app/models/status.rb`:
Upstream added lines close to a glitch-soc only line, not a real conflict.
Applied upstream's changes (added hooks) while keeping glitch-soc's changes
(`local_only` scope).
- `config/environments/production.rb`:
Upstream removed a header, while we have glitch-soc specific ones.
Removed the header removed upstream.
* Add getting-started-misc to web_app_paths
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Add signed in check to navigation entries
Enabling routing for getting-started-misc allows the column to be directly accessible, which showed every entry and threw unnecessary errors.
Also fixed the keys as these were literally "i++".
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
* Remove "Extended information" from getting-started-misc
I couldn't find any reference to this translation string, so I removed it too.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
---------
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Conflicts:
- `README.md`:
Upstream changed their README, we have our own.
Kept ours.
- `app/helpers/application_helper.rb`:
Minor code style fix upstream, on a line that is different in glitch-soc
due to the different theming system.
Applied the code style fix to our own code.
- `app/views/settings/preferences/appearance/show.html.haml`:
Code style fix on a line next to lines exclusive to glitch-soc.
Applied upstream changes.
- `yarn.lock`:
Upstream updated a dependency textually close to a glitch-soc-only
dependency.
Updated the dependency like upstream did.
commit 13bca8d5b7344445633ff3c8a162086be8215379
Merge: 1e2782647 ff157b237
Author: Essem <smswessem@gmail.com>
Date: Thu Mar 16 11:51:32 2023 -0500
Merge branch 'feat/emoji_reactions' of https://github.com/neatchee/mastodon into feat/emoji_reactions
commit ff157b2378a15a786763d7e13ad2de4ff223dc03
Author: neatchee <neatchee@gmail.com>
Date: Wed Mar 8 13:27:25 2023 -0800
Remove old .js locale files accidentally restored during rebase
commit 52beb88a19626c0b17d0945a43bf8725ceae4b04
Author: Ivan Rodriguez <104603218+IRod22@users.noreply.github.com>
Date: Tue Mar 7 23:21:32 2023 -0600
Keep emoji picker within screen bounds
Adds the `flip` prop to `<Overlay>`. Fixes#40
commit 7707004cf3d5bacd3ef830ef734dd003b607c2af
Author: neatchee <neatchee@gmail.com>
Date: Thu Jan 26 11:32:03 2023 -0800
Fix rebase issues
commit ce40bbbce1e5e9ab7770f89dd7cffd87d3ceb177
Author: neatchee <neatchee@gmail.com>
Date: Thu Jan 26 10:22:15 2023 -0800
Per PR suggestion, split name and domain, and look for emoji ID, for unreact, so remote emoji's can be unreacted
commit fc9f34a39fa40b3eda4ccfc0cc8e5c028b9ebe79
Author: fef <owo@fef.moe>
Date: Tue Dec 20 17:19:56 2022 +0000
move emoji reaction strings to locales-glitch
commit af0f50ca74631e9f2dafde0f0e08417f906c04a0
Author: Jeremy Kescher <jeremy@kescher.at>
Date: Sun Dec 18 04:23:42 2022 +0100
Fix status reactions preventing an on_cascade delete
commit 2e713c7792438f17ef026f6d79465be25a5fb7db
Author: fef <owo@fef.moe>
Date: Thu Dec 15 15:27:54 2022 +0000
bypass reaction limit for foreign accounts
commit 907e1e490ed9b2373eb18f92af9fda4426274713
Author: fef <owo@fef.moe>
Date: Sun Dec 11 13:26:23 2022 +0000
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.
commit 9028d3841f7d5d2eb1b06bc210ded055c53fc1d2
Author: fef <owo@fef.moe>
Date: Thu Dec 8 09:48:55 2022 +0000
fix status action bar after upstream changes
commit 4ce5095d8c187947805ecf21c90ad494440e904a
Author: fef <owo@fef.moe>
Date: Wed Dec 7 21:52:53 2022 +0100
fix schema after rebase
commit 63b9e4392adbb13fe0ce71de4d28419df0f36bb1
Author: fef <owo@fef.moe>
Date: Wed Dec 7 12:47:03 2022 +0000
delete reaction notifications when deleting status
commit e407cc12b64a664c66717ce06d65342dd8bc609e
Author: fef <owo@fef.moe>
Date: Wed Dec 7 12:19:36 2022 +0000
support reacting with foreign custom emojis
commit b2dbb4dbe4996426a6cdb90e8da27e5096b3e88c
Author: fef <owo@fef.moe>
Date: Sun Dec 4 12:33:47 2022 +0000
properly disable reactions when not logged in
commit ec790f3b1e243e33ccd22685b8e3c017ca7f9273
Author: fef <owo@fef.moe>
Date: Sun Dec 4 10:52:02 2022 +0000
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.
commit 2637d9b77a6e696face0851328c5bd2e80d1dab2
Author: fef <owo@fef.moe>
Date: Sun Dec 4 08:47:24 2022 +0000
also disable reaction buttons in vanilla flavour
commit 0b4d5f700b74c0a6c8344321e491082511128f48
Author: fef <owo@fef.moe>
Date: Sat Dec 3 16:55:37 2022 +0000
disable reaction button when not signed in
commit afd0bb2c05be38477df1a808b32cece5c7e4b416
Author: fef <owo@fef.moe>
Date: Sat Dec 3 16:20:29 2022 +0000
fix image for new custom emoji reactions
commit b1dcd0eb6ce2f097fab310cdf32cd509426fcfba
Author: fef <owo@fef.moe>
Date: Sat Dec 3 14:23:55 2022 +0000
run i18n-tasks normalize
commit e4e7837bf30082185b2f14e8d60741261f7085f4
Author: fef <owo@fef.moe>
Date: Sat Dec 3 11:57:00 2022 +0000
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.
commit 6d3e364fa22370ab80f16a311dce15d93976464a
Author: fef <owo@fef.moe>
Date: Sat Dec 3 10:22:15 2022 +0000
handle incoming custom emoji reactions properly
commit 0a47a05905adc3e9d1dc1e7e619891b884b9e512
Author: fef <owo@fef.moe>
Date: Sat Dec 3 08:24:23 2022 +0000
support Undo action for EmojiReaction
commit b81f4537aced99e427cb30fd54a33c852839e08a
Author: fef <owo@fef.moe>
Date: Fri Dec 2 17:02:06 2022 +0000
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.
commit ff246bda3731753f58f7e499aae036c331953d0b
Author: fef <owo@fef.moe>
Date: Fri Dec 2 10:17:59 2022 +0000
fix integer cast bug
Gotta love Rails.
commit 40a645aab9e8071698051751d88262bb9e10199a
Author: fef <owo@fef.moe>
Date: Fri Dec 2 09:37:56 2022 +0000
sanitize setting for number of visible reactions
This is kind of a hack, but the lack of
validation for settings unfortunately makes it
necessary.
commit 391c6e22f2170f990d30d975c4a5ffb966484c17
Author: Jeremy Kescher <jeremy@kescher.at>
Date: Fri Dec 2 08:05:10 2022 +0100
Add reaction limit to instance serializer
commit 501ae9e2e1578ef80709ff38910dc46f483c5942
Author: fef <owo@fef.moe>
Date: Fri Dec 2 01:52:59 2022 +0000
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.
commit 956edd3ca7cd04a3524addc2c5b6ddc475358734
Author: fef <owo@fef.moe>
Date: Fri Dec 2 01:00:08 2022 +0000
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.
commit 2c93f1840f6cc74eef628b370b2c7b8485028cc8
Author: fef <owo@fef.moe>
Date: Thu Dec 1 23:30:39 2022 +0100
cleanup JS imports and other minor stuff
commit 4a2f91e3de2dfdb53e1a3f09430c6e0eabbf49be
Author: fef <owo@fef.moe>
Date: Thu Dec 1 04:26:13 2022 +0000
remove unnecessary parameter
commit 91d26c871786708f8c2c0188f82318ff2c438127
Author: fef <owo@fef.moe>
Date: Thu Dec 1 02:24:08 2022 +0000
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.
commit c74e050e3d77920000d7226ae26966d27291e790
Author: fef <owo@fef.moe>
Date: Thu Dec 1 01:41:47 2022 +0000
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.
commit e7ed7e37d7995d4bf39ad44c7a738290c81fa9dc
Author: fef <owo@fef.moe>
Date: Wed Nov 30 19:29:56 2022 +0000
remove outdated comments
commit d33f8330c019898f948334453b75fc2802fab9f8
Author: fef <owo@fef.moe>
Date: Wed Nov 30 17:09:16 2022 +0000
clean up new imports in vanilla flavour
commit 45f803e23f019dbe5246daa3131548acdb99a757
Author: fef <owo@fef.moe>
Date: Wed Nov 30 17:25:36 2022 +0100
rebase with upstream
commit 8b339e4a2d2632a269dccdba1a60e69b6b38a053
Author: fef <owo@fef.moe>
Date: Wed Nov 30 14:59:37 2022 +0000
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.
commit 56323209b519a90f9dbf10b1c45a320de4d6aaa5
Author: fef <owo@fef.moe>
Date: Wed Nov 30 13:20:20 2022 +0000
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.
commit e96fb97770877749b5c6bca8fe3e6136fffa309a
Author: fef <owo@fef.moe>
Date: Wed Nov 30 12:01:34 2022 +0000
change default reaction limit to 1
commit 30ae2ad2612bae2abb48c49205bbe71b97435dda
Author: fef <owo@fef.moe>
Date: Wed Nov 30 09:06:14 2022 +0000
limit number of reactions displayed
Too many reactions on a single post quickly get
spammy, so they are now sorted by count and only
the first MAX_REACTIONS number of different
emojis are actually displayed.
commit 84fb0f3cc252cabfa374b31f8a34e021a3ad8677
Author: fef <owo@fef.moe>
Date: Tue Nov 29 09:07:10 2022 +0000
fix reaction margins and paddings
commit 53b685ff1d4589915655da5cafa3a2dd9ee06a51
Author: fef <owo@fef.moe>
Date: Tue Nov 29 08:54:35 2022 +0000
cleanup frontend emoji reaction code
commit 2b0a474a73a84a3e841ddf44854fa5c2e0681a0f
Author: fef <owo@fef.moe>
Date: Tue Nov 29 08:15:52 2022 +0000
cleanup backend emoji reaction code
commit 3bfd5ceba17c42bee27ff0f10514332caa814332
Author: fef <owo@fef.moe>
Date: Tue Nov 29 06:25:43 2022 +0000
fix padding for reaction button
commit deabc28e182acc208bffe6fb57430b97c5bc7c6c
Author: fef <owo@fef.moe>
Date: Tue Nov 29 05:21:53 2022 +0000
handle misskey reactions properly
misskey federates emoji reactions as likes.
commit 4d47b9929852493b208fdf13dee38e27dde50b8c
Author: fef <owo@fef.moe>
Date: Tue Nov 29 04:37:44 2022 +0000
move react button to action bar
commit 151bcea7d4497086823adc0bca6c674ea78a8d8f
Author: fef <owo@fef.moe>
Date: Tue Nov 29 04:31:22 2022 +0100
cherry-pick emoji reaction changes
commit f150fd0dc8761c2a992875948a2736244e5f7076
Author: fef <owo@fef.moe>
Date: Tue Nov 29 00:39:40 2022 +0000
make frontend fetch reaction limit
the maximum number of reactions was previously
hardcoded to 8. this commit also fixes an
incorrect query in StatusReactionValidator where
it didn't count per-user reactions but the total
amount of different ones.
commit 12886aa19ae5be6c7077ff1704b1b4c75c15eae6
Author: fef <owo@fef.moe>
Date: Mon Nov 28 23:16:56 2022 +0000
make status reaction count limit configurable
commit 25806c568a57e9193b43427df80b60a88143a5eb
Author: fef <owo@fef.moe>
Date: Mon Nov 28 22:25:12 2022 +0000
remove accidentally created file
commit f3784cfef551ad1d9d0df0001b2b480bfc656b14
Author: fef <owo@fef.moe>
Date: Mon Nov 28 22:23:13 2022 +0000
federate emoji reactions
this is kind of experimental, but it should work
in theory. at least i tested it with a remove
akkoma instance and it didn't crash.
commit d32f3f8c2fb9e8a29e676e54c98d2cac85841728
Author: fef <owo@fef.moe>
Date: Fri Nov 25 23:02:40 2022 +0000
show reactions in detailed status view
commit 5e9bbb0be253b5b56c6d7b5ee8d843f401995b7c
Author: fef <owo@fef.moe>
Date: Thu Nov 24 17:30:52 2022 +0000
add frontend for emoji reactions
this is still pretty bare bones but hey, it works.
commit 85756b572a169857a09d7668ce9f2c856ebefd27
Author: fef <owo@fef.moe>
Date: Thu Nov 24 11:50:32 2022 +0000
add backend support for status emoji reactions
turns out we can just reuse the code for
announcement reactions.
Conflicts:
- `.github/workflows/build-image.yml`:
Upstream switched to pushing to both DockerHub and GitHub Container
Repository, while glitch-soc was already pushing to the latter only.
Updated our configuration to be slightly more consistent with upstream's
naming and styling, but kept our behavior.
- `Gemfile.lock`:
Updated dependencies textually too close to glitch-soc only hcaptcha
dependency.
Updated dependencies as upstream did.
- `README.md`:
Upstream updated its README, but we have a completely different one.
Kept our README, though it probably should be reworked at some point.
- `app/views/auth/sessions/two_factor.html.haml`:
Minor style fix upstream that's on a line glitch-soc removed because
of its different theming system.
Kept our file as is.
- `spec/controllers/health_controller_spec.rb`:
This file apparently did not exist upstream, upstream created it with
different contents but it is functionally the same.
Switched to upstream's version of the file.
- `spec/presenters/instance_presenter_spec.rb`:
Upstream changed the specs around `GITHUB_REPOSITORY`, while glitch-soc
had its own code because it's a fork and does not have the same default
source URL.
Took upstream's change, but with glitch-soc's repo as the default case.
- `yarn.lock`:
Upstream dependencies textually too close to a glitch-soc only one.
Updated dependencies as upstream did.
Conflicts:
- `README.md`:
Upstream README has been changed, but we have a completely different one.
Kept our `README.md`.
- `lib/sanitize_ext/sanitize_config.rb`:
Upstream added support for more incoming HTML tags (a large subset of what
glitch-soc accepts).
Change the code style to match upstream's but otherwise do not change our
code.
- `spec/lib/sanitize_config_spec.rb`:
Upstream added support for more incoming HTML tags (a large subset of what
glitch-soc accepts).
Kept our version, since the tests are mostly glitch-soc's, except for cases
which are purposefuly different.
Conflicts:
- `.prettierignore`:
Upstream added a line at the end of the file, while glitch-soc had its own
extra lines.
Took upstream's change.
- `CONTRIBUTING.md`:
We have our custom CONTRIBUTING.md quoting upstream. Upstream made changes.
Ported upstream changes.
- `app/controllers/application_controller.rb`:
Upstream made code style changes in a method that is entirely replaced
in glitch-soc.
Ignored the change.
- `app/models/account.rb`:
Code style changes textually close to glitch-soc-specific changes.
Ported upstream changes.
- `lib/sanitize_ext/sanitize_config.rb`:
Upstream code style changes.
Ignored them.
Conflicts:
- `.github/dependabot.yml`:
Upstream made changes while we have dropped this file.
Keep the file deleted.
- `.prettierignore`:
Upstream made changes at the end of the file, where we
had our extra lines.
Just moved our extra lines back at the end.
- `app/serializers/initial_state_serializer.rb`:
Upstream code style changes.
Applied them.
- `app/services/backup_service.rb`:
Upstream code style changes.
Applied them.
Conflicts:
- `.prettierignore`:
Upstream added a line at the end, glitch-soc had extra entries at the end.
Added upstream's new line before glitch-soc's.
- `Gemfile.lock`:
Upstream updated dependencies while glitch-soc has an extra one (hcaptcha).
Updated dependencies like upstream did.
- `app/controllers/api/v1/statuses_controller.rb`:
Not a real conflict, upstream added a parameter (`allowed_mentions`) where
glitch-soc already had an extra one (`content_type`).
Added upstream's new parameter.
- `app/javascript/styles/fonts/roboto-mono.scss`:
A lot of lines were changed upstream due to code style changes, and a lot
of those lines had path changes to accomodate glitch-soc's theming system.
Applied upstream's style changes.
- `app/javascript/styles/fonts/roboto.scss`:
A lot of lines were changed upstream due to code style changes, and a lot
of those lines had path changes to accomodate glitch-soc's theming system.
Applied upstream's style changes.