Takeshi Umeda
b361c0bac6
Fix unread notification markers ( #14897 )
4 years ago
Thibaut Girka
8c024a2a72
Fix boost icon not being displayed in boost notifications
4 years ago
ThibG
f53281dedb
Fix bell button causing a brief “Cancel follow request” on locked accounts ( #14896 )
4 years ago
Thibaut Girka
f2dfaeb4a8
Make explicit in glitch-soc's WebUI when an account is suspended
4 years ago
Thibaut Girka
a11ff90798
Do not filter out temporarily-suspended accounts from relationships API
4 years ago
Eugen Rochko
e77b54d22c
[Glitch] Fix unreadable placeholder text color in high contrast theme in web UI ( #14803 )
...
Port e0355b5142
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
9e022f9388
Fix actions being performed before the redux state is set up
4 years ago
ThibG
656a62e23f
[Glitch] Add paragraph about browser add-ons when encountering some errors
...
Port 75dc5d61e5
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
9bb0dd0381
[Glitch] Add option to be notified when a followed user posts
...
Port 02c4c91faa
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
ab12ab75ca
[Glitch] Optimize the process of following someone
...
Port front-end changes from 5f613d55e6
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
c5b3c6e305
[Glitch] Change web UI to show empty profile for suspended accounts
...
Port acbb99f7e5
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
6139141058
[Glitch] Fix home TL marker code mishandling gaps
...
Port 219150f197
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
1a77634084
[Glitch] Fix notification filter bar incorrectly filtering gaps
...
Port cfb35b767c
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
fcb0fe3411
[Glitch] Add border around 🕺 emoji
...
Port 6c612562f0
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
7a84a84fc1
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `Gemfile.lock`:
Not a real conflict, upstream updated dependencies that were too close to
glitch-soc-only ones in the file.
- `app/controllers/oauth/authorized_applications_controller.rb`:
Upstream changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's theming system.
Ported upstream changes.
- `app/controllers/settings/base_controller.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's theming system.
Ported upstream changes.
- `app/controllers/settings/sessions_controller.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's theming system.
Ported upstream changes.
- `app/models/user.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc not preventing moved accounts from logging
in.
Ported upstream changes while keeping the ability for moved accounts to log
in.
- `app/policies/status_policy.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's local-only toots.
Ported upstream changes.
- `app/serializers/rest/account_serializer.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's ability to hide followers count.
Ported upstream changes.
- `app/services/process_mentions_service.rb`:
Upstream refactored and changed the logic surrounding suspended accounts.
Minor conflict due to glitch-soc's local-only toots.
Ported upstream changes.
- `package.json`:
Not a real conflict, upstream updated dependencies that were too close to
glitch-soc-only ones in the file.
4 years ago
Eugen Rochko
fc497420e9
Add pop-out player for audio/video in web UI ( #14870 )
...
Fix #11160
4 years ago
ThibG
1603dc87ac
Add environment variable to allow requests to some private addresses ( #14722 )
4 years ago
ThibG
187c756e16
Add unread notification markers ( #14818 )
...
* Add unread notification markers
Fixes #14804
* Allow IntersectionObserverArticle's children to be updated
4 years ago
Jeremy Rose
4b59090add
add og:published_time to opengraph meta tags ( #14865 )
4 years ago
Takeshi Umeda
67ee32365d
Fix a slow query for TagFeed ( #14861 )
...
* Fix a slow query for TagFeed
* rename tags to tag_ids
4 years ago
Takeshi Umeda
218ea2dedb
Fix method of the DELETE DATA button ( #14855 )
4 years ago
Eugen Rochko
2539d7d655
Fix not being able to enable status notifications in Web Push API ( #14822 )
4 years ago
Thibaut Girka
b376f9f547
Fix minor bugs
4 years ago
Thibaut Girka
4e59bb5f9f
Minor refactoring and fixups
4 years ago
Thibaut Girka
42c6a85139
Filter out mounted lists from “getting started” column
4 years ago
Eugen Rochko
02c4c91faa
Add option to be notified when a followed user posts ( #13546 )
...
* Add bell button
Fix #4890
* Remove duplicate type from post-deployment migration
* Fix legacy class type mappings
* Improve query performance with better index
* Fix validation
* Remove redundant index from notifications
4 years ago
Thibaut Girka
d67b5dea29
Submit timeline markers closer to the moment they change
4 years ago
Thibaut Girka
c9cfed112a
Fix crashes when connection drops
4 years ago
Thibaut Girka
386f83b4b2
Add button to manually mark all notifications as read
4 years ago
Thibaut Girka
1db1fc18e9
Only update read marker when giving focus/mounting column
4 years ago
Thibaut Girka
ad62740f66
Refactor and change logic to only update marker if we reached the last
...
read notification.
4 years ago
Thibaut Girka
5bcb547f16
Display unread marker for notifications
4 years ago
Thibaut Girka
b3e0d42f83
Clean up leftover from DM conversation view redesign
4 years ago
ThibG
219150f197
Fix home TL marker code mishandling gaps ( #14809 )
4 years ago
ThibG
cfb35b767c
Fix notification filter bar incorrectly filtering gaps ( #14808 )
4 years ago
kawaguchi
f13d563cb7
Fix validates :sign_count of WebauthnCredential ( #14806 )
4 years ago
Eugen Rochko
e514304a76
Change account suspensions to be reversible by default ( #14726 )
4 years ago
Eugen Rochko
e0355b5142
Fix unreadable placeholder text color in high contrast theme in web UI ( #14803 )
...
Fix #14717
4 years ago
ThibG
75dc5d61e5
Add paragraph about browser add-ons when encountering some errors ( #14801 )
...
* Add paragraph about browser add-ons when encountering some errors
When a crash is caused by a NotFoundError exception, add a paragraph
to the error page mentioning browser add-ons.
Indeed, crashes with NotFoundError are often caused by browser extensions
messing with the DOM in ways React.JS can't recover from (e.g. issues #13325
and #14731 ).
* Reword error messages
4 years ago
ThibG
739f7815ef
Do not serve account actors at all in limited federation mode ( #14800 )
...
* Do not serve account actors at all in limited federation mode
When an account is fetched without a signature from an allowed instance,
return an error.
This isn't really an improvement in security, as the only information that was
previously returned was required protocol-level info, and the only personal bit
was the existence of the account. The existence of the account can still be
checked by issuing a webfinger query, as those are accepted without signatures.
However, this change makes it so that unallowed instances won't create account
records on their end when they find a reference to an unknown account.
The previous behavior of rendering a limited list of fields, instead of not
rendering the actor at all, was in order to prevent situations in which two
instances in Authorized Fetch mode or Limited Federation mode would fail to
reach each other because resolving an account would require a signed query…
from an account which can only be fetched with a signed query itself. However,
this should now be fine as fetching accounts is done by signing on behalf of
the special instance actor, which does not require any kind of valid signature
to be fetched.
* Fix tests
4 years ago
Eugen Rochko
face3be227
Fix reported statuses not being included in warning e-mail ( #14778 )
4 years ago
tateisu
9d4769941f
allow pagination by min_id and max_id ( #14776 )
...
* allow pagination by min_id and max_id
* also AccountConversation allows min_id,max_id pair
* also home,list TL allows min_id,max_id pair
4 years ago
Eugen Rochko
403aeeb7e0
Refactor settings controllers ( #14767 )
...
- Disallow suspended accounts from revoking sessions and apps
- Allow suspended accounts to access exports
4 years ago
Eugen Rochko
7fa0da9e98
Change REST API to return empty data for suspended accounts ( #14765 )
4 years ago
ThibG
6c612562f0
Add border around 🕺 emoji ( #14769 )
...
Fixes #14768
4 years ago
kedama
04063f42bc
[Glitch] Set z-index of dropdown to 9999.
...
Port 854d492e34
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
acbb99f7e5
Change web UI to show empty profile for suspended accounts ( #14766 )
4 years ago
Thibaut Girka
04f2c25e5d
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- app/controllers/api/v1/timelines/public_controller.rb
- app/lib/feed_manager.rb
- app/models/status.rb
- app/services/precompute_feed_service.rb
- app/workers/feed_insert_worker.rb
- spec/models/status_spec.rb
All conflicts are due to upstream refactoring feed management and us having
local-only toots on top of that. Rewrote local-only toots management for
upstream's changes.
4 years ago
Eugen Rochko
38aa7a9a7f
Refactor feed manager ( #14761 )
4 years ago
ThibG
e8aa85dc03
Fix multiple boosts of a same toot erroneously appearing in TL ( #14759 )
...
* Check for and record reblog info atomically
Instead of using ZREVRANK to determine whether a reblog is a new reblog or not,
use ZADD's NX option to perform the check/addition option atomically.
* Replace ZREVRANK call with ZSCORE key which is more efficient
* Make tests a bit stricter
* Fix off-by-one
4 years ago
abcang
e8c39853ad
Changed tag most_used to recently_used ( #14760 )
4 years ago
Eugen Rochko
78ceda1af6
Refactor how public and tag timelines are queried ( #14728 )
4 years ago
Thibaut Girka
612158f4f6
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/activitypub/collections_controller.rb`:
Conflict caused because we have additional code to make sure pinned
local-only toots don't get rendered on the ActivityPub endpoints.
Ported upstream changes.
4 years ago
Eugen Rochko
2f5a6c4a4f
Remove obsolete IndexedDB operations from web UI ( #14730 )
...
Storing objects in IndexedDB was disabled in #7932 , but we were
still trying to read objects from it before making an API call
4 years ago
Takeshi Umeda
04cbd783b3
Fix direct visibility style for light theme ( #14727 )
4 years ago
ThibG
1a3405005a
Add outbox attribute to instance actor ( #14721 )
...
It's not useful for now, but it's required by ActivityPub
4 years ago
Takeshi Umeda
cb37bd63dc
Added account featured tags API ( #11817 )
4 years ago
Eugen Rochko
c6ad9aae69
Add featured hashtags as an ActivityPub collection ( #11595 )
4 years ago
ThibG
6a6739feb2
[Glitch] Update Tesseract.js
...
Port 6cb7f10134
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
7ffdd23c46
[Glitch] Add border around 🐞 emoji
...
Port JS change from a3c9062153
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
5b8a4f96de
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `config/webpack/shared.js`:
Upstream has changed how Tesseract.js gets included and dropped a dependency.
The conflict is caused by glitch-soc having different code due to its
theming system.
Ported upstream changes.
- `lib/mastodon/version.rb`:
Upstream refactor/code style change in a place we replaced upstream's
repo URL with ours.
Ported upstram changes, keeping our repo URL.
- `yarn.lock`:
Upstream dropped dependencies, one of which was textually too close to
a glitch-soc-specific dependency. Not a real conflict.
4 years ago
Thibaut Girka
2cde2c84e8
Change radio button design to be consistent with that of the directory explorer
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
cf553a4477
Capitalize replies_policy strings
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
50d0c1e95f
Add configuration option to filter replies in lists ( #9205 )
...
* Add database support for list show-reply preferences
* Add backend support to read and update list-specific show_replies settings
* Add basic UI to set list replies setting
* Add specs for list replies policy
* Switch "cycling" reply policy link to a set of radio inputs
* Capitalize replies_policy strings
* Change radio button design to be consistent with that of the directory explorer
4 years ago
Eugen Rochko
a143764c4c
Change own direct-visibility statuses to be in the home feed again ( #14711 )
...
And remove highlighting in web UI
Full circle from #8940
4 years ago
Thibaut Girka
31a9c14a5a
Fix threaded mode
...
Fixes #1414
4 years ago
dependabot[bot]
61b768572e
Bump rubocop from 0.86.0 to 0.88.0 ( #14412 )
...
* Bump rubocop from 0.86.0 to 0.88.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop ) from 0.86.0 to 0.88.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases )
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v0.86.0...v0.88.0 )
Signed-off-by: dependabot[bot] <support@github.com>
* Fix for latest RuboCop
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
4 years ago
ThibG
6cb7f10134
Update Tesseract.js ( #14708 )
...
* [WiP] Update Tesseract.js
- Update Tesseract.js to 2.2.1
- Use versioned file names
- differentiate two progression states: preparing OCR and detecting picture
* Get rid of copy-webpack-plugin
4 years ago
Thibaut Girka
79f367db2e
Fix crash when opening detailed view of a status you boosted
4 years ago
ThibG
a3c9062153
Add border around 🐞 emoji ( #14712 )
4 years ago
ThibG
0fd309af0d
Add back “Home” link to the “Getting Started” column when the “Home” column isn't mounted ( #14707 )
...
* Add back "Home" link to "Getting started" when Home column isn't mounted
* Fix keys in getting_started
It should not matter much in practice as the list of items will only
change extremely rarely, but having a `key` that corresponds to the actual
item makes much more sense than having it be the index of the item within
the list.
4 years ago
Takeshi Umeda
74eb6f3a24
Fix limited follower id in fan-out-on-write service ( #14709 )
4 years ago
Akihiko Odaki
b096ad1c0f
Make Array-creation behavior of Paginable more predictable ( #14687 )
...
* Make Array-creation behavior of Paginable more predictable
Paginable.paginate_by_id usually returns ActiveRecord::Relation, but it
returns an Array if min_id option is present. The behavior caused problems
fixed with the following commits:
- 976938bf30
- 5a8fa3ad95
- 1c70d8189c
To prevent from recurring similar problems, this commit introduces two
changes:
- The scope now always returns an Array whether min_id option is present
or not.
- The scope is renamed to to_a_paginated_by_id to clarify it returns an
Array.
* Transform Paginable.to_a_paginated_by_id from a scope to a class method
https://api.rubyonrails.org/classes/ActiveRecord/Scoping/Named/ClassMethods.html#method-i-scope
> The method is intended to return an ActiveRecord::Relation object, which
> is composable with other scopes.
Paginable.to_a_paginated_by_id returns an Array and is not appropriate
as a scope.
4 years ago
Thibaut Girka
22eb51447d
Adapt 2FA changes to glitch-soc's theming system
4 years ago
santiagorodriguez96
6b224ecaed
[Glitch] Add WebAuthn as an alternative 2FA method
...
Port CSS changes from f142983484
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Tdxdxoz
ee0ca40541
[Glitch] Fix: also use custom private boost icon for detailed status
...
Port c950a85d9e
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Daigo 3 Dango
126e7f52d2
[Glitch] Better manage subscriptionCounters
...
Port ec75a4f48b
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
proxy
efb1f3413c
[Glitch] reword "boost to original audience" as per tootsuite#14596
...
Port a455c84892
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Takeshi Umeda
64e330ac6b
[Glitch] Fix click range discrepancies in gifv
...
Port 58f40e0786
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
b11521e251
[Glitch] Fix scrolling issues when closing some dropdown menus
...
Port b4d2063384
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
37e746eab6
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/accounts_controller.rb`:
Upstream change too close to a glitch-soc change related to
instance-local toots. Merged upstream changes.
- `app/services/fan_out_on_write_service.rb`:
Minor conflict due to glitch-soc's handling of Direct Messages,
merged upstream changes.
- `yarn.lock`:
Not really a conflict, caused by glitch-soc-only dependencies
being textually too close to updated upstream dependencies.
Merged upstream changes.
4 years ago
Eugen Rochko
e8d1656bd6
Add support for dereferencing objects through bearcaps ( #14683 )
4 years ago
Eugen Rochko
d0fecf89d5
Fix inefficiencies in fan-out-on-write service ( #14682 )
4 years ago
Eugen Rochko
97762d28b6
Fix videos with near-60 fps being rejected ( #14684 )
...
Fix #14668
4 years ago
Thibaut Girka
4b8097e67c
Fix replying to some remote toots switching to local-only
4 years ago
Akihiko Odaki
1c70d8189c
Introduce ApplicationController#cache_collection_paginated_by_id ( #14677 )
...
* Replace incorrect use of distinct with group
Some uses of ActiveRecord::QueryMethods#distinct pass field names but they
are incorrect for the current version of Rails.
ActiveRecord::QueryMethods#group provides the expected behavior and
benefits performance. See commit 6da24aad4cafdef8d8a2c92bac2002a5fc2fe9c8.
* Introduce ApplicationController#cache_collection_paginated_by_id
ApplicationController#cache_collection_paginated_by_id fuses
ApplicationController#cache_collection and Paginable.paginate_by_id.
An advantage of this method is that it prevents from modifying scope which
Paginable.paginate_by_id may provide.
ApplicationController#cache_collection always return an array and there
is no possibility of the scope modification. It is also clear for a
programmer, considering the implication of "cache".
This method can also emit more efficient queries by using
Cacheable.cache_ids before calling Paginable.paginate_by_id.
4 years ago
Akihiko Odaki
5a8fa3ad95
Eagerly load statuses with the main query in Api::V1::BookmarksController ( #14674 )
...
This is same with commit 976938bf30
except
that it was for Api::V1::FavouritesController while this is for
Api::V1::BookmarksController.
4 years ago
Akihiko Odaki
81666b26a6
Replace incorrect use of distinct with group ( #14675 )
...
Some uses of ActiveRecord::QueryMethods#distinct pass field names but they
are incorrect for the current version of Rails.
ActiveRecord::QueryMethods#group provides the expected behavior and
benefits performance. See commit 6da24aad4cafdef8d8a2c92bac2002a5fc2fe9c8.
4 years ago
Akihiko Odaki
976938bf30
Eagerly load statuses with the main query in Api::V1::FavouritesController ( #14673 )
...
The old implementation had two queries:
1. The query constructed in Api::V1::FavouritesController#results
2. The query constructed in #cached_favourites, which is merged with 1.
Both of them are issued againt PostgreSQL. The combination of the two
queries caused the following problems:
- The small window between the two queries involves race conditions.
- Minor performance inefficiency.
Moreover, the construction of query 2, which involves merging with query
1 has a bug. Query 1 is finalized with paginate_by_id, but paginate_by_id
returns an array when min_id parameter is specified. The behavior prevents
from merging the query, and in the real world, ActiveRecord simply ignores
the merge (!), which results in querying the entire scan of statuses and
favourites table.
This change fixes these issues by simply letting query 1 get all the works
done.
4 years ago
Akihiko Odaki
44df785077
Use Status.group instead of Status.distinct in HashQueryService ( #14662 )
...
DISTINCT clause removes duplicated records according to all the selected
attributes. In reality, it can remove duplicated records only looking at
statuses.id, but the clause confuses the query planner and yields
insufficient performance.
The behavior is also problematic if the scope produced by HashQueryService
is used to query columns without id (using pluck method, for example). The
scope is expected to contain unique statuses, but the uniquness will be
evaluated with some arbitrary columns other than id.
GROUP BY clause resolves those problem by explicitly specifying the
column to take into account for the record distinction.
A workaround for the problem of DISTINCT clause in
Api::V1::Timelines::TagController is no longer necessary and removed.
4 years ago
Thibaut Girka
8ad2252c98
Fix spacing around reblog counter in detailed statuses
...
And bring the whole thing closer to upstream's code.
4 years ago
ThibG
d480442e58
Add support for latest HTTP Signatures spec draft ( #14556 )
...
* Add support for latest HTTP Signatures spec draft
https://www.ietf.org/id/draft-ietf-httpbis-message-signatures-00.html
- add support for the “hs2019” signature algorithm (assumed to be equivalent
to RSA-SHA256, since we do not have a mechanism to specify the algorithm
within the key metadata yet)
- add support for (created) and (expires) pseudo-headers and related
signature parameters, when using the hs2019 signature algorithm
- adjust default “headers” parameter while being backwards-compatible with
previous implementation
- change the acceptable time window logic from 12 hours surrounding the “date”
header to accepting signatures created up to 1 hour in the future and
expiring up to 1 hour in the past (but only allowing expiration dates up to
12 hours after the creation date)
This doesn't conform with the current draft, as it doesn't permit accounting
for clock skew.
This, however, should be addressed in a next version of the draft:
https://github.com/httpwg/http-extensions/pull/1235
* Add additional signature requirements
* Rewrite signature params parsing using Parslet
* Make apparent which signature algorithm Mastodon on verification failure
Mastodon uses RSASSA-PKCS1-v1_5, which is not recommended for new applications,
and new implementers may thus unknowingly use RSASSA-PSS.
* Add workaround for PeerTube's invalid signature header
The previous parser allowed incorrect Signature headers, such as
those produced by old versions of the `http-signature` node.js package,
and seemingly used by PeerTube.
This commit adds a workaround for that.
* Fix `signature_key_id` raising an exception
Previously, parsing failures would result in `signature_key_id` being nil,
but the parser changes made that result in an exception.
This commit changes the `signature_key_id` method to return `nil` in case
of parsing failures.
* Move extra HTTP signature helper methods to private methods
* Relax (request-target) requirement to (request-target) || digest
This lets requests from Plume work without lowering security significantly.
4 years ago
ThibG
46283b489e
Fix dereferencing remote statuses not using the correct account ( #14656 )
...
Follow-up to #14359
In the case of limited toots, the receiver may not be explicitly part of the
audience. If a specific user's inbox URI was specified, it makes sense to
dereference the toot from the corresponding user, instead of trying to find
someone in the explicit audience.
4 years ago
santiagorodriguez96
f142983484
Add WebAuthn as an alternative 2FA method ( #14466 )
...
* feat: add possibility of adding WebAuthn security keys to use as 2FA
This adds a basic UI for enabling WebAuthn 2FA. We did a little refactor
to the Settings page for editing the 2FA methods – now it will list the
methods that are available to the user (TOTP and WebAuthn) and from
there they'll be able to add or remove any of them.
Also, it's worth mentioning that for enabling WebAuthn it's required to
have TOTP enabled, so the first time that you go to the 2FA Settings
page, you'll be asked to set it up.
This work was inspired by the one donde by Github in their platform, and
despite it could be approached in different ways, we decided to go with
this one given that we feel that this gives a great UX.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: add request for WebAuthn as second factor at login if enabled
This commits adds the feature for using WebAuthn as a second factor for
login when enabled.
If users have WebAuthn enabled, now a page requesting for the use of a
WebAuthn credential for log in will appear, although a link redirecting
to the old page for logging in using a two-factor code will also be
present.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: add possibility of deleting WebAuthn Credentials
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: disable WebAuthn when an Admin disables 2FA for a user
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: remove ability to disable TOTP leaving only WebAuthn as 2FA
Following examples form other platforms like Github, we decided to make
Webauthn 2FA secondary to 2FA with TOTP, so that we removed the
possibility of removing TOTP authentication only, leaving users with
just WEbAuthn as 2FA. Instead, users will have to click on 'Disable 2FA'
in order to remove second factor auth.
The reason for WebAuthn being secondary to TOPT is that in that way,
users will still be able to log in using their code from their phone's
application if they don't have their security keys with them – or maybe
even lost them.
* We had to change a little the flow for setting up TOTP, given that now
it's possible to setting up again if you already had TOTP, in order to
let users modify their authenticator app – given that now it's not
possible for them to disable TOTP and set it up again with another
authenticator app.
So, basically, now instead of storing the new `otp_secret` in the
user, we store it in the session until the process of set up is
finished.
This was because, as it was before, when users clicked on 'Edit' in
the new two-factor methods lists page, but then went back without
finishing the flow, their `otp_secret` had been changed therefore
invalidating their previous authenticator app, making them unable to
log in again using TOTP.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* refactor: fix eslint errors
The PR build was failing given that linting returning some errors.
This commit attempts to fix them.
* refactor: normalize i18n translations
The build was failing given that i18n translations files were not
normalized.
This commits fixes that.
* refactor: avoid having the webauthn gem locked to a specific version
* refactor: use symbols for routes without '/'
* refactor: avoid sending webauthn disabled email when 2FA is disabled
When an admins disable 2FA for users, we were sending two mails
to them, one notifying that 2FA was disabled and the other to notify
that WebAuthn was disabled.
As the second one is redundant since the first email includes it, we can
remove it and send just one email to users.
* refactor: avoid creating new env variable for webauthn_origin config
* refactor: improve flash error messages for webauthn pages
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
4 years ago
Tdxdxoz
c950a85d9e
Fix: also use custom private boost icon for detailed status ( #14471 )
...
* use custom private boost icon for detail status
* only use className
4 years ago
ThibG
4468fce63c
Add support for inlined objects in activity audience ( #14514 )
...
* Add support for inlined objects in activity audience
* Add tests
4 years ago
Daigo 3 Dango
ec75a4f48b
Better manage subscriptionCounters ( #14608 )
...
Before this change:
- unsubscribe() was not called for a disconnection
- It seems that WebSocketClient calls connected() and reconnected().
subscriptionCounters were incremented twice for a single reconnection,
first from connected() and second from reconnected()
This might be a an additional change to
https://github.com/tootsuite/mastodon/pull/14579
to recover subscriptions after a reconnect.
4 years ago
proxy
a455c84892
reword "boost to original audience" as per #14596 ( #14598 )
4 years ago
Takeshi Umeda
58f40e0786
Fix click range discrepancies in gifv ( #14615 )
4 years ago
ThibG
b4d2063384
Fix scrolling issues when closing some dropdown menus ( #14606 )
4 years ago
Thibaut Girka
f800c99b60
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
4e292c23d6
Fix not being able to unbookmark toots when blocked by their author ( #14604 )
...
* Fix not being able to unbookmark toots when blocked by their author
* Add tests
4 years ago
ThibG
9a6ec27a87
Fix client-side form validation not accepting handles with uppercase letters ( #14599 )
4 years ago
Thibaut Girka
cf50a1c31f
Change styling to always have scrollbar on search results
4 years ago
Thibaut Girka
2775132b00
Fix WebUI crash in edge case when media display size causes scroll
...
Fixes #1406
4 years ago
Thibaut Girka
323075e4c1
Fix styling of display names and account handles, make it closer to upstream
4 years ago
ThibG
4d5162e506
[Glitch] Add client-side validation in password change forms
...
Port ef710bbff6
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
411d100eb4
[Glitch] Add HTML form validation for the registration form
...
Port 22aba16386
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
c32625495f
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
191fc742e9
Fix hardcoded non-breaking space in public view ( #14568 )
4 years ago
ThibG
8baad22f68
Improve email address validation ( #14565 )
...
* Increase DNS timeout from 1 second to 5 seconds for MX check
1 seconds is rather short when using a recursive DNS resolver which
hasn't got a cached result already available. Use 5 seconds instead,
which is the timeout value we use for outgoing HTTP queries.
* Add more precise error messages for invalid e-mail addresses
4 years ago
ThibG
ef710bbff6
Add client-side validation in password change forms ( #14564 )
...
* Fix client-side username validation at registration
It used the Account::USERNAME_RE regexp which is for *remote* users,
local user validation is stricter. Also take into account max username length.
* Add client-side form validation for password change
* Add client-side form validation to dedicated registration form
Previous changes only applied to the /about page, not the dedicated form on
/auth
4 years ago
Thibaut Girka
43bceb4337
Fix local-only flag not necessarily being preserved on delete & redraft
4 years ago
Thibaut Girka
c4985a699d
Fix embedded player
...
(broken because I forgot to adapt it to glitch-soc's theming system)
4 years ago
ThibG
22aba16386
Add HTML form validation for the registration form ( #14560 )
...
* Add HTML-level validation of username in sign-up form
* Make required fields with incorrect values more visible
* Enable HTML form validation for the registration form
* Mark agreement checkbox as required client-side
* Add minimum length to password
* Add client-side password confirmation validation
4 years ago
Thibaut Girka
a3cbe8181e
Fix new audio player when under content warnings
4 years ago
Eugen Rochko
1776c9a356
[Glitch] Add support for managing multiple stream subscriptions in a single connection
...
Ported 3d32dacbcb
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
e9e6453eff
Merge branch 'master' into glitch-soc/master
...
Conflicts:
- `streaming/index.js`:
Upstream entirely refactored it.
Ported our changes to upstream's refactor. Hopefuly.
4 years ago
Eugen Rochko
3d32dacbcb
Add support for managing multiple stream subscriptions in a single connection ( #14524 )
4 years ago
niwatori24
65c9d28fa1
Cache result of SQL ( #14534 )
4 years ago
Thibaut Girka
be0475e5a1
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
09b322872a
Fix crash when failing to load emoji picker ( #14525 )
...
Fixes #14523
4 years ago
abcang
739ea05d30
Fix eslint error ( #14521 )
4 years ago
ThibG
ed22b53180
Fallback to previous, more approximative hashtag RE on older browsers ( #14513 )
...
Fixes #14511
4 years ago
Thibaut Girka
f2a9736f52
[Glitch] Fallback to previous, more approximative hashtag RE on older browsers
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Fire Demon
27545edf3f
Add support for direct message assertions
4 years ago
ThibG
6a39f0123b
[Glitch] Fix audio player on Safari
...
Port 62324e9870
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
8d79bb4097
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
be88d4f851
Fix audio/video player not using CDN_HOST in media paths on public pages ( #14486 )
4 years ago
ThibG
62324e9870
Fix audio player on Safari ( #14485 )
4 years ago
ThibG
3ee1ac54d2
[Glitch] Fix new audio player features not working on Safari
...
Port 1f34bd4ff7
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
3ddc3ce6ca
[Glitch] Fix wrong proptypes for onEditAccountNote
...
Port 9a709d63c2
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
kedama
c61988629c
[Glitch] Fix the hashtag judgment of the compose form to be the same as the server side
...
Port a903875e3c
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
c2eb2a9d16
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
bc1d925629
Fix disabled boost icon being replaced by private boost icon on hover ( #14456 )
...
Fixes #14455
4 years ago
ThibG
1f34bd4ff7
Fix new audio player features not working on Safari ( #14465 )
...
Fixes #14462
4 years ago
ThibG
9a709d63c2
Fix wrong proptypes for onEditAccountNote ( #14481 )
...
Also add missing PropTypes to the correct component
Fixes #14478
4 years ago
kedama
a903875e3c
Fix the hashtag judgment of the compose form to be the same as the server side ( #14484 )
4 years ago
Thibaut Girka
0afe3c1562
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `yarn.lock`:
No real conflict, just a glitch-soc-only dependency textually too close to
one updated upstream. Ported upstream changes.
4 years ago
ThibG
d6f2d1d3f2
Fix handling of Reject Follow when a matching follow relationship exists ( #14479 )
...
* Add tests
* Fix handling of Reject Follow when a matching follow relationship exists
Regression from #12199
4 years ago
Takeshi Umeda
381ecf1d0b
Fix following restriction not working when exact match in account search ( #14394 )
4 years ago
Thibaut Girka
48bb51075b
Fix local-only toots not being returned by the local TL API
...
Fixes #1389
4 years ago
Eugen Rochko
0d9599ee02
Fix unnecessary second connection to user stream from account timeline in web UI ( #14387 )
...
Fix regression from #14212
4 years ago
Eugen Rochko
73d228513c
New Crowdin updates ( #14335 )
...
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations simple_form.en.yml (Kazakh)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.yml (Ido)
[ci skip]
* New translations simple_form.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.yml (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations doorkeeper.en.yml (Armenian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.yml (Macedonian)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations devise.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
* Fix normalization
4 years ago
ThibG
b5302ae87c
Fix hover and normal colors for private boost icon being swapped ( #14386 )
4 years ago
Thibaut Girka
a787759254
Fix custom boost icon colors being swapped
4 years ago
ThibG
63a52b31c9
[Glitch] Add custom icon for private boosts
...
Port 75ba08c2db
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
1b903d7b2d
Merge branch 'master' into glitch-soc/master
4 years ago
ThibG
75ba08c2db
Add custom icon for private boosts ( #14380 )
4 years ago
Takeshi Umeda
652f872bf1
Fix duplicate notification and delivery of mentions ( #14378 )
4 years ago
ThibG
3dd351803e
[Glitch] Change disabled retweet icon
...
Port 96a89bae14
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
e4f145a4f4
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
Thibaut Girka
360b47c6b4
Fix “Show less for all”/”Show more for all” eye icon not reflecting state
4 years ago
ThibG
96a89bae14
Change disabled retweet icon ( #14373 )
...
* Change disabled retweet icon
* Hide fontawesome version of boost icon in both reduce-motion and no-reduce-motion
4 years ago
ThibG
915d01a921
[Glitch] Fix keyboard navigation in scrollable lists
...
Port 825475a32a
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Sasha Sorokin
18722c2809
[Glitch] Fix following_counter plural to include "one"
...
Port 7b682ceb13
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
f450e52085
[Glitch] Fix audio player controls color in mastodon-light theme
...
Port 027491a518
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
714a3fcb3b
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/javascript/mastodon/actions/compose.js`:
Not a “real” conflict, but change too close to a change we made to
fix the vanilla WebUI locally pushing authored local-only toots in the
public TL view.
4 years ago
ThibG
e041b8b3f8
Fix not handling Undo on some activity types when they aren't inlined ( #14346 )
...
* Fix not handling Undo on some activity types when they aren't inlined
When receiving an Undo for a non-inlined activity, try looking it up in
database using the URI. The queries are ad-hoc because we don't have a global
index of object URIs, and not all activity types are stored in database with
an index on their URI.
Announces are just statuses, and have an index on URIs, so this check can
be done efficiently.
Accepts cannot be handled at all because we don't record their URI at any
point.
Follows don't have an index on URI, but they have an index on the issuing
account, which should make such queries largely manageable.
Likes don't have an index on URI, they have an index on the issuing account,
but the number of favs per account may be very high, so I decided not to
handle that.
Blocks don't have an index on URI, but they have an index on the issuing
account, which should make such queries largely manageable.
In all cases, if an Undo could not be handled properly, we call `delete_later!`
because that does not require us to know more than the URI of the undone
property.
* Add tests
* Make newer blocks overwrite older ones
Allows re-synchronizing block info by re-blocking and un-blocking again
when the original Undo Block has been lost.
4 years ago
ThibG
7792bab1cd
Fix RSS feeds not being cachable ( #14368 )
...
* Add tests for some cachable responses
This only covers responses that we should have managed to make cachable
so far. It's not the case of all responses that should be cachable in
the end.
* Fix RSS feeds not being cachable
4 years ago
ThibG
9c90f5347e
Dereference object URIs in Create and Update messages ( #14359 )
...
* Dereference object URIs in Create and Update messages
Fixes #14353
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
* Refactor, and perform origin check *before* attempting to fetch object
Co-authored-by: Fire Demon <firedemon@creature.cafe>
4 years ago
Takeshi Umeda
63aa1c1fb9
Changed retries and rescued in ActivityPub::ProcessingWorker ( #14355 )
...
* Changed the number of retries and rescued exceptions in ActivityPub::ProcessingWorker
* Remove RecordNotUnique from rescue
4 years ago
Takeshi Umeda
ac0805ad10
Fix to add RedisLock to handle Announce activity ( #14365 )
4 years ago
Takeshi Umeda
622dcbeb8c
Fix movie width and frame_rate returning nil ( #14357 )
...
* Fix movie width and frame_rate returning nil
* Add StreamValidationError and raise
* Fix code style
4 years ago
Takeshi Umeda
c294f6f897
Add thumbnail_remote_url in MediaAttachment REST response ( #14358 )
...
* Add thumbnail_remote_url in MediaAttachment REST response
* Change thumbnail_remote_url to preview_remote_url
4 years ago
Ariel
ac1a3386bd
Fix/14021 behaviour on add or remove toots ( #14212 )
...
* Add toot send by current user at local state after send a new toot
Related to #14021
* Decrement toot counter at profile when remove a toot
Related to #14021
* Remove semicolon at end of line
4 years ago
mayaeh
aa206d35ad
ran `yarn manage:translations` ( #14344 )
4 years ago
ThibG
825475a32a
Fix keyboard navigation in scrollable lists ( #14348 )
...
Fixes #14347
4 years ago
Sasha Sorokin
7b682ceb13
Fix following_counter plural to include "one" ( #14342 )
...
That should've worked just fine, but unfortunately, Crowdin wasn't able
to pick up on our non-existent "one" category, thus appending empty
translation block to people's translations. Empty block WILL BE used by
any ICU FormatMessage library, thus resulting in an empty translation
for "one" category, and that requires immediate fix.
This commit duplicates contents of the "other" plural category.
4 years ago
ThibG
a9e58aa8c6
Fix boosted toots from blocked account not being retroactively removed from TL ( #14339 )
...
* Fix boosted toots from blocked account not being retroactively removed from TL
Fixes #14301
* Add test for clear_from_timeline
4 years ago
ThibG
027491a518
Fix audio player controls color in mastodon-light theme ( #14338 )
...
Fixes #14337
The new audio player sets the background and foreground colors automatically
based on the thumbnail of the audio file, but the mastodon-light theme
overrides the controls' colors with a hardcoded color, which sometimes make
them unreadable.
4 years ago
ThibG
98223df18c
[Glitch] Fix error when closing a playing audio or video modal
...
Port ddd69f3ae9
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
67657d8361
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
Eugen Rochko
35bf60cae8
New Crowdin updates ( #14311 )
...
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* i18n-tasks normalize
4 years ago
ThibG
109ea6f860
Fix removing allowed domains being done synchronously ( #14302 )
...
* Fix removing allowed domains being done synchronously
* Add tests
4 years ago
ThibG
ddd69f3ae9
Fix error when closing a playing audio or video modal ( #14310 )
4 years ago
Thibaut Girka
ea49c41a6e
Fix style of visibility icon in boost modal
4 years ago
han@highemelry
fd6fdf63c4
[Glitch] Add a visibility icon to boost modal
...
Port fbbc66f53e
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
24cd580add
[Glitch] Fix audio and video items in account gallery in web UI
...
Port ece8405ebd
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
654fd69903
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `config/routes.rb`:
Upstream disabled E2EE routes, which we did earlier, but slightly
differently. Took upstream's version.
4 years ago
Eugen Rochko
4198eed696
New Crowdin updates ( #14285 )
...
* New translations en.json (Bulgarian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Breton)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Uyghur)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Ido)
[ci skip]
* New translations en.yml (Ido)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.yml (Malay)
[ci skip]
* New translations simple_form.en.yml (Kazakh)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.yml (Hindi)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations activerecord.en.yml (Malayalam)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations activerecord.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations devise.en.yml (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
4 years ago
ThibG
c9fbf47a23
Fix being unable to unboost when blocked by their author ( #14308 )
...
Fixes #14307
4 years ago
Takeshi Umeda
27c1146f37
Improve group processing ( #14279 )
...
* Fix the local group's followers collection
* Fix to accept followed relayed_through_account
* Add local delivery to the group's followers
* Fix code style
* Revert "Add local delivery to the group's followers"
This reverts commit 3237effc199772e4c4d30f19082cbc5633f56196.
4 years ago
abcang
aca93fa882
Fix rubocop warning ( #14288 )
...
* Fix rubocop warning
* use limit variable
* use ContextCreatingMethods option
4 years ago
ThibG
d93a24936c
Fix larger video files not being transcoded ( #14306 )
...
Since #14145 , the `set_type_and_extension` has been moved from
`before_post_process` to `before_file_post_process`, but while the former
runs before all validations performed by Paperclip, the latter is dependent
on the order validations and hooks are defined.
In our case, this meant video files could be checked against the generic 10MB
limit, causing validation failures, which, internally, make Paperclip skip
post-processing, and thus, transcoding of the video file.
The actual validation would then happen after the type is correctly set, so
the large file would pass validation, but without being transcoded first.
This commit moves the hook definition so that it is run before checking for
the file size.
4 years ago
Eugen Rochko
09caf7e22e
Change `tootctl search deploy` algorithm ( #14300 )
4 years ago
Eugen Rochko
bd73623069
Fix account domain block not properly unfollowing accounts from domain ( #14304 )
...
Fix #14303
4 years ago
ThibG
0be60c5d05
Fix removing a DomainAllow rule wiping known accounts in open federation mode ( #14298 )
...
Fixes #14296
4 years ago
han@highemelry
fbbc66f53e
Add a visibility icon to boost modal ( #14292 )
...
Related to tootsuite#14123.
Add visibility icon not only status/detailed-status but also modal window for boost.
4 years ago
Eugen Rochko
ece8405ebd
Fix audio and video items in account gallery in web UI ( #14282 )
...
* Fix audio and video items in account gallery in web UI
- Fix audio items not using thumbnails
- Fix video items not using custom thumbnails
- Fix video items autoplaying like GIFs
* Change audio and video items in account gallery to autoplay when opened in web UI
* Fix code style issue
4 years ago
Eugen Rochko
7d777e474a
New Crowdin updates ( #14197 )
...
* New translations devise.en.yml (Uyghur)
[ci skip]
* New translations doorkeeper.en.yml (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations simple_form.en.yml (Sorani (Kurdish))
[ci skip]
* New translations activerecord.en.yml (Sorani (Kurdish))
[ci skip]
* New translations devise.en.yml (Sorani (Kurdish))
[ci skip]
* New translations doorkeeper.en.yml (Sorani (Kurdish))
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
4 years ago
ThibG
ed69b4909d
[Glitch] Fix block/mute pagination in WebUI
...
Port e793d71486
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
a36c0efec7
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
e793d71486
Fix block/mute pagination in WebUI ( #14275 )
...
Fixes #14274
4 years ago
Sasha Sorokin
c952cc3115
[Glitch] Improve safety of Blurhash component
...
Port 66f9bd08da
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
f2d0bd912c
[Glitch] Audio player visualization improvements
...
Port c2f5593be0
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
1681c7c028
[Glitch] Freeze scroll position when a dropdown menu is open in the TL
...
Port bf40d331e6
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Sasha Sorokin
2e73171628
[Glitch] Replace repetitive blurhash code with component ( #14267 )
...
Port 7418e0e613
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
24bc87b150
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
c2f5593be0
Audio player visualization improvements ( #14281 )
...
* Fix audio player ticks position
* Split visualizer code into own file to comply with license
* Change top-left corner of visualizer always showing peaks, clean up code
4 years ago
Eugen Rochko
29916e7143
Add attribution notice to the audio player component ( #14280 )
...
The code for rendering a frequency graph around a circle has been adopted (with modifications) from a CodePen by Alex Permyakov
4 years ago
Thibaut Girka
3876df0390
Fix clicking the audio player also opening toots in detailed view
4 years ago
Sasha Sorokin
66f9bd08da
Improve safety of Blurhash component ( #14278 )
...
There was a missed empty hash check. As well as rendering is now wrapped
in try/catch block, so app won't crash if any Blurhash component fails
to render its contents as it's not that critical.
4 years ago
ThibG
bf40d331e6
Freeze scroll position when a dropdown menu is open in the TL ( #14271 )
...
* Freeze scroll position when a dropdown menu is open in the TL
* Apply this to direct TL as well
* Fix case when mouse leaves the menu
4 years ago
Sasha Sorokin
7418e0e613
Replace repetitive blurhash code with component ( #14267 )
...
This commit replaces all unnecessarily repeated code for decoding and
embedding blurhash canvases with separate component - <Blurhash>.
Under the hood Blurhash component will use effect dependent on its
props. This gives a few benefits: it will only be re-rendered whenever
the hash or width/height/dummy props update, and will not render if
canvas won't get to the final DOM, because then effect won't fire,
which prevents weird bugs like #14257 .
4 years ago
Eugen Rochko
7438f56da3
Fix videos on public pages not using custom thumbnails ( #14273 )
4 years ago
Thibaut Girka
fc05a7fb1f
Change styling of account note editing buttons
...
Co-Authored-By: Mélanie Chauvel (ariasuni) <perso@hack-libre.org>
4 years ago
mayaeh
4639832293
remove unused word. ( #14250 )
...
ran `yarn manage:translations en`
4 years ago
ThibG
527f8abfa2
[Glitch] Fix new accent color not refreshing when changing thumbnail for audio uploads
...
Port 06f67cfca0
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
1271de96f0
[Glitch] Fix WebUI crash on sensitive preview card with no preview thumbnail
...
Port 5a6b0ce051
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
72aeeb2b34
[Glitch] Fix WebUI crash on sensitive preview card with no preview thumbnail
...
Port ad1b26b4bc
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
67564cbb48
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
06f67cfca0
Fix new accent color not refreshing when changing thumbnail for audio uploads ( #14264 )
4 years ago
ThibG
5a6b0ce051
Fix WebUI crash on sensitive preview card with no preview thumbnail ( #14261 )
...
Follow-up on #14260 which only fixed half the call sites
4 years ago
ThibG
ad1b26b4bc
Fix WebUI crash on sensitive preview card with no preview thumbnail ( #14260 )
...
Fixes #14257
4 years ago
ThibG
12a7717e66
Merge pull request #1372 from ThibG/glitch-soc/fixes/local-only-public-option
...
Add option to show local-only toots in public timeline
4 years ago
Thibaut Girka
52eaecaef7
Change styling and layout of account notes UI
4 years ago
Thibaut Girka
3c8a8a0b45
Change account note placeholder name since the design has diverged upstream
4 years ago
Thibaut Girka
22c04b63cb
Fix being unable to add account notes
4 years ago
Sasha Sorokin
1144767ca8
[Glitch] Replace shortNumberFormat with <ShortNumber>
...
Port 55969e3bc2
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
409d00d256
[Glitch] Add ability to choose media thumbnail in web UI
...
Port 825f73c3f9
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
f0aee465d9
[Glitch] Fix hashtag column options styling
...
Port aa7142b9e2
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
c2347f6cf6
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `package.json`:
Not really a conflict, just some glitch-soc-specific dependency
too close to an upstream-updated one.
4 years ago
Eugen Rochko
0edde9d6c8
Fix media attachments enumeration ( #14254 )
...
* Fix media attachment enumeration
* Switch media_attachments id to snowflake ids
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
a79c5e5e63
Fix other sessions not being logged out on password change ( #14252 )
...
While OAuth tokens were immediately revoked, accessing the home
controller immediately generated new OAuth tokens and "revived"
the session due to a combination of using remember_me tokens and
overwriting the `authenticate_user!` method
4 years ago
Sasha Sorokin
fd3649742c
Fix account note border radius ( #14251 )
4 years ago
Eugen Rochko
825f73c3f9
Add ability to choose media thumbnail in web UI ( #14244 )
4 years ago
Eugen Rochko
a0c1bbf583
Change User-Agent of link preview fetching service to include "Bot" ( #14248 )
...
This forces Twitter to render OpenGraph tags in the response
4 years ago
ThibG
aa7142b9e2
Fix hashtag column options styling ( #14247 )
...
* Enable nonces for stylesheets
* Pass nonce to react-select
4 years ago
Eugen Rochko
b6b2d8b8a3
Change design of account notes in web UI ( #14208 )
...
* Change design of account notes in web UI
* Fix `for` -> `htmlFor`
4 years ago
Thibaut Girka
c67752f255
Fix vanilla flavour too
4 years ago
Thibaut Girka
edd7bd26f6
Add UI option to show local-only toots in public timeline
4 years ago
Sasha Sorokin
55969e3bc2
Replace shortNumberFormat with <ShortNumber> ( #14061 )
...
This commit introduces new utility component - ShortNumber. It should
work almost the same way as original shortNumberFormat function,
though it also localizes units and accepts one more prop - renderer.
Renderer is a function that takes rendered short formatted number
and also ready-to-pluralize number to format display result accordingly.
Ready-to-pluralize number allows to correctly select plural for
compactly notated numbers, respecting thousands and other units.
Issue #12451 accurately describes the issue with using raw numbers
when replacing counter with short version. In short, it doesn't work
with languages such as Russian, that require different plurals,
according to the unit number was compacted to.
All previous usages of shortNumberFormat were replaced with new
function, and as it became unused, it was removed to avoid misleading.
4 years ago
mayaeh
e439151df3
Fix restored words from "toot" to "status" ( #14242 )
4 years ago
Eugen Rochko
3c51c7dd3e
[Glitch] Add color extraction for audio thumbnails
...
Port 8517a5fdb4
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
26227204df
[Glitch] Fix audio modals not using blurhash and poster
...
Port 6163518115
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
f5afdaa2e0
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `.env.production.sample`:
Upstream changed it completely.
Changed ours to merge upstream's new structure, but
keeping most of the information.
4 years ago
Eugen Rochko
8517a5fdb4
Add color extraction for audio thumbnails ( #14209 )
4 years ago
mayaeh
6f6e9d8214
Fix-up #13749 ( #14204 )
4 years ago
Eugen Rochko
e282f9b671
[Glitch] Add customizable thumbnails for audio and video attachments
...
Port a3ce01a102
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
b907cc66e1
[Glitch] Fix various issues around OpenGraph representation of media
...
Port audio player changes from 12ac904a33
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
9d737108a6
[Glitch] Fix audio/video/images/cards not reacting to window resizes in web UI
...
Port d0dc37eadb
to glitch-soc
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
27becaa9df
[Glitch] Change volume control and download buttons in web UI
...
Port ce34c13aff
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
a67ad4ffce
[Glitch] Fix audio player not working when media files are hosted on a different domain
...
Port 90477d7e4d
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
a135f3bd98
[Glitch] Change design of audio players in web UI
...
Port 563a77d0b4
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
6163518115
Fix audio modals not using blurhash and poster ( #14199 )
4 years ago
Takeshi Umeda
cd95fd8105
[Glitch] Fix the conditions for incomplete remote content
...
Port 911c385f2f
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
5c6cf202ba
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
Eugen Rochko
21f1cbaf30
New Crowdin translations ( #13749 )
...
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations simple_form.en.yml (Taigi)
[ci skip]
* New translations activerecord.en.yml (Taigi)
[ci skip]
* New translations devise.en.yml (Taigi)
[ci skip]
* New translations doorkeeper.en.yml (Taigi)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations simple_form.en.yml (Silesian)
[ci skip]
* New translations activerecord.en.yml (Silesian)
[ci skip]
* New translations devise.en.yml (Silesian)
[ci skip]
* New translations doorkeeper.en.yml (Silesian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
4 years ago
Takeshi Umeda
911c385f2f
Fix the conditions for incomplete remote content ( #14195 )
4 years ago
Ariel
98aa197c07
[Glitch] Fix cursor type in statuses
...
Port eee8b314af
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
0f633143eb
[Glitch] Fix lock icon not being shown when locking account in profile settings
...
Port 9e14647df8
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
928a3a9fd5
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/javascript/packs/public.js`:
Conflict because part of that file has been split to
`app/javascript/core/settings.js`. Ported those changes
there.
4 years ago
Eugen Rochko
ca238c879d
Change Redis#exists calls to Redis#exists? to avoid deprecation warning ( #14191 )
4 years ago
Ariel
eee8b314af
Fix cursor type in statuses ( #14185 )
4 years ago
ThibG
9e14647df8
Fix lock icon not being shown when locking account in profile settings ( #14190 )
4 years ago
ThibG
3e51b04d40
Change move handler to carry blocks over ( #14144 )
...
* Change move handler to carry blocks and mutes over
When user A blocks user B and B moves to a new account C, make A block C
accordingly.
Note that it only works if A's instance is aware of the Move, that is,
if B is on A's instance or has followers there.
* Also notify instances with known people blocking you when moving
* Add automatic account notes when blocking/muting an account that had no note
4 years ago
mayaeh
4b703d398a
follow-up #14149 ( #14192 )
...
ran `yarn manage:translations en`
4 years ago
Thibaut Girka
9b91f64ff3
Add support for li attribute to li element
4 years ago
Thibaut Girka
c28f80802a
Add support for “start” and “reversed” attributes to ol element
...
Fixes #1367
4 years ago
Eugen Rochko
36e5fd547b
Fix remote files not using Content-Type header, streaming ( #14184 )
4 years ago
ThibG
50f439db96
[Glitch] Add user notes on accounts
...
Port 3afc7977b1
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
trwnh
9dcd3388f6
[Glitch] Fix padding on account header
...
Port 41acf83cdf
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
a11fac77f3
[Glitch] Fix read marker state not being udpated internally
...
Port 8b7066dc61
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
1c3764c6f8
[Glitch] Change sensitive preview cards to not blur text
...
Port c92278aa1c
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
2a2af880b8
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `.env.production.sample`:
Upstream deleted it, I decided to keep it.
- `package.json`:
Upstream updated a dependency textually too close to wavesurfer.js
which has been deleted from upstream but is kept in glitch-soc for now.
4 years ago
ThibG
3afc7977b1
Add user notes on accounts ( #14148 )
...
* Add UserNote model
* Add UI for user notes
* Put comment in relationships entity
* Add API to create user notes
* Copy user notes to new account when receiving a Move activity
* Address some of the review remarks
* Replace modal by inline edition
* Please CodeClimate
* Button design changes
* Change design again
* Cancel note edition when pressing Escape
* Fixes
* Tweak design again
* Move “Add note” item, and allow users to add notes to themselves
* Rename UserNote into AccountNote, rename “comment” Relationship attribute to “note”
4 years ago
Eugen Rochko
16a8db0958
Fix trying to write non-existent image remote URL attribute on preview cards ( #14181 )
...
Regression from #14145
4 years ago
Yamagishi Kazutoshi
72ff9a1d65
Replace to testing-library from enzyme ( #14152 )
4 years ago
trwnh
41acf83cdf
Fix padding on account header ( #14179 )
4 years ago
Eugen Rochko
a3ce01a102
Add customizable thumbnails for audio and video attachments ( #14145 )
...
- Change audio files to not be stripped of metadata
- Automatically extract cover art from audio if it exists
- Add `thumbnail` parameter to `POST /api/v1/media`, `POST /api/v2/media` and `PUT /api/v1/media/:id`
- Add `icon` to represent it in attachments in ActivityPub
- Fix `preview_url` containing URL of missing missing image when there is no thumbnail instead of null
- Fix duration of audio not being displayed on public pages until the file is loaded
4 years ago
ThibG
8b7066dc61
Fix read marker state not being udpated internally ( #14155 )
...
Fixes #14151
4 years ago
ThibG
c92278aa1c
Change sensitive preview cards to not blur text ( #14143 )
...
Also only require click-through for interactive embeds.
4 years ago
Thibaut Girka
5ea65bfe13
Fix public page CSS to match upstream's changes
...
Kind of a port of 1aed75c2d0
to glitch-soc
4 years ago
Mélanie Chauvel
2700043e34
[Glitch] Improve appearence consistency of settings pages
...
Port 2fca9d3715
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
00283fe6ab
[Glitch] Fix design issues with sensitive preview cards
...
Port 907fe2996c
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
4500435bb1
[Glitch] Fix avatar size in public page detailed status
...
Port 528c103fc6
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Eugen Rochko
03273b3c7b
[Glitch] Fix various issues around OpenGraph representation of media
...
Port front-end changes (except for audio player) from 12ac904a33
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
0e33582bff
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
Mélanie Chauvel
2fca9d3715
Improve appearence consistency of settings pages ( #13938 )
...
* Fix header button changing header size in settings pages
* Make form buttons look more like a part of the form in settings pages
- Put buttons closer, using same distance as between inputs
- Make buton font size a bit smaller to blend a bit more
- Add the class button to button tags for consisent styling
4 years ago
Mélanie Chauvel
cb63e1e0d7
Improve wording of the “Add media” button tooltip ( #13954 )
...
- Remove (incomplete) list of supported formats
- List types of media (image, video, audio)
- Tell that several images could be uploaded using plural
4 years ago
Sasha Sorokin
8e9572112d
Fix Thai being skipped from language detection ( #13989 )
...
Thai does not separate words by spaces, so I figured out it should be
in 'reliable characters regexp' that denotes languages that do the same.
Related #13891 .
4 years ago
Takeshi Umeda
17c1443b23
Change to correct the role of the boost button ( #14132 )
4 years ago
Takeshi Umeda
1aed75c2d0
Add a visibility icon to status ( #14123 )
...
* Add a visibility icon to status
* Change to using the icon element
* Fix RTL
* Add a public globe
4 years ago
ThibG
907fe2996c
Fix design issues with sensitive preview cards ( #14126 )
...
* Fix design issues with sensitive preview cards
* Center “sensitive” label on preview image for interactive cards
* Add “button” role to sensitive preview card text
4 years ago
ThibG
528c103fc6
Fix avatar size in public page detailed status ( #14140 )
...
Regression from the inline-CSS changes
4 years ago
Eugen Rochko
12ac904a33
Fix various issues around OpenGraph representation of media ( #14133 )
...
- Fix audio attachments not being represented in OpenGraph tags
- Fix audio being represented as "1 image" in OpenGraph descriptions
- Fix video metadata being overwritten by paperclip-av-transcoder
- Fix embedded player not using Mastodon's UI
- Fix audio/video progress bars not moving smoothly
- Fix audio/video buffered bars not displaying correctly
4 years ago
ThibG
c0ad588857
[Glitch] Fix very wide media attachments resulting in too thin a thumbnail
...
Port 90445230cd
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Takeshi Umeda
26778b8c30
[Glitch] Fix modifier key to keep the EmojiPicker on macOS
...
Port c0b52ac871
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
fuyu
2e48c4ae55
[Glitch] Fix unnecessary gap under of video modal
...
Port 88cbcb5804
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
c1eb60642b
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/concerns/sign_in_token_authentication_concern.rb`:
Conflict due to glitch-soc's theming system.
Ported upstream changes.
- `app/controllers/concerns/two_factor_authentication_concern.rb`:
Conflict due to glitch-soc's theming system.
Ported upstream changes.
4 years ago
Eugen Rochko
d0dc37eadb
Fix audio/video/images/cards not reacting to window resizes in web UI ( #14130 )
...
* Fix audio/video/images/cards not reacting to window resizes in web UI
* Update app/javascript/mastodon/features/audio/index.js
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
4 years ago
ThibG
90445230cd
Fix very wide media attachments resulting in too thin a thumbnail ( #14127 )
...
Fixes #14094
4 years ago
ThibG
df13142cdd
Fix crash in MergeWorker ( #14129 )
...
Similarly to #12324 , the code is passing an Account object where an id
is expected.
4 years ago
Thibaut Girka
a6ce37528e
Simplify filtering condition
4 years ago
ash lea
3489cb87b7
never filter own posts from timeline
4 years ago
ThibG
6c42b23382
never filter own posts from timeline ( #14128 )
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
Co-authored-by: ash lea <example@thisismyactual.email>
4 years ago
Eugen Rochko
ce34c13aff
Change volume control and download buttons in web UI ( #14122 )
...
* Fix audio download button not starting download in web UI
* Fix volume controls on audio and video players in web UI
* Remove download button from video player in web UI
4 years ago
ThibG
90477d7e4d
Fix audio player not working when media files are hosted on a different domain ( #14118 )
4 years ago
Eugen Rochko
563a77d0b4
Change design of audio players in web UI ( #14095 )
4 years ago
Takeshi Umeda
c0b52ac871
Fix modifier key to keep the EmojiPicker on macOS ( #14096 )
4 years ago
fuyu
88cbcb5804
Fix unnecessary gap under of video modal ( #14098 )
4 years ago
fuyu
ad1dfea4fa
Fix not working I18n on 2FA and Sign in token page ( #14087 )
4 years ago
ThibG
6a3e2b0fe5
Fix functional user requirements in whitelist mode ( #14093 )
...
Fixes #14092
4 years ago
Eugen Rochko
aeba0f513d
[Glitch] Add hints about incomplete remote content to web UI
...
Port 32b7d341b7
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
743cef53d8
[Glitch] Fix initial audio volume not corresponding to what's displayed
...
Port 3f5fa64211
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
fuyu
14272c3a0e
[Glitch] Fixed emoji detection problem to append border
...
Port 4a3af0386b
to glitch-soc
Co-authored-by: ThibG <thib@sitedethib.com>
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
4d5ff62de5
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `Gemfile.lock`: not a real conflict, upstream update too close
to a glitch-soc-specific dependency
4 years ago
ThibG
3f5fa64211
Fix initial audio volume not corresponding to what's displayed ( #14057 )
4 years ago
Eugen Rochko
32b7d341b7
Add hints about incomplete remote content to web UI ( #14031 )
4 years ago
fuyu
4a3af0386b
Fixed emoji detection problem to append border ( #14020 )
...
* Fixed emoji detection problem to append border
* Add tests
* Add missing semicolon
* Fixed wrong result when includes different variation selector
* Add missing semicolon
* Remove grapheme-splitter and Change emoji list to array from string
* Update comment
* Remove spaces
Co-authored-by: ThibG <thib@sitedethib.com>
4 years ago
ThibG
9c7220aa3a
Fix TL sometimes jumping when closing modals ( #14019 )
...
Fixes #14018
4 years ago
Thibaut Girka
619e308b2b
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
ceac31f04b
Fix WebUI crash when processing accounts before page is loaded ( #14015 )
4 years ago
Thibaut Girka
86a8a599c2
[Glitch] Fix WebUI crash when loading account data before page is loaded
4 years ago
ThibG
f6ce71e81c
[Glitch] Add hotkey for toggling content warning composer field
...
Port 56d1dafdc4
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
b709aaba5b
Merge branch 'master' into glitch-soc/merge-upstream
4 years ago
ThibG
a203f596f3
[Glitch] Improve rendering of emoji which do not contrast with background
...
Port f55fe1a5ee
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Ben Lubar
a8ef7570a1
[Glitch] FIX: filters ignore media descriptions
...
Port da59204700
to glitch-soc
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
4eca2093d9
[Glitch] Hide sensitive preview cards with blurhash
...
Port eda9bb35f1
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Yamagishi Kazutoshi
6112ad677d
[Glitch] Fix ref attr for react-textarea-autozsize
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
Thibaut Girka
83dc54c487
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/activitypub/collections_controller.rb`:
Conflict due to glitch-soc having to take care of local-only
pinned toots in that controller.
Took upstream's changes and restored the local-only special
handling.
- `app/controllers/auth/sessions_controller.rb`:
Minor conflicts due to the theming system, applied upstream
changes, adapted the following two files for glitch-soc's
theming system:
- `app/controllers/concerns/sign_in_token_authentication_concern.rb`
- `app/controllers/concerns/two_factor_authentication_concern.rb`
- `app/services/backup_service.rb`:
Minor conflict due to glitch-soc having to handle local-only
toots specially. Applied upstream changes and restored
the local-only special handling.
- `app/views/admin/custom_emojis/index.html.haml`:
Minor conflict due to the theming system.
- `package.json`:
Upstream dependency updated, too close to a glitch-soc-only
dependency in the file.
- `yarn.lock`:
Upstream dependency updated, too close to a glitch-soc-only
dependency in the file.
4 years ago
ThibG
56d1dafdc4
Add hotkey for toggling content warning composer field ( #13987 )
4 years ago
ThibG
a7400a4f97
Make domain block/silence/reject-media code more robust ( #13424 )
...
* Split media cleanup from reject-media domain blocks to its own service
* Slightly improve ClearDomainMediaService error handling
* Lower DomainClearMediaWorker to lowest-priority queue
* Do not catch ActiveRecord::RecordNotFound in domain block workers
* Fix DomainBlockWorker spec labels
* Add some specs
* Change domain blocks to immediately mark accounts as suspended
Rather than doing so sequentially, account after account, while cleaning
their data. This doesn't change much about the time the block takes to
complete, but it immediately prevents interaction with the blocked domain,
while up to now, it would only be guaranteed when the process ends.
4 years ago
Bei Li
0f43ab4830
Update “status” to “toot” for en.json ( #13877 )
4 years ago
ThibG
f55fe1a5ee
Improve rendering of emoji which do not contrast with background ( #13772 )
...
* Refactor list of emoji requiring added outlines so that it can be theme-specific
* Split inaccessible emoji to emoji requiring an outline and ones that can be inverted
* Drop the “silouhettes” from black emoji as they seem to have changed color
* Add inaccessible emojis list for the light theme
* Use bordered emoji variant instead of unreliable CSS
4 years ago
Mélanie Chauvel
a617a8394b
Improve wording and add titles on moderated servers section in /about/more ( #13930 )
4 years ago
Takeshi Umeda
8054496ea7
Fix performance of follow import ( #13836 )
4 years ago
Eugen Rochko
2dbf6bc5ad
Add e-mail-based sign in challenge for users with disabled 2FA ( #14013 )
4 years ago
Takeshi Umeda
654c13ecfb
Add limit parameter to rss ( #13743 )
4 years ago
Takeshi Umeda
3343de96a0
Add visibility parameter in share page ( #13023 )
...
* Add visibility parameter in share page
* Restrict to default privacy
4 years ago
Ben Lubar
da59204700
FIX: filters ignore media descriptions ( #13837 )
...
* FIX: filters ignore media descriptions
* remove parentheses to make codeclimate happy
* combine the text and run the regular expression only once.
https://github.com/tootsuite/mastodon/pull/13837#discussion_r431752581
* Fix use of “filter” instead of “compact”, fix coding style issues
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
4 years ago
ThibG
eda9bb35f1
Hide sensitive preview cards with blurhash ( #13985 )
...
* Use preview card blurhash in WebUI
* Handle sensitive preview cards
5 years ago
ThibG
36f31b5cad
Add blurhash to preview cards ( #13984 )
...
Fixes #13001
5 years ago
ThibG
8b552d6f0c
Fix unpermitted operations on custom emojis leading to cryptic errors ( #13951 )
...
* Display appropriate error when performing unpermitted operation on custom emoji
Fixes #13897
* Remove links to custom emoji actions not performable by moderators
5 years ago
ThibG
e67a55ee49
Fix serialization of replies when some of them are URIs ( #13957 )
...
* Fix serialization of replies when some of them are URIs
Fixes #13956
* Add test
5 years ago
Eugen Rochko
9de5c70980
Fix wrong route helper in encrypted messages controller ( #13952 )
...
And add `created_at` to encrypted message serializer
5 years ago
Mélanie Chauvel
8579befd58
Put “Add new domain block” button on /admin/instances in header ( #13934 )
5 years ago
ThibG
8d57f6c4b4
Fix account redirect confirmation message talking about moved followers ( #13950 )
...
Fixes #13949
5 years ago
Takeshi Umeda
fe20381455
Fix activity not being signed ( #13948 )
5 years ago
Eugen Rochko
b864e78db8
Add E2EE API ( #13820 )
5 years ago
Yamagishi Kazutoshi
196bdd3dd7
Fix ref attr for react-textarea-autozsize ( #13936 )
5 years ago
Christopher Choi
dba59712ca
[Glitch] Adjust flash alert contrast for better readability
...
Port 2b1a6e7597
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
5 years ago
Brian C. Lindner
f8980d714a
[Glitch] Allow Ctrl-click to keep EmojiPicker window open
...
Port f8f195b8c2
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
5 years ago
Thibaut Girka
61f1d4dbbf
Merge branch 'master' into glitch-soc/merge-upstream
5 years ago
ariasuni
dfc9dd7c99
Improve appearance of notification cleaning UI
...
- Use smaller font-size for consistency with the rest of the UI
- Make better use of the horizontal space when available
5 years ago
ThibG
4255757678
Fix admin page crashing when trying to block an invalid domain name ( #13884 )
...
* Fix admin page crashing when trying to block an invalid domain name
Fixes #13880
* Fix trailing and leading spaces not being properly stripped for domain blocks
5 years ago
ThibG
0c7a21a38c
Fix unsent toot confirmation dialog not popping up in single column ( #13888 )
5 years ago
Christopher Choi
2b1a6e7597
Adjust flash alert contrast for better readability ( #13892 )
5 years ago
Brian C. Lindner
f8f195b8c2
Allow Ctrl-click to keep EmojiPicker window open ( #13896 )
5 years ago