kdesktop: default positioning of wallpapers ignores aspect ratio #280

Closed
opened 2 years ago by Leskala · 3 comments

Basic information

  • TDE version: R14.0.12
  • APP version: R14.0.12
  • Distribution: Debian Bullseye
  • System: Linux 5.15.32-v7+
  • Hardware: armv7l
  • Compiler: GNU 10.2.1

Description

When changing the wallpaper image directly in KDesktop's configuration dialog the "Position" setting will always revert to "Scaled".
"Scaled" is a poor choice for a default by modern standards since it ignores the image's aspect ratio and squishes any image that doesn't perfectly match the current display's aspect ratio.
"Scale & Crop" should be the default instead, similar to most other desktop environments.

Steps to reproduce

  1. access KDesktop's configuration dialog (e.g. right-click on desktop > "Configure Desktop...")
  2. select "Picture" within the "Background" section
  3. click the folder button on the right side of "Picture" to open the file picker for image selection
  4. select a new image whose aspect ratio doesn't match the display

Expected result

The default positioning method of KDesktop should not tamper with the image's aspect ratio and apply it on the screen in a way that preserves the aspect ratio. Preferably, "Scale & Crop" should be the default option for "Position".

On another note, the user might also expect the "Position" option in the lower part of the configuration dialog not resetting when picking a new image file above. So remembering the previous setting (i.e. not resetting it to the default) might also be a sensible choice. Regardless, I think the default should be changed in any case.

Actual result

KDesktop will reset to the "Scaled" setting for the "Position" option when selecting a new image, regardless of the previous setting. This ignores the aspect ratio of the image and will squish it whenever it doesn't match the current display's aspect ratio.

Screenshots

See attached image for a screenshot of the KDesktop dialog previewing the "Scaled" setting for a 16:9 image applied to a 4:3 display connected to the system. The circle on the background is supposed to be perfectly round.
Compare to the second image where "Scale & Crop" is selected and image aspect ratio getting preserved.

## Basic information - TDE version: R14.0.12 - APP version: R14.0.12 - Distribution: Debian Bullseye - System: Linux 5.15.32-v7+ - Hardware: armv7l - Compiler: GNU 10.2.1 ## Description When changing the wallpaper image directly in KDesktop's configuration dialog the "Position" setting will always revert to "Scaled". "Scaled" is a poor choice for a default by modern standards since it ignores the image's aspect ratio and squishes any image that doesn't perfectly match the current display's aspect ratio. "Scale & Crop" should be the default instead, similar to most other desktop environments. ## Steps to reproduce 1. access KDesktop's configuration dialog (e.g. right-click on desktop > "Configure Desktop...") 2. select "[x] Picture" within the "Background" section 3. click the folder button on the right side of "[x] Picture" to open the file picker for image selection 4. select a new image whose aspect ratio doesn't match the display ### Expected result The default positioning method of KDesktop should not tamper with the image's aspect ratio and apply it on the screen in a way that preserves the aspect ratio. Preferably, "Scale & Crop" should be the default option for "Position". On another note, the user might also expect the "Position" option in the lower part of the configuration dialog *not* resetting when picking a new image file above. So remembering the previous setting (i.e. not resetting it to the default) might also be a sensible choice. Regardless, I think the default should be changed in any case. ### Actual result KDesktop will reset to the "Scaled" setting for the "Position" option when selecting a new image, regardless of the previous setting. This ignores the aspect ratio of the image and will squish it whenever it doesn't match the current display's aspect ratio. ## Screenshots See attached image for a screenshot of the KDesktop dialog previewing the "Scaled" setting for a 16:9 image applied to a 4:3 display connected to the system. The circle on the background is supposed to be perfectly round. Compare to the second image where "Scale & Crop" is selected and image aspect ratio getting preserved.
Poster

This seems to be part of kcontrol actually and is most likely easy to adjust.
Places where the Scaled setting is configured as default seem to be the following:

Those could be replaced with KBackgroundSettings::ScaleAndCrop as per b2ca7fecce/kcontrol/background/bgsettings.cpp (L481)

This seems to be part of kcontrol actually and is most likely easy to adjust. Places where the Scaled setting is configured as default seem to be the following: - https://mirror.git.trinitydesktop.org/gitea/TDE/tdebase/src/commit/b2ca7feccea861a709a278cef8ebfe5b4fdc99e7/kcontrol/background/bgdefaults.h#L32 - https://mirror.git.trinitydesktop.org/gitea/TDE/tdebase/src/commit/b2ca7feccea861a709a278cef8ebfe5b4fdc99e7/kcontrol/background/bgdialog.cpp#L948 - https://mirror.git.trinitydesktop.org/gitea/TDE/tdebase/src/commit/b2ca7feccea861a709a278cef8ebfe5b4fdc99e7/kcontrol/background/bgdialog.cpp#L954 Those could be replaced with `KBackgroundSettings::ScaleAndCrop` as per https://mirror.git.trinitydesktop.org/gitea/TDE/tdebase/src/commit/b2ca7feccea861a709a278cef8ebfe5b4fdc99e7/kcontrol/background/bgsettings.cpp#L481
Owner

PR #285 is a proposed fix.

@Leskala if you build your own packages, please test and let us know. Otherwise you will need to wait till this gets merged and new packages are available.

PR #285 is a proposed fix. @Leskala if you build your own packages, please test and let us know. Otherwise you will need to wait till this gets merged and new packages are available.
MicheleC added this to the R14.0.13 release milestone 2 years ago
Owner

Fixed by PR #285.

Fixed by PR #285.
MicheleC closed this issue 2 years ago
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: TDE/tdebase#280
Loading…
There is no content yet.