Commit Graph

316 Commits

Author SHA1 Message Date
Kirill Chibisov c6ec36f422 Update smithay to the latest git
This fixes IME handling.
2023-10-24 17:26:01 +04:00
Ivan Molodetskikh 8a06bf1558 Update README 2023-10-24 15:06:09 +04:00
Ivan Molodetskikh b20d8e7062 Implement ext-session-lock 2023-10-24 15:06:07 +04:00
Ivan Molodetskikh 3fd421f13f Update Smithay 2023-10-24 15:05:14 +04:00
Ivan Molodetskikh d254731885 Use correct workspace vertical position for rendering 2023-10-21 20:58:30 +04:00
Ivan Molodetskikh 5156ab1dcb Update pointer focus before input
During an animation, our pointer might have updated.
2023-10-21 20:58:30 +04:00
Ivan Molodetskikh fb866c63e5 Extract update_pointer_focus() 2023-10-21 20:58:30 +04:00
Ivan Molodetskikh bae9575cc1 Rename refresh_cursor_focus() into pointer 2023-10-21 20:58:30 +04:00
Ivan Molodetskikh 8bde252ba4 Stop updating focus during transitions
This also includes touchpad swipes.
2023-10-21 20:58:30 +04:00
Ivan Molodetskikh 29ddd7006b Remove assert on activating window on inactive workspace 2023-10-21 20:58:30 +04:00
Ivan Molodetskikh a09a073d2d Rename variables to be less confusing 2023-10-21 20:58:30 +04:00
Ivan Molodetskikh ccce8d3141 Crop workspaces during transition tightly 2023-10-21 20:58:30 +04:00
Kirill Chibisov f3e04981d8 Try to pick user login shell instead of assuming bash
The trick is inspired by `gnome-session`.
2023-10-17 19:05:58 +04:00
Ivan Molodetskikh 58f6b30325 Send tiled state when prefer-no-csd is set 2023-10-16 15:21:43 +04:00
Ivan Molodetskikh 052ecdbe2a Check for ongoing animations earlier
Removes the inconsistency that when animating towards an empty
pointer position, the focus change would not wait until the end of the
animation.
2023-10-15 18:58:48 +04:00
Ivan Molodetskikh da59dfc5b4 Refresh pointer focus continuously
Fixes pointer focus not updating after:
- switching workspaces
- switching between windows so they move around
- client appearing below cursor
- client resizing to appear below cursor

And all other similar cases. Hopefully this doesn't slow things down
too much. Preliminary tracy analysis seems to indicate that it doesn't.
2023-10-15 16:33:24 +04:00
Ivan Molodetskikh 67ea378ff7 Add new workspace binds to README 2023-10-14 20:48:53 +04:00
Ivan Molodetskikh 6f909beabb Update dependencies 2023-10-14 20:44:43 +04:00
Ivan Molodetskikh f7669a55ad Add binds to move workspaces up and down 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh 736191e826 Add check for no empty workspaces invariant 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh d1f431fd7e Fix moving empty workspaces to original output 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh c29fdcaccb Fix by-idx workspace actions not cleaning up 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh 8a08e01a2d Fix removing output not keeping empty focus on primary 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh 1831d68915 Fix assertion message 2023-10-14 20:42:44 +04:00
Ivan Molodetskikh d59fe34243 Make clear color a const
The damage tracker doesn't understand clear color changes.
2023-10-13 13:30:36 +04:00
Ivan Molodetskikh 29053a807b Return RenderResult from render() 2023-10-13 13:30:36 +04:00
Ivan Molodetskikh 0a32747495 Send dmabuf feedbacks from the backend 2023-10-13 13:30:36 +04:00
Ivan Molodetskikh f625dede1a Extract niri.clear_color() 2023-10-13 13:30:36 +04:00
Ivan Molodetskikh b8e6d4b7eb Upgrade dependencies 2023-10-13 07:37:37 +04:00
Ivan Molodetskikh cc259f9a34 frame_clock: Defend against last presentation time being too much in the future 2023-10-12 14:07:55 +04:00
Ivan Molodetskikh 3602876b5e Add a few more Tracy spans 2023-10-11 14:53:53 +04:00
Ivan Molodetskikh 1d66f1b81e Draw focus ring as border on SSD windows
With SSD we're reasonably sure that the window is a rectangle with no
rounded corners, so a rectangular border should work.
2023-10-11 14:32:29 +04:00
Ivan Molodetskikh b283f546aa layout: Store location in FocusRing 2023-10-11 11:56:38 +04:00
Ivan Molodetskikh 15b6c84af0 tty: Start new tracy frame only when queueing redraw 2023-10-11 09:02:55 +04:00
Ivan Molodetskikh 0777149645 input: Exclude more events from powering on monitors 2023-10-11 08:10:04 +04:00
Ivan Molodetskikh 71ae8dd0da Update screenshot binds in README 2023-10-10 12:50:17 +04:00
Ivan Molodetskikh c8105ae1a6 Add screenshot-window action 2023-10-10 12:42:24 +04:00
Ivan Molodetskikh cb73bcfb32 Don't clear screenshot buffers
This is especially relevant for window screenshots.
2023-10-10 12:41:13 +04:00
Ivan Molodetskikh e78def3e2c Store screenshot in clipboard 2023-10-10 12:11:05 +04:00
Ivan Molodetskikh 082d734b2a Make zbus optional under "dbus" feature 2023-10-10 10:25:33 +04:00
Ivan Molodetskikh 9d7fdc4fc0 Fix redraw state resetting on redraw cancel 2023-10-10 10:03:14 +04:00
Ivan Molodetskikh 02f37c8573 Extract dbus server startup 2023-10-10 09:55:44 +04:00
Ivan Molodetskikh 66533ae0b1 Extract inhibit_power_key() 2023-10-10 09:02:33 +04:00
Ivan Molodetskikh d66bd87c66 Rename ToNiriMsg to ScreenCastToNiri 2023-10-10 08:55:54 +04:00
Ivan Molodetskikh a0b8da69c7 Extract on_screen_shot_msg 2023-10-10 08:54:15 +04:00
Ivan Molodetskikh 3c200fd64a Move dbus and systemd initialization out of Niri::new 2023-10-10 08:49:47 +04:00
Ivan Molodetskikh d9253a7137 Extract data variable 2023-10-10 07:59:50 +04:00
Ivan Molodetskikh 9fb8c616a8 Add a State::new tracy span 2023-10-10 07:57:22 +04:00
Ivan Molodetskikh 2508d3e08e Move refresh calls into State 2023-10-10 07:55:31 +04:00
Ivan Molodetskikh 189d1bd97b Add power-off-monitors bind
Implements https://github.com/YaLTeR/niri/issues/24
2023-10-09 18:37:43 +04:00