xpra icon
Bug tracker and wiki

Opened 4 years ago

Closed 4 years ago

#543 closed enhancement (fixed)

allow the client more control over window update speed

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 0.12
Component: core Version:
Keywords: Cc:

Description

The client may offer an enhanced UI to let the user select which windows are more important (ie: #539), or we can detect which windows are more important: if a window is not shown on the current desktop, we don't need to refresh it at full speed!

Attachments (2)

workspace-change-batch-delay.patch (16.8 KB) - added by Antoine Martin 4 years ago.
when the window is not on the current workspace, limit its update speed
window-throttled.png (13.7 KB) - added by Antoine Martin 4 years ago.
before moving the window to another workspace on the left, after on the right

Download all attachments as: .zip

Change History (5)

Changed 4 years ago by Antoine Martin

when the window is not on the current workspace, limit its update speed

comment:1 Changed 4 years ago by Antoine Martin

Owner: changed from Antoine Martin to Antoine Martin
Status: newassigned

The patch above is in pretty good shape, it overloads the "buffer-refresh" packet with the ability to:

  • update the batch configuration fairly generically
  • update "client_properties" so we don't need to use a "configure-window" packet for property changes

The window refresh drops dramatically when it isn't on the current desktop (though still higher than I expected - to investigate)

Changed 4 years ago by Antoine Martin

Attachment: window-throttled.png added

before moving the window to another workspace on the left, after on the right

comment:2 Changed 4 years ago by Antoine Martin

Merged in r5870, it works really well.

Here's the most extreme example, using the speed setting "low latency" with x264:
before moving the window to another workspace on the left, after on the right

With more reasonable settings, the bandwidth savings are still impressive, usually about 8 times less once the throttling kicks in.

I am keeping the ticket open for further testing, and probably refactor the code a little to use it on suspend / resume (see #492)

Last edited 4 years ago by Antoine Martin (previous) (diff)

comment:3 Changed 4 years ago by Antoine Martin

Resolution: fixed
Status: assignedclosed

Hooked into the power events callbacks in r5875 - see #492.

Will probably do more on this as part of #540.

Note: See TracTickets for help on using tickets.