Commit graph

4909 commits

Author SHA1 Message Date
ThibG
80e391afcd Improve focus handling with dropdown menus (#11511)
- Focus first item when activated via keyboard
- When the dropdown menu closes, give back the focus to
  the actual element which was focused prior to opening the menu
2019-08-09 21:34:54 +02:00
ThibG
c69f190af9 Fix image uploads being perfectly white when canvas read access is blocked (#11499)
Fixes #11496
2019-08-09 21:34:54 +02:00
ThibG
cec93c35d8 Improve keyboard navigation in privacy dropdown (#11492)
* Trap tab in privacy dropdown

* Give focus back to last focused element when privacy dropdown menu closes

* Actually give back focus to the element that had it before clicking the dropdown
2019-08-09 21:34:54 +02:00
ThibG
ad6fcb2d9c Improve dropdown menu keyboard navigation (#11491)
* Allow selecting menu items with the space bar in status dropdown menus

* Fix modals opened by keyboard navigation being immediately closed

* Fix menu items triggering modal actions

* Add Tab trapping inside dropdown menu

* Give focus back to last focused element when status dropdown menu closes
2019-08-09 21:34:54 +02:00
ThibG
d8cf2a0fb6 Fix privacy dropdown active state when dropdown is placed on top of it (#11495) 2019-08-09 21:34:54 +02:00
ThibG
21e3671e32 Trap tab in modals (#11493) 2019-08-09 21:34:54 +02:00
Jeong Arm
68da55e50c Fix timestamp on featured tag (#11477)
It resolves #11338
2019-08-09 21:34:53 +02:00
ThibG
3f7614f98a Disable list title validation button when list title is empty (#11475) 2019-08-09 21:34:53 +02:00
Jeong Arm
c1bc34da04 Prevent archiving when user set "noindex" (#11421) 2019-08-09 21:34:52 +02:00
Eugen Rochko
a0896ae4bf Remove timestamps from converted images to make them deterministic (#11408) 2019-08-09 21:34:25 +02:00
Eugen Rochko
ed27803822 Change account domain block to clear out notifications and follows (#11393) 2019-08-09 21:34:23 +02:00
Eugen Rochko
9bb23b8d19 Change locale detection to run once per session (#8657)
Fix #6462
2019-08-09 21:33:19 +02:00
ThibG
dead24a773 Disallow numeric-only hashtags (#11363)
* Add spec covering numeric-only hashtags

* Fix hashtag regex
2019-08-09 21:33:19 +02:00
koyu
d8b8c88c22 Added logout to dropdown menu (#11353)
* Added logout to dropdown menu

* Triggering build-and-test with empty commit as it seems it failed due to some internal failure

* Looks fine, ready to review

* Added changes from review

* method can be null without any problems

* Also target can be null
2019-08-09 21:33:18 +02:00
ThibG
ad0866804e Fix avatar animation on hover when not logged in (#11349) 2019-08-09 21:33:18 +02:00
ThibG
6c4a196b53 Fix sanitizing lists contents (#11354)
* Add test

* Fix code for sanitizing nested lists stripping all tags
2019-08-09 21:33:18 +02:00
Eugen Rochko
8c445c80b5 Fix only one middle dot being recognized in hashtags (#11345)
Fix #10934
2019-08-09 21:33:18 +02:00
Eugen Rochko
212848b66e Change language detection to include hashtags as words (#11341) 2019-08-09 21:33:18 +02:00
Eugen Rochko
227c561064 Change terms and privacy policy pages to always be accessible (#11334)
Fix #11328
2019-08-09 21:33:17 +02:00
han@highemelry
b21c630043 Change the retry limit in error of web push notification (#11292)
- Change the maximum count of retry for web push notification (Default -> 5).
   - In case of high load of subscribe server, the retries will be repeated many times.
   - Because the retries occupy the default queue, maximum retry count should be reduced.
2019-08-09 21:32:48 +02:00
Eugen Rochko
f2795699dd Change ActivityPub::DeliveryWorker to not retry HTTP 501 errors (#11233) 2019-08-09 21:32:40 +02:00
Eugen Rochko
d9a024840e Change domain block behaviour to prevent creation of accounts from suspended domains (#11219) 2019-08-09 21:32:40 +02:00
ThibG
c8bf30df92 Fix animate on hover in poll options without CW (#11404) 2019-08-06 21:53:23 +02:00
ThibG
7f9431c306 Play animated custom emoji on hover (#11348)
* Play animated custom emoji on hover in status

* Play animated custom emoji on hover in display names

* Play animated custom emoji on hover in bios/bio fields

* Add support for animation on hover on public pages emojis too

* Fix tests

* Code style cleanup
2019-08-06 21:53:21 +02:00
ThibG
af410c0706 Display custom emoji in bio field names (#11350)
Already displayed in public pages, but not WebUI
2019-08-06 21:52:25 +02:00
ThibG
16f348431b Only scroll to the compose form if it's not horizontally in the viewport (#11246)
Avoids jumping the scroll around vertically when giving it focus and
editing long toots.
2019-08-06 21:52:25 +02:00
ThibG
6abd849803 When deleting & redrafting a poll, fill in closest expires_in (#11203)
Use the smallest preset expires_in such that the new poll would
not expire before the old one.

In the typical case of a quick delete & redraft, this results in
using the same poll duration.

Fixes #10567
2019-08-06 21:52:25 +02:00
ThibG
99b27a8b4b When sending a toot, ensure a CW is only set if the CW field is visible (#11206)
In some occasions, such as the browser or a browser extension auto-filling
the existing but disabled/hidden CW field, a CW can be set without the user
knowing.
2019-08-06 21:52:25 +02:00
ThibG
39741fa2cd Scroll to compose form rather than reply indicator on focus (#11182) 2019-08-06 21:52:25 +02:00
ThibG
5b3d70ffa7 Display FTS warning based on actual search term, not the one being typed (#11202)
Follow-up to #11112
2019-08-06 21:52:00 +02:00
ThibG
011909262a Add message telling FTS is disabled when no toot can be found because of this (#11112)
* Add message telling FTS is disabled when no toot can be found because of this

Fixes #11082

* Remove info icon and reword message
2019-08-06 21:52:00 +02:00
Eugen Rochko
69680db8a2 Fix unnecessary SQL query performed on unauthenticated requests (#11179) 2019-08-06 21:52:00 +02:00
ThibG
6e28da2139 Apply filters to poll options (#11174)
* Apply filters to poll options in WebUI

Fixes #11128

* Apply filters to poll options server-side

* Add poll options to searchable text
2019-08-06 21:52:00 +02:00
Eugen Rochko
74982c71b0 Fix delete regression (#11450)
Regression from ff789a751a
2019-08-06 21:51:29 +02:00
ThibG
c83c87fbe2 Fix boosting & unboosting preventing a boost from appearing in the TL (#11405)
* Fix boosting & unboosting preventing a boost from appearing in the TL

* Add tests

* Avoids side effects when aggregate_reblogs isn't true
2019-08-06 21:51:29 +02:00
ThibG
363afe5e05 Memoize ancestorIds and descendantIds in detailed status view (#11234) 2019-08-06 21:51:02 +02:00
ThibG
d588173ab3 Optimize makeGetStatus (#11211)
* Optimize makeGetStatus

Because `ImmutableList.filter` always returns a new object and `createSelector`
memoizes based on object identity, the selector returned by `makeGetStatus`
would *always* execute.

To avoid that, we wrap `getFilters` into a new memoizer that memoizes based on
deep equality, thus returning the same object as long as the filters haven't
changed, allowing the memoization of `makeGetStatus` to work.

Furthermore, we memoize the compiled regexs instead of recomputing them each
time the selector is called.

* Fix memoized result being cleared too often

* Make notifications use memoized getFiltersRegex
2019-08-06 21:51:02 +02:00
Eugen Rochko
d1d3684fb5 Fix alerts booleans not being typecast correctly in push subscription (#11343)
* Fix `alerts` booleans not being typecast correctly in push subscription

Fix #10789

* Fix typo
2019-08-06 21:50:45 +02:00
ThibG
6a3876bdaa Fix some flash notices/alerts staying on unrelated pages (#11364) 2019-08-06 21:50:45 +02:00
Eugen Rochko
769bbd511f Fix statsd UDP sockets not being cleaned up in Sidekiq (#11230) 2019-08-06 21:50:45 +02:00
ThibG
5d79df0273 Fix expiration date of filters being set to “Never” when editing them (#11204)
When editing a custom filter, select the shortest preset duration that
still covers the remaining time of that filter.

Fixes #9506
2019-08-06 21:50:45 +02:00
Eugen Rochko
0367ddb62c Fix support for MP4 files that are actually M4V files (#11210)
Resolve #11187
2019-08-06 21:50:45 +02:00
ThibG
8904487324 Fix invites not being disabled upon account suspension (#11412)
* Disable invite links from disabled/suspended users

* Add has_many invites relationship to users

* Destroy unused invites when suspending an account
2019-08-06 21:50:06 +02:00
ThibG
6782922584 Fix BlockService trying to reject incorrect follow request (#11288)
Fixes #11148
2019-08-06 21:50:05 +02:00
ThibG
8066717558 Fix Status.remote scope matching *all* statuses (#11265) 2019-08-06 21:50:05 +02:00
ThibG
5a06f68f0e Fix BackupService crashing when an attachment is missing (#11241)
* Fix BackupService crashing when an attachment is missing

For various reasons such as admin error or out-of-sync media and
database backups, it might be possible for local attachments to be lost.

This commit allows the BackupService to continue its work even if some media
file is missing.

* Change error message
2019-08-06 21:50:05 +02:00
Eugen Rochko
aef567cb9d Fix option to send e-mail notification about account action always being true (#11242) 2019-08-06 21:50:05 +02:00
ThibG
de747948a1 Fix swiping columns on mobile sometimes failing (#11200)
Fixes #9779
2019-08-06 21:50:05 +02:00
ThibG
c95ce1f3ac Fix account URI in UpdatePollSerializer (#11194)
* Fix account URI in UpdatePollSerializer

Fixes #11185

* Add specs
2019-08-06 21:50:05 +02:00
Eugen Rochko
8fe7116cdf
New Crowdin translations (#11144)
* New translations simple_form.en.yml (Japanese)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations doorkeeper.en.yml (Catalan)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* New translations doorkeeper.en.yml (Galician)
[ci skip]

* New translations en.json (Arabic)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* New translations doorkeeper.en.yml (German)
[ci skip]

* New translations en.json (Slovenian)
[ci skip]

* i18n-tasks normalize

* yarn manage:translations
2019-06-22 17:26:09 +02:00