elm_colorselector: pixel-picker accuracy fix
authorVitalii Vorobiov <vi.vorobiov@samsung.com>
Thu, 25 Jun 2015 14:11:37 +0000 (16:11 +0200)
committerCedric BAIL <cedric@osg.samsung.com>
Thu, 25 Jun 2015 15:24:08 +0000 (17:24 +0200)
Summary:
Looking at the base array of pixels,
the real middle of taken picture
is actually number 8 from array of 17 pixels (which starts from 0).

@fix

Reviewers: reutskiy.v.v, raster, NikaWhite, cedric

Reviewed By: NikaWhite, cedric

Differential Revision: https://phab.enlightenment.org/D2749

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/lib/elm_colorselector.c

index 20915f0..5dc9f17 100644 (file)
@@ -576,9 +576,9 @@ _mouse_up_cb(void *data, int type EINA_UNUSED, void *event EINA_UNUSED)
    ELM_SAFE_FREE(sd->grab.mouse_up, ecore_event_handler_del);
 
    pixels = evas_object_image_data_get(sd->picker_display, EINA_FALSE);
-   r = (pixels[17 * 9 + 9] >> 16) & 0xFF;
-   g = (pixels[17 * 9 + 9] >> 8) & 0xFF;
-   b = pixels[17 * 9 + 9] & 0xFF;
+   r = (pixels[17 * 8 + 8] >> 16) & 0xFF;
+   g = (pixels[17 * 8 + 8] >> 8) & 0xFF;
+   b = pixels[17 * 8 + 8] & 0xFF;
 
    _colors_set(o, r, g, b, 0xFF);
    evas_object_smart_callback_call(o, SIG_CHANGED_USER, NULL);