Bug 420213 - Hard to move vector objects if they are relatively small
Summary: Hard to move vector objects if they are relatively small
Status: CONFIRMED
Alias: None
Product: krita
Classification: Applications
Component: Tools/Vector (show other bugs)
Version: git master (please specify the git hash!)
Platform: Mint (Ubuntu based) Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-17 18:38 UTC by Tiar
Modified: 2020-04-27 04:25 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Screenshot of small vector object with only handles visible (impossible to move) (232.18 KB, image/png)
2020-04-17 18:38 UTC, Tiar
Details
Screenshot of the same small vector object, showing how big it actually is (218.18 KB, image/png)
2020-04-17 18:39 UTC, Tiar
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tiar 2020-04-17 18:38:42 UTC
Created attachment 127621 [details]
Screenshot of small vector object with only handles visible (impossible to move)

SUMMARY
I'm using Krita appimage with HiDPI scaling on. Most icons are small enough that I don't think they should be even smaller. However the vector shapes handles are too big and created in such a way that makes it very hard to move small objects.

To move the object, user needs to click inside the handles or on the red handle. If the object is small, the handles to resize the object take too much space so it's not possible to move the object.

I wasn't sure if I should mark is as a bug or a wish. It isn't necessarily a "doesn't work" situation, but it is an issue for me and it doesn't ask for a new feature.

STEPS TO REPRODUCE
1. Create a new vector shape. Can be a circle.
2. Zoom out a bit. In my case, it stops being any useful at the point when the circle is a bit bigger than the toolbar icons. More precisely: canvas is 1024x1024, circle 110x110px, "Use same aspects as pixels" is pressed/turned on, and I have trouble already at 67%, it's getting nearly impossible at 50%, and it only contains handles at 33% (and here it is impossible: I was trying to find the correct pixel to click on, but no, it always showed the resize icon, never the hand one). Note that in case of 50% and 67%, moving the same object is possible with the Transform Tool if it's converted to the paint layer or if the vector layer only contains that one object.

OBSERVED RESULT
Very hard to move the vector object, even though it's really not that small.

EXPECTED RESULT
Moving small vector objects is only impossible when they are really, really small.

SOFTWARE/OS VERSIONS
Krita

 Version: 4.2.9
 Languages: pl, pl_PL, pl
 Hidpi: true

Qt

  Version (compiled): 5.12.7
  Version (loaded): 5.12.7

OS Information

  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 5.3.7-050307-generic
  Pretty Productname: Linux Mint 19.3
  Product Type: linuxmint
  Product Version: 19.3
Comment 1 Tiar 2020-04-17 18:39:47 UTC
Created attachment 127622 [details]
Screenshot of the same small vector object, showing how big it actually is
Comment 2 Ahab Greybeard 2020-04-23 11:35:02 UTC
I think the detected 'extent' of the outer handles is such that they cover the red (move) handle.

Is there a z-order for handles? If so then the red handle could be put on top?
(However, then the red handle may cover the outer handles and you wouldn't be able to resize it.)

Maybe the Transform Tool has a finer determination of cursor location to handle location mapping?
Even with the Transform Tool, if you zoom out far enough then you can't get a hand/move icon.

It seems like a logical consequence/limitation and all you can do is zoom in to move it.
Comment 3 Tiar 2020-04-23 13:02:11 UTC
Possible solution: when the shape is relatively small, the outer handles should be drawn out of the shape's extent (possibly even with a margin). For bigger ones, the current behaviour should be kept.
Comment 4 Ahab Greybeard 2020-04-23 13:25:19 UTC
That would work since those are the only white handles showing in this situation and it should be obvious what they are.
Maybe have lines going from each handle to the edge/vertex where they're usually placed in case it's not obvious?
Comment 5 vanyossi 2020-04-27 04:25:35 UTC
Making sure we have a minimum workable handle size/spacing is a good way to fix this issue for smaller than workable shapes.