Kevin Lange
9cc5ddd0e9
pwent stuff in libc, auth modules moved toa library
2014-08-26 21:34:29 -07:00
Kevin Lange
5d90fa8c24
Restore screenshot functionality to compositor (ctrl+super+s/w)
2014-08-05 17:32:29 -07:00
Kevin Lange
ae570f8f48
Toggle decorations in terminal with F12
2014-08-04 21:54:18 -07:00
Kevin Lange
d746209191
Fix critical problem with toast daemon
2014-08-01 22:51:39 -07:00
Kevin Lange
771b28a9c7
Fix crash on resizing plasma
2014-08-01 21:29:48 -07:00
Kevin Lange
49752793b7
Close button support in decorations library
2014-08-01 21:17:41 -07:00
Kevin Lange
62de55b5f4
Cleanup and function header comments in compositor.
2014-07-28 21:10:34 -07:00
Kevin Lange
9a9f3fdc17
silence debug output from menu
2014-06-28 23:15:38 -07:00
Kevin Lange
d5002a819c
Add a bit of transparency to menus
2014-06-13 16:04:29 -07:00
Kevin Lange
1bd947f331
fix incorrect help text for teapot
2014-06-13 15:48:17 -07:00
Kevin Lange
c37b532948
More menu visual tweaks
2014-06-13 00:27:57 -07:00
Kevin Lange
3378a548a5
Fix clock event handling
2014-06-12 11:10:56 -07:00
Kevin Lange
e388d600db
Finally, an applications menu.
2014-06-11 21:09:38 -07:00
Kevin Lange
f4e038f602
why is my clock multithreaded, staaahp
2014-06-11 19:23:52 -07:00
Kevin Lange
4d3bde2f3a
more shape thresholds: teapot, clock-win
2014-06-11 19:02:15 -07:00
Kevin Lange
b59871ca67
More random terminal cleanup while we're here
2014-06-08 19:47:24 -07:00
Kevin Lange
30e5829fc6
cd home in graphical session, too
2014-06-08 13:33:59 -07:00
Kevin Lange
546ec13ec2
Use diamond as Unicode replacement character in vga text-mode
2014-06-08 00:32:00 -07:00
Kevin Lange
827bd1fe04
Fix horizontal lines in vga text mode
2014-06-08 00:29:56 -07:00
Kevin Lange
d3b4a7c5dc
Tweak a few extraneous copyright headers
2014-06-07 23:29:17 -07:00
Kevin Lange
ef7d72c1e1
License headers and a tool to generate them
2014-06-07 23:13:29 -07:00
Kevin Lange
e4732df6e1
And support dynamic (24-bit, 32-bit) colors as well
2014-06-07 22:20:27 -07:00
Kevin Lange
eccbd5d41e
Map 256-color palette to VGA colors
2014-06-07 22:14:03 -07:00
Kevin Lange
b114700751
Fix scrolling/overhang in vga terminal
2014-06-07 22:13:51 -07:00
Kevin Lange
51d0f31f42
use setuid in login/glogin
2014-06-03 23:14:03 -07:00
Kevin Lange
f019dc7b7a
Ditch zlists and selectbuffers for better methods
2014-06-01 13:09:58 -07:00
Kevin Lange
067797031f
Fix window shape blurring during transforms
2014-06-01 02:12:00 -07:00
Kevin Lange
a4b5f6a107
Add some extra toggles to gears
2014-06-01 01:56:01 -07:00
Kevin Lange
eb4d05b86b
Faster blurring with box blur (will use in compositor in future)
2014-06-01 01:33:25 -07:00
Kevin Lange
fdc5265aff
Handle resize in gears
2014-05-31 22:12:57 -07:00
Kevin Lange
226002057f
Slightly different debug method for shapes and bounds
2014-05-31 21:54:52 -07:00
Kevin Lange
cc7bb71b06
(Optionally, manually updated) alpha-based window shapes
2014-05-31 21:37:07 -07:00
Kevin Lange
7e67bf0727
Break out of that particular escape on linefeed
2014-05-30 21:29:29 -07:00
Kevin Lange
e157147550
Fix buffer overflow in termemu
2014-05-30 21:20:13 -07:00
Kevin Lange
84420f9e5c
Support closing packetfs connections
2014-05-28 19:21:56 -07:00
Kevin Lange
e1a1c1058f
system() blocks, let's call sh -c ourselves...
2014-05-26 13:46:55 -07:00
Kevin Lange
a576c84f28
Load desktop icons from a file
2014-05-26 13:36:38 -07:00
Kevin Lange
45cfecc043
Present the nested compositor at 50,50 instead of 0,0
2014-05-26 12:57:39 -07:00
Kevin Lange
ab2a9f056f
Quick and dirty display server nesting - lots of mouse event changes
2014-05-26 12:43:22 -07:00
Kevin Lange
29e7f0def1
Fix null pointer trying to alt-tab without windows
2014-05-19 18:38:16 -07:00
Kevin Lange
dcdf53db89
Make a bunch of apps respond to session end message
2014-05-19 18:34:05 -07:00
Kevin Lange
ce0dacb912
Use spinlock.h instead of continually definign this as static in a bunch of apps
2014-05-18 19:34:49 -07:00
Kevin Lange
0cdfcf766e
Support frameless non-fullscreen terminals
2014-05-18 19:23:05 -07:00
Kevin Lange
dde993c79c
Store decoration theme settings in /etc/passwd
2014-05-18 18:13:14 -07:00
Kevin Lange
71946d8a97
Invert resize rounding behavior for terminal
2014-05-18 18:10:18 -07:00
Kevin Lange
a1e8a40b22
More gridding options
2014-05-18 18:08:34 -07:00
Kevin Lange
6379aa19ff
Bring a few more apps up to speed with new yutani features
2014-05-18 13:57:33 -07:00
Kevin Lange
068f933a71
Kill some excessive debug output in the terminal
2014-05-18 12:24:17 -07:00
Kevin Lange
2675532013
Add a terminal option to disable rounding resizes to cell widths
2014-05-18 12:18:34 -07:00
Kevin Lange
6e028b6550
left-right tiling
2014-05-18 12:15:18 -07:00
Kevin Lange
3cb7b18c60
Client-initiated window drag
2014-05-18 11:54:20 -07:00
Kevin Lange
d9830f7989
Major refactor of panel
2014-05-12 20:11:58 -07:00
Kevin Lange
c231d1c090
Cleanup some direct system calls in userspace
2014-05-11 17:40:16 -07:00
Kevin Lange
4d310b3c03
Make sure wallpaper and panel clean up dead children
2014-05-10 20:09:16 -07:00
Kevin Lange
bcb86108ce
Fix terminal damage rects
2014-05-10 14:02:49 -07:00
Kevin Lange
c042d04fc0
remove extraneous debug output
2014-05-09 23:04:30 -07:00
Kevin Lange
0061105b29
Make the alt-tab slick and operate as expected
2014-05-09 23:03:47 -07:00
Kevin Lange
d3273d934a
Simple key binding system, plus alt-tab and ctrl-alt-t
2014-05-09 22:01:24 -07:00
Kevin Lange
ee9ff92b60
Clean up some legacy /etc stuff
2014-05-07 00:10:34 -07:00
Kevin Lange
50824abdec
And actually load the right file...
2014-05-05 22:03:57 -07:00
Kevin Lange
4bcd567bb5
Uh, draw the logout button for the logout button
2014-05-05 22:00:20 -07:00
Kevin Lange
2fbc220546
Cleanup panel
2014-05-05 21:47:45 -07:00
Kevin Lange
c6dd91a113
Maintain window ordering in panel list
2014-05-05 21:18:13 -07:00
Kevin Lange
1bef69e527
Panel icons for game and julia fractals
2014-05-03 17:51:33 -07:00
Kevin Lange
49aebbbb8d
advertise windows in ttk
2014-05-03 17:28:53 -07:00
Kevin Lange
0947432963
Actually make an effort to release textures from closed windows
2014-05-03 15:41:16 -07:00
Kevin Lange
a4b70a6cda
Rudimentary fullscreen shortcut
2014-05-03 15:36:09 -07:00
Kevin Lange
15ff21f104
Support icons other than the precached ones
2014-05-03 13:51:37 -07:00
Kevin Lange
9fce12f10c
Only used scaled rendering if icon is not correct size
2014-05-03 13:22:40 -07:00
Kevin Lange
601768c4bf
Panel icon support
2014-05-03 13:20:16 -07:00
Kevin Lange
d55c5953e1
Handle focused windows properly
2014-05-03 12:22:16 -07:00
Kevin Lange
2070d255e2
New window advertisement format
2014-05-03 12:07:03 -07:00
Kevin Lange
2d7b15b231
Don't readvertise RPG window every time
2014-05-02 23:20:48 -07:00
Kevin Lange
5d4b0df120
Make sure toast daemon doesn't block its death signal
2014-04-29 00:52:31 -07:00
Kevin Lange
74d710fe5f
Supplementary plane support (emojis)
2014-04-29 00:29:19 -07:00
Kevin Lange
29841b03fc
Fix waitpid calls to account for EINTR
2014-04-29 00:28:41 -07:00
Kevin Lange
4d8335ad75
Implement proper wait/waitpid.
...
This is a pretty big commit, so let's run through it in parts:
- All of the userspace changes are to switch away from syscall_wait
Mostly, this is to waitpid; some things were tweaked to do things
"properly" instead of waiting for particular processes. Init has
been fixed to do a proper spin wait.
- syscall_wait is gone - as are its uses. newlib bindings have been
using just waitpid for a while now.
- waitpid now performs like a Unix waitpid
- process reaping is no longer a "do this on next change thing":
it happens when a process is waited on, like it should
(That means we can have real zombies: terminated processes that
have not yet been waited on)
- Reparenting of children to init has been implemented, so you
can fork-daemonize!
Overall, this is pretty big... So I hope it doesn't break everything.
2014-04-27 01:37:33 -07:00
Kevin Lange
cb19356d50
Break out some magic numbers in toast daemon
2014-04-26 18:05:56 -07:00
Kevin Lange
d79bd92b6c
Updated toast theme
2014-04-25 23:16:58 -07:00
Kevin Lange
273b4ce9fa
Don't draw logo after login
2014-04-24 22:41:23 -07:00
Kevin Lange
a56a6a6f9c
fix some dumb stuff in Draw
2014-04-24 22:38:53 -07:00
Kevin Lange
1487ad17e5
Fix focus default in terminal
2014-04-24 22:36:20 -07:00
Kevin Lange
af6ad29235
Finish port of ttk-demo to yutani
2014-04-23 21:15:12 -07:00
Kevin Lange
1b3dcea6a1
Toast notification daemon
2014-04-21 19:46:38 -07:00
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
140f5a71e0
Reenable scrollback (bit glitchy)
2014-04-19 19:51:11 -07:00
Kevin Lange
6300959b12
Ensure thread safety during window buffer things
2014-04-19 19:11:10 -07:00
Kevin Lange
05e3276858
Workaround a weird glitch in newlib's malloc
2014-04-19 19:10:44 -07:00
Kevin Lange
40124cac49
various minor pieces of cleanup
2014-04-19 18:37:37 -07:00
Kevin Lange
6c5a14c839
Fix timings for logo animation in login window
2014-04-19 18:12:13 -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
c5c895bc06
Don't send sigint to wallpaper on session exit
2014-04-19 17:11:07 -07:00
Kevin Lange
30d4eade35
fix missing break in game
2014-04-19 17:08:14 -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
9e152263c7
fix terminal rendering on scroll
2014-04-19 15:00:26 -07:00
Kevin Lange
68892b9023
Terminal should only resize to nice sizes if it can.
2014-04-18 20:07:46 -07:00
Kevin Lange
fb67eca4ff
support resize in terminal
2014-04-18 19:46:05 -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
092b08e496
Use an asynch poll loop to eat events in rpg demo (like we used to)
2014-04-16 18:51:09 -07:00
Kevin Lange
939749edf9
unbork terminal
2014-04-16 11:18:40 -07:00
Kevin Lange
9a985ff5fc
Speed up terminal rendering a bit with regions
2014-04-16 00:59:58 -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
16d7a9e032
Make wallpaper icons work again
2014-04-15 21:27:07 -07:00
Kevin Lange
d48b00a767
Kill window.h/window.c
2014-04-15 21:22:45 -07:00
Kevin Lange
262f06a979
port a bunch of other things
2014-04-15 21:16:46 -07:00
Kevin Lange
32fca2fa1b
port make-it-snow to yutani
2014-04-15 20:43:08 -07:00
Kevin Lange
0c46b42667
port cairo and pixman demos
2014-04-15 20:38:47 -07:00
Kevin Lange
6065112552
port teapot to yutani
2014-04-15 20:31:14 -07:00
Kevin Lange
4801031d6d
port gears to yutani
2014-04-15 20:22:12 -07:00
Kevin Lange
80854c820f
fix missing free from yutani poll
2014-04-15 20:22:02 -07:00
Kevin Lange
0ba7947052
port clock-win to yutani
2014-04-15 20:08:21 -07:00
Kevin Lange
39af77be57
port drawlines to yutani
2014-04-15 20:08:12 -07:00
Kevin Lange
b8551d2174
Kill the old compositor
2014-04-15 19:45:56 -07:00
Kevin Lange
c08aa78052
Make draw-beta super speedy
2014-04-15 00:04:39 -07:00
Kevin Lange
73b0fd1f6c
Verify mouse events work with a port of Draw
2014-04-14 23:46:13 -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
d85f3fd4ce
Resurrect vga terminal
2014-04-11 20:03:01 -07:00
Kevin Lange
a5621fee66
prepare glogin-beta for eventual cairo port
2014-04-10 21:59:03 -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
b53d912e3e
Updated login screen
2014-04-01 21:23:56 -07:00
Kevin Lange
3140c8e4b2
Disable animations for backrounds and panels
2014-04-01 21:22:58 -07:00