Leyart / aseprite

Automatically exported from code.google.com/p/aseprite
0 stars 0 forks source link

Undo notifications rendering problems #297

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Execute any two operations, especially where the second one has a longer 
undo message than the first (E.g., Draw with pencil, then flip horizontally)
2. Undo both operations

What is the expected output? What do you see instead?

Undo notification looks like it is being drawn into an uncleared Bitmap/Memory 
Region.  Seems to affect any undo message that is shorter than the previous 
one, and has been done in rapid succession.

The time factor is especially interesting.

(Note that the image is modified, the bottom notification is a real example of 
a corrupted message, the one on top is added for comparison)

Please use labels and text to provide additional information.

Original issue reported on code.google.com by DocHoncho@gmail.com on 27 Nov 2013 at 4:53

Attachments:

GoogleCodeExporter commented 9 years ago
This is a known issue. Anyway it's good to have it here in the tracker.

To fix this problem we need alpha support for ui::Window (compositable 
windows). It means: a flag that says "this window should be painted with a 
special background, that special background is all the widgets overlapped by 
the window", so a double-buffered technique is need in that case.

The main problem: we cannot do this until all widgets use onPaint() event. 
There are widgets that draw directly on ji_screen/Allegro screen when they 
receive a kPaint message, so we cannot draw those widget in the "temporary 
background" yet.

Original comment by davidcapello on 28 Nov 2013 at 4:42

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 6 Jan 2014 at 2:18

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 3 Feb 2014 at 4:06

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 24 Feb 2014 at 11:16

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 24 Feb 2014 at 1:10

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 9 Mar 2014 at 12:39

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 10 Apr 2014 at 1:42

GoogleCodeExporter commented 9 years ago
Fixed. Commits:
https://github.com/aseprite/aseprite/commit/af4e7143608f050ea0d514e5ff5b9d6ac889
d223
https://github.com/aseprite/aseprite/commit/a34d181530a20764d32a5cb46333b082393a
4c48

Original comment by davidcapello on 19 Apr 2014 at 9:52

GoogleCodeExporter commented 9 years ago

Original comment by davidcapello on 17 Jul 2014 at 1:02