|
8 | 8 |
|
9 | 9 | using namespace NColorManagement;
|
10 | 10 |
|
11 |
| -static uint64_t lastImageID = 0; // FIXME use for deduplication |
12 |
| - |
13 | 11 | CColorManager::CColorManager(SP<CWpColorManagerV1> resource) : m_resource(resource) {
|
14 | 12 | if UNLIKELY (!good())
|
15 | 13 | return;
|
@@ -191,14 +189,13 @@ CColorManager::CColorManager(SP<CWpColorManagerV1> resource) : m_resource(resour
|
191 | 189 | }
|
192 | 190 |
|
193 | 191 | RESOURCE->self = RESOURCE;
|
194 |
| - RESOURCE->settings.id = ++lastImageID; |
195 | 192 | RESOURCE->settings.windowsScRGB = true;
|
196 | 193 | RESOURCE->settings.primariesNamed = NColorManagement::CM_PRIMARIES_SRGB;
|
197 | 194 | RESOURCE->settings.primariesNameSet = true;
|
198 | 195 | RESOURCE->settings.primaries = NColorPrimaries::BT709;
|
199 | 196 | RESOURCE->settings.transferFunction = NColorManagement::CM_TRANSFER_FUNCTION_EXT_LINEAR;
|
200 | 197 | RESOURCE->settings.luminances.reference = 203;
|
201 |
| - RESOURCE->resource()->sendReady(RESOURCE->settings.id); |
| 198 | + RESOURCE->resource()->sendReady(RESOURCE->settings.updateId()); |
202 | 199 | });
|
203 | 200 |
|
204 | 201 | m_resource->setOnDestroy([this](CWpColorManagerV1* r) { PROTO::colorManagement->destroyResource(this); });
|
@@ -239,9 +236,7 @@ CColorManagementOutput::CColorManagementOutput(SP<CWpColorManagementOutputV1> re
|
239 | 236 | RESOURCE->m_resource->sendFailed(WP_IMAGE_DESCRIPTION_V1_CAUSE_NO_OUTPUT, "No output");
|
240 | 237 | else {
|
241 | 238 | RESOURCE->settings = m_monitor->imageDescription;
|
242 |
| - if (RESOURCE->settings.id) |
243 |
| - RESOURCE->settings.id = ++lastImageID; |
244 |
| - RESOURCE->m_resource->sendReady(RESOURCE->settings.id); // FIXME: create correct id |
| 239 | + RESOURCE->m_resource->sendReady(RESOURCE->settings.updateId()); |
245 | 240 | }
|
246 | 241 | });
|
247 | 242 | }
|
@@ -383,10 +378,7 @@ CColorManagementFeedbackSurface::CColorManagementFeedbackSurface(SP<CWpColorMana
|
383 | 378 | m_currentPreferred = RESOURCE;
|
384 | 379 |
|
385 | 380 | m_currentPreferred->settings = g_pCompositor->getPreferredImageDescription();
|
386 |
| - if (!m_currentPreferred->settings.id) |
387 |
| - m_currentPreferred->settings.id = ++lastImageID; |
388 |
| - |
389 |
| - RESOURCE->resource()->sendReady(++lastImageID); // FIXME: create correct id |
| 381 | + RESOURCE->resource()->sendReady(m_currentPreferred->settings.updateId()); |
390 | 382 | });
|
391 | 383 |
|
392 | 384 | m_resource->setGetPreferredParametric([this](CWpColorManagementSurfaceFeedbackV1* r, uint32_t id) {
|
@@ -419,7 +411,7 @@ CColorManagementFeedbackSurface::CColorManagementFeedbackSurface(SP<CWpColorMana
|
419 | 411 | return;
|
420 | 412 | }
|
421 | 413 |
|
422 |
| - RESOURCE->resource()->sendReady(++lastImageID); // FIXME: create correct id |
| 414 | + RESOURCE->resource()->sendReady(m_currentPreferred->settings.updateId()); |
423 | 415 | });
|
424 | 416 | }
|
425 | 417 |
|
@@ -467,8 +459,7 @@ CColorManagementIccCreator::CColorManagementIccCreator(SP<CWpImageDescriptionCre
|
467 | 459 |
|
468 | 460 | RESOURCE->self = RESOURCE;
|
469 | 461 | RESOURCE->settings = settings;
|
470 |
| - settings.id = ++lastImageID; |
471 |
| - RESOURCE->resource()->sendReady(settings.id); // FIXME: create correct id |
| 462 | + RESOURCE->resource()->sendReady(settings.updateId()); |
472 | 463 |
|
473 | 464 | PROTO::colorManagement->destroyResource(this);
|
474 | 465 | });
|
@@ -522,8 +513,7 @@ CColorManagementParametricCreator::CColorManagementParametricCreator(SP<CWpImage
|
522 | 513 |
|
523 | 514 | RESOURCE->self = RESOURCE;
|
524 | 515 | RESOURCE->settings = settings;
|
525 |
| - settings.id = ++lastImageID; |
526 |
| - RESOURCE->resource()->sendReady(settings.id); // FIXME: create correct id |
| 516 | + RESOURCE->resource()->sendReady(settings.updateId()); |
527 | 517 |
|
528 | 518 | PROTO::colorManagement->destroyResource(this);
|
529 | 519 | });
|
|
0 commit comments