mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-08-16 22:15:01 +03:00
Rename Drawable::createInstance() to clone() and update drawable implementations, typed helpers, consumers, tests, tools, and external modules. Avoid retaining private icon clones for immediate single-threaded rendering in the code editor and ecode plugins. Borrow cached per-size icon sources instead, restoring temporary color changes after drawing, while preserving owned clones for widgets, menus, models, and other stateful consumers. Reduce common drawable allocation overhead by lazily creating DrawableResource callback state, using inline callback storage and notification snapshots, and safely supporting callback disconnection during notification. Lazily allocate UIImage and UINodeDrawable asynchronous lifetime tokens only when an uncached asynchronous load is actually scheduled. Document the distinction between borrowed immediate rendering and independently owned drawable state.