summaryrefslogtreecommitdiff
path: root/src/devices/TouchDevice.hpp
blob: 9b32077d0565bb723ea4c53275490307c9707e02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include "ITouch.hpp"

class CTouchDevice : public ITouch {
  public:
    static SP<CTouchDevice>        create(SP<Aquamarine::ITouch> touch);

    virtual bool                   isVirtual();
    virtual SP<Aquamarine::ITouch> aq();

  private:
    CTouchDevice(SP<Aquamarine::ITouch> touch);

    WP<Aquamarine::ITouch> m_touch;

    struct {
        CHyprSignalListener destroy;
        CHyprSignalListener down;
        CHyprSignalListener up;
        CHyprSignalListener motion;
        CHyprSignalListener cancel;
        CHyprSignalListener frame;
    } m_listeners;
};