Code Review
/
staging
/
windowmanager.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Call event handler only if event-label matches
[staging/windowmanager.git]
/
AFBClient.h
diff --git
a/AFBClient.h
b/AFBClient.h
index
d776057
..
983c2ad
100644
(file)
--- a/
AFBClient.h
+++ b/
AFBClient.h
@@
-1,18
+1,8
@@
#ifndef AFBCLIENT_H
#define AFBCLIENT_H
#ifndef AFBCLIENT_H
#define AFBCLIENT_H
-#include <systemd/sd-event.h>
-
#include <functional>
#include <functional>
-extern "C"
-{
-#include <json-c/json.h>
-
-#include "afb-wsj1.h"
-#include "afb-ws-client.h"
-}
-
class AFBClient
{
AFBClient();
class AFBClient
{
AFBClient();
@@
-22,11
+12,15
@@
class AFBClient
AFBClient &operator=(const AFBClient &) = delete;
public:
AFBClient &operator=(const AFBClient &) = delete;
public:
+ typedef std::function<void(char const *label)> handler_fun;
+
enum EventType {
Event_Active = 1,
Event_Inactive,
enum EventType {
Event_Active = 1,
Event_Inactive,
+
Event_Visible,
Event_Invisible,
Event_Visible,
Event_Invisible,
+
Event_SyncDraw,
Event_FlushDraw,
};
Event_SyncDraw,
Event_FlushDraw,
};
@@
-34,7
+28,7
@@
public:
static AFBClient &instance();
int init(int port, char const *token);
static AFBClient &instance();
int init(int port, char const *token);
- int dispatch(
uint64_t timeout
);
+ int dispatch();
// WM API
int requestSurface(const char *label);
// WM API
int requestSurface(const char *label);
@@
-42,14
+36,11
@@
public:
int deactivateSurface(const char *label);
int endDraw(const char *label);
int deactivateSurface(const char *label);
int endDraw(const char *label);
- void set_event_handler(enum EventType et,
std::function<void(char const *label)>
f);
+ void set_event_handler(enum EventType et,
handler_fun
f);
-private:
- void call(const char *api, const char *verb, const char *object);
+ struct Impl;
- struct afb_wsj1 *wsj1;
- struct afb_wsj1_itf itf;
-
- sd_event *loop;
+private:
+ Impl *d;
};
#endif // AFBCLIENT_H
};
#endif // AFBCLIENT_H