Skip to content

Commit e7f4ee0

Browse files
committed
added linux scroll down and up
1 parent e79d32c commit e7f4ee0

File tree

2 files changed

+47
-3
lines changed

2 files changed

+47
-3
lines changed

XInputSimulator/main.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,16 @@ int main()
3939
sim.mouseMoveRelative(0, 300);
4040
waitABit();
4141
sim.mouseUp(1);
42+
waitABit();
43+
//scroll down and up
44+
sim.mouseScrollY(10);
45+
waitABit();
46+
sim.mouseScrollY(-10);
47+
//scroll left and right
48+
waitABit();
49+
sim.mouseScrollX(10);
50+
waitABit();
51+
sim.mouseScrollX(-10);
4252

4353
return 0;
4454
}

XInputSimulator/xinputsimulatorimpllinux.cpp

Lines changed: 37 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,15 +112,49 @@ void XInputSimulatorImplLinux::mouseClick(int button)
112112
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
113113
this->mouseUp(button);
114114
}
115-
115+
//kajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjfkajsdölfkjasdölfkjasldökfjaölsdkjfalsdkjfalskdjfaldskjf
116116
void XInputSimulatorImplLinux::mouseScrollX(int length)
117117
{
118-
throw NotImplementedException();
118+
//throw NotImplementedException();
119+
120+
int button;
121+
if(length < 0){
122+
button = 6;
123+
}else{
124+
button = 7;
125+
}
126+
127+
if(length < 0){
128+
length *= -1;
129+
}
130+
131+
for(int cnt = 0; cnt < length; cnt++){
132+
this->mouseDown(button);
133+
//std::this_thread::sleep_for(std::chrono::milliseconds(200));
134+
this->mouseUp(button);
135+
}
119136
}
120137

121138
void XInputSimulatorImplLinux::mouseScrollY(int length)
122139
{
123-
throw NotImplementedException();
140+
//throw NotImplementedException();
141+
142+
int button;
143+
if(length < 0){
144+
button = 4;
145+
}else{
146+
button = 5;
147+
}
148+
149+
if(length < 0){
150+
length *= -1;
151+
}
152+
153+
for(int cnt = 0; cnt < length; cnt++){
154+
this->mouseDown(button);
155+
//std::this_thread::sleep_for(std::chrono::milliseconds(200));
156+
this->mouseUp(button);
157+
}
124158
}
125159

126160
void XInputSimulatorImplLinux::keyDown(int key)

0 commit comments

Comments
 (0)