xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

Opened 5 years ago

Last modified 16 months ago

#1429 assigned enhancement

partial line scrolling

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: future
Component: encodings Version: trunk
Keywords: scroll Cc:


Split from #1426.

We can hash lines into chunks so that we can detect scrolling even when the edges of the area don't scroll (ie: where the scrollbar would normally be).
Each line could be split as: first ~32 pixels, middle bit, last 32 pixels.
We can either continue to also calculate the hash for the whole line, or just always use the middle bit for calculating the scroll distances.

When sending scroll data, we use the distance values and try to add the edges to it (comparing their own hashes against the scroll distance specified is fast).
Hashes that don't match will get sent as non-scroll areas.

Change History (6)

comment:1 Changed 4 years ago by Antoine Martin

Milestone: 2.13.1
Status: newassigned

comment:2 Changed 3 years ago by Antoine Martin

Milestone: 3.14.0

Milestone renamed

comment:3 Changed 3 years ago by Antoine Martin

This would help with #2248.

comment:4 Changed 3 years ago by Antoine Martin

This is HARD.
Not having to split lines allows us to take shortcuts and ensures we always get rectangles - which is important for splitting the window into regions.
Splitting the line into 3 hashes doesn't just use 3 times more memory, it also complicates the code dramatically.

comment:5 Changed 3 years ago by Antoine Martin

Milestone: 4.0future

comment:6 Changed 16 months ago by migration script

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1429

Note: See TracTickets for help on using tickets.