Add "de" option to Iconify action that makes it deiconify windows (useful while alt...
authorMikael Magnusson <mikachu@comhem.se>
Mon, 23 Jul 2007 23:36:14 +0000 (01:36 +0200)
committerMikael Magnusson <mikachu@gmail.com>
Sat, 11 Oct 2014 00:17:19 +0000 (02:17 +0200)
openbox/actions/iconify.c

index e6bdbb7..536fd36 100644 (file)
@@ -2,20 +2,32 @@
 #include "openbox/client.h"
 
 static gboolean run_func(ObActionsData *data, gpointer options);
+static gpointer setup_func(xmlNodePtr node);
 
 void action_iconify_startup(void)
 {
     actions_register("Iconify",
-                     NULL, NULL,
+                     setup_func,
+                     NULL,
                      run_func);
 }
 
+static gpointer setup_func(xmlNodePtr node)
+{
+    xmlNodePtr n;
+
+    if ((n = obt_xml_find_node(node, "de")))
+        return GINT_TO_POINTER(obt_xml_node_bool(n));
+
+    return GINT_TO_POINTER(0);
+}
+
 /* Always return FALSE because its not interactive */
 static gboolean run_func(ObActionsData *data, gpointer options)
 {
     if (data->client) {
         actions_client_move(data, TRUE);
-        client_iconify(data->client, TRUE, TRUE, FALSE);
+        client_iconify(data->client, !options, TRUE, FALSE);
         actions_client_move(data, FALSE);
     }