You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
882 B
35 lines
882 B
package com.genymobile.scrcpy;
|
|
|
|
import java.io.IOException;
|
|
|
|
public final class DeviceMessageSender {
|
|
|
|
private final DesktopConnection connection;
|
|
|
|
private String clipboardText;
|
|
|
|
public DeviceMessageSender(DesktopConnection connection) {
|
|
this.connection = connection;
|
|
}
|
|
|
|
public synchronized void pushClipboardText(String text) {
|
|
clipboardText = text;
|
|
notify();
|
|
}
|
|
|
|
public void loop() throws IOException, InterruptedException {
|
|
while (true) {
|
|
String text;
|
|
synchronized (this) {
|
|
while (clipboardText == null) {
|
|
wait();
|
|
}
|
|
text = clipboardText;
|
|
clipboardText = null;
|
|
}
|
|
DeviceMessage event = DeviceMessage.createClipboard(text);
|
|
connection.sendDeviceMessage(event);
|
|
}
|
|
}
|
|
}
|