Commit Graph

8388 Commits

Author SHA1 Message Date
8c8bf0289f Fix not being able to enable status notifications in Web Push API (#14822) 2020-09-21 17:48:55 +02:00
787d5d7289 Fix minor bugs 2020-09-19 15:01:46 +02:00
312c936d51 Minor refactoring and fixups 2020-09-19 14:15:28 +02:00
85b9086e6b Filter out mounted lists from “getting started” column 2020-09-18 20:07:25 +02:00
974b1b79ce 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
2020-09-18 17:26:45 +02:00
a681980307 Submit timeline markers closer to the moment they change 2020-09-17 15:22:56 +02:00
60eebc6cc4 Fix crashes when connection drops 2020-09-17 15:22:56 +02:00
f1c0cf9806 Add button to manually mark all notifications as read 2020-09-17 15:22:56 +02:00
94c290d7d2 Only update read marker when giving focus/mounting column 2020-09-17 15:22:56 +02:00
145ed37978 Refactor and change logic to only update marker if we reached the last
read notification.
2020-09-17 15:22:56 +02:00
66e9a77e36 Display unread marker for notifications 2020-09-17 15:22:56 +02:00
ae698469d0 Clean up leftover from DM conversation view redesign 2020-09-17 15:22:56 +02:00
eaea2311aa Fix home TL marker code mishandling gaps (#14809) 2020-09-16 20:17:40 +02:00
aab867b0e8 Fix notification filter bar incorrectly filtering gaps (#14808) 2020-09-16 20:17:16 +02:00
5d3c8baa9a Fix validates :sign_count of WebauthnCredential (#14806) 2020-09-16 20:16:46 +02:00
ed099d8bdc Change account suspensions to be reversible by default (#14726) 2020-09-15 14:37:58 +02:00
bbcbf12215 Fix unreadable placeholder text color in high contrast theme in web UI (#14803)
Fix #14717
2020-09-15 09:24:24 +02:00
b67caf9be4 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
2020-09-14 15:05:22 +02:00
cd4ec7cd74 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
2020-09-14 13:04:29 +02:00
42c4322ce7 Fix reported statuses not being included in warning e-mail (#14778) 2020-09-13 12:52:17 +02:00
fa0c71f0d9 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
2020-09-12 17:09:49 +02:00
4e4b3a0c8e Refactor settings controllers (#14767)
- Disallow suspended accounts from revoking sessions and apps
- Allow suspended accounts to access exports
2020-09-11 20:56:35 +02:00
e6b272e5c9 Change REST API to return empty data for suspended accounts (#14765) 2020-09-11 15:16:29 +02:00
91eecd1b3c Add border around 🕺 emoji (#14769)
Fixes #14768
2020-09-10 19:08:03 +02:00
afa753a890 [Glitch] Set z-index of dropdown to 9999.
Port 678f5ed296 to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-09-10 17:44:38 +02:00
fcb9350ff8 Change web UI to show empty profile for suspended accounts (#14766) 2020-09-10 00:07:19 +02:00
9748f074a3 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.
2020-09-08 16:26:47 +02:00
65760f59df Refactor feed manager (#14761) 2020-09-08 03:41:16 +02:00
517af45e32 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
2020-09-07 18:00:15 +02:00
e79d719e92 Changed tag most_used to recently_used (#14760) 2020-09-07 17:47:41 +02:00
e8bc187845 Refactor how public and tag timelines are queried (#14728) 2020-09-07 11:02:04 +02:00
e5f934ddf0 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.
2020-09-07 09:21:38 +02:00
a6121a159c 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
2020-09-04 20:22:40 +02:00
272aa4a109 Fix direct visibility style for light theme (#14727) 2020-09-04 08:49:56 +02:00
abee40b232 Add outbox attribute to instance actor (#14721)
It's not useful for now, but it's required by ActivityPub
2020-09-02 18:42:50 +02:00
33ad850c98 Added account featured tags API (#11817) 2020-09-02 02:13:10 +02:00
17340365bb Add featured hashtags as an ActivityPub collection (#11595) 2020-09-02 02:11:12 +02:00
787a629b8f [Glitch] Update Tesseract.js
Port 5fc5a9f9f1 to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-09-01 17:10:20 +02:00
a2d66a90e6 [Glitch] Add border around 🐞 emoji
Port JS change from f0b6ddd979 to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-09-01 17:08:09 +02:00
3fefb7909b 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.
2020-09-01 17:02:18 +02:00
d95dd3883e Change radio button design to be consistent with that of the directory explorer
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-09-01 14:09:35 +02:00
70e64206be Capitalize replies_policy strings
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-09-01 14:09:35 +02:00
79305428a7 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
2020-09-01 13:31:28 +02:00
1c308af84c Change own direct-visibility statuses to be in the home feed again (#14711)
And remove highlighting in web UI

Full circle from #8940
2020-09-01 13:30:42 +02:00
e02f375d22 Fix threaded mode
Fixes #1414
2020-09-01 09:37:17 +02:00
8972e5f7f6 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>
2020-09-01 03:04:00 +02:00
5fc5a9f9f1 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
2020-09-01 00:26:10 +02:00
38182fceb3 Fix crash when opening detailed view of a status you boosted 2020-08-31 23:48:16 +02:00
f0b6ddd979 Add border around 🐞 emoji (#14712) 2020-08-31 23:30:27 +02:00
7febf19296 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.
2020-08-31 18:11:37 +02:00