better more obvious code

This commit is contained in:
Dana Jansens 2007-05-28 04:18:54 +00:00
parent 2f579df4e7
commit be3b78736f
3 changed files with 12 additions and 13 deletions

View file

@ -321,7 +321,7 @@ void client_manage(Window window)
client_restore_session_state(self);
/* now we have all of the window's information so we can set this up */
client_setup_decor_and_functions(self);
client_setup_decor_and_functions(self, FALSE);
{
Time t = sn_app_started(self->startup_id, self->class);
@ -1595,9 +1595,7 @@ void client_update_normal_hints(ObClient *self)
}
}
/*! This needs to be followed by a call to client_configure to make
the changes show */
void client_setup_decor_and_functions(ObClient *self)
void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
{
/* start with everything (cept fullscreen) */
self->decorations =
@ -1753,6 +1751,9 @@ void client_setup_decor_and_functions(ObClient *self)
}
client_change_allowed_actions(self);
if (reconfig)
client_reconfigure(self);
}
static void client_change_allowed_actions(ObClient *self)
@ -3716,8 +3717,7 @@ void client_set_undecorated(ObClient *self, gboolean undecorated)
(self->functions & OB_CLIENT_FUNC_UNDECORATE || !undecorated))
{
self->undecorated = undecorated;
client_setup_decor_and_functions(self);
client_reconfigure(self); /* show the lack of decorations */
client_setup_decor_and_functions(self, TRUE);
client_change_state(self); /* reflect this in the state hints */
}
}

View file

@ -604,8 +604,10 @@ void client_update_icon_geometry(ObClient *self);
/*! Set up what decor should be shown on the window and what functions should
be allowed (ObClient::decorations and ObClient::functions).
This also updates the NET_WM_ALLOWED_ACTIONS hint.
@param reconfig When TRUE, the window will be reconfigured to show the
changes
*/
void client_setup_decor_and_functions(ObClient *self);
void client_setup_decor_and_functions(ObClient *self, gboolean reconfig);
/*! Sets the window's type and transient flag */
void client_get_type_and_transientness(ObClient *self);

View file

@ -1430,8 +1430,7 @@ static void event_handle_client(ObClient *client, XEvent *e)
if (msgtype == XA_WM_NORMAL_HINTS) {
client_update_normal_hints(client);
/* normal hints can make a window non-resizable */
client_setup_decor_and_functions(client);
client_reconfigure(client);
client_setup_decor_and_functions(client, TRUE);
} else if (msgtype == XA_WM_HINTS) {
client_update_wmhints(client);
} else if (msgtype == XA_WM_TRANSIENT_FOR) {
@ -1439,8 +1438,7 @@ static void event_handle_client(ObClient *client, XEvent *e)
client_get_type_and_transientness(client);
/* type may have changed, so update the layer */
client_calc_layer(client);
client_setup_decor_and_functions(client);
client_reconfigure(client);
client_setup_decor_and_functions(client, TRUE);
} else if (msgtype == prop_atoms.net_wm_name ||
msgtype == prop_atoms.wm_name ||
msgtype == prop_atoms.net_wm_icon_name ||
@ -1448,8 +1446,7 @@ static void event_handle_client(ObClient *client, XEvent *e)
client_update_title(client);
} else if (msgtype == prop_atoms.wm_protocols) {
client_update_protocols(client);
client_setup_decor_and_functions(client);
client_reconfigure(client);
client_setup_decor_and_functions(client, TRUE);
}
else if (msgtype == prop_atoms.net_wm_strut) {
client_update_strut(client);