1

I have a PC with two monitors, running X11. I'm using `xpra` in shadow mode to export the session. Here's how I launch the server:
xpra shadow :0  --bind-tcp=0.0.0.0:14600,auth=file,filename=$HOME/.xpra/password.txt --html=on --daemon=no

From the server logs, xpra detects my dual-monitor setup correctly:

2025-03-20 12:49:26,378  on display 'X11 display :0' of size 3840x1080
2025-03-20 12:49:26,378  with 2 monitors:
2025-03-20 12:49:26,378   HDMI-1           1920x1080 at    0,0   
2025-03-20 12:49:26,378   HDMI-2           1920x1080 at 1920,0   

On the client side, I run:

xpra attach tcp://max:*******@localhost:14600 --opengl=no --desktop-fullscreen=no

client log also report dual-monitor setup on server:

2025-03-20 12:44:49,426 Xpra GTK3 X11 client version 6.2.5-r0
2025-03-20 12:44:49,465  running on Linux Ubuntu 24.10 oracular
2025-03-20 12:44:49,465  cpython 3.12
2025-03-20 12:44:49,466  window manager is 'Xfwm4'
2025-03-20 12:44:49,854 GStreamer version 1.24.8
2025-03-20 12:44:49,894 created unix domain sockets:
2025-03-20 12:44:49,894  '/run/user/1000/xpra/clients/jarvis-27499'
2025-03-20 12:44:50,361 Using existing mmap file '/run/user/1000/xpra/xpra.p4k1739z.mmap': 512MB
2025-03-20 12:44:50,545  keyboard settings: rules=evdev, model=pc105, layout=us
2025-03-20 12:44:50,761  desktop size is 3840x2160:
2025-03-20 12:44:50,761   :0.0 (702x392 mm - DPI: 139x140) workarea: 3840x2127 at    0x33  
2025-03-20 12:44:50,761     SAM HDMI-0       (697x392 mm - DPI: 140x140)
2025-03-20 12:44:51,092 enabled remote logging
2025-03-20 12:44:51,092 Xpra X11 shadow server version 6.2
2025-03-20 12:44:51,093  remote desktop size is 3840x1080
2025-03-20 12:44:51,093   :0.0 (1016x285 mm - DPI: 96x96) workarea: 3840x1059 at    0x21  
2025-03-20 12:44:51,093     BNQ HDMI-1       1920x1080 at    0x0    (531x299 mm - DPI: 92x92) workarea: 1920x1059 at    0x21
2025-03-20 12:44:51,093     BNQ HDMI-2       1920x1080 at 1920x0    (531x298 mm - DPI: 92x92) workarea: 1920x1080 at 1920x0
2025-03-20 12:44:51,188 Attached to xpra server at tcp://max@localhost:14600/

when the client connect to server, the tatter log:

2025-03-20 12:56:25,565 New tcp connection received
2025-03-20 12:56:25,565  from '127.0.0.1:41694'
2025-03-20 12:56:25,566  on '0.0.0.0:14600'
2025-03-20 12:56:25,574 Authentication required by password file authenticator module
2025-03-20 12:56:25,574  sending challenge using 'hmac+sha512' digest over tcp connection
2025-03-20 12:56:26,101 Handshake complete; enabling connection
2025-03-20 12:56:26,111 Python/GTK3 Linux Ubuntu 24.10 oracular X11 client version 6.2
2025-03-20 12:56:26,111  connected as 'max'
2025-03-20 12:56:26,111  OpenGL is disabled
2025-03-20 12:56:26,116 shadow server: setting default keymap translation
2025-03-20 12:56:26,136  client root window size is 3840x2160
2025-03-20 12:56:26,927  automatic picture encoding enabled, also available:
2025-03-20 12:56:26,927   h264, vp9, vp8, png, png/P, png/L, webp, avif, rgb24, rgb32, jpeg, jpega, av1, scroll
2025-03-20 12:56:26,957 found GPU accelerated encoders for: h264
2025-03-20 12:56:26,957 switching to 'stream' encoding for 'desktop' window 1
2025-03-20 12:56:26,957 using 'gstreamer' stream mode
2025-03-20 12:56:26,961 found GPU accelerated encoders for: h264
2025-03-20 12:56:26,962 switching to 'stream' encoding for 'desktop' window 2
2025-03-20 12:56:26,962 using 'gstreamer' stream mode
2025-03-20 12:56:27,002 client   1 @02.466 Xpra X11 shadow server version 6.2
2025-03-20 12:56:27,024 client   1 @02.466  remote desktop size is 3840x1080
2025-03-20 12:56:27,025 client   1 @02.466   :0.0 (1016x285 mm - DPI: 96x96) workarea: 3840x1059 at    0x21  
2025-03-20 12:56:27,025 client   1 @02.466     BNQ HDMI-1       1920x1080 at    0x0    (531x299 mm - DPI: 92x92) workarea: 1920x1059 at    0x21
2025-03-20 12:56:27,025 client   1 @02.466     BNQ HDMI-2       1920x1080 at 1920x0    (531x298 mm - DPI: 92x92) workarea: 1920x1080 at 1920x0
2025-03-20 12:56:27,105 client   1 @02.562 Attached to xpra server at tcp://max@localhost:14600/
2025-03-20 12:56:27,105 client   1 @02.562  (press Control-C to detach)
2025-03-20 12:56:27,475 shadow server: setting default keymap translation
2025-03-20 12:56:27,530 using monitor of default sink: USB Audio Device
/usr/lib/python3/dist-packages/xpra/server/shadow/gtk_shadow_server_base.py:341: DeprecationWarning: Gdk.Window.get_pointer is deprecated
  return self.root.get_pointer()[-3:-1]
2025-03-20 12:56:28,165 audio capture using 'opus' audio codec
2025-03-20 12:56:28,994 client   1 @04.441 running, 2 windows
2025-03-20 12:56:29,071 client   1 @04.532 Warning: image bigger than expected
2025-03-20 12:56:29,071 client   1 @04.533  3840x1080 instead of 1920x1080
2025-03-20 12:56:29,203 client   1 @04.625 Warning: image bigger than expected

What happens

  • Xpra opens two windows, one for HDMI-1 and one for HDMI-2.
  • Both windows display the exact same content, instead of each showing its portion of the desktop.
  • Only one of the two windows is interactive (receives input events).

From the logs

Warning: image bigger than expected
  3840x1080 instead of 1920x1080

This warning repeats frequently.
It seems like xpra is sending the entire 3840x1080 desktop to both windows.


What I'm trying to achieve:

  • Each client window should show only the corresponding screen, e.g. HDMI-1 shows the one screen, HDMI-2 the other.
  • Both windows should be responsive to events as if they were independent displays.

What I've tried:

  • Read the xpra documentation regarding shadow servers and multi-monitor setups.
  • Tested with different --desktop-scaling and --opengl options.

Question:

How can I make xpra split the view correctly between the two windows, and make both windows interactive, with input routed to the correct area?


Environment:

  • Xpra version 6.2.5-r0 on both client and server
  • Server: Xubuntu 24.04, X11, Xfwm4 window manager, dual monitors (HDMI-1, HDMI-2)
  • Client: Xubuntu 24.10, Xfwm4 window manager

0

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.