Yu-Chen Lin
daa06abd34
Fix comment in control message serialization
...
Refs 245999aec4
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
Signed-off-by: Romain Vimont <rom@rom1v.com>
4 years ago
Romain Vimont
94702a4309
Fix memset() size in tests
...
The memset() size was 1 byte too long. It was harmless because the last
'a' was overwritten by '\0`.
4 years ago
Romain Vimont
65fbec9643
Mention SCRCPY_ICON_PATH env var in manpage
4 years ago
Romain Vimont
a208400133
Remove useless intermediate variable
...
Now that PLATFORM is correctly used in the if-condition,
PLATFORM_VERSION is useless.
PR #2850 <https://github.com/Genymobile/scrcpy/pull/2850 >
4 years ago
yangfl
ab00210b37
Fix script to build without gradle
...
The PLATFORM variable is assigned either from $ANDROID_PLATFORM or gets
a default value (currently $PLATFORM_VERSION).
The check to use either dx (SDK < 31) or d8 (SDK >= 31) must be based on
the actual $PLATFORM, not the default $PLATFORM_VERSION.
Refs 52138fd921
Refs <57d30780dd/debian/patches/0002-Workaround-broken-script.patch >
PR #2850 <https://github.com/Genymobile/scrcpy/pull/2850 >
Signed-off-by: Romain Vimont <rom@rom1v.com>
4 years ago
Archisman Panigrahi
5704ec6967
AUR to official Arch Repository
...
PR #2844 <https://github.com/Genymobile/scrcpy/pull/2844 >
Signed-off-by: Romain Vimont <rom@rom1v.com>
4 years ago
Romain Vimont
64a04b8d4a
Fix process execution on Windows 7
...
According to this bug report on Firefox:
<https://bugzilla.mozilla.org/show_bug.cgi?id=1460995 >
> CreateProcess fails with ERROR_NO_SYSTEM_RESOURCES on Windows 7. It
> looks like the reason why is because PROC_THREAD_ATTRIBUTE_HANDLE_LIST
> doesn't like console handles.
To avoid the problem, do not pass console handles to
PROC_THREAD_ATTRIBUTE_HANDLE_LIST.
Refs #2783 <https://github.com/Genymobile/scrcpy/pull/2783 >
Refs f801d8b312
Fixes #2838 <https://github.com/Genymobile/scrcpy/issues/2838 >
PR #2840 <https://github.com/Genymobile/scrcpy/pull/2840 >
4 years ago
Romain Vimont
86c91e183d
Log CreateProcessW() error code on Windows
...
Refs #2838 <https://github.com/Genymobile/scrcpy/issues/2838 >
4 years ago
Romain Vimont
cb8713eb1f
Update links to v1.21
4 years ago
Romain Vimont
003e738106
Bump version to 1.21
4 years ago
Romain Vimont
30c79f2d25
Merge branch 'master' into dev
4 years ago
Romain Vimont
b25b674c45
Clarify TCP/IP mode in README
4 years ago
Romain Vimont
e2b3968c66
Always synchronize clipboard on explicit COPY/CUT
...
If --no-clipboard-autosync is enabled, the automatic clipboard
synchronization performed whenever the device clipboard changes is
disabled.
But on explicit COPY and CUT scrcpy shortcuts (MOD+c and MOD+x), the
clipboard should still be synchronized, so that it remains possible to
copy-paste from the device to the computer.
This is consistent with the behavior of MOD+v, which pastes the computer
clipboard to the device.
Refs #2228 <https://github.com/Genymobile/scrcpy/issues/2228 >
Refs #2817 <https://github.com/Genymobile/scrcpy/pull/2817 >
PR #2834 <https://github.com/Genymobile/scrcpy/pull/2834 >
4 years ago
Romain Vimont
bfcb9d06c3
Expose sync mode for injecting events
...
Expose the inject input event mode so that it is possible to wait for
the events to be "finished". This will be necessary to read the
clipboard content only after the COPY or CUT key event is handled.
PR #2834 <https://github.com/Genymobile/scrcpy/pull/2834 >
4 years ago
Romain Vimont
dc19ae334d
Move acknowledgment handling
...
Handle all actions related to SET_CLIPBOARD from the dedicated method.
PR #2834 <https://github.com/Genymobile/scrcpy/pull/2834 >
4 years ago
Romain Vimont
cbe73b0bc3
Fix set_clipboard message log
...
If paste is disabled on set_clipboard, then the PASTE key is not
injected, but COPY is unrelated.
PR #2834 <https://github.com/Genymobile/scrcpy/pull/2834 >
4 years ago
Romain Vimont
bf97a46b0c
Upgrade gradle build tools to 7.0.3
4 years ago
Romain Vimont
bd56d81f72
Add --raw-key-events
...
This option allows to inject all input keys as key events, and ignore
text events.
Fixes #2816 <https://github.com/Genymobile/scrcpy/issues/2816 >
PR #2831 <https://github.com/Genymobile/scrcpy/pull/2831 >
4 years ago
Romain Vimont
5e918ac0c3
Use enum for key injection mode
...
There was only two key injection modes:
- the default one
- the mode with --prefer-text enabled
To prepare the addition of another mode (--raw-key-events), use an enum
instead of a bool.
PR #2831 <https://github.com/Genymobile/scrcpy/pull/2831 >
4 years ago
Romain Vimont
0c0f62e4ab
Use static maps to convert input events
...
This improves readability (hopefully).
PR #2831 <https://github.com/Genymobile/scrcpy/pull/2831 >
4 years ago
Romain Vimont
c96505200a
Fix code style in keyboard_inject
4 years ago
Romain Vimont
82a053015d
Improve HID keyboard documentation
...
Explain how to configure the keyboard layout.
4 years ago
Romain Vimont
1a6caeb18c
Document --tcpip in README
...
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
19858e6aeb
Add --tcpip feature
...
Expose an option to automatically configure and reconnect the device
over TCP/IP, to simplify wireless connection without using adb
explicitly.
There are two variants:
- If a destination address is provided, then scrcpy connects to this
address before starting. The device must listen on the given TCP port
(default is 5555).
- If no destination address is provided, then scrcpy attempts to find
the IP address of the current device (typically connected over USB),
enables TCP/IP mode, then connects to this address before starting.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
3b310f8317
Extract interruptible sleep for server
...
This improves readability, and makes the function reusable.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
800ba33ff4
Add function to read an adb property
...
This will allow to read the property "service.adb.tcp.port" to know if
the TCP/IP mode is enabled on the device, and which listening port is
used.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
8543d842ea
Add function to switch device to TCP/IP mode
...
Expose a function to execute "adb tcpip <port>".
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
f609b406c9
Add function to find the device IP address
...
Parse the result of "adb shell ip route" to find the device IP address.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
b7e631791c
Add util function to remove trailing '\r'
...
Depending on the platform and adb versions, the lines output by adb
could end with "\r\r\n". This util function helps to remove all trailing
'\r'.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
b52f87a892
Add util function to locate a column in a string
...
This will help to parse the result of "adb shell ip route" to find the
device IP address.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
3bf6fd2894
Workaround "adb connect" error detection
...
"adb connect" always returns successfully (with exit code 0), even in
case of failure.
As a workaround, capture its output and check if it starts with
"connected".
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
bfce22414f
Add adb connect and disconnect
...
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
e6e6f865a0
Add adb flag to disable execution error logs
...
In addition to disable stdout and stderr of the child process, add a
flag to disable the error log printed by scrcpy if the command failed.
This will we useful for commands which are expected to fail in some
cases (like "adb disconnect" if the device is not connected).
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
e3d4aa8c5d
Use flags for adb commands
...
Explicitly indicate, for each adb call, if stdout and stderr must be
inherited.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
f801d8b312
Expose flags for process execution
...
Let the caller decide if stdout and stderr must be inherited on process
creation, i.e. if stdout and stderr of the child process should be
printed in the scrcpy console.
This allows to get output and errors for specific adb commands depending
on the context.
PR #2827 <https://github.com/Genymobile/scrcpy/pull/2827 >
4 years ago
Romain Vimont
01ab503c22
Remove obsolete precision in README
...
Scrcpy is available in Debian stable packages, and several Ubuntu
versions.
4 years ago
Romain Vimont
b9b8b6aab8
Simplify Windows process inheritance configuration
...
Merge if-blocks together.
4 years ago
Romain Vimont
3e54773c48
Remove intermediate static functions from adb.c
...
They can easily be inlined into the public functions.
4 years ago
Romain Vimont
b90c89766b
Set CLOEXEC flag on sockets
...
If SOCK_CLOEXEC exists, then set the flag on socket creation.
Otherwise, use fcntl() (or SetHandleInformation() on Windows) to set the
flag afterwards.
This avoids the sockets to be inherited in child processes.
Refs #2783 <https://github.com/Genymobile/scrcpy/pull/2783 >
4 years ago
Romain Vimont
904f0ae61e
Check process success locally for adb commands
...
Remove sc_process_check_success() from the process API, it is too
specific.
4 years ago
Romain Vimont
680d2cc940
Extract command argv building
...
This simplifies adb_execute_p().
4 years ago
Romain Vimont
8ed3328055
Use unsigned for connection attempts count
...
There is no reason to use an explicit uint32_t.
4 years ago
Romain Vimont
d31725f077
Reorder cli sanity checks
...
Check unexpected additional arguments before other sanity checks.
4 years ago
Romain Vimont
b0eb1a55d6
Fix adb get-serialno error handling
...
If pipe read fails, return.
4 years ago
Romain Vimont
3653fb6b15
Add OutOfMemory log helper
...
Add a special LOG_OOM() function to log all OutOfMemory errors (i.e.
allocations returning NULL).
4 years ago
Romain Vimont
92a458e846
Remove unreachable return statements
4 years ago
Romain Vimont
73e0311d14
Add missing return on file_handler failure
...
Mistake introduced by 84334cf7db .
4 years ago
Romain Vimont
007f616302
Add missing includes
...
Include these headers explicitly instead of relying on transitivity.
4 years ago
Romain Vimont
4c47598865
Make lockVideoOrientation option name uniform
...
On the server, the option was named lockedVideoOrientation.
4 years ago
Romain Vimont
7b29f5fd2d
Do not pass default values to the server
...
By default, only pass the version and the bit rate (the default bitrate
is a client compilation option).
4 years ago