{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":165522651,"defaultBranch":"master","name":"egui","ownerLogin":"emilk","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-01-13T15:39:15.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1148717?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1725533054.0","currentOid":""},"activityList":{"items":[{"before":"0424d6961cb6e6ed5d71e7c17a0b9a6743ae1c5d","after":"27ef164e4d77d9cc259a295495a7da2241a586dc","ref":"refs/heads/gh-pages","pushedAt":"2024-09-05T10:45:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@7cb61f8031d2d7ccfa8cfb2442a52a2a31ec923c ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ 7cb61f8 ๐"}},{"before":"35f097f448d58dbf9cf20e01aff6882f6fbd1cd1","after":null,"ref":"refs/heads/emilk/visible-sizing-pass","pushedAt":"2024-09-05T10:44:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"}},{"before":"f74152988fd4333e04cfde6a0e22fc44b3857d0e","after":"7cb61f8031d2d7ccfa8cfb2442a52a2a31ec923c","ref":"refs/heads/master","pushedAt":"2024-09-05T10:44:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Deprecate `ui.set_sizing_pass` (#5074)\n\nUse `UiBuilder::new().sizing_pass().invisible()` instead.\r\n\r\nAlso changes `UiBuilder::sizing_pass` to no longer turn the ui\r\ninvisible. You'll have to opt-in to that instead when it makes sense,\r\ne.g. for the first frame of a tooltip, but not when auto-sizing a column\r\nin a `Table`.","shortMessageHtmlLink":"Deprecate ui.set_sizing_pass
(#5074)"}},{"before":"342e6a7e5b64de6a71b2d924aef2123488de3ed8","after":"35f097f448d58dbf9cf20e01aff6882f6fbd1cd1","ref":"refs/heads/emilk/visible-sizing-pass","pushedAt":"2024-09-05T10:37:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"clippy","shortMessageHtmlLink":"clippy"}},{"before":null,"after":"342e6a7e5b64de6a71b2d924aef2123488de3ed8","ref":"refs/heads/emilk/visible-sizing-pass","pushedAt":"2024-09-05T10:33:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Deprecate `ui.set_sizing_pass`\n\nUse `UiBuilder::new().sizing_pass().invisible()` instead.\n\nAlso changes `UiBuilder::sizing_pass` to no longer turn the ui\ninvisible. You'll have to opt-in to that instead when it makes sense,\ne.g. for the first frame of a tooltip, but not when auto-sizing a column\nin a `Table`.","shortMessageHtmlLink":"Deprecate ui.set_sizing_pass
"}},{"before":"ee58155eec1d03ffdd3e8e62e57a8fbfa5b28350","after":"0424d6961cb6e6ed5d71e7c17a0b9a6743ae1c5d","ref":"refs/heads/gh-pages","pushedAt":"2024-09-05T06:51:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@f74152988fd4333e04cfde6a0e22fc44b3857d0e ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ f741529 ๐"}},{"before":"9b0c70f9964ad932cca9891355161116bd607362","after":"ee58155eec1d03ffdd3e8e62e57a8fbfa5b28350","ref":"refs/heads/gh-pages","pushedAt":"2024-09-05T06:49:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@df9cd21248f249ff3e364079205bfc52ad2c38ed ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ df9cd21 ๐"}},{"before":"df9cd21248f249ff3e364079205bfc52ad2c38ed","after":"f74152988fd4333e04cfde6a0e22fc44b3857d0e","ref":"refs/heads/master","pushedAt":"2024-09-05T06:49:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `Options::input_options` for click-delay etc (#4942)\n\nThis takes 3 hardcoded constants from `input_state.rs` and puts them in\r\na `InputOptions` struct that then gets added to `Options`. This allows\r\nadjusting these values at runtime, for example, to increase\r\n`MAX_CLICK_DIST` for touchscreen usage.\r\n\r\n* [x] I have followed the instructions in the PR template","shortMessageHtmlLink":"Add Options::input_options
for click-delay etc (#4942)"}},{"before":"2be93aca5d0db973ab163267fb4162363786ffba","after":"df9cd21248f249ff3e364079205bfc52ad2c38ed","ref":"refs/heads/master","pushedAt":"2024-09-05T06:48:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Conditionally propagate web events using a filter in WebOptions (#5056)\n\nCurrently egui will prevent all web events from propagating. This causes\r\nissues in contexts where you are using egui in a larger web context that\r\nwants to receive events that egui does not directly respond to. For\r\nexample, currently using egui in a VSCode extension will block all app\r\nhotkeys, such as saving and opening the panel.\r\n\r\nThis adds a closure to `WebOptions` that takes in a reference to the\r\negui event that is generated from a web event and returns if the\r\ncorresponding web event should be propagated or not. The default for it\r\nis to always return false.\r\n\r\nAlternatives I considered were:\r\n1. Having the propagation filter be a property of the focus in memory.\r\nThat way it could be configured by the view currently selected. I opted\r\naway from that because I wanted to avoid lowering eframe implementation\r\nspecific stuff into egui.\r\n2. Having events contain a `web_propagate` flag that could be set when\r\nhandling them. However, that would not be compatible with the current\r\nsystem of egui events being handled outside of the web event handler.\r\n\r\nI just recently started using egui so I am not sure how idiomatic my\r\napproach here is. I would be happy to switch this over to a different\r\narchitecture if there are suggestions.\r\n\r\n\r\n\r\n* [x] I have followed the instructions in the PR template","shortMessageHtmlLink":"Conditionally propagate web events using a filter in WebOptions (#5056)"}},{"before":"905ff08def7659ac38e807b8878be1d442f0540d","after":"9b0c70f9964ad932cca9891355161116bd607362","ref":"refs/heads/gh-pages","pushedAt":"2024-09-05T06:11:17.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@2be93aca5d0db973ab163267fb4162363786ffba ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ 2be93ac ๐"}},{"before":"9fe4028f439b26e61c262789d9fe1fda8780fb88","after":"2be93aca5d0db973ab163267fb4162363786ffba","ref":"refs/heads/master","pushedAt":"2024-09-05T06:09:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Fix visual glitch in `scroll_bar_rect` added in #5070","shortMessageHtmlLink":"Fix visual glitch in scroll_bar_rect
added in #5070"}},{"before":"8069d75f540e8c7cede1570574cf50454ecbae42","after":"905ff08def7659ac38e807b8878be1d442f0540d","ref":"refs/heads/gh-pages","pushedAt":"2024-09-04T19:21:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@9fe4028f439b26e61c262789d9fe1fda8780fb88 ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ 9fe4028 ๐"}},{"before":"de2f6c00ce760454c1c1a5df32e8962d17287705","after":null,"ref":"refs/heads/emilk/scroll-bar-rect","pushedAt":"2024-09-04T19:20:28.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"}},{"before":"0b92b93233f56b323a80c4353d18ee7c2130e0f4","after":"9fe4028f439b26e61c262789d9fe1fda8780fb88","ref":"refs/heads/master","pushedAt":"2024-09-04T19:20:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `ScrollArea::scroll_bar_rect` (#5070)\n\nUseful for constraining the scroll bars to a smaller area. This will be\r\nused by the new `egui_table` crate\r\n(https://github.com/rerun-io/egui_table)\r\n\r\n\r\n![egui_table](https://github.com/user-attachments/assets/cf2a4946-914d-4f5f-91f8-63da08345413)","shortMessageHtmlLink":"Add ScrollArea::scroll_bar_rect
(#5070)"}},{"before":null,"after":"de2f6c00ce760454c1c1a5df32e8962d17287705","ref":"refs/heads/emilk/scroll-bar-rect","pushedAt":"2024-09-04T19:12:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add ScrollArea::scroll_bar_rect","shortMessageHtmlLink":"Add ScrollArea::scroll_bar_rect"}},{"before":"7228177db5fc4baa7e47b3317e9117c9fad3a397","after":"8069d75f540e8c7cede1570574cf50454ecbae42","ref":"refs/heads/gh-pages","pushedAt":"2024-09-04T15:03:10.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@0b92b93233f56b323a80c4353d18ee7c2130e0f4 ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ 0b92b93 ๐"}},{"before":"125c2ea4519e1f76dee72b29a5286a00c088d4f4","after":null,"ref":"refs/heads/emilk/shrink-clip-rect","pushedAt":"2024-09-04T15:01:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"}},{"before":"454abf705b87aba70cef582d6ce80f74aa398906","after":"0b92b93233f56b323a80c4353d18ee7c2130e0f4","ref":"refs/heads/master","pushedAt":"2024-09-04T15:01:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `ui.shrink_clip_rect` (#5068)","shortMessageHtmlLink":"Add ui.shrink_clip_rect
(#5068)"}},{"before":null,"after":"125c2ea4519e1f76dee72b29a5286a00c088d4f4","ref":"refs/heads/emilk/shrink-clip-rect","pushedAt":"2024-09-04T14:36:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `ui.shrink_clip_rect`","shortMessageHtmlLink":"Add ui.shrink_clip_rect
"}},{"before":"90d43b88b4bf80491ad8a6da2c47a50743a513d8","after":null,"ref":"refs/heads/antoine/sides-show-return-values","pushedAt":"2024-09-03T14:25:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"abey79","name":"Antoine Beyeler","path":"/abey79","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/49431240?s=80&v=4"}},{"before":"b9435541df664f36c0956007afe4155514eebc5c","after":"454abf705b87aba70cef582d6ce80f74aa398906","ref":"refs/heads/master","pushedAt":"2024-09-03T14:25:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"abey79","name":"Antoine Beyeler","path":"/abey79","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/49431240?s=80&v=4"},"commit":{"message":"Add generic return values to `egui::Sides::show()` (#5065)\n\nThis addresses this comment:\r\n- https://github.com/rerun-io/rerun/pull/7344#discussion_r1742140870\r\n\r\n\r\n* [x] I have followed the instructions in the PR template","shortMessageHtmlLink":"Add generic return values to egui::Sides::show()
(#5065)"}},{"before":null,"after":"90d43b88b4bf80491ad8a6da2c47a50743a513d8","ref":"refs/heads/antoine/sides-show-return-values","pushedAt":"2024-09-03T14:17:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"abey79","name":"Antoine Beyeler","path":"/abey79","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/49431240?s=80&v=4"},"commit":{"message":"Add generic return values to `egui::Sides::show()`","shortMessageHtmlLink":"Add generic return values to egui::Sides::show()
"}},{"before":"810ed3a76db73d79ba970a12f9714c90883d68c5","after":"7228177db5fc4baa7e47b3317e9117c9fad3a397","ref":"refs/heads/gh-pages","pushedAt":"2024-09-03T07:30:49.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@b9435541df664f36c0956007afe4155514eebc5c ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ b943554 ๐"}},{"before":"7bac528d4d32f22fc0e2578198945a0ff3d876e2","after":"b9435541df664f36c0956007afe4155514eebc5c","ref":"refs/heads/master","pushedAt":"2024-09-03T07:29:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Allow non-`static` `eframe::App` lifetime (#5060)\n\nI love egui! Thank you Emil <3\r\n\r\nThis request specifically enables an `eframe::App` which stores a\r\nlifetime.\r\n\r\nIn general, I believe this is necessary because `eframe::App` currently\r\ndoes not seem to provide a good place to allocate and then borrow from\r\nlong-lived data between `update()` calls. To attempt to borrow such\r\nlong-lived data from a field of the `App` itself would be to create a\r\nself-referential struct. A hacky alternative is to allocate long-lived\r\ndata with `Box::leak`, but that's a code smell and would cause problems\r\nif a program ever creates multiple Apps.\r\n\r\nAs a more specific motivating example, I am developing with the\r\n[inkwell](https://github.com/TheDan64/inkwell/) crate which requires\r\ncreating a `inkwell::context::Context` instance which is then borrowed\r\nfrom by a bazillion things with a dedicated `'ctx` lifetime. I need such\r\na `inkwell::context::Context` for the duration of my `eframe::App` but I\r\ncan't store it as a field of the app. The most natural solution to me is\r\nto simply to lift the inkwell context outside of the App and borrow from\r\nit, but that currently fails because the AppCreator implicitly has a\r\n`'static` lifetime requirement due to the use of `dyn` trait objects.\r\n\r\nHere is a simpler, self-contained motivating example adapted from the\r\ncurrent [hello world example](https://docs.rs/eframe/latest/eframe/):\r\n\r\n```rust\r\nuse eframe::egui;\r\n\r\nstruct LongLivedThing {\r\n message: String,\r\n}\r\n\r\nfn main() {\r\n let long_lived_thing = LongLivedThing {\r\n message: \"Hello World!\".to_string(),\r\n };\r\n\r\n let native_options = eframe::NativeOptions::default();\r\n eframe::run_native(\r\n \"My egui App\",\r\n native_options,\r\n Box::new(|cc| Ok(Box::new(MyEguiApp::new(cc, &long_lived_thing)))),\r\n // ^^^^^^^^^^^^^^^^^\r\n // BORROWING from long_lived_thing in App\r\n );\r\n}\r\n\r\nstruct MyEguiApp<'a> {\r\n long_lived_thing: &'a LongLivedThing,\r\n}\r\n\r\nimpl<'a> MyEguiApp<'a> {\r\n fn new(cc: &eframe::CreationContext<'_>, long_lived_thing: &'a LongLivedThing) -> Self {\r\n // Customize egui here with cc.egui_ctx.set_fonts and cc.egui_ctx.set_visuals.\r\n // Restore app state using cc.storage (requires the \"persistence\" feature).\r\n // Use the cc.gl (a glow::Context) to create graphics shaders and buffers that you can use\r\n // for e.g. egui::PaintCallback.\r\n MyEguiApp { long_lived_thing }\r\n }\r\n}\r\n\r\nimpl<'a> eframe::App for MyEguiApp<'a> {\r\n fn update(&mut self, ctx: &egui::Context, frame: &mut eframe::Frame) {\r\n egui::CentralPanel::default().show(ctx, |ui| {\r\n ui.heading(&self.long_lived_thing.message);\r\n });\r\n }\r\n}\r\n```\r\n\r\nThis currently fails to compile with:\r\n```plaintext\r\nerror[E0597]: `long_lived_thing` does not live long enough\r\n --> src/main.rs:16:55\r\n |\r\n16 | Box::new(|cc| Ok(Box::new(MyEguiApp::new(cc, &long_lived_thing)))),\r\n | ----------------------------------------------^^^^^^^^^^^^^^^^----\r\n | | | |\r\n | | | borrowed value does not live long enough\r\n | | value captured here\r\n | cast requires that `long_lived_thing` is borrowed for `'static`\r\n17 | );\r\n18 | }\r\n | - `long_lived_thing` dropped here while still borrowed\r\n |\r\n = note: due to object lifetime defaults, `Box FnOnce(&'a CreationContext<'b>) -> Result, Box>>` actually means `Box<(dyn for<'a, 'b> FnOnce(&'a CreationContext<'b>) -> Result, Box> + 'static)>`\r\n```\r\n\r\nWith the added lifetimes in this request, I'm able to compile and run\r\nthis as expected on Ubuntu + Wayland. I see the CI has been emailing me\r\nabout some build failures and I'll do what I can to address those.\r\nCurrently running the check.sh script as well.\r\n\r\nThis is intended to resolve https://github.com/emilk/egui/issues/2152\r\n\r\n\r\n\r\n* Closes https://github.com/emilk/egui/issues/2152\r\n* [x] I have followed the instructions in the PR template","shortMessageHtmlLink":"Allow non-static
eframe::App
lifetime (#5060)"}},{"before":"2a9c638031d12b8c3f08589605c23d93015bd47f","after":"ece336c218924e0bb92ad4c324fc251618c61c79","ref":"refs/heads/emilk/skip-frame","pushedAt":"2024-09-02T12:40:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Fix: copy `time` in `RawInput::take`","shortMessageHtmlLink":"Fix: copy time
in RawInput::take
"}},{"before":"e8644bfbbbf0fcb82c0b6eb296ab1721e9cd58c7","after":"2a9c638031d12b8c3f08589605c23d93015bd47f","ref":"refs/heads/emilk/skip-frame","pushedAt":"2024-09-02T11:30:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `ctx.skip_frame()` to promt an immediate extra pass","shortMessageHtmlLink":"Add ctx.skip_frame()
to promt an immediate extra pass"}},{"before":null,"after":"e8644bfbbbf0fcb82c0b6eb296ab1721e9cd58c7","ref":"refs/heads/emilk/skip-frame","pushedAt":"2024-09-02T11:04:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Fix: Make sure `RawInput::take` clears all events, like it says it does","shortMessageHtmlLink":"Fix: Make sure RawInput::take
clears all events, like it says it does"}},{"before":"cd9cdff077cb7c209ba324bd09c9ad3db0765c8b","after":"810ed3a76db73d79ba970a12f9714c90883d68c5","ref":"refs/heads/gh-pages","pushedAt":"2024-09-02T08:48:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ emilk/egui@7bac528d4d32f22fc0e2578198945a0ff3d876e2 ๐","shortMessageHtmlLink":"Deploying to gh-pages from @ 7bac528 ๐"}},{"before":"0e77d24ea1e9948c2c3d8cf3d1acc852756c3b25","after":null,"ref":"refs/heads/emilk/sides","pushedAt":"2024-09-02T08:47:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"}},{"before":"be944f09153e3bf809c9a982004dc8ea8f153893","after":"7bac528d4d32f22fc0e2578198945a0ff3d876e2","ref":"refs/heads/master","pushedAt":"2024-09-02T08:47:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"emilk","name":"Emil Ernerfeldt","path":"/emilk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1148717?s=80&v=4"},"commit":{"message":"Add `egui::Sides` for adding UI on left and right sides (#5036)\n\n* Closes https://github.com/emilk/egui/issues/5015","shortMessageHtmlLink":"Add egui::Sides
for adding UI on left and right sides (#5036)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAErbcwxQA","startCursor":null,"endCursor":null}},"title":"Activity ยท emilk/egui"}