blob: 26e51e00903fccf57137b742e900cd1f51dcc2c1 (
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
|
#pragma once
#include "ITrackpadGesture.hpp"
#include <cstdint>
namespace Layout::Tiled {
struct SColumnData;
}
class CScrollMoveTrackpadGesture : public ITrackpadGesture {
public:
CScrollMoveTrackpadGesture() = default;
virtual ~CScrollMoveTrackpadGesture() = default;
virtual void begin(const ITrackpadGesture::STrackpadGestureBegin& e);
virtual void update(const ITrackpadGesture::STrackpadGestureUpdate& e);
virtual void end(const ITrackpadGesture::STrackpadGestureEnd& e);
private:
bool m_wasScrollingLayout = false;
bool m_hasLastUpdate = false;
uint32_t m_lastUpdateTimeMs = 0;
double m_velocity = 0.0;
double m_startedOffset = 0.0;
WP<Layout::Tiled::SColumnData> m_startedColumn = nullptr;
};
|