-* check if file passed in with -c switch exists, complain if not
+(track this down:
+dginn% ./oble -c ~/Downloads/haarcascade_frontalface_alt.xml
+Corrupt JPEG data: 160038 extraneous bytes before marker 0x69
+ERROR: frame is null...)
FOR SCREENSAVER:
* gnome-screensaver-command --poke
* find irc channel to ask if my understanding is correct
* track down bug
* compile gnome-screensaver
+http://coderrr.wordpress.com/2008/04/20/getting-idle-time-in-unix/#comment-1927
+in c:
+#include <X11/extensions/scrnsaver.h>
+
+main() {
+ XScreenSaverInfo *info = XScreenSaverAllocInfo();
+ Display *display = XOpenDisplay(0);
+
+ XScreenSaverQueryInfo(display, DefaultRootWindow(display), info);
+ printf("%u ms\n", info->idle);
+}
+in ruby inline:
+require 'inline'
+
+class XScreenSaver
+ class << self
+ inline do |builder|
+ builder.add_link_flags '-lXss'
+ builder.include '<X11/extensions/scrnsaver.h>'
+ builder.c %{
+ double idle_time() {
+ static Display *display;
+ XScreenSaverInfo *info = XScreenSaverAllocInfo();
+
+ if (!display) display = XOpenDisplay(0);
+ if (!display) return -1;
+
+ XScreenSaverQueryInfo(display, DefaultRootWindow(display), info);
+
+ return info->idle / 1000.0;
+ }
+ }
+ end
+ end
+end
+
+if __FILE__ == $0
+ loop { puts XScreenSaver.idle_time; sleep 0.2 }
+end
+