mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2025-10-31 22:25:29 -04:00
feat: add window rule scratch_width, scratch_height
This commit is contained in:
parent
fc2eaf144d
commit
20f05bcdcc
3 changed files with 12 additions and 0 deletions
|
|
@ -122,6 +122,8 @@ tags=id:9,layout_name:tile
|
||||||
# nnoswallow : type-num(0 or 1) -- if enable, this window wll not replace isterm window when it was open by isterm window
|
# nnoswallow : type-num(0 or 1) -- if enable, this window wll not replace isterm window when it was open by isterm window
|
||||||
# globalkeybinding: type-string(for example-- alt-l or alt+super-l)
|
# globalkeybinding: type-string(for example-- alt-l or alt+super-l)
|
||||||
# isopensilent: type-num(0 or 1) -- open but not focus it
|
# isopensilent: type-num(0 or 1) -- open but not focus it
|
||||||
|
# scratch_width : type-num(0-9999) -- width of window when it become scratchpad window
|
||||||
|
# scratch_height : type-num(0-9999) -- height of window when it become scratchpad window
|
||||||
|
|
||||||
# example
|
# example
|
||||||
# windowrule=isfloating:1,appid:yesplaymusic
|
# windowrule=isfloating:1,appid:yesplaymusic
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,8 @@ typedef struct {
|
||||||
int height;
|
int height;
|
||||||
int isterm;
|
int isterm;
|
||||||
int noswallow;
|
int noswallow;
|
||||||
|
int scratch_width;
|
||||||
|
int scratch_height;
|
||||||
uint32_t passmod;
|
uint32_t passmod;
|
||||||
xkb_keysym_t keysym;
|
xkb_keysym_t keysym;
|
||||||
KeyBinding globalkeybinding;
|
KeyBinding globalkeybinding;
|
||||||
|
|
@ -935,6 +937,8 @@ void parse_config_line(Config *config, const char *line) {
|
||||||
rule->monitor = -1;
|
rule->monitor = -1;
|
||||||
rule->offsetx = 0;
|
rule->offsetx = 0;
|
||||||
rule->offsety = 0;
|
rule->offsety = 0;
|
||||||
|
rule->scratch_width = 0;
|
||||||
|
rule->scratch_height = 0;
|
||||||
rule->width = -1;
|
rule->width = -1;
|
||||||
rule->height = -1;
|
rule->height = -1;
|
||||||
rule->animation_type_open = NULL;
|
rule->animation_type_open = NULL;
|
||||||
|
|
@ -971,6 +975,10 @@ void parse_config_line(Config *config, const char *line) {
|
||||||
rule->offsetx = atoi(val);
|
rule->offsetx = atoi(val);
|
||||||
} else if (strcmp(key, "offsety") == 0) {
|
} else if (strcmp(key, "offsety") == 0) {
|
||||||
rule->offsety = atoi(val);
|
rule->offsety = atoi(val);
|
||||||
|
} else if (strcmp(key, "scratch_width") == 0) {
|
||||||
|
rule->scratch_width = atoi(val);
|
||||||
|
} else if (strcmp(key, "scratch_height") == 0) {
|
||||||
|
rule->scratch_height = atoi(val);
|
||||||
} else if (strcmp(key, "width") == 0) {
|
} else if (strcmp(key, "width") == 0) {
|
||||||
rule->width = atoi(val);
|
rule->width = atoi(val);
|
||||||
} else if (strcmp(key, "height") == 0) {
|
} else if (strcmp(key, "height") == 0) {
|
||||||
|
|
|
||||||
|
|
@ -1701,6 +1701,8 @@ applyrules(Client *c) {
|
||||||
strstr(title, r->title))) {
|
strstr(title, r->title))) {
|
||||||
c->isterm = r->isterm > 0 ? r->isterm : c->isterm;
|
c->isterm = r->isterm > 0 ? r->isterm : c->isterm;
|
||||||
c->noswallow = r->noswallow > 0 ? r->noswallow : c->noswallow;
|
c->noswallow = r->noswallow > 0 ? r->noswallow : c->noswallow;
|
||||||
|
c->scratch_geom.width = r->scratch_width > 0 ? r->scratch_width : c->scratch_geom.width;
|
||||||
|
c->scratch_geom.height = r->scratch_height > 0 ? r->scratch_height : c->scratch_geom.height;
|
||||||
c->isfloating = r->isfloating > 0 ? r->isfloating : c->isfloating;
|
c->isfloating = r->isfloating > 0 ? r->isfloating : c->isfloating;
|
||||||
c->isfullscreen = r->isfullscreen > 0 ? r->isfullscreen : c->isfullscreen;
|
c->isfullscreen = r->isfullscreen > 0 ? r->isfullscreen : c->isfullscreen;
|
||||||
c->animation_type_open = r->animation_type_open == NULL
|
c->animation_type_open = r->animation_type_open == NULL
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue