moved monitor and follow_mode to config.h
This commit is contained in:
parent
0750c5da0f
commit
7fe7938460
14
config.def.h
14
config.def.h
@ -20,6 +20,20 @@ enum alignment align = left; /* text alignment [left/center/right] */
|
||||
int sticky_history = True;
|
||||
int verbosity = 0;
|
||||
|
||||
|
||||
/* monitor to display notifications on */
|
||||
int monitor = 0;
|
||||
|
||||
/* follow focus to different monitor and display notifications there?
|
||||
* possible values:
|
||||
* FOLLOW_NONE
|
||||
* FOLLOW_MOUSE
|
||||
* FOLLOW_KEYBOARD
|
||||
*
|
||||
* everything else than FOLLOW_NONE overrides 'monitor'
|
||||
*/
|
||||
enum follow_mode f_mode = FOLLOW_NONE;
|
||||
|
||||
/* keyboard shortcuts */
|
||||
keyboard_shortcut close_ks = {.str = "ctrl+space",
|
||||
.code = 0, .sym = NoSymbol,.is_valid = False}; /* ignore this */
|
||||
|
13
dunst.c
13
dunst.c
@ -77,7 +77,6 @@ static dimension_t geometry;
|
||||
static XScreenSaverInfo *screensaver_info;
|
||||
static int font_h;
|
||||
|
||||
static enum follow_mode f_mode = FOLLOW_NONE;
|
||||
|
||||
int next_notification_id = 1;
|
||||
|
||||
@ -958,7 +957,7 @@ Window get_focused_window(void)
|
||||
int select_screen(XineramaScreenInfo * info, int info_len)
|
||||
{
|
||||
if (f_mode == FOLLOW_NONE) {
|
||||
return scr.scr;
|
||||
return monitor;
|
||||
|
||||
} else {
|
||||
int x, y;
|
||||
@ -980,7 +979,7 @@ int select_screen(XineramaScreenInfo * info, int info_len)
|
||||
|
||||
if (focused == 0) {
|
||||
/* something went wrong. Fallback to default */
|
||||
return scr.scr;
|
||||
return monitor;
|
||||
}
|
||||
|
||||
Window child_return;
|
||||
@ -997,7 +996,7 @@ int select_screen(XineramaScreenInfo * info, int info_len)
|
||||
}
|
||||
|
||||
/* something seems to be wrong. Fallback to default */
|
||||
return scr.scr;
|
||||
return monitor;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1005,15 +1004,15 @@ void update_screen_info()
|
||||
{
|
||||
#ifdef XINERAMA
|
||||
int n;
|
||||
int screen = 0;
|
||||
int screen = monitor;
|
||||
XineramaScreenInfo *info;
|
||||
#endif
|
||||
#ifdef XINERAMA
|
||||
if ((info = XineramaQueryScreens(dc->dpy, &n))) {
|
||||
screen = select_screen(info, n);
|
||||
if (screen >= n) {
|
||||
fprintf(stderr, "Monitor %d not found\n", screen);
|
||||
exit(EXIT_FAILURE);
|
||||
/* invalid monitor, fallback to default */
|
||||
screen = 0;
|
||||
}
|
||||
scr.dim.x = info[screen].x_org;
|
||||
scr.dim.y = info[screen].y_org;
|
||||
|
Loading…
x
Reference in New Issue
Block a user