Merge "Clear font cache when locale changed" into devel/master
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / dali-toolkit-test-utils / test-native-image.h
index d134942..cbbef46 100644 (file)
@@ -2,7 +2,7 @@
 #define TEST_NATIVE_IMAGE_H
 
 /*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -78,10 +78,22 @@ public:
     mCallStack.PushCall("GetTextureTarget", "");
     return GL_TEXTURE_EXTERNAL_OES;
   };
-  inline virtual const char* GetCustomFragmentPrefix() const
+  inline virtual bool ApplyNativeFragmentShader(std::string& shader)
   {
-    mCallStack.PushCall("GetCustomFragmentPrefix", "");
-    return "#extension GL_OES_EGL_image_external:require\n";
+    mCallStack.PushCall("ApplyNativeFragmentShader", "");
+    shader = "#extension GL_OES_EGL_image_external:require\n" + shader;
+
+    //Get custom sampler type name
+    const char* customSamplerTypename = GetCustomSamplerTypename();
+    if(customSamplerTypename)
+    {
+      size_t samplerPosition = shader.find("sampler2D");
+      if(samplerPosition != std::string::npos)
+      {
+        shader.replace(samplerPosition, strlen("sampler2D"), customSamplerTypename);
+      }
+    }
+    return true;
   };
   inline const char* GetCustomSamplerTypename() const override
   {
@@ -95,20 +107,31 @@ public:
   };
   inline bool SourceChanged() const override
   {
-    return false;
+    return true;
   };
 
+  inline Rect<uint32_t> GetUpdatedArea() override
+  {
+    return mUpdatedArea;
+  }
+
   inline virtual Dali::NativeImageInterface::Extension* GetExtension()
   {
     return nullptr;
   }
 
+  inline void SetUpdatedArea(const Rect<uint32_t>& updatedArea)
+  {
+    mUpdatedArea = updatedArea;
+  }
+
 private:
   TestNativeImage(uint32_t width, uint32_t height);
   virtual ~TestNativeImage();
 
-  uint32_t mWidth;
-  uint32_t mHeight;
+  uint32_t       mWidth;
+  uint32_t       mHeight;
+  Rect<uint32_t> mUpdatedArea{};
 
 public:
   int32_t                mExtensionCreateCalls;