mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
introduce screen "view" area and "work" area (gap applied) to simplify
various blocks that require understanding the screen geometry.
This commit is contained in:
parent
2450e309ea
commit
cc08aef0df
9
calmwm.h
9
calmwm.h
@ -96,6 +96,13 @@ struct color {
|
|||||||
unsigned long pixel;
|
unsigned long pixel;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct geom {
|
||||||
|
int x;
|
||||||
|
int y;
|
||||||
|
int w;
|
||||||
|
int h;
|
||||||
|
};
|
||||||
|
|
||||||
struct gap {
|
struct gap {
|
||||||
int top;
|
int top;
|
||||||
int bottom;
|
int bottom;
|
||||||
@ -206,6 +213,8 @@ struct screen_ctx {
|
|||||||
int cycling;
|
int cycling;
|
||||||
int xmax;
|
int xmax;
|
||||||
int ymax;
|
int ymax;
|
||||||
|
struct geom view; /* viewable area */
|
||||||
|
struct geom work; /* workable area, gap-applied */
|
||||||
struct gap gap;
|
struct gap gap;
|
||||||
struct cycle_entry_q mruq;
|
struct cycle_entry_q mruq;
|
||||||
XftColor xftcolor;
|
XftColor xftcolor;
|
||||||
|
10
screen.c
10
screen.c
@ -120,6 +120,16 @@ screen_update_geometry(struct screen_ctx *sc)
|
|||||||
sc->xmax = DisplayWidth(X_Dpy, sc->which);
|
sc->xmax = DisplayWidth(X_Dpy, sc->which);
|
||||||
sc->ymax = DisplayHeight(X_Dpy, sc->which);
|
sc->ymax = DisplayHeight(X_Dpy, sc->which);
|
||||||
|
|
||||||
|
sc->view.x = 0;
|
||||||
|
sc->view.y = 0;
|
||||||
|
sc->view.w = DisplayWidth(X_Dpy, sc->which);
|
||||||
|
sc->view.h = DisplayHeight(X_Dpy, sc->which);
|
||||||
|
|
||||||
|
sc->work.x = sc->view.x + sc->gap.left;
|
||||||
|
sc->work.y = sc->view.y + sc->gap.top;
|
||||||
|
sc->work.w = sc->view.w - (sc->gap.left + sc->gap.right);
|
||||||
|
sc->work.h = sc->view.h - (sc->gap.top + sc->gap.bottom);
|
||||||
|
|
||||||
screen_init_xinerama(sc);
|
screen_init_xinerama(sc);
|
||||||
|
|
||||||
xu_ewmh_net_desktop_geometry(sc);
|
xu_ewmh_net_desktop_geometry(sc);
|
||||||
|
Loading…
Reference in New Issue
Block a user