{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":158740320,"defaultBranch":"master","name":"cage","ownerLogin":"cage-kiosk","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-11-22T18:58:55.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/126342703?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1708962082.0","currentOid":""},"activityList":{"items":[{"before":"26c953b0ad9aeb72f7bbb05bda2205ab9ecd9117","after":null,"ref":"refs/heads/primary-selection","pushedAt":"2024-02-26T15:41:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"}},{"before":"9d43282fa0cd5925a6f9304f0218fd79ae9fcd94","after":"e7d8780f46277af87881e0be91cb2092541bb1d5","ref":"refs/heads/master","pushedAt":"2024-02-26T15:41:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Add support for primary selection","shortMessageHtmlLink":"Add support for primary selection"}},{"before":null,"after":"26c953b0ad9aeb72f7bbb05bda2205ab9ecd9117","ref":"refs/heads/primary-selection","pushedAt":"2024-02-24T09:28:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Add support for primary selection","shortMessageHtmlLink":"Add support for primary selection"}},{"before":"d07afac4ae5511f427db023c89bee85045ed11f4","after":"9d43282fa0cd5925a6f9304f0218fd79ae9fcd94","ref":"refs/heads/master","pushedAt":"2024-02-23T11:14:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Add .editorconfig\n\nAllows text editors to display files with the correct tab width.","shortMessageHtmlLink":"Add .editorconfig"}},{"before":"767ccf9bbd0dba6c8f8bc17587d1a112a3fc2335","after":"d07afac4ae5511f427db023c89bee85045ed11f4","ref":"refs/heads/master","pushedAt":"2024-02-23T11:14:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: fix assert when re-adding output to layout\n\nwlr_scene_output_layout_add_output() aborts when called with an\nalready-added output.\n\nTo reproduce, run wlr-randr to reconfigure one of the enabled\noutputs.","shortMessageHtmlLink":"output: fix assert when re-adding output to layout"}},{"before":"b6f8f925854cd90592b6f8abb4c8393ec51c9571","after":"767ccf9bbd0dba6c8f8bc17587d1a112a3fc2335","ref":"refs/heads/master","pushedAt":"2024-02-20T10:01:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: use wlr_output_head_v1_state_apply()\n\nNo need to hand-roll this code, there is a wlroots helper for it.\nAdditionally, this fixes missing adaptive sync handling.","shortMessageHtmlLink":"output: use wlr_output_head_v1_state_apply()"}},{"before":"8a009212bcc7d7766e1f1601605a3ae923a84b1a","after":"b6f8f925854cd90592b6f8abb4c8393ec51c9571","ref":"refs/heads/master","pushedAt":"2024-02-12T10:57:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"xwayland: fix double wl_list_remove\n\nWhen destroying an xwayland surface, the dissociate and destroy handlers\nare called, but both of these were removing the map and unmap signal\nhandlers, causing a segfault when the destroy handler went to remove\nthem.\nFixes #309","shortMessageHtmlLink":"xwayland: fix double wl_list_remove"}},{"before":"34eb3ec2c81fde3349eed63daba8b244b0bfd46f","after":"8a009212bcc7d7766e1f1601605a3ae923a84b1a","ref":"refs/heads/master","pushedAt":"2024-01-26T22:45:57.000Z","pushType":"pr_merge","commitsCount":18,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: Transition to wlr_output_state\n\nWe previously used the wlr_output's built-in pending state and\nwlr_output_rollback. The modern state API is much nicer.","shortMessageHtmlLink":"output: Transition to wlr_output_state"}},{"before":"f1fdf48bd106b909c28c41b9fa9553dd703a2978","after":null,"ref":"refs/heads/optional-xwayland","pushedAt":"2023-12-11T16:25:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"}},{"before":"1f3e3043dd08609ec50ef81363a8a41df9826d0a","after":"34eb3ec2c81fde3349eed63daba8b244b0bfd46f","ref":"refs/heads/master","pushedAt":"2023-12-11T16:25:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Make Xwayland optional at runtime\n\nCloses: https://github.com/cage-kiosk/cage/issues/293","shortMessageHtmlLink":"Make Xwayland optional at runtime"}},{"before":"8b35210010cdc8afc92ac61480f667283584ca33","after":"f1fdf48bd106b909c28c41b9fa9553dd703a2978","ref":"refs/heads/optional-xwayland","pushedAt":"2023-11-27T08:56:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Make Xwayland optional at runtime\n\nCloses: https://github.com/cage-kiosk/cage/issues/293","shortMessageHtmlLink":"Make Xwayland optional at runtime"}},{"before":null,"after":"8b35210010cdc8afc92ac61480f667283584ca33","ref":"refs/heads/optional-xwayland","pushedAt":"2023-11-26T23:18:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Make Xwayland optional at runtime\n\nCloses: https://github.com/cage-kiosk/cage/issues/293","shortMessageHtmlLink":"Make Xwayland optional at runtime"}},{"before":"d40dd3bd994eab8bd6258d0cb401eddc3b33e53a","after":"1f3e3043dd08609ec50ef81363a8a41df9826d0a","ref":"refs/heads/master","pushedAt":"2023-11-22T14:21:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"CI: Set `fail-fast' to false\n\nThis allows other jobs to continue running even if one job fails","shortMessageHtmlLink":"CI: Set `fail-fast' to false"}},{"before":"4dc3cf80b2755a8f81cc0c5c7e0176d532f54ab4","after":"d40dd3bd994eab8bd6258d0cb401eddc3b33e53a","ref":"refs/heads/master","pushedAt":"2023-11-10T13:38:28.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"cage: remove not really used variables in server initialization","shortMessageHtmlLink":"cage: remove not really used variables in server initialization"}},{"before":"a769943447dbdccf5849b82ced1cde7da3b1ef38","after":"4dc3cf80b2755a8f81cc0c5c7e0176d532f54ab4","ref":"refs/heads/master","pushedAt":"2023-09-19T15:01:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: fix crash when re-enabling DRM output\n\nThe output is disabled then re-enabled using the wlr-output-management\nprotocol with tool such as wlr-randr.\n\n$ wlr-randr --output HDMI-A-1 --off\n$ wlr-randr --output HDMI-A-1 --on\n\nWhen re-enabled the new output configuration is committed before the\noutput to be added to the global output layout. However,\nhandle_output_commit() expects the output to be already part of this\nglobal layout and assert failed. Now, do not treat this in\nhandle_output_commit() and simply ensure the resulting scene output is\nnot NULL in handle_output_frame().","shortMessageHtmlLink":"output: fix crash when re-enabling DRM output"}},{"before":"7ec7e3df2bfc2069219285ccca676327480fa471","after":"a769943447dbdccf5849b82ced1cde7da3b1ef38","ref":"refs/heads/master","pushedAt":"2023-09-01T09:37:53.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: ensure output is marked as enabled before trying to set mode\n\nOtherwise, testing to set preferred / \"best\" mode will always return an\nerror. Consequently, output will simply be configured with last and\nprobably \"worst\" mode.","shortMessageHtmlLink":"output: ensure output is marked as enabled before trying to set mode"}},{"before":"121e3ac8b28db191e02645af7d8bab9d289ccd8b","after":"7ec7e3df2bfc2069219285ccca676327480fa471","ref":"refs/heads/master","pushedAt":"2023-08-24T08:05:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"seat: add missing touch_frame handler\n\nwl_touch::frame() is expected to be sent to client to indicate end of\ntouch frame event and not sending it may cause issues.\nFor example, Qt applications using Qt Wayland platform plugin do not\nconsider touch events until this end of frame to be received.","shortMessageHtmlLink":"seat: add missing touch_frame handler"}},{"before":"9a4310f8b6d40be49ca3065742c7462278b1316e","after":"121e3ac8b28db191e02645af7d8bab9d289ccd8b","ref":"refs/heads/master","pushedAt":"2023-08-21T12:40:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"cage: return exit code of primary client\n\nSome applications indicate different shutdown conditions by returning\nspecific exit codes. One of these is e.g. Kodi, which returns 64 in case\nthe user chose \"Power off\" and 66 in case the user chose \"Reboot\".\nIn order to act on these exit codes, it thus makes sense in some\nsituations to pass them on from the primary client to the caller of\nCage.\n\nThis exit code is only returned if the primary client is the cause of\nCage terminating.\n\nCo-authored-by: Patrick Steinhardt ","shortMessageHtmlLink":"cage: return exit code of primary client"}},{"before":"d519b5b529a63a34b97cf894de48516538795099","after":"9a4310f8b6d40be49ca3065742c7462278b1316e","ref":"refs/heads/master","pushedAt":"2023-08-14T07:18:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Chase HTTP redirect","shortMessageHtmlLink":"Chase HTTP redirect"}},{"before":"faf803d34ec0c9b16916a65234d6a97a095a868b","after":null,"ref":"refs/heads/trust-chain","pushedAt":"2023-07-29T08:27:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"}},{"before":"ea95a8af72955a2bacbd2cff4d3054632e952204","after":"d519b5b529a63a34b97cf894de48516538795099","ref":"refs/heads/master","pushedAt":"2023-07-29T08:27:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Establish chain of trust for signed releases","shortMessageHtmlLink":"Establish chain of trust for signed releases"}},{"before":null,"after":"faf803d34ec0c9b16916a65234d6a97a095a868b","ref":"refs/heads/trust-chain","pushedAt":"2023-07-29T08:21:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Hjdskes","name":"Jente Hidskes Ankarberg","path":"/Hjdskes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1260727?s=80&v=4"},"commit":{"message":"Establish chain of trust for signed releases","shortMessageHtmlLink":"Establish chain of trust for signed releases"}},{"before":"83ffc574be860527814c595756a558c228a3475d","after":"ea95a8af72955a2bacbd2cff4d3054632e952204","ref":"refs/heads/master","pushedAt":"2023-07-28T23:09:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"readme: update PGP key ID","shortMessageHtmlLink":"readme: update PGP key ID"}},{"before":"794803adc96b9363f71bb95f7d3063121400a1c3","after":"83ffc574be860527814c595756a558c228a3475d","ref":"refs/heads/master","pushedAt":"2023-07-28T14:47:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"build: bump version to 0.1.5","shortMessageHtmlLink":"build: bump version to 0.1.5"}},{"before":"8dcc901522080c3ca7916fe819db8f9873a471b6","after":"794803adc96b9363f71bb95f7d3063121400a1c3","ref":"refs/heads/master","pushedAt":"2023-07-28T14:43:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"build: fix default xwayland option type","shortMessageHtmlLink":"build: fix default xwayland option type"}},{"before":"b1129ca72e0193672f78d9d033d70cfc8e3dc704","after":"8dcc901522080c3ca7916fe819db8f9873a471b6","ref":"refs/heads/master","pushedAt":"2023-07-28T14:41:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"Log execvp() failures\n\nCloses: https://github.com/cage-kiosk/cage/issues/255","shortMessageHtmlLink":"Log execvp() failures"}},{"before":"bd5b20e1fab67d7fb548ecde0aade8455df4509c","after":"b1129ca72e0193672f78d9d033d70cfc8e3dc704","ref":"refs/heads/master","pushedAt":"2023-07-28T13:36:35.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"emersion","name":"Simon Ser","path":"/emersion","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/506932?s=80&v=4"},"commit":{"message":"output: fix segfault when using `-m last` option\n\nCheck output list length before accessing previous or next item to avoid\nsegfault.","shortMessageHtmlLink":"output: fix segfault when using -m last option"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEBY2rngA","startCursor":null,"endCursor":null}},"title":"Activity ยท cage-kiosk/cage"}