summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-08-14 05:53:32 +0000
committerDana Jansens <danakj@orodu.net>2003-08-14 05:53:32 +0000
commit60bf9dcdb752aa282e1ffd7bbb359df4a4c78e77 (patch)
tree857915ab6b2f7271e6e9de3f467e987a5bfc307f /openbox
parent99d0b716776492c1927b8248375ce82a33bc7b26 (diff)
make the activate action have a 'here' parameter
Diffstat (limited to 'openbox')
-rw-r--r--openbox/action.c6
-rw-r--r--openbox/action.h8
2 files changed, 10 insertions, 4 deletions
diff --git a/openbox/action.c b/openbox/action.c
index 6668ac5a..7e8da744 100644
--- a/openbox/action.c
+++ b/openbox/action.c
@@ -742,8 +742,8 @@ void action_execute(union ActionData *data)
void action_activate(union ActionData *data)
{
- if (data->client.c)
- client_activate(data->client.c);
+ if (data->activate.c)
+ client_activate(data->activate.c, data->activate.here);
}
void action_focus(union ActionData *data)
@@ -1219,7 +1219,7 @@ void action_directional_focus(union ActionData *data)
return;
if ((nf = client_find_directional(data->diraction.c,
data->diraction.direction)))
- client_activate(nf);
+ client_activate(nf, FALSE);
}
void action_movetoedge(union ActionData *data)
diff --git a/openbox/action.h b/openbox/action.h
index ef2f755e..f84217e3 100644
--- a/openbox/action.h
+++ b/openbox/action.h
@@ -29,6 +29,11 @@ struct ClientAction {
struct _ObClient *c;
};
+struct Activate {
+ struct _ObClient *c;
+ gboolean here; /* bring it to the current desktop */
+};
+
struct MoveResizeRelative {
struct _ObClient *c;
int delta;
@@ -96,6 +101,7 @@ union ActionData {
struct DirectionalAction diraction;
struct Execute execute;
struct ClientAction client;
+ struct Activate activate;
struct MoveResizeRelative relative;
struct SendToDesktop sendto;
struct SendToDesktopDirection sendtodir;
@@ -135,7 +141,7 @@ void action_free(ObAction *a);
/* Execute */
void action_execute(union ActionData *data);
-/* ClientAction */
+/* ActivateAction */
void action_activate(union ActionData *data);
/* ClientAction */
void action_focus(union ActionData *data);