Age | Commit message (Collapse) | Author |
|
(show_frame_indicator): likewise
* src/split.c: include <unistd.h>
(split_frame): set the new_frame's window to NULL
(split_frame): calls show_frame_indicator once the split is done.
(set_active_frame): only call show_frame_indicator if the frame
has no window or if we switched to a different frame.
(update_frame_indicator): prints FRAME_STRING in the frame
indicator window.
(hide_frame_indicator): new function
(show_frame_indicator): likewise
* src/main.c (rp_rat_bits): new variable
(rp_rat_mask_bits): likewise
(alrm_handler): calls hide_frame_indicator
(init_rat_cursor): new function
(init_screen): calls init_rat_cursor
* src/events.c (unmap_notify): calls set_active_frame if the
window being unmapped was in the current frame
(destroy_window): calls set_active_frame if the
window being destroyed was in the current frame
(grab_rat): new function
(grab_rat): likewise
(handle_key): calls grab_rat and ungrab_rat
* src/data.h (struct screen_info): new variable rat
* src/conf.h (FRAME_INDICATOR_TIMEOUT): new #define
(FRAME_STRING): likewise
(RAT_HEIGHT): likewise
(RAT_WIDTH): likewise
(RAT_HOT_X): likewise
(RAT_HOT_Y): likewise
* src/actions.h (cmd_curframe): new prototype
* src/actions.c (initialize_default_keybindings): new key binds
for "curframe"
(user_commands): new command "curframe"
(cmd_curframe): new function
* src/split.c (remove_all_splits): only maximize the current
window if there is one.
(maximize_frame): remove unused code to retrieve the current
screen_info.
* src/actions.c (cmd_h_split): calls h_split_frame on the current
frame.
(cmd_v_split): likewise
(cmd_only): even if the current frame is empty, call
remove_all_splits.
* src/split.c (maximize_frame): new function
(create_initial_frame): calls maximize_frame to fill in the
initial frame's fields.
(num_frames): comment out
(remove_frame): remove special case when there is only 1 frame
left.
* src/split.h (h_split_frame): renamed frome h_split_window
(v_split_frame): renamed frome v_split_window
(split_frame): renamed frome split_window
(remove_all_splits): renamed frome remove_all_frames
(find_windows_frame): new prototype
(find_frame_next): likewise
(find_frame_prev): likewise
(current_window): likewise
(init_frame_list): likewise
(set_active_frame): likewise
* src/split.c (create_initial_frame): new function
(init_frame_list): likewise
(find_windows_frame): likewise
(find_frame_next): likewise
(find_frame_prev): likewise
(current_window): likewise
(update_frame_indicator): likewise
(set_active_frame): likewise
(split_frame): rename from split_window
(v_split_frame): rename from v_split_window
(h_split_frame): rename from h_split_window
(remove_all_splits): renamed frome remove_all_frames
(total_frame_area): traverses rp_window_frame list
(num_frames): likewise
(frame_overlaps): likewise
(remove_frame): likewise
(remove_frame): calls delete_frame_from_list
* src/main.c (main): calls init_frame_list
(init_screen): create and map the frame_window
* src/events.c (new_window): the screen's frame_window is not
managed
(cleanup_frame): new function
(unmap_notify): calls cleanup_frame if window exists in a frame
(destroy_window): likewise
* src/data.h (struct screen_info): remove frame field
(struct rp_window_frame): new fields win, prev, next
(rp_window_frame_sentinel): new global
* src/actions.c (cmd_prev): jumps to last accessed window if
current frame is empty.
(cmd_next): likewise
(cmd_remove): nothing is done if only 1 frame exists
* src/data.h (struct screen_info): new field frame_window
(rp_current_frame): new global
(rp_current_window): removed. All dependant code updated.
|
|
window if there is one.
(maximize_frame): remove unused code to retrieve the current
screen_info.
* src/actions.c (cmd_h_split): calls h_split_frame on the current
frame.
(cmd_v_split): likewise
(cmd_only): even if the current frame is empty, call
remove_all_splits.
|
|
(v_split_frame): renamed frome v_split_window
(split_frame): renamed frome split_window
(remove_all_splits): renamed frome remove_all_frames
(find_windows_frame): new prototype
(find_frame_next): likewise
(find_frame_prev): likewise
(current_window): likewise
(init_frame_list): likewise
(set_active_frame): likewise
* src/split.c (create_initial_frame): new function
(init_frame_list): likewise
(find_windows_frame): likewise
(find_frame_next): likewise
(find_frame_prev): likewise
(current_window): likewise
(update_frame_indicator): likewise
(set_active_frame): likewise
(split_frame): rename from split_window
(v_split_frame): rename from v_split_window
(h_split_frame): rename from h_split_window
(remove_all_splits): renamed frome remove_all_frames
(total_frame_area): traverses rp_window_frame list
(num_frames): likewise
(frame_overlaps): likewise
(remove_frame): likewise
(remove_frame): calls delete_frame_from_list
* src/manage.c (scanwins): skips the frame_window
(maximize_transient): finds the window's frame
(maximize_normal): likewise
* src/main.c (main): calls init_frame_list
(init_screen): create and map the frame_window
* src/list.c (give_window_focus): new function
(goto_window): likewise
(set_active_window): calls give_window_focus
* src/list.h (give_window_focus): new prototype
(goto_window): likewise
* src/events.c (new_window): the screen's frame_window is not
managed
(cleanup_frame): new function
(unmap_notify): calls cleanup_frame if window exists in a frame
(destroy_window): likewise
* src/data.h (struct screen_info): remove frame field
(struct rp_window_frame): new fields win, prev, next
(rp_window_frame_sentinel): new global
* src/actions.c (cmd_prev): jumps to last accessed window if
current frame is empty.
(cmd_next): likewise
(cmd_remove): nothing is done if only 1 frame exists
* src/data.h (struct screen_info): new field frame_window
(rp_current_frame): new global
(rp_current_window): removed. All dependant code updated.
|
|
|
|
(cmd_banish): New function.
|
|
(find_window_for_frame): likewise
(find_window_for_frame): likewise
(find_window_for_frame): likewise
(find_window_for_frame): likewise
* src/split.c (window_fits_in_frame): new function
(find_window_for_frame): likewise
(split_window): likewise
(v_split_window): likewise
(h_split_window): likewise
(remove_all_frames): likewise
(frame_is_below): likewise
(frame_is_above): likewise
(frame_is_left): likewise
(frame_is_right): likewise
(total_frame_area): likewise
(num_frames): likewise
(frames_overlap): likewise
(frame_overlaps): likewise
(remove_frame): likewise
* src/ratpoison.h: includes "split.h"
* src/manage.c (unmanage): calls free_window
(maximize_transient): takes the window's frame into account
(maximize_normal): likewise
* src/list.h (find_window_prev_with_frame): new function prototype
(find_window_next_with_frame): likewise
(free_window): likewise
* src/list.c (free_window): new function
(add_to_window_list): initialize new window's frame to NULL.
(find_window_prev): skips windows with frames
(find_window_next): likewise
(find_window_other): likewise
(find_window_prev_with_frame): new function
(find_window_next_with_frame): new function
(set_active_window): returns if the specified window is already
the current window.
(set_active_window): If the new window has no frame it inherits
the current window's frame.
(set_active_window): maximize and raise the newly active window.
* src/events.c (unmap_notify): handles window frames.
(destroy_window): simplified
* src/data.h (struct rp_window_frame): new struct
(struct rp_window): add frame variable
* src/conf.h (WINDOW_BORDER_WIDTH): set to 1
* src/actions.h (cmd_next_frame): new function prototype
(cmd_prev_frame): likewise
(cmd_h_split): likewise
(cmd_v_split): likewise
(cmd_only): likewise
(cmd_remove): likewise
* src/actions.c (initialize_default_keybindings): new default
bindings for "split", "vsplit", "focus", "only", "remove"
(user_commands): new user commands "split", "vsplit", "focus",
"only", "remove"
(cmd_prev_frame): new function
(cmd_next_frame): likewise
(cmd_h_split): likewise
(cmd_v_split): likewise
(cmd_only): likewise
(cmd_remove): likewise
* src/Makefile.am (ratpoison_SOURCES): new files split.c split.h
|
|
|
|
|
|
(parse_keydesc): Call string_to_keysym.
|
|
|
|
|
|
changes.
|
|
chatter about the keybinding.
|
|
binding.
* Makefile.am (SUBDIRS): removed man/
* configure.in (AC_OUTPUT): removed man/Makefile
removed references to emacs.
* doc/Makefile.am (man_MANS): ratpoison.1 moved to doc/
* doc/ratpoison.texi: minor updates.
|
|
appropriate.
(cmd_windows): Call current_screen() to find the current screen.
(cmd_clock): Show the clock even if no windows are open.
(cmd_clock): Use xmalloc, remove error check.
(initialize_default_keybindings): Use xmalloc.
(cmd_bind): Use xmalloc.
(cmd_rename): Use xmalloc, remove error check.
(add_keybinding): Use xrealloc.
(replace_keybinding): Use xrealloc.
* actions.c: Use PRINT_DEBUG instead of fprintf. Put useful error
text in calls to message().
(cmd_select): Show the window list if there is no such window
number.
|
|
appropriate.
* main.c (read_rc_file): Take a file pointer rather than a
filename.
(read_startup_files): If ~/.ratpoisonrc is not readable try
/etc/ratpoisonrc.
* actions.c: Use PRINT_DEBUG instead of fprintf. Put useful error
text in calls to message().
(cmd_select): Show the window list if there is no such window
number.
|
|
text in calls to message().
(cmd_select): Show the window list if there is no such window
number.
|
|
|
|
(grab_prefix_key): likewise
* manage.c (ungrab_prefix_key): new function
* main.c (main): calls initialize_default_keybindings after
init_window_list.
* data.h (struct rp_action): key is of type KeySym. state is
unsigned int.
* conf.h (KEY_PREFIX): set to XK_t
* actions.h (cmd_escape): new prototype
* actions.c (cmd_escape): new function
* data.h (struct key): move from actions.h
(struct rp_key): rename from struct key. dependant code updated.
(prefix_key): new global variable. code dependant on KEY_PREFIX
and MODIFIER_PREFIX updated to use this.
* actions.c: "maximize" user command calls cmd_maximize
(initialize_default_keybindings): initializes prefix_key.
Added "escape" command.
* manage.c (force_maximize): moved from actions.c
(maximize): likewise
(maximize_normal): likewise
(maximize_transient): likewise
* actions.c (cmd_maximize): New function
* main.c (handler): Prepends error message with "ERROR: ".
Displays error in message bar. Returns 0.
* events.c (destroy_window): sets rp_current_window to NULL when
there are no more mapped windows.
(destroy_window): calls set_current_window and find_window_other
directly instead of cmd_other.
|
|
* manage.c (force_maximize): moved from actions.c
(maximize): likewise
(maximize_normal): likewise
(maximize_transient): likewise
* actions.c (cmd_maximize): New function
|
|
* actions.c: the user command "maximize" calls force_maximize
(force_maximize): New function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* list.h (sort_window_list_by_number): Added prototype
* list.c (swap_list_elements): Added
(sort_window_list_by_number): Added
* input.c (update_input_window): Added
(get_input): calls update_input_window in place of xlib calls.
(get_input): exits if realloc fails
* conf.h: Added INPUT_WINDOW_SIZE
* bar.c (update_window_names): loops through window list from head
to tail.
|
|
a screen_info param
|
|
|
|
(shell_command, switch_to, xterm_command): changed static char[100]s
to dynamic char *s, as get_input() now supports this
|
|
|
|
|
|
|
|
* manage.c (send_configure): Now sends the window's x,y,width,height
coordinates.
(set_state): Added
* events.c (map_request): Calls set_state when mapping an unmapped
window.
* actions.c (maximize_transient): takes an rp_window as the
argument. Removed code to handle void *data. Incremental resizing
only happens if the maximum size isn't set. Removed actual X
maximization code.
(maximize): Moved meat to maximize_normal().
|
|
|
|
no other window or there are no windows at all.
(next_window): display correct message when there is no other
window or there are no windows at all.
(key_actions): all number keys call goto_window_number with an
argument instead of a dedicated function.
* actions.c: replaced all user message strings with #define'd
messages.
* actions.h (goto_window): removed
(goto_window_0): removed
(goto_window_1): removed
(goto_window_2): removed
(goto_window_3): removed
(goto_window_4): removed
(goto_window_5): removed
(goto_window_6): removed
(goto_window_7): removed
(goto_window_8): removed
|
|
* ratpoison.h: includes communications.h
* main.c (send_restart, send_kill): Moved to communications.c
* list.c (get_mouse_root_position): Added
(add_to_window_list): Initialize new rp_window fields
(save_mouse_position): Added
(set_active_window): Added code to save and restore the position
of the mouse
* events.c (property_notify): Added code to listen for a
WM_TRANSIENT_FOR property change.
* data.h (struct rp_window): Added transient, transient_for, mouse_x, mouse_y.
* actions.c (maximize_transient): Added
(maximize): Added code to handle transient windows differently
* Makefile.am (ratpoison_SOURCES): Added communications.h and communications.c
|
|
(next_window): do not set active window when recursing.
|
|
|
|
* actions.c (show_clock): added
|
|
hints->height_inc intervals
* manage.c (manage): set the dimension members of the rp_window struct
|
|
keep track of state
(next_window): No longer uses rp_current_window to keep track of
state
* actions.c (maximize): Adhere to the window's Size Hints
|
|
|
|
C-t space to go to next window.
|
|
* events.c (configure_request): Now honours request, but then
maximizes it afterwards.
(configure_request): updates the rp_window's geometry fields
* manage.c (manage): commented out XMoveResizeWindow call
(send_configure): added
* actions.h (maximize): added prototype
* actions.c (maximize): added
|
|
* input.h: added prototype for keysym_to_string
* input.c (keysym_to_string): added
* bar.c (show_bar): update_window_names(s) is called whether the
bar is raised or not.
* conf.h: Added BAR_Y_PADDING BAR_X_PADDING
* list.c (goto_window_name): return success or failure
* list.h: updated prototype for goto_window_name
* events.c (handle_key): Added a message indicating an unbound
key.
* bar.c (display_msg_in_bar): added
(update_window_names): uses BAR_X_PADDING instead of `5'
(update_window_names): Updated BAR_PADDING to BAR_Y_PADDING
* input.c (cook_keycode): mod is now an usigned int
(read_key): Ignores modifier keys. Now returns keysym and
modifiers.
(get_input): Updated BAR_PADDING to BAR_Y_PADDING and
BAR_X_PADDING.
* events.c (handle_key): uses read_key instead of XMaskEvent to
read a key.
* actions.c (goto_window_number): window list is displayed on failure.
(bye): added
(switch_to): added
(execute_command): no longer seg faults when no windows exist.
|
|
* actions.c: key_actions now uses the #define'd keysyms from X11/keysym.h
* events.c (handle_key): calls cook_keycode() before processing the keysym.
* input.c (read_key): calls cook_keycode() before returning the keysym
(cook_keycode): added.
|
|
|
|
entered an empty string
(execute_command): added command
(key_actions): execute_command is called by pressing ':'
|