On Mon, 2018-08-27 at 14:27 +0200, Gerd Hoffmann wrote: > Hi, > > > 1. The IDs sent from the client in VDAgentMonitorsConfig and > > MousePosition messages are equal to either `channel_id + monitor_id` or > > `channel_id ? channel_id : monitor_id`. This is under the assumption > > that there is either only one display_channel or more display channels > > each with only a single monitor. Under this assumption the > > aforementioned expressions are equivalent. It is not a reliable way to > > identify monitors though. > > Can we define this to be "channel_id + monitor_id", then use sparse > channel ids? qxl has room for up to 16 monitors in the protocol > messages. channel_id is 8 bit. So we could support up to 16 display > devices with up to 16 outputs each if we enumerate the display channels > 0, 16, 32 instead of 0, 1, 2. While I suppose technically possible, a couple issues: 1. It is AFAICS not backwards compatible anyway (you don't change the protocol itself, but you change the content): channel_id | monitor_id | old display_id | your display_id ---------------------------------------------------------- 0 | 0 | 0 | 0 1 | 0 | 1 | 16 2 | 0 | 2 | 32 ... 2. I don't want to do this, while it's better than simple channel_id + monitor_id, it's still unnecessary to encode the numbers this way, two separate fields are much cleaner. (and with it not saving us compatibility trouble...) (on a side note, I'm still assimilating the information you shared in the other emails and thinking about ways to move forward, that's why I'm slow on the replies...) Thanks, Lukas > cheers, > Gerd > _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel