ThibG
99924f282f
Memoize ancestorIds and descendantIds in detailed status view ( #11234 )
2019-07-02 16:03:54 +02:00
Eugen Rochko
f7f23b4a19
Add audio uploads ( #11123 )
...
* Add audio uploads
Fix #4827
Accept uploads of OGG, WAV, FLAC, OPUS and MP3 files, and converts
them to OGG. Media attachments get a new `audio` type. In the UI,
audio uploads are displayed identically to video uploads.
* Improve code style
2019-06-19 23:42:38 +02:00
ThibG
e9ddd5a159
Put poll options behind content warnings ( #10983 )
...
* Put poll options behind CWs in WebUI
* Put polls behind CWs on public pages
* Add poll icon to public pages CWs
* Revert to not showing an icon in the CW button
2019-06-08 17:40:59 +02:00
ThibG
3333250ede
Fix React warning about legacy lifecycle calls and sensitive status resetting ( #10872 )
2019-05-29 17:33:15 +03:00
Takeshi Umeda
3b9c02506d
Fix poll visibility on public pages ( #10817 )
...
* Fix poll visibility on public pages
* Revert "Fix poll visibility on public pages"
This reverts commit 54a9608add6f855bc6337fe3c65eaee7ba13db49.
* Revert "Change poll options to alphabetic letters when status text is hidden"
This reverts commit c53d67326201b2061990b1874a3547c3647f50d2.
2019-05-26 23:13:29 +02:00
Eugen Rochko
988342a56c
Fix null error in status component when determining showMedia state ( #10838 )
...
* Fix null error in status component when determining showMedia state
Also update the showMedia value if the status passed to the
component changes
* Refactor media visibility computation into a defaultMediaVisibility function
* Fix default media visibility with reblogs
2019-05-26 13:48:16 +02:00
ThibG
a472190729
Add a keyboard shortcut to hide/show media ( #10647 )
...
* Move control of media visibility to parent component
* Add keyboard shortcut to toggle media visibility
2019-05-25 23:20:51 +02:00
Eugen Rochko
6fe474837c
Change poll options to alphabetic letters when status text is hidden ( #10685 )
...
Fix #10569
2019-05-18 14:41:16 +02:00
ThibG
5121d9c12f
When selecting a toot via keyboard, ensure it is scrolled into view ( #10593 )
2019-05-03 06:20:35 +02:00
Eugen Rochko
fba96c808d
Add blurhash ( #10630 )
...
* Add blurhash
* Use fallback color for spoiler when blurhash missing
* Federate the blurhash and accept it as long as it's at most 5x5
* Display unknown media attachments as blurhash placeholders
* Improve style of embed actions and spoiler button
* Change blurhash resolution from 3x3 to 4x4
* Improve dependency definitions
* Fix code style issues
2019-04-27 03:24:09 +02:00
ashleyhull-versent
2b68fe5442
tinyfix 2: unrequired arguments ( #10471 )
...
* unrequired argument
* unrequired argument
2019-04-06 12:02:03 +09:00
ThibG
6df4a82969
Add a “Block & Report” button to the block confirmation dialog ( #10360 )
2019-03-26 17:34:02 +01:00
Eugen Rochko
65fffeac3f
Redesign landing page ( #10232 )
2019-03-12 17:34:00 +01:00
Eugen Rochko
230a012f00
Add polls ( #10111 )
...
* Add polls
Fix #1629
* Add tests
* Fixes
* Change API for creating polls
* Use name instead of content for votes
* Remove poll validation for remote polls
* Add polls to public pages
* When updating the poll, update options just in case they were changed
* Fix public pages showing both poll and other media
2019-03-03 22:18:23 +01:00
ThibG
041ff5fa9a
Fix crash on public hashtag pages when streaming fails ( #10061 )
2019-02-16 14:53:27 +01:00
ThibG
aee93bfc9c
Fix timeline jumps ( #10001 )
...
* Avoid two-step rendering of statuses as much as possible
Cache width shared by Video player, MediaGallery and Cards at the
ScrollableList level, pass it down through StatusList and Notifications.
* Adjust scroll when new preview cards appear
* Adjust scroll when statuses above the current scroll position are deleted
2019-02-11 13:19:59 +01:00
Eugen Rochko
3cfadd875c
Add "copy link" item to status action bars ( #9983 )
...
Fix #6848
2019-02-11 12:19:49 +09:00
Eugen Rochko
1f95190202
Refactor icons in web UI to use Icon component ( #9951 )
...
* Refactor uses of icons to an Icon component in web UI
* Refactor options passed to the Icon component
* Make tests work with absolute component paths
2019-02-01 00:14:05 +01:00
Eugen Rochko
b506ce1197
Fix new hashtag page's items not being full-width on mobile ( #9852 )
...
Fix #9845
2019-01-18 20:58:11 +01:00
Eugen Rochko
8b19903559
Improve the public hashtag page ( #9831 )
...
- Fix height not updating when clicking show more on public hashtag page
- Add header to the public hashtag page
- Change text size and margins on the public hashtag page
2019-01-17 14:06:08 +01:00
Eugen Rochko
bc642ac24b
Redesign public hashtag page to use a masonry layout ( #9822 )
2019-01-16 19:47:46 +01:00
ThibG
6f9a7bd02c
Add quick links to the admin interface in the WebUI ( #8545 )
...
* Allow to show a specific status in the admin interface
* Let the front-end know the current account is a moderator
* Add admin links to status and account menus
If the current logged-in user is an admin, add quick links to the admin
interface in account and toot dropdown menu. Suggestion by @ashkitten
* Use @statuses.first instead of @statuses[0]
2019-01-04 13:10:43 +01:00
Eugen Rochko
1512af2811
Display fallback link card thumbnail when none is given ( #9715 )
2019-01-04 12:44:46 +01:00
mayaeh
c1693827ae
Change the icon to "reply-all" when reply to other accounts ( #9378 )
2018-12-28 03:51:32 +01:00
Eugen Rochko
bb69d154c4
Fix null error introduced in #9270 ( #9275 )
2018-11-12 22:07:31 +01:00
ThibG
bbd8fdd185
Perform deep comparison for card data when receiving new props ( #9270 )
...
Fixes #9226
2018-11-12 18:17:50 +01:00
Eugen Rochko
5cbf6cf3ec
Add "Show thread" link to self-replies ( #9228 )
...
Fix #4716
2018-11-08 21:08:57 +01:00
trwnh
2cc099c70f
Make detailed-status__wrapper actually wrap detailed status ( #8547 )
...
* Remove class from scrollable div
.detailed-status__wrapper does not actually wrap the detailed status here
* Re-add class to focusable div
.detailed-status__wrapper now wraps the detailed status instead of the entire scrollable area
2018-10-30 06:33:02 +01:00
Eugen Rochko
9c38c5daa3
Fix dimensions of preview cards, fix crash in web UI, fix warning ( #9133 )
2018-10-29 04:42:07 +01:00
Eugen Rochko
795f0107d2
Include preview cards in status entity in REST API ( #9120 )
...
* Include preview cards in status entity in REST API
* Display preview card in-stream
* Improve in-stream display of preview cards
2018-10-28 06:35:03 +01:00
ThibG
007f7690fa
Fix fav/boosts hotkeys not working on detailed statuses ( #9006 )
2018-10-18 19:52:00 +02:00
ThibG
42aecb4c13
Add a confirmation dialog when hitting reply and the compose box isn't empty ( #8893 )
...
* Add a confirmation dialog when hitting reply and the compose box isn't empty
Fixes #878
* Performance improvement
2018-10-05 18:44:44 +02:00
Eugen Rochko
3d7f68c273
Revert Font Awesome 5 upgrade ( #8810 )
...
* Revert "Fix some icon names changed by the Font Awesome 5. (#8796 )"
This reverts commit 3f9ec3de82
.
* Revert "Migrate to font-awesome 5.0. (#8799 )"
This reverts commit 8bae14591b
.
* Revert "Fix some icons names, unavailable in fontawesome5 (free license). (#8792 )"
This reverts commit b9c727a945
.
* Revert "Update the icon name changed by the Font Awesome 5. (#8776 )"
This reverts commit 17af4d27da
.
* Revert "Add bot icon to bot avatars and migrate to newer version of Font Awesome (#8484 )"
This reverts commit 4b794e134d
.
2018-09-28 02:11:14 +02:00
Naoki Kosaka
8bae14591b
Migrate to font-awesome 5.0. ( #8799 )
2018-09-27 17:08:56 +02:00
Yamagishi Kazutoshi
0ddbccf7e6
Upgrade Babel to version 7.0.0 ( #5925 )
2018-09-14 17:59:48 +02:00
Yamagishi Kazutoshi
800325f452
Weblate translations (2018-08-25) ( #8420 )
...
* Translated using Weblate (Georgian)
Currently translated at 99.8% (674 of 675 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ka/
* Translated using Weblate (Korean)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/
* Translated using Weblate (Korean)
Currently translated at 96.8% (654 of 675 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ko/
* Translated using Weblate (Japanese)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ja/
* Translated using Weblate (Danish)
Currently translated at 100.0% (98 of 98 strings)
Translation: Mastodon/Doorkeeper
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/doorkeeper/da/
* Translated using Weblate (Danish)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/da/
* Translated using Weblate (Danish)
Currently translated at 87.2% (589 of 675 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/da/
* Translated using Weblate (Galician)
Currently translated at 100.0% (680 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/
* Translated using Weblate (Czech)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/
* Translated using Weblate (Czech)
Currently translated at 99.4% (676 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/
* Translated using Weblate (Danish)
Currently translated at 88.0% (599 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/da/
* Translated using Weblate (Arabic)
Currently translated at 97.6% (664 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/
* Translated using Weblate (Japanese)
Currently translated at 99.7% (678 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Occitan)
Currently translated at 99.5% (677 of 680 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/oc/
* Translated using Weblate (Arabic)
Currently translated at 97.9% (668 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/
* Translated using Weblate (Persian)
Currently translated at 99.7% (680 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fa/
* Translated using Weblate (Dutch)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/
* Translated using Weblate (Occitan)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/oc/
* Translated using Weblate (Japanese)
Currently translated at 0.0% (0 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Japanese)
Currently translated at 0.1% (1 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Japanese)
Currently translated at 0.1% (676 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Japanese)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Galician)
Currently translated at 100.0% (682 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/
* Translated using Weblate (Greek)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt_BR/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 98.8% (674 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/pt_BR/
* Translated using Weblate (Danish)
Currently translated at 89.2% (609 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/da/
* Translated using Weblate (French)
Currently translated at 100.0% (82 of 82 strings)
Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/
* Translated using Weblate (French)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/
* Translated using Weblate (Japanese)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Japanese)
Currently translated at 99.8% (681 of 682 strings)
Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/
* Translated using Weblate (Korean)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/
* Translated using Weblate (Occitan)
Currently translated at 100.0% (310 of 310 strings)
Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/oc/
* yarn manage:translations
* i18n-tasks normalize && i18n-tasks remove-unused
* revert
* Add defaultMessage
2018-08-25 13:27:56 +02:00
M Somerville
ac092d03e7
Add missing video descriptions ( #8416 )
...
* Pass through video description as necessary.
* Add title to video, matching aria-label.
2018-08-24 23:55:41 +02:00
Eugen Rochko
248df68c36
Give focused status a sensible aria-label for screen readers ( #8387 )
...
* Give focused status a sensible aria-label for screen readers
Fix #8192
* Use content warning in aria-label unless expanded
2018-08-23 20:56:57 +02:00
Eugen Rochko
66dbb59aa1
Add aria-label to column regions ( #8390 )
...
Fix #4485
2018-08-23 17:26:21 +02:00
Eugen Rochko
025fbb8285
Show compose form on delete & redraft when in mobile layout ( #8277 )
...
Fix #8274
2018-08-19 03:17:01 +02:00
M Somerville
298ee84488
Fix #8264 - Do not override ctrl/cmd+click. ( #8265 )
...
This includes clicks on hashtags, mentions, display names and media in the
timeline; and usernames in reply-indicator, detailed status, and the boost
modal.
2018-08-18 12:50:32 +02:00
ThibG
4601a58ac2
Defer scrollIntoView after DOM is drawn ( fixes #8239 ) ( #8242 )
2018-08-17 14:07:38 +02:00
Yamagishi Kazutoshi
06c83527f5
Do not scroll up when modal is opened ( #8095 )
2018-07-29 16:52:06 +02:00
Eugen Rochko
23e1f143de
Fix M hotkey inserting @undefined when in detailed status ( #7931 )
...
Fix #7903
2018-07-03 09:17:18 +09:00
Eugen Rochko
cdb101340a
Keyword/phrase filtering ( #7905 )
...
* Add keyword filtering
GET|POST /api/v1/filters
GET|PUT|DELETE /api/v1/filters/:id
- Irreversible filters can drop toots from home or notifications
- Other filters can hide toots through the client app
- Filters use a phrase valid in particular contexts, expiration
* Make sure expired filters don't get applied client-side
* Add missing API methods
* Remove "regex filter" from column settings
* Add tests
* Add test for FeedManager
* Add CustomFilter test
* Add UI for managing filters
* Add streaming API event to allow syncing filters
* Fix tests
2018-06-29 15:34:36 +02:00
Eugen Rochko
bd0791d800
Add redraft function ( #7735 )
...
* Add redraft function
Fix #7010
* Add explicit confirmation
* Add explicit confirmation message
2018-06-05 00:17:38 +02:00
Eugen Rochko
e18390cfe6
Fix bug in order of conversations in web UI ( #7721 )
2018-06-04 04:19:16 +02:00
Eugen Rochko
dfbadd6837
Replace recursion in status mapStateToProps ( #7645 )
2018-05-28 02:42:06 +02:00
Akihiko Odaki
023fe5181b
Introduce flat layout to contexts reducer ( #7150 )
...
This allows to filter out replies in threads even if contexts of those
replies are not fetched.
2018-05-25 18:46:28 +02:00
ThibG
2587fcdd27
Use .star-icon instead of hardcoding color in detailed statuses ( fixes #7610 ) ( #7613 )
2018-05-25 10:03:22 +09:00