ThibG
db319c0fdc
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
5 years ago
Mélanie Chauvel
ac3c83ef6f
Improve wording and add titles on moderated servers section in /about/more ( #13930 )
5 years ago
Takeshi Umeda
d890abfcab
Fix performance of follow import ( #13836 )
5 years ago
Eugen Rochko
72a7cfaa39
Add e-mail-based sign in challenge for users with disabled 2FA ( #14013 )
5 years ago
Takeshi Umeda
8b6d97fb7c
Add limit parameter to rss ( #13743 )
5 years ago
Takeshi Umeda
13f065da05
Add visibility parameter in share page ( #13023 )
...
* Add visibility parameter in share page
* Restrict to default privacy
5 years ago
Ben Lubar
c66403b257
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>
5 years ago
ThibG
8e96510b25
Hide sensitive preview cards with blurhash ( #13985 )
...
* Use preview card blurhash in WebUI
* Handle sensitive preview cards
5 years ago
ThibG
346d9b3d2e
Add blurhash to preview cards ( #13984 )
...
Fixes #13001
5 years ago
ThibG
bf6745b9c3
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
aed3a436a2
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
f669b8bcce
Fix wrong route helper in encrypted messages controller ( #13952 )
...
And add `created_at` to encrypted message serializer
5 years ago
Mélanie Chauvel
77619b1654
Put “Add new domain block” button on /admin/instances in header ( #13934 )
5 years ago
ThibG
bf94934623
Fix account redirect confirmation message talking about moved followers ( #13950 )
...
Fixes #13949
5 years ago
Takeshi Umeda
643065799b
Fix activity not being signed ( #13948 )
5 years ago
Eugen Rochko
5d8398c8b8
Add E2EE API ( #13820 )
5 years ago
Yamagishi Kazutoshi
f96a891853
Fix ref attr for react-textarea-autozsize ( #13936 )
5 years ago
ThibG
51ff679b9d
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
eeddb1a624
Fix unsent toot confirmation dialog not popping up in single column ( #13888 )
5 years ago
Christopher Choi
b4a8400afd
Adjust flash alert contrast for better readability ( #13892 )
5 years ago
Brian C. Lindner
64154c5161
Allow Ctrl-click to keep EmojiPicker window open ( #13896 )
5 years ago
ThibG
cc650bc023
Fix timeline markers in Firefox (regression from #13887 ) ( #13889 )
...
Unfortunately, Firefox does not support the `keepalive` parameter
I used in the previous PR. However it supports the `navigator.sendBeacon`
API that allows that kind of things, but does not allow setting headers.
Therefore, this PR replaces it with a `sendBeacon` call that passes the
bearer token in the POST data.
Doorkeeper will then handle the auth token out of the box, as long as
it is passed as form data. Passing the query as JSON does not work.
5 years ago
ThibG
5aff2a6957
Fix timeline markers not working on Chrome ( #13887 )
...
* Periodically save timeline markers
This saves timeline markers immediately upon message arrival, but not more
than once every 5 minutes.
This does not change how the markers are saved on closing the window,
except that it avoids submitting them if there is no need for it.
* Use the Fetch API when possible instead of XHR on window unload
5 years ago
Mélanie Chauvel
40d81620b0
Change wording from “Hide media” to “Hide image/images” in Web UI ( #13834 )
5 years ago
Takeshi Umeda
8e056bd82e
Fix csv upload ( #13835 )
5 years ago
Takeshi Umeda
e6706d171a
Fix searchable status without explicitly mentioning it ( #13829 )
5 years ago
Takeshi Umeda
3a1a21ad57
Fix local streaming of hashtag timelines ( #13827 )
5 years ago
ThibG
a319c1e60f
Add support for `summary` field for media description ( #13763 )
5 years ago
ThibG
27ea7c13a5
Fix hashtag search performing account search as well ( #13758 )
5 years ago
ThibG
71fce71c94
Fix webfinger returning wrong status code on malformed or missing param ( #13759 )
...
Fixes #13757
5 years ago
Eugen Rochko
c9dcc2d39f
Fix regression in sparkline style in web UI ( #13753 )
5 years ago
Eugen Rochko
af53cfd19e
New Crowdin translations ( #13398 )
...
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations activerecord.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations devise.en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations activerecord.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations activerecord.en.yml (Persian)
[ci skip]
* New translations devise.en.yml (Indonesian)
[ci skip]
* New translations activerecord.en.yml (Indonesian)
[ci skip]
* New translations devise.en.yml (Chinese Traditional)
[ci skip]
* New translations activerecord.en.yml (Chinese Traditional)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations activerecord.en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Turkish)
[ci skip]
* New translations activerecord.en.yml (Turkish)
[ci skip]
* New translations devise.en.yml (Swedish)
[ci skip]
* New translations activerecord.en.yml (Swedish)
[ci skip]
* New translations devise.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations activerecord.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations activerecord.en.yml (Tamil)
[ci skip]
* New translations activerecord.en.yml (Spanish, Argentina)
[ci skip]
* New translations activerecord.en.yml (Slovenian)
[ci skip]
* New translations activerecord.en.yml (Corsican)
[ci skip]
* New translations devise.en.yml (Occitan)
[ci skip]
* New translations devise.en.yml (Esperanto)
[ci skip]
* New translations activerecord.en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations devise.en.yml (Welsh)
[ci skip]
* New translations activerecord.en.yml (Welsh)
[ci skip]
* New translations devise.en.yml (Spanish, Argentina)
[ci skip]
* New translations devise.en.yml (Estonian)
[ci skip]
* New translations activerecord.en.yml (Estonian)
[ci skip]
* New translations devise.en.yml (Kazakh)
[ci skip]
* New translations activerecord.en.yml (Kazakh)
[ci skip]
* New translations devise.en.yml (Thai)
[ci skip]
* New translations activerecord.en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Bengali)
[ci skip]
* New translations activerecord.en.yml (Bengali)
[ci skip]
* New translations devise.en.yml (Slovenian)
[ci skip]
* New translations activerecord.en.yml (Slovak)
[ci skip]
* New translations devise.en.yml (Czech)
[ci skip]
* New translations activerecord.en.yml (Greek)
[ci skip]
* New translations activerecord.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations devise.en.yml (Danish)
[ci skip]
* New translations activerecord.en.yml (Danish)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations activerecord.en.yml (Czech)
[ci skip]
* New translations activerecord.en.yml (Basque)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations activerecord.en.yml (Catalan)
[ci skip]
* New translations devise.en.yml (Arabic)
[ci skip]
* New translations activerecord.en.yml (Arabic)
[ci skip]
* New translations devise.en.yml (Spanish)
[ci skip]
* New translations activerecord.en.yml (Spanish)
[ci skip]
* New translations activerecord.en.yml (French)
[ci skip]
* New translations devise.en.yml (Greek)
[ci skip]
* New translations devise.en.yml (Basque)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations activerecord.en.yml (Dutch)
[ci skip]
* New translations activerecord.en.yml (Russian)
[ci skip]
* New translations activerecord.en.yml (Portuguese)
[ci skip]
* New translations devise.en.yml (Polish)
[ci skip]
* New translations activerecord.en.yml (Polish)
[ci skip]
* New translations devise.en.yml (Norwegian)
[ci skip]
* New translations activerecord.en.yml (Norwegian)
[ci skip]
* New translations devise.en.yml (Dutch)
[ci skip]
* New translations devise.en.yml (Korean)
[ci skip]
* New translations activerecord.en.yml (Finnish)
[ci skip]
* New translations activerecord.en.yml (Korean)
[ci skip]
* New translations devise.en.yml (Japanese)
[ci skip]
* New translations activerecord.en.yml (Japanese)
[ci skip]
* New translations devise.en.yml (Italian)
[ci skip]
* New translations activerecord.en.yml (Italian)
[ci skip]
* New translations devise.en.yml (Armenian)
[ci skip]
* New translations activerecord.en.yml (Armenian)
[ci skip]
* New translations devise.en.yml (Finnish)
[ci skip]
* New translations devise.en.yml (Corsican)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations devise.en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations devise.en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations simple_form.en.yml (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Sardinian)
[ci skip]
* New translations devise.en.yml (Sardinian)
[ci skip]
* New translations doorkeeper.en.yml (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Sardinian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[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 (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Hungarian)
[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 simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations devise.en.yml (Arabic)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
5 years ago
ThibG
92f85bea52
Change “hide/show boosts from …” menu to be hidden when the account is muted ( #13748 )
...
Otherwise, it may mislead users into believing this setting is an
exception to the muting behavior.
Fixes #13744
5 years ago
ThibG
48503384d0
Fix some account avatars on public pages having incorrect size ( #13692 )
...
* Fix some account avatars on public pages having incorrect size
* Remove outdated and overridden width and height attributes
* Remove more hardcoded width/height attributes
5 years ago
Takeshi Umeda
706972b4ba
Fix RedownloadMediaWorker ( #13741 )
5 years ago
ThibG
af6d356279
Fix first poll option not being focused when adding a poll ( #13740 )
...
Fixes #13698
5 years ago
Takeshi Umeda
5daae6dc61
Fix keybase config serializer ( #13742 )
5 years ago
dependabot-preview[bot]
78202e9138
Bump doorkeeper from 5.3.3 to 5.4.0 ( #13733 )
...
* Bump doorkeeper from 5.3.3 to 5.4.0
Bumps [doorkeeper](https://github.com/doorkeeper-gem/doorkeeper ) from 5.3.3 to 5.4.0.
- [Release notes](https://github.com/doorkeeper-gem/doorkeeper/releases )
- [Changelog](https://github.com/doorkeeper-gem/doorkeeper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/doorkeeper-gem/doorkeeper/compare/v5.3.3...v5.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Fix tests
* Fix use of Doorkeeper::AccessToken.find_or_create_for
* Fix tests?
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
5 years ago
Takeshi Umeda
d8bad8fbf6
Fix not publishing update of remote timeline ( #13745 )
...
* Fix not publishing update of remote timeline
* fix @ missing
* if/unless to if/else
5 years ago
ThibG
4bcef12bad
Fix sr locale being selected over sr-Latn ( #13693 )
...
* Fix sr locale being selected over sr-Latn
* Update tests
5 years ago
Eugen Rochko
4b766f9846
Refactor monkey-patching of Goldfinger ( #12561 )
5 years ago
taicv
4a2ea2e51b
Add `vi` to available locales ( #13542 )
...
* Enable selecting Vietnamese language in Admin Dashboard
* Update settings_helper.rb
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
5 years ago
Eugen Rochko
8be4c2ba21
Add ability to remove identity proofs from account ( #13682 )
...
Fix #12613
5 years ago
Takeshi Umeda
26b08a3c54
Add remote only to public timeline ( #13504 )
...
* Add remote only to public timeline
* Fix code style
5 years ago
Eugen Rochko
e9ecbca70d
Fix error within error when limiting backtrace to 3 lines ( #13120 )
...
Fix #13086 , close #13113
5 years ago
ThibG
45202f79ef
Remove confusing “You are already signed in.” flash message ( #13547 )
...
When attempting to access the log-in page while already logged in,
Devise's `require_no_authentication` kicks in and sets a flash
message “You are already signed in.”
In almost all cases, this also causes a redirect to /web, which
does not display or clear flash messages, thus leaving the message
to a potentially much later date, like for instance, accessing
/preferences several minutes after being redirected to /web.
5 years ago
ThibG
a4240fd027
Improve RSS entries for statuses ( #13592 )
...
* Improve RSS entries for statuses
- Render polls in both accounts and tags serializers
- Refactor RSS serializers
- Change title preview to include ellipsis when truncated
- Change title preview to show CW instead of toot text
- Add tests
* Remove title from OEmbed serialization
Twitter doesn't serialize title either, and tihs allows us to move the
title formatting code to the RSS serializers.
5 years ago
ThibG
e1629a7758
Remove 'unsafe-inline' from Content-Security-Policy style-src ( #13679 )
...
* Make sure wicg-inert doesn't rely on inline CSS
* Remove unsafe-inline from style-src
5 years ago
Eugen Rochko
0d62e09707
Fix failing jest test ( #13681 )
5 years ago
ThibG
f1e0fa80f6
Fix own following/followers not showing muted users ( #13614 )
...
Fixes #13612
5 years ago