summaryrefslogtreecommitdiff
path: root/src/data.h
diff options
context:
space:
mode:
authorsabetts <sabetts>2001-12-09 02:04:49 +0000
committersabetts <sabetts>2001-12-09 02:04:49 +0000
commit9c0fbfffd7268ce6a2c0a0263dded6f1fe6e72c9 (patch)
tree41cc210fa1de2f209f84d8ff79589ce3d925d7ab /src/data.h
parent917953c69be92a5be1b3c20f1cf64a3dac3fd40a (diff)
downloadratpoison-9c0fbfffd7268ce6a2c0a0263dded6f1fe6e72c9.zip
* src/events.c (handle_key): revert the focus immediately after
reading the key. * src/list.c (give_window_focus): update rp_current_frame when setting the window focus. * src/main.c (main): scan for windows in a seperate pass after initializing the screen structures. (init_screen): build a display string for each screen. (init_screen): remove the call to scanwins. * src/manage.c (current_screen): return the current screen using rp_current_screen. * src/split.h (init_frame_lists): new function * src/split.c (rp_window_frame_sentinel): remove. (rp_current_frame): remove. (frames_screen): new function (maximize_frame): use the frame's screen to find out the width and height of the display. (create_initial_frame): take a pointer to a screen_info as an argument. (init_frame_lists): new function (init_frame_list): take a pointer to a screen_info as an argument. (find_last_frame): take a pointer to a screen_info as an argument. * src/actions.c (spawn): Set the DISPLAY environment variable to point to the current screen. * src/data.h (struct screen_info): add display_string, rp_window_frame_sentinel, rp_current_frame. (rp_current_screen): new global (rp_current_frame): Remove. Dependant code uses screen_info.rp_current_frame.
Diffstat (limited to 'src/data.h')
-rw-r--r--src/data.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/data.h b/src/data.h
index f143230..b427810 100644
--- a/src/data.h
+++ b/src/data.h
@@ -99,6 +99,16 @@ struct screen_info
Colormap def_cmap;
Cursor rat;
unsigned long fg_color, bg_color; /* The pixel color. */
+
+ char *display_string;
+
+ /* A list of frames that may or may not contain windows. There should
+ always be one in the list. */
+ rp_window_frame *rp_window_frame_sentinel;
+
+ /* Pointer to the currently focused frame. One for each screen so
+ when you switch screens the focus doesn't get frobbed. */
+ rp_window_frame *rp_current_frame;
};
struct rp_action
@@ -173,13 +183,7 @@ extern rp_window *rp_mapped_window_sentinel;
assigned to them and are not visible/active. */
extern rp_window *rp_unmapped_window_sentinel;
-/* A list of frames that may or may not contain windows. There should
- always be one in the list. */
-extern rp_window_frame *rp_window_frame_sentinel;
-
-/* Pointer to the currently focused frame. */
-extern rp_window_frame *rp_current_frame;
-
+extern int rp_current_screen;
extern screen_info *screens;
extern int num_screens;
@@ -190,7 +194,6 @@ extern Atom rp_command;
extern Atom rp_command_request;
extern Atom rp_command_result;
-
extern Atom wm_state;
extern Atom wm_change_state;
extern Atom wm_protocols;