]> git.sur5r.net Git - i3/i3/blobdiff - src/handlers.c
Merge branch 'fix-dump-log-errmsg'
[i3/i3] / src / handlers.c
index 596d15a6e40f532afdff76623cc0eebe181b4ed9..148d63370a8b5cc2e4b1a45e04ae6ea382b00292 100644 (file)
@@ -11,6 +11,7 @@
 #include "all.h"
 
 #include <time.h>
+#include <sys/time.h>
 #include <xcb/randr.h>
 #include <X11/XKBlib.h>
 #define SN_API_NOT_YET_FROZEN 1
@@ -123,7 +124,7 @@ static void handle_key_press(xcb_key_press_event_t *event) {
     if (command_output->needs_tree_render)
         tree_render();
 
-    free(command_output->json_output);
+    yajl_gen_free(command_output->json_gen);
 }
 
 /*
@@ -236,6 +237,7 @@ static void handle_enter_notify(xcb_enter_notify_event_t *event) {
     if (ws != con_get_workspace(focused))
         workspace_show(ws);
 
+    focused_id = XCB_NONE;
     con_focus(con_descend_focused(con));
     tree_render();
 
@@ -844,7 +846,8 @@ static bool handle_hints(void *data, xcb_connection_t *conn, uint8_t state, xcb_
 
     if (!con->urgent && focused == con) {
         DLOG("Ignoring urgency flag for current client\n");
-        con->window->urgent = 0;
+        con->window->urgent.tv_sec = 0;
+        con->window->urgent.tv_usec = 0;
         goto end;
     }
 
@@ -853,9 +856,10 @@ static bool handle_hints(void *data, xcb_connection_t *conn, uint8_t state, xcb_
     //CLIENT_LOG(con);
     if (con->window) {
         if (con->urgent) {
-            con->window->urgent = time(NULL);
+            gettimeofday(&con->window->urgent, NULL);
         } else {
-            con->window->urgent = 0;
+            con->window->urgent.tv_sec = 0;
+            con->window->urgent.tv_usec = 0;
         }
     }
     LOG("Urgency flag changed to %d\n", con->urgent);
@@ -1003,7 +1007,7 @@ static struct property_handler_t property_handlers[] = {
  * received from X11
  *
  */
-void property_handlers_init() {
+void property_handlers_init(void) {
 
     sn_monitor_context_new(sndisplay, conn_screen, startup_monitor_event, NULL, NULL);