From kde-commits Fri May 08 20:40:05 2015 From: Kai-Uwe Behrmann Date: Fri, 08 May 2015 20:40:05 +0000 To: kde-commits Subject: [kolor-manager/kded-ku] kolor-server: fix for regions without profile Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=143111761915084 Git commit 93f273f97cbc6a7936dc452567276ca18a5c87a7 by Kai-Uwe Behrmann. Committed on 11/03/2013 at 19:14. Pushed by behrmann into branch 'kded-ku'. fix for regions without profile M +8 -2 kolor-server/screen.cpp M +6 -0 kolor-server/window.cpp http://commits.kde.org/kolor-manager/93f273f97cbc6a7936dc452567276ca18a5c87= a7 diff --git a/kolor-server/screen.cpp b/kolor-server/screen.cpp index c6ac80a..40fec23 100644 --- a/kolor-server/screen.cpp +++ b/kolor-server/screen.cpp @@ -311,16 +311,22 @@ void Screen::updateWindowRegions(uint windowId) = w->updateRegions(m_outputs); = + kDebug() << "Windows to update: " << m_windows.size(); + // Recreate region clut list m_regionCluts.clear(); for (int i =3D 0; i < m_windows.size(); ++i) { for (int i_region =3D 0; i_region < m_windows[i]->regionCount(); += +i_region) { RegionalClut rclut; rclut.region =3D m_windows[i]->region(i_region); - rclut.windowId =3D windowId; + rclut.windowId =3D m_windows[i]->id(); for (int i_output =3D 0; i_output < m_outputs.size(); ++i_outp= ut) { rclut.outputIndex =3D i_output; - rclut.clut =3D m_windows[i]->regionColorContext(i_region, = i_output)->colorLookupTable(); + ColorContext * cc =3D m_windows[i]->regionColorContext(i_= region, i_output); + if (cc) + rclut.clut =3D cc->colorLookupTable(); + else + buildDummyClut(rclut.clut); m_regionCluts.insert((uint) m_windows[i]->id(), rclut); = kDebug() << "Regional clut:" << "windowId:" << rclut.windo= wId << diff --git a/kolor-server/window.cpp b/kolor-server/window.cpp index 4325273..d5fff2b 100644 --- a/kolor-server/window.cpp +++ b/kolor-server/window.cpp @@ -149,6 +149,12 @@ void Window::updateRegions(const QList &= outputs) = region.contexts.append(cc); } + } else { + for (int i_output =3D 0; i_output < outputs.size(); ++i_output= ) { + ColorContext *cc =3D new ColorContext; + cc->setupForRegion(outputs[i_output]->name()); + region.contexts.append(cc); + } } = m_regions.append(region);