Remove unused headers from .h, include needed ones directly in .cpp
Found and suggested by clangd LSP plugin.
There are interesting cases when clangd is wrong about unused headers, as they are actually required for QObject::connect method's meta-magic to determine whether signal/slot pointer arguments are actually QObjects.
See also: kscreen!150 (merged) a.k.a. 38113506382d28f7cb44a8ecd9911817649e6cde @ kscreen