You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tree:
31f7c3fc5d
WIP-hometown-skip-link
dariusk-working/4_3_0
dariusk-working/4_4_0
dariusk-working/4_5_0
hometown-1.0.8-security
hometown-3.5.10-merge
hometown-3.5.14-merge
hometown-4.0.10-merge
hometown-4.0.4
hometown-4.0.6-merge
hometown-4.2-merge
hometown-dev
hometown-rich-text
lets-bump-hometown-to-mastodon-4.2
v4.2.17+hometown-1.1.1
v4.2.17+hometown-1.1.2
2019-06-18
pre-release-0.1.0
v0.0.1.0
v0.1.0
v0.1.1
v0.1.2
v0.6
v0.7
v0.8
v0.9
v0.9.9
v1.0
v1.0.0+2.9.3
v1.0.1+2.9.3
v1.0.2+2.9.3
v1.0.3+3.0.1
v1.0.3+3.1.2
v1.0.4+3.1.4
v1.0.4+3.1.5
v1.0.5+3.2.0
v1.0.5+3.3.0
v1.0.5+3.4.0
v1.0.5+3.4.6
v1.0.5+3.5.2
v1.0.6+3.5.2
v1.0.7+3.5.4
v1.0.7+3.5.5
v1.1
v1.1.1
v1.1.2
v1.2
v1.2.1
v1.2.2
v1.3
v1.3.1
v1.3.2
v1.3.3
v1.4.1
v1.4.2
v1.4.3
v1.4.4
v1.4.5
v1.4.6
v1.4.7
v1.4rc1
v1.4rc2
v1.4rc3
v1.4rc4
v1.4rc5
v1.4rc6
v1.5.0
v1.5.0rc1
v1.5.0rc2
v1.5.0rc3
v1.5.1
v1.6.0
v1.6.0rc1
v1.6.0rc2
v1.6.0rc3
v1.6.0rc4
v1.6.0rc5
v1.6.1
v2.0.0
v2.0.0rc1
v2.0.0rc2
v2.0.0rc3
v2.0.0rc4
v2.1.0
v2.1.0rc1
v2.1.0rc2
v2.1.0rc3
v2.1.0rc4
v2.1.0rc5
v2.1.0rc6
v2.1.1
v2.1.2
v2.1.3
v2.2.0
v2.2.0rc1
v2.2.0rc2
v2.3.0
v2.3.0rc1
v2.3.0rc2
v2.3.0rc3
v2.3.1
v2.3.1rc1
v2.3.1rc2
v2.3.1rc3
v2.3.2
v2.3.2rc1
v2.3.2rc2
v2.3.2rc3
v2.3.2rc4
v2.3.2rc5
v2.3.3
v2.4.0
v2.4.0rc1
v2.4.0rc2
v2.4.0rc3
v2.4.0rc4
v2.4.0rc5
v2.4.1
v2.4.1rc1
v2.4.1rc2
v2.4.1rc3
v2.4.1rc4
v2.4.2
v2.4.2rc1
v2.4.2rc2
v2.4.2rc3
v2.4.3
v2.4.3rc1
v2.4.3rc2
v2.4.3rc3
v2.4.4
v2.4.5
v2.5.0
v2.5.0rc1
v2.5.0rc2
v2.5.1
v2.5.2
v2.6.0
v2.6.0rc1
v2.6.0rc2
v2.6.0rc3
v2.6.0rc4
v2.6.1
v2.6.2
v2.6.3
v2.6.4
v2.6.5
v2.7.0
v2.7.0rc1
v2.7.0rc2
v2.7.0rc3
v2.7.1
v2.7.2
v2.7.3
v2.7.4
v2.8.0
v2.8.0rc1
v2.8.0rc2
v2.8.0rc3
v2.8.1
v2.8.2
v2.8.3
v2.8.4
v2.9.0
v2.9.0rc1
v2.9.0rc2
v2.9.1
v2.9.2
v2.9.3
v2.9.4
v3.0.0
v3.0.0rc1
v3.0.0rc2
v3.0.0rc3
v3.0.1
v3.0.2
v3.1.0
v3.1.0rc1
v3.1.0rc2
v3.1.1
v3.1.2
v3.1.3
v3.1.4
v3.1.5
v3.2.0
v3.2.0rc1
v3.2.0rc2
v3.2.1
v3.2.2
v3.3.0
v3.3.0rc1
v3.3.0rc2
v3.3.0rc3
v3.3.1
v3.3.2
v3.3.3
v3.4.0
v3.4.0rc1
v3.4.0rc2
v3.4.1
v3.4.2
v3.4.3
v3.4.4
v3.4.5
v3.4.6
v3.4.7
v3.5.0
v3.5.0rc1
v3.5.0rc2
v3.5.0rc3
v3.5.1
v3.5.10+hometown-1.0.8
v3.5.14+hometown-1.0.8
v3.5.17+hometown-1.0.8
v3.5.19+hometown-1.0.8
v3.5.2
v3.5.5+hometown-1.0.8
v4.0.10+hometown-1.1.1
v4.0.13+hometown-1.1.1
v4.0.14+hometown-1.1.1
v4.0.15+hometown-1.1.1
v4.0.2+hometown-1.1.0
v4.0.2+hometown-1.1.1
v4.0.4+hometown-1.1.1
v4.0.4+hometown-1.1.1-patch
v4.0.5+hometown-1.1.1
v4.0.6+hometown-1.1.1
v4.2.10+hometown-1.1.1
v4.2.17+hometown-1.1.2
v4.5.6+hometown-1.2.0
v4.5.7+hometown-1.2.0
${ noResults }
* 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 |
6 years ago | |
|---|---|---|
| .. | ||
| fonts | Redesign the landing page, mount public timeline on it (#4122) | 9 years ago |
| images | Change full logo to use primary text color of the given theme (#10994) | 7 years ago |
| mastodon | Summary: fix slowness due to layout thrashing when reloading a large … (#12661) | 6 years ago |
| packs | Admin setting to disable default follows (#12566) | 6 years ago |
| styles | Fix manual scrolling issue on Firefox/Windows (#12648) | 6 years ago |