ironrdp-pdu contains lots of code that we don’t actually need in other crates such as the virtual channels.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Instead of directly depending on the unmaintained rdp-rs to decompress
RLE tiles dynamically, a few snapshots are saved to test against.
The benefit is to remove a lot of outdated dependencies from our
(developement) dependency graph.
FastPath pointer messages handling:
- Add pointer messages handling in `ironrdp-session`, `ironrdp-client` and `ironrdp-web`
- Supported bpp's: 1, 16, 24, 32 (8bpp is not supported yet, palette messages handling
should be added first)
- Alpha blending is supported, and done via software-based compositing
- Inverted cursor pixels are supported (FreeRDP do not support them correctly)
- Large pointers are supported (FreeRDP crashes on them)
- Cursor caching is supported
- Add new CLI argument to enable/disable pointer rendering (--no-server-pointer)
- `session`/`client` refactoring to facilitate multiple types of session output updates besides
framebuffer update (e.g. request to hide/show system pointer on client)
- Minor changes in web client typescript code to hide/show cursor on canvas
Closes#108