{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":315076987,"defaultBranch":"main","name":"kbremap","ownerLogin":"timokroeger","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-11-22T16:06:25.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1181037?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1719995140.0","currentOid":""},"activityList":{"items":[{"before":"19f6e93be9eebbede16fd63a8573b66335239e20","after":null,"ref":"refs/heads/comptime-config","pushedAt":"2024-07-03T08:24:01.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":"62d725eac0e3576b8aac344fcfb9f89cc6f580d5","after":null,"ref":"refs/heads/wip","pushedAt":"2024-07-03T08:23:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":"2cd15c34ebd0a56897d3cf06efb5afe28fa54e60","after":"ab625627c39a6c4b3b50056628313c47130daffc","ref":"refs/heads/main","pushedAt":"2024-07-03T08:12:07.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Release v2.0.0","shortMessageHtmlLink":"Release v2.0.0"}},{"before":"80701815c7fb6cbb2070e6a9e63e87e6abfe1054","after":"2cd15c34ebd0a56897d3cf06efb5afe28fa54e60","ref":"refs/heads/main","pushedAt":"2024-07-02T14:46:47.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"cargo update","shortMessageHtmlLink":"cargo update"}},{"before":"2cd15c34ebd0a56897d3cf06efb5afe28fa54e60","after":"62d725eac0e3576b8aac344fcfb9f89cc6f580d5","ref":"refs/heads/wip","pushedAt":"2024-06-28T19:46:53.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Remove `petgraph` dependency\n\nNo graph algorithms are required anymore. Store the layer names in a vec\nand the modifiers in a hashtable just like they key actions and locks.","shortMessageHtmlLink":"Remove petgraph dependency"}},{"before":null,"after":"19f6e93be9eebbede16fd63a8573b66335239e20","ref":"refs/heads/comptime-config","pushedAt":"2024-06-28T09:42:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"WIP: comptime config","shortMessageHtmlLink":"WIP: comptime config"}},{"before":"0ad93c6379453f2efe1e9a00712128a580c2c38e","after":"2cd15c34ebd0a56897d3cf06efb5afe28fa54e60","ref":"refs/heads/wip","pushedAt":"2024-06-28T09:41:18.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"cargo update","shortMessageHtmlLink":"cargo update"}},{"before":"80701815c7fb6cbb2070e6a9e63e87e6abfe1054","after":"0ad93c6379453f2efe1e9a00712128a580c2c38e","ref":"refs/heads/wip","pushedAt":"2024-06-28T09:33:42.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"cargo update","shortMessageHtmlLink":"cargo update"}},{"before":"d20a4249494c327faaca1993f60e74e348adfc2d","after":"80701815c7fb6cbb2070e6a9e63e87e6abfe1054","ref":"refs/heads/main","pushedAt":"2024-06-14T18:30:43.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Properly handle hook reentrancy","shortMessageHtmlLink":"Properly handle hook reentrancy"}},{"before":"5a6daeeaa827b3e92954d312f925dbd2b0ff0420","after":"80701815c7fb6cbb2070e6a9e63e87e6abfe1054","ref":"refs/heads/wip","pushedAt":"2024-06-13T20:33:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Properly handle hook reentrancy","shortMessageHtmlLink":"Properly handle hook reentrancy"}},{"before":"5db7d7ae2fa0f46a4606d6e59b695620fc27407d","after":null,"ref":"refs/heads/winmsg","pushedAt":"2024-06-13T20:32:31.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":null,"after":"5a6daeeaa827b3e92954d312f925dbd2b0ff0420","ref":"refs/heads/wip","pushedAt":"2024-06-12T13:42:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Improve unicode key sending\n\nThe MSDN docs for sending KEYEVENTF_UNICODE say:\n\"This flag can only be combined with the KEYEVENTF_KEYUP flag.\"\nIf combined with KEYEVENTF_KEYUP SendInput() will simple ignore the\ninput event, so there is no point in sending it.","shortMessageHtmlLink":"Improve unicode key sending"}},{"before":"0d8e485f271122cb42483b55069aa4d8e14efe07","after":null,"ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-06-12T13:42:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":"873a4d495a439b887ada3574e2e1fd54171cd3f5","after":"5db7d7ae2fa0f46a4606d6e59b695620fc27407d","ref":"refs/heads/winmsg","pushedAt":"2024-06-09T21:11:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Use `winmsg-executor` helpers","shortMessageHtmlLink":"Use winmsg-executor helpers"}},{"before":null,"after":"873a4d495a439b887ada3574e2e1fd54171cd3f5","ref":"refs/heads/winmsg","pushedAt":"2024-06-09T06:40:05.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Replace `cstr` crate with C-string literals","shortMessageHtmlLink":"Replace cstr crate with C-string literals"}},{"before":"cdb9cbc26bed5b6907457ed4997862d1451dde0e","after":"0d8e485f271122cb42483b55069aa4d8e14efe07","ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-06-04T20:08:31.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Improve the window helper","shortMessageHtmlLink":"Improve the window helper"}},{"before":null,"after":"cdb9cbc26bed5b6907457ed4997862d1451dde0e","ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-05-29T14:48:16.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Misc small winapi code impromevents","shortMessageHtmlLink":"Misc small winapi code impromevents"}},{"before":"db68aec0953eadc3a1ff7caf12056c5cc6be4e4b","after":null,"ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-05-21T07:38:33.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":"b4c1cb13d9f1e8a40c459a2d9d7462c897614752","after":"db68aec0953eadc3a1ff7caf12056c5cc6be4e4b","ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-05-16T14:13:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"EXPERIMENT: TrayIcon Async Executor","shortMessageHtmlLink":"EXPERIMENT: TrayIcon Async Executor"}},{"before":"cdb7262acf0433adc0b1806416db360418aca615","after":"b4c1cb13d9f1e8a40c459a2d9d7462c897614752","ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-05-16T14:05:49.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"EXPERIMENT: TrayIcon Async Executor","shortMessageHtmlLink":"EXPERIMENT: TrayIcon Async Executor"}},{"before":null,"after":"cdb7262acf0433adc0b1806416db360418aca615","ref":"refs/heads/popupmenu-callbacks","pushedAt":"2024-05-15T17:17:45.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Use callbacks handlers for PopupMenu","shortMessageHtmlLink":"Use callbacks handlers for PopupMenu"}},{"before":"0feab6db84b6209b935d8244b6fc94082bfa28e7","after":"d20a4249494c327faaca1993f60e74e348adfc2d","ref":"refs/heads/main","pushedAt":"2024-05-15T07:07:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Fix unsoundness in tray icon code\n\n* Add PhantomData to TrayIcon to make it !Sync and !Send\n* Set userdata state pointer in the wndproc callback during window creation.","shortMessageHtmlLink":"Fix unsoundness in tray icon code"}},{"before":"28c85bf803587d1c8444c930f78570e253b6ba48","after":null,"ref":"refs/heads/wip","pushedAt":"2024-05-15T07:06:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"}},{"before":"ff4f4bfcee8103766626b518f8ee32824279b61c","after":"0feab6db84b6209b935d8244b6fc94082bfa28e7","ref":"refs/heads/main","pushedAt":"2024-05-15T07:03:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Fix unsoundness in tray icon code\n\n* Add PhantomData to TrayIcon to make it !Sync and !Send\n* Set userdata state pointer in the wndproc callback during window creation.","shortMessageHtmlLink":"Fix unsoundness in tray icon code"}},{"before":"d38031844042c18cadcd0c26ef6dbec5de5baa13","after":"28c85bf803587d1c8444c930f78570e253b6ba48","ref":"refs/heads/wip","pushedAt":"2024-05-15T06:42:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"TrayIcon Callback: Unsound\n\nWe can `mem::forget` the tray icon and the callback then accesses an\ninvalid closure -> FAIL","shortMessageHtmlLink":"TrayIcon Callback: Unsound"}},{"before":null,"after":"d38031844042c18cadcd0c26ef6dbec5de5baa13","ref":"refs/heads/wip","pushedAt":"2024-05-14T20:45:33.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"90223e9090a37f6edad243b6f1556627e541b261","after":"ff4f4bfcee8103766626b518f8ee32824279b61c","ref":"refs/heads/main","pushedAt":"2024-05-14T15:10:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Fix unsoundness in tray icon code\n\nUserdata pointer must be set in the wndproc callback during window creation.\nUse `Rc` and `Cell` to remove prevent creating multiple mutable references to the state and makes `TrayIcon` !Sync","shortMessageHtmlLink":"Fix unsoundness in tray icon code"}},{"before":"2508d59c34dcc68a0591e6b603b776dad29c26f5","after":"90223e9090a37f6edad243b6f1556627e541b261","ref":"refs/heads/main","pushedAt":"2024-05-13T12:23:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"clippy fix","shortMessageHtmlLink":"clippy fix"}},{"before":"f8bbd212fe3dd725f91416ff98d404d1ad3bbd78","after":"2508d59c34dcc68a0591e6b603b776dad29c26f5","ref":"refs/heads/main","pushedAt":"2024-05-13T12:18:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"cargo update","shortMessageHtmlLink":"cargo update"}},{"before":"d6caec5dfdc4f9365b53a452eeb7f302a3d42966","after":"f8bbd212fe3dd725f91416ff98d404d1ad3bbd78","ref":"refs/heads/main","pushedAt":"2023-10-11T11:38:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"timokroeger","name":"Timo Kröger","path":"/timokroeger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1181037?s=80&v=4"},"commit":{"message":"Apply Rust 1.73 ergonomics to TLS variables","shortMessageHtmlLink":"Apply Rust 1.73 ergonomics to TLS variables"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEdaBJxgA","startCursor":null,"endCursor":null}},"title":"Activity · timokroeger/kbremap"}