about summary refs log tree commit diff
path: root/app/javascript/mastodon
AgeCommit message (Collapse)Author
2020-06-24Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
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.
2020-06-24Fix audio/video/images/cards not reacting to window resizes in web UI (#14130)Eugen Rochko
* 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>
2020-06-23never filter own posts from timeline (#14128)ThibG
Signed-off-by: Thibaut Girka <thib@sitedethib.com> Co-authored-by: ash lea <example@thisismyactual.email>
2020-06-23Change volume control and download buttons in web UI (#14122)Eugen Rochko
* 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
2020-06-22Fix audio player not working when media files are hosted on a different ↵ThibG
domain (#14118)
2020-06-21Change design of audio players in web UI (#14095)Eugen Rochko
2020-06-20Fix modifier key to keep the EmojiPicker on macOS (#14096)Takeshi Umeda
2020-06-17Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: - `Gemfile.lock`: not a real conflict, upstream update too close to a glitch-soc-specific dependency
2020-06-15Fix initial audio volume not corresponding to what's displayed (#14057)ThibG
2020-06-14Add hints about incomplete remote content to web UI (#14031)Eugen Rochko
2020-06-10Fixed emoji detection problem to append border (#14020)fuyu
* 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>
2020-06-10Fix TL sometimes jumping when closing modals (#14019)ThibG
Fixes #14018
2020-06-10Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-06-09Fix WebUI crash when processing accounts before page is loaded (#14015)ThibG
2020-06-09Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-06-09Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
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.
2020-06-09Add hotkey for toggling content warning composer field (#13987)ThibG
2020-06-09Update “status” to “toot” for en.json (#13877)Bei Li
2020-06-09Improve rendering of emoji which do not contrast with background (#13772)ThibG
* 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
2020-06-09FIX: filters ignore media descriptions (#13837)Ben Lubar
* 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>
2020-06-06Hide sensitive preview cards with blurhash (#13985)ThibG
* Use preview card blurhash in WebUI * Handle sensitive preview cards
2020-06-02Fix ref attr for react-textarea-autozsize (#13936)Yamagishi Kazutoshi
2020-06-01Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-05-31Fix unsent toot confirmation dialog not popping up in single column (#13888)ThibG
2020-05-31Allow Ctrl-click to keep EmojiPicker window open (#13896)Brian C. Lindner
2020-05-29Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-05-29Fix timeline markers in Firefox (regression from #13887) (#13889)ThibG
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.
2020-05-29Fix timeline markers not working on Chrome (#13887)ThibG
* 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
2020-05-28Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-05-25Change wording from “Hide media” to “Hide image/images” in Web UI ↵Mélanie Chauvel
(#13834)
2020-05-23Fix local streaming of hashtag timelines (#13827)Takeshi Umeda
2020-05-14Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-05-13New Crowdin translations (#13398)Eugen Rochko
* 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
2020-05-13Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-05-13Change “hide/show boosts from …” menu to be hidden when the account is ↵ThibG
muted (#13748) Otherwise, it may mislead users into believing this setting is an exception to the muting behavior. Fixes #13744
2020-05-12Fix first poll option not being focused when adding a poll (#13740)ThibG
Fixes #13698
2020-05-10Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: - `Gemfile.lock`: Not a real conflict, just a glitch-soc-only dependency too close to a dependency that got updated upstream. Updated as well. - `app/models/status.rb`: Not a real conflict, just a change too close to glitch-soc-changed code for optionally showing boosts in public timelines. Applied upstream changes. - `app/views/layouts/application.html.haml`: Upstream a new, static CSS file, conflict due to glitch-soc's theming system, include the file regardless of the theme. - `config/initializers/content_security_policy.rb`: Upstream dropped 'unsafe-inline' from the 'style-src' directive, but both files are very different. Removed 'unsafe-inline' as well.
2020-05-10Add remote only to public timeline (#13504)Takeshi Umeda
* Add remote only to public timeline * Fix code style
2020-05-08Fix failing jest test (#13681)Eugen Rochko
2020-05-03Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: - `app/controllers/statuses_controller.rb`: Upstream disabled the embed controller for reblogs. Not a real conflict, but glitch-soc has an extra line to deal with its theming system. Ported upstream changes. - `app/javascript/packs/public.js`: Upstream made changes to get rid of most inline CSS, this changes javascript for public pages, which in glitch are split between different files. Ported those changes. - `app/models/status.rb`: Upstream changed the block check in `Status#permitted_for` to include domain-block checks. Not a real conflict with glitch-soc, but our scope is slightly different, as our scope for unauthenticated access do not include instance-local toots. Ported upstream changes. - `app/serializers/rest/instance_serializer.rb`: Not a real conflict, upstream added a new field to the instance serializer, the conflict is one line above since we added more of that. Ported upstream changes. - `app/views/settings/profiles/show.html.haml`: Upstream got rid of most inline CSS and moved hidden elements to data attributes in the process, in fields were we have different values. Ported upstream changes while keeping our glitch-specific values. - `app/views/statuses/_simple_status.html.haml`: Upstream got rid of inline CSS on an HAML line we treat differently, stripping empty text nodes. Ported upstream changes to the style attribute, keeping the empty text node stripping behavior.
2020-04-28Fix page incorrectly scrolling when bringing up dropdown menus (#13574)ThibG
Fixes #13573 For some reason (I suspect this may be related to focusing the item before it got drown by the browser), Firefox scrolls to top when bringing up dropdown menus with pre-selected items. This commit uses the “preventScroll” option as, due to the placement behavior, the menu should be visible anyway and not trigger scrolling.
2020-04-28Refactor/cleanup TIMELINE_DELETE-related code (#13175)ThibG
2020-04-25Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-04-25Fix uninformative error message when uploading unsupported image files (#13540)ThibG
Attempting to upload image files that the browser is unable to load results in “Oops! An unexpected error occurred.” This commit changes the error handling so that an unprocessable image results in the file being sent anyway, which might cover a few corner cases, and provide a slightly better error message.
2020-04-25Fix expanded video player issues (#13541)ThibG
Fixes #13536 - Expanding a paused video doesn't autoplay anymore - Default volume level for the expanded video inherited from the original video Position/playing state/volume are carried over from the original video player to the modal, but they're not reported back to the modal as it would require deeper changes.
2020-04-21Fix and refactor keyboard navigation in dropdown menus (#13528)ThibG
Fixes #13527 - Fixes caught keyboard events being needlessly propagated - Let up/down arrows wrap around like the tab key does - Refactor common code
2020-04-20Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-04-19Update Twemoji to 12.1.5 (#13021)D Anzorge
* Update Twemoji to 12.1.5 SVGs from Twemoji repo https://github.com/twitter/twemoji * Update emoji_map.json to Unicode 12
2020-04-18Add local only to hashtag timeline (#13502)Takeshi Umeda
2020-04-18Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka