]> git.sur5r.net Git - i3/i3/commitdiff
added function 'con_by_mark' to look up a con holding the given mark
authorIngo Bürk <ingo.buerk@tngtech.com>
Tue, 14 Apr 2015 15:51:28 +0000 (17:51 +0200)
committerIngo Bürk <ingo.buerk@tngtech.com>
Sun, 19 Apr 2015 18:57:49 +0000 (20:57 +0200)
include/con.h
src/con.c

index b025adab16e0349eef40fca2e5972d033bef57c0..c760643dad98f4d3a00f9d57007ee8344ca91f7b 100644 (file)
@@ -126,6 +126,13 @@ Con *con_by_window_id(xcb_window_t window);
  */
 Con *con_by_frame_id(xcb_window_t frame);
 
+/**
+ * Returns the container with the given mark or NULL if no such container
+ * exists.
+ *
+ */
+Con *con_by_mark(const char *mark);
+
 /**
  * Returns the first container below 'con' which wants to swallow this window
  * TODO: priority
index dab8d29d439a36e56c21587819e03de0dfaaba99..066ba1c4b6622f0035ae756e980f477aba46806d 100644 (file)
--- a/src/con.c
+++ b/src/con.c
@@ -460,6 +460,21 @@ Con *con_by_frame_id(xcb_window_t frame) {
     return NULL;
 }
 
+/*
+ * Returns the container with the given mark or NULL if no such container
+ * exists.
+ *
+ */
+Con *con_by_mark(const char *mark) {
+    Con *con;
+    TAILQ_FOREACH(con, &all_cons, all_cons) {
+        if (con->mark != NULL && strcmp(con->mark, mark) == 0)
+            return con;
+    }
+
+    return NULL;
+}
+
 /*
  * Returns the first container below 'con' which wants to swallow this window
  * TODO: priority