Commit Graph

886 Commits

Author SHA1 Message Date
matthieu
3726a05d85 Document aborting the process with ESC. 2009-11-26 11:02:35 +00:00
matthieu
cff976af37 Allow the ESC key to interrupt the calibration process. 2009-11-26 10:58:45 +00:00
matthieu
bbbb8c20ea Better error handling during device selection. 2009-11-25 23:00:57 +00:00
matthieu
f194ce2bfc Search for calibration properties atoms earlier, to avoid a screen
flash when they are not present.
2009-11-25 19:43:05 +00:00
matthieu
2733f18bd5 New, XInput based, version of xtsscale(1).
XInput is used to get raw events from the device and device properties
are used to send the data back to the X server.
Calibration can now be done without restarting X.
2009-11-25 18:30:13 +00:00
tobias
44eea5f75c Corrected grammar in comment.
ok (and better style suggestion by) oga, okan
2009-11-22 21:38:50 +00:00
matthieu
82b21994c2 Fix small merge glitch. 2009-11-08 10:27:36 +00:00
matthieu
aa9c87d712 Missed files in previous update. 2009-11-08 10:21:41 +00:00
matthieu
58d19af4a2 Update to xcompmgr 1.1.5 2009-11-08 10:14:59 +00:00
matthieu
a754bcb2f1 Missed file in previous update. 2009-11-05 19:50:08 +00:00
matthieu
8ca7440026 regen 2009-10-31 21:47:52 +00:00
matthieu
46b4d11241 unused file. 2009-10-31 17:07:12 +00:00
matthieu
d7db8936f6 Fontcache is gone. 2009-10-31 17:05:32 +00:00
matthieu
51df35cad6 Update to xterm 250 2009-10-31 14:11:57 +00:00
matthieu
b3c79eb869 Finish update to 1.0.2: missing files. 2009-10-24 17:02:14 +00:00
matthieu
8230162872 Update to xwud 1.0.2 2009-10-24 15:44:14 +00:00
matthieu
564f273b51 Update to xwininfo 1.0.5 2009-10-24 15:37:50 +00:00
matthieu
5c52321f03 Update to xwd 1.0.3 2009-10-24 15:34:20 +00:00
matthieu
d5162c9a3c Update to xvinfo 1.1.0 2009-10-24 15:27:08 +00:00
matthieu
13d20df973 Update to xsetroot 1.0.3 2009-10-24 15:23:17 +00:00
matthieu
23e0fdf2ad Update to xrefresh 1.0.3 2009-10-24 15:18:49 +00:00
matthieu
8a7b9482d5 Update to xrdb 1.0.6 2009-10-24 15:15:11 +00:00
matthieu
fe899414b6 Update to xprop 1.1.0 2009-10-24 15:10:42 +00:00
matthieu
a97776ca7f Update to xpr 1.0.3 2009-10-24 15:05:16 +00:00
matthieu
430009b415 Update to xman 1.1.0 2009-10-24 15:00:51 +00:00
matthieu
3337d84178 Update to xlsclients 1.0.2 2009-10-24 14:52:00 +00:00
matthieu
973f367b87 Update to xlsatoms 1.0.2 2009-10-24 14:48:18 +00:00
matthieu
02385edf52 Update to xkill version 1.0.2 2009-10-24 14:31:24 +00:00
matthieu
c7ac4d0b62 Finish 1.0.2 merge: removed files missed. 2009-10-24 14:28:19 +00:00
matthieu
f44a894376 Update to xkbutils 1.0.2 2009-10-24 14:25:00 +00:00
matthieu
f8f52ab1fb Udate to xinput version 1.5.0 2009-10-24 14:17:46 +00:00
matthieu
8a4dfaafb9 Update to xhost 1.0.3 2009-10-24 14:14:08 +00:00
matthieu
50b3664bc3 Update to xgamma 1.0.3 2009-10-24 14:11:55 +00:00
matthieu
3c1ea789d5 Update to xev 1.0.4 2009-10-24 14:07:05 +00:00
matthieu
658adee8db Update to xdriinfo 1.0.3 2009-10-24 14:03:09 +00:00
matthieu
f724ac0ee7 Update to xdpyinfo 1.1.0 2009-10-24 13:53:53 +00:00
matthieu
252286b3cb sprintf() -> snprintf() 2009-10-24 13:34:54 +00:00
matthieu
d98b1feacd update to xcmsdb 1.0.2 2009-10-23 20:50:22 +00:00
matthieu
5f8169f66e update to xclipboard 1.1.0 2009-10-23 20:46:20 +00:00
matthieu
78d88d8014 update to x11perf 1.5.1 2009-10-23 20:36:40 +00:00
matthieu
8bf5933d01 really update to smproxy 1.0.3.
(previous commit was done without updating anything)
2009-10-23 20:31:39 +00:00
matthieu
b2e66f9c00 update to smproxy 1.0.3 2009-10-23 20:28:32 +00:00
matthieu
a7bf3d9e64 update to mkfontdir 1.0.5 2009-10-23 20:17:18 +00:00
matthieu
d8c028716d update to mkfontscale 1.0.7 2009-10-23 20:14:10 +00:00
matthieu
aee867dd88 update to iceauth 1.0.3 2009-10-23 19:59:11 +00:00
naddy
e0924b72dd use openpty(3) to grab a pseudo-tty, patterned after xterm; ok matthieu@ 2009-10-13 21:11:08 +00:00
matthieu
75e28f55c7 update to setxkbmap 1.1.0 2009-10-10 10:33:01 +00:00
matthieu
9fb099a14a update to xbacklight 1.1.1 2009-10-10 10:22:10 +00:00
matthieu
aacbb9a89f update to xfs 1.1.0. 2009-10-10 10:12:48 +00:00
matthieu
00e4302533 update to xmodmap 1.0.4 2009-10-10 09:47:10 +00:00
matthieu
72710be2d2 update to xset 1.1.0. tested by naddy@ 2009-10-10 09:42:16 +00:00
matthieu
683b9ddb1b Revert to luit 1.0.3 for now. 1.0.4 breakage reported by naddy@. 2009-10-05 18:17:43 +00:00
matthieu
2e533db842 update to luit version 1.0.4. 2009-10-04 16:13:59 +00:00
matthieu
6dece721c7 Disable xtrap test clients. ok oga@ 2009-10-04 15:01:49 +00:00
matthieu
80cf1b72ef update to xrandr 1.3.2 2009-09-26 14:53:04 +00:00
matthieu
86728bc555 update to xmag 1.0.3 2009-09-26 14:49:36 +00:00
matthieu
bebee9da71 remove obsolete commands. 2009-09-26 14:45:03 +00:00
matthieu
614e0aa897 remove rstart, take #2. 2009-09-26 14:44:02 +00:00
matthieu
2b5f2a1839 Remove rstart. 2009-09-26 14:42:30 +00:00
matthieu
909f263119 update to xclock 1.0.4 2009-09-26 14:35:39 +00:00
matthieu
6dad7ec690 update to xauth 1.0.4 2009-09-26 14:32:12 +00:00
matthieu
fc72d75df9 Update to bitmap 1.0.4 2009-09-26 14:06:18 +00:00
matthieu
da78e706dc Update to bdftopcf 1.0.2 2009-09-26 14:04:52 +00:00
matthieu
d37cd34628 update to appres 1.0.2 2009-09-26 14:03:15 +00:00
oga
3bb2531f46 With Xinerama enabled, the borders of a maximized window will show up on
all adjacent screens. This patch hides the borders while the window is
maximized.

From Bertrand Janin; thanks!

ok okan@
2009-09-25 15:57:49 +00:00
sobrado
7c562918ba libXt is built with /etc/X11/app-defaults as the default search path,
not /usr/X11R6/lib/X11/app-defaults.

ok matthieu@
2009-09-23 20:02:22 +00:00
sthen
6b50184426 Update to xterm 248, fixing several bugs including a regression with
copy-and-paste. Works for martynas@, ok matthieu@
2009-09-19 00:03:36 +00:00
matthieu
23f548aa24 update to xterm 247, a small bug fix over version 246. 2009-09-05 16:06:57 +00:00
okan
d1b60130a8 re-introduce the intention of the change from rev 1.4 in menu.c here
instead, by moving the check for '\0' to only the places that it
matters.  hint and 50% of the diff from oga@, prodded by todd@

ok oga@
2009-09-05 16:06:15 +00:00
matthieu
3af530ab2b update to xterm 246. Has been in snapshots for some time. 2009-09-05 15:58:09 +00:00
tobias
6e4f4540c2 style
ok oga
2009-09-05 14:10:11 +00:00
okan
c3064dbf27 unroll the CCTOSC macro; from Thomas Pfaff
ok oga@
2009-08-27 01:38:08 +00:00
okan
2f17ef273a static; ok oga@ 2009-08-25 12:05:11 +00:00
okan
1facf8e143 we are not doing access control here, so replace the "check if file is
executable" goo with access(2).

originally from jacekm@ long time ago.

"i can live with that" oga@
2009-08-25 02:02:59 +00:00
oga
1a74c54fd8 Reduce duplciation of code for checking modifiers in key/mouse bindings.
shaves a bunch of bytes.

ok okan@
2009-08-25 01:44:39 +00:00
oga
9924c77a57 Instead of calling conf_bind*() 50 gazillion times in a row, store an
array with all the parameters in and just loop over that to setup the
default keybindings - it's so much easier to read.

okan@ "love love love"ed this
2009-08-25 01:42:05 +00:00
oga
78deb6c3b0 Instead of messing around everytime we do a resize, just clamp the
resize increments to a minimum of one, and use it unconditionally.

"you've convinced me, do it!" okan@
2009-08-25 01:32:40 +00:00
okan
30e985c9db unroll macro; ok oga@ 2009-08-25 01:26:09 +00:00
oga
081d2deacd Add a keybinding to allow horizontal maximisation of a window (CMS-enter).
based on a diff by Thomas Pfaff; thanks!

ok okan@
2009-08-24 23:54:41 +00:00
okan
5111e27310 bring together gathering, calculating and applying of size hints;
additionally, respect aspect ratio hints.

ok oga@
2009-08-24 23:49:04 +00:00
oga
67c21c1d1a Instead of having a function that just calls TAILQ_INIT on a global, use
TAILQ_HEAD_INITIALIZER() and drop the function.

ok okan@
2009-08-24 21:22:48 +00:00
oga
5407ee5608 instead of checking for flags in the client context, then removing them.
e.g.:

if (flags & flags_we_care_about)
	flags &= ~(flags_we_care_about);

just whack the flags unconditionally, it's simpler.

okan@ agrees.
2009-08-24 17:04:39 +00:00
okan
a75b749328 remove unnecessary Ar macros
ok jmc@
2009-08-08 17:27:51 +00:00
okan
fb65a7fcc0 remove unnecessary Dq macro; based on a diff from Martin Toft
feedback and ok jmc@, martynas@
2009-08-08 00:25:52 +00:00
matthieu
160be1ef33 Initialize ed.used_stdout at the beginning of do_extract() to avoid
reading uninitialized memory later.
Reported by Philip Guenther. Thanks.
2009-07-19 08:12:09 +00:00
oga
7230692acb use fnmatch to glob the entries in the exec menu.
allows shell globbing constructs such as *ctl, etc in the exec menu (m-?
by default).

Adapted from a diff from Thomas Pfaff, okan@ got almost the same diff as
me when reworking it, and oked this one.
2009-06-26 12:45:12 +00:00
todd
c4dd635c0a puffy 4.6 2009-06-26 12:33:59 +00:00
okan
d893a97dee static local functions and data; almost identical diff from Thomas Pfaff
ok oga@
2009-06-26 12:21:58 +00:00
okan
28840135ea tidy up startup/init routines
ok oga@
2009-06-23 21:52:38 +00:00
okan
e61fd04310 compact a bit by condensing a few if-else's; from Thomas Pfaff
"go on then" oga@
2009-06-20 00:55:41 +00:00
okan
a7dfb91b88 unroll XCALLOC/XMALLOC macros; since we use xcalloc/xmalloc all over the
place anyway, this makes things a bit more consistent; from Thomas Pfaff

ok oga@
2009-06-20 00:22:39 +00:00
okan
0230e26854 spacing 2009-06-20 00:19:56 +00:00
sobrado
9bc8348d66 `exec'' and `ssh'' are lowercase.
ok martynas@
2009-06-19 10:43:49 +00:00
sobrado
2de9f26c1d items on the first list should have full stops too.
ok martynas@
2009-06-18 20:44:40 +00:00
sobrado
b0a20e655b the on-line manual should use the same notation for key bindings
as the configuration file, this way writing configuration files is easier;
add a few missing interactive command (.Ic) macros to key bindings;
slightly improve spacing in the lists; other tweaks.

ok martynas@
2009-06-18 20:24:54 +00:00
okan
1183bd535d remove unnecessary casts; from Thomas Pfaff
ok oga@
2009-06-17 13:08:37 +00:00
okan
89d865166d re-factor parts of mouse move/resize bit to shrink and make more
readable; no behavior change

ok oga@
2009-06-17 12:45:01 +00:00
okan
96b7d95a17 move like defines to a central, logical location; no binary change.
aok oga@
2009-06-17 12:30:17 +00:00
jcs
17c4b628de typo 2009-06-06 23:33:20 +00:00
matthieu
1c68deb738 workaround for a problem that appeared with xterm 243 on arm cpus.
It dumps core in VTInitialize() if charproc.c is compiled with -O2.
The problem is in the lines 5610 to 5614 of this file, which were
added by xterm 243, but I can't see an obvious problem here.
2009-05-31 16:22:34 +00:00
okan
f18194f34c 'no' is the answer to the comment question: cc->name can't be NULL at
this point due to client_setname()'s work; remove this check.

ok oga@
2009-05-30 00:30:27 +00:00
okan
9e51da2d59 re-order a bit for readability.
"if it makes you happy" oga@
2009-05-30 00:30:17 +00:00
okan
56f901ac72 revert the 1.4 change - causes a double free noticed by grange@ a while
ago while using kazehakase (or clients that don't set a name).

ok oga@
2009-05-30 00:29:08 +00:00
sthen
01c9bf9a3c In movetogroup, check the window's current group and skip client_hide()
if it's the same as the active group. Was in my original movetogroup diff,
but it got simplified a little too far.  ok oga@
2009-05-19 12:49:37 +00:00
matthieu
224dd37703 update to xinput 1.4.2 2009-05-18 20:50:15 +00:00
okan
403de0648e nuke the leading underscore notation for local static functions - there
are far better ways to know.

"go for it" oga@
2009-05-18 00:23:35 +00:00
oga
099e0eb73d oops, we appear to have grown an extra prototype for group_only(), get
the secateurs out.
2009-05-18 00:17:46 +00:00
oga
01972f31ae Rip out the event layer and just use a static array of callbacks like
every other window manager since twm.

The event layer is very nice, very shiny, very flexible, and very much
underutilised. We don't need any of those shiny features so it's
probably better to earn ourselves 1k smaller text size instead.

ok todd@, okan@
2009-05-18 00:14:19 +00:00
okan
60e9431c86 redraw all borders at once on reload
"sure" oga@
2009-05-17 23:54:17 +00:00
okan
d3c904a333 a long time coming - re-work the way we deal with colors: since we're
using Xft(3), use it to select the font color as well instead of trying
to build one; properly allocate and free colors at-will, e.g. we now
have configurable colors.

feedback and ok's todd@ and oga@
2009-05-17 23:40:57 +00:00
okan
1a91924225 minor bit of knf, just to be consistent; oga@ doesn't mind that much 2009-05-17 23:37:52 +00:00
okan
b25495ebda unbreak 2009-05-17 22:48:47 +00:00
sthen
5dd486dee8 add a "movetogroup" function, which hides the current window from
display and moves it to another group. useful with the recently added
"grouponly" function, giving the ability to use groups as simple
virtual desktops (similar to e.g. xmonad, dwm and scrotwm).

this doesn't have default keyboard bindings; cwmrc(5) now shows how
you could use these functions (use M-1...9 for grouponly1...9 and
MS-1...9 for movetogroup1...9 to emulate the default dwm bindings).

ok oga@
2009-05-17 17:04:59 +00:00
sthen
662b00c143 redraw the border when unhiding a client window. fixes the situation where
you change to a different group and the mouse isn't over a window; previously
the border of the previously active window was highlighted but it didn't
actually have focus.

reads ok to oga@.
2009-05-17 16:51:43 +00:00
oga
11fa2e97eb add missing prototype. 2009-05-14 16:29:58 +00:00
oga
873b5b8ebb Add a new command (currently no default keybindings for it), grouponly[1-9].
This works like the group select binding, but hides all other groups.

So, the people who've been complaining that they don't get "virtual
desktops" in cwm may want to try this out in cwmrc (from memory, untested):

---

#cwmrc

# add new windows to the current group
set sticky

# automatically sticky windows. xclock for now.
# to make more windows sticky use group_toggle to unset their group
autogroup 0 xclock

# make the group selection keys hide other groups, emulate virtual desktops
bind CM-1 grouponly1
bind CM-2 grouponly2
bind CM-3 grouponly3
bind CM-4 grouponly4
bind CM-5 grouponly5
bind CM-6 grouponly6
bind CM-7 grouponly7
bind CM-8 grouponly8
bind CM-9 grouponly9

---

mostly by sthen, tweaks from me.

ok todd@, "if it works i'm ok with it" okan@, ok sthen@
2009-05-14 16:24:04 +00:00
okan
0eea198f30 right and middle mouse buttons swapped; from rgouveia@cosmico.net 2009-05-04 22:01:35 +00:00
okan
fcc63352ee no need to use the global here.
ok todd@ oga@
2009-05-04 19:13:33 +00:00
okan
d997637f54 properly document menu_unhide; tweak a patch from rgouveia@cosmico.net - thanks.
ok oga@
2009-05-04 18:05:21 +00:00
matthieu
033e24f23d update to xinit 1.1.1 2009-05-03 13:17:37 +00:00
oga
d95aa59b6a fix usage(). this bit me when I actually tried to use it. Now it matches
the manpage (which is correct).

ok matthieu@
2009-05-02 19:18:13 +00:00
matthieu
03806ef23c update to xinput 1.4.1 2009-05-02 15:24:13 +00:00
matthieu
eed3adbba8 update to xrandr 1.3.0 2009-05-02 15:21:24 +00:00
okan
ce9db1f7f3 fix the other 50% of xrandr cases; reported by sthen@
"commit that" oga@, ok sthen@
2009-05-01 17:50:20 +00:00
okan
94cef1175b don't sync more than 60 times per sec on resize and move; idea from scrotwm.
ok oga@ sometime ago
2009-04-15 14:10:07 +00:00
okan
cc291e2910 properly teardown X connection upon quit; static a few while here,
requested by oga@

ok oga@ sometime ago
2009-04-15 14:01:45 +00:00
okan
3a114084bf we include sys/param.h, so remove sys/types.h; sort while here.
ok oga@
2009-04-12 23:51:10 +00:00
matthieu
388c3eba67 Update to xterm 243. tested by naddy@.
Patch #243 - 2009/3/28

* revert change to default for allowTcapOps (request by Bram Moolenaar).
* reallocate result returned by xtermEnvLocale() to avoid reference to
freed memory after handling menuLocale resource.
* fix an old (X11R5) bug in tek4014 for switching fontsizes.
* add resource defaultString to make configurable the use of "#" when
pastes of UTF-8 text fail due to limitations in the current locale settings.
* make the set of selection target Atom's configurable by two new
resources eightBitSelectTypes and utf8SelectTypes, e.g., to use the TEXT
Atom in preference to UTF8_STRING (discussion with Stanislav Sedov
regarding koi8rxterm and the FreeBSD port).
* modify handling of TARGETS Atom by making it return exactly the set of
targets as those which xterm is currently providing.
* set MANPAGER and PAGER explicitly to /bin/cat in minstall.sh to work
around /etc/man.conf's with those variables already set (report by
Mar'yasin Semion).
* improve error-checking of tcap-query parser.
* add check for keyboard tcap), which ensures that terminal descriptions
containing the same string for shifted/unshifted keys will be seen by
tcap-query as only the unshifted key. (This would only happen with an
incorrect terminal description).
* fix conversion for input event-state to modifier-parameter which made
tcap-query feature not work with tcapFunctionKeys (keyboard type tcap).
* add "DEF_ALLOW_XXX" definitions to main.h to allow overriding the
default compiled-in values for "allowxxx" resources.
* remove check on bell-percentage added in patch #242, which disallowed
zero/negative values (Redhat Bugzilla #487829).
2009-04-04 15:10:44 +00:00
martynas
b2a47454e5 - avoid shadowed Mask declaration in menu_filter
- make _xev_reincorporate static
evmask naming oga@, input okan@.  ok okan@, oga@
2009-03-28 16:38:54 +00:00
matthieu
8264c1f76d Disable applications not maintained anymore by X.Org: rstart/rstartd and
proxymngr. ok todd@.
2009-03-28 15:38:46 +00:00
matthieu
47a95020af Update to xterm 242. Tested by jsg@. 2009-03-09 22:13:04 +00:00
matthieu
9aede42132 Remove deprected applications that have been disconnected for a while. 2009-03-08 13:40:19 +00:00
matthieu
c92ee53ccf regen 2009-03-08 09:49:03 +00:00
matthieu
8563657009 Update to xauth 1.0.3 + fixes from git head. Partially addresses system/6097. 2009-03-08 09:35:07 +00:00
todd
04a164dc63 puffy 4.5 2009-02-09 16:13:47 +00:00
martynas
af87ed9631 add 'moveamount' to cwmrc; it sets keyboard movement amount, making
it more useful on large screens
manpage tweak & ok jmc@
ok okan@, oga@
2009-02-07 21:07:00 +00:00
martynas
0c4060da89 remove leftover from mdoc.samples; ok jmc@ 2009-02-07 16:59:11 +00:00
martynas
33c5846d9b fix off-by-one in geom.[xy], after pwin changes. keyboard movement
to the rightmost or bottommost corners would confuse cwm:
- there's no way to get the window back
- tab cycling breaks
ok okan@, oga@
2009-02-03 22:20:31 +00:00
matthieu
65fb6f112c Better looking default resources for the XDM chooser.
ok pyr@, sobrado@.
2009-02-02 21:01:57 +00:00
matthieu
8fd38b9171 getLocalAddress(): return 127.0.0.1 if the hostname doesn't resolve.
This code already does this if IPv6 support is compiled in. It
was dereferencing a NULL pointer in the IPv4 only case.
2009-01-30 21:46:35 +00:00
matthieu
fef4aae88f regen 2009-01-30 17:18:13 +00:00
matthieu
384148c3d5 Fix a merge botch in xdm 1.1.8 update. 2009-01-30 17:17:19 +00:00
matthieu
5847d1746e Add more input checks. From "nobody@example.com" on bugs@. 2009-01-30 11:06:25 +00:00
matthieu
dbbba05dba xdm 1.1.8. 2009-01-29 22:18:35 +00:00
okan
ce211a10b8 remove Nscreens and x_screenname() - we really don't need them.
ok oga@
2009-01-27 02:16:20 +00:00
oga
e75ea3304d One of the most annoying things to do was restart cwm and lose all of
your group state. Fix this up by using an X Atom (_CWM_GRP) to store the
name of the group that we're using (the name, not the number is because
at one point we may make the group numbers dynamic). I've been talking
about this since c2k8. so CM-w means you keep all of your windows grouped
properly.

ok okan@, todd@
2009-01-27 00:42:53 +00:00
okan
95be5acd6a passing a null pointer to free() is valid; sprinkle a few free->xfree.
ok oga@
2009-01-23 20:47:45 +00:00
oga
b32f2133fb Whitespace nit.
pointed out by okan.
2009-01-23 20:07:20 +00:00
oga
ed5d1f7c8b Switch to using XInternAtoms for caching the atom numbers. Saves a pile
of function calls and server roundtrips.

ok okan@
2009-01-23 20:04:30 +00:00
okan
479c9127c8 move conf_clear() and add proto.
ok todd@ oga@
2009-01-23 19:00:59 +00:00
oga
9908d2b7cb Move the keybinding argument to a union to prevent warnings where
sizeof(int) != sizeof(void *). This has been annoying me for ages.

ok okan@, todd@
2009-01-23 18:58:40 +00:00
okan
17141e7c32 now that pwin is gone gone gone, we no longer have to do the bwidth
dance; xevents now able to deal with a border being set (which fixes
those annoying movie-watching apps).

ok todd@, oga@
2009-01-22 19:01:56 +00:00
oga
dea701e5a4 The default font name is strduped, so don't test for default font name
(therefore leaking it) when cleaning up a conf struct.

ok okan@
2009-01-22 18:16:38 +00:00
oga
d12622bfcd Oops, missed an atom.
ok okan@.
2009-01-22 18:06:16 +00:00
oga
353996486d Cache all of the X atoms we use at startup.
Do this instead of querying for them every time we use them. This
removes an XXX that has been in there since time began. This will become
more important as we move towards supporting netwm.

ok todd@, okan@.
2009-01-22 15:26:33 +00:00
todd
eeba7da292 borderwidth as a cwmrc(5) keyword, really helps debugging
from okan@
ok oga@
2009-01-21 15:04:38 +00:00
todd
5409a9c73b library dependency ordering matters for static archs, -lXext last in this case
from matthieu@, verified on vax
2009-01-19 20:23:19 +00:00
okan
927ee3a5a8 remove unused
ok oga@
2009-01-17 20:39:24 +00:00
oga
d1881c13d9 Finally fix the really annoying race where if you rapidly switch groups several
times you'd end up losing clients (thinking they had gone away).

From the ICCCM (which should not be read without a stiff drink in hand,
I made this mistake so you don't have to): to request a window to be
withdrawn one should send a synthetic UnmapRequest event when iconified.
To request iconification one should just unmap the window. The ICCM
further recommends that the synthetic event should just be taken as a
cue to withdraw, to deal with legacy clients. Taking a hint from this,
rework xev_handle_unmaprequest to correctly detect these situations.  A
Withdrawn window may come back anywhere, even as a subwindow of
something else, so the correct way to handle this state is to forget it
ever existed.

While i'm here, kill a dumb attempt to notice this in client_delete, and
nuke the very unnecessary arguments.

Todd confirmed this fixes the `race'.

ok todd@, ok ok okan@
2009-01-17 18:41:50 +00:00
okan
a738af5c3d revert just the 'race fix'; more works needs to be ironed out with
events and state.

agreed by oga
2009-01-16 16:49:17 +00:00
okan
77631d0413 remove pwin, bringing us to one client, one window. we no longer have
to push attributes around, so things get a lot simplier, while fixing a
few issues in the meantime; original suggestion by Edd Barrett many many
moons ago.

annoying window placement and race, found in c2k8 by todd, fix by oga!

lots of feedback from todd and oga - thanks!

"commit that bad boy" oga@
2009-01-16 15:24:14 +00:00
oga
7b0ecc6d1f On startup, don't leak memory when we enumerate existing windows.
The behaviour until now was to ask X for the windows name (which is
malloced) then drop that on the floor and do nothing with it. Skip this
foolery and just skip the window. I don't believe I never noticed this before!

"you can has ok" okan@
2009-01-15 17:23:12 +00:00
okan
454d1e5ef5 - add missing prototypes.
- properly name, place and static private functions.
- move function which finds the xinerama screen for a coordinate to
a more appropriate place while altering its semantics to match others.
- tiny bit of style.

ok oga@
2009-01-15 00:32:35 +00:00
okan
b14cbfe250 better cast; noticed by ray@
ok ray@ oga@
2009-01-13 15:25:43 +00:00
oga
1b62620f13 Add -Wall to CFLAGS, it's helped find a few dodgy constructs.
ok okan@.
2009-01-11 21:48:27 +00:00
oga
b1941d120c shortcut_to_name should not be defined as static in a header file. Put
it in group.c where it it used most, and add an extern definition for
the other users of it.

Found by gcc -Wall. ok okan@
2009-01-11 21:46:48 +00:00
okan
331aeae1e7 add missing prototypes
ok oga@
2009-01-11 21:34:22 +00:00
okan
f950e7b909 better comparison idiom; found with -Wall
ok oga@
2009-01-11 21:33:45 +00:00
okan
1f1b40b2c2 - merge grab_sweep() into mousefunc_window_resize().
- merge grab_drag() into mousefunc_window_move().
- properly name, proto and static private functions.
- since we already do XMoveResizeWindow() and XMoveWindow() in (now)
mousefunc_window_resize() and mousefunc_window_move() respectively,
client_resize() and client_move() calls are unnecessary.

ok oga@
2009-01-11 18:34:46 +00:00
okan
343413a720 FcNameParse() manpage lies, cast here.
found with pcc.

ok oga@
2009-01-11 18:32:08 +00:00
okan
7b276c6791 remove unused variables
ok oga@
2009-01-11 18:25:49 +00:00
matthieu
52d6539f3c xterm 239
correct a cast in input.c, which broke translation of numeric
keypad codes to pageup, pagedown, etc., on 64-bit platform (Debian
#511138, report by Larry Doolittle).
2009-01-10 18:08:42 +00:00
oga
d6ad440728 If the mousebutton is unknown when we go to grab, don't just print a
warning, but also skip the XGrabButton call. Noticed by code inspection
by okan@, but we agreed my fix was cleaner.

ok okan.
2009-01-08 21:35:19 +00:00
matthieu
7a43c97042 Disable allowFontOps, allowTcapOps and allowWindowOps by default
on OpenBSD.
2009-01-06 20:31:59 +00:00
matthieu
7d6f399c75 xterm 238. includes fix for CVE-2008-2383. 2009-01-06 20:10:20 +00:00
okan
32b6a0bc15 remove "search should ignore the current window" from list, for the
current behavior is better...

ok oga@
2009-01-06 00:41:09 +00:00
okan
4d0c216b55 HasXinerama is an int
ok oga@
2009-01-06 00:19:55 +00:00
okan
f7e5fe5537 remove unused code
ok oga@
2009-01-06 00:18:07 +00:00
matthieu
ea3c465f2e Avoid infinit loop on make clean. Problem found by mglocker@. 2009-01-03 17:55:00 +00:00
matthieu
6cc8d9324a xedit 1.1.2 2009-01-01 15:30:40 +00:00
matthieu
6e75710066 mkfontscale 1.0.6 2009-01-01 15:24:14 +00:00
matthieu
1533e1e5e4 Disable build of deprecated proxymngr and xfindprox applications. 2008-12-23 09:02:50 +00:00
matthieu
696c509e89 Remove obsolete applications (replaced by xinput). 2008-12-23 08:59:21 +00:00
oga
d4dd2359ac Kill obviously dead variable. 2008-12-04 23:55:04 +00:00
oga
15161fba13 Don't ignore sigpipe. Everytime cwm forks it execs anyway (so it
shouldn't get that signal), and this causes problems for our children
since they inherit the ignore.

Pointed out by Jacek Masiulani in pr 6010; thanks!
2008-12-03 23:55:46 +00:00
matthieu
b44ff0aad7 xedit 1.1.1 2008-10-13 20:53:31 +00:00
matthieu
2712cbe1e6 luit 1.0.3 2008-10-13 20:34:11 +00:00
oga
eb02c0fb7a Xinerama and XRandR dual head support for cwm(1). Now we detect the xrandr
reconfiguration events and change our sizes depending on that. We also detect
the xinerama screens for maximize, vertmaximize and initial window placement.

This could be improved by automatically resizing maximized windows when
the screen resolution changes and by moving windows that would be hidden
into visible space. Said changes will come shortly.

Tested by many. matthieu@ didn't oppose.
2008-09-29 23:16:46 +00:00
matthieu
215beda67c xterm 237. tested by krw@ oga@ and others. 2008-09-23 19:08:55 +00:00
oga
f5db6743c6 .Bl needs a matching .El. From Martin Toft a while ago, thanks! 2008-09-22 14:37:12 +00:00
oga
a31ba9ca46 Improve wording of the ``ignore'' directive. From Martin Toft a while
ago, ok okan@ from similar amount of time ago.
2008-09-22 14:35:16 +00:00
oga
9e7ba1fa24 *sigh* Revert the diff that wasn't meant to go in yet.
note to self: When you mean to type cvs commit search.c, don't forget
the filename.
2008-09-22 14:28:04 +00:00
oga
0f0542ace1 Display the current window title not a previous one in the case of
``show all'' in the window search dialogue. Noticed and diff from Tim
van der Molen, thanks!
2008-09-22 14:15:03 +00:00
matthieu
20301d4446 Remove deprecated applications (have been disabled for several month). 2008-09-14 13:18:28 +00:00
matthieu
c274ccee10 build xcompmgr. 2008-09-13 16:36:52 +00:00
matthieu
15769b01aa Patch from X.Org -current: Make usage() report the current version. 2008-09-13 16:22:25 +00:00
matthieu
dd8896a496 Xenocara build infrastructure and regen autotools files. 2008-09-13 16:19:05 +00:00
matthieu
8f60c8493e Import xcompmgr 1.1.4.
It will replace the version in ports now that its license has been
clarified. ok ajacoutot@ balmer@ oga@.
2008-09-13 16:15:43 +00:00
matthieu
f7acc14330 Enable xinput, disable xsetmode & xsetpointer. 2008-09-07 21:09:57 +00:00
matthieu
2ea901fcb3 Xenocara build infrastructure and regen autotools files. 2008-09-07 13:31:56 +00:00
matthieu
4f74aa8fd3 Import xinput 1.3.0. Replaces xsetmode(1)/xsetpointer(1). 2008-09-07 13:28:39 +00:00
canacar
0f1b286a2e Keep the exec menu entries sorted.
Go for it okan@
2008-09-03 04:39:12 +00:00
matthieu
52d6163acf Remove extra semi-colon after conditional. Tested by phessler@. 2008-09-01 19:18:13 +00:00
matthieu
b58642ac9d xwininfo 1.0.4 2008-08-27 19:30:04 +00:00
matthieu
ef0d58967c xwd 1.0.2 2008-08-27 19:24:47 +00:00
matthieu
cf96e1067e xterm-236. Tested by form@ and simon@. 2008-08-25 18:05:56 +00:00
oga
5d526ad59f fix the froggy problem.
Implement a handler for the MappingEvent, meaning that the keymap has changed.
When this happens, ungrab all bindings, update the map, and regrab.

Fixes the problem where some keybindings wouldn't work under non us or
uk keymaps (especially the .fr map, it seems). Issue noticed by
ajacoutot@, ratchov@, and a few people on misc. Based on an initial diff
from ratchov@.

ok okan.
2008-07-22 21:01:54 +00:00
oga
cdb45f007b We've been handling grabbing wrong all this time (noticed at c2k8).
add conf_grab() and conf_ungrab, and use them in the keybinding manipulation
functions to {,un}grab the binding for all screens we have defined.

the lovely little ordering problem comes in here, since when we parse
the config initially Screenq is empty, so regrab after we fill the
queue, hopefully later reordering will remove this little need and there
will be much rejoicing.

ok okan.
2008-07-22 20:51:54 +00:00
oga
c462c7e1b6 split x_setup() into two. dpy_init() for setting up the display and
checking the X config, and x_setup to set up the screens.

There's an ordering problem that means that some of this init needs to
come after the config is parsed, the rest should ideally happen before
though. This is a rough split, it will be refined later. Again, needed
for an upcoming change.

ok okan.
2008-07-22 20:42:24 +00:00
oga
893d8d3dd0 Add xu_key_ungrab() and a mirror to xu_key_ungrab(). a couple of changes
that are coming up depend on it.

ok okan.
2008-07-22 20:26:12 +00:00
oga
91dbf08299 Kill screen_init(). it's been stubbed out for a while now. I don't envision it
coming back in it's current form.

ok okan@.
2008-07-22 19:54:57 +00:00
oga
ea5ee72e33 kill another leftover prototype.
ok okan@
2008-07-22 19:52:54 +00:00
matthieu
f4cf1775d9 Formatting fix. From Tim van der Molden. 2008-07-20 06:47:48 +00:00
oga
b4d2f0f926 Put back the initialisation of gc in group_cycle. No cookie for okan.
Reported by Dan Harnett, thanks!
2008-07-18 15:40:52 +00:00
okan
4c22c74258 add cwm to exec/restart menu
ok matthieu@ oga@
2008-07-16 12:43:05 +00:00
okan
45606f7a0d move client_vertmaximize to a more sensible location, purely for readability.
"don't mind at all" oga@
2008-07-15 22:12:09 +00:00
okan
d995c0ea4d save an X call and use what we already have stored.
ok oga@
2008-07-15 22:06:48 +00:00
okan
37abf72424 don't compensate for bwidth twice.
ok oga@
2008-07-15 13:52:02 +00:00
okan
53b397c1a3 Nm makes more sense than Xr, from Pierre Riteau - thanks! 2008-07-11 22:43:44 +00:00
oga
36326e6e7f Change "a window" to "current window" in documentation. it's more correct.
While i'm here: Capital letter and full stop in descriptions in cwmrc.5

"looks good - do it" okan@.
2008-07-11 15:42:29 +00:00
okan
ee7ecdb4de add Xr for cwm(1) 2008-07-11 15:20:04 +00:00
okan
d9407b888b no more hidden (and mysterious) config reloads and allow binding a key
to a config reload; CMS-r by default.

ok oga@
2008-07-11 15:18:29 +00:00
okan
2e276584ab replace snprintf with strlcpy
ok oga@
2008-07-11 14:24:34 +00:00
okan
de181a1c1f we already have ymax, so use it instead of asking X for it again.
ok oga@
2008-07-11 14:23:30 +00:00
okan
cfb9c394cb spacing, declaration lineup to be consistent throughout cwm,
readability, and a bit of knf.

ok oga@
2008-07-11 14:21:28 +00:00
todd
c727b6dd04 puffy 4.4 2008-07-02 02:29:59 +00:00
okan
9280b8fb5b only cycle through visible *and* non-ignored windows.
ok oga@
2008-06-30 17:52:37 +00:00
oga
ff24dcbd56 Allow a mouse binding to hide a window, and add a default keybinding for CMS-M3,
so it's hard to press by accident, but there if you need it.

requested (in a way) and tested by johan and todd.
2008-06-25 22:44:42 +00:00
oga
553a7ea586 Support mod4 (windows key) in mouse bindings too. 2008-06-25 22:40:27 +00:00
oga
ff29a8e71a Support shift in mouse bindings. There's really no reason not to.
tested by johan@ and todd@.
2008-06-25 22:38:36 +00:00
oga
5c700f8601 Actually grab the correct mouse buttons for a window, instead of doing the
old hardcoded ones (which now can be wrong).

tested by todd@ and johan@.
2008-06-25 22:37:29 +00:00
oga
7d5d330707 Sort flags.
From Pierre Riteau, thanks!

ok okan@.
2008-06-25 01:09:09 +00:00
oga
6963c8bb7d Stop keyboard move moving the window utterly off the screen. If that
happens there's no way to get it back.  Also, stop resize making a
windows size negative or zero. X does not like that one bit.

Diff from Martynas. Ok okan@.
2008-06-25 00:52:47 +00:00
matthieu
932e098f54 regen 2008-06-19 21:58:47 +00:00
matthieu
136098757a - Don't depend on installed lbxproxy.
- Comment out the lbxproxy config in sample configuration file.
problem noticed by naddy@
2008-06-19 21:58:14 +00:00
oga
cb1f8b37f8 Don't link "-lX11 -lXau -lXdmcp" twice.
From Martin Toft, thanks!
2008-06-19 02:21:30 +00:00
oga
2ece6ad4cf No need to map/unmap the window on hide/show since we already do the
same to its parent.

"makes sense" okan@.
2008-06-18 20:42:29 +00:00
matthieu
2a567d887f Tis file is no longer in xinit 1.1.0. 2008-06-18 20:33:15 +00:00
matthieu
1420b92429 update to xinit 1.1.0. 2008-06-18 20:31:51 +00:00
matthieu
08ba1c99bd Disconnect lbxproxy, xphelloworld, xplsprinters and xprehashprinterlist
from the build. Those clients are not useful anymore now that the
server side is not there anymore. ok krw@ mbalmer@ and others.
2008-06-18 20:19:53 +00:00
oga
6bc6a1ee97 Revert previous "fix" it introduces new issues of its own.
The problem that's causing us to lose windows is that rapid hiding and
unhiding causes a backlog of X events, so we lose track of client state,
and delete cc->pwin when we should not. A proper fix will arrive when it's been
worked out.
2008-06-18 19:09:12 +00:00
okan
5cf4e1c7ef missed one mouse function
noticed by oga
2008-06-17 23:46:49 +00:00
oga
81e6cb3e95 Ignore caps lock and numlock for keyboard bindings. The way Xlib makes
you do this is ugly. Also remove mod2 (numlock) and mod3 (odd) from the
list of keybinding modifiers. They don't make much sense here.

based on a heavily modified diff from Martynas.

ok okan.
2008-06-17 23:40:33 +00:00
matthieu
a107e63a20 Replace rsh with ssh in the extrace/merge example. Rsh is no more. 2008-06-17 21:34:31 +00:00
oga
812ce180c5 Just rework the mouse binding calculation on event to look like the
kbfunc one.  Makes the code a lot easier to read.

Fixes a bug i introduced in the last commit here.

ok okan.
2008-06-17 20:55:48 +00:00
oga
34c24fdb68 The mousebinding code missing a break once it had found the correct
binding, this expose another issue that's still being debugged.
Issue pointed out by Dan Harnett, thanks!

While i'm here KNF and rework the logic to not be ass-backwards.

ok okan.
2008-06-17 20:21:17 +00:00
mk
3d8c29aa2b Make this not crash when compiled with -g.
Found by myself, analysis by kurt@, fix by me with input from otto.

``Just get some fix in...'' deraadt
2008-06-16 19:09:48 +00:00
oga
4ef73665d3 Rip out and burn the HASH_* stuff. We don't need a SPLAY tree for one font.
makes the code a lot simpler. While here rearrange the font handling functions
to be less shit.

ok and help okan@.
2008-06-15 02:47:46 +00:00
okan
b3cbe6ba11 (mostly) proper xshape event support
ok oga@
2008-06-14 22:04:11 +00:00
okan
a880cefb2e unbreak 2008-06-14 21:59:09 +00:00