#539 closed task (wontfix)
tabbed client
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | minor | Milestone: | future |
Component: | client | Version: | |
Keywords: | Cc: |
Description (last modified by )
Instead of displaying all the client windows as individual windows, we could use a tabbed viewer which shows each client window as a separate tab.
Problems:
- Application Quircks: applications like google chrome that don't use the correct window type hints will just be impossible to handle correctly
- refactoring needed for:
- client window base vs client widget base common code
- clicks, mouse, keyboard handling, focus, etc
- painting spinners
- opengl backing integration (potentially big, could go with a simple pixmap backing to begin with: lots of memory copying, but client usually has CPU to spare anyway)
- pass icons and title to tab parent window
- missing code for: xid
- decide how to handle: applications that request a resize or move
- potentially very big: smooth scrolling (allow the server side window to be much bigger than what we display and use scrollbars to navigate it) - could be extended later so that the remote app cooperates in scrolling (so we can have a virtual window size much bigger than the server-side window area)
- handle maximize, fullscreen
- slow down the refresh for the tabs that aren't shown (but still update our back buffer so we can show them instantly when switching tabs)
- handling size hints, etc: we need to add the offset of our top bar (should be possible by modifying the base-size attribute on the fly?)
I will attach a stub client that uses virtual "tab" windows (work in progress)
Attachments (1)
Change History (6)
Changed 7 years ago by
Attachment: | tabbed-client.patch added |
---|
comment:1 Changed 7 years ago by
Description: | modified (diff) |
---|---|
Owner: | changed from Antoine Martin to Antoine Martin |
Status: | new → assigned |
comment:3 Changed 7 years ago by
Milestone: | 0.14 → future |
---|
Re-scheduling: too much work, best to have the application use a control channel to tune the encoding (example code: webkit_scrolling_window.py), or write a dedicated client application.
comment:4 Changed 6 years ago by
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
Too hard to get right generically.
comment:5 Changed 6 weeks ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/539
Note: See
TracTickets for help on using
tickets.
stub for a tabbed client