summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2003-08-02(cmd_number): rename the window's group numbersabetts
instead of it's internal number.
2003-07-17include string.hsabetts
2003-07-17* src/window.c (set_active_window): run the switch window hook.sabetts
* src/split.c (set_active_frame): run the switch frame hook. * src/ratpoison.h: include hook.h * src/group.h (set_current_group): new prototype * src/group.c (set_current_group): new function * src/globals.h (rp_prefix_hook): new extern (rp_switch_win_hook): likewise (rp_switch_frame_hook): likewise (rp_switch_group_hook): likewise (rp_hook_db): likewise * src/globals.c (rp_prefix_hook): new hook (rp_switch_win_hook): likewise (rp_switch_frame_hook): likewise (rp_switch_group_hook): likewise (rp_hook_db): new global * src/events.c (handle_key): call the prefix hook. * src/data.h (struct rp_hook_db_entry): new struct * src/actions.h (cmd_addhook): new prototype (cmd_remhook): likewise * src/actions.c (user_commands): add commands addhook and remhook. (cmd_windows): show the window bar no matter what if the bar timeout is > 0. (cmd_gnext): call set_current_group (cmd_gprev): likewise (cmd_gnew): likewise (cmd_gselect): likewise (cmd_addhook): new function (cmd_remhook): likewise * src/Makefile.am (ratpoison_SOURCES): add hook.c and hook.h
2003-06-26(cmd_gmove): prompt the user if no group is passedsabetts
as an argument.
2003-06-24(cmd_resize): fix error message textsabetts
(cmd_resize): likewise (cmd_defresizeunit): likewise (cmd_defresizeunit): likewise (cmd_chdir): likewise (cmd_frestore): likewise (cmd_frestore): likewise (cmd_defwinliststyle): likewise (cmd_defwinliststyle): likewise (cmd_gmove): likewise (cmd_gmove): likewise (cmd_gmerge): likewise
2003-06-23(cmd_groups): always print a column in non-interactive mode.sabetts
2003-06-23(cmd_groups): print a * beside the currentsabetts
group. if non-interactively called, return the string. (sync_wins): rewrite.
2003-06-15(set_active_window): remove duplicate call tosabetts
unhide_window, it is made in give_window_focus. Call give_window_focus before calling hide_others.
2003-06-02* src/group.c (groups_merge): don't merge a group with itself.sabetts
* src/bar.c (draw_mark): abort if mark_end is the beginning of the line or the start and end of the mark is the same.
2003-06-02(group_completions): use a group's number if itsabetts
has no name.
2003-05-28* src/completions.c (completions_complete): if direction issabetts
COMPLETION_PREVIOUS, then set last_match to it's previous entry.
2003-05-28* src/globals.h (COMPLETION_NEXT): new definesabetts
(COMPLETION_PREVIOUS): likewise * src/editor.c (editor_complete): remove prototype (editor_complete_prev): new prototype (editor_complete_next): likewise (editor_insert): make it a static function. update prototype (edit_bindings): add editor_complete_prev. replace editor_complete with editor_complete_next. (editor_complete): call completions_complete (editor_complete_next): new function (editor_complete_prev): likewise * src/completions.h (completions_next_completion): remove prototype (completions_update): likewise (completions_assign): likewise (completions_complete): new prototype * src/completions.c (completions_assign): make it a static function (completions_update): likewise (completions_prev_match): new function (completions_next_match): likewise (completions_complete): renamed from completions_next_completion. call completions_next_match and completions_prev_match.
2003-05-27* src/completions.c (completions_next_completion): checksabetts
c->last_match as a match to partial on a virgin completion. * src/group.c (free_groups): new function * src/group.h (free_groups): new prototype * src/main.c (clean_up): call free_groups * src/actions.c (cmd_fdump): free the string returned by frame_dump. * src/completions.c (completions_update): free new_list.
2003-05-27* src/editor.c (input_line_free): free the completions structuresabetts
in line.
2003-05-27(ratpoison_SOURCES): add editor.c editor.hsabetts
history.h and history.c
2003-05-27* src/editor.c (saved_command): new local globalsabetts
(edit_binding): new typedef (edit_binding): new struct (edit_bindings): new local global (input_line_new): new function (input_line_free): likewise (execute_edit_action): likewise (editor_forward_char): likewise (editor_backward_char): likewise (editor_forward_word): likewise (editor_backward_word): likewise (editor_beginning_of_line): likewise (editor_end_of_line): likewise (editor_delete_char): likewise (editor_backward_delete_char): likewise (editor_kill_word): likewise (editor_backward_kill_word): likewise (editor_kill_line): likewise (editor_backward_kill_line): likewise (editor_history_previous): likewise (editor_history_next): likewise (editor_abort): likewise (editor_no_action): likewise (editor_insert): likewise (editor_enter): likewise (paste_cut_buffer): likewise (paste_primary_selection): likewise (editor_paste_selection): likewise (editor_complete): likewise (editor_forward_char): new prototype (editor_backward_char): likewise (editor_forward_word): likewise (editor_backward_word): likewise (editor_beginning_of_line): likewise (editor_end_of_line): likewise (editor_delete_char): likewise (editor_backward_delete_char): likewise (editor_kill_word): likewise (editor_backward_kill_word): likewise (editor_kill_line): likewise (editor_paste_selection): likewise (editor_abort): likewise (editor_no_action): likewise (editor_enter): likewise (editor_history_previous): likewise (editor_history_next): likewise (editor_complete): likewise (editor_backward_kill_line): likewise * src/sbuf.h (sbuf): add node field. * src/main.c (xrealloc): don't print debugger output (init_defaults): init history_size (main): initialize rp_selection (main): load history (clean_up): save history * src/linkedlist.h (list_first): new macro * src/input.h (free_history): remove prototype (ring_bell): new function * src/input.c: include unistd.h (input_history): remove (input_num_history_entries): likewise (update_input_window): remove prompt, input, and input_len arguments. add line argument. (update_input_window): use line argument. (ring_bell): new function (get_input): take completion_fn argument. prototype and callers updated. (free_history): remove function (get_more_input): take completion_fn argument. prototype and callers updated. use line structure and its functionality. * src/globals.h (MAX_FONT_WIDTH): new define (rp_selection): new extern * src/globals.c (rp_selection): new global * src/completions.h (completions_new): new prototype (completions_free): likewise (completions_assign): likewise (completions_update): likewise (completions_next_completion): likewise * src/completions.c (completions_new): new function (completions_free): likewise (completions_assign): likewise (completions_update): likewise (completions_next_completion): likewise * src/Makefile.am (ratpoison_SOURCES): add editor.c editor.h history.h and history.c * src/data.h (rp_completions): new typedef (rp_input_line): likewise (completion_fn): likewise (rp_defaults): new field, history_size (rp_completions): new struct (rp_input_line): new struct * src/conf.h (MAX_HISTORY_SIZE): new define (HISTORY_FILE): likewise (VISUAL_BELL): likewise (MODIFIER_PREFIX): set to RP_CONTROL_MASK (INPUT_ABORT_MODIFIER): likewise (INPUT_PREV_HISTORY_MODIFIER): likewise (INPUT_NEXT_HISTORY_MODIFIER): likewise (RESIZE_VGROW_MODIFIER): likewise (RESIZE_VSHRINK_MODIFIER): likewise (RESIZE_HGROW_MODIFIER): likewise (RESIZE_HSHRINK_MODIFIER): likewise * src/actions.c (trivial_completions): new function (window_completions): likewise (colon_completions): likewise (exec_completions): likewise (cmd_select): pass window_completions to get_input (cmd_rename): pass trivial_completions to get_input (cmd_colon): pass colon_completions to get_input and get_more_input (cmd_exec): pass exec_completions to get_input (cmd_newwm): pass trivial_completions to get_input (cmd_resize): convert the keysym modifier to something ratpoison understands.
2003-05-25* src/actions.c (cmd_gselect): if the user didn't type anything then return.sabetts
2003-05-25* src/actions.c (cmd_gmerge): show a message if the groupsabetts
specified by the user could not be found.
2003-05-25* src/window.c: do not include ctype.hsabetts
* src/ratpoison.h (str_comp): new prototype * src/messages.h (MESSAGE_PROMPT_SWITCH_TO_GROUP): new define * src/main.c: include ctype.h (str_comp): moved from window.c * src/group.h (groups_find_group_by_name): new prototype. (groups_find_group_by_number): likewise. (groups_merge): likewise (group_move_window): likewise * src/group.c: include string.h (group_new): new argument, name. All callers updated. prototype updated. (init_groups): create the first group with DEFAULT_GROUP_NAME as its name. (group_new): new argument, name. All callers updated. Prototype updated. (group_free): free the group's name. (group_add_new_group): new argument, name. All callers updated. Prototype updated. (groups_find_group_by_name): new function (groups_find_group_by_number): likewise (group_move_window): likewise (groups_merge): likewise * src/conf.h (DEFAULT_GROUP_NAME): new define * src/actions.h (cmd_gselect): new prototype (cmd_groups): likewise (cmd_gmove): likewise (cmd_gmerge): likewise (cmd_gnewbg): likewise * src/actions.c (user_commands): new commands gselect, groups, gmove, gmerge, gnewbg. (cmd_gnewbg): new function (find_group): likewise (cmd_gselect): likewise (cmd_groups): likewise (cmd_gmove): likewise (cmd_gmerge): likewise
2003-05-25* src/bar.c (reset_alarm): new functionsabetts
(show_bar): call reset_alarm() (count_lines): make function static. clean up code. (max_line_length): likewise (pos_in_line): likewise (line_beginning): likewise (draw_string): new static function (correct_mark): likewise (prepare_bar): likewise (get_mark_box): likewise (draw_inverse_box): likewise (draw_mark): likewise (update_last_message): likewise (marked_message): Move most of the code to seperate function calls. Call reset_alarm(), prepare_bar(), draw_string(), correct_mark(), draw_mark(), and update_last_message(). * src/actions.c (cmd_select): fix crash bug. * src/window.c (get_window_list): mark_end is the length of the string. Don't do a special case if the window list is being displayed as a column.
2003-05-25(read_key): Do not wait for the key releasesabetts
event. Remove gobble_rel argument. Callers updated.
2003-05-20 * src/linkedlist.h: Move all C function to linkedlist.csabetts
* src/window.c (find_window): add debugging output describing which window list the window was found in. * src/group.c (group_new): assign the group's number the number passed as an argument. * src/events.c (destroy_window): withdraw iconified and normal windows before unmanaging them. (handle_signals): delete the node from the list before freeing it. * src/bar.h (message): remove define. (marked_wrapped_message): remove prototype (message): new prototype * src/bar.c (message): new function (marked_wrapped_message): renamed to marked_message. remove marked_message.
2003-05-18(marked_wrapped_message): Free the GC's created withsabetts
XCreateGC.
2003-05-17(chld_handler): Variable declaration placed in propersabetts
location.
2003-05-17(spawn): always put the DISPLAY string in thesabetts
environment.
2003-05-16* src/window.c (add_to_window_list): add the window to the currentsabetts
group. (find_window_name): search the current group for a matching window. (find_window_other): likewise. (format_window_name): take a rp_window_elem as an argument, not an rp_window. Print the group window's number, not the window's internal number. (get_window_list): loop through the current group. * src/split.c (find_window_for_frame): search the current group for a window to fit in the frame. * src/ratpoison.h: include globals.h and group.h * src/manage.c (unmanage): remove the window from any groups it was in. (map_window): map the window in any groups it is in. (withdraw_window): unmap the window in any groups it is in. * src/main.c: Move all globals to globals.h (main): initialize the group functions. * src/data.h: Move all defines and extern globals to globals.h (struct rp_window_elem): new struct (struct rp_group): likewise * src/actions.h (cmd_gnext): new prototype (cmd_gprev): likewise (cmd_gnew): likewise * src/actions.c (user_commands): new commands gnext, gprev, and gnew (cmd_prev): fix to work with new group code. (cmd_next): likewise (cmd_gnext): new function (cmd_gprev): likewise (cmd_gnew): likewise * src/Makefile.am (ratpoison_SOURCES): add files globals.h, globals.c, group.h and group.c
2003-05-15* src/data.h (struct rp_frame): renamed from rp_window_frame. Allsabetts
dependant code updated. * src/main.c: remove child_info global. Add rp_children global. (chld_handler): update the terminated and status fields of any terminated children. * src/events.c (handle_signals): loop through each child process and remove them from the list. Print a message for any child that doesn't return a 0 status. * src/data.h (rp_child_info): new fields, terminated and node. remove child_info global. Add rp_children global. * src/actions.c (spawn): Add the command to the list of children.
2003-05-15(struct rp_screen): rename fromsabetts
screen_info. Dependant code updated.
2003-05-09* src/manage.h (clear_unmanaged_list): new prototypesabetts
(list_unmanaged_windows): likewise (add_unmanaged_window): likewise * src/manage.c (unmanaged_window_list): no longer a const. (num_unmanaged_windows): new static global (clear_unmanaged_list): new function (list_unmanaged_windows): likewise (add_unmanaged_window): likewise (unmanaged_window): use num_unmanaged_windows to tell how many elements are in the unmanaged list. * src/actions.h (cmd_unmanage): new prototype (cmd_clrunmanaged): likewise * src/actions.c (user_commands): new commands unmanage, clrunmanaged. (cmd_unmanage): new function (cmd_clrunmanaged): likewise * src/bar.c (BAR_IS_HIDDEN): new define. (update_bar): new function. * src/actions.c (cmd_frestore): call update_bar() instead of update_window_names(). * src/actions.c (cmd_frestore): update the window list after restoring the frames.
2003-05-09* src/split.c (split_frame): call update_bar() instead ofsabetts
update_window_names(). (set_active_frame): likewise (blank_frame): likewise * src/bar.h (update_bar): new prototype. * src/bar.c (BAR_IS_HIDDEN): new define. (update_bar): new function. * src/actions.c (cmd_frestore): call update_bar() instead of update_window_names(). * src/split.c (set_active_frame): update the window list after switching frames. (blank_frame): update the window list after blanking the screen. * src/actions.c (cmd_frestore): update the window list after restoring the frames. * src/split.c (split_frame): update the window list after the split.
2003-05-09* src/split.c (set_active_frame): update the window list aftersabetts
switching frames. * src/actions.c (cmd_frestore): update the window list after restoring the frames. * src/split.c (split_frame): update the window list after the split.
2003-04-14* src/main.c (main): if the screen was specified on thesabetts
command-line, send the command to the correct screen. * src/communications.c (send_command): new argument, screen_num. Get the root window for the specified screen. prototype updated.
2003-04-14* src/main.c (ratpoison_opts): fix -c option by adding a : after it.sabetts
2003-04-14* src/main.c (init_screen): print the display string forsabetts
debugging. (main): parse the screen argument and process it.
2003-04-14*** empty log message ***sabetts
2003-04-14(main): add switch case for the display command linesabetts
option. (print_help): add --display option. Add text to demonstrate --display and --command take an argument. (ratpoison_longopts): add display. (ratpoison_longopts): add screen. (ratpoison_opts): add 'd' (ratpoison_opts): add 's' (main): parse the screen argument and process it. (print_help): add --screen
2003-04-14(ratpoison_opts): add 'd'sabetts
2003-04-13(main): add switch case for the display command linesabetts
option. (print_help): add --display option. Add text to demonstrate --display and --command take an argument. (ratpoison_longopts): add display.
2003-04-13(get_wmname): add debugging output to printsabetts
returned elements from X11 call.
2003-04-11* src/manage.c (get_wmname): add a debug line to print thesabetts
property returned. (get_wmname): add newline in debug print out. (get_wmname): fail if n is 0.
2003-04-11* src/manage.c (get_wmname): add a debug line to print thesabetts
property returned. (get_wmname): add newline in debug print out.
2003-04-11* src/manage.c (get_wmname): add a debug line to print thesabetts
property returned.
2003-04-11* src/window.c (window_name): use WIN_NAME_* defines for possiblesabetts
defaults.win_name values. (window_name): remove case WIN_NAME_TITLE and glob it with the default switch. * src/main.c (init_defaults): use WIN_NAME_* defines for possible defaults.win_name values. * src/actions.c (cmd_defwinname): use WIN_NAME_* defines for possible defaults.win_name values. (cmd_defwinname): likewise * src/data.h (WIN_NAME_TITLE): new define (WIN_NAME_RES_CLASS): new define (WIN_NAME_RES_NAME): new define * src/window.c (add_to_window_list): use xstrdup to create the default value for user_name.
2003-04-10(unmap_notify): fix crash bug in NormalState case.sabetts
2003-04-09(receive_command): handle the case when more thansabetts
one client requests a command (fix infinite loop bug).
2003-04-08(WAIT_ANY): define it if it isn't already define.sabetts
2003-04-08* src/Makefile.am (ratpoison_SOURCES): add linkedlist.hsabetts
* src/bar.c (marked_message): pass correct arguments to bar_y. * src/actions.c (cmd_defwinliststyle): error messages print the correct command name.
2003-04-07* src/actions.h: All cmd_* functions take char* instead ofsabetts
void*. All callers updated. * src/actions.c (cmd_number): update any frames pointing to the windows that have changed.
2003-04-06* src/bar.c (marked_wrapped_message): make the marked line spansabetts
the whole line. * src/actions.c (cmd_number): update any frames pointing to the windows that have changed.
2003-04-06* src/window.c (get_window_list): if window_list_style is STYLE_COLUMN thensabetts
the end of the mark is the length of the buffer minus the start of the mark. * src/main.c (init_defaults): init window_list_style to STYLE_ROW. * src/data.h (struct rp_defaults): new member, window_list_style. * src/bar.c (bar_y): new argument, height. All callers updated. (bar_y): use height in calculations. (update_window_names): print a column of windows if defaults.window_list_style is in column mode. (count_lines): new function (max_line_length): likewise (pos_in_line): likewise (line_beginning): likewise (marked_wrapped_message): likewise * src/actions.c (user_commands): new commands 'verbexec' and 'defwinliststyle'. Move @end take to after the def* commands. (cmd_verbexec): new function. Added prototype. (cmd_defwinliststyle): likewise