blob: dd125e5bda276bdf7f9f556ff5bdf40018624234 (
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
26
27
28
29
30
31
32
33
|
#pragma once
#include "ITrackpadGesture.hpp"
#include "../../../../desktop/DesktopTypes.hpp"
#include "../../../../desktop/Workspace.hpp"
class CFullscreenTrackpadGesture : public ITrackpadGesture {
public:
CFullscreenTrackpadGesture(const std::string_view& mode);
virtual ~CFullscreenTrackpadGesture() = default;
virtual void begin(const ITrackpadGesture::STrackpadGestureBegin& e);
virtual void update(const ITrackpadGesture::STrackpadGestureUpdate& e);
virtual void end(const ITrackpadGesture::STrackpadGestureEnd& e);
private:
PHLWINDOWREF m_window;
Vector2D m_posFrom, m_posTo, m_sizeFrom, m_sizeTo;
float m_lastDelta = 0;
enum eMode : uint8_t {
MODE_FULLSCREEN = 0,
MODE_MAXIMIZE,
};
eMode m_mode = MODE_FULLSCREEN;
eFullscreenMode m_originalMode = FSMODE_NONE;
eFullscreenMode fsModeForMode(eMode mode);
};
|