kcm: fix more papercuts with screen mirroring

Commit 1 is just a refactor / bugfix for edge cases

Commit 2 prevents the user from mirroring a disabled screen, which would get the KCM all confused and buggy

Commit 3 makes changing the scale on replication sources work properly, without any weird warnings about gaps or overlaps between outputs

Merge request reports

Loading