You are not logged in.

#1 2022-05-22 11:29:46

sincomil
Member
Registered: 2018-02-13
Posts: 106

Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

RandR version 1.5 options brings an ability to split monitors to "Virtual" monitors.

So my idea is to split my 5120x1440 resolution monitor to 3 virtual monitors:

   1280         2560         1280
|--------|----------------|--------|
|    L   |        C       |    R   | 1440
|--------|----------------|--------|

To achieve this I'm using this commands:

    xrandr --setmonitor VIRTUAL-LEFT 1280/297x1440/340+0+0 none
    xrandr --setmonitor VIRTUAL-CENTER 2560/596x1440/340+1280+0 DisplayPort-1
    xrandr --setmonitor VIRTUAL-RIGHT 1280/297x1440/340+3840+0 none
    xrandr --fb 5120x1440

But nothing changes and even screen not blinking after the last command. But xrandr shows that there are 3 monitors:

xrandr --listactivemonitors
Monitors: 3
 0: VIRTUAL-LEFT 1280/297x1440/340+0+0
 1: VIRTUAL-CENTER 2560/596x1440/340+1280+0  DisplayPort-1
 2: VIRTUAL-RIGHT 1280/297x1440/340+3840+0

Hardware:
Monitor: Samsung Neo G9
Video: Radeon RX6900XT with amdgpu opensource drivers:
Desktop: Plasma X11

0c:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] [1002:73bf] (rev c0)
	Subsystem: Tul Corporation / PowerColor Red Devil AMD Radeon RX 6900 XT [148c:2408]
	Kernel driver in use: amdgpu
	Kernel modules: amdgpu

The question is why it is not working, can anyone confirm that it is possible to split real Monitor into few others?

Last edited by sincomil (2022-05-22 11:44:16)

Offline

#2 2022-05-22 13:50:28

seth
Member
Registered: 2012-09-03
Posts: 51,162

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

why it is not working

How do you measure "working" and what's the output of "xrandr -q" and "qdbus org.kde.KWin /KWin supportInformation" after splitting the monitor?

Offline

#3 2022-05-22 16:25:12

sincomil
Member
Registered: 2018-02-13
Posts: 106

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

I'm expecting at least this:

  • full screen apps placing at area belonging to virtual monitor where original window  was before entering full screen mode

  • window maximizes to the virtual monitor where  window was before

  • virtual monitor "edges" are acting as physical monitor edges

$ xrandr -q
Screen 0: minimum 320 x 200, current 5120 x 1440, maximum 16384 x 16384
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 connected primary 5120x1440+0+0 (normal left inverted right x axis y axis) 1190mm x 340mm
   5120x1440    239.76*+  59.98
   3840x1080     59.97 + 239.97
   2560x1440    239.90    59.95
   1920x1200    239.76
   1920x1080    239.76    60.00    60.00    59.94
   1600x1200    239.76
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1440x900      59.89
   1280x800      59.81
   1152x864      75.00
   1280x720      60.00    59.94
   1024x768      75.03    70.07    60.00
   832x624       74.55
   800x600       72.19    75.00    60.32    56.25
   640x480       75.00    72.81    66.67    60.00    59.94
   720x400       70.08
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
HDMI-A-0 connected (normal left inverted right x axis y axis)
   3840x1080     59.97 +
   3840x2160     60.00    59.94
   5120x1440     59.98
   2560x1440    120.00    59.95
   1920x1080    120.00   119.88    60.00    60.00    50.00    59.94
   1680x1050     59.88
   1600x900      60.00
   1280x1024     75.02    60.02
   1440x900      59.90
   1280x800      59.91
   1152x864      75.00
   1280x720      60.00    50.00    59.94
   1024x768      75.03    70.07    60.00
   832x624       74.55
   800x600       72.19    75.00    60.32    56.25
   720x576       50.00
   720x480       60.00    59.94
   640x480       75.00    72.81    66.67    60.00    59.94
   720x400       70.08
$ qdbus org.kde.KWin /KWin supportInformation
==========================

Version
=======
KWin version: 5.24.5
Qt Version: 5.15.3
Qt compile version: 5.15.3
XCB compile version: 1.14

Operation Mode: X11 only

Build Options
=============
KWIN_BUILD_DECORATIONS: yes
KWIN_BUILD_TABBOX: yes
KWIN_BUILD_ACTIVITIES: yes
HAVE_X11_XCB: yes
HAVE_EPOXY_GLX: yes
HAVE_WAYLAND_EGL: yes

X11
===
Vendor: The X.Org Foundation
Vendor Release: 12101003
Protocol Version/Revision: 11/0
SHAPE: yes; Version: 0x11
RANDR: yes; Version: 0x14
DAMAGE: yes; Version: 0x11
Composite: yes; Version: 0x4
RENDER: yes; Version: 0xb
XFIXES: yes; Version: 0x50
SYNC: yes; Version: 0x31
GLX: yes; Version: 0x0

Decoration
==========
Plugin: org.kde.breeze
Theme:
Plugin recommends border size: None
Blur: 0
onAllDesktopsAvailable: false
alphaChannelSupported: true
closeOnDoubleClickOnMenu: false
decorationButtonsLeft: 0, 9, 2
decorationButtonsRight: 6, 3, 4, 5
borderSize: 3
gridUnit: 10
font: Fira Sans Medium,10,-1,5,57,0,0,0,0,0,Regular
smallSpacing: 2
largeSpacing: 10

Platform
==========
Name: KWin::X11StandalonePlatform

Cursor
======
themeName: breeze_cursors
themeSize: 36

Options
=======
focusPolicy: 0
xwaylandCrashPolicy:
xwaylandMaxCrashCount: 3
nextFocusPrefersMouse: true
clickRaise: true
autoRaise: false
autoRaiseInterval: 0
delayFocusInterval: 0
shadeHover: true
shadeHoverInterval: 250
separateScreenFocus: false
activeMouseScreen: true
placement: 8
focusPolicyIsReasonable: true
borderSnapZone: 10
windowSnapZone: 10
centerSnapZone: 10
snapOnlyWhenOverlapping: true
rollOverDesktops: true
focusStealingPreventionLevel: 0
operationTitlebarDblClick: 5000
operationMaxButtonLeftClick: 5000
operationMaxButtonMiddleClick: 5015
operationMaxButtonRightClick: 5014
commandActiveTitlebar1: 0
commandActiveTitlebar2: 28
commandActiveTitlebar3: 2
commandInactiveTitlebar1: 4
commandInactiveTitlebar2: 28
commandInactiveTitlebar3: 2
commandWindow1: 7
commandWindow2: 8
commandWindow3: 8
commandWindowWheel: 28
commandAll1: 10
commandAll2: 3
commandAll3: 14
keyCmdAllModKey: 16777250
condensedTitle: false
electricBorderMaximize: true
electricBorderTiling: true
electricBorderCornerRatio: 0.25
borderlessMaximizedWindows: false
killPingTimeout: 5000
hideUtilityWindowsForInactive: true
compositingMode: 1
useCompositing: true
hiddenPreviews: 0
glSmoothScale: 2
glStrictBinding: true
glStrictBindingFollowsDriver: true
glPreferBufferSwap: 101
glPlatformInterface: 1
windowsBlockCompositing: false
latencyPolicy:
renderTimeEstimator:

Screen Edges
============
desktopSwitching: false
desktopSwitchingMovingClients: false
cursorPushBackDistance: 1x1
timeThreshold: 150
reActivateThreshold: 350
actionTopLeft: 0
actionTop: 0
actionTopRight: 0
actionRight: 0
actionBottomRight: 0
actionBottom: 0
actionBottomLeft: 0
actionLeft: 0

Screens
=======
Multi-Head: no
Active screen follows mouse:  yes
Number of Screens: 1

Screen 0:
---------
Name: DisplayPort-1
Geometry: 0,0,5120x1440
Scale: 1
Refresh Rate: 239760

Compositing
===========
Compositing is active
Compositing Type: OpenGL
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6900 XT (sienna_cichlid, LLVM 13.0.1, DRM 3.44, 5.17.7-arch1-1)
OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.0.3
OpenGL platform interface: GLX
OpenGL shading language version string: 4.60
Driver: Unknown
GPU class: Unknown
OpenGL version: 4.6
GLSL version: 4.60
Mesa version: 22.0.3
X server version: 1.21.1
Linux kernel version: 5.17.7
Direct rendering: Requires strict binding: yes
GLSL shaders:  yes
Texture NPOT support:  yes
Virtual Machine:  no
OpenGL 2 Shaders are used

Loaded Effects:
---------------
kwin4_effect_maximize
thumbnailaside
zoom
mouseclick
mousemark
kwin4_effect_sessionquit
kwin4_effect_login
kwin4_effect_logout
slidingpopups
kwin4_effect_eyeonscreen
colorpicker
desktopgrid
magiclamp
slide
slideback
screenshot
kwin4_effect_fullscreen
kwin4_effect_scale
kwin4_effect_frozenapp
kwin4_effect_dimscreen
kwin4_effect_morphingpopups
kwin4_effect_fadingpopups
sheet
kwin4_effect_dialogparent
highlightwindow
presentwindows
blur
contrast
screenedge
startupfeedback
kscreen

Currently Active Effects:
-------------------------
blur
contrast

Effect Settings:
----------------
kwin4_effect_maximize:
pluginId: kwin4_effect_maximize
isActiveFullScreenEffect: false

thumbnailaside:
maxWidth: 200
spacing: 10
opacity: 0.5
screen: -1

zoom:
zoomFactor: 1.2
mousePointer: 0
mouseTracking: 0
focusTrackingEnabled: false
textCaretTrackingEnabled: false
focusDelay: 350
moveFactor: 20
targetZoom: 1

mouseclick:
color1: #ff0000
color2: #00ff00
color3: #0000ff
lineWidth: 1
ringLife: 300
ringSize: 20
ringCount: 2
showText: false
font: Open Sans,11,-1,5,50,0,0,0,0,0
enabled: false

mousemark:
width: 5
color: #ff0000

kwin4_effect_sessionquit:
pluginId: kwin4_effect_sessionquit
isActiveFullScreenEffect: false

kwin4_effect_login:
pluginId: kwin4_effect_login
isActiveFullScreenEffect: false

kwin4_effect_logout:
pluginId: kwin4_effect_logout
isActiveFullScreenEffect: false

slidingpopups:
slideInDuration: 150
slideOutDuration: 250

kwin4_effect_eyeonscreen:
pluginId: kwin4_effect_eyeonscreen
isActiveFullScreenEffect: false

colorpicker:

desktopgrid:
zoomDuration: 300
border: 10
desktopNameAlignment: 0
layoutMode: 0
customLayoutRows: 2
usePresentWindows: true

magiclamp:

slide:
duration: 500
horizontalGap: 45
verticalGap: 20
slideDocks: false
slideBackground: true

slideback:

screenshot:

kwin4_effect_fullscreen:
pluginId: kwin4_effect_fullscreen
isActiveFullScreenEffect: false

kwin4_effect_scale:
pluginId: kwin4_effect_scale
isActiveFullScreenEffect: false

kwin4_effect_frozenapp:
pluginId: kwin4_effect_frozenapp
isActiveFullScreenEffect: false

kwin4_effect_dimscreen:
pluginId: kwin4_effect_dimscreen
isActiveFullScreenEffect: false

kwin4_effect_morphingpopups:
pluginId: kwin4_effect_morphingpopups
isActiveFullScreenEffect: false

kwin4_effect_fadingpopups:
pluginId: kwin4_effect_fadingpopups
isActiveFullScreenEffect: false

sheet:
duration: 300

kwin4_effect_dialogparent:
pluginId: kwin4_effect_dialogparent
isActiveFullScreenEffect: false

highlightwindow:

presentwindows:
layoutMode: 0
showCaptions: true
showIcons: true
doNotCloseWindows: false
ignoreMinimized: false
accuracy: 20
fillGaps: true
fadeDuration: 150
showPanel: true
leftButtonWindow: 1
rightButtonWindow: 2
middleButtonWindow: 0
leftButtonDesktop: 2
middleButtonDesktop: 0
rightButtonDesktop: 0

blur:

contrast:

screenedge:

startupfeedback:
type: 1

kscreen:


Loaded Plugins:
---------------
kwin5_plugin_krunner
kwin5_plugin_nightcolor

Available Plugins:
------------------
kwin5_plugin_colord
kwin5_plugin_krunner
kwin5_plugin_nightcolor

Last edited by sincomil (2022-05-22 19:50:29)

Offline

#4 2022-05-22 16:39:00

progandy
Member
Registered: 2012-05-17
Posts: 5,192

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

You could try to create the center monitor that is assigned to DisplayPort-1 before the other two. kde seems to ignore xrandr 1.5 monitors, so you are probably out of luck, though.

Maybe the tiling options with this can cover most of your needs: (Win-z, Win-v, Win-Shift-s) https://github.com/darkstego/Mudeer

Last edited by progandy (2022-05-22 16:46:32)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#5 2022-05-23 18:22:28

sincomil
Member
Registered: 2018-02-13
Posts: 106

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

progandy wrote:

You could try to create the center monitor that is assigned to DisplayPort-1 before the other two. kde seems to ignore xrandr 1.5 monitors, so you are probably out of luck, though.


You are absolutely right. It is KDE issue. Found that OBS studio is capable to recognize xrandr virtual monitors. Here is a proof:
2022-05-23-21-10.png

Last edited by sincomil (2022-05-23 18:43:16)

Offline

#6 2022-05-25 06:59:38

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

sincomil wrote:

You are absolutely right. It is KDE issue. Found that OBS studio is capable to recognize xrandr virtual monitors. Here is a proof:
https://i.ibb.co/Q8b4h9k/2022-05-23-21-10.png

KDE is kinda... bad with multimonitor. A tiling WM may help (on X you can use the tiling WM with KDE, but not on wayland).


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#7 2023-02-08 12:04:04

micw
Member
Registered: 2023-01-21
Posts: 2

Re: Splitting Super UltraWide Monitor (32:9) to 3 Virtual Monitors

Hello,

the problem is that many x11 clients handle "monitors" and "displays" as the same thing but from x11 side both differs. What you actually want is to have multiple monitors per display (which is impossible due to an x11 bug) plus the client software to use monitors, not displays.

For more details, have a look at https://gitlab.gnome.org/GNOME/gtk/-/is … te_1564528

Unfortunately, my attempts to get the patch into xorg-server are completely ignored (due to the fact that almost nobody is developing xorg-server), so I cannot make progress in getting the client side fixed :-(

Offline

Board footer

Powered by FluxBB