Skip to content

Display Settings don't remember enabled/disabled state of displays when restoring configuration #412

@cyrneko

Description

@cyrneko

What Happened?

When setting up a configuration with i.e a laptop dock, it may be desirable to turn off the internal screen which isn't being used once docked. Whilst the display settings remember the position, scaling, resolution and refresh rate of the built-in display, it does not remember the enabled/disabled state once the external display is plugged back in.

It then defaults to the extend behavior, with the layout that was previously defined.

Steps to Reproduce

  1. Connect a 2nd display on a laptop
  2. Configure your layout, then disable the built-in laptop display
  3. Confirm the layout works as expected
  4. Remove the external display (i.e un-dock, remove cable)
  5. The built-in display will re-enable, being the only display
  6. Re-plug the external display
  7. Settings get applied, except enabled state, defaulting to both displays in the "extend" configuration.

Expected Behavior

The Enabled/Disabled state of a display should be remembered across configuration changes.

OS Version

8.x (Circe)

Session Type

Secure Session (Wayland)

Software Version

Latest release (I have run all updates)

Log Output

N/A

Hardware Info

full inxi --full --filter output:

System:
  Kernel: 6.11.0-25-generic arch: x86_64 bits: 64
  Desktop: Pantheon v: N/A Distro: elementary OS 8 circe
Machine:
  Type: Laptop System: LENOVO product: 20HGS0001P v: ThinkPad T470s
    serial: <superuser required>
  Mobo: LENOVO model: 20HGS0001P v: SDK0J40697 WIN
    serial: <superuser required> UEFI: LENOVO v: N1WET76W (1.55 )
    date: 11/05/2024
Battery:
  ID-1: BAT0 charge: 12.5 Wh (79.1%) condition: 15.8/23.5 Wh (67.2%)
  ID-2: BAT1 charge: 7.8 Wh (78.8%) condition: 9.9/26.1 Wh (38.0%)
CPU:
  Info: dual core model: Intel Core i5-7300U bits: 64 type: MT MCP cache:
    L2: 512 KiB
  Speed (MHz): avg: 700 min/max: 400/3500 cores: 1: 400 2: 800 3: 800 4: 800
Graphics:
  Device-1: Intel HD Graphics 620 driver: i915 v: kernel
  Device-2: Bison Integrated Camera driver: uvcvideo type: USB
  Display: wayland server: X.Org v: 23.2.6 with: Xwayland v: 23.2.6
    compositor: gala v: 8.2.1 driver: X: loaded: modesetting
    unloaded: fbdev,vesa dri: iris gpu: i915 resolution: 1920x1200~60Hz
  API: EGL v: 1.5 drivers: iris,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa
    v: 24.2.8-1ubuntu1~24.04.1 renderer: Mesa Intel HD Graphics 620 (KBL GT2)
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio driver: snd_hda_intel
  API: ALSA v: k6.11.0-25-generic status: kernel-api
  Server-1: PipeWire v: 1.0.5 status: active
Network:
  Device-1: Intel Ethernet I219-LM driver: e1000e
  IF: enp0s31f6 state: down mac: <filter>
  Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi
  IF: wlp58s0 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface driver: btusb type: USB
  Report: hciconfig ID: hci0 state: up address: <filter> bt-v: 4.2
Drives:
  Local Storage: total: 238.47 GiB used: 37.89 GiB (15.9%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: MZVLB256HAHQ-000L7
    size: 238.47 GiB
Partition:
  ID-1: / size: 228.72 GiB used: 37.35 GiB (16.3%) fs: ext4 dev: /dev/dm-1
  ID-2: /boot size: 942.8 MiB used: 191 MiB (20.3%) fs: ext4
    dev: /dev/nvme0n1p2
  ID-3: /boot/efi size: 262.6 MiB used: 17.3 MiB (6.6%) fs: vfat
    dev: /dev/nvme0n1p1
Swap:
  ID-1: swap-1 type: partition size: 3.8 GiB used: 343.5 MiB (8.8%)
    dev: /dev/dm-2
Sensors:
  System Temperatures: cpu: 44.0 C pch: 46.0 C mobo: N/A
  Fan Speeds (rpm): fan-1: 0
Info:
  Memory: total: 8 GiB available: 7.64 GiB used: 4.8 GiB (62.9%)
  Processes: 320 Uptime: 4h 1m Shell: fish inxi: 3.3.34

As I described, the setup I have is one in which a laptop is docked to a desktop-like setup with an external display. Other than that there's no specialized hardware.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority: LowOn the radar, but not the most urgent thingStatus: ConfirmedVerified by someone other than the reporter

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions