| 97 | } |
| 98 | |
| 99 | void KeyScanner::Stop() { |
| 100 | #ifdef LINUX |
| 101 | if(!m_IsRunning) |
| 102 | return; |
| 103 | |
| 104 | m_IsRunning = false; |
| 105 | for(auto fd : m_KeyboardFds) |
| 106 | close(fd); |
| 107 | for(auto &thread : m_ScanThreads) |
| 108 | if(thread.joinable()) |
| 109 | thread.join(); |
| 110 | m_KeyboardFds.clear(); |
| 111 | m_ScanThreads.clear(); |
| 112 | #endif |
| 113 | } |
| 114 | |
| 115 | #ifdef LINUX |
| 116 | void KeyScanner::ScanThread(int idx) { |
no outgoing calls
no test coverage detected