when the user deliberately selects a window for use.
@param here If true, then the client is brought to the current desktop;
otherwise, the desktop is changed to where the client lives.
+ @param user If true, then a user action is what requested the activation;
+ otherwise, it means an application requested it on its own
*/
-void client_activate(ObClient *self, gboolean here);
+void client_activate(ObClient *self, gboolean here, gboolean user);
/*! Calculates the stacking layer for the client window */
void client_calc_layer(ObClient *self);