void UnitsAttached::screenChanged(QScreen *screen) { if (screen != m_screen) { QScreen *oldScreen = m_screen; m_screen = screen; if (oldScreen) oldScreen->disconnect(this); if (oldScreen == nullptr || screen == nullptr || screen->physicalDotsPerInch() != oldScreen->physicalDotsPerInch() || screen->logicalDotsPerInch() != oldScreen->logicalDotsPerInch() || screen->devicePixelRatio() != oldScreen->devicePixelRatio()) { updateDPI(); emit dpChanged(); } } }