Commit Graph

23 Commits

Author SHA1 Message Date
osy 2224ffadba CocoaSpice: updated backend 2022-05-27 12:06:29 -07:00
Luke Noble 15dffe99cc Apple Pencil tap gesture while using server cursor 2022-05-20 17:13:24 -05:00
osy 45322751ac display: separate cursor handling for abs/rel
If the incorrect coordinates are sent (abs for rel or vice versa) then the
cursor may look stuck on the right of the screen as QEMU tries to send
multiple deltas.
2022-04-25 13:04:08 -07:00
osy 09a1bee9e3 display(iOS): fix pinch to zoom on iOS 15 2022-02-25 19:57:20 -08:00
osy 6270c63c9f display(iOS): always set resize button state to zoom out when viewport changes 2022-02-25 19:56:49 -08:00
osy 8aae0370dc display(iOS): fix scale/origin saving
This was broken in the re-factor. We fix the functionality and also
clean up the code and make it so the persistent value is always up to
date.

Fixes #3669
2022-02-24 21:08:53 -08:00
osy f9c0422449 display(iOS): fix cursor set to relative on iOS 13
Fixes #3650
2022-02-21 00:10:40 -08:00
osy 831bfa47dc display(iOS): remove toolbar/keyboard from viewState
With the new toolbar that is always visible, there is no value in
storing the legacy toolbar visibility in the per-VM viewState setting.
Now, legacy toolbar VMs will always start with the toolbar visible. With
that removed, we also remove the per-VM keyboard visibility setting to
be a global value (the keyboard visibility for the last VM launched will
persist). This also simplifies the code for the delegate and the VM
manager.
2022-02-20 17:41:50 -08:00
osy 4e275c8898 project: refactored CocoaSpice into package
This gives us a few main advantages:

1. It improves encapsulation and division of responsibility.
2. CocoaSpice can be used in other projects more easily.
3. It lays the foundation for better unit testing of key parts.
4. It cleans up the codebase.

Resolves #2376
2022-02-08 14:41:17 -08:00
osy fff1c038f6 display(iOS): fix touch input with new toolbar 2021-12-31 09:47:01 -08:00
osy f24fc775a7 Merge tag 'v2.2.4' into dev-monterey 2021-10-03 16:08:48 -07:00
osy 5cd7bdf88b display(iOS): support alt input when mouse is connected
When a mouse/trackpad is connected, we should still support touch and pencil.

Fixes #2669
2021-09-06 16:00:15 -07:00
osy 2662c10b2a display(iOS): removed indirect cursor drag option
The option was useless and confusing. Also fixed some minor issues with how
the code handles mouse types.
2021-09-06 15:57:00 -07:00
osy 1e3691d04a vm: refactor QEMU backend to subclasses 2021-06-30 17:34:42 -05:00
osy 7e877d966a iOS: fix crash on pinch handler 2021-06-22 19:50:06 -05:00
osy 58aa8108b6 Merge branch 'master' into dev 2021-04-26 18:46:19 -07:00
osy 05a72f51fa iOS: support multiple GCMouse and iOS Simulator
Multiple mice could be connected. We will always use the most "recent" mice.
Also ignore UITouchTypeIndirectPointer events when mouse is captured.

Fixes #2363
2021-04-25 18:33:27 -07:00
osy 23dde8cfaa CocoaSpice: refactor cursor drawing into display
There was a misunderstanding previouly that the input code and
cursor drawing code should reside in the same class. This led to
one CocoaSpice class handling both the SPICE input and cursor
channel. The problem is that SPICE protocol specifies a 1-to-1
mapping of cursor channel and display channel (sharing the same
channel id). To implement support for multiple displays, we
would have to follow this convention.

Additionally, there was some akwardness in forcing CSInput to
comply with the UTMRenderSource protocol because it shared the
viewport size with CSDisplay. "Outside" code would have to
syncronize the display size.

As part of the refactor, we also tried to improve the code style
by first moving as many ivars to properties as possible and by
also renaming some methods and inits.
2021-03-13 13:21:44 -08:00
osy 1bdab43f19 manager: make sure view scale is never 0 2021-01-31 19:14:14 -08:00
osy a8d02d5d05 manager: fix mouse right click on iOS
Fixes #523
2020-12-28 22:17:24 -08:00
osy 27bc6be0cc manager: fix input switch and refactored function
Input switching was broken from a previous refactor due to changes in the
encapsulation. We now move the function to its proper place.
2020-09-14 22:31:05 -07:00
osy a518a8976d Merge branch '199-pencil2-rightclick' of https://github.com/conath/UTM into conath-199-pencil2-rightclick 2020-09-10 12:30:00 -07:00
osy f0c0b25486 project: mass rename and reorganize 2020-09-10 12:13:36 -07:00