Commit Graph

468 Commits

Author SHA1 Message Date
okan
7b8f1156d3 kill another long gone proto 2008-06-12 19:10:56 +00:00
okan
ef151e79af remove old (moved) code
ok oga@
2008-06-12 18:55:35 +00:00
okan
ad2ae8461f instead of forcing the ptr in the middle everytime, be more 'calm'; keep
the ptr still unless it moves out-of-bounds, then just follow the edge.

brought up by todd@

ok oga@
2008-06-12 18:32:06 +00:00
okan
94f0aa5a59 place the pointer in the middle of the window after resizing with grab,
just like keyboard resize.

from Edd Barrett

ok oga@
2008-06-12 05:10:24 +00:00
okan
84aeb967ba ignore if non-zero expose events, for we could be covered by multiple
windows; merely an optimization.

ok oga@
2008-06-12 05:01:13 +00:00
okan
0d911cac19 re-work client_placecalc()
- make sure new clients sit inside the current screen
- respect 'gap' placement on new clients

ok oga@
2008-06-12 04:59:51 +00:00
okan
45b2fad725 Enter -> Return, to be consistant and correct.
found the hard way by johan and discovered by oga.

"do it" oga@
2008-06-05 14:29:01 +00:00
okan
f42ad31e00 prevent trying to exec a null char; could potentially happen with a
canceled or empty searchstr.

ok oga@
2008-06-05 04:01:37 +00:00
okan
9005249c59 actually honor termpath and lockpath if specified in cwmrc.
"now" oga@
2008-06-05 00:07:05 +00:00
okan
2abd40cbdb "Meta is a perfectly well defined concept in X (The keys bound to the
Meta_L or Meta_R keysysm).  no need to redefine it roughly there" - matthieu@
2008-06-03 21:27:47 +00:00
okan
ddd8d269ff make sure to take bwdith into account when placing a new window.
ok oga@
2008-05-23 18:57:35 +00:00
oga
6d57649414 Grab the keyboard when we initialise the menu. This stops the keyboard
shortcut code stealing our events in some cases.

"put 'er in" okan@.
2008-05-23 18:48:57 +00:00
oga
bad8c87b4a Make menu_filter handle mouse movement too. This enables the keyboard
search dialogues to be manipulated with the mouse, too. It also allows
me to shrink the codebase further by killing grab_menu().

One known issue with highlighting the first entry in a search dialogue,
that'll be fixed soonish.

ok okan@, tested by Edd Barrett and todd@.
2008-05-21 14:11:19 +00:00
oga
ca512ce795 Pull out the behaviour in grab_label and search_start into one utility
function menu_filter(). The plan is to eventually merge in grab_menu too.
Shrinks the code a fair bit.

Also, change XMaskEvent for XWindowEvent to prevent getting exposes for other
windows. This is particuarly noticable on slow machines with a LOT of xterms
(todd, you're an odd man).

ok okan@, todd@.
2008-05-20 14:50:51 +00:00
oga
f8b4088fad General cleanup.
ok okan@.
2008-05-19 18:53:09 +00:00
okan
88bce60b1c stop normalizing search input; searching and matching are still
case-insensitive.  since this was the only use of normalizing input,
simplify as well.

allows one to exec with mixed case unmatched commands.

"works for me" oga@
2008-05-19 18:07:53 +00:00
oga
e13d74cfcc Function prototypes should not have parameter names in them. These must
have been missed last time i knfed this.

ok okan.
2008-05-19 17:32:22 +00:00
okan
d07a7f737f client_cyclenext() -> client_cycle() since we now pass an arg.
removes a stray proto as well.

discussed with and ok oga@
2008-05-19 17:24:19 +00:00
oga
796006fd7f allow an autogroup value of 0 to mean no group. This means you can set
automatically "sticky" (in the traditional sense of the word) windows in
autogroup mode.

Based on an initial diff from Andrew Fresh, thanks!

ok okan@.
2008-05-19 17:13:55 +00:00
okan
7f3adeacc7 as done with cycle/rcycle, make prev/next group switching one kbfuncs
and use a flag; adjusted to match and rename to {r,}cycle.

"ok, since i came up with the same thing" oga@
2008-05-19 17:11:19 +00:00
oga
80fd601708 Use the XGrabKeyboard hack in for alt-tabbing as well. This stops the
mru getting the order messed up when gvim/xpdf et all steal key events.

While i'm here, change the logic in client_cyclenext() to use break instead
of goto, it's nicer that way.

Thirdly, instead of two different kbfuncs, just use the one and a flag.

"put your cycle diff in so I can pkg_delete gvim" okan@
2008-05-19 15:17:50 +00:00
okan
0a4376b166 finally implement keyboard binding for group toggling
idea for the
    "slightly-less-abhorrent-hack-but-a-hack-nonetheless-TM" from oga@

grab and ungrab the keyboard to get around some silly X apps that like
stealing events

ok oga@
2008-05-19 12:56:58 +00:00
okan
98aad18f7d send the correct x/y coordinates to XConfigureWindow()
fixes some windows that seem as if they don't fit; noticed by Edd Barrett.

ok oga@
2008-05-18 20:06:36 +00:00
okan
0e709156e6 remove extra calls to client_draw_border()
ok oga@
2008-05-18 20:00:16 +00:00
okan
8d2a0490e4 fix backwards logic in example; found by oga@ 2008-05-18 19:57:43 +00:00
oga
ca54149838 Fix two problems with conf_unbind():
1) it used TAILQ_FOREACH() when it's removing entrys from the list, this
   is bad.
2) We didn't free key, so there was a small memleak too.

also rework conf_bindname's logic slightly to be more simple.

ok okan@
2008-05-18 19:47:19 +00:00
oga
61bdc5d36a Kill conf_get_int(), it was a silly function anyway.
Since it's only used once just put the (simplified) logic into
conf_client() instead. This  means we can kill an enum and
CONF_IGNORECASE, too.

ok okan@
2008-05-18 19:43:50 +00:00
oga
86b3e4dc4d group_ctx->name is only used in this one function, and for now it
corresponds directly to the static list of group names. Just use the
static list and stop strdup()ing a new version for the context struct.
Since that never got freed this also fixes a small memleak.

Kill some unused variables while i'm here.

ok okan@
2008-05-18 19:38:18 +00:00
oga
e30f288bf4 When we're cleaning out the lists in parse_config and conf_clear it's a
lot simpler just to do while (entry = TAILQ_FIRST(head)) than to do a
for () over the whole lot. Simpler, shorter and probably faster.

ok okan@
2008-05-18 19:34:09 +00:00
okan
c3eca00a7c - re-order and mostly re-write cwmrc(5)
- merge example config file into cwmrc(5) and remove (little good in here)

feedback from jmc@ - thanks!

ok simon@
2008-05-18 19:33:36 +00:00
okan
662115e25e fix cwm's current XShape support from Edd Barrett -thanks.
XShape events should be handled at some point.

ok oga@
2008-05-17 03:59:54 +00:00
oga
4539521994 KNF, no binary change.
From Pierre Riteau. Thanks!
2008-05-15 22:18:00 +00:00
okan
6c44f202a4 tiny bit of knf
ok oga@
2008-05-15 21:56:21 +00:00
matthieu
c6cf53ff4a Explicitly disable rplay. Found by mbalmer@ 2008-05-11 20:36:28 +00:00
tobias
88f967a8bd Signal handler of SIGCHLD calls waitpid() which sets errno on error. To
avoid clubbering of errno in normal context, save_errno got introduced.

ok oga
2008-05-06 15:12:04 +00:00
oga
519744a58e Rework the alt-tabbing code to be a lot simpler.
Diff mostly from Edd Barrett, with some minor changes from me.
Unfortunately the issue where apps like gvim and xpdf are stealing
keyrelease events causing the ordering to be messed up, but this is a
lot better. A fix for the aforementioned issue shall be forthcoming,
once a good one's been found.

ok okan@, also tested by todd@
2008-05-01 18:01:13 +00:00
simon
73b49edae1 Allow slashes in unquoted strings.
From Pierre Riteau
Makes sense to oga@
2008-04-29 20:17:28 +00:00
okan
31b5fe3b59 nits from Pierre Riteau - thanks!
ok oga@
2008-04-28 01:27:46 +00:00
matthieu
a8dfa1fd5d Add 2 files added with 1.0.4. 2008-04-21 06:04:31 +00:00
matthieu
9dbb6c9bfd Update to xset 1.0.4 2008-04-20 16:47:32 +00:00
matthieu
25faa3f792 update to xrdb 1.0.5 2008-04-20 16:42:58 +00:00
matthieu
a99339125b Update to xprop 1.0.4 2008-04-20 16:36:07 +00:00
matthieu
b0446f754a Update to xkbcomp 1.0.4 2008-04-20 16:32:06 +00:00
matthieu
33acf34151 Update to xinit-1.0.8, while preserving local changes. 2008-04-20 13:46:02 +00:00
matthieu
e14d5aefcd Get rid of the Xwrapper hack. OpenBSD doesn't support XFree86 3.3.x anymore. 2008-04-20 13:25:46 +00:00
matthieu
4aab415a58 update to xev 1.0.3 2008-04-19 16:59:34 +00:00
matthieu
5e9eca7e93 update to xdm-1.1.7 (No changes on OpenBSD). 2008-04-19 16:54:56 +00:00
matthieu
40cc08d6c3 update to x11perf 1.5 2008-04-19 16:23:00 +00:00
matthieu
a993561bd4 update to twm 1.0.4 2008-04-19 15:43:39 +00:00
matthieu
6f491b67d8 Update to xrandr 1.2.3. 2008-04-19 14:40:52 +00:00
oga
eb613a1bb7 merge kbfunc_{ptrmove,client_{move,resize}} into one function that takes a flag,
this code was almost identical...

ok okan.
2008-04-16 13:47:29 +00:00
oga
fb651469ee remove infowin. It slipped out of the last commit, for some reason. 2008-04-16 13:40:34 +00:00
oga
f062e958e0 Replace a few leftover calls to strdup and calloc with xstrdup and xcalloc
respectively.

ok okan.
2008-04-16 13:38:09 +00:00
oga
9aedc9e805 Remove screen_infomsg(), nothing uses it.
ok okan.
2008-04-16 13:35:37 +00:00
oga
8a66857b72 kill an unused struct member.
ok okan
2008-04-16 13:33:26 +00:00
oga
8b3d596db5 make the argument parser for commands accept quoted strings, while i'm
there make u_spawn use exec_wm (renamed to u_exec) for it's execution to
remove duplicated code.

This means constructs like this work in .cwmrc:

bind CM-t "ssh -Y 192.168.1.2 \"xterm -e top\""

or alternatively:

bind CM-t "ssh -Y 192.168.1.2 'xterm -e top'"

"in it goes" okan@.
2008-04-15 21:20:56 +00:00
oga
5559ba08b3 Kill dirent_isdir() and dirent_islink() nothing used them since the new
parser went in.

ok okan.
2008-04-15 20:26:50 +00:00
oga
26beb05af2 hit it with the knf stick. 2008-04-15 20:24:41 +00:00
oga
a101e9a0c8 Add "gap" support to .cwmrc. The options put in here make gaps on the edge
of the screen where an application won't be {,vert}maximized over. used for
placing a statusbar or something like xclock.

Patch from Edd Barrett, with input from myself and okan. Thanks!

ok okan@.
2008-04-15 18:46:58 +00:00
okan
36cf099f9d - add vi keybindings to search
- allow for ctrl-h as well

discussion with and ok oga@
2008-04-15 18:33:13 +00:00
okan
e588092d97 malloc -> calloc
suggested by and ok oga@
2008-04-15 18:22:08 +00:00
matthieu
766b9c6928 regen 2008-04-12 17:57:53 +00:00
matthieu
fd01a78b07 mkfontscale 1.0.4 2008-04-12 17:52:43 +00:00
matthieu
58b18c30eb regen 2008-04-12 17:51:44 +00:00
matthieu
b8c22531e6 mkfontdir 1.0.4 2008-04-12 17:49:58 +00:00
okan
3174a0bb47 remove alt-tab menu
discussed with a few

ok oga@
2008-04-09 18:10:47 +00:00
oga
edd5ee518b No cookie for okan.
fix use-after-free that broke exec's path getting stuff.

``paths'' isn't used anymore, but pointers to within that array are still
used in the next loop. delay freeing it until after then.
2008-04-08 17:38:27 +00:00
okan
fdb2248a19 better 'quit' keybinding default (CMS-q)
feedback from oga@ and simon@

ok oga@ simon@
2008-04-08 14:12:28 +00:00
simon
2fc4faf28a Make _xev_quit "volatile sig_atomic_t" for proper correctness.
Noticed by oga@, thanks!
2008-04-08 00:09:50 +00:00
simon
8797c69ac9 Add quit function, bind it per default to CM-q and change exec_wm
binding to CM-w.

Inital diff from Gleydson Soares
Feedback from oga@ and okan@

ok oga@
2008-04-07 23:47:09 +00:00
okan
33d3a7edf1 - use $PATH before _PATH_DEFPATH, from Tim van der Molen
- plug leak, noticed by oga

feedback and ok oga@
2008-04-05 21:09:19 +00:00
simon
3bf9d124cf Sync usage() with reality and manpage.
"ok, but no cookie" oga@
2008-04-03 13:58:57 +00:00
matthieu
84ff75cce6 Clear the password as early as possible in the BSD auth case. ok deraadt@ 2008-04-02 20:08:52 +00:00
oga
da6f5be7c3 Fix a couple of issues with the maximization code.
If a window is vertically maximized, then resized, before the MAXIMIZED
flag wasn't removed, now it is. so doing a resize then does the right
thing.

Also, separate flags are needed for vertical and normal maximziation,
else when you do vertical-maximize, followed by maximize, the window
returns to it's original size.

ok simon@, okan@
2008-03-26 15:45:42 +00:00
matthieu
bbc31bf586 Introduce bsd.xconf.mk to set default config variables used
at several places in the Xenocara build in a central place instead
of duplicating the checks all over the place. ok oga@.
2008-03-25 23:41:50 +00:00
matthieu
d00d2dd896 msg_controllen has to be CMSG_SPACE so that the kernel can account for
each cmsg_len (ie. msg_controllen = sum of CMSG_ALIGN(cmsg_len).  This
works now that kernel fd passing has been fixed to accept a bit of
sloppiness because of this ABI repair.
lots of discussion with kettenis. From deraadt@
2008-03-24 21:24:52 +00:00
simon
0141485332 Replace the symlink configuration scheme with a simple yacc parser as
found in other places of the tree.  Remove sticky and font commandline
options and add another one for alternative config locations.
Split off cwmrc(5) from cwm(1), nuke #ifdef __OpenBSD__ while there.

tested by various kind people, feedback from oga@ and okan@ - thanks!
ok oga@, jasper@, okan@
2008-03-23 15:09:21 +00:00
okan
f8bcc1f10d allow autogrouping and sticky mode to work together
ok oga@
2008-03-22 21:34:07 +00:00
oga
d8e2d259e2 Rip out, burn, and dance around the grave of group-edit mode.
I've yet to speak to anyone who uses it, so just kill it.

You can still add/remove from groups using the mouse binding.  Groups
may get a re-work sometime soon if i have a stroke of genius.

knocks about 4k off the i386 binary for me.

ok okan@, todd@.
2008-03-22 15:09:45 +00:00
oga
420d083afc Remove a bunch of unused variables and incorrect comments.
"ok with me" okan@.
2008-03-22 14:09:02 +00:00
merdely
68bd73c06e Make xterm(1) and resize(1) correctly refer to X(7) instead of X(1).
ok matthieu@
2008-03-22 12:40:02 +00:00
matthieu
b3afb49cf6 Get rid of strcat() and strcpy(), fixing a potential stack overflow.
With help and ok deraadt@, millert@, oga@.
2008-03-20 20:45:10 +00:00
matthieu
ffca1db806 update to xterm 234. tested by merdely@, 'looks ok' deraadt@. 2008-03-19 21:15:46 +00:00
matthieu
dd869f4ed4 Remove a useless use of cat pointed by espie@ some time ago. 2008-03-19 20:31:09 +00:00
oga
4685ce9dbc As mentioned in my last commit, there was an issue where the switching
code would always assume that the number of windows to switch to was
three if there were more windows hidden. Check for CLIENT_HIDDEN when we
count. Now it counts correctly.

ok simon@.
2008-03-19 00:18:28 +00:00
oga
92c71b48a2 client_{,r}cycle() doens't need a client. so get rid of KBFUNC_NEEDSCLIENT.
this prevents the issue where you close or hide a window, and end up
with no client selected (you're on the root window). When that happened
alt-tab failed.  This, however, exposed to me a few more issues in the
alt-tabbing code:

-the code to detect how many lines we need looks bogus (you always get
three)

-alt-tabbing when everything is hidden always reawakes the most recent
window.

Fixes for these will be forthcoming.

ok simon@.
2008-03-18 00:48:56 +00:00
matthieu
7830df18ed Regen with autoconf 2.59-p2, with AM_SANITY check zapped. 2008-03-15 18:08:24 +00:00
matthieu
16236de311 Repair msg_controllen. In those cases it should just be
CMSG_SIZE(sizeof(int)), not sizeof(buffer) which may be larger because
of alignment. Based on fixes in base system.
2008-03-15 17:14:11 +00:00
sthen
4756cae49c typo fix. ok oga 2008-03-14 14:38:10 +00:00
matthieu
f0623845fe Correct CMSG_SPACE and CMSG_LEN usage, same fixes as in the base system.
ok deraadt@
2008-03-13 06:53:06 +00:00
matthieu
6da4224300 use explicit path to openssl. Reported by Dave Del Debbio. Thanks. 2008-03-07 07:48:10 +00:00
matthieu
d5cb652a3f Change the default for XSRCDIR to /usr/xenocara. ok deraadt@ 2008-03-03 07:01:44 +00:00
matthieu
ef3b0a0644 Fix initialization of vmin. This has caused script(1) to exit immediatly
when started inside an xterm that started with vmin=0 (because it had
no tty to inherit the correct value from). ok kettenis@, krw@, oga@.
2008-02-24 22:22:48 +00:00
oga
e2e723ac91 Fix a build race in ssh-askpass. This shouldn't happen, so XXX it.
ok matthieu@.

xenocara is now locked.
2008-02-22 11:35:22 +00:00
todd
655aabf8b5 puffy 4.3 2008-02-21 08:10:52 +00:00
todd
f076f9f5f7 no dri/GL apps for landisk; ok matthieu@ 2008-02-21 08:04:44 +00:00
oga
43f7e32207 add exec_wm to calmwm.h, it was missing (bad ian@!)
Also, exec_wm() currenty err()s out if something failed with the exec,
killing the currently running wm. This is bad. Replace the err() with
warn() instead.


from Gleydson Soares, thanks!
2008-02-20 13:00:18 +00:00
oga
95429f5a28 Typo: s/supression/suppression
from Pierre Riteau, thanks!
2008-02-20 12:56:10 +00:00
miod
1d9ffcbd8d Disable a few more binaries on m88k due to static linking. 2008-02-16 21:41:37 +00:00
matthieu
e8985d1d21 Change the default pointerMode for real now. 2008-02-16 09:49:28 +00:00