Usermode/libc - Fix strchr and strrchr behavior
[tpg/acess2.git] / Usermode / Applications / axwin3_src / WM / main.c
index a9266b4..1050395 100644 (file)
@@ -9,18 +9,13 @@
 #include <acess/sys.h>
 #include <stdlib.h>
 #include <stdio.h>
-#include <axwin3/keysyms.h>
+#include <string.h>
+#include "include/lowlevel.h"
 
 // === IMPORTS ===
 extern void    Video_Setup(void);
 extern void    WM_Initialise(void);
-extern int     Renderer_Menu_Init(void);
-extern int     Renderer_Widget_Init(void);
-extern int     Renderer_Background_Init(void);
-extern int     Renderer_Framebuffer_Init(void);
-extern int     Renderer_RichText_Init(void);
 extern void    WM_Update(void);
-extern void    WM_Hotkey_Register(int nKeys, uint32_t *Keys, const char *ActionName);
 
 // === PROTOTYPES ===
 void   ParseCommandline(int argc, char **argv);
@@ -61,21 +56,7 @@ int main(int argc, char *argv[])
        IPC_Init();
        Input_Init();
        
-       Renderer_Menu_Init();
-       Renderer_Widget_Init();
-       Renderer_Background_Init();
-       Renderer_Framebuffer_Init();
-       Renderer_RichText_Init();
        WM_Initialise();
-
-       // TODO: Move these to config
-       uint32_t        keys[4];
-       keys[0] = KEYSYM_LEFTGUI;       keys[1] = KEYSYM_r;
-       WM_Hotkey_Register(2, keys, "Interface>Run");
-       keys[0] = KEYSYM_LEFTGUI;       keys[1] = KEYSYM_t;
-       WM_Hotkey_Register(2, keys, "Interface>Terminal");
-       keys[0] = KEYSYM_LEFTGUI;       keys[1] = KEYSYM_e;
-       WM_Hotkey_Register(2, keys, "Interface>TextEdit");
        
        // Spawn interface root
        if( !gbNoSpawnUI )
@@ -98,22 +79,24 @@ int main(int argc, char *argv[])
        for(;;)
        {
                fd_set  fds;
+               fd_set  efds;
                 int    nfds = 0;
                FD_ZERO(&fds);
+               FD_ZERO(&efds);
        
                WM_Update();
 
                Input_FillSelect(&nfds, &fds);
-               IPC_FillSelect(&nfds, &fds);
+               IPC_FillSelect(&nfds, &fds, &efds);
                
                nfds ++;
-               if( _SysSelect(nfds, &fds, NULL, NULL, NULL, THREAD_EVENT_IPCMSG) == -1 ) {
+               if( _SysSelect(nfds, &fds, NULL, &efds, NULL, THREAD_EVENT_IPCMSG) == -1 ) {
                        _SysDebug("ERROR: select() returned -1");
                        return -1;
                }
 
                Input_HandleSelect(&fds);
-               IPC_HandleSelect(&fds);
+               IPC_HandleSelect(&fds, &efds);
        }
        return 0;
 }

UCC git Repository :: git.ucc.asn.au