Opened 4 years ago

Closed 4 years ago

Last modified 3 years ago

#221 closed bug (fixed)

Date.mcp

Reported by: Mikhail Malyshev Owned by: Thore Böckelmann
Priority: normal Milestone: 4.0-2015R2
Component: foreign class Version: 4.0-nightly build
Severity: minor Keywords:
Cc: OS Platform: AmigaOS3
Blocked By: Blocking:
Release Notes:

Catch recursive invokations of the MUIM_Draw method. This causes garbled display of objects with active double buffering.

Description

Summary

MUI Prefs, select any nearby mcp, then select DATE.
Date prefs open, but for some reason you can see through the sliders
artefacts of the previous page and the sliders are not actually drawn properly. If you resize the window, everything gets redrawn correctly.

Works ok in MUI39(2005)

Attachments (1)

MCC_Date_lib.lha (9.5 KB) - added by Mikhail Malyshev 4 years ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 4 years ago by Thore Böckelmann

The archive http://aminet.net/dev/mui/MCC_Date.lha on Aminet does not contain any binaries. Without binaries I cannot do anything.

In general it is a good idea to provide the binaries if you are complaining about bugs. This is a very good example of how difficult it is to reproduce anything if the only public source does not contain the required stuff.

Changed 4 years ago by Mikhail Malyshev

Attachment: MCC_Date_lib.lha added

comment:2 Changed 4 years ago by Thore Böckelmann

Component: undefinedforeign class
Milestone: 4.0-2015R2
Owner: set to Thore Böckelmann
Priority: undecidednormal
Status: newassigned

After some investigation I found out that Date.mcp is somehow causing the recursive invokation of the MUIM_Draw method. This didn't cause any harm with MUI 3.9 which had no double buffering implemented for its Slider.mui class. However, with MUI4 double buffering is active (to avoid unnecessary flickering of the slider's knob and background) and within the recursive invokation of MUIM_Draw all the drawing actions happen at the wrong position and hence get clipped away and the result is the garbled display.

comment:3 Changed 4 years ago by Thore Böckelmann

Resolution: fixed
Status: assignedclosed

In 4788:

  • mastermisc.c: catch recursive invokations of the MUIM_Draw method. This causes garbled display of objects with active double buffering. This closes #221.

comment:4 Changed 4 years ago by Thore Böckelmann

Release Notes: modified (diff)

comment:5 Changed 3 years ago by Thore Böckelmann

In 5196:

  • mastermisc.c: recursive invokations of MUIM_Draw are forbidden for objects with active doublebuffering. This fixes certain redraw problems of TextEditor.mcc while keeping Date.mcp working. This refs #221.
Note: See TracTickets for help on using tickets.