{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":157927312,"defaultBranch":"master","name":"MagazineLayout","ownerLogin":"airbnb","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-11-16T22:16:03.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/698437?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714685176.0","currentOid":""},"activityList":{"items":[{"before":"6e2f69f76f87514ee7d96fe5b988463757077d0d","after":null,"ref":"refs/heads/bk/refine-target-content-offset","pushedAt":"2024-05-02T21:26:16.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"f9b27b7768c2b23ebb3ace50c7aad5fc2f3b4fc6","after":"76554940d344234ea66af87d27e4742e5ea275de","ref":"refs/heads/master","pushedAt":"2024-05-02T21:21:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Refine top and bottom item anchor calculation (#129)\n\n* Refine top and bottom item anchor calculation\r\n\r\n* Fix build","shortMessageHtmlLink":"Refine top and bottom item anchor calculation (#129)"}},{"before":"dee0bbdc648be6bb3912b62263d8b38a6f344903","after":"6e2f69f76f87514ee7d96fe5b988463757077d0d","ref":"refs/heads/bk/refine-target-content-offset","pushedAt":"2024-05-02T20:50:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix build","shortMessageHtmlLink":"Fix build"}},{"before":"901afc8303b0910b97d5232362895fcd26cd8fa6","after":"dee0bbdc648be6bb3912b62263d8b38a6f344903","ref":"refs/heads/bk/refine-target-content-offset","pushedAt":"2024-05-02T20:42:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix build","shortMessageHtmlLink":"Fix build"}},{"before":"beb12f6970231c122af86b04fa006050310a7a3e","after":"901afc8303b0910b97d5232362895fcd26cd8fa6","ref":"refs/heads/bk/refine-target-content-offset","pushedAt":"2024-05-02T00:11:25.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Refine top and bottom item anchor calculation","shortMessageHtmlLink":"Refine top and bottom item anchor calculation"}},{"before":null,"after":"beb12f6970231c122af86b04fa006050310a7a3e","ref":"refs/heads/bk/refine-target-content-offset","pushedAt":"2024-05-02T00:09:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Refine top and bottom item anchor calculation","shortMessageHtmlLink":"Refine top and bottom item anchor calculation"}},{"before":"9b217c3333c31aab6e7e04bb8332c19cf377fdff","after":null,"ref":"refs/heads/bk/CGFloat-equality-fix","pushedAt":"2024-04-01T00:43:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"8b41fe5a062949ac7561357bfbdc29aeba666275","after":"f9b27b7768c2b23ebb3ace50c7aad5fc2f3b4fc6","ref":"refs/heads/master","pushedAt":"2024-03-30T22:15:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Pixel aligned CGFloat equality fix (#128)","shortMessageHtmlLink":"Pixel aligned CGFloat equality fix (#128)"}},{"before":null,"after":"9b217c3333c31aab6e7e04bb8332c19cf377fdff","ref":"refs/heads/bk/CGFloat-equality-fix","pushedAt":"2024-03-30T00:50:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Pixel aligned CGFloat equality fix","shortMessageHtmlLink":"Pixel aligned CGFloat equality fix"}},{"before":"de77a4ee67e58520a703dd14faeb8ec1e3515ae7","after":null,"ref":"refs/heads/bk/fix-bottom-edge-preservation","pushedAt":"2024-03-22T23:46:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"b838d830a013f5fc82fc0684b731c21ac541bf44","after":"8b41fe5a062949ac7561357bfbdc29aeba666275","ref":"refs/heads/master","pushedAt":"2024-03-22T23:46:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix attempt (#127)","shortMessageHtmlLink":"Fix attempt (#127)"}},{"before":null,"after":"de77a4ee67e58520a703dd14faeb8ec1e3515ae7","ref":"refs/heads/bk/fix-bottom-edge-preservation","pushedAt":"2024-03-22T22:48:10.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix attempt","shortMessageHtmlLink":"Fix attempt"}},{"before":"281c390ac5634ac1a2478957c323b9fab0a8dac2","after":"b838d830a013f5fc82fc0684b731c21ac541bf44","ref":"refs/heads/master","pushedAt":"2024-03-22T18:43:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Add bottom inset to offset calculation (#126)\n\n* Add bottom inset to offset calculation\r\n\r\n* Update MagazineLayout/Public/MagazineLayout.swift\r\n\r\nCo-authored-by: Bryan Keller \r\n\r\n* Update MagazineLayout/Public/MagazineLayout.swift\r\n\r\nCo-authored-by: Bryan Keller \r\n\r\n---------\r\n\r\nCo-authored-by: Elfred Pagan \r\nCo-authored-by: Bryan Keller ","shortMessageHtmlLink":"Add bottom inset to offset calculation (#126)"}},{"before":"1fa8a1da20026cf93611cff4d4fe8387d04c53cf","after":null,"ref":"refs/heads/bk/better-layout-attributes-cache-invalidation","pushedAt":"2024-03-08T22:44:58.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"63315fe1d023dc5902c043e79abe3473aa28ffdc","after":"281c390ac5634ac1a2478957c323b9fab0a8dac2","ref":"refs/heads/master","pushedAt":"2024-03-08T22:44:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Clear cached layout attributes if the data source counts change (#125)","shortMessageHtmlLink":"Clear cached layout attributes if the data source counts change (#125)"}},{"before":null,"after":"1fa8a1da20026cf93611cff4d4fe8387d04c53cf","ref":"refs/heads/bk/better-layout-attributes-cache-invalidation","pushedAt":"2024-03-08T19:37:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Clear cached layout attributes if the data source counts change","shortMessageHtmlLink":"Clear cached layout attributes if the data source counts change"}},{"before":"2d10f0911709dee54338d0c0f23f9dd68ac2e346","after":null,"ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-07T23:44:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"69ada51809eb32e877f505f2e0d360da6eecb2b8","after":"63315fe1d023dc5902c043e79abe3473aa28ffdc","ref":"refs/heads/master","pushedAt":"2024-03-07T23:44:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix initial layout attributes when applying target content offset (#124)","shortMessageHtmlLink":"Fix initial layout attributes when applying target content offset (#124)"}},{"before":"99f7e8411fbcfbe4d72de43c0a7c2fa91f6b9b83","after":"2d10f0911709dee54338d0c0f23f9dd68ac2e346","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-07T21:42:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix initial layout attributes when applying target content offset","shortMessageHtmlLink":"Fix initial layout attributes when applying target content offset"}},{"before":"c99124707d58a785a95a668d84dbcbfe33f9f939","after":"99f7e8411fbcfbe4d72de43c0a7c2fa91f6b9b83","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-07T20:01:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix initial layout attributes when applying target content offset","shortMessageHtmlLink":"Fix initial layout attributes when applying target content offset"}},{"before":"fffd98dec10efc34421ed101b51d4fb9e515d0f3","after":"c99124707d58a785a95a668d84dbcbfe33f9f939","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-07T20:00:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix initial layout attributes when applying target content offset","shortMessageHtmlLink":"Fix initial layout attributes when applying target content offset"}},{"before":"26ed39b19f789681eb01d0f1d77f30826f1c9efc","after":"fffd98dec10efc34421ed101b51d4fb9e515d0f3","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-06T09:39:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Workaround collection view rendering glitch","shortMessageHtmlLink":"Workaround collection view rendering glitch"}},{"before":"66fcd0fbc911ae3fc3eb787e47d71e5d827bc37c","after":"26ed39b19f789681eb01d0f1d77f30826f1c9efc","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-06T09:39:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Workaround collection view rendering glitch","shortMessageHtmlLink":"Workaround collection view rendering glitch"}},{"before":null,"after":"66fcd0fbc911ae3fc3eb787e47d71e5d827bc37c","ref":"refs/heads/bk/fix-initial-attributes-target-content-offset","pushedAt":"2024-03-06T09:27:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Workaround collection view rendering glitch","shortMessageHtmlLink":"Workaround collection view rendering glitch"}},{"before":"e1b983f778df6fa5861b9702fd0266d2858b516f","after":"69ada51809eb32e877f505f2e0d360da6eecb2b8","ref":"refs/heads/master","pushedAt":"2024-03-06T09:04:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Change var to uninitialized let (#123)\n\nCo-authored-by: Elfred Pagan ","shortMessageHtmlLink":"Change var to uninitialized let (#123)"}},{"before":"2d0d4f918e38e32c682e39752afad9afbe753953","after":"e1b983f778df6fa5861b9702fd0266d2858b516f","ref":"refs/heads/master","pushedAt":"2024-03-05T01:47:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"bottomToTop scrollOffset preservation (#121)\n\n* bottomToTop scrollOffset preservation\r\n\r\nWhen using the `bottomToTop` layoutDirection, we should preserve scroll position relative to the bottom of the collection view whenever we change bounds.\r\n\r\n* fix formating\r\n\r\n---------\r\n\r\nCo-authored-by: Elfred Pagan ","shortMessageHtmlLink":"bottomToTop scrollOffset preservation (#121)"}},{"before":"bfc6077d30e9ebb99483d905dc705fbef2bca896","after":"2d0d4f918e38e32c682e39752afad9afbe753953","ref":"refs/heads/master","pushedAt":"2024-03-04T20:33:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Performance improvements during layout calculation (#122)\n\n* Performance improvements during layout calculation\r\n\r\nBoth `invalidateSectionMaxYsCacheForSectionIndices` and `invalidateEntireSectionMaxYsCache` do linear passes. These are called on each section header, section footer and background. Leading to a lot of work being done with long lists.\r\n\r\nThis PR short circuits the work if we try to remove header, footers and backgrounds that don't exist.\r\n\r\nA better option would be to run the calls above once per update vs per update item. That would require a bit more rework though.\r\n\r\n* Update MagazineLayout/LayoutCore/ModelState.swift\r\n\r\nCo-authored-by: Bryan Keller \r\n\r\n* Update MagazineLayout/LayoutCore/ModelState.swift\r\n\r\nCo-authored-by: Bryan Keller \r\n\r\n* Update MagazineLayout/LayoutCore/ModelState.swift\r\n\r\nCo-authored-by: Bryan Keller \r\n\r\n---------\r\n\r\nCo-authored-by: Elfred Pagan \r\nCo-authored-by: Bryan Keller ","shortMessageHtmlLink":"Performance improvements during layout calculation (#122)"}},{"before":"3269b6e6a58db70b562c9a708fb1247523782e46","after":null,"ref":"refs/heads/bk/fix-target-content-offset-small-content","pushedAt":"2024-02-21T23:39:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"}},{"before":"d7bb3ffb4768c89e4da7bfb43a4ea0ecbcc4e56c","after":"bfc6077d30e9ebb99483d905dc705fbef2bca896","ref":"refs/heads/master","pushedAt":"2024-02-21T23:39:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix target content offset edge case for small content (#120)","shortMessageHtmlLink":"Fix target content offset edge case for small content (#120)"}},{"before":null,"after":"3269b6e6a58db70b562c9a708fb1247523782e46","ref":"refs/heads/bk/fix-target-content-offset-small-content","pushedAt":"2024-02-21T22:55:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bryankeller","name":"Bryan Keller","path":"/bryankeller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/746571?s=80&v=4"},"commit":{"message":"Fix target content offset edge case for small content","shortMessageHtmlLink":"Fix target content offset edge case for small content"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEQDoW1AA","startCursor":null,"endCursor":null}},"title":"Activity ยท airbnb/MagazineLayout"}