about summary refs log tree commit diff
path: root/app/javascript/mastodon/containers
AgeCommit message (Collapse)Author
2020-11-16Fix pop-out player appearing on mobile screens in web UI (#15157)Eugen Rochko
Fix #15092
2020-09-28Add pop-out player for audio/video in web UI (#14870)Eugen Rochko
Fix #11160
2020-07-09Freeze scroll position when a dropdown menu is open in the TL (#14271)ThibG
* Freeze scroll position when a dropdown menu is open in the TL * Apply this to direct TL as well * Fix case when mouse leaves the menu
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-18Add local only to hashtag timeline (#13502)Takeshi Umeda
2020-04-17Fix not being able to vote (#13490)ThibG
Fix regression introduced by ab8d7c0680d7f75826277be4c8eea1ebd396be8a
2020-04-16Fix Poll fetchPoll action not being debounced. (#13485)Gurgen Hayrapetyan
* Fix Poll fetchPoll action not being debounced. * Fix unused import in the Poll component
2020-03-09Change the string "hidden" to "blocked" in WebUI (#13221)mayaeh
* Change the string "hidden" to "blocked" in WebUI. * update
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-11-20Fix account dropdown not opening due to regression from #12377 (#12430)Eugen Rochko
2019-11-19Add relationship-based options to status dropdowns (#12377)Eugen Rochko
Move bookmark action in inline statuses from action bar to dropdown
2019-11-13Add bookmarks (#7107)ThibG
* Add backend support for bookmarks Bookmarks behave like favourites, except they aren't shared with other users and do not have an associated counter. * Add spec for bookmark endpoints * Add front-end support for bookmarks * Introduce OAuth scopes for bookmarks * Add bookmarks to archive takeout * Fix migration * Coding style fixes * Fix rebase issue * Update bookmarked_statuses to latest UI changes * Update bookmark actions to properly reflect status changes in state * Add bookmarks item to single-column layout * Make active bookmarks red
2019-09-29Add explanation to mute dialog, refactor and clean up mute/block UI (#11992)ThibG
* Add some explanation to the mute modal dialog * Remove `isSubmitting` from mute modal code, this wasn't used * Refactor block modal Signed-off-by: Thibaut Girka <thib@sitedethib.com> * Refactor SCSS a bit * Put mute modal toggle to the same side as in the report dialog for consistency * Reword mute explanation * Fix mute explanation styling * Left-align all text in mute confirmation modal
2019-09-29Do not add margin light when opening modal on mobile (#11830)Yamagishi Kazutoshi
2019-09-21Change conversations UI (#11896)Eugen Rochko
Fix #11414, fix #9860, fix #10434
2019-09-12Fix scroll position resetting when opening media modals in web UI (#11815)Eugen Rochko
2019-08-23Add audio player (#11644)Eugen Rochko
2019-08-18Add trends to public pages sidebar (#11594)Eugen Rochko
2019-08-06Improve dropdown menu keyboard navigation (#11491)ThibG
* 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-07-21Fix boost to original audience not working on mobile (#11371)ThibG
2019-07-19Change single-column mode to scroll the whole page (#11359)Eugen Rochko
Fix #10840
2019-05-09Add confirm modal for unboosting toots (#10287)Aurélien Reeves
[#3815] Display the boost modal also when unboosting toots.
2019-03-26Add a “Block & Report” button to the block confirmation dialog (#10360)ThibG
2019-03-15Show disappointed elephant if web UI crashes (#10275)Eugen Rochko
* Do not crash the whole UI when loading an invalid column * Add error boundary component to catch Web UI crashes * Add stack trace on supported browsers * Add component stack info, pre-format everything for github * Make “Reload” a clickable link that calls window.location.reload() * Remove elephant friend from error boundary, make title stand out more * Simplify error boundary to only a graphic
2019-03-12Redesign landing page (#10232)Eugen Rochko
2019-03-03Add polls (#10111)Eugen Rochko
* 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-02-04Fix not showing custom emojis in share page emoji picker (#9970)rinsuki
2019-01-02Upgrade ESLint to v5.x (#9694)Yamagishi Kazutoshi
2018-12-17Add new first-time tutorial (#9531)Eugen Rochko
* Prepare to load onboarding as a full page * Update the first-time introduction * Improve responsive design * Replace speech bubble with logo * Increase text size and reword first paragraph
2018-10-05Add a confirmation dialog when hitting reply and the compose box isn't empty ↵ThibG
(#8893) * Add a confirmation dialog when hitting reply and the compose box isn't empty Fixes #878 * Performance improvement
2018-09-13Only focus first element of dropdown menus if using keyboard (#8679)ThibG
* Only focus first item of dropdown if it was opened via keyboard * Improve keyboard VS mouse navigation of dropdown menus
2018-08-25Weblate translations (2018-08-25) (#8420)Yamagishi Kazutoshi
* 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-19Show compose form on delete & redraft when in mobile layout (#8277)Eugen Rochko
Fix #8274
2018-08-08Remove protocol handler registration (#8127)Eugen Rochko
Browser UI too confusing / scares people, protocol URIs not used much
2018-07-31Compensate for scrollbar disappearing when media modal visible (#8100)Eugen Rochko
* Compensate for scrollbar disappearing when media modal visible Make auth pages backgrounds lighter * Fix typo
2018-06-29Keyword/phrase filtering (#7905)Eugen Rochko
* 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-05Add redraft function (#7735)Eugen Rochko
* Add redraft function Fix #7010 * Add explicit confirmation * Add explicit confirmation message
2018-05-13Open video modal on public UI (#7469)Yamagishi Kazutoshi
2018-05-12Combine similar components into one on public UI (#7458)Yamagishi Kazutoshi
2018-05-09Show card modal on public pages (#7428)Yamagishi Kazutoshi
2018-05-08Show media modal on public timeline (#7413)Yamagishi Kazutoshi
2018-04-09Feature: Direct message from Statuses (#7089)Emelia Smith
* Fix: Switching between composing direct message and mention from menus Previously clicking "direct message" followed by "mention" resulted in the composed status staying as "direct", along with weird spacing of items in the text area. This attempts to fix that. * Fix: Add missing proptype check for onMention in Status component * Add the ability to send a direct message to a user from the menu on Statuses * Add space between "Embed" and "Mention" on expanded statuses menu
2018-04-04retrieve custom emoji list via API instead of before page load (#7047)Isatis
2018-04-02 Add missing rejection handling for Promises (#7008)unarist
* Add eslint-plugin-promise to detect uncaught rejections * Move alert generation for errors to actions/alert * Add missing rejection handling for Promises * Use catch() instead of onReject on then() Then it will catches rejection from onFulfilled. This detection can be disabled by `allowThen` option, though.
2018-03-30Add some UI for user-defined domain blocks (#6628)ThibG
* Keep list of blocked domains Might be overkill, but I'm trying to follow the same logic as for blocked users * Add basic domain block UI * Add the domain blocks UI to Getting Started * Fix undefined URL in `fetchDomainBlocks` * Update all known users' domain_blocking relationship instead of just one's
2018-03-24Show media modal on public pages (#6801)Akihiko Odaki
2018-03-11Add show more/less toggle for entire threads in web UI (#6733)Eugen Rochko
Fix #1258
2018-03-07Remove pointer events on the entire UI when a dropdown menu is open (#6648)Akihiko Odaki
* Remove pointer events on the entire UI when a dropdown menu is open This prevents operations to change the location of the menu such as scrolling. * Fix mistake from merge
2018-02-04Add option to show only local toots in timeline preview (#6292)Renato "Lond" Cerqueira
* Add option to show only local toots in timeline preview Right know, toots from all the known fediverse are shown in the main page of an instance. That however doesn't reflect the instance itself. With this option the admin may choose to display only local toots so that users checking the instance get a better idea of internal conversations. * Fix issues pointed by codeclimate and eslint * Add default message for community timeline * Update pl.yml
2018-01-20Restore onboarding modal (#6303)Eugen Rochko
* Restore onboarding modal Revert 5ba8b3a396895ecec083c5258aaf9084d584a7c4 * Change greeting elephant graphic, fix up some design issues * Fix wrong link color in onboarding modal