HaikuArchives / ArtPaint

ArtPaint is a painting and image processing program.
https://haikuarchives.github.io/ArtPaint/
29 stars 18 forks source link

Undo of Selection->Invert doesn't work properly #571

Closed dsizzle closed 10 months ago

dsizzle commented 12 months ago

Steps to reproduce:

  1. Make a selection with a hole in the center
  2. Choose Selection->Invert
  3. Choose Undo (ALT + Z)
  4. Choose Selection->Grow a few times

Expected results: sel-grow1

Actual results: sel-grow2

... for some reason the Undo of the Invert selection loses the hole in the center. If you don't Undo, but rather just Invert again, it works fine.

dsizzle commented 10 months ago

ugggh.... this appears to have been broken with #526 - and it appears that holes in selections are not treated properly, which is why they get lost, not just in this case.

For example:

  1. Load Walter image
  2. Select all non-transparent
  3. Ctrl+Alt+T to Translate it, hit Ok
  4. Fill the selection and note that the gaps between the letters got filled, but they shouldn't.
humdingerb commented 10 months ago

Uh oh, a topological embarrassment. Holy moly. Looks like Mr. Moore of #526 wasn't wholly correct...

dsizzle commented 10 months ago

Well, I don't blame him. I should've done moore testing...

humdingerb commented 10 months ago

Nice one! 😃