forked from ShuriZma/suyu
1
0
Fork 0

Fill in more fields in TouchScreenEntryTouch

This commit is contained in:
Zach Hilman 2018-07-18 16:33:11 -04:00
parent f2f368014e
commit c337272ca9
1 changed files with 9 additions and 4 deletions

View File

@ -166,13 +166,18 @@ private:
touchscreen.entries[curr_entry].header.timestamp = sample_counter; touchscreen.entries[curr_entry].header.timestamp = sample_counter;
TouchScreenEntryTouch touch_entry{}; TouchScreenEntryTouch touch_entry{};
float x; auto [x, y, pressed] = touch_device->GetStatus();
float y; touch_entry.timestamp = timestamp;
bool pressed;
std::tie(x, y, pressed) = touch_device->GetStatus();
touch_entry.x = static_cast<u16>(x * Layout::ScreenUndocked::Width); touch_entry.x = static_cast<u16>(x * Layout::ScreenUndocked::Width);
touch_entry.y = static_cast<u16>(y * Layout::ScreenUndocked::Height); touch_entry.y = static_cast<u16>(y * Layout::ScreenUndocked::Height);
touch_entry.touch_index = 0;
// TODO(DarkLordZach): Maybe try to derive these from EmuWindow?
touch_entry.diameter_x = 15;
touch_entry.diameter_y = 15;
touch_entry.angle = 0;
// TODO(DarkLordZach): Implement multi-touch support
if (pressed) { if (pressed) {
touchscreen.entries[curr_entry].header.num_touches = 1; touchscreen.entries[curr_entry].header.num_touches = 1;
touchscreen.entries[curr_entry].touches[0] = touch_entry; touchscreen.entries[curr_entry].touches[0] = touch_entry;