Remove pointless QPointer and QWeakPointer from public api
QPointer is not cheap if it's constructed a lot, exposing QPointer in public API is a red flag in general.
In addition to that, the associated client object cannot be just yanked, Decoration::client() always returns a non null value, so QWeakPointer adds no real value. The code that uses Decoration::client() calls QWeakPointer::toStrongRef() and performs no null checks.