Bug 267694 - Let plasmoids have an anchor point or store their position and size by a float.
Summary: Let plasmoids have an anchor point or store their position and size by a float.
Status: RESOLVED UNMAINTAINED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR wishlist
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-05 12:04 UTC by Sergio
Modified: 2018-06-11 07:38 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergio 2011-03-05 12:04:47 UTC
Version:           unspecified (using KDE 4.6.1) 
OS:                Linux

When you arrange your plasmoids on the screen, their position is stored as the displacement of their bottom left corner to the bottom left corner of the screen expressed as a number of pixels. The plasmoid size is stored as a number of pixels too.

This is not always what is wanted and in many cases one would like to be able to have the plasmoid position registered by a different displacement.

Usage cases:

1) Tom has a laptop, but when at work he prefers working with a larger external screen. The external screen has a resolution different from the laptop screen.
Whenever he works with the external screen the position of the plasmoids that he had carefully aligned to the right edge of the screen get messed.

Solution 1: let Tom specify the top right corner as the anchor point for the calculator that he wants at the top right edge of his screen, so that the position of the calculator is stored as the displacement between the top right corner of the calculator and the top right corner of the screen. Furthermore, let Tom specify the bottom right corner as the anchor point for the trashcan that he wants at the bottom right corner, so that the position of the trashcan is stored as the displacement between the bottom right corner of the trashcan and the bottom right corner of the screen.  When Tom uses the external monitor, the plasmoids are shown in the correct places.

Solution 2: let plasmoids sizes and positions be stored as floats from 0 to 1. Height is stored as the fraction of vertical screen estate the plasmoid takes, Width as the fraction of horizontal screen estate that the plasmoid takes. Similarly, horizontal position is stored as the plasmoid horizontal displacement normalized (divided) by the screen width and vertical position as the vertical displacement normalized by the screen height. In this case too, when the external monitor is used plasmoids are correctly shown at the intended places.

See also 211469. 
 

Reproducible: Didn't try
Comment 1 Teodor 2011-06-15 01:18:51 UTC
*** Bug 275653 has been marked as a duplicate of this bug. ***
Comment 2 Teodor 2011-06-15 01:27:38 UTC
alsow it would be useful to make all plasmoid coordinates able to become negative quantity - to place them pixel-to pixel as you want in case that plasmoid have frames and you don't need them
Comment 3 Nate Graham 2018-06-08 20:22:29 UTC
Hello!

This feature request was filed for KDE Plasma 4, which reached end-of-support status in August 2015. KDE Plasma 5's desktop shell has been almost completely rewritten for better performance and usability, so it is likely that this feature request is already implemented in Plasma 5, or is no longer applicable.

Accordingly, we hope you understand why we must close this feature request. If the requested feature is still desired but not implemented in KDE Plasma 5.12 or later, please feel free to open a new ticket in the "plasmashell" product after reading https://community.kde.org/Get_Involved/Bug_Reporting

If you would like to get involved in KDE's bug triaging effort so that future mass bug closes like this are less likely, please read https://community.kde.org/Get_Involved#Bug_Triaging

Thanks for your understanding!

Nate Graham
Comment 4 Sergio 2018-06-11 07:38:08 UTC
As a matter of fact, I think that this is unresolved in plasma5 and still valid.