Merge branch 'devel/master' into tizen accepted/tizen/unified/20210914.085326 submit/tizen/20210913.074517 submit/tizen/20210914.032200
authorjoogab.yun <joogab.yun@samsung.com>
Mon, 13 Sep 2021 06:01:33 +0000 (15:01 +0900)
committerjoogab.yun <joogab.yun@samsung.com>
Mon, 13 Sep 2021 06:01:33 +0000 (15:01 +0900)
Change-Id: Ie4c82d463076e97a1700498e8f52a68f94db11a0

22 files changed:
automated-tests/src/dali-adaptor-internal/utc-Dali-ImageOperations.cpp
automated-tests/src/dali-adaptor/utc-Dali-Window.cpp
dali/devel-api/adaptor-framework/window-devel.cpp
dali/devel-api/adaptor-framework/window-devel.h
dali/internal/window-system/android/window-base-android.cpp
dali/internal/window-system/android/window-base-android.h
dali/internal/window-system/common/gl-window-impl.cpp
dali/internal/window-system/common/window-base.h
dali/internal/window-system/common/window-impl.cpp
dali/internal/window-system/common/window-impl.h
dali/internal/window-system/macos/window-base-mac.h
dali/internal/window-system/macos/window-base-mac.mm
dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp
dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.h
dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp
dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.h
dali/internal/window-system/ubuntu-x11/window-base-ecore-x.cpp
dali/internal/window-system/ubuntu-x11/window-base-ecore-x.h
dali/internal/window-system/windows/window-base-win.cpp
dali/internal/window-system/windows/window-base-win.h
dali/public-api/dali-adaptor-version.cpp
packaging/dali-adaptor.spec

index bc48efe..17b7c06 100644 (file)
@@ -108,7 +108,7 @@ inline uint32_t HashPixels(const uint32_t* const pixels, unsigned int numPixels)
 void SetupScanlineForHalvingTestsRGBA8888(size_t scanlineLength, Dali::Vector<uint32_t>& scanline, Dali::Vector<uint32_t>& reference)
 {
   scanline.Resize(scanlineLength);
-  reference.Reserve(scanlineLength / 2 + 32);
+  reference.Resize(scanlineLength / 2 + 32);
 
   // Prepare some random pixels:
   srand(19 * 23 * 47 * 53);
@@ -129,10 +129,10 @@ void SetupScanlineForHalvingTestsRGBA8888(size_t scanlineLength, Dali::Vector<ui
     scanline[i * 2 + 1] = PixelRGBA8888(red2, green2, blue2, alpha2);
 
     // Average the two pixels manually as a reference:
-    reference.PushBack(PixelRGBA8888((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u, (alpha1 + alpha2) >> 1u));
+    reference[i] = (PixelRGBA8888((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u, (alpha1 + alpha2) >> 1u));
   }
 
-  for(size_t i = scanlineLength / 2; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength / 2; i < reference.Count(); ++i)
   {
     reference[i] = 0xEEEEEEEE;
   }
@@ -144,7 +144,7 @@ void SetupScanlineForHalvingTestsRGBA8888(size_t scanlineLength, Dali::Vector<ui
 void SetupScanlineForHalvingTestsRGB565(size_t scanlineLength, Dali::Vector<uint16_t>& scanline, Dali::Vector<uint16_t>& reference)
 {
   scanline.Resize(scanlineLength);
-  reference.Reserve(scanlineLength / 2 + 32);
+  reference.Resize(scanlineLength / 2 + 32);
 
   // Prepare some random pixels:
   srand48(19 * 23 * 47 * 53);
@@ -163,10 +163,10 @@ void SetupScanlineForHalvingTestsRGB565(size_t scanlineLength, Dali::Vector<uint
     scanline[i * 2 + 1] = PixelRGB565(red2, green2, blue2);
 
     // Average the two pixels manually as a reference:
-    reference.PushBack(PixelRGB565((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u));
+    reference[i] = (PixelRGB565((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u));
   }
 
-  for(size_t i = scanlineLength / 2; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength / 2; i < reference.Count(); ++i)
   {
     reference[i] = 0xEEEE;
   }
@@ -178,7 +178,7 @@ void SetupScanlineForHalvingTestsRGB565(size_t scanlineLength, Dali::Vector<uint
 void SetupScanlineForHalvingTests2Bytes(size_t scanlineLength, Dali::Vector<uint8_t>& scanline, Dali::Vector<uint8_t>& reference)
 {
   scanline.Resize(scanlineLength * 2);
-  reference.Reserve(scanlineLength + 32);
+  reference.Resize(scanlineLength + 32);
 
   // Prepare some random pixels:
   srand48(19 * 23 * 47 * 53 * 59);
@@ -197,11 +197,11 @@ void SetupScanlineForHalvingTests2Bytes(size_t scanlineLength, Dali::Vector<uint
     scanline[i * 4 + 3] = c22;
 
     // Average the two pixels manually as a reference:
-    reference.PushBack((c11 + c21) >> 1u);
-    reference.PushBack((c12 + c22) >> 1u);
+    reference[i * 2]     = ((c11 + c21) >> 1u);
+    reference[i * 2 + 1] = ((c12 + c22) >> 1u);
   }
 
-  for(size_t i = scanlineLength; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength; i < reference.Count(); ++i)
   {
     reference[i] = 0xEE;
   }
@@ -212,8 +212,8 @@ void SetupScanlineForHalvingTests2Bytes(size_t scanlineLength, Dali::Vector<uint
  */
 void SetupScanlineForHalvingTests1Byte(size_t scanlineLength, Dali::Vector<uint8_t>& scanline, Dali::Vector<uint8_t>& reference)
 {
-  scanline.Resize(scanlineLength * 2);
-  reference.Reserve(scanlineLength + 32);
+  scanline.Resize(scanlineLength);
+  reference.Resize(scanlineLength / 2 + 32);
 
   // Prepare some random pixels:
   srand48(19 * 23 * 47 * 53 * 63);
@@ -228,10 +228,10 @@ void SetupScanlineForHalvingTests1Byte(size_t scanlineLength, Dali::Vector<uint8
     scanline[i * 2 + 1] = c2;
 
     // Average the two pixels manually as a reference:
-    reference.PushBack((c1 + c2) >> 1u);
+    reference[i] = ((c1 + c2) >> 1u);
   }
 
-  for(size_t i = scanlineLength; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength / 2; i < reference.Count(); ++i)
   {
     reference[i] = 0xEE;
   }
@@ -244,12 +244,12 @@ void SetupScanlineForHalvingTests1Byte(size_t scanlineLength, Dali::Vector<uint8
  */
 void SetupScanlinesRGBA8888(size_t scanlineLength, Dali::Vector<uint32_t>& scanline1, Dali::Vector<uint32_t>& scanline2, Dali::Vector<uint32_t>& reference, Dali::Vector<uint32_t>& output)
 {
-  scanline1.Reserve(scanlineLength);
-  scanline2.Reserve(scanlineLength);
-  reference.Reserve(scanlineLength + 32);
-  output.Reserve(scanlineLength + 32);
+  scanline1.Resize(scanlineLength);
+  scanline2.Resize(scanlineLength);
+  reference.Resize(scanlineLength + 32);
+  output.Resize(scanlineLength + 32);
 
-  for(size_t i = scanlineLength; i < output.Capacity(); ++i)
+  for(size_t i = scanlineLength; i < output.Count(); ++i)
   {
     output[i]    = 0xDEADBEEF;
     reference[i] = 0xDEADBEEF;
@@ -270,11 +270,11 @@ void SetupScanlinesRGBA8888(size_t scanlineLength, Dali::Vector<uint32_t>& scanl
     const uint32_t alpha2 = RandomComponent8();
 
     // The average of these pixels should equal the reference:
-    scanline1.PushBack(PixelRGBA8888(red1, green1, blue1, alpha1));
-    scanline2.PushBack(PixelRGBA8888(red2, green2, blue2, alpha2));
+    scanline1[i] = (PixelRGBA8888(red1, green1, blue1, alpha1));
+    scanline2[i] = (PixelRGBA8888(red2, green2, blue2, alpha2));
 
     // Average the two pixels manually as a reference:
-    reference.PushBack(PixelRGBA8888((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u, (alpha1 + alpha2) >> 1u));
+    reference[i] = (PixelRGBA8888((red1 + red2) >> 1u, (green1 + green2) >> 1u, (blue1 + blue2) >> 1u, (alpha1 + alpha2) >> 1u));
   }
 }
 
@@ -284,7 +284,7 @@ void SetupScanlinesRGBA8888(size_t scanlineLength, Dali::Vector<uint32_t>& scanl
 void MatchScanlinesRGBA8888(Dali::Vector<uint32_t>& reference, Dali::Vector<uint32_t>& output, size_t& numMatches, const char* const location)
 {
   numMatches = 0;
-  for(size_t i = 0, length = reference.Capacity(); i < length; ++i)
+  for(size_t i = 0, length = reference.Count(); i < length; ++i)
   {
     DALI_TEST_EQUALS(output[i], reference[i], location);
     numMatches += output[i] == reference[i];
@@ -851,7 +851,7 @@ int UtcDaliImageOperationsHalveScanlineInPlaceRGBA8888(void)
 
   // Check that the halving matches the independently calculated reference:
   size_t numMatches = 0;
-  for(int i = 0, length = reference.Size(); i < length; ++i)
+  for(int i = 0, length = scanlineLength / 2; i < length; ++i)
   {
     DALI_TEST_EQUALS(scanline[i], reference[i], TEST_LOCATION);
     numMatches += scanline[i] == reference[i];
@@ -859,7 +859,7 @@ int UtcDaliImageOperationsHalveScanlineInPlaceRGBA8888(void)
   DALI_TEST_EQUALS(numMatches, scanlineLength / 2, TEST_LOCATION);
 
   // Test for no beyond-bounds writes:
-  for(size_t i = scanlineLength / 2; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength / 2; i < reference.Count(); ++i)
   {
     DALI_TEST_EQUALS(reference[i], (uint32_t)0xEEEEEEEE, TEST_LOCATION);
   }
@@ -881,7 +881,7 @@ int UtcDaliImageOperationsHalveScanlineInPlaceRGB565(void)
 
   // Check output against reference:
   size_t numMatches = 0;
-  for(int i = 0, length = reference.Size(); i < length; ++i)
+  for(int i = 0, length = scanlineLength / 2; i < length; ++i)
   {
     DALI_TEST_EQUALS(scanline[i], reference[i], TEST_LOCATION);
     numMatches += scanline[i] == reference[i];
@@ -889,7 +889,7 @@ int UtcDaliImageOperationsHalveScanlineInPlaceRGB565(void)
   DALI_TEST_EQUALS(numMatches, scanlineLength / 2, TEST_LOCATION);
 
   // Test for no beyond-bounds writes:
-  for(size_t i = scanlineLength / 2; i < reference.Capacity(); ++i)
+  for(size_t i = scanlineLength / 2; i < reference.Count(); ++i)
   {
     DALI_TEST_EQUALS(reference[i], (uint16_t)0xEEEE, TEST_LOCATION);
   }
@@ -911,7 +911,7 @@ int UtcDaliImageOperationsHalveScanlineInPlace2Bytes(void)
 
   // Test the output against the reference (no differences):
   size_t numMatches = 0;
-  for(int i = 0, length = reference.Size(); i < length; ++i)
+  for(int i = 0, length = scanlineLength; i < length; ++i)
   {
     DALI_TEST_EQUALS(1u * scanline[i], 1u * reference[i], TEST_LOCATION);
     numMatches += scanline[i] == reference[i];
@@ -936,11 +936,12 @@ int UtcDaliImageOperationsHalveScanlineInPlace1Byte(void)
 
   // Test the reference matches the output:
   size_t numMatches = 0;
-  for(int i = 0, length = reference.Size(); i < length; ++i)
+  for(int i = 0, length = scanlineLength / 2; i < length; ++i)
   {
     DALI_TEST_EQUALS(1u * scanline[i], 1u * reference[i], TEST_LOCATION);
     numMatches += scanline[i] == reference[i];
   }
+  // Only half will be matched
   DALI_TEST_EQUALS(numMatches, scanlineLength / 2, TEST_LOCATION);
 
   END_TEST;
@@ -975,7 +976,7 @@ int UtcDaliImageOperationsAverageScanlines1(void)
   // Check the output matches the independently generated reference:
   size_t numMatches = 0;
   MatchScanlinesRGBA8888(reference, output, numMatches, TEST_LOCATION);
-  DALI_TEST_EQUALS(numMatches, reference.Capacity(), TEST_LOCATION);
+  DALI_TEST_EQUALS(numMatches, reference.Count(), TEST_LOCATION);
 
   END_TEST;
 }
@@ -1010,7 +1011,7 @@ int UtcDaliImageOperationsAverageScanlines2(void)
   // Check the output matches the independently generated reference:
   size_t numMatches = 0;
   MatchScanlinesRGBA8888(reference, output, numMatches, TEST_LOCATION);
-  DALI_TEST_EQUALS(numMatches, reference.Capacity(), TEST_LOCATION);
+  DALI_TEST_EQUALS(numMatches, reference.Count(), TEST_LOCATION);
 
   END_TEST;
 }
@@ -1044,7 +1045,7 @@ int UtcDaliImageOperationsAverageScanlines3(void)
   // Check the output matches the independently generated reference:
   size_t numMatches = 0;
   MatchScanlinesRGBA8888(reference, output, numMatches, TEST_LOCATION);
-  DALI_TEST_EQUALS(numMatches, reference.Capacity(), TEST_LOCATION);
+  DALI_TEST_EQUALS(numMatches, reference.Count(), TEST_LOCATION);
 
   END_TEST;
 }
@@ -1066,7 +1067,7 @@ int UtcDaliImageOperationsAverageScanlinesRGBA8888(void)
   // Check the output matches the independently generated reference:
   size_t numMatches = 0;
   MatchScanlinesRGBA8888(reference, output, numMatches, TEST_LOCATION);
-  DALI_TEST_EQUALS(numMatches, reference.Capacity(), TEST_LOCATION);
+  DALI_TEST_EQUALS(numMatches, reference.Count(), TEST_LOCATION);
 
   END_TEST;
 }
index cab5d0a..b44030d 100644 (file)
@@ -1351,6 +1351,22 @@ int UtcDaliWindowSetParentNegative(void)
   END_TEST;
 }
 
+int UtcDaliWindowSetParentWithBelowParentNegative(void)
+{
+  try
+  {
+    Dali::Window arg1;
+    Dali::Window arg2;
+    DevelWindow::SetParent(arg1, arg2, true);
+    DALI_TEST_CHECK(false); // Should not get here
+  }
+  catch(...)
+  {
+    DALI_TEST_CHECK(true); // We expect an assert
+  }
+  END_TEST;
+}
+
 int UtcDaliWindowAddInputRegion(void)
 {
   Dali::Window instance;
index 908a8ae..9f87ce7 100644 (file)
@@ -106,6 +106,11 @@ void SetParent(Window window, Window parent)
   GetImplementation(window).SetParent(parent);
 }
 
+void SetParent(Window window, Window parent, bool belowParent)
+{
+  GetImplementation(window).SetParent(parent, belowParent);
+}
+
 void Unparent(Window window)
 {
   GetImplementation(window).Unparent();
index 108b4f4..8bc287e 100644 (file)
@@ -158,6 +158,18 @@ DALI_ADAPTOR_API KeyboardRepeatSettingsChangedSignalType& KeyboardRepeatSettings
 DALI_ADAPTOR_API void SetParent(Window window, Window parent);
 
 /**
+ * @brief Sets parent window of the window.
+ *
+ * After setting that, these windows do together when raise-up, lower and iconified/deiconified.
+ * This function has the additional flag whether the child is located above or below of the parent.
+ *
+ * @param[in] window The window instance
+ * @param[in] parent The parent window instance
+ * @param[in] belowParent The flag is whether the child is located above or below of the parent.
+ */
+DALI_ADAPTOR_API void SetParent(Window window, Window parent, bool belowParent);
+
+/**
  * @brief Unsets parent window of the window.
  *
  * After unsetting, the window is disconnected his parent window.
index 99e1dee..9fc4ab7 100644 (file)
@@ -341,7 +341,7 @@ void WindowBaseAndroid::SetTransparency(bool transparent)
 {
 }
 
-void WindowBaseAndroid::SetParent(WindowBase* parentWinBase)
+void WindowBaseAndroid::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
 }
 
index 8ba0a14..286ea5c 100644 (file)
@@ -351,7 +351,7 @@ public:
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index d94dbe8..4edb1a0 100644 (file)
@@ -740,7 +740,7 @@ void GlWindow::SetChild(Dali::Window& child)
       WindowBase* childWindowBase = renderSurface->GetWindowBase();
       if(childWindowBase)
       {
-        childWindowBase->SetParent(mWindowBase.get());
+        childWindowBase->SetParent(mWindowBase.get(), false);
       }
     }
   }
index 7983f45..926a365 100644 (file)
@@ -375,7 +375,7 @@ public:
   /**
    * @copydoc Dali::Window::SetParent()
    */
-  virtual void SetParent(WindowBase* parentWinBase) = 0;
+  virtual void SetParent(WindowBase* parentWinBase, bool belowParent) = 0;
 
   /**
    * @brief Create a sync fence that can tell the frame is rendered by the graphics driver.
index 1bc3188..2d88bb3 100644 (file)
@@ -917,13 +917,28 @@ void Window::SetParent(Dali::Window& parent)
     {
       Dali::DevelWindow::Unparent(parent);
     }
-    mWindowBase->SetParent(GetImplementation(mParentWindow).mWindowBase);
+    mWindowBase->SetParent(GetImplementation(mParentWindow).mWindowBase, false);
+  }
+}
+
+void Window::SetParent(Dali::Window& parent, bool belowParent)
+{
+  if(DALI_UNLIKELY(parent))
+  {
+    mParentWindow     = parent;
+    Dali::Window self = Dali::Window(this);
+    // check circular parent window setting
+    if(Dali::DevelWindow::GetParent(parent) == self)
+    {
+      Dali::DevelWindow::Unparent(parent);
+    }
+    mWindowBase->SetParent(GetImplementation(mParentWindow).mWindowBase, belowParent);
   }
 }
 
 void Window::Unparent()
 {
-  mWindowBase->SetParent(nullptr);
+  mWindowBase->SetParent(nullptr, false);
   mParentWindow.Reset();
 }
 
index 761bb0e..843870b 100644 (file)
@@ -326,11 +326,16 @@ public:
   static Dali::Window Get(Dali::Actor actor);
 
   /**
-   * @copydoc Dali::DevelWindow::SetParent()
+   * @copydoc Dali::DevelWindow::SetParent(Window window, Window parent)
    */
   void SetParent(Dali::Window& parent);
 
   /**
+   * @copydoc Dali::DevelWindow::SetParent(Window window, Window parent, bool belowParent)
+   */
+  void SetParent(Dali::Window& parent, bool belowParent);
+
+  /**
    * @copydoc Dali::DevelWindow::Unparent()
    */
   void Unparent();
index b967686..7831e5f 100644 (file)
@@ -290,7 +290,7 @@ public:
   /**
    * @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index 594a186..0053e79 100644 (file)
@@ -635,7 +635,7 @@ void WindowBaseCocoa::SetTransparency( bool transparent )
   mImpl->mWindow.alphaValue = static_cast<CGFloat>(!transparent);
 }
 
-void WindowBaseCocoa::SetParent( WindowBase* parentWinBase )
+void WindowBaseCocoa::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
   auto &parent = dynamic_cast<WindowBaseCocoa&>(*parentWinBase);
   [mImpl->mWindow setParentWindow:parent.mImpl->mWindow];
index 55c6a7e..b5edc0a 100644 (file)
@@ -2159,7 +2159,7 @@ void WindowBaseEcoreWl::CreateWindow(PositionSize positionSize)
   }
 }
 
-void WindowBaseEcoreWl::SetParent(WindowBase* parentWinBase)
+void WindowBaseEcoreWl::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
   Ecore_Wl_Window* ecoreParent = NULL;
   if(parentWinBase)
index 8cca415..c1b4dbd 100644 (file)
@@ -423,7 +423,7 @@ public:
   /**
    * @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index 403337a..737f1a9 100644 (file)
@@ -2513,7 +2513,7 @@ void WindowBaseEcoreWl2::CreateWindow(PositionSize positionSize)
   ecore_wl2_window_type_set(mEcoreWindow, ECORE_WL2_WINDOW_TYPE_TOPLEVEL);
 }
 
-void WindowBaseEcoreWl2::SetParent(WindowBase* parentWinBase)
+void WindowBaseEcoreWl2::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
   Ecore_Wl2_Window* ecoreParent = NULL;
   if(parentWinBase)
@@ -2521,7 +2521,7 @@ void WindowBaseEcoreWl2::SetParent(WindowBase* parentWinBase)
     WindowBaseEcoreWl2* winBaseEcore2 = static_cast<WindowBaseEcoreWl2*>(parentWinBase);
     ecoreParent                       = winBaseEcore2->mEcoreWindow;
   }
-  ecore_wl2_window_parent_set(mEcoreWindow, ecoreParent);
+  ecore_wl2_window_transient_parent_set(mEcoreWindow, ecoreParent, belowParent);
 }
 
 int WindowBaseEcoreWl2::CreateFrameRenderedSyncFence()
index d05c99a..6c180c8 100644 (file)
@@ -455,7 +455,7 @@ public:
   /**
    * @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index 67cb784..f7058dc 100644 (file)
@@ -900,7 +900,7 @@ void WindowBaseEcoreX::CreateWindow(PositionSize positionSize, bool isTransparen
   }
 }
 
-void WindowBaseEcoreX::SetParent(WindowBase* parentWinBase)
+void WindowBaseEcoreX::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
   Ecore_X_Window ecoreParent = 0;
   if(parentWinBase)
index 2a34f8f..62d9b58 100644 (file)
@@ -357,7 +357,7 @@ public:
   /**
    * @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index cb903ef..07c584e 100644 (file)
@@ -568,7 +568,7 @@ void WindowBaseWin::EventEntry(TWinEventInfo* event)
   }
 }
 
-void WindowBaseWin::SetParent(WindowBase* parentWinBase)
+void WindowBaseWin::SetParent(WindowBase* parentWinBase, bool belowParent)
 {
 }
 
index 6e0f7db..a98e8b8 100644 (file)
@@ -344,7 +344,7 @@ public:
   /**
    * @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
    */
-  void SetParent(WindowBase* parentWinBase) override;
+  void SetParent(WindowBase* parentWinBase, bool belowParent) override;
 
   /**
    * @copydoc  Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
index d918699..c351a4b 100644 (file)
@@ -27,7 +27,7 @@ namespace Dali
 {
 const unsigned int ADAPTOR_MAJOR_VERSION = 2;
 const unsigned int ADAPTOR_MINOR_VERSION = 0;
-const unsigned int ADAPTOR_MICRO_VERSION = 42;
+const unsigned int ADAPTOR_MICRO_VERSION = 43;
 const char* const  ADAPTOR_BUILD_DATE    = __DATE__ " " __TIME__;
 
 #ifdef DEBUG_ENABLED
index 37b9210..9d19a2d 100644 (file)
@@ -17,7 +17,7 @@
 
 Name:       dali2-adaptor
 Summary:    The DALi Tizen Adaptor
-Version:    2.0.42
+Version:    2.0.43
 Release:    1
 Group:      System/Libraries
 License:    Apache-2.0 and BSD-3-Clause and MIT