Lower the frequency of drawing cached map tiles in local submit/tizen/20180611.042654 submit/tizen/20180611.112917
authorSeechan, Kim <cbible.kim@samsung.com>
Mon, 11 Jun 2018 04:09:04 +0000 (13:09 +0900)
committerSeechan, Kim <cbible.kim@samsung.com>
Mon, 11 Jun 2018 04:09:04 +0000 (13:09 +0900)
Change-Id: Iaa348ee526cdff4fd852d39a0b234ae7e4ec34d8

16 files changed:
inc/here_view.h
lib/aarch64/libheremaps-engine.so.1
lib/aarch64/libheremaps-engine.so.1.0.6_37 [deleted file]
lib/aarch64/libheremaps-engine.so.1.0.6_39 [new file with mode: 0755]
lib/armv7l/libheremaps-engine.so.1
lib/armv7l/libheremaps-engine.so.1.0.6_37 [deleted file]
lib/armv7l/libheremaps-engine.so.1.0.6_39 [new file with mode: 0755]
lib/i586/libheremaps-engine.so.1
lib/i586/libheremaps-engine.so.1.0.6_37 [deleted file]
lib/i586/libheremaps-engine.so.1.0.6_39 [new file with mode: 0755]
lib/x86_64/libheremaps-engine.so.1
lib/x86_64/libheremaps-engine.so.1.0.6_37 [deleted file]
lib/x86_64/libheremaps-engine.so.1.0.6_39 [new file with mode: 0755]
maps-plugin-here.changes
packaging/maps-plugin-here.spec
src/here_view.cpp

index 82e6a60deebcc6ffcaa4940df2ef6e81d6bc7227..a8ef5d66aff060c5b62c620f06bd46d3fe891c06 100644 (file)
@@ -77,6 +77,7 @@ private:
        void setMapType(maps_view_h view);
        static void __readyMapCb(maps_view_h view);
        static Eina_Bool __idlerCb(void *data);
+       static Eina_Bool __dirtyTimerCb(void *data);
        static void __renderingCb(void *data);
        static void __pixelGetCb(void *data, Evas_Object *obj);
        static void __processViewObject(maps_view_h view, const maps_view_object_h object,
@@ -100,6 +101,7 @@ private:
        HereViewObjects __visualObjects;
        PendingObjects __pendingObjects;
        Ecore_Idler *__idler;
+       Ecore_Timer *__dirtyTimer;
        bool __redraw;
 
        maps_plugin_map_view_ready_cb __readyCb;
index ee41907eb7e8f5c1f5b8094f3eaf200769d01a62..803ffe0a13e5c5922f7a2ed86eefc2297ab21140 120000 (symlink)
@@ -1 +1 @@
-libheremaps-engine.so.1.0.6_37
\ No newline at end of file
+libheremaps-engine.so.1.0.6_39
\ No newline at end of file
diff --git a/lib/aarch64/libheremaps-engine.so.1.0.6_37 b/lib/aarch64/libheremaps-engine.so.1.0.6_37
deleted file mode 100755 (executable)
index 4f8c9ae..0000000
Binary files a/lib/aarch64/libheremaps-engine.so.1.0.6_37 and /dev/null differ
diff --git a/lib/aarch64/libheremaps-engine.so.1.0.6_39 b/lib/aarch64/libheremaps-engine.so.1.0.6_39
new file mode 100755 (executable)
index 0000000..b2e2993
Binary files /dev/null and b/lib/aarch64/libheremaps-engine.so.1.0.6_39 differ
index ee41907eb7e8f5c1f5b8094f3eaf200769d01a62..803ffe0a13e5c5922f7a2ed86eefc2297ab21140 120000 (symlink)
@@ -1 +1 @@
-libheremaps-engine.so.1.0.6_37
\ No newline at end of file
+libheremaps-engine.so.1.0.6_39
\ No newline at end of file
diff --git a/lib/armv7l/libheremaps-engine.so.1.0.6_37 b/lib/armv7l/libheremaps-engine.so.1.0.6_37
deleted file mode 100755 (executable)
index c3fa1f5..0000000
Binary files a/lib/armv7l/libheremaps-engine.so.1.0.6_37 and /dev/null differ
diff --git a/lib/armv7l/libheremaps-engine.so.1.0.6_39 b/lib/armv7l/libheremaps-engine.so.1.0.6_39
new file mode 100755 (executable)
index 0000000..770309d
Binary files /dev/null and b/lib/armv7l/libheremaps-engine.so.1.0.6_39 differ
index ee41907eb7e8f5c1f5b8094f3eaf200769d01a62..803ffe0a13e5c5922f7a2ed86eefc2297ab21140 120000 (symlink)
@@ -1 +1 @@
-libheremaps-engine.so.1.0.6_37
\ No newline at end of file
+libheremaps-engine.so.1.0.6_39
\ No newline at end of file
diff --git a/lib/i586/libheremaps-engine.so.1.0.6_37 b/lib/i586/libheremaps-engine.so.1.0.6_37
deleted file mode 100755 (executable)
index 9c8d092..0000000
Binary files a/lib/i586/libheremaps-engine.so.1.0.6_37 and /dev/null differ
diff --git a/lib/i586/libheremaps-engine.so.1.0.6_39 b/lib/i586/libheremaps-engine.so.1.0.6_39
new file mode 100755 (executable)
index 0000000..7fa8468
Binary files /dev/null and b/lib/i586/libheremaps-engine.so.1.0.6_39 differ
index ee41907eb7e8f5c1f5b8094f3eaf200769d01a62..803ffe0a13e5c5922f7a2ed86eefc2297ab21140 120000 (symlink)
@@ -1 +1 @@
-libheremaps-engine.so.1.0.6_37
\ No newline at end of file
+libheremaps-engine.so.1.0.6_39
\ No newline at end of file
diff --git a/lib/x86_64/libheremaps-engine.so.1.0.6_37 b/lib/x86_64/libheremaps-engine.so.1.0.6_37
deleted file mode 100755 (executable)
index e776ab6..0000000
Binary files a/lib/x86_64/libheremaps-engine.so.1.0.6_37 and /dev/null differ
diff --git a/lib/x86_64/libheremaps-engine.so.1.0.6_39 b/lib/x86_64/libheremaps-engine.so.1.0.6_39
new file mode 100755 (executable)
index 0000000..20317e4
Binary files /dev/null and b/lib/x86_64/libheremaps-engine.so.1.0.6_39 differ
index 7c8e3cbab263ca4c23df7cfadf345656e5b4d716..1d59f8c95c12cd77dfd00ede1e44367c1238ce0c 100644 (file)
@@ -1,3 +1,8 @@
+[Version]   maps-plugin-here_0.4.0
+[Date]      11 June 2018
+[Title]     Lower the frequency of drawing cached map tiles in local
+[Developer] Seechan Kim <cbible.kim@samsung.com>
+
 [Version]   maps-plugin-here_0.3.34
 [Date]      24 Apr 2018
 [Title]     Rebuild libheremaps-engine.so with libjson-c 4.0
index a0c2344863257a387b2b615467b9d385dc2d033d..42cd3c23015bd7611ea2a8382917d8edb4f6d124 100644 (file)
@@ -1,6 +1,6 @@
 Name:       maps-plugin-here
 Summary:    Tizen HERE Maps Plug-in Library
-Version:    0.3.34
+Version:    0.4.0
 Release:    1
 Group:      Location/Libraries
 License:    Apache-2.0 and HERE
index 423b1f766be0cf7db64e5c7d11c9f1e475353791..7cf4a6425daaf49a1091609edc5e9f86b1a2a0b8 100644 (file)
@@ -46,6 +46,7 @@ HereView::HereView()
        __idler = NULL;
        __redraw = false;
        __readyCb = NULL;
+       __dirtyTimer = NULL;
 }
 
 HereView::~HereView()
@@ -254,10 +255,29 @@ void HereView::__pixelGetCb(void *data, Evas_Object *obj)
 
 void HereView::__renderingCb(void *data)
 {
-       if (!data) return;
-       evas_object_image_pixels_dirty_set((Evas_Object*)data, EINA_TRUE);
+       HereView *hv = NULL;
+       int maps_error = maps_view_get_maps_plugin_view_handle(data, (void**)&hv);
+       if (!hv || hv->__isShutdown || maps_error != MAPS_ERROR_NONE)  return;
+
+       if (!hv->__dirtyTimer)
+               hv->__dirtyTimer = ecore_timer_add(0.001, __dirtyTimerCb, data);
 }
 
+Eina_Bool HereView::__dirtyTimerCb(void *data)
+{
+       HereView *hv = NULL;
+       int maps_error = maps_view_get_maps_plugin_view_handle(data, (void**)&hv);
+       if (!hv || hv->__isShutdown || maps_error != MAPS_ERROR_NONE) {
+               if (hv) hv->__dirtyTimer = NULL;
+               return ECORE_CALLBACK_CANCEL;
+       }
+
+       hv->__dirtyTimer = NULL;
+       evas_object_image_pixels_dirty_set((Evas_Object*)hv->__img, EINA_TRUE);
+       return ECORE_CALLBACK_CANCEL;
+}
+
+
 void HereView::setMapType(maps_view_h view)
 {
        if (!view)
@@ -319,7 +339,7 @@ here_error_e HereView::renderMap(maps_view_h view, const maps_coordinates_h coor
        }
 
        /* callback */
-       GeoTiledMap::UpdateMapSignalFunctor callback = std::tr1::bind(&__renderingCb, __img);
+       GeoTiledMap::UpdateMapSignalFunctor callback = std::tr1::bind(&__renderingCb, view);
        __map->SetUpdateMapSignal(callback);
 
        /* zoom level */