Commit Graph

2036 Commits

Author SHA1 Message Date
okan
85b6a48da7 more style nits and wrapping 2014-09-08 20:37:02 +00:00
okan
f091741024 since mruq has been folded in, rename mru-named functions 2014-09-08 20:32:40 +00:00
okan
0fefd96f3e Remove duplicate client queue (mruq); instead, remove and take the
global Clientq and place it inside screen_ctx since every client belongs
to a screen, then use the same per screen clientq to track stacking
order (the sole reason for mruq).
2014-09-08 20:11:22 +00:00
okan
898bea2d90 Now that a group knows its screen, only pass down the group_ctx. 2014-09-08 13:51:29 +00:00
okan
b5dd6e391c Add screen_ctx to group_ctx, and populate on init. 2014-09-07 20:57:26 +00:00
okan
c4e86dacb9 more style nits 2014-09-07 19:27:30 +00:00
okan
ae092d4229 screen_fromroot -> screen_find 2014-09-07 17:38:38 +00:00
okan
63dc9657ad Get rid of a redundant array of groups per screen; we already have a
link to the group queue for each screen.
2014-09-07 17:27:20 +00:00
okan
ea3574d110 Few style nits; extend 'path' to MAXPATHLEN. 2014-09-06 18:50:43 +00:00
okan
28f5392d74 generic sighandler 2014-09-06 16:24:32 +00:00
okan
dc9a1b77d9 style nit 2014-09-06 16:18:08 +00:00
okan
70027868ed Move termpath and lockpath into cmdq; side effect is that 'lock' and
'term' now show up in the application menu.
2014-09-06 16:14:35 +00:00
okan
4abab66820 Rework group names: stash the group name inside the group_ctx as opposed
to having to manage an array outside in screen_ctx for group names and
shortcuts.  Simplifies (and moves bits for) reading, and constructing
data for, EWMH's _NET_DESKTOP_NAMES.
2014-09-06 16:08:58 +00:00
okan
bef5d30e83 bring menu bits closer together 2014-09-02 14:08:39 +00:00
okan
1150bfd22b add explicit paran and drop some empty lines bringing like functions closer 2014-09-01 18:17:32 +00:00
okan
de52ddf635 Merge group_menu into mousefunc_menu_group. 2014-09-01 18:04:58 +00:00
matthieu
9f7fb3632e regen 2014-08-28 17:34:57 +00:00
matthieu
d30eea2426 Reduce diffs with upstream. No functional change. 2014-08-28 17:34:29 +00:00
matthieu
66e7ac61db Unlink xfs from the build.
no objections from at least krw@, ajacoutot@, dcoppa@
2014-08-25 19:14:54 +00:00
okan
ea1518cb5c Since the flatting out of sc->group_names is only for setting
NET_DESKTOP_NAMES, merge the helper into xu_ewmh_net_desktop_names,
where we actually set the property.
2014-08-25 14:31:22 +00:00
okan
749976d1d7 Implement _NET_WM_STATE_STICKY, bound to CM-s by default; allows any
client to 'stick' to all desktops (ewmh speak) or groups - this
currently has the same affect as setting a client's group to 'nogroup',
with the exception that the client can also be in a group, so when
un-sticking, the client will go back to its original group/desktop.
2014-08-25 12:49:19 +00:00
matthieu
8de4aab40d Enable xcb-iccm 2014-08-24 20:22:20 +00:00
matthieu
de9a66e35a Don't need to override datadir anymore. 2014-08-24 19:58:52 +00:00
okan
4acfe91344 Continue effort to bring keyboard and mouse functions together; merge
name_to_kbfunc and name_to_mousefunc.
2014-08-24 15:49:58 +00:00
okan
4485c34f15 gc->hidden has never consistently kept track of a group's state;
group_show() and group_hide() are not the only ways a group can change
state - if all clients in a group are either hidden or unhidden, then
that group's state should change, as well as the various EWMH ways.
Instead of trying to keep track in a wide variety of places, simply
query the clients in a group before needing to take action based on the
group's state.  Solves long standing confusion of when a group is hidden
or not.
2014-08-24 15:37:45 +00:00
okan
9567454909 Fix nogroup regression, where nogroup became an actual group - the
symantics between cwm groups and ewmh got in the way.  Ensure a client
that wants to be in nogroup stays in nogroup (thus stays in view), even
when (re)reading NET_WM_DESKTOP.  Paritially reverts patchset 644
(2014-02-07 13:09 PST) which deals with a NULL cc->group.  All to be
revisited when NET_WM_STATE_STICKY hits cwm.

Reported by many; testing and ok phessler.
2014-08-22 19:04:00 +00:00
okan
b7cd8019f2 Purely mechanical; unify 'num', 'no' and 'shortcut'. 2014-08-20 15:15:29 +00:00
okan
045b994659 Split off group window restacking. 2014-08-20 13:42:27 +00:00
okan
2c1d1423f8 whitespace 2014-08-20 12:35:39 +00:00
okan
cb5bdeabf0 fix a misleading comment and function name 2014-08-20 12:33:12 +00:00
okan
f819bd3e15 Remove unnecessary memset since reload was replaced with restart;
from Kent Spillner.
2014-08-19 18:39:41 +00:00
okan
7fd50277e7 Pull highstack from group_ctx (and useless calculations of); in the one
place that we use highstack, replace that usage with a local variable
(for now until stacking is done properly).
2014-08-19 12:47:51 +00:00
okan
c4aace036f Get rid of nhidden in group_ctx; it actually never reported correctly
since nhidden wasn't incremented nor decremeted in all the right places,
thus confusing matters.  We don't need to carry a count around, so just
use a local variable in the one place we need one to supply
XRestackWindows().
2014-08-18 13:57:57 +00:00
matthieu
7afaae9fe9 Install resource files in /usr/X11R6/share/X11/app-defaults
/etc/X11/app-defaults stays 1st in the libXt search path so, people
and ports can put customized versions there if needed.
If you didn't customize the versions in /etc/X11/app-defaults, they
should be removed to avoid future issues when one file changes.

discussed at g2k14 and ok ajacoutot@
2014-08-13 21:02:16 +00:00
matthieu
ceaf6855d6 Complete man page substitutions for xterm(1) and resize(1)
problem noticed by and tweaks by naddy@. ok deraadt@
2014-07-31 20:13:40 +00:00
todd
7b291240ce puffy 5.6 2014-07-30 17:10:26 +00:00
jsg
35e8287bee switch to tradcpp
fixes whitespace issues with auxcpp reported by Allan Streib
2014-07-30 16:48:32 +00:00
matthieu
39102e300e Update to xterm-309. Version 308 tested by several people including
naddy@ who found a small regression, fixed in 309.
2014-07-14 08:30:10 +00:00
jsg
743ec8762a update glxinfo and glxgears to Mesa demos 8.2.0 2014-07-13 09:47:57 +00:00
matthieu
0e782e8198 Replace xrdb-cpp by auxcpp 2014-07-12 16:36:22 +00:00
matthieu
f2bdb80f55 More ucpp->xrdb-cpp renaming 2014-07-12 14:40:50 +00:00
matthieu
68f71d7d34 Tell xrdb to default to xrdb-cpp as C pre-processor 2014-07-12 14:34:36 +00:00
matthieu
6a6bbb2d59 Hook xrdb-cpp 2014-07-12 14:33:37 +00:00
matthieu
cf1d97d9e6 Local tweaks to ucpp for xrdb:
- exit on the 1st error it finds. Better than stopping processing input
- accept -P as a synonym for -l since this is what xrdb uses to suppress
  #line markers.
2014-07-12 14:32:55 +00:00
matthieu
f5aa946dbd Renname the manual page 2014-07-12 14:28:07 +00:00
matthieu
d4e54c2056 Replace the Makefile with a xenocara-compatible one. 2014-07-12 14:27:42 +00:00
matthieu
a2223c7302 Import a copy of ucpp, lightweight cpp for use by xrdb so that it
doesn't depend on the 'comp'  set. ok espie@ deraadt@
2014-07-12 14:25:39 +00:00
matthieu
7ff3194bee Missing new files in update to xterm 304 2014-05-09 19:57:29 +00:00
matthieu
8273aa94a8 Update to xterm 304. With help of shadchin@
tested by ajacoutot@ and shadchin@
2014-05-09 19:56:40 +00:00
matthieu
26cb605a98 Missed in xbacklight 1.2.1 update 2014-05-03 19:39:42 +00:00
matthieu
04a9905f3c Update to xrandr 1.4.2 2014-05-03 19:37:50 +00:00
matthieu
2e8b4cb84a Update to xinput 1.6.1 2014-05-03 19:37:22 +00:00
matthieu
f741c53e1d Update to xbacklight 1.2.1 2014-05-03 19:36:41 +00:00
matthieu
6a61ea14b8 Update to xauth 1.0.9 2014-05-03 19:36:13 +00:00
okan
0cb1db2d4c plug memleak (currently unused func); from Tiago Cunha 2014-04-21 12:52:14 +00:00
miod
85c0adf61c Add -fno-stack-protector to the two files which already need to be built
with -O1 on landisk - they definitely hit worst case logic in what passes for
a compiler we're using.
ok martynas@
2014-04-11 22:58:12 +00:00
matthieu
73bad93705 Apply the ':' symbol to the SunPaste/XF86Paste events translations.
This makes shure that shift modifers are taken into account to trigger
the translation. It fixes the 'v' key on Zaurus keyboard, which has
SunPaste at 3rd level and was thus bound to insert-selection() regardless
of the shift level.
2014-03-15 10:39:28 +00:00
okan
877931bf62 Alignment fix; found the hard way on sparc64 by landry@ (and thanks too
for fast access to a box!)

ok deraadt@, matthieu@
2014-02-27 00:52:57 +00:00
todd
27e09cc02c puffy 5.5 2014-02-26 17:39:48 +00:00
matthieu
fcd6bcf1a5 oops Pablo Mendez Hernandez <pablomh@gmail.com> pointed out there
is a typo in previous commit.
ok jca@, dcoppa@, deraadt@
2014-02-26 14:21:28 +00:00
matthieu
c2e393c2e2 Support for ed25519 keys. from Tristan Le Guern with tweaks by sthen@
Ok deraadt@
2014-02-25 22:16:24 +00:00
matthieu
164e7011dd Update to xterm 301 2014-02-14 19:40:02 +00:00
okan
875128a0cb Make sure we cycle through existing client's group membership and set
the hidden state on the group; important to know group hidden state
after a re-exec or restart of cwm (as easily seen in group menu).
2014-02-08 02:49:30 +00:00
okan
1a7c8d161a Replace a few hand rolled loops with like tailq loops. 2014-02-08 02:40:43 +00:00
okan
92bf6935f5 all mapped clients now should have a group, so simplify some cases 2014-02-07 21:59:56 +00:00
okan
60a1b7520a If _NET_WM_DESKTOP is set to -1 during client creation, place the client into
group 0 (nogroup); solves problem initially discovered by oga@nicotinebsd with
tint2.  A clientmessage *after* client creation already handles this case.

Go further and assign every client to a group; in non-sticky mode, group 0
(nogroup) and sticky mode, the active group.  In both cases, autogroup will
override the group assignment.  Removing a group from a client always places
the client back into group 0 (nogroup).  Autogroup can also assign a client to
group 0 (nogroup) to keep a client always visible (unless of course one opts to
hide all clients).
2014-02-07 18:09:54 +00:00
okan
b23ca72ab1 Some clients set the urgency flag even if they are the active client;
prevent annoying behavior by only setting the cwm urgency flag if the client
is not active; diff from Thomas Adam.
2014-02-06 20:58:46 +00:00
okan
16de3733be Introduce a region queue and replace screen's XineramaScreenInfo; we
still use Xinerama to populate the regions per screen, but will switch
at a more appropriate time.
2014-02-03 21:07:47 +00:00
okan
4c3987dcc1 make this XQueryTree like the other 2014-02-03 20:29:05 +00:00
okan
ea2abae9f3 Move redundant bits from screen_init (while dealing with existing
clients) directly into client_init, performing the X roundtrip only
once. With the previous change in maprequest, this moves decision making
into one place for creating new clients.
2014-02-03 20:20:39 +00:00
okan
bb4485df6b Move redundant window attr fetch from maprequest directly into
client_init and perform that X roundtrip only once.
2014-02-02 21:34:05 +00:00
okan
03847f1c2e No need to store screen colormap and visual; rather just use the X
macros in the one place they are needed.
2014-02-02 16:29:04 +00:00
okan
49f2f86dbd Unlike free(3), XFree(3) can't be passed a NULL pointer. 2014-02-02 16:13:50 +00:00
okan
4ce9b05438 The menu already limits entries with MENU_MAXENTRY, so don't bother
holding a command name limit as well.
2014-02-02 15:46:05 +00:00
okan
9062093012 Take menu's bwidth into account for position/size; reported by Thomas Adam. 2014-02-01 19:28:46 +00:00
okan
d413fd6b56 Let the config parser continue parsing even after encountering an error;
original idea (with now-outdated patch) from Thomas Adam.  Since we now
report where errors exist, this now makes more sense.  Expand a bit on
config file parsing in the cwm(1).

Discussed with a few, including sthen; ok sthen.
2014-02-01 00:25:04 +00:00
okan
364a7628cb re-add lost free from previous 2014-01-30 22:41:16 +00:00
okan
4de6836838 Switch ignoreq to winname struct since it's basically the same thing;
removes limit on name matching.
2014-01-30 22:17:22 +00:00
okan
ca2497d48b use the same autogroupwin variable as everywhere else 2014-01-30 15:43:53 +00:00
okan
9f5aa96cc7 Move cwm_status around to avoid header fu, and remove extraneous signal
header from xevents.c; noticed by Christian Neukirchen.
2014-01-30 15:41:11 +00:00
okan
06d9319772 Remove duplicate mouse functions and instead use the kbfunc ones. No
user visable changes at this point, but they'll merge at an appropriate
time.
2014-01-30 14:40:21 +00:00
okan
d5979e3ab6 Minimize trivial differences between a few kb and mb functions. 2014-01-29 22:30:00 +00:00
okan
e2d5d73e53 keybinding -> key binding 2014-01-29 21:17:33 +00:00
okan
78ff1f748c Merge keybinding and mousebinding queues into using the same merged
struct, binding; they were essentially the same accept for what was
'pressed', keysym or button.
2014-01-29 21:13:52 +00:00
okan
cd007c0d08 Much like we do for keyboard and mouse bindings, remove duplicates for
command name - last match.
2014-01-29 18:43:27 +00:00
okan
2ffb124daa Check command name/path for truncation and provide user feedback during
config parse (and use conf_cmd_add to populate defaults); based on a
discussion with Tiago Cunha.  While this looks ugly, there are likely
some other changes here to come.
2014-01-29 18:34:22 +00:00
okan
0590f4c1fc Check ignore windowname for truncation and provide user feedback during
config parse; based on a discussion with Tiago Cunha.
2014-01-28 20:22:21 +00:00
okan
2d6c7c78d8 The EWMH spec states that if the cardinal returned is 0xFFFFFFFF (-1)
then the window should appear on all desktops, which in our case is
assigned to group 0.  Found to fix stalonetray due to the non-ewmh aware
range checking in group_movetogroup(); from Thomas Adam.
2014-01-28 13:40:40 +00:00
okan
e395fd7bea Move conf_init/clear into main - no behaviour change; from Tiago Cunha. 2014-01-28 00:42:20 +00:00
okan
beb28798ef move some init up and shed some blank lines 2014-01-27 15:13:09 +00:00
okan
fad126f1a3 simplify parse_config using assignment; inspired by a very old diff from
Tiago Cunha.
2014-01-27 14:49:40 +00:00
okan
d0425acdda more range checking 2014-01-24 22:38:02 +00:00
okan
66e13c1a60 correct arguments and drop the cast.
sanity check by oga@nicotinebsd
2014-01-24 15:08:06 +00:00
okan
9ffdedb82e no need to quote within warning 2014-01-23 17:13:38 +00:00
okan
40c619037f If no title is supplied, term uses only the basename for its title.
This is useless when searching for windows launched via the ssh command
menu; supply a more useful title: '[ssh] <hostname>'.

Idea from todd@, ok todd@
2014-01-23 16:51:28 +00:00
okan
b740a0a91a zap whitespace 2014-01-22 22:41:09 +00:00
okan
fa2846fe29 cwm_argv doesn't need to be global any longer 2014-01-22 22:26:05 +00:00
okan
3aff0ea880 start properly releasing X resources during teardown 2014-01-22 22:14:02 +00:00
okan
3b8ad25f38 Somewhat streamline event loop/restart/quit handling; most notable
change allows a restart to trigger proper teardown first, even though
teardown is not (yet) complete.

After some discussion with oga@nicotinebsd.org regarding a more
complicated version/idea.
2014-01-22 21:48:27 +00:00
okan
b92e846e56 Sprinkle a few more const; from Tiago Cunha. 2014-01-21 15:42:44 +00:00
okan
69bb069674 Save the ptr position before lowering via kbd, so as to be able to cycle
back with the pointer in the right place; matches behaviour when
lowering via the mouse function.
2014-01-20 23:18:47 +00:00
okan
57bbf0fd90 merge KBFLAG_NEEDCLIENT and MOUSEBIND_CTX_*; brings kbfunc and mousefunc
bits even closer.
2014-01-20 23:03:51 +00:00
okan
42e2d07b2b Use argument to pass down flags for mousefunc cyclegroup; removes
rcyclegroup wrapper need - now similar to kbfunc.
2014-01-20 22:31:53 +00:00
okan
9a540a7adb constify and rename some confusing variables around cmdq. 2014-01-20 21:34:32 +00:00
okan
7e2aa0c80b - remove redundant range check for buttons in conf_bind_mouse.
- make conf_bind_kbd return error on non-matches to match what
   conf_bind_mouse does.
 - rename some variables while here for clarity.
 - constify bind and cmd.

from Tiago Cunha.
2014-01-20 19:06:04 +00:00
okan
83b0cbf116 Add a function that adds an entry to a menuq, normalizing a common code
path; from Tiago Cunha.
2014-01-20 18:58:03 +00:00
matthieu
0f866aaf0f OpenBSD needs the same treatment as FreeBSD to avoid xterm -hold
chewing CPU cycles. Reported by Kevin Chadwick.
2014-01-18 14:06:23 +00:00
matthieu
e78ce57d7f Missing files for xauth 1.0.8 2014-01-05 07:08:53 +00:00
matthieu
97017a136a Update to xauth 1.0.8 2014-01-04 15:53:46 +00:00
okan
72ccee09ff use consistent types 2014-01-03 15:29:06 +00:00
okan
a2ae5b4d2d state is long 2014-01-03 14:23:50 +00:00
okan
9fbf947a27 calculate proper menu width/height on the first Expose event; 'jump' (while using gap) noticed by Christian Neukirchen 2014-01-02 22:49:10 +00:00
okan
c0d34338d1 Accept _NET_CURRENT_DESKTOP ClientMessage; from Thomas Adam, though
instead of group toggle, group only.
2014-01-02 22:43:55 +00:00
okan
37b3ff69f9 Accept _NET_WM_DESKTOP clientmessage; from Thomas Adam 2014-01-02 22:26:27 +00:00
okan
24e4f6a4b6 bring mousefunc closer to kbfunc 2014-01-02 21:30:20 +00:00
okan
424dc78f8e gc keycode in keybinding since we only deal with keysym now 2014-01-02 21:17:23 +00:00
okan
6dd84359f1 rename for clarity 2014-01-02 21:15:39 +00:00
okan
164bcbb443 When a client doesn't specify size hints, nothing prevents a resize to
0x0 - don't allow this situation during mouse resize (check already in
place for kbd resize).

Reported by brynet@
2014-01-02 20:58:20 +00:00
matthieu
0304b98245 Don't play with libxcursor if XCURSOR_THEM is defined. 2014-01-02 15:15:51 +00:00
matthieu
9c13ac6812 Update to xterm-300. Tested by ajacoutot@ and shadchin@. 2014-01-02 15:14:50 +00:00
okan
434826524f missing stdarg.h include 2013-12-17 16:12:18 +00:00
okan
d504b54a27 replace with memset 2013-12-17 16:10:43 +00:00
okan
468c12c5da Implement support for EWMH's _NET_WM_STATE_FULLSCREEN hint.
Since we already have a form of 'maximize', we need to differentiate
between 'maximize' and the new 'fullscreen' mode.  The 'maximize' mode
will continue to honor gap but now *retains* the border, matching the
'vert/horz maximize' behaviour.  The new 'fullscreen' mode supports and
follows the _NET_WM_STATE_FULLSCREEN hint, allowing the client perform
additional window modifications; in this mode, cwm(1) will *ignore* gap,
remove borders and freeze(move/resize) the client.  Additionally,
'fullscreen' mode will remember various combinations of previous states.

* default keybinding changes: CM-f 'fullscreen', CM-m 'maximize' (re-map
  as desired).

Positive feedback from a few, testing and ok sthen@
2013-12-16 19:02:17 +00:00
okan
4104232e02 Teach screen_find_xinerama() to apply gap only when told to do so;
adjust callers.  Needed for an upcoming feature.
2013-12-13 22:39:13 +00:00
okan
5671dd5497 Instead of using work area, use the Xinerama area for snap calculations;
based on a patch from Thomas Adam with appropriate adjustments for gap.
2013-12-13 21:51:56 +00:00
okan
8730d44943 we need the save-set when re-exec'ing so as to not lose State on our hidden clients 2013-12-13 15:56:44 +00:00
okan
c11a490e80 stray space and sort while here 2013-12-13 14:45:47 +00:00
okan
1d68a42ec0 Add support for XUrgency and matching _NET_WM_STATE_DEMANDS_ATTENTION
ewmh hint; urgencyborder is configurable.  The urgency flag will stick,
even while on a client in a non-viewable group, until the client
receives focus (where the border is reset).  Initial diff from Thomas
Adam with some changes/enhancements from me.
2013-12-13 14:40:52 +00:00
okan
baac27374e Make sure we really take work area gap into account with snap calculations;
from Dominik Honnef via Christian Neukirchen.
2013-12-12 21:50:50 +00:00
okan
e5da774880 ICCCM explicitly states that server time (CurrentTime) should *not* be
used for focus events, but rather the timestamp of the generated event.
Track the last event timestamp and send it down for a WM_TAKE_FOCUS
ClientMessage.  I suspect we should do this for clients that don't
announce this Atom as well, though the raciness gets us into a bind.

Solves focus order issue since WM_TAKE_FOCUS; fix verified by sthen@

ok sthen@
2013-12-12 20:15:07 +00:00
okan
c16e20981c we don't need to manage the save-set since we're not reparenting; left-over from pwin 2013-12-11 22:14:23 +00:00
okan
f1494daf70 since we are drawing in unhide, no need to during client setup 2013-12-11 17:23:31 +00:00
okan
b5f3d28152 apply mwm hints later 2013-12-11 15:46:47 +00:00
okan
3d5c10942f Add client wrapper for XWMHints to support XA_WM_HINTS in PropertyNotify
events; based off a diff from Thomas Adam.
2013-12-11 15:41:11 +00:00
okan
5da88fd68f Remove extra work and simplify client state handling. 2013-12-11 14:16:09 +00:00
okan
33eb08de92 Stash Class and WM Hints in client_ctx 2013-12-11 14:09:21 +00:00
okan
3c7dcdc9f9 Redraw client border when unhiding; during a hide, we just unset
the active flag but never redraw since it'll be in IconicState.

Behaviour reported by sthen@
2013-12-10 21:27:37 +00:00
okan
a6e6db763a If not using sticky mode (the default), clients aren't automagically
assigned a group, thus cc->group will be NULL - fix the client group
shortcut in menu lists; crash reported by Christian Neukirchen.
2013-12-08 13:51:38 +00:00
naddy
3adb0abb24 don't include obsolete <sys/timeb.h>, which will go away shortly; ok matthieu@ 2013-12-03 22:27:26 +00:00
okan
7459d3af28 When we receive a NotionNotify event, there's no need to (incorrectly
might I add) redraw the top menu selection.
2013-12-02 20:01:19 +00:00
okan
e5072fc220 Always highlight the first menu item (helpful to see selected items when
not using a mouse and therefore not generating Expose/MotionNotify
events); from Thomas Adam.
2013-12-02 19:49:26 +00:00
okan
d7f3078e8e Prepend the group shortcut in the client search menu; from Thomas Adam.
Likewise, prepend shortcut in unhide menu.
2013-12-02 19:30:27 +00:00
okan
3207d6dcc9 Since we use IconicState as our hidden state, check for the hidden flag
and unmanage the client if we're not hidden (basically if NormalState)
during an UnmapNotify event.

Resolves an issue with mplayer going fullscreen while not using NetWM
hints; behaviour regression reported by Ido Admon.
2013-12-02 14:30:12 +00:00
okan
a287dfc793 like gap, make snapdist per screen 2013-11-27 18:34:34 +00:00
okan
efe2ba92f9 alter -r1.145 getsizehints to deal with clients that don't have
WM_NORMAL_HINTS.
2013-11-27 17:04:35 +00:00
okan
9b29ffac8c Remove the option to bind a key by keycode with brackets; it never
worked (and no one complained!).  While it's fairly easy to fix, users
should be using keysym names and not keycodes.

Discussed at length months ago with todd@, matthieu@ and Owain.
2013-11-27 16:24:17 +00:00
okan
a09ca80c45 simplify/unfold 2013-11-27 14:20:32 +00:00
okan
57ba45de2c Rewrite active/inactive client handling in client_setactive();
client_leave() served no real purpose, likewise no reason to handle
LeaveNotify events since an EnterNotify will process the next active
client (and we don't have anything important to process anyway), so
xev_handle_leavenotify() goes as well.  Allows a simplification of
client_mtf() and client_cycle_leave() for clarity.  While here, unify a
few client_current() checks.

No intended behaviour change.
2013-11-27 00:01:23 +00:00
benno
3ab274cd32 Log message:
use u_char for buffers in yylex, for ctype calls, as done in all other
parse.y in the tree
found by millert@, ok okan@
2013-11-25 18:21:55 +00:00
matthieu
783f743e28 Give /dev/drm0 to the user logging into xdm to be able
to run OpenGL applications. ok kettenis@, naddy@
2013-11-18 20:39:48 +00:00
okan
632f11c555 Alter the r1.35 of event.c race fix. Remove the forward looking event
queue check (removing the need for a server grab/ungrab) - if the client
is going away, let it fall all the way through to a DestroyNotify event.
There's no longer a need for us to manually destroy a client ourselves
(removing yet another server grab/ungrab).  Instead, when the
UnmapNotify event is synthetic, simply set the state to Withdrawn (as
per ICCCM), else Iconic (in our case 'hidden').

Verified with test case from the 2009 race which was the original reason
for r1.35 of event.c.
2013-11-12 21:25:00 +00:00
okan
ce53b02ca7 Put back the border draw call in client_resize; since we are adding and
removing the border on maximized clients we need to redraw.

Also noticed by Tim van der Molen
2013-11-11 12:51:15 +00:00
okan
e8fcfc29d4 stash WMProtocols in flags 2013-11-08 17:35:12 +00:00
okan
b543fee100 quick keyboard focus fix for clients that neither populate wmhints nor wmprotocols, like rdesktop; focus needs to be re-visited 2013-11-05 00:55:42 +00:00
okan
d21ac16a79 The only reason we need to keep XSizeHints in our client_ctx is for
flags, so just add one to hints; consolidates sizehints and shrinks.
Additionally don't abuse PSize for XGetWMNormalHints() failures.
2013-11-02 19:13:56 +00:00
okan
47ae5c2eb9 x/y from XSizeHints are obsolete (and have been for a long time), so
instead use x/y from XWindowAttributes when USPosition|PPosition are
set.
2013-11-01 21:54:20 +00:00
matthieu
0500791125 remove unused file. 2013-11-01 19:04:50 +00:00
okan
95e47782f7 re-add support for WM_TAKE_FOCUS, and additionally this time only call
XSetInputFocus() for clients that have the InputHint; latter fix
discovered by Valery Masiutsin with a PoC patch - solves keyboard input
focus loss for java apps.
2013-11-01 14:07:19 +00:00
okan
a8efa775ea A client_delete should behave differently depending on whether the
triggering event was unmap (with pending destroy) log destroy; we only
need to grab/ungrab the server lock, set WithdrawnState and
XRemoveFromSaveSet clients coming from an unmap event - doing so for
clients coming from destroy are already gone, hence we generate errors.
2013-10-25 19:46:16 +00:00
matthieu
eb93ff8a6d Use arc4random 2013-10-20 12:41:07 +00:00
okan
816ad65098 shuffle 2013-10-20 02:00:02 +00:00
okan
f22f30d08a wrap key ungrab like btn ungrab, for it'll be used again 2013-10-20 01:55:32 +00:00
okan
25ca41475e revert 1.138 (WM_TAKE_FOCUS) for now 2013-10-20 01:35:47 +00:00
okan
d5f92c3e42 Using xu_btn_ungrab() buttons during client_leave doesn't work (error
BadValue) when the modifier is already AnyModifier .  Instead alter
xu_btn_ungrab() to ungrab AnyButton/AnyModifier and call it only when a
client is coming into focus in client_setactive(), instead of iterating
over ignore mods - matches how we handle key grabs.
2013-10-19 19:39:34 +00:00
okan
70cf49457d I believe we redraw the border in too many cases; likely a leftover from
the cc->pwin days - don't redraw on every unhide, resize, and mouse
move/resize Expose event (note, all Expose events trigger a redraw
anyway).

Tested with some finicky X apps I could think of, though I'm sure others
will find more - if so, and they 'lose' the border, please report!
2013-10-19 18:59:22 +00:00
okan
f2ed8ceb47 For clients that support WM_TAKE_FOCUS in their WM_PROTOCOLS property, send
a ClientMessage event.
2013-10-19 00:24:54 +00:00
okan
0710bf7edc a few err->errx since we don't have error messages here; from Tiago Cunha 2013-10-17 13:59:10 +00:00
okan
c42f6cebe3 trying parsing a XLFD string first, then by pattern 2013-10-07 13:40:26 +00:00
okan
78f4db5140 unify type; no change 2013-10-03 13:51:57 +00:00
matthieu
7bdeca034f Update to xman 1.1.3 2013-09-28 16:22:59 +00:00
matthieu
d3b60aa104 Update to xrdb 1.1.0 2013-09-14 09:21:39 +00:00
matthieu
4c8f7b3fcc Update to xmodmap 1.0.8 2013-09-14 09:20:18 +00:00
matthieu
d33701f223 Update to xlsclients 1.1.3 2013-09-14 09:19:02 +00:00
matthieu
bd8b3f9087 Update to xkill 1.0.4 2013-09-14 09:18:09 +00:00
matthieu
c38ca59e7b Update to xinit 1.3.3 2013-09-14 09:16:23 +00:00
matthieu
6a7a1261dc Update to xclock 1.0.7 2013-09-14 09:15:39 +00:00
matthieu
a15520613c Update to xclipboard 1.1.3 2013-09-14 09:14:46 +00:00
matthieu
62ffe4cad9 Update to twm 1.0.8 2013-09-14 09:14:02 +00:00
matthieu
3b638f84b8 Update to xterm 296. Sixel graphics disabled for now. 2013-08-26 20:06:09 +00:00
espie
6d7d129731 revisit old program of mine, make it look a bit more like sysctl after
simplifications.

okay matthieu@
2013-08-26 19:25:10 +00:00
matthieu
72b8e2e27d Fix format for 64 bits time_t 2013-08-18 08:24:08 +00:00
matthieu
61e2983c70 Fix a number of merge issues accumulated over the years
- INSTALL often got doubled by patch
- empty AUTHORS files didn't get removed.
2013-08-18 06:20:12 +00:00
matthieu
8dffde9860 Update to xwd 1.0.6 2013-08-17 16:38:10 +00:00
matthieu
98e67508cd Fix one last warning about usage() format string. 2013-08-17 16:28:49 +00:00
matthieu
507f26335e Update to xset 1.2.3 2013-08-17 16:20:09 +00:00
matthieu
121a1fb811 Update to xprop 1.2.2 2013-08-17 16:11:17 +00:00
matthieu
fb0b733b48 Update to xload 1.1.2 2013-08-17 16:00:54 +00:00
matthieu
744779bfe2 Update to xload 1.1.2 2013-08-17 15:55:33 +00:00
matthieu
1c4d8239c5 Update to xfwp 1.0.3 2013-08-13 19:39:34 +00:00
matthieu
a5858de44d Update to iceauth 1.0.6 2013-08-13 19:37:43 +00:00
matthieu
162fbbfa44 Remove a debug #error directive that shouldn't have leaked here. 2013-08-04 13:24:22 +00:00
todd
d9ff2050fb puffy 5.4 2013-07-22 13:12:34 +00:00
matthieu
128cecd166 Remove Modules that are not linked to the build for license issues. 2013-07-21 15:44:14 +00:00
matthieu
9cb9bf0644 Update to xfontsel 1.0.5 2013-07-21 15:34:57 +00:00
matthieu
efbf2bafb2 Update to mkfontscale 1.1.1 2013-07-21 14:00:06 +00:00
matthieu
8ebf1ecc9c Update to xfd 1.1.2x 2013-07-21 13:59:24 +00:00
matthieu
9f72ecd1a0 Update to xhost 1.0.6 2013-07-21 13:58:23 +00:00
matthieu
df07124fa5 Update to xrandr 1.4.1 2013-07-21 13:57:40 +00:00
matthieu
d493922f59 Update to xconsole 1.0.6 2013-07-21 13:56:59 +00:00
okan
0f156a8c2a we no longer need to construct an array for _NET_SUPPORTED. 2013-07-16 14:30:48 +00:00
okan
6cceb06057 don't need the size here 2013-07-16 14:22:25 +00:00
okan
cb56ed0c01 max -> nitems 2013-07-16 14:04:44 +00:00
okan
db709659c2 shuffle down protoypes 2013-07-15 23:53:19 +00:00
okan
76b17dcb11 collapse lines 2013-07-15 23:51:59 +00:00
okan
1ca1aa39ab simplify atom handling; allows us to limit to one round-trip to server
for gathering Atoms.
2013-07-15 14:50:44 +00:00
matthieu
a5cf6f6f3e Don't try to use grantpt() on OpenBSD. It causes crashes.
Problem reported by Jan Stary and Marcus Merighi, analysed by guenther@,
configure.ac patch by me.
2013-07-14 09:21:37 +00:00
okan
407cedcacc bring buttonpress and keypress event handlers slightly closer together 2013-07-10 14:15:58 +00:00
okan
2d39ce5e52 type fixes 2013-07-10 14:11:42 +00:00
okan
0cd6dbc0fc since the root and event window are the same in the case of a button
event on the screen's root window, there's no need to pass down the
entire XButtonEvent event, at least to group_menu(), the only callback
which takes an argument at this point; instead use the already populated
screen.
2013-07-09 01:24:49 +00:00
okan
c2e750f350 add support for mouse based group {,r}cycle; from Rodrigo Mosconi. not
bound by default.
2013-07-08 18:39:20 +00:00
okan
ad88124f83 move kbfunc and mousefunc closer together 2013-07-08 18:19:22 +00:00
okan
473473704c clarify kbd vs mouse functions 2013-07-08 16:32:51 +00:00
okan
53d2c330b7 move duplicate kbd and mouse modifier parsing to a generic function;
from Tiago Cunha
2013-07-08 16:10:55 +00:00
okan
f3dbf2e427 replace a few (x)malloc with (x)calloc to prevent potential integer
overflows; from Tiago Cunha
2013-07-08 15:48:16 +00:00
okan
2993105e89 whitespace and style fixes; from Tiago Cunha and one from me. 2013-07-08 15:46:16 +00:00
mpi
1db608c0a5 Match what's done on i386/amd64 and use vt05 as default for xdm(1)
on macppc now that virtual consoles are supported.

Adding "xdm_flags=" to /etc/rc.conf.local should now be enough to
get xdm working out of the box, no need to edit /etc/ttys anymore.

ok matthieu@
2013-06-26 07:25:19 +00:00
okan
b72940ef73 properly fix (and re-organize) selfont selection. 2013-06-23 17:57:50 +00:00
okan
989f306272 when selfont is configured, make sure we continue and configure the rest
of the screen (quick fix); discovered the hard way by Rodrigo Mosconi.
2013-06-20 02:33:57 +00:00
okan
537fe7febb move Cursors into conf. 2013-06-17 17:11:10 +00:00
okan
8b4f5be847 now that we have conf_screen, which configures individual screens
*after* config parsing, we no longer need to split up display/screen
initialization, so collapse.
2013-06-17 14:08:51 +00:00
okan
a931e155f8 allow mouse button4 and button5; from Rodrigo Mosconi 2013-06-17 00:57:47 +00:00
okan
356be89e9f move synthetic responses and have client_msg only work with WM_PROTOCOLS,
since that's all ClientMessageEvent is for anyway.
2013-06-10 21:37:30 +00:00
okan
5daab9b270 Check for, and honour, CWStackMode and CWSibling change requests during a
ConfigureRequest event.  Additionally, honour a border width change;
detailed report and patch from Mike Small.
2013-06-10 20:11:43 +00:00
sthen
ca4996114f Unlike other parse.y variants, cwm's allowed 'command xx /path/to/xx' without
quotes. Reinstate this support lost in recent sync diff and add a comment to
show that it's intentional. ok okan@
2013-06-03 20:33:17 +00:00
matthieu
89efb1ae8d Update to xterm 293. Tested by naddy@ ajacoutot@ 2013-06-02 19:55:50 +00:00
matthieu
3e0f48d5eb Update to xinit 1.3.2 2013-05-31 21:44:40 +00:00
matthieu
279da4e9e0 Update to xfs 1.1.3 2013-05-31 21:26:53 +00:00
matthieu
1254571aea remove moved file 2013-05-31 20:20:23 +00:00
matthieu
024770724c Update to xdpyinfo 1.3.1 2013-05-31 20:07:35 +00:00
matthieu
5cfae3fd89 Update to bitmap 1.0.7 2013-05-31 20:00:13 +00:00
matthieu
bb07c9db8d Update to xwininfo 1.1.3 2013-05-31 19:57:11 +00:00
matthieu
37afac2469 Update to xrefresh 1.0.5 2013-05-31 19:52:53 +00:00
matthieu
1910a72d9f Update to appres 1.0.4 2013-05-31 19:43:54 +00:00
okan
71bf0bfb16 fix type in a ClientMessage (xu_sendmsg). 2013-05-27 23:20:45 +00:00
okan
4c52391113 alter conf_grab(_kbd) to first ungrab AnyKey/AnyModifier, then proceed
to grab keys in keybindingq.  we don't need to ungrab/grab on every
addition to the queue, just once with a complete keybindingq; simplify
grabbing keys per screen (during init) and during a MappingNotify.

while here, change conf_grab_{kbd,mouse} to require only a Window.
2013-05-23 16:52:39 +00:00
okan
a6aa181292 since we don't have any screens yet, there's no reason to conf_{,un}grab
here; just build keybindingq.
2013-05-22 20:23:21 +00:00
okan
5496d2b0c6 get rid of long standing XXX: now that we configure screens based on
config options, add the keybinding GrabKey calls here
2013-05-22 16:54:09 +00:00
okan
82fdda20a0 move validation of pointer Button into conf_mousebind so we check
validity during the parse phase and not bother adding it to the queue,
instead of each time a client needs to grab (when it's too late);
furthermore, make this a config error, stop parsing and load the
default config.
2013-05-22 16:32:15 +00:00
okan
d121e367b1 sync with src changes 2013-05-22 13:02:14 +00:00
okan
d66a0bde40 handle _NET_WM_STATE ClientMessage; from Alexander Polakov. 2013-05-21 00:29:20 +00:00
okan
1e33cdcb18 stray whitespace 2013-05-20 21:32:00 +00:00
okan
d8afbe1a8b handle _NET_ACTIVE_WINDOW ClientMessage; from Alexander Polakov. 2013-05-20 21:19:15 +00:00
okan
0667dd4edd add support for _NET_WM_STATE_MAXIMIZED_{HORZ,VERT}; from Alexander Polakov.
while I'm unsure of the final look of _NET_WM_STATE, there's no reason
to delay this support.
2013-05-20 21:13:58 +00:00
okan
bd38e60d03 - configure menuwin with the screen, then create the xft drawable using
the menu window since that's the only place on which we draw
- elminate the need to change the drawable on every font draw
2013-05-20 20:21:04 +00:00
okan
85d547bcc5 no reason to pass around *sc when it's already in menu_ctx. 2013-05-20 20:04:36 +00:00
okan
ce73dfea93 move the 2 small font helper functions to xutil.c 2013-05-19 23:38:20 +00:00
okan
f3337f150c move the rest of xft init into screen_conf, since most of it is based on
config parameters.
2013-05-19 23:16:29 +00:00
okan
9baf72c106 - switch border colors to Xft
- merge border/menu color structures/functions since they now both use Xft
- switch xu_xorcolor to operating on XftColor instead of just
  XRenderColor (basically adding pixel)
- if color name allocation fails, revert back to default (this, along
  with font validation should occur during config parse, but we don't
  have screens setup yet - likely to change at some point)
2013-05-19 23:09:59 +00:00
okan
1f7de62e0c add support for _NET_CLOSE_WINDOW 2013-05-19 17:05:52 +00:00
okan
e8ab9bac94 treat WM_CHANGE_STATE like other atoms 2013-05-19 17:03:55 +00:00
okan
f67063c034 use XGetWMProtocols and simplify WM_PROTOCOL handling 2013-05-19 17:02:04 +00:00
okan
54d74a2ed2 simplify 2013-05-19 17:01:29 +00:00
ajacoutot
87065b178b Don't try to start an ssh agent if $SSH_AGENT_PID is already set.
ok matthieu@
2013-05-19 07:22:53 +00:00
okan
a6a2d45671 if -> ifdef 2013-05-14 13:39:53 +00:00
okan
7f75636e2f - let callers of font_draw figure out (and pass) the color instead of an
'active' flag.
- use strlen() inside of font_draw; the only instance where it wasn't
  used happened to be ignored on a subsequent draw.
2013-05-14 12:35:56 +00:00
okan
27a9825a40 swap x/y calculations in kbd move/resize to match those in the respective mouse functions 2013-05-11 22:03:17 +00:00
okan
7ab1469590 new -> init 2013-05-11 22:01:07 +00:00
okan
f00ab96178 replace conf_{gap,color,font} with conf_screen since really we are
configuring the screen *after* parsing, just as we do a conf_client on
client manage.
2013-05-11 21:46:27 +00:00
okan
dc5b3b52df more type fixes for mask/button 2013-05-10 16:32:47 +00:00
okan
6ab8a91ea8 spacing 2013-05-10 16:10:40 +00:00
okan
8044f37078 int type fixes 2013-05-10 16:05:34 +00:00
okan
f0fe071b5a fix KeySym type 2013-05-10 15:44:43 +00:00
okan
384bb6c501 border width/color makes sense for some, so put it back 2013-05-07 01:35:41 +00:00
okan
fb30b6ad26 negative values for borderwith, moveamount, snapdist and gap are
configuration errors, so warn and load defaults.
2013-05-06 19:09:19 +00:00
okan
52cbef8a12 remove group in client_delete directly. 2013-05-06 16:03:11 +00:00
okan
ed984685b1 border width/color makes no sense on menuwin 2013-05-06 16:00:34 +00:00
ajacoutot
a6e96391d2 Start dbus-launch in a consistent way int xinitrc and Xsession and fix
an indent weirdness while here.

ok matthieu@
2013-05-03 05:57:05 +00:00
okan
72e88bc952 - no need to position and size the menu window before an Expose event
since we'll be calculating required size later anyway; allows us to
  consolidate all prompt/display/search string building goop into
  menu_draw.
- reset the pos/size of menuwin when leaving a menu.
- reverse the 'prompt' NULL check to be consistent with 'initial' one
  and fix a whitespace nit while here.
2013-05-02 20:18:35 +00:00
okan
c3f5c37243 zap leftover debug printf 2013-05-02 19:41:52 +00:00
okan
ed8f41814a get rid of cc->name in the resize box and make dimensions more readable. 2013-05-02 19:33:17 +00:00
okan
5e2856ce65 only redraw the name/size box when the client resizes, not every time
there's movement; should slightly help with resize syncs.
2013-05-02 19:30:10 +00:00
okan
f0a6447140 no need for font_{ascent,descent,height} wrappers; limit font_width to
just requiring xftfont.
2013-05-02 17:25:15 +00:00
okan
b0af7028d0 group conf_* init functions 2013-04-30 21:12:20 +00:00
okan
66a7b7fbf9 missing proto 2013-04-30 21:11:07 +00:00
okan
3b69bf465e type fix 2013-04-30 21:10:23 +00:00
okan
87e16df157 use an int in screen_init and avoid needing to cast for screen number (which). 2013-04-29 00:56:47 +00:00
okan
fe3f832f4b mechanical xu_{get,set}state -> xu_{get,set}_wm_state change 2013-04-17 13:57:06 +00:00
okan
62aed144f2 slightly rework WM_STATE set/get to make it less ambigious; will be more clear
on what needs to change to make it right in the end.
2013-04-17 13:52:20 +00:00
okan
fbc1e7edbd zap extra space 2013-04-17 13:31:47 +00:00
okan
373f1ddf90 add conf_ignore and move group_make_autogroup to conf_autogroup to match. 2013-04-17 13:30:38 +00:00
okan
726def3405 only a window is required to set WM_STATE. also un-confuse xu_ptr_getpos
by using 'win' instead of 'rootwin' so as not to imply only the root
window is queried, rather any window.
2013-04-14 16:13:17 +00:00
okan
461decc718 we handle WM_STATE here, so remove misleading comment. 2013-04-12 20:54:27 +00:00
okan
2dfe178aa9 we already set window state in client_hide or client_unhide right before, so
there's no need to do it again.
2013-04-12 20:45:57 +00:00
okan
5e28ed99db makes no sense to set an error handler which uses X_Dpy before XOpenDisplay. 2013-04-12 14:49:16 +00:00
okan
0b6abd364f push Screenq into screen_init 2013-04-12 14:46:30 +00:00
okan
a7e1ba7503 _NET_WM_NAME is UTF8_STRING type 2013-04-10 19:08:09 +00:00
okan
a1a6245df6 plug memleak; always need to menuq_clear even when a selection is made. 2013-04-08 15:43:04 +00:00
okan
4ad10add15 reverse logic to make it like the others 2013-04-08 13:05:27 +00:00
okan
a395df4a8f consistency 2013-04-08 13:02:31 +00:00
okan
29a51173bc missing prototype 2013-04-08 00:56:21 +00:00
okan
ec8c1c2f0f add missing proto; replace magic number 2013-04-05 17:36:02 +00:00
okan
13a11c8799 zap stray whitespace 2013-04-05 17:07:25 +00:00
okan
1eec28aa57 - no reason to breakout ClassHints work, so fold into client_{new,delete},
but keep _MOTIF_WM_HINTS separate.
- simplify fetching app/class hint.
- fix _MOTIF_WM_HINTS Atom type.
2013-04-03 20:22:55 +00:00
okan
01d25075d0 honor PATH search order for exec; from Andres Perera. 2013-04-03 19:28:00 +00:00
okan
b0d374e0fb move XUngrabServer to the end of client_new() to avoid races where clients,
such as those using sdl, attempt to manage the clients themselves when the
clients aren't fully ready.  other wm's grab the xserver during the whole
client setup process, so match.

behavior found by jsg.
2013-04-03 19:20:50 +00:00
okan
118cf232b6 replace handrolled for loop with TAILQ_FOREACH; from andres.p@zoho.com 2013-03-09 21:55:56 +00:00
matthieu
c153d35e6c Remove moved file 2013-03-09 16:39:02 +00:00
matthieu
0e6071eb0b Update to xrandr 1.4.0 2013-03-09 16:35:16 +00:00
matthieu
9cde44668a Upate to xsm 1.0.3 2013-03-09 16:22:38 +00:00
matthieu
263f249525 Update to xvinfo 1.1.2 2013-03-09 15:28:07 +00:00
matthieu
2aa97e5651 Update to xvidtune 1.0.3 2013-03-09 15:24:46 +00:00
matthieu
d9bd2560da Update to xstdcmap 1.0.3 2013-03-09 15:20:56 +00:00
matthieu
dd07b39118 Update to xsetroot 1.1.1 2013-03-09 15:16:14 +00:00
matthieu
b6732faf32 Update to xkbutils 1.0.4 2013-03-09 15:13:30 +00:00
matthieu
fd8289ee9d Update to xfsinfo 1.0.4 2013-03-09 15:07:57 +00:00
matthieu
cda652a22e Upate to xcalc 1.0.5 2013-03-09 15:04:53 +00:00
matthieu
34f23a9551 Update to ico 1.0.4 2013-03-09 15:01:34 +00:00
matthieu
149d6fe9cb Update to beforelight 1.0.5 2013-03-09 14:59:44 +00:00
matthieu
d6a58c5477 Update to bdftopcf 1.0.4 2013-03-09 14:57:25 +00:00
matthieu
a232c77744 Update to xterm 291. Tested by many. 2013-03-09 14:45:38 +00:00
matthieu
53e93bb749 Update to sessreg 1.0.8 2013-03-05 21:03:36 +00:00
matthieu
8d01ae38c0 Update to xev 1.2.1 2013-03-05 21:01:56 +00:00
matthieu
d722203568 Update to rgb 1.0.5. 2013-03-05 20:40:53 +00:00
matthieu
fe859a9f34 Merge patch from Tom Dickey for a segfault that happens when using the
mouse wheel over the scrollbar. ok guenther@ deraadt@
2013-02-27 22:11:56 +00:00
naddy
cd204645e0 don't touch the pty permissions after grantpt() or openpty(); ok matthieu@ 2013-02-10 15:41:48 +00:00
naddy
75b92ad92d Update to luit 1.1.1. ok matthieu@ 2013-02-10 15:38:36 +00:00
todd
b396c5a181 puffy 5.3 2013-02-07 23:16:21 +00:00
brad
491025efd7 Rename dprintf function to debugprintf so as to not conflict with POSIX
function name.

ok millert@
2013-01-25 22:33:54 +00:00
matthieu
67878e3e10 Update to xmessage 1.0.4 2013-01-14 22:20:02 +00:00
matthieu
2d316473d8 update to xmag 1.0.5 2013-01-14 22:17:01 +00:00
matthieu
37a4b27bd4 Update to xgc 1.0.4 2013-01-14 22:13:39 +00:00
matthieu
a5fd897ecd update to xedit 1.2.1 2013-01-14 22:05:51 +00:00
matthieu
cde6b95003 missed files in xconsole 1.0.5 update 2013-01-14 22:01:59 +00:00
matthieu
55a23a69db Upate to xconsole 1.0.5 2013-01-14 21:57:37 +00:00
matthieu
90a3eecec7 update to viewres 1.0.4 2013-01-14 21:45:33 +00:00
matthieu
3928052c8d update to showfont 1.0.4 2013-01-14 21:41:14 +00:00
matthieu
d0e53e7817 Update to editres 1.0.6 2013-01-14 21:35:37 +00:00
okan
a39c86a915 put back r1.68 which allows an empty group to be sticky; behavior
change noticed by Thomas Pfaff and diagnosis why we need to
group_setactive in this case by Alexander Polakov.  replace XXX with
a useful comment.
2013-01-13 13:55:12 +00:00
okan
01f04be317 set the initial group to '1', missed by recent off-by-one group
numbering re-work; discovered the hard way by sthen@.

ok sthen@
2013-01-10 15:28:11 +00:00
okan
a56cb7d9d2 add per-group vert/horiz tiling support; introduces 2 new bind commands,
'vtile' and 'htile'; from Alexander Polakov.
2013-01-08 15:16:04 +00:00
okan
62ff18b6d7 teach screen_find_xinerama() about gap and adjust (simplify) callers;
menu becomes gap-aware for free.
2013-01-08 04:12:51 +00:00
okan
1124cee92f fix menu/client placement in panning setups; XineramaQueryScreens gives
us the width of the psuedo screen, but here we need the edge instead
(xmax/ymax); just re-use w/h here for now.
2013-01-07 21:53:23 +00:00
okan
5c111b8c13 revert previous 2013-01-07 21:45:24 +00:00
okan
0fc885f41e unbreak xinerama support from r1.41 for panning setups 2013-01-07 20:32:19 +00:00
okan
968dc645ee use cc->bwidth in client_vmax since we've yet to reset it (matches
client_hmax); from Jan Stary
2013-01-06 01:01:26 +00:00
matthieu
82b6425627 Update to xterm 287. tested by mpi@ and krw@. 2013-01-04 16:40:18 +00:00
okan
65585e276f rename {h,v}max functions for consistency; from Jan Stary 2013-01-04 16:30:03 +00:00
okan
8ca4aa87e7 really these are just border colors, so adjust the define 2013-01-04 16:27:58 +00:00
okan
41fd96bb01 spacing 2013-01-04 16:23:51 +00:00
okan
9e11fcccad get rid of struct color 2013-01-04 16:23:04 +00:00
okan
07daaf479c pass the screen workarea, as opposed to viewarea, allowing client
snapping to honor gap.
2013-01-02 21:41:14 +00:00
okan
7fa6ca94df re-work client_snapcalc() so it takes client and edge dimensions with
snapdist; allows for simplier snap calculations.

required for an upcoming diff for honoring gap.
2013-01-02 21:37:21 +00:00
okan
68cdbb853d merge in Xinerama screen query; no functional change. 2013-01-02 18:11:23 +00:00
okan
10e814fedf have screen_find_xinerama() return struct geom *reliably* instead of
XineramaScreenInfo; simplifies goop around the callers.
2013-01-02 16:26:34 +00:00
okan
23c2576b3c more variable consistency 2013-01-02 02:19:20 +00:00
okan
621a7f2c53 info->xine, for consistent variable names 2013-01-02 02:02:08 +00:00
okan
f26b8dff2e after we toggle a group hidden, it makes no sense to set it as active
(in sticky or non-stick mode), regardless of existing clients assigned
to that group; oga marked this bit XXX in -r1.34 for it didn't seem make
sense then either.

pulled from a diff from from Alexander Polakov.
2013-01-01 14:50:01 +00:00
okan
572328d529 least intrusive way to plug a memleak when unbinding a duplicate key for
kbfunc_cmdexec; from Tiago Cunha
2013-01-01 14:33:52 +00:00
okan
f67f32f8a5 replace emptystring with strdup here as well so we know we are free'ing
a malloc'd variable everytime; from Tiago Cunha
2013-01-01 14:26:29 +00:00
okan
12bed5f129 make num of groups no longer off-by-one; from Alexander Polakov
note that a re-exec of cwm will not rewrite the group number atom of
*existing* clients, so they will remain off-by-one until each client has
its atom updated, or of course a restart of X.
2013-01-01 14:19:56 +00:00
okan
f718e8894b gc unused cmd 'flags' variable 2012-12-19 15:21:34 +00:00
okan
9a1820657c expand CHILDMASK 2012-12-18 18:39:55 +00:00
okan
ab9f6dbbff use MOUSEMASK since we already have it 2012-12-18 18:35:36 +00:00
okan
565c84cc7a remove unused SEARCHMASK 2012-12-18 17:44:18 +00:00
okan
7f6aabcb3d define LockMask|Mod2Mask; no functional change 2012-12-18 17:37:39 +00:00
okan
44784133e7 simplify config file setup; with Tiago Cunha 2012-12-18 00:14:41 +00:00
okan
4766921753 put a default known_hosts into conf 2012-12-17 23:54:57 +00:00
okan
eabe498038 pull user home directory via getenv or getpwuid and stash it so we don't
need to do this everytime; with Tiago Cunha
2012-12-17 23:03:41 +00:00
okan
b08541104f cmap -> colormap in client_ctx 2012-12-17 18:35:26 +00:00
okan
2410477c9d stash the default screen visual and colormap in screen_ctx 2012-12-17 18:34:06 +00:00
okan
8f15d97537 replace client highlight with a client flag 2012-12-17 17:48:57 +00:00
okan
4ef0e7d9d2 make client_mtf static 2012-12-17 14:58:46 +00:00
okan
1c7a3484bf create and use menuq_clear() helper; from Tiago Cunha 2012-12-17 14:32:39 +00:00
okan
b926f75dcc current_client() returns _curcc, so use it where appropriate 2012-12-17 14:26:29 +00:00
okan
887ac8ab28 screen font -> xftfont 2012-12-17 14:20:52 +00:00
okan
5ca4dca2e3 knf 2012-12-17 02:53:29 +00:00
okan
52982ae188 non-trivial menu drawing rewrite, moving to Xft and solving various
font/color drawing issues; from Alexander Polakov
2012-12-17 02:28:45 +00:00
okan
00eccbe44f zap extra lines 2012-11-29 16:50:03 +00:00
okan
d43f96b65c specific last match for autogroup; few iterations with Kent Spillner. 2012-11-29 04:25:49 +00:00
okan
ddf27615e6 x_setupscreen -> screen_init; no functional change. 2012-11-29 03:54:46 +00:00
okan
58353e9599 remove dead extern 2012-11-29 03:34:19 +00:00
okan
db22777ba0 add xasprintf() for upcoming changes. 2012-11-28 14:32:44 +00:00
okan
9c0280009c ever since the 9wm code bits were removed or replaced, this file has
been a no-op, for each source file has a complete license marker (ISC).

no objections from oga, who did the 9wm rewrite/remove work in 2008.
2012-11-28 14:25:05 +00:00
okan
096354b57d replace hand rolled font_make() with XftFontOpenName() and merge into
font_init().
2012-11-28 14:14:44 +00:00
okan
50585c9a89 add some checks 2012-11-16 14:15:48 +00:00
okan
48634b386c variable name consistency; from Thomas Pfaff 2012-11-14 21:31:53 +00:00
okan
89bef83e09 tab-complete buglet fix: once exec_path is completed, allow for
subsequent completion; from Alexander Polakov
2012-11-14 21:12:24 +00:00
okan
4f78cb6835 sort 2012-11-09 03:52:02 +00:00
okan
81715b0acb fix some warnings; inspired by a diff from Thordur Bjornsson. 2012-11-08 20:18:19 +00:00
okan
74af9940e6 style nit; from Tiago Cunha. 2012-11-07 21:10:32 +00:00
okan
02dbbaba8a add comment why we mouse unbind, just like kbd 2012-11-07 21:04:55 +00:00
okan
62f3e39ff4 now that we have FOREACH_SAFE queue macros, use them where appropriate;
from Tiago Cunha.
2012-11-07 21:01:48 +00:00
okan
8d78ddf545 plug a leak when using 'unmap' for kbd/mouse bindings; from Tiago Cunha. 2012-11-07 20:37:55 +00:00
okan
1e3fec4362 get rid of the xfree() wrapper around free(); from Tiago Cunha. 2012-11-07 20:34:39 +00:00
okan
1d807310d5 clarify windowname and windowclass values are pulled from the WM_CLASS
property; from Kent Spillner
2012-11-07 14:59:07 +00:00
okan
0fa8ad10b0 zap trailing space 2012-11-07 14:58:26 +00:00
okan
4f79744f37 missing headers; from Thordur Bjornsson. 2012-11-07 14:49:46 +00:00
okan
b01ce50ca5 spacing 2012-11-07 14:40:51 +00:00
okan
8bbba5aed3 tab completion support for menus; from Alexander Polakov.
ok sthen@ on an older incarnation
2012-11-07 14:39:44 +00:00
okan
09b4f89a44 try to clarify xprop(1) output, with respect to WM_CLASS, without going
overboard; suggested idea by jmc
2012-11-01 01:10:47 +00:00
okan
17e94be7be no longer a reason to carry conf_path in struct conf, so dice. 2012-10-31 22:06:24 +00:00
okan
34267fe638 replace 'reload' with 'restart', which merely re-exec's cwm using the
existing argv; same idea with respect to argv saving as Alexander
Polakov.  reload support was half-complete and is getting in the way.

agreed to by many
2012-10-31 19:30:19 +00:00
okan
d6b5535794 on reload, run each client through conf_client to pick up potential
ignore and bwidth changes; also add a hack for existing maximized
windows so they don't inherit a new bwidth.

based on a diff from, and discussion with, Tiago Cunha.
2012-10-29 19:46:03 +00:00
okan
b3191069d5 clarify autogroup option; based on diffs from kspillner@acm.org with
feedback from jmc
2012-10-28 20:13:02 +00:00
okan
72f1943e2c comment what this whole bit does, not just part of it. 2012-10-23 16:13:59 +00:00
okan
b94eed0ab4 add a height to struct menu and use it in the most obvious of places. 2012-10-23 16:08:59 +00:00
okan
770189e8ac treat menu width the same as the height is treated when deciding its
max size and location; partially from a diff from Alexander Polakov.
2012-10-23 15:50:15 +00:00
okan
44b83028a3 Stop drawing when menu doesn't fit inside the screen; picked from a
larger diff from Alexander Polakov.
2012-10-23 15:32:38 +00:00
matthieu
cc8a156b77 Force MIT-MAGIC-COOKIE auth for all displays, like we do for :0
since OpenBSD 2.4.
There is something broken with XDM-AUTHORIZATION-1 and xcb
(and also with IPv6) this is hurting when xdm is used on :1
2012-10-07 15:55:28 +00:00
espie
7229d1812a remove utterly bogus tests and simplify.
fvwm was only building thanks to an unlikely series of accidents...

okay matthieu@
2012-09-30 10:12:51 +00:00
okan
762473fe35 revert previous for now until a way to test more than a few encodings is found 2012-09-12 15:09:33 +00:00
okan
f20b0d049d remove scrotwm from fvwm restart menu.
ok matthieu@
2012-09-10 13:52:04 +00:00
okan
2a98b1a00b be explicit in which key masks we allow during keypress and buttonpress
events; from Alexander Polakov - makes non-us layout reliable.
2012-09-10 13:28:04 +00:00
okan
a78478db77 replace with xu_getprop wrapper used everywhere else. 2012-09-09 20:52:57 +00:00
okan
ab1deebeda extend client_resize so that it can know when to reset max flags and
bwidth; this allows a client to be resized from a max state, which now
gets treated like a non-max'd client.  based on a diff that does part of
this in a different way from Alexander Polakov.
2012-09-09 19:47:47 +00:00
matthieu
3e0a91b35c Typo in warn() argument. Reported by Artturi Alm. Thanks. 2012-08-14 12:09:33 +00:00
okan
f4e0469f06 support multibyte input to menu code; from Alexander Polakov with a tiny tweak. 2012-08-07 14:05:49 +00:00
matthieu
484812f429 Typo. From Pappe Kaugummi via jmc@. 2012-08-05 20:59:03 +00:00
ajacoutot
77e64dc403 Indent with tabs like the rest of the script.
ok matthieu@
2012-08-05 07:27:34 +00:00
matthieu
31da0ff76b If dbus is installed, start the daemon as part of the X session.
That will help applications that depend on dbus beeing started.
With ajacoutot@.
2012-08-04 20:41:42 +00:00
todd
259ab9a5e1 puffy 5.2 2012-07-22 22:34:55 +00:00
okan
9e50f2e028 Further simplify Xinerama init and re-init on XRR events.
While testing for Xinerama during setup was done display-wide, each time
XineramaQueryScreens() is called either in start-up or due to an XRR
event, the library re-tests for the Xinerama extension anyway before
moving on; so the initial test is redundant and allows another global to
go away with one other change: always fill in sc->xinerama (and _no),
regardless of the success of malloc in XineramaQueryScreens(), and use
it to see if Xinerama dimensions exist when asked by client and/or menu
code.
2012-07-18 21:53:22 +00:00
okan
476b0dcf17 unify various max routines to match client placement and partially menu ones
when calculating screen dimensions.
2012-07-16 01:53:14 +00:00
okan
8a8244095d check value 2012-07-16 01:42:00 +00:00
okan
147b66e3ac move the HasXinerama check into screen_find_xinerama and simplify logic;
moves closer to logic in menu code.
2012-07-16 01:36:30 +00:00
okan
94b92cf7fb re-use geom struct in client_ctx (saved)geometry. 2012-07-13 17:01:04 +00:00
okan
6ee7c6534f convert xmax/ymax uses to view geometry. 2012-07-13 15:21:35 +00:00
okan
3f2059e461 introduce screen "view" area and "work" area (gap applied) to simplify
various blocks that require understanding the screen geometry.
2012-07-13 14:18:04 +00:00
okan
3ce93c9b3b fix atom for setting WM_STATE. 2012-07-08 02:55:01 +00:00
okan
8260032aee fix atom for retrieving WM_STATE between re-exec's. 2012-07-08 02:50:41 +00:00
okan
0ec36603b5 remove a redundant assignment and another one up. 2012-07-08 01:00:24 +00:00
okan
37bdf57a02 querying for Xinerama should be done per display, not per screen, so
move chuck to display init; allows some shuffling to occur limiting
screen_init_xinerama()'s scope while keeping order intact.
2012-07-06 14:18:00 +00:00
dcoppa
78655b3e88 Add a couple examples of keybindings using keysyms, as discussed
with okan@ and sthen@.

OK okan@, sthen@
2012-07-06 08:41:29 +00:00
okan
43b628a3d0 the display's width and height are updated after an XRandR event so we
don't need to pass down the new values to screen_update_geometry(); so
just read the width/height values directly for both uses of
screen_update_geometry().  prep for further changes in this area.
2012-07-05 17:35:13 +00:00
okan
e52aef56f0 assign and use screen ctx where appropriate and consistently. 2012-07-04 23:42:03 +00:00
okan
3a1ddcb19e use the screen ctx since we already have it assigned. 2012-07-04 18:07:12 +00:00
okan
74ef1605a1 fix missing atom (WM_PROTOCOLS) wrt new style handing; without this, the
window manager didn't know if a client supported CLIENT_PROTO_DELETE and
thus used a hammer, XKillClient.

behaviour reported by Tim van der Molen.
2012-07-04 18:00:13 +00:00
okan
d24974f4cb re-implement atom handing; makes for a normalized and more consistent
separation between cwm and ewmh.  seen by a few.
2012-07-03 13:49:03 +00:00
matthieu
4b78f29c94 Update to xinput 1.6.0 2012-06-11 19:26:23 +00:00
matthieu
c6a1665ad1 Update to xterm 279. Tested by krw@, mpi@, shadchin@. 2012-06-07 20:20:23 +00:00
okan
50687e789b get rid of more stray lines/spaces 2012-05-16 21:57:21 +00:00
okan
838f6a5713 instead of using the menu window for _NET_SUPPORTING_WM_CHECK, create a
dummy one to use instead; allows us to not have to wait for menu_init(),
so re-shuffle _NET_SUPPORTED slightly.

ok sthen@
2012-05-16 01:17:14 +00:00
okan
61a281d1f3 fix comment 2012-05-16 01:10:11 +00:00
okan
adfd269db7 cycle through other common cycling modifiers; based on a diff from
Alexander Polakov.

ok sthen@
2012-05-16 01:09:17 +00:00
okan
abc316c162 convert from deprecated XKeycodeToKeysym to XkbKeycodeToKeysym
ok sthen@
2012-05-16 01:04:36 +00:00
matthieu
430b4661ef Update to xkbcomp 1.2.4 2012-05-15 06:11:32 +00:00
matthieu
4f06515ad9 Update to xmodmap 1.0.7 2012-05-15 06:05:48 +00:00
matthieu
4e4df9aa35 Update to xlsfonts 1.0.4 2012-05-15 06:03:17 +00:00
matthieu
feae0862ba Update to xinput 1.5.4 2012-05-15 05:59:28 +00:00
matthieu
328fca93fa Update fstobdf to version 1.0.5 2012-05-15 05:56:24 +00:00
matthieu
a8dd095f2f Update to fslsfonts 1.0.4 2012-05-15 05:53:55 +00:00
okan
87d3c25241 altpersist->cycling to be more clear that this is for cycling mod
persistence; based on a diff from Alexander Polakov, in preparation for
looping through other potential cycling modifiers.
2012-05-13 15:17:13 +00:00
okan
6dcdd18c5a knf, some from a diff from Tiago Cunha. 2012-05-13 15:15:54 +00:00
okan
dcfe652e93 wrap long lines; from Tiago Cunha. 2012-05-10 00:39:47 +00:00
okan
41a86560b4 fix section order: move AUTHORS below HISTORY; from Tiago Cunha
ok jmc@
2012-05-09 18:37:39 +00:00
pascal
0bb9a6d6a1 kill useless .Pp
ok jmc@
2012-05-07 21:25:29 +00:00
matthieu
3d2d4a1ced Update to xterm 278. Tested by mpi@, shadchin@ 2012-04-14 09:02:46 +00:00
matthieu
7fdca87027 add new specific rules for sh. Whithout those, xterm segfaults on
landisk.
2012-04-07 20:22:27 +00:00
matthieu
2ac5749d6e Remove special build rule disabling optimisation for arm.
Issue apparently fixed, probably by gcc4.
2012-04-07 20:11:43 +00:00
matthieu
f28fa15613 Update to xkbevd 1.1.3 2012-04-07 16:16:31 +00:00
matthieu
606f6f44d7 Update to xwud 1.0.4 2012-04-07 16:13:08 +00:00
matthieu
23e4b1c787 Update to xpr 1.0.4 2012-04-07 16:10:39 +00:00
matthieu
8563437cef Update to xmodmap 1.0.6 2012-04-07 16:07:52 +00:00
matthieu
8915dc5e75 Update to xlsatoms 1.1.1 2012-04-07 16:04:47 +00:00
matthieu
6ba2949b77 Update to xlogo 1.0.4 2012-04-07 16:00:59 +00:00
matthieu
dfd3e7ed0d Update to xload 1.1.1 2012-04-07 15:57:21 +00:00
matthieu
6575cdb6e1 Update to xhost 1.0.5 2012-04-07 15:52:30 +00:00
matthieu
1df31bf605 Update to xgamma 1.0.5 2012-04-07 15:47:32 +00:00
matthieu
10b8ba770d Update to xfontsel 1.0.4 2012-04-07 15:44:34 +00:00
matthieu
2aaa135718 Update to xauth 1.0.7 2012-04-07 15:39:35 +00:00
matthieu
9e2d9b2980 Update to setxkbmap 1.3.0 2012-04-07 15:24:43 +00:00
matthieu
353ef7261a Remove the whole extras directory, not used in OpenBSD builds.
Noticed by fgsch@ a while ago.
2012-03-18 17:17:13 +00:00
matthieu
a19de2b180 Regen with util-macros 1.17. Fixes configure on landisk 2012-03-15 07:52:47 +00:00
matthieu
64c9e1243d Update to bitmap 1.0.6 2012-03-10 11:46:07 +00:00
matthieu
6031f2a714 Remove unused variable. 2012-03-06 23:24:37 +00:00
matthieu
7aed9f3167 Fix 2 NULL pointer dereferences. 2012-03-06 23:23:44 +00:00
matthieu
bb3737dfe0 Update to xfs 1.1.2 2012-03-04 18:36:21 +00:00
matthieu
8b42ccbd9f Update to listres 1.0.3 2012-03-04 18:07:46 +00:00
fgsch
948a98459f rename getline() occurrences to get_line(). 2012-03-04 12:07:01 +00:00
matthieu
27e99179cf Update to xwininfo 1.1.2 2012-02-28 20:49:29 +00:00
matthieu
44bf88c12b Update xwd to 1.0.5 2012-02-28 20:47:43 +00:00
matthieu
2c16010781 Update to xev 1.2.0 2012-02-28 20:44:03 +00:00
matthieu
41d3f90df9 Update xfd to 1.1.1 2012-02-18 09:39:12 +00:00
matthieu
528c956d16 Update to xcompmgr 1.1.6 2012-02-18 09:34:47 +00:00
matthieu
3742ca3c5d Update to xcmsdb 1.0.4 2012-02-18 09:29:41 +00:00
matthieu
2d5c0bef29 oops 2012-02-18 09:23:57 +00:00
matthieu
d8bbfde75d Update to xclock 1.0.6 2012-02-18 09:23:24 +00:00
matthieu
63e678492e Update to xclipboard 1.1.2. 2012-02-18 09:13:03 +00:00
matthieu
bbe1ef7ca1 Update to oclock 1.0.3 2012-02-18 09:08:55 +00:00
matthieu
34ff5946f0 Update to mkfontscale 1.1.0 2012-02-18 09:05:24 +00:00
matthieu
ecc5f838aa update to mkfontdir 1.0.7. no functional change. 2012-02-18 09:01:38 +00:00
ajacoutot
42a7ccaa6a Match the default PATH with what we use in login.conf(5).
This will allow glib's gio mount to find and use mount(8).

input from and ok matthieu@
2012-02-08 14:31:14 +00:00
todd
a3f2742206 puffy 5.1 2012-02-07 20:09:52 +00:00
matthieu
77cabb72e1 Restart menu update: remove window managers that are not available
from ports/packages. Replace them with some more modern ones.
2012-01-29 12:33:56 +00:00
matthieu
0fcf43aa9d Remove trailing white space 2012-01-29 12:20:59 +00:00
espie
6de1c98f99 make xman work again.
if we run into unformatted pages, they're candidate for mandoc (otherwise,
groff should have formatted them already).

We shouldn't ever try to run them thru tbl first, since mandoc takes care
of enough tbl constructs, and will get confused at roff low-level anyways.

So, just run thru cat to avoid changing xman too much.

Since mandoc doesn't have a -Tlatin1 mode, approximate it with -Tascii.
-Tutf8 is definitely out of question until xman talks utf8.

okay matthieu@
2012-01-08 14:03:48 +00:00
okan
42304914dc check if we're in the group already, else multiple calls to
group_movetogroup() on one client will still increment nhidden if the
group is hidden.

found the hard way by Thomas Jeunet and fix from Alexander Polakov -
thanks to both!

ok oga@
2011-12-29 20:48:38 +00:00
matthieu
fe045f1eac replace <varargs.h> by <stdarg.h>. Spotted my Marco Peereboom with clang.
ok kettenis@
2011-12-15 21:12:42 +00:00
matthieu
e329834eb9 set CONFIG_SITE in configure's environment. 2011-12-10 14:54:18 +00:00
matthieu
4b586ef4f2 Restore ecdsa ssh keys support, lost in update to 1.1.11.
Noticed by jsg@
2011-12-03 13:46:00 +00:00
matthieu
9fb6f6d395 Ooops revert something that I didn't intend to commit.
Sorry todd for the gratuitous set changes.
2011-11-30 22:00:28 +00:00
fgsch
5fc00d6a7b fix long standing but wrt to DPMS kicking in and causing the program to
run even if timeout was not specified.  while im here simplify some code.
matthieu@ ok
2011-11-18 00:16:57 +00:00
matthieu
9a810f9e89 Update to xterm 276. Tested by ajacoutot@, krw@, naddy@, shadchin@. 2011-11-16 21:14:25 +00:00
matthieu
8b4d780078 Update to xdm 1.1.11 plus a few patches from git master.
patched to restore static greeter.
Tested by shadchin@, jasper@
2011-11-15 20:53:44 +00:00
matthieu
c45d1a0c09 Bring in full Changelog from xdm 1.1.9. For some reason this file
was missing many entries.
2011-11-06 22:00:14 +00:00
okan
a396addc5c put snapdist in the correct location; as an option, not a bind; Tiago Cunha.
ok oga@
2011-11-06 02:03:47 +00:00
matthieu
84d60d9bd5 Update to xinit 1.3.1 2011-10-31 14:00:14 +00:00
matthieu
25414d5149 Update to xdpyinfo 1.3.0 2011-10-31 13:54:39 +00:00
matthieu
ec8a851f3c Update to sessreg 1.0.7 2011-10-31 13:49:18 +00:00
okan
6f33ccac59 rename variable to reduce potential for name-space collision.
bikesheding and ok oga@.
2011-10-17 18:18:38 +00:00
okan
66bb8d02da use xfree instead of free since strings is allocated with xmalloc; from
dhill

ok oga@
2011-10-12 15:43:50 +00:00
matthieu
a574170c9d Set user PATH from login.conf instead of hard-coded default.
prodded by ajacoutot@. Patch tweaks and ok millert@.
2011-09-30 19:59:05 +00:00
okan
7a6e2b9d5a move client to group (movetogroup) and hide client only if group is
already hidden (suggested behavior from Alexander Polakov).

ok sthen oga
2011-09-19 07:23:03 +00:00
matthieu
c516620bcf Update to xterm-275. Tested by jasper@. 2011-09-17 11:51:57 +00:00
okan
e18bdf5702 fix spelling I keep getting wrong for some unknown reason; found by and
diff from Alexander Polakov.
2011-09-13 09:17:30 +00:00
okan
5d6aec2db4 add WM_TRANSIENT_FOR event support: moves dialogs, toolbars and such to
the group of the main application window; based on a diff from Alexander
Polakov with CLIENT_IGNORE flag suggestion from oga@.

ok oga@
2011-09-13 08:41:57 +00:00
okan
780e9cb0df repair groupcycle (broke after cycle-in-group support added more flags);
found by and fix from Thomas Pfaff.

ok oga@
2011-09-13 08:37:49 +00:00
okan
3f2d53b6dd allow configurable menu font color; from Alexander Polakov with a tweak
from me.

ok oga@
2011-09-08 12:35:33 +00:00
okan
107bc37429 allow menufg/menubg to be configurable; from Alexander Polakov.
ok oga@
2011-09-08 12:07:03 +00:00
okan
9ab59987f7 reinit menu on reload; from Alexander Polakov. needed for catching
upcoming menu config changes.

ok oga@
2011-09-08 12:00:49 +00:00
okan
9dabac6117 restore a comment and add another for clarity. 2011-09-05 07:37:55 +00:00
oga
d341c2bfd8 Make flavours of maximisation additive.
i.e. horiz-max + vertmax = full maximisation.  full - horiz = vertmax.
etc.

Martynas wrote something like this once, so I did okan, this version
seems to finally deal with the corner cases.

ok okan@.
2011-09-04 16:59:31 +00:00
okan
d1b5022611 split off window hints from geometry so we don't need to carry them all
around when dealing with {,h,v}max.  same idea from oga.
2011-09-03 09:42:33 +00:00
okan
ed6f73250e simplify color initialization.
ok oga@
2011-09-03 09:25:39 +00:00
okan
aa9dbd1dca Add {r,}cycleingroup to cycle through clients belonging to the same
group as the active client (as opposed to all unhidden clients); from
Alexander Polakov, with a tiny tweak requested by oga.

ok oga@
2011-09-03 09:20:58 +00:00
okan
f93ec1eba0 "defaultfont" is unclear (and confusing while reading code) when it also
applies to the user supplied font, so rename.

ok oga@
2011-09-03 09:17:16 +00:00
matthieu
a40b5df9e7 Switch to xkeyboard-config is done. Remove old xkbdata and unifdef it.
ok shadchin@
2011-08-30 21:15:30 +00:00
okan
d44962b456 zap unused macro. ok oga@ 2011-08-29 09:10:49 +00:00
okan
dda3ed6180 restore mouse move via the keyboard, noticed by todd@. while the check
for cc was wrong due to the fact that cc->sc is always filled in during
the event, we don't even need it - just operate on the focused screen's
root window regardless.

ok todd@ oga@
2011-08-29 09:09:45 +00:00
matthieu
82fb94cb15 Update to xterm 273. Tested by marco@, jasper@. 2011-08-28 17:40:55 +00:00
matthieu
b9695778d5 2 more .orig files added by mistake. Noticed by shadchin@. Thanks. 2011-08-28 14:23:18 +00:00
matthieu
cdcbc06814 Update to xset 1.2.2 2011-08-28 13:24:52 +00:00
matthieu
007b4f1d62 Update to xrandr 1.3.5 2011-08-28 13:21:00 +00:00
matthieu
6ef0fdd29a Update to xprop 1.2.1 2011-08-28 13:16:51 +00:00
matthieu
c54f608f30 Update to xman 1.1.2 2011-08-28 13:15:52 +00:00
matthieu
b97ad55872 Update to xkbcomp 1.2.3 2011-08-28 11:21:51 +00:00
matthieu
a436c5afac Update to x11perf 1.5.4 2011-08-28 10:45:18 +00:00
matthieu
7a8ca1500f Oops. Didn't mean to add this file. 2011-08-28 10:39:39 +00:00
matthieu
6b48a62adb Update to twm 1.0.7 2011-08-28 10:32:22 +00:00
matthieu
3318d5e0f5 Update to smproxy 1.0.5 2011-08-28 10:21:07 +00:00
matthieu
9438b2112e Update to mkfontscale 1.0.9 2011-08-28 10:19:31 +00:00
oga
af80ac7042 A while ago I wrote some code to not warp to ignored windows on map (rev
1.52), not realising that the previous (less efficient) fix had already
been commited (rev 1.50).

Had this in my tree for ages to remove the previous code. Effectively
reverts rev 1.50.

ok okan@
2011-08-22 16:34:34 +00:00
okan
661c8ef1c1 revert r1.11 of parse.y and create logic in conf_setup instead to deal
with the various scenarios of when to attempt a parse of the config,
load defaults, and when to warn and/or exit.  triggered by bogus warning
first noticed by sobrado@.

ok oga@
2011-08-22 16:18:05 +00:00
marco
722a82d253 Compile trace.c as well so that OPT_TRACE 1 actually works.
ok matthieu
2011-08-18 20:27:03 +00:00
matthieu
80d4fad9d4 Update to xterm 271. Tested by shadchin@ and ajacoutot@ 2011-08-18 19:47:42 +00:00
todd
f61900dfbe puffy 5.0 2011-08-04 03:53:14 +00:00
okan
648d5b0b39 Re-draw borders after reloading, not before; from Alexander Polakov.
ok oga@
2011-07-26 08:51:24 +00:00
okan
3826753e1a use the menu border; from Alexander Polakov, but with the existing define.
ok oga@
2011-07-25 15:41:05 +00:00
okan
bd65f03126 We are inconsistent when it comes to function returns, so just go all
the way with the cwm specific parts.

ok oga@
2011-07-25 15:10:24 +00:00
okan
24bf547e5f Clarify defines and make them not look like non-local ones; started by a
small diff from Thomas Pfaff.

ok oga@
2011-07-23 13:09:11 +00:00
matthieu
e4c257bcd3 Remove an extra debugging printf that leaked in previous commit. 2011-07-16 17:54:07 +00:00
matthieu
06beb28a5c Check if an input device has calibration data before accepting it as
as candidate for calibration.
2011-07-16 17:32:24 +00:00
matthieu
b67526b998 Tweak and fix an unreadable sentence. 2011-07-16 17:30:17 +00:00
matthieu
fc1734598c Add a '-c' option to keep the X cursor visible while calibrating. 2011-07-16 17:27:52 +00:00
matthieu
6efadade45 White space cleanup. 2011-07-16 17:21:41 +00:00
okan
df02d70181 correct spelling; from Alexander Polakov. 2011-07-14 11:39:53 +00:00
jasper
5e7ee14517 spello 2011-06-28 08:18:49 +00:00
okan
33023ff923 UTF8-ify, from Alexander Polakov, but without setlocale(), after
feedback from stsp@ - thanks!

'go for it' oga@
2011-06-27 12:46:54 +00:00
okan
9eac37010a warn if we can't parse the config file on start, just like we do on reload.
part of a larger diff that was ok oga@
2011-06-25 13:37:05 +00:00
okan
5f2753dc80 Since cwm(1) uses the same parser as others in src, document how
comments and line extensions work.  Taken from sthen@'s recent
commit in src.

ok sthen@
2011-06-25 13:12:56 +00:00
okan
0fd446f068 add 'normal' cursor and shuffle the others we use to make a bit more
sense and to be slightly less un-expected.  from Alexander Polakov.
re-use 'normal' cursor now instead XC_hand1 for menu selection.  i
really wish X had real docs and made sense.

ok on earlier diff with '?' removed (but it's back now) oga@
2011-06-24 06:52:23 +00:00
okan
53fbeb4e7a New option to raise a client via the mouse (unbound by default);
opposing action, lower, already exists and bound.  Both keyboard
mappings already exist.

'no opinion either way' oga@
2011-06-24 06:09:26 +00:00
okan
ffa68ab4a0 introduce a new config option to snap to the screen edge. 'snapdist'
keyword taken from a diff from Sviatoslav Chagaev to do the same thing,
but implemented in a completely way (based on some very old code from
mk@).  default set to 0, so no behavior change.

ok oga@ (who would also like to take it further...)
2011-06-24 06:06:24 +00:00
okan
c800341623 re-do various bits of {,h,v}max for simplicity and less flag handling.
as a bonus, flipping between various combinations of vmax+hmax provides
a more predictable behavior.

commitski oga@
2011-06-24 06:01:47 +00:00
okan
5e2c6f5c05 replace the non-working check to see if another wm is running with a
method that actually works.  checking for icccm compliant wm's should
also be done first, but that's another diff (noted by oga).

ok oga@
2011-06-24 05:58:51 +00:00
okan
c1530aea4c more nitems usage.
ok oga@
2011-06-24 05:54:30 +00:00
okan
2f0f43df32 re-order sweep draw so that we map into the client window after
re-parenting; from Sviatoslav Chagaev.

ok oga@
2011-06-24 05:51:25 +00:00
okan
74252c7d0a struct XftFont already has height which we can use directly instead of
calculating ourselves, so do so.

ok oga@
2011-06-24 05:45:57 +00:00
okan
08f0ea6df6 alter a few function returns and prototypes; found by lint.
ok oga@
2011-06-24 05:40:09 +00:00
okan
cfdfe3cdd9 Correct extern declaration and while here, rename a variable to be
pedantic.

from Thomas Pfaff.

ok oga@
2011-06-24 05:33:41 +00:00
okan
209974b036 collapse client and group {r,}cycle defines since they are really
the same thing.

ok oga@
2011-06-24 05:30:42 +00:00
naddy
2e88a2b0e8 switch to installing source manuals:
* cope with new bsd.man.mk
* update imake configuration

ports use of imake remains unchanged
2011-06-23 22:48:59 +00:00
matthieu
3d3ed030c3 Update to xterm 270. Tested by ajacoutot@, shadchin@, krw@ and jasper@ 2011-06-07 19:21:06 +00:00
matthieu
5ef1aa0392 Update to xauth 1.0.6 2011-05-31 20:47:24 +00:00
matthieu
11cd08772b Update to iceauth 1.0.5 2011-05-31 20:42:48 +00:00
okan
3d9ed32226 fix botched client and group cycle defines; noticed by Thomas Pfaff.
"no cookie! fix it" - oga@
2011-05-15 17:58:47 +00:00
okan
dc3d407467 remove left over XSync; ok oga@ 2011-05-13 12:53:19 +00:00
okan
4fb00eca7b tag and comment cleanup; ok oga@ 2011-05-11 13:53:51 +00:00
okan
b1f11d8dc6 introduce a new 'freeze' flag (CMS-f by default) which may be applied to
any window, after which all move/resize requests will be ignored,
essentially freezing the window in place.

there's a possibility to merge this with the 'ignore' concept, pending
on how ignore+freeze should behave (really more ewmh stuff), but punting
for now since ponies are on the line.

requested and tested by thib at k2k11 with ponies, unicorns and rainbows.

'save the unicorns' todd@, ok oga@
2011-05-07 17:15:37 +00:00
matthieu
024397530b Update to xlsclients 1.1.2 2011-05-07 12:41:54 +00:00
oga
a1517de675 On map, don't warp to windows that are marked as ignored.
Requested by Christian Neukirchen last august. He provided a patch but the one I
wrote was significantly simpler (1 - 2 + in the whole diff).

makes sense to okan@.
2011-05-06 19:39:44 +00:00
okan
28ba33af91 bump window resize back to 60hz. instead, we should not need to sync
every time we move/resize a window, so remove XSync in both mouse move
and resize events.  tested by Brynet as well.

ok oga@
2011-05-05 19:52:52 +00:00
okan
800a938556 re-org. ok oga@ 2011-05-05 16:40:37 +00:00
okan
d4b279e29e make the menu window aware of xinerama info; this makes the menu stay
within the current screen, like other cwm window placements and
mutations (vmax/hmax/max) - from Sviatoslav Chagaev.

ok oga@
2011-05-05 15:32:24 +00:00
matthieu
8d5ea2e291 Copy glxinfo and glxgears sources from Mesa demos, since more
recent Mesa releases don't ship MesaDemos anymore.
2011-05-01 15:28:37 +00:00
jakemsr
95e3242529 add the -R option to usage()
spotted by sobrado@
2011-04-11 17:23:18 +00:00
jakemsr
53483e36a8 * use VIDIOC_ENUM_FRAMEINTERVALS to get the supported frame intervals
and display the frame rates if at least on -v is used.
* set/get the video(4) device's frame rate using VIDIOC_{S,G}_PARM.
* add new option -R which dsables frame rate adjustment.  only really
useful for video(4) devices, to see the difference between the frame
rate the device generates and what it says it's configured for ...
many devices don't generate the rate they are configured if they
aren't getting enough light ...
* poll(2) input with INFTIM instead of 0 timeout, and handle the poll(2)
call being interrupted by the frame timer.
* only use usleep(3) to wait for frames if the input is a file, and
in that case, sleep for a full frame interval or until interrupted
by the frame timer.
* update the manual to describe the new -R option, that -r now sets
video(4) frame rate, and that at least one -v will display supported
properties of the hardware.
2011-04-11 02:58:49 +00:00
matthieu
eccbc42473 Whitespace stuff; new sentence, new line; fix some xrefs; use Aq more.
From mbalmer@NetBSD.
2011-04-08 20:03:47 +00:00
matthieu
94e8a384a5 Update to xrdb 1.0.9.
Includes a fix for CVE-2011-0465, to which OpenBSD is not vulnerable, since
dhclient will reject any hostname option containing invalid characters like
$ or `
2011-04-05 18:59:49 +00:00
okan
98c5b36dbb revert the XSync timing change for client move only; first noticed by
brynet.

sure oga@
2011-03-23 07:27:32 +00:00
okan
4c04a27385 warp the pointer back, iff we don't move the mouse, once we are done
with the menu; idea and initial from Sviatoslav Chagaev.

discussion with and ok oga@
2011-03-22 13:50:40 +00:00
okan
9a52c582b1 we should re-focus the client and ungrab the ptr even if we don't have a
mouse based match (i.e. in the kbd no match case).  update the comment
as well.

ok oga@
2011-03-22 11:09:52 +00:00
okan
482c4ce498 fix nousance of always highlighting the first entry even when there is
no match (seen in the ctrl-a case)

ok oga@
2011-03-22 11:05:13 +00:00
okan
d0a487aa3d move the default case to the end.
ok oga@
2011-03-22 11:03:05 +00:00
okan
a9420f917b reduce the number of times we sync during a window resize.
ok oga@
2011-03-22 10:59:08 +00:00
okan
1494c3e4c9 introduce nitems macro, with the appropriate ifndef.
ok oga@
2011-03-22 10:57:31 +00:00
okan
2de4639d4c if virt/horz un-maximizing, restore only the un-maximized axis
coordinates; allows moving a client and not restoring the maximized axis
coordinates.

picked from a larger martynas diff from ages ago.

ok oga@
2011-03-22 10:56:08 +00:00
okan
f109779994 (0,0) is also inside in the screen; from Sviatoslav Chagaev.
ok oga@
2011-03-22 10:54:42 +00:00
okan
51c21fc3ef while this piece deals with client argv's in a seemingly inefficient way
(noticed by Tim Peniket), since we don't ever do anything with cliarg,
remove the hunk and cliarg completely.

ok oga@
2011-03-22 10:52:37 +00:00
okan
a2810e744d remove XXX and move a configure event out of the event handler functions.
reminded by a similiar diff from Thomas Pfaff.

ok oga@
2011-03-22 10:49:46 +00:00
okan
3b73daa6c2 move the single keycode function directly into the menu code.
ok oga@
2011-03-22 10:47:59 +00:00
matthieu
4d8053ee26 Add support for ecdsa SSH keys. From dave at davec dot name. Thanks. 2011-03-19 15:40:02 +00:00
sobrado
056292656a lexicographically sort keys.
ok jakemsr@, jmc@
2011-03-18 20:08:58 +00:00
matthieu
34bb2b0d31 Update to xkbcomp 1.2.1 2011-03-13 15:03:00 +00:00
matthieu
b05803ac41 Remove extra test. 2011-03-09 19:53:24 +00:00
matthieu
7ae39052df xcb is no longer optional. 2011-03-08 20:48:59 +00:00
matthieu
2cc47a1202 add a new build switch 'XENOCARA_USE_XKEYBOARD_CONFIG' to enable
the use of xkeyboard-config xkb definitions instead of the old xkbdata.
This will make testing easier. No changes in default builds.
ok shadchin@
2011-03-08 07:59:23 +00:00
matthieu
b9f6c3a045 Update to xterm version 269.
Tested and ok ajacoutot@, jasper@, krw@, shadchin@
2011-03-07 20:41:27 +00:00
okan
eab1b94e0a if we are saving the pointer location for a specific client, make sure
that if it is not already inbounds, put it in the default location,
which happens to be inbounds.

behavior noticed by Thomas Pfaff while maximizing and un-maximizing a
window, leaving the pointer behind and causing client_cycle() to be a
bit lost.

ok oga@
2011-02-13 20:09:57 +00:00
tedu
c222c6a5c7 we lose track of highstack somewhere, so recompute it before we need it.
fixes a crash reported by christian neukirchen.  ok okan
2011-02-13 17:25:20 +00:00