-
Notifications
You must be signed in to change notification settings - Fork 0
Description
A GC is usually short living, but there is neither a necessity nor any enforcement of that. With multi-monitor HiDPI support, long-living GCs might become a problem, since their zoom value is only initialized once and never updated.
In order to support developers in finding long-living GCs, whose zoom value might need to be updated or whose consumers should be reimplemented using rather short-living GCs, adding some validation logic could be beneficial. With multi-monitor HiDPI support, an option could be to reevaluate once in a while (e.g., upon specific operation calls on the GC) whether the GC's Drawable still has the same zoom as currently stored in the GC's GCData.
On a more technical level (since Drawables do not expose their zoom values), it might be possible to have the GC create a new GC for the drawable and compare it's GCData's zoom value with the current one. In any way, this feature should be something that can be enabled (usually in development mode) by something like a flag / VM argument, as it should not be enabled in productibe use. Maybe the enablement can be combined with the one for #88 (i.e., some kind of "strict mode" for GC).
Metadata
Metadata
Assignees
Labels
Type
Projects
Status