Romain Vimont
61274a7cdb
Factorize integer argument parsing
...
Add util functions for integer parsing (with tests), and factorize
integer argument parsing to avoid code duplication.
5 years ago
Romain Vimont
64bcac9157
Refuse to push a non-regular file server
...
If SCRCPY_SERVER_PATH points to a directory, then a directory will be
pushed to /data/local/tmp/scrcpy-server.jar.
When executing it, app_process will just abort and leave the directory
on the device, causing scrcpy to always fail.
To avoid the problem, check that the server is a regular file before
pushing it.
Closes #956 <https://github.com/Genymobile/scrcpy/issues/956 >
5 years ago
Romain Vimont
3259c60b22
Fix test compilation on mingw
...
Including SDL2/SDL.h redefines main to SDL_main by default.
5 years ago
Romain Vimont
eb0f339271
Add shortcut to rotate screen
...
On Ctrl+r, disable auto-rotation (if enabled), set the screen rotation
and re-enable auto-rotation (if it was enabled).
Closes #11 <https://github.com/Genymobile/scrcpy/issues/11 >
5 years ago
Yu-Chen Lin
fbc86a616c
Correct coding style
...
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
5 years ago
Yu-Chen Lin
b2bf25c52c
Add test_buffer_util
...
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
5 years ago
Yu-Chen Lin
5eeaed09ae
Add test_strquote
...
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
5 years ago
Romain Vimont
3100533e56
Fix "natural scrolling"
...
> Movements down (scroll backward) generate negative y values and up
> (scroll forward) generate positive y values.
> If direction is SDL_MOUSEWHEEL_FLIPPED the values in x and y will be
> opposite. Multiply by -1 to change them back.
<https://wiki.libsdl.org/SDL_MouseWheelEvent#Remarks >
The x and y values already take the scrolling configuration into
account. Reversing the values when the direction is flipped cancels the
scrolling configuration.
Therefore, just ignore the direction field.
Fixes <https://github.com/Genymobile/scrcpy/issues/966 >
5 years ago
Romain Vimont
15a206b7fc
Assert return value of mutex functions
...
Mutex functions may only fail due to a programming error.
Use assertions in debug builds, and ignore the value in release builds.
5 years ago
Romain Vimont
d0f5a7fd9f
Remove unused includes
...
No mutex is used in decoder.c and stream.c.
5 years ago
Romain Vimont
510caff0cd
Replace SDL_assert() by assert()
...
SDL_assert() open a dialog on assertion failure.
There is no reason not to use assert() directly.
5 years ago
Romain Vimont
b5ebb234dd
Replace BUILD_DEBUG by NDEBUG
...
Use the "standard" NDEBUG definition, which is used by assert().
5 years ago
Romain Vimont
73e8ec1b35
Remove path argument from cmd_execute()
...
It is always equal to argv[0] (or not used on Windows).
5 years ago
Romain Vimont
8dc11a0286
Fix warnings on Windows
...
fix warnings reported with -Dwarning_level=2 on Windows.
5 years ago
Romain Vimont
06104a701b
Fix windows build
...
Utilities have been moved to util/, but includes had not been updated
in Windows-specific files.
Ref: dfd0707a29
5 years ago
Romain Vimont
31d9d56117
Fix warnings
...
Fix warnings reported with -Dwarning_level=2.
5 years ago
Romain Vimont
dfd0707a29
Move utilities to util/
5 years ago
Romain Vimont
83ace84280
Restore the .jar extension on the device side
...
Commit 3da95b52bd
renamed
'scrcpy-server.jar' to 'scrcpy-server' to avoid issues on the client
side.
However, removing the extension may cause issues with app_process, so
restore the extension only on the device side.
Fixes <https://github.com/Genymobile/scrcpy/issues/944 >
5 years ago
Romain Vimont
c9d886f38b
Use the existing constants for device server path
5 years ago
Romain Vimont
c2116082ab
Remove deprecated options from help and manpage
...
Ref: ff061b4f30
5 years ago
Romain Vimont
3599fcaae5
Fix help for --window-width and --window-height
...
The default value is 0 (automatic), not -1.
5 years ago
Romain Vimont
18f2e33a8b
Fix noconsole.exe
...
The linker flag "-mwindows" has no effect on my current MinGW.
Instead, passing "-Wl,--subsystem,windows" works.
Fixes <https://github.com/Genymobile/scrcpy/issues/691 >
5 years ago
senta2006
7aed5d5b60
Fix typos
...
PR <https://github.com/Genymobile/scrcpy/pull/927 >
Signed-off-by: Romain Vimont <rom@rom1v.com>
5 years ago
Romain Vimont
1d97d7213d
Add option --max-fps
...
Add an option to limit the capture frame rate. It only works for devices
with Android >= 10.
Fixes <https://github.com/Genymobile/scrcpy/issues/488 >
5 years ago
Romain Vimont
1b78a77962
Fix error message
5 years ago
Romain Vimont
59073223aa
Update manpage for --window-borderless option
5 years ago
Diego Fernando Díaz A
59bc5bc1f5
Add option to disable window decoration
...
Add --window-borderless parameter.
Signed-off-by: Romain Vimont <rom@rom1v.com>
5 years ago
Romain Vimont
9fd7a80a89
Add option to specify the initial window size
...
Add --window-width and --window-height parameters.
If only one is provided, the other is computed so that the aspect ratio
is preserved.
5 years ago
Romain Vimont
b6e2f8ae00
Update manpage for --window-{x,y} options
5 years ago
Diego Fernando Díaz A
ce5635f28c
Add option to specify the initial window position
...
Add --window-x and --window-y parameters.
Signed-off-by: Romain Vimont <rom@rom1v.com>
5 years ago
Romain Vimont
771bd8404d
Do not write invalid packet duration
...
Configuration packets have no PTS. Do not compute a packet duration from
their PTS.
Fixes recording to mp4 on device rotation.
5 years ago
Yu-Chen Lin
b963a3b9d5
Check client and server mismatch
...
Send client version as first parameter and check it at server start.
Signed-off-by: Yu-Chen Lin <npes87184@gmail.com>
Signed-off-by: Romain Vimont <rom@rom1v.com>
5 years ago
Romain Vimont
aa0f77c898
Accept resize shortcuts on maximized window
...
Allow "resize to fit" and "resize to pixel-perfect" on maximized window:
restore the window to normal size then resize.
5 years ago
Romain Vimont
35c05bb3ce
Fix rotation while the window is maximized
...
Keep the windowed window size to handle maximized window the same way as
fullscreen window.
Fixes <https://github.com/Genymobile/scrcpy/issues/750 >
5 years ago
Romain Vimont
f6f2868868
Handle window events from screen.c
...
Only the screen knows what to do on window events.
This paves the way to handle more window events.
5 years ago
Romain Vimont
6996cbf5d3
Log device disconnection
...
If scrcpy closes due to socket disconnection, log a warning.
5 years ago
Romain Vimont
b08a98324d
Fix segfault on empty file recorded
...
Write the file trailer only if the file header have been written, to
avoid a segfault in libav.
Fixes <https://github.com/Genymobile/scrcpy/issues/918 >.
5 years ago
Romain Vimont
c916af0984
Add --prefer-text option
...
Expose an option to configure how key/text events are forwarded to the
Android device.
Enabling the option avoids issues when combining multiple keys to enter
special characters, but breaks the expected behavior of alpha keys in
games (typically WASD).
Fixes <https://github.com/Genymobile/scrcpy/issues/650 >
5 years ago
Romain Vimont
ff061b4f30
Deprecate short options for advanced features
...
The short options will be removed in the future (and may be reused for
other features).
5 years ago
Romain Vimont
157c60feb4
Fix indentation
5 years ago
Romain Vimont
2d90e1befd
Fix include recorder.h
5 years ago
Romain Vimont
0e301ddf19
Factorize scrcpy options and command-line args
...
Do not duplicate all scrcpy options fields in the structure storing the
parsed command-line arguments.
5 years ago
Romain Vimont
c42ff75b74
Pass screen to mouse event converters
...
Mouse events coordinates depend on the screen size and location, so the
converter need to access the screen.
The fact that it needs the position or the size is an internal detail,
so pass a pointer to the whole screen structure.
5 years ago
Romain Vimont
b0db1178d1
Move event conversion to input_manager
...
Only keep helper functions separated.
This will help to convert coordinates internally when necessary.
5 years ago
Romain Vimont
8d601d3210
Rename "input_manager" variables to "im"
...
It is used a lot, a short name improves readability.
5 years ago
Romain Vimont
683f7ca848
Document how to attach a debugger to the server
5 years ago
Romain Vimont
120f08ee96
Fix manpage option parameter format
...
The parameter for --window-title was not underlined the same way as
others.
5 years ago
Romain Vimont
0415672a75
Merge branch 'master' into dev
5 years ago
Romain Vimont
95fd64b5de
Add scrcpy version in recorded video metadata
...
It might help to understand problems in recorded videos.
5 years ago
yangfl
4696878a97
Add manpage for scrcpy
5 years ago