about summary refs log tree commit diff
path: root/app
AgeCommit message (Collapse)Author
2020-01-08Allow blocking TLDs, and fix TLD blocks not being editable (#12805)ThibG
Fixes #12795 It was already possible to create domain blocks for TLDs, but those weren't enforced, nor editable. This commit changes it so that they are enforced and editable.
2020-01-07Make prepending “re: ” to CWs on reply optionalThibaut Girka
2020-01-07[Glitch] Fix reuse of detailed status componentsThibG
Port 12a9813a0cc269d7b7c72095e279f70ddb7bec6e to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-01-07Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2020-01-07Little improvements to filters settings page (#12793)Sasha Sorokin
When you have many filters, it may be hard for you to reach the button to create yet another one. This commit moves creation button to the heading, leaving the page just for the list. On the other hand, when there are no filters, page looks kind of strange with the empty table. So text stating obvious fact that user has no filters was added in this commit too. Closes #11020 Closes #12790
2020-01-06Fix reuse of detailed status components (#12792)ThibG
Fixes #12770
2020-01-04[Glitch] Fix shortNumberFormat to within 3 chars without unitsTakeshi Umeda
Port 0e8c0287d01d270238aeb7f25c6337b2bcb8afba to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-01-04Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: - `app/controllers/application_controller.rb`: Conflict due to theming system. - `app/controllers/oauth/authorizations_controller.rb`: Conflict due to theming system.
2020-01-04Fix base64-encoded file uploads not being possible (#12748)Eugen Rochko
Fix #3804, Fix #5776
2020-01-03Fix missing authentication call in filters controller (#12746)Eugen Rochko
2020-01-03Fix uncaught unknown format errors in host meta controller (#12747)Eugen Rochko
2020-01-03Fix URL search not returning private toots user has access to (#12742)ThibG
2020-01-03Fix cache digesting log noise on status embeds (#12750)Eugen Rochko
2020-01-02Fix 12661 (#12744)Matt Panaro
* Revert "persist last-intersected status update and restore when ScrollableList is restored" This reverts commit 07e26142ef6a8e74bd2ac5e9b461a5a1699bd4c8. accidentally merged spurious code in https://github.com/tootsuite/mastodon/pull/12661. https://github.com/tootsuite/mastodon/pull/12735 removes the slowdown that this code was trying to solve; and other functionality successfully restores the view state of the list * Revert "cache currently-viewing status id to avoid calling redux with identical value" This reverts commit c93df2159fbd3888a5c48d8a8b8ae61dbbc54b89. accidentally merged spurious code in https://github.com/tootsuite/mastodon/pull/12661. https://github.com/tootsuite/mastodon/pull/12735 removes the slowdown that this code was trying to solve; and other functionality successfully restores the view state of the list
2020-01-02Fix RefollowWorker not keeping show_reblogs setting (#12707)ThibG
* Fix RefollowWorker not keeping show_reblogs setting * Fix RefollowWorker
2020-01-02Fix uncaught query param encoding errors (#12741)Eugen Rochko
2019-12-31Add translation project promotion link (#12736)Sasha Sorokin
This commit adds promotional notice on appearance settings about translation project if any other locale than English is used. It allows users to learn and contribute translations to Mastodon. Step ahead, in this commit one unusual string is added - link to a guide. By default it refers to Crowdin project itself, but if any of Mastodon localization teams established their own guide, they can refer it. Or, if Crowdin supports localized domain for language, it can also be put there (e.g. https://fr.crowdin.com/...).
2019-12-31refactor IntersectionObserver to observe viewport in single-column mode (#12735)Matt Panaro
2019-12-31Hide blocked users from more places (#12733)ThibG
* Hide blocked, muted, and blocked-by users from toot favourite lists * Hide blocked, muted, and blocked-by users from toot reblog lists * Hide blocked, muted, and blocked-by users from followers/following (API) * Fix tests * Hide blocked, muted, and blocked-by users from followers/following on public pages
2019-12-31Fix error when fetching followers/following from REST API when user has ↵Eugen Rochko
network hidden (#12716) Fix #12510
2019-12-30Fix IDN mentions not being processed, IDN domains not being rendered (#12715)Eugen Rochko
This changes the REST API to return unicode domains in the `acct` attribute instead of punycode, and to render unicode instead of punycode on public HTML pages as well. Fix #7812, fix #12246
2019-12-30Remove unused AccountRelationshipsPresenter call in public pages (#12734)ThibG
Those were used to show a “follow” or “unfollow” button on account grid on public pages, but that got removed a while ago.
2019-12-30Fix error when searching for empty phrase (#12711)Eugen Rochko
Fix #12619
2019-12-30Fix settings pages being cacheable by the browser (#12714)Eugen Rochko
Fix #12255
2019-12-30Fix HTML error pages being returned when JSON is expected (#12713)Eugen Rochko
Fix #12509 See also #12214
2019-12-30Fix undefined error regression in status component in web UI (#12712)Eugen Rochko
Regression from #12661
2019-12-30Fix backups stopping due to read timeouts (#12281)chr v1.x
* Make BackupService resilient to read timeouts If an attachment read times out, assume that the resources is inaccessible and continue the backup without it. This fixes #12280. * Both errors on one line
2019-12-29Fix shortNumberFormat to within 3 chars without units (#12706)Takeshi Umeda
2019-12-29Fix batch actions on non-pending tags in admin interface (#12537)ThibG
- Allow batch actions on unreviewed tags - Hide checkboxes when batch actions aren't available
2019-12-29Summary: fix slowness due to layout thrashing when reloading a large … ↵Matt Panaro
(#12661) * Summary: fix slowness due to layout thrashing when reloading a large set of status updates in order to limit the maximum size of a status in a list view (e.g. the home timeline), so as to avoid having to scroll all the way through an abnormally large status update (see https://github.com/tootsuite/mastodon/pull/8205), the following steps are taken: •the element containing the status is rendered in the browser •its height is calculated, to determine if it exceeds the maximum height threshold. Unfortunately for performance, these steps are carried out in the componentDidMount(/Update) method, which also performs style modifications on the element. The combination of height request and style modification during javascript evaluation in the browser leads to layout-thrashing, where the elements are repeatedly re-laid-out (see https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing & https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Performance_best_practices_for_Firefox_fe_engineers). The solution implemented here is to memoize the collapsed state in Redux the first time the status is seen (e.g. when fetched as part of a small batch, to populate the home timeline) , so that on subsequent re-renders, the value can be queried, rather than recalculated. This strategy is derived from https://github.com/tootsuite/mastodon/pull/4439 & https://github.com/tootsuite/mastodon/pull/4909, and should resolve https://github.com/tootsuite/mastodon/issues/12455. Andrew Lin (https://github.com/onethreeseven) is thanked for his assistance in root cause analysis and solution brainstorming * remove getSnapshotBeforeUpdate from status * remove componentWillUnmount from status * persist last-intersected status update and restore when ScrollableList is restored e.g. when navigating from home-timeline to a status conversational thread and <Back again * cache currently-viewing status id to avoid calling redux with identical value * refactor collapse toggle to pass explicit boolean
2019-12-19[Glitch] Fix manual scrolling issue on Firefox/WindowsThibG
Port dc0750abc331749a92ffa96fed9fe048acdea3b1 to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2019-12-19Fix issue because of theming systemThibaut Girka
2019-12-19[Glitch] Improve report page structureSasha Sorokin
Port 34aa5c7cb2090bf9d995eafdfbf5f9bd01336491 to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2019-12-19Merge branch 'master' into glitch-soc/masterThibaut Girka
Conflicts: - `config/locales/en.yml` No real conflict, upstream added a translatable string “too close” to one specific to glitch-soc - `lib/mastodon/statuses_cli.rb` Fixes made upstream, while changed in glitch-soc to keep bookmarked statuses - `package.json` No real conflict, additional dependency in glitch-soc
2019-12-19Use different strings on exports page (#12569)Sasha Sorokin
Currently the page re-uses strings from other contexts which doesn't fit very well - strings incorrectly lowercase-d and pluralized, when they don't need to be, because it's a table. This commit changes page to re-use accounts.posts_tab_heading for toots, and admin.accounts for "Following" and "Follows". This all should look more aesthetically pleasing.
2019-12-19Fix manual scrolling issue on Firefox/Windows (#12648)ThibG
Fixes #12607 `will-change: transform` apparently makes manual scrolling impossible on Firefox/Windows. While this should probably be considered a Firefox bug, `will-change: transform` seem like a very aggressive performance hint that may possibly make the browser consume more resources than needed, especially in multiple-column mode. This was originally added to improve scrolling performances on mobile, but I think this isn't necessary anymore, because of the two following reasons: - `contain: paint` (which is implied by `contain: strict`, which we apply whenever the browser supports grids) should have similar effects - in single-column mode, the scrolling container is the root element, which I believe is optimized in at least Chromium Keep in mind that I have not been able to make in-depth benchmarks, and especially not been able to try on mobile, so performances should probably be investigated further…
2019-12-19fix multiple space (#12655)Marcin Mikołajczak
2019-12-18Fix custom emoji category creation silently erroring out on duplicate ↵ThibG
category (#12647) Instead, just re-use the existing category if any. Fixes #12608
2019-12-18Fix link crawler not specifying accepted content-type (#12646)ThibG
The link crawler expects HTML documents, so set the `Accept` header accordingly. Fixes #12618
2019-12-18Add signature to exported status (#12649)Takeshi Umeda
2019-12-18Fix an error when ActivityPub::FetchRemoteStatusService url is called with ↵Takeshi Umeda
nil (#12652)
2019-12-17Fix various issues caused by wrong `unread` key being updatedThibaut Girka
2019-12-17Clean up OStatus-related codepaths (#12173)ThibG
* Remove “protocol” argument and return value, as only ActivityPub is supported * Remove FetchRemoteAccountService, only use ActivityPub::FetchRemoteAccountService * Fix tests
2019-12-17Fixes featured hashtag setting page erroring out instead of rejecting ↵ThibG
invalid tags (#12436) * Revert "Fix ignoring whole status because of one invalid hashtag (#11621)" This reverts commit dff46b260b2f7d765d254c84a4b89105c7de5e97. * Fix statuses being rejected because of invalid hashtag names * Add spec for invalid hashtag names in statuses * Add test for featured tags controller
2019-12-17Increase max backup size (#12602)scd31
* Increased max backup size * partially reverted schema.rb
2019-12-16Admin setting to disable default follows (#12566)Alice Gaudon
2019-12-16Add Event activity-type support (#12637)Thomas Citharel
This adds support for Event AP type in Mastodon. Events are converted into toots by taking their title (AS name) and their URL (AP ID). Event picture is also brought in if available. Testable by fetching event content from https://test.mobilizon.org Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16Improve report page structure (#12615)Sasha Sorokin
* Move resolved button to the heading This is one of the commits on improving overall reports page structure. It changes where resolved button is located, moving it to the heading, right next to the "Report #n" header, so-called "hot-place" to look at. To accomplish this we have to declare one more content variable, change admin dashboard template to respect it and CSS files for minor styling, so buttons are inlined and centrally aligned according to the heading. * Move actions buttons below the report table I believe that actions to react on report should not be located at the top of the page, instead they should be either after the table or reporter's comment. This is just a logical sign that you should not react to the report without reading all the details first.
2019-12-16Fix tooltip messages of multiple poll switcher are reversed (#12616)Acid Chicken (硫酸鶏)
2019-12-12Avoid using pluralize on moderation pages (#12589)Sasha Sorokin
Pluralize function from Rails framework does not work with other languages than English, moreover it does not even work properly with English [1]. Not that the latest applies to this context, it's just a sign that we best to avoid this function, especially when there are more reliable ways. This commit changes how reports pages generated in order to avoid usage of pluralize function, replacing it with default translation function, called with given counter. On top of that, we have to make strings pluralizable, so have to change locale files. [1]: https://medium.com/@anna7/b3927de2ca8e#6a60