mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2026-03-23 05:35:53 -04:00
Merge b1cf48fb81 into 064bcad6f7
This commit is contained in:
commit
536888b1b8
2 changed files with 13 additions and 1 deletions
|
|
@ -78,6 +78,7 @@ typedef struct {
|
|||
int32_t ignore_maximize;
|
||||
int32_t ignore_minimize;
|
||||
int32_t isnosizehint;
|
||||
int32_t atstartup;
|
||||
int32_t indleinhibit_when_focus;
|
||||
char *monitor;
|
||||
int32_t offsetx;
|
||||
|
|
@ -2057,6 +2058,7 @@ bool parse_option(Config *config, char *key, char *value) {
|
|||
rule->isnosizehint = -1;
|
||||
rule->indleinhibit_when_focus = -1;
|
||||
rule->isterm = -1;
|
||||
rule->atstartup = -1;
|
||||
rule->allow_csd = -1;
|
||||
rule->force_maximize = -1;
|
||||
rule->force_tiled_state = -1;
|
||||
|
|
@ -2188,6 +2190,8 @@ bool parse_option(Config *config, char *key, char *value) {
|
|||
rule->isfullscreen = atoi(val);
|
||||
} else if (strcmp(key, "isfakefullscreen") == 0) {
|
||||
rule->isfakefullscreen = atoi(val);
|
||||
} else if (strcmp(key, "atstartup") == 0) {
|
||||
rule->atstartup = atoi(val);
|
||||
} else if (strcmp(key, "globalkeybinding") == 0) {
|
||||
char mod_str[256], keysym_str[256];
|
||||
sscanf(val, "%255[^-]-%255[a-zA-Z]", mod_str, keysym_str);
|
||||
|
|
|
|||
10
src/mango.c
10
src/mango.c
|
|
@ -813,6 +813,7 @@ static void pre_caculate_before_arrange(Monitor *m, bool want_animation,
|
|||
/* variables */
|
||||
static const char broken[] = "broken";
|
||||
static pid_t child_pid = -1;
|
||||
static uint32_t startup_time;
|
||||
static int32_t locked;
|
||||
static uint32_t locked_mods = 0;
|
||||
static void *exclusive_focus;
|
||||
|
|
@ -1460,10 +1461,14 @@ void applyrules(Client *c) {
|
|||
if (!is_window_rule_matches(r, appid, title))
|
||||
continue;
|
||||
|
||||
// rule is after 60s of startup, do not apply
|
||||
if (r->atstartup && get_now_in_ms() - startup_time > 60 * 1000)
|
||||
continue;
|
||||
|
||||
// set general properties
|
||||
apply_rule_properties(c, r);
|
||||
|
||||
// // set tags
|
||||
// set tags
|
||||
if (r->tags > 0) {
|
||||
newtags |= r->tags;
|
||||
} else if (parent) {
|
||||
|
|
@ -5805,6 +5810,9 @@ void setup(void) {
|
|||
}
|
||||
sync_keymap = wl_event_loop_add_timer(wl_display_get_event_loop(dpy),
|
||||
synckeymap, NULL);
|
||||
|
||||
// store the startup time for at-startup rules to check against
|
||||
startup_time = get_now_in_ms();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue