commit the movetocenter action since it appears someone else than me wanted it after all
authorMikael Magnusson <mikachu@comhem.se>
Mon, 31 Jan 2005 19:04:18 +0000 (19:04 +0000)
committerMikael Magnusson <mikachu@comhem.se>
Mon, 31 Jan 2005 19:04:18 +0000 (19:04 +0000)
openbox/action.c
openbox/action.h

index ef8052e..6647588 100644 (file)
@@ -537,6 +537,11 @@ ActionString actionstrings[] =
         setup_client_action
     },
     {
+        "movetocenter",
+        action_move_to_center,
+        setup_client_action
+    },
+    {
         "resizerelativehorz",
         action_resize_relative_horz,
         setup_client_action
@@ -1152,6 +1157,17 @@ void action_move_relative_vert(union ActionData *data)
     client_action_end(data);
 }
 
+void action_move_to_center(union ActionData *data)
+{
+    ObClient *c = data->client.any.c;
+    Rect *area;
+    area = screen_area_monitor(c->desktop, 0);
+    client_action_start(data);
+    client_move(c, area->width / 2 - c->area.width / 2,
+                area->height / 2 - c->area.height / 2);
+    client_action_end(data);
+}
+
 void action_resize_relative_horz(union ActionData *data)
 {
     ObClient *c = data->relative.any.c;
index f940f7e..3b991a6 100644 (file)
@@ -249,6 +249,8 @@ void action_toggle_omnipresent(union ActionData *data);
 void action_move_relative_horz(union ActionData *data);
 /* MoveResizeRelative */
 void action_move_relative_vert(union ActionData *data);
+/* ClientAction */
+void action_move_to_center(union ActionData *data);
 /* MoveResizeRelative */
 void action_resize_relative_horz(union ActionData *data);
 /* MoveResizeRelative */