Blame main.c

Ivan Mahonin 452870
Ivan Mahonin 452870
#include "app.h"
Ivan Mahonin 452870
Ivan Mahonin 452870
#include "common.c"
Ivan Mahonin 452870
#include "app.c"
Ivan Mahonin 7e0df9
#include "touch.c"
Ivan Mahonin 452870
#include "graph.c"
Ivan Mahonin 452870
#include "input.c"
Ivan Mahonin 452870
#include "keyboard.c"
Ivan Mahonin 452870
Ivan Mahonin d3e9d7
#include "layout.en.inc.c"
Ivan Mahonin 37122c
#include "layout.fn.inc.c"
Ivan Mahonin 37122c
#include "layout.en.full.inc.c"
Ivan Mahonin d3e9d7
#include "layout.am.inc.c"
Ivan Mahonin 569832
#include "layout.ru.inc.c"
Ivan Mahonin 452870
Ivan Mahonin 8603b4
#include <signal.h>
Ivan Mahonin 04543a
Ivan Mahonin 04543a
Ivan Mahonin 843e7a
Layout layouts[] = {
Ivan Mahonin d3e9d7
  { keysEn, COUNTOF(keysEn) },
Ivan Mahonin 37122c
  { keysFn, COUNTOF(keysFn) },
Ivan Mahonin 37122c
  { keysEnFull, COUNTOF(keysEnFull) },
Ivan Mahonin 569832
  { keysAm, COUNTOF(keysAm) },
Ivan Mahonin 569832
  { keysRu, COUNTOF(keysRu) },
Ivan Mahonin 569832
};
Ivan Mahonin 843e7a
Ivan Mahonin 452870
App app = {
Ivan Mahonin 63daec
  { layouts, COUNTOF(layouts) } }; // keyboard
Ivan Mahonin 452870
Ivan Mahonin 452870
Ivan Mahonin 04543a
void terminate(int s)
Ivan Mahonin 04543a
    { appStop(&app, 1); }
Ivan Mahonin 04543a
Ivan Mahonin 04543a
Ivan Mahonin 7e0df9
int main(int argc, char **argv) {
Ivan Mahonin 7e0df9
  const char *touch_dev = argc > 1 ? argv[1] : NULL;
Ivan Mahonin 7e0df9
Ivan Mahonin 7e0df9
  if (!appInit(&app, touch_dev))
Ivan Mahonin 452870
    return 1;
Ivan Mahonin 04543a
  
Ivan Mahonin 04543a
  struct sigaction act = {};
Ivan Mahonin 04543a
  act.sa_handler = &terminate;
Ivan Mahonin 04543a
  sigaction(SIGHUP, &act, NULL);
Ivan Mahonin 04543a
  sigaction(SIGINT, &act, NULL);
Ivan Mahonin 04543a
  sigaction(SIGTERM, &act, NULL);
Ivan Mahonin 04543a
  
Ivan Mahonin dbe1a1
  int success = appRun(&app);
Ivan Mahonin 452870
  appDeinit(&app);
Ivan Mahonin dbe1a1
  return !success;
Ivan Mahonin 452870
}
Ivan Mahonin 452870