某些程序会禁用第二台显示器

某些程序会禁用第二台显示器

由于某种奇怪的原因,每当我打开 Evolution 邮件客户端时,我的第二台显示器就会被禁用。如果我拔下并重新插入,它仍然是空白的。当我运行时,xrandr我看到:

Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 345mm x 194mm
   3840x2160     60.00 +  59.98    59.97  
   3200x1800     59.96    59.94  
   (...)
   360x202       59.51    59.13  
   320x180       59.84    59.32  
DP-1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+  50.00    59.94  
   1680x1050     59.88  
   (...)
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
HDMI-1 disconnected (normal left inverted right x axis y axis)

当我关闭 Evolution 并重新插入第二台显示器时,它可以正常工作。

有趣的是,当 Evolution 关闭并且我运行时xrandr,我的第二台显示器再次被禁用。

如果我运行,也会发生同样的事情screenfetch(两个显示器设置工作正常,但运行时screenfetch第二个显示器将被禁用)

运行后screenfetchxrandr如果我拔下并重新插入显示器,它就能正常工作。

有没有想过从哪里开始调试这个问题以及可能发生了什么?我正在运行 Ubuntu 20.04 焦点 CPU:Intel Core i7-7700HQ @ 8x 2.8GHz GPU:Intel Corporation HD Graphics 630 (rev 04)

编辑:如果我播放视频,我的第二台显示器也会被禁用

答案1

如果是我,我会尝试在所需的显示器分辨率中添加自定义模式,但使用所谓的“减少消隐”。如果它不能解决问题,那么至少您已经排除了一个可能的原因。

首先使用cvt你的系统生成一个模式行:

cvt -r 1920 1080

就我而言,我得到了这个结果:

# 1920x1080 59.93 Hz (CVT 2.07M9-R) hsync: 66.59 kHz; pclk: 138.50 MHz
Modeline "1920x1080R"  138.50  1920 1968 2000 2080  1080 1083 1088 1111 +hsync -vsync

然后使用生成的 modeline(省略“Modeline”关键字)创建一个新的 xrandr 模式,所以在我的情况下它将是:

xrandr --newmode "1920x1080R" 138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync

现在将其应用到您的 DisplayPortDP-1输出:

xrandr --addmode DP-1 1920x1080R

此处有更多详细信息,包括如何使其永久化(如果有帮助):https://wiki.archlinux.org/title/Xrandr

相关内容