aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2017-10-02Use std UnixListener/UnixStreamMatias Linares3-13/+9
2017-10-02Fix focus on windowsMatias Linares1-0/+1
2016-09-04Better path handling for socketMatias Linares1-8/+29
2016-09-04Add Mouse drag support.Matias Linares9-18/+166
This concludes the first 'release' :p.
2016-06-04Allow unknown lints for rust stableMatias Linares1-0/+2
2016-06-04Fix unfocused window bug.Matias Linares1-2/+9
2016-06-03Add Clippy as dependency.Matias Linares8-53/+56
This brings a lot of clean up on the code.
2016-05-25Add a lazy_static connection to the X serverMatias Linares4-28/+104
2016-02-07Change the plain exec_func with something better.Matias Linares1-2/+12
2016-01-27Refactor resize sticky codeMatias Linares2-39/+60
2016-01-27Refactor move sticky.Matias Linares6-42/+112
2015-12-27Fix some problems @ removing a window.Matias Linares1-2/+14
When we wanted to remove the window idx 0 within the list. the current index went to usize::max_value always. This add a check for the case when we have more than one window and removes the window 0.
2015-12-27Better fullscreen handling.Matias Linares3-15/+26
2015-12-07Implement desktops.Matias Linares8-117/+286
It's somewhat buggy. But works :). There're 2 desktops only for now, maybe later I will implement something more dynamic
2015-11-30Add resize-win-sticky.Matias Linares6-7/+102
The move window sticky is working weirdly. The movement should be using the attrs.x and attrs.y instead the attrs.x/y + attrs.width/height. But it's working :).
2015-11-29Begin ef EWMH support and sticky movementMatias Linares5-4/+266
The implementationn of the EWMH and ICCCM support is incomplete. I need to check how to implement on the right way.
2015-11-28Better socket handlingMatias Linares5-92/+237
The socket interface now allows almost everything that vould be done by the internals of the window manager. Also the Window manager now closes fine (on a success exit).
2015-11-27Little implemented the socket parser.Matias Linares2-2/+36
Just two functions for the parsing of the socket. nothing special.
2015-11-22Move the file descriptor of the socket to the select event.Matias Linares2-5/+4
2015-11-22Death to the threads.Matias Linares8-109/+102
All the socket stuff is done syncing it with select calls so we can get either a X11 event or a Socket event. Also cleanup the C mess, it's done all in rust now :).
2015-11-22Cleanup.Matias Linares1-11/+0
Nom it's not needed for now.
2015-11-22Add socket functionality.Matias Linares5-76/+117
Something simple, but it works pretty well. The mapping between the strings that comes from the socket and functions, modifiers, keys, etc. needs some rewrite because now there's a manual mapping. The autostart file shows some functionality on how it will work. Since the next_xevent is ticking on 1s, it's preferible to make the writes on the socket all together, otherwise will pass 1 sec between two calls.
2015-11-22next_xevent don't block anymore!Matias Linares7-20/+90
Now the next_xevent (from the safex11) will not block forever. So we can listen the socket without doing some thread stuff.
2015-11-19Implemented socket handler.Matias Linares3-84/+176
First steps on the socket handling. Dotwm will use this for communication between different clients trying to modify the behaviour (just take a look into hlwm's herbstclient program). It's needed a parser for the configuration, make the protocol and get it working better. For now I'm checking if it's anything into the socket every time I've a XEvent. But it shouldn't be this way.
2015-11-16Add MIT LICENSEMatias Linares6-0/+12
2015-11-15Clean of zombie process.Matias Linares3-30/+17
The spawn of process within the exec_cmd function now are handled by a new function (collect_zombies). For reference, this code was taken from the _zombie_ crate.
2015-11-15Move exec and add binding to the main.Matias Linares2-42/+17
The bindings don't need to be handled on the window manager This would be useful for the client/server feature.
2015-11-15Update to libc 0.2Matias Linares1-1/+1
2015-11-09ExecFn Rewrite.Matias Linares3-48/+121
This now allows to call a ExecFn with a &mut DotWM by parameter. This help to do some things like do the window swapping. through mod4 + tab. Also the bindings are not longer on the wm, because this generates some problems with the ExecFn. Also, now it's posible to resize the windows :)
2015-11-09Focus handling.Matias Linares5-4/+57
For now this have some bugs. Some complex programs (i.e. thunar, firefox) will spawn a lot of XCreateEvents and the last window it's not focused correctly. Also the enter notify should work on an input instead hovering the window
2015-11-08Initial commitMatias Linares6-0/+676
This initial commit has the following: * We can spawn a terminal. * Given a new window, we can move it around the screen, but only the window that was created, all the other windows disappear on the void, so.. :( and that's it