#1321 closed enhancement (wontfix)
scrolling for the osx shadow server
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | major | Milestone: | 4.0 |
Component: | platforms | Version: | trunk |
Keywords: | osx shadow scrolling | Cc: |
Description
Follow up from #1232, osx has an API to give us those rectangles: CGScreenUpdateMoveCallback.
It shouldn't be too hard to add this callback to the osx shadow server, it will be a little bit more difficult to bypass most of the screen damage logic to go straight to the "scrolling" encoder.
Attachments (2)
Change History (7)
Changed 5 years ago by
Attachment: | osx-shadow-scrolling.patch added |
---|
comment:1 Changed 5 years ago by
Status: | new → assigned |
---|
The patch above fails with a cryptic error message: SystemError: error return without exception set
.
Maybe we'll need to use Cython to get this to work. PITA.
comment:2 Changed 4 years ago by
Milestone: | 3.0 → 3.1 |
---|
comment:4 Changed 2 years ago by
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
Even with the latest pyobjc 6.1 and the refreshed patch, registering for the callback fails:
Traceback (most recent call last): File "/Users/antoine/Desktop/Xpra.app/Contents/Resources/lib/python/xpra/server/shadow/shadow_server_base.py", line 431, in _process_map_window self.start_refresh(wid) File "/Users/antoine/Desktop/Xpra.app/Contents/Resources/lib/python/xpra/platform/darwin/shadow_server.py", line 162, in start_refresh err = CG.CGScreenRegisterMoveCallback(self.screen_move_callback, None) SystemError: <built-in function CGScreenRegisterMoveCallback> returned NULL without setting an error
And this API is deprecated anyway, in favour of the Quartz Display Streaming API
comment:5 Changed 16 months ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1321
Note: See
TracTickets for help on using
tickets.
attempt to use CGScreenRegisterMoveCallback