Kevin Lange
deeb1c42a5
fix bad operation ordering for window allocation
2014-04-20 13:47:59 -07:00
Kevin Lange
3241d36e6d
Mouse enter/leave/move for non-focused window
2014-04-20 13:44:17 -07:00
Kevin Lange
d967fae3a5
Track down the root of that malloc problem
2014-04-20 13:19:52 -07:00
Kevin Lange
30a79e8ac6
Change focus from panel
2014-04-20 01:24:10 -07:00
Kevin Lange
6300959b12
Ensure thread safety during window buffer things
2014-04-19 19:11:10 -07:00
Kevin Lange
40124cac49
various minor pieces of cleanup
2014-04-19 18:37:37 -07:00
Kevin Lange
77b830ace5
Regular mouse movement events
...
Demonstrated in the wallpaper with hover states for the icons
2014-04-19 17:44:20 -07:00
Kevin Lange
48e0ddd99e
Rudimentary animation system
...
This is actually the same as the animation system from the old
compositor, but with some added bits for damage rects.
2014-04-19 16:59:32 -07:00
Kevin Lange
3591981f58
should mark windows win they request to be moved
2014-04-18 19:45:55 -07:00
Kevin Lange
9264a203dd
Quick and dirty session ending support with a broadcast event
2014-04-18 19:23:45 -07:00
Kevin Lange
700e711606
Start on panel functionality: Window title advertisement
2014-04-18 00:18:19 -07:00
Kevin Lange
0535ccd993
mouse-initiated window resizes
2014-04-17 00:24:54 -07:00
Kevin Lange
b3410b4b4b
Basic resize support (client-initiated)
2014-04-16 23:50:57 -07:00
Kevin Lange
7827244d64
Add a subregion damage command
2014-04-16 00:00:52 -07:00
Kevin Lange
2cd36c2edf
unbreak ^C and make window rotation use the right bindings
2014-04-15 23:26:27 -07:00
Kevin Lange
b8551d2174
Kill the old compositor
2014-04-15 19:45:56 -07:00
Kevin Lange
f4c6ef10ad
Basic mouse events to windows
2014-04-14 23:24:44 -07:00
Kevin Lange
e39c08965e
Bring back rotation
2014-04-14 22:42:40 -07:00
Kevin Lange
00ecfff45f
make kbd library reentrant
2014-04-14 21:03:23 -07:00
Kevin Lange
17f176c888
Basic window movement in Yutani
2014-04-13 21:52:16 -07:00
Kevin Lange
6db3fe2ec2
Focus change events
2014-04-13 18:28:42 -07:00
Kevin Lange
f0ca89685b
Support window focus change
2014-04-13 17:58:19 -07:00
Kevin Lange
731c1303c2
Use env to store compositor endpoint
2014-04-12 18:59:43 -07:00
Kevin Lange
9a8cd903c0
Fix argument handling in yutani
2014-04-12 16:20:46 -07:00
Kevin Lange
bb5b6a0830
Add args parsing and some error handling to yutani
2014-04-11 22:43:18 -07:00
Kevin Lange
dbcb8b39f7
Use a render thread.
2014-04-07 00:51:59 -07:00
Kevin Lange
44d177a466
Use cairo to flip framebuffer with clips
2014-04-07 00:23:20 -07:00
Kevin Lange
e919ec4548
idgi, but this seems to work
2014-04-06 21:03:50 -07:00
Kevin Lange
58f32b064d
Port stuff from old compositor
...
lots of stacking functionality ported
still need window focus and mouse events, plus mouse move and other
server-side control...
2014-04-06 20:42:29 -07:00
Kevin Lange
4002901d0d
Run login app and have it run terminal
2014-04-06 18:48:40 -07:00
Kevin Lange
7009e4ec1c
Continued progress on Yutani
2014-04-06 18:21:35 -07:00
Kevin Lange
60d66da7e6
Quick port of Terminal to yutani
2014-04-06 13:25:04 -07:00
Kevin Lange
058574d5a8
fix some missing frees
2014-04-06 00:30:00 -07:00
Kevin Lange
ed82bbd55e
quick hacks to get key events flowing
2014-04-05 19:26:49 -07:00
Kevin Lange
6ea113d8b2
Very early work on yutani
2014-04-05 18:36:07 -07:00
Kevin Lange
490d1dd9f0
Fix compositor keyboard after I broke it
2014-04-05 17:06:28 -07:00
Kevin Lange
a8d599b570
Remove calls to syscall_print
2014-04-05 15:25:34 -07:00
Kevin Lange
2205c11ae0
Cleaner desktop launch
2014-04-01 21:39:08 -07:00
Kevin Lange
ace9e62ccc
Actually, do the fade, but not the scale
2014-04-01 21:29:36 -07:00
Kevin Lange
3140c8e4b2
Disable animations for backrounds and panels
2014-04-01 21:22:58 -07:00
Kevin Lange
ee30393e48
Keyboard + Mouse as modules
2014-03-16 15:13:27 -07:00
Kevin Lange
82a917d270
no more serial syscall
...
More cleanup
Oopsy
2014-03-15 20:51:11 -07:00
Kevin Lange
fd259ce8ab
Rough screenshot support
...
Still needs to be moved to the print screen key. Ctrl+Shift+P for whole
screen, Ctrl+Shift+Alt+P for active window.
2013-07-22 22:42:24 -07:00
Kevin Lange
43a795fa9a
Compositor can now take an argument for what to run on startup
2013-06-28 00:33:03 -07:00
Kevin Lange
15be8f2138
thinking about this still
2013-06-28 00:15:32 -07:00
Kevin Lange
a36421ae4e
Like I said, use FAST/GOOD macros instead
2013-06-18 23:48:04 -07:00
Kevin Lange
b6ec637f74
Use nearest-neighbor scaling
...
Major speed improvement, though it might make things like "Scale
windows" look a bit less polished; windows that are scaled up in scale
mode are rendered with bilinear scaling. Will probably replace with the
FAST/GOOD macros later.
Also, add the framework for Alt+Tab window picking (not implemented yet)
2013-06-18 23:43:56 -07:00
Kevin Lange
b7254576d4
Don't lock up when a client isn't paying attention
...
Also fix the mouse to account for this... development.
Smoother mouse movement all around, though it may make things slightlys
lower by spamming lots of mouse packets. Just write good clients and
everything will be fine...
2013-06-12 23:37:07 -07:00
Kevin Lange
4c9be9361a
Compositor animations - actual
...
There are both some good changes and some terribly hacky changes in this
commit.
- Server uses a different struct than client now for windows, so
arbitrary compositor things like effect parameters can be added
without having to rebuild everything. That's good.
- Client window structs no longer attempt to track or use window
locations. That's good.
- Windows do not destroy in response to the destory command, but rather,
a special animation is triggered; the end state for this animation
calls the actually window destruction code. That's a hack.
- Animations are based on rendered frames, not on time. That's a hack.
2013-05-29 21:31:59 -07:00
Kevin Lange
c3995aaa55
Workaround window corruption on startup
2013-05-22 22:59:23 -07:00