Marco Peereboom [Tue, 30 Oct 2012 16:19:26 +0000 (11:19 -0500)]
Prepare for release 2.1.0.
Reginald Kennedy [Tue, 30 Oct 2012 12:53:53 +0000 (20:53 +0800)]
Change event mask on bar windows to handle pointer activity.
Reginald Kennedy [Mon, 29 Oct 2012 22:35:50 +0000 (06:35 +0800)]
Fix handling of region focus on screen change.
Unmap windows in workspaces that lose visibility on screen change.
Reginald Kennedy [Mon, 29 Oct 2012 22:04:56 +0000 (06:04 +0800)]
Fix typo.
Reginald Kennedy [Mon, 29 Oct 2012 21:36:00 +0000 (05:36 +0800)]
Focus on first region on screenchange.
Marco Peereboom [Mon, 29 Oct 2012 21:20:15 +0000 (16:20 -0500)]
add xlock to list that isnt verified during startup
Marco Peereboom [Mon, 29 Oct 2012 21:06:00 +0000 (16:06 -0500)]
add exceptions to the .sh to keep backwards compat
Marco Peereboom [Mon, 29 Oct 2012 20:05:42 +0000 (15:05 -0500)]
remove some defaults that dont make sense
also warn on empty key = value pair
Marco Peereboom [Mon, 29 Oct 2012 19:41:59 +0000 (14:41 -0500)]
test all spawn things to see if they exist
Marco Peereboom [Mon, 29 Oct 2012 19:12:01 +0000 (14:12 -0500)]
add first stab at startup exceptions
Reginald Kennedy [Mon, 29 Oct 2012 20:17:45 +0000 (04:17 +0800)]
Fix typo.
Reginald Kennedy [Mon, 29 Oct 2012 19:30:22 +0000 (03:30 +0800)]
Set region focus on screenchange.
Marco Peereboom [Mon, 29 Oct 2012 16:45:57 +0000 (11:45 -0500)]
remove clang target
Reginald Kennedy [Mon, 29 Oct 2012 15:06:45 +0000 (23:06 +0800)]
Map all top-level-windows in max_stack.
Remove unused variable in max_stack.
Reginald Kennedy [Mon, 29 Oct 2012 14:53:40 +0000 (22:53 +0800)]
Fix window focus cycling on single-head fullscreen layout.
Reginald Kennedy [Sat, 27 Oct 2012 08:04:28 +0000 (16:04 +0800)]
Fix bar border color when starting with a single region.
Reginald Kennedy [Fri, 26 Oct 2012 06:24:19 +0000 (14:24 +0800)]
Add new argument variables for programs:
$region_index
$workspace_index
Reginald Kennedy [Wed, 24 Oct 2012 11:11:46 +0000 (19:11 +0800)]
Add tile_gap option.
Pixel width of empty space between tiled windows.
Add region_padding option.
Pixel width of empty space within region borders.
Reginald Kennedy [Wed, 24 Oct 2012 16:38:30 +0000 (00:38 +0800)]
Add new bar_border_unfocus[x] option.
Reginald Kennedy [Wed, 24 Oct 2012 14:32:17 +0000 (22:32 +0800)]
Fix issue where stdin is selected when no bar_action script is running.
Change bar_extra_update to return 1 if bar_ext was changed; otherwise 0.
Call draw_bar in main instead of bar_extra_update.
Remove redundant bar_extra_running variable.
Use STDIN_FILENO/STDOUT_FILENO macros instead of 0/1.
Reginald Kennedy [Wed, 29 Aug 2012 13:45:30 +0000 (21:45 +0800)]
Add focus region bindings 'rg_<n>'
Default is M-Keypad_<1-9>
Add move window to region bindings 'mvrg_<n>'
Default is M-S-Keypad_<1-9>
Add invisible input window to each region for handling region focus.
On unfocused regions, set the bar border color to color_unfocus.
Add function to handle MotionNotify events on region input windows.
Fix default focus on (re)start.
Fix region-related function and macro naming.
Names referred to 'screen' instead of 'region'
Rename screen_* bindings to rg_*.
screen_* is now an alias for rg_*; old config files will still work.
Fix screen/region wording in manpage.
Sort setkeybinding calls in setup_keys.
Cleanup redundant calls when setting up the bar.
Reginald Kennedy [Mon, 22 Oct 2012 03:34:29 +0000 (11:34 +0800)]
Kill bar script on an unclean exit.
Reginald Kennedy [Sat, 6 Oct 2012 18:16:27 +0000 (02:16 +0800)]
Ignore UnmapNotify if from an unmanaged child of a managed window.
Reginald Kennedy [Wed, 3 Oct 2012 18:05:30 +0000 (02:05 +0800)]
Fix toggle_bar not working on empty workspaces.
Reginald Kennedy [Sat, 29 Sep 2012 17:04:19 +0000 (01:04 +0800)]
Fix issue where multiple key actions might be handled simultaneously.
Improve debug output for keypress.
Reginald Kennedy [Fri, 28 Sep 2012 18:17:02 +0000 (02:17 +0800)]
Fix focus fallback behavior when iconified windows exist in the ws.
Reginald Kennedy [Fri, 28 Sep 2012 15:27:16 +0000 (23:27 +0800)]
Add check in focus_win to ignore windows that are unmapped.
Alphabetize configopt array.
Reginald Kennedy [Wed, 26 Sep 2012 15:47:39 +0000 (23:47 +0800)]
Fix windows not being unmapped on single-monitor fullscreen layout.
Fix stdin drain when bar is disabled.
Reginald Kennedy [Tue, 25 Sep 2012 13:39:15 +0000 (21:39 +0800)]
Only read external script output when available in the main loop.
Rename bar_fmt_print to bar_draw.
Change all bar_update calls to bar_draw, except in main.
Rename bar_update to bar_extra_update.
To clarify, bar_extra_update reads the external bar script output and
redraws the bar if needed; bar_draw only redraws the bar with the
current external bar script output.
Reginald Kennedy [Tue, 25 Sep 2012 10:24:32 +0000 (18:24 +0800)]
Fix bar to correctly handle external script partial output.
Reginald Kennedy [Sun, 23 Sep 2012 11:18:32 +0000 (19:18 +0800)]
Add xcb_flush after bar_update in main loop.
Reginald Kennedy [Sun, 23 Sep 2012 10:39:06 +0000 (18:39 +0800)]
Remove unused global variable.
Reginald Kennedy [Sun, 23 Sep 2012 10:33:23 +0000 (18:33 +0800)]
Change bar_action handling to eliminate the need for bar_delay.
Old code called alarm() regularly and checked for input only at certain
times. Now, the file descriptor for reading the text is added to the
select() in the main loop, and so updates are caught immediately and
efficiently.
Patch submitted by Jason Woofenden <jason@jasonwoof.com>
(Note: Minor modifications were made to formatting and a dummy version
of the bar_delay option was added to avoid breaking old conf files.)
Reginald Kennedy [Thu, 6 Sep 2012 12:16:14 +0000 (20:16 +0800)]
Add new bar_enabled_ws[x] config option.
It is now possible to set the default state for bar_toggle_ws.
Reginald Kennedy [Thu, 6 Sep 2012 10:58:54 +0000 (18:58 +0800)]
Change bar_toggle_ws to enable overall visibility of bars when needed.
Reginald Kennedy [Thu, 6 Sep 2012 10:48:41 +0000 (18:48 +0800)]
Add new key binding: bar_toggle_ws (M-S-b)
It is now possible to toggle the status bar on each workspace.
bar_toggle is a 'master switch' to change the visiblity of bars on all
regions.
Reginald Kennedy [Wed, 5 Sep 2012 15:51:32 +0000 (23:51 +0800)]
Fix buttonpress sometimes not releasing the pointer event queue.
Reginald Kennedy [Wed, 5 Sep 2012 15:12:05 +0000 (23:12 +0800)]
Fix mouse and keyboard binds to work regardless of caps/numlock state.
Reginald Kennedy [Wed, 5 Sep 2012 14:47:31 +0000 (22:47 +0800)]
Fix possible segfault when a floater receives a configurerequest.
David Hill [Wed, 29 Aug 2012 15:35:40 +0000 (11:35 -0400)]
plug some memory leaks.
Reginald Kennedy [Wed, 29 Aug 2012 03:00:19 +0000 (11:00 +0800)]
Change bar_ext from 'unsigned char' to 'char'.
Change a couple warning messages.
Reginald Kennedy [Mon, 27 Aug 2012 10:22:51 +0000 (18:22 +0800)]
Fix segfault when mouse enters/clicks an area outside region bounds.
Reginald Kennedy [Wed, 29 Aug 2012 00:35:50 +0000 (08:35 +0800)]
Add missing prototype in swm_hack.c.
Remove stray end of line space.
David Hill [Tue, 28 Aug 2012 23:50:38 +0000 (19:50 -0400)]
MERGE_MEMBERS is unused.
David Hill [Tue, 28 Aug 2012 23:50:01 +0000 (19:50 -0400)]
sysconf returns long
David Hill [Tue, 28 Aug 2012 23:46:51 +0000 (19:46 -0400)]
add -Wmissing-prototypes
David Hill [Tue, 28 Aug 2012 23:46:31 +0000 (19:46 -0400)]
clean -Wshadow
David Hill [Tue, 28 Aug 2012 23:42:33 +0000 (19:42 -0400)]
add remaining missing prototypes
David Hill [Tue, 28 Aug 2012 23:20:23 +0000 (19:20 -0400)]
print_win_geom is SWM_DEBUG only
David Hill [Tue, 28 Aug 2012 23:15:53 +0000 (19:15 -0400)]
add missing spawn_ prototypes
David Hill [Tue, 28 Aug 2012 21:04:52 +0000 (17:04 -0400)]
add missing prototypes
Marco Peereboom [Mon, 27 Aug 2012 16:13:10 +0000 (11:13 -0500)]
Prepare for release 2.0.2.
Reginald Kennedy [Mon, 27 Aug 2012 15:45:03 +0000 (23:45 +0800)]
Fix scan_xrandr to fallback when a scan results in no new regions.
David Hill [Mon, 27 Aug 2012 14:46:07 +0000 (10:46 -0400)]
couple more const's
David Hill [Mon, 27 Aug 2012 13:40:49 +0000 (09:40 -0400)]
sprinkle some const
Reginald Kennedy [Mon, 27 Aug 2012 12:33:00 +0000 (20:33 +0800)]
Add tilde ~ expansion to autorun command in the config.
Marco Peereboom [Sun, 26 Aug 2012 13:11:22 +0000 (08:11 -0500)]
Prepare for release 2.0.1.
Reginald Kennedy [Sun, 26 Aug 2012 12:39:47 +0000 (20:39 +0800)]
Remove setquirk error; just ignore when attempting to set quirk to NONE.
Reginald Kennedy [Sun, 26 Aug 2012 12:10:30 +0000 (20:10 +0800)]
Fix use of free'd memory.
Fix memory leak.
Submitted by: Campbell Barton (ideasman42)
Reginald Kennedy [Sun, 26 Aug 2012 10:53:45 +0000 (18:53 +0800)]
Add support for Xcursor.
Reginald Kennedy [Sun, 26 Aug 2012 11:09:42 +0000 (19:09 +0800)]
Fix 'focus_mode = default' to ignore pointer position on startup.
Reginald Kennedy [Fri, 24 Aug 2012 17:23:32 +0000 (01:23 +0800)]
Fix issue when switching to a workspace in fullscreen layout (max_stack).
Reginald Kennedy [Fri, 24 Aug 2012 15:33:15 +0000 (23:33 +0800)]
Fix stacking of transients and new windows in max_stack mode.
Fix issue in libswmhack that can cause applications to crash.
Fix issue in mouse button handling that could cause a segfault.
Improve focus handling so related windows are raised when appropriate.
Fix ConfigureRequest handling of floating windows in max_stack mode.
Fix issue in startup where managable windows are sometimes not managed.
Fix possible focus issue when changing focus with keyboard bindings.
Add debug output to grab_windows function.
Reginald Kennedy [Thu, 23 Aug 2012 20:43:46 +0000 (04:43 +0800)]
Fix focus issue when a window is manipulated via EWMH.
Fix issues when in unmapnotify.
Improve debug output for PropertyNotify events.
Reginald Kennedy [Thu, 23 Aug 2012 00:29:23 +0000 (08:29 +0800)]
Fix keyboard move and resize operation delay.
Fix debug mode segfault in unmapnotify.
Marco Peereboom [Wed, 22 Aug 2012 20:29:37 +0000 (15:29 -0500)]
Prepare for release 2.0.0.
Reginald Kennedy [Wed, 22 Aug 2012 19:36:11 +0000 (03:36 +0800)]
Fix uninitialized variable warning.
Reginald Kennedy [Wed, 22 Aug 2012 19:29:03 +0000 (03:29 +0800)]
Fix follow mode window unmap focus issue.
Reginald Kennedy [Wed, 22 Aug 2012 18:16:22 +0000 (02:16 +0800)]
Fix manual focus mode not allowing empty regions to be clicked.
Improve debug output for ButtonPress event.
Reginald Kennedy [Wed, 22 Aug 2012 16:02:48 +0000 (00:02 +0800)]
Fix new windows not always being handled in a prompt fashion.
Reginald Kennedy [Wed, 22 Aug 2012 15:50:06 +0000 (23:50 +0800)]
Fix switchws issue when swapping with an empty workspace.
Fix screen switching issue when switching to a screen with an empty ws.
Improve root_to_region by adding check flags for pointer, focus, etc.
When moving mouse pointer to a region with an empty ws, focus on root.
Select EnterNotify events on root for moving mouse to an empty region.
Reginald Kennedy [Wed, 22 Aug 2012 13:35:33 +0000 (21:35 +0800)]
Take input focus into consideration when determining active region.
Change screen_next and screen_prev to no longer warp mouse pointer.
Reginald Kennedy [Wed, 22 Aug 2012 11:14:00 +0000 (19:14 +0800)]
Fix focus when transient windows get unmapped, but not destroyed.
Cleanup some logical operations.
Improve debug output for ConfigureNotify events.
Reginald Kennedy [Tue, 21 Aug 2012 18:24:09 +0000 (02:24 +0800)]
Fix follow_cursor focus mode and rename option value to 'focus'.
Note that previous value of 'focus_cursor' is still valid.
Reginald Kennedy [Tue, 21 Aug 2012 17:23:28 +0000 (01:23 +0800)]
Fix focus issue when swapping visible workspaces.
Fix move window to workspace operation.
Rename update_iconic function to set_swm_iconic.
Cleanup propertynotify function.
Reginald Kennedy [Mon, 20 Aug 2012 22:53:45 +0000 (06:53 +0800)]
Fix unmapnotify to update the win mapping and iconic state.
Improve set_win_state debug.
Remove commented global variable.
Reginald Kennedy [Mon, 20 Aug 2012 18:17:01 +0000 (02:17 +0800)]
Fix focus on iconify.
Remove some double blank lines.
Reginald Kennedy [Mon, 20 Aug 2012 18:02:41 +0000 (02:02 +0800)]
Silence the -Wconditional-uninitialized warning with clang.
Reginald Kennedy [Mon, 20 Aug 2012 17:18:47 +0000 (01:18 +0800)]
In Linux Makefile, only set CC when it isn't already set.
Fix some uninitialized warnings.
Reginald Kennedy [Mon, 20 Aug 2012 16:40:55 +0000 (00:40 +0800)]
Fix switchws to unfocus the focused win before operating on ws.
In unmanage_window, do not change focus.
Add more member initializations in workspace.
Add new focus_pending member to workspace.
Fix destroynotify to correctly set focus.
In propertynotify when state has a new value, check the state.
Reginald Kennedy [Mon, 20 Aug 2012 14:34:55 +0000 (22:34 +0800)]
Add WM_HINT_INPUT compatibility macro for old xcb-util versions.
Fix switchws to set focus immediately when swapping visible workspaces.
Reginald Kennedy [Sun, 19 Aug 2012 20:58:12 +0000 (04:58 +0800)]
Add border with unfocused color for all windows in manage_window.
Reginald Kennedy [Sun, 19 Aug 2012 23:51:00 +0000 (07:51 +0800)]
Replace map_window_raised with map_window function.
Rename get_iconic to get_swm_iconic
Add new xcb_timestamp_t parameter to client_msg.
Add debug output to client_msg.
Remove unfocus_all since no longer needed.
Fix focus_win to correctly set focus on window.
Time must be specified in ClientMessage WM_TAKE_FOCUS.
Track window mapped state.
Change focus function to only set workspace focus; need to call
focus_win separately.
Fix focus_win function to correctly set window focus.
Add FocusOut debug output.
Add debug message to client_msg.
Add timestamp parameter to client_msg.
When sending the client message WM_TAKE_FOCUS, the time must not be
XCB_TIME_CURRENT.
Check window state before unmapping.
Track X11 timestamps for use in focus_win.
Handle iconify on property notify.
Reginald Kennedy [Mon, 20 Aug 2012 13:17:45 +0000 (21:17 +0800)]
Unmap after map in switchws.
Reginald Kennedy [Mon, 20 Aug 2012 11:42:49 +0000 (19:42 +0800)]
Convert SWM_ARG_ID_FOCUSCUR into a function called get_region_focus.
Reginald Kennedy [Sun, 19 Aug 2012 23:51:00 +0000 (07:51 +0800)]
Fix focus_win function to correctly set window focus.
Time must be specified in ClientMessage WM_TAKE_FOCUS; not
XCB_TIME_CURRENT.
Add timestamp parameter to client_msg.
Track X11 timestamps for use in focus_win.
Track window mapped state.
Check window state before unmapping.
Change focus function to only set workspace focus; need to call
focus_win separately.
Add debug output for FocusOut event.
Replace map_window_raised with map_window function.
Rename get_iconic to get_swm_iconic
Add debug output to client_msg.
Remove unfocus_all since no longer needed.
(Un)iconify in propertynotify.
Reginald Kennedy [Fri, 17 Aug 2012 00:07:59 +0000 (08:07 +0800)]
Fix stack_config by adding a focus_flush().
Reginald Kennedy [Thu, 16 Aug 2012 23:05:17 +0000 (07:05 +0800)]
Fix search_resp by adding xcb_flush.
Reginald Kennedy [Thu, 16 Aug 2012 22:27:02 +0000 (06:27 +0800)]
Change manual focus mode; focus is set with mouse button 1.
Grab only the mouse buttons for the binds and button 1 for focus.
Fix focus_win to not unfocus the same window twice.
Add more debug messages to unfocus_win.
Change Xlib macro to XCB.
Change unmanage_window to not focus on root.
Rename focus_magic to get_focus_magic.
Rename focus_prev to get_focus_prev and make it return the win to focus.
Reginald Kennedy [Thu, 16 Aug 2012 10:27:55 +0000 (18:27 +0800)]
Fix focus_win to call unfocus_win when appropriate.
Change grabkeys() to grab in synchronous mode.
Reginald Kennedy [Wed, 15 Aug 2012 14:40:24 +0000 (22:40 +0800)]
Fix grabbuttons.
Reginald Kennedy [Wed, 15 Aug 2012 13:51:37 +0000 (21:51 +0800)]
Fix mouse button grab.
Reginald Kennedy [Mon, 13 Aug 2012 21:41:39 +0000 (05:41 +0800)]
Add new 'manual' focus_mode.
Mouse sets focus on window interaction.
Add new focus_flush() function to cleanup code.
Remove do_sync() since it is not needed.
Reginald Kennedy [Sun, 12 Aug 2012 19:39:43 +0000 (03:39 +0800)]
Fix floating window positioning.
Always center unless ANYWHERE quirk is set or window was manually
moved or resized.
Add new load_float_geom() function.
Fix float_toggle to ignore fullscreen windows.
Fix ConfigureRequest events sometimes causing a focus change.
Fix event_drain sometimes not working as expected.
Remove some #if 0 code.
Reginald Kennedy [Sun, 12 Aug 2012 15:48:31 +0000 (23:48 +0800)]
Fix xcb_create_window() call in workaround().
Reginald Kennedy [Sun, 12 Aug 2012 15:21:40 +0000 (23:21 +0800)]
Fix xcb_poly_fill_rectangle() call in bar_print().
Reginald Kennedy [Tue, 7 Aug 2012 16:57:35 +0000 (00:57 +0800)]
Fix window configuration issue affecting programs such as mplayer.
Improve debug output for ConfigureRequest events.
Reginald Kennedy [Sun, 5 Aug 2012 17:01:05 +0000 (01:01 +0800)]
Only try to set focus on a window once it is known to be mapped.
Cleanup manage_window.
Add _NET_WM_ACTION_ABOVE to _NET_WM_ALLOWED_ACTIONS on floaters.
Focus rework; focus_magic returns the focus window instead of actually
setting it. focus_win must now be called explicitly.
Add more EnterNotify drains and xcb_flushes.
Disable atom name resolving in debug mode.
Reginald Kennedy [Sat, 4 Aug 2012 08:08:12 +0000 (16:08 +0800)]
Fix segfault when a ConfigureRequest is sent to a window in a hidden ws.
Reginald Kennedy [Sat, 4 Aug 2012 05:29:18 +0000 (13:29 +0800)]
Fix numlock issues.
Convert some constants to XCB