Fractional Scaling prevents monitor layout
Splitting this out of #357, related to gnome-control-center#247 but not quite the same.
I've enabled fractional scaling and set my laptop's 3840x2160 screen to 175% scaling. This works fine with no external monitor attached. Upon attaching an external monitor, I am unable to locate that monitor to the right of the laptop monitor (or below it), getting the message: "Logical monitors not adjecent" in journalctl. At 200% or 150% (or 100%), that layout is possible.
Digging a little more by instrumenting the has_adjecent_neighbour
function, what's happening is that the laptop monitor's LogicalMonitorConfig->layout is being set to a 2192x1233 rectangle, while the external monitor is being placed at an x location of 2191 pixels (or a y location of 1232). at 150% scaling, the laptop's layout is a 2560x1440 rectangle, while the external monitor is placed at an x location of 2560 (or a y location of 1440). doing the math, 3840/1.75 ~= 2194.29, and 2160/1.75 ~= 1234.29. So seems like the laptop scale size pixel selection and the external location pixel selection math aren't matching with each other, or with the naive math (I'd have expected it to pick 2194 or 2195 pixels x 1234 or 1235 pixels, and to pick the same value for laptop's size as for external's offset).