diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-12-22 17:24:51 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-12-22 17:24:51 +0000 |
| commit | a6e4aba8063494f010251393c26ff2e56fb973ba (patch) | |
| tree | 733e89578756062bac9681561d0e54c59ccdf428 | |
| parent | 06202e2badd1c519c62defe820094e28f6708d5e (diff) | |
make all dialog typed windows transient for their group if they dont specify a WM_TRANSIENT_FOR hint.
| -rw-r--r-- | openbox/client.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/openbox/client.c b/openbox/client.c index fca7401c..293546b7 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -720,6 +720,11 @@ static void client_get_all(ObClient *self) client_get_mwm_hints(self); client_get_type(self);/* this can change the mwmhints for special cases */ + /* The transient hint is used to pick a type, but the type can also affect + transiency (dialogs are always made transients). This is Havoc's idea, + but it is needed to make some apps work right (eg tsclient). */ + client_update_transient_for(self); + client_get_state(self); { @@ -928,6 +933,9 @@ void client_update_transient_for(ObClient *self) } } } + } else if (self->type == OB_CLIENT_TYPE_DIALOG && self->group) { + self->transient = TRUE; + target = OB_TRAN_GROUP; } else self->transient = FALSE; |
