---
src/gui/videoin.c | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/src/gui/videoin.c b/src/gui/videoin.c
index 4971de1..7aa6d8c 100644
--- a/src/gui/videoin.c
+++ b/src/gui/videoin.c
@@ -32,6 +32,8 @@
#include "cp.h"
#include "../input.h"
#include "videoin.h"
+#include "../compiler/compiler.h"
+#include "guirender.h"
static int appid;
@@ -193,8 +195,41 @@ static void close_videoin_window(void)
resmgr_release(RESOURCE_VIDEOIN);
}
+static void dummy_rmc(const char *msg)
+{
+}
+
+static void stop_callback(void)
+{
+ if(!resmgr_acquire("Video in settings", RESOURCE_VIDEOIN))
+ return;
+
+ video_fd = open("/dev/video", O_RDWR);
+ if(video_fd == -1) {
+ perror("Unable to open video device");
+ resmgr_release(RESOURCE_VIDEOIN);
+ return;
+ }
+ input_add_callback(preview_update);
+}
+
static void fullscreen_callback(mtk_event *e, void *arg)
{
+ struct patch *p;
+ char *dummy_filename = "FS";
+ char *code = "video_a=1;decay=0;";
+
+ p = patch_compile_filename(dummy_filename, code, dummy_rmc);
+ if(p == NULL)
+ return;
+
+ close(video_fd);
+ input_delete_callback(preview_update);
+ resmgr_release(RESOURCE_VIDEOIN);
+
+ guirender(appid, p, stop_callback);
+
+ patch_free(p);
}
static void ok_callback(mtk_event *e, void *arg)
--
1.7.5.4
_______________________________________________
http://lists.milkymist.org/listinfo.cgi/devel-milkymist.org
IRC: #milkymist@Freenode