This is typically the set of modes listed in the monitor’s EDID information, but it’s possible to add modes as well (see below).
Grab the list of allowed resolution modes, as presented by xrandr, for the relevant monitor (through libxrandr?).
So the steps are probably something like: This is a journey into the realm of mystery and uncertainty, but it seems like the rationale is to remember previously connected monitors, along with a separate user-selected graphics mode for each. So - the first question is: How does (my very specific) Cinnamon determine which screen resolution is the “correct” one? How cinnamon selects the resolution to use I have another post which solves this in a more aggressive way, and also one with a related discussion regarding an newer OLED display. This is how the computer knows not only the commercial name of the monitor, but also what graphics modes it supports and prefers. This data is fetched through I2C wires that are part of an DVI / HDMI / VGA connector when the monitor is plugged in. Possibly the reason for the problem I tried to solve on this post.įor clarity: EDID is a chunk of data that is typically stored on a small flash memory on the monitor. It seems like there are some race conditions taking place between different utilities that have a say on this matter. The underlying mechanisms seem to change frequently from one version to another, and having them documented is probably too much to ask for. There is more than one automatic mechanism for changing the resolution to “what is correct”, so just changing the resolution with xrandr doesn’t cut. This situation meets the somewhat arrogant “I know what’s best, I never fail” attitude often seen by graphics software. In other words: More often than not, the computer doesn’t know it’s allowed to use the mode I want it to use. To make it even trickier, the graphics mode I need is only listed in the EDID information submitted by one of the monitors. The reason I need this: On the machine mentioned here, I have an two screens connected through an HDMI splitter, so the monitor identification is somewhat shaky, and it’s not clear which piece of info the computer gets each time. But I got close enough for practical purposes, and collected a lot of knowledge while trying. More precisely, make Cinnamon (version 3.2.6) on Linux Mint 18.1 (Serena) show the desktop with a predefined resolution, no matter what happens. Quite simple: Set a fixed graphics mode on the computer screen. This post was written by eli on August 4, 2019