platform/core/uifw/dali-adaptor.git
7 days agoDALi Version 2.4.7 67/320067/1 dali_2.4.7
David Steele [Fri, 21 Feb 2025 11:25:00 +0000 (11:25 +0000)]
DALi Version 2.4.7

Change-Id: Iac39adf3e326a38aefdf0ba522cb3f7b721e6cfd

8 days agoMerge "Ensured swapchain/surface cleanup on device destruction" into devel/master
David Steele [Thu, 20 Feb 2025 16:57:55 +0000 (16:57 +0000)]
Merge "Ensured swapchain/surface cleanup on device destruction" into devel/master

8 days agoMerge "(NativeImageSource) Return nullptr if NativeImageSource::New() failed" into...
David Steele [Thu, 20 Feb 2025 11:34:36 +0000 (11:34 +0000)]
Merge "(NativeImageSource) Return nullptr if NativeImageSource::New() failed" into devel/master

8 days agoMerge "Load the shader using glProgramBinary" into devel/master
sunghyun kim [Thu, 20 Feb 2025 08:09:59 +0000 (08:09 +0000)]
Merge "Load the shader using glProgramBinary" into devel/master

9 days agoMerge "Fix fontclient coverity issue" into devel/master
Bowon Ryu [Thu, 20 Feb 2025 06:14:24 +0000 (06:14 +0000)]
Merge "Fix fontclient coverity issue" into devel/master

9 days agoMerge "Separate FontConfig handle" into devel/master
Bowon Ryu [Thu, 20 Feb 2025 05:35:31 +0000 (05:35 +0000)]
Merge "Separate FontConfig handle" into devel/master

9 days agoFix fontclient coverity issue 41/319941/1
Bowon Ryu [Thu, 20 Feb 2025 03:19:31 +0000 (12:19 +0900)]
Fix fontclient coverity issue

Change-Id: Ib2c0bfb1f863c49f978a0836e305e9cedddc3824
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
9 days ago(NativeImageSource) Return nullptr if NativeImageSource::New() failed 43/319743/2
Eunki, Hong [Mon, 17 Feb 2025 07:06:27 +0000 (16:06 +0900)]
(NativeImageSource) Return nullptr if NativeImageSource::New() failed

For vulkan backend case, NativeImageSource's mImpl return nullptr.

But NativeImageSource object itself is not empty, we can call
NativeImageSource API freely, and got crash.

To avoid these kind of issue, let we return nullptr if NativeImageSource
creation failed. (Similar with NativeImageSourceQueue)

Change-Id: I5113a01bf8183a35a3bcfebcca5b4673db753e49
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 days agoSeparate FontConfig handle 12/319912/3
Bowon Ryu [Wed, 19 Feb 2025 11:06:54 +0000 (20:06 +0900)]
Separate FontConfig handle

This patch changes FontClient to create and use a handle to FontConfig.
Previously we always used FontConfig globally.
There was no problem because DALi had already recognized and developed this internally.

However, since FontConfig is a library open to the system,
FontConfig may be used by other libs that dali does not know about in the same process,
which may cause Thread safe problems.

Change-Id: Ie603016f08376f9c5ca389069b6c8da7a345d7a2
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
9 days agoMerge "(Vulkan::Reflection) Append uniform blocks only 1 times per each programs...
Eunki Hong [Thu, 20 Feb 2025 00:40:46 +0000 (00:40 +0000)]
Merge "(Vulkan::Reflection) Append uniform blocks only 1 times per each programs + Clean up some logic" into devel/master

9 days agoMerge "(Vulkan) Fix minor coverity issues" into devel/master
Eunki Hong [Thu, 20 Feb 2025 00:40:34 +0000 (00:40 +0000)]
Merge "(Vulkan) Fix minor coverity issues" into devel/master

9 days agoEnsured swapchain/surface cleanup on device destruction 19/319919/1
David Steele [Wed, 19 Feb 2025 14:38:57 +0000 (14:38 +0000)]
Ensured swapchain/surface cleanup on device destruction

VulkanDevice should take ownership of vulkan surface / swapchain pair.
For the moment; have ensured that these are properly disposed of
in the VulkanDevice destructor.

[Could change SurfaceSwapchainPair to use UniquePtr instead of raw ptr,
using Destroy() as deallocator fn, then less work!]

Change-Id: Ibd996cd46d8b06bda201fe87f932153f4096e203
Signed-off-by: David Steele <david.steele@samsung.com>
9 days agoMerge "Fixing swapchain for use with triple buffering" into devel/master
David Steele [Wed, 19 Feb 2025 12:36:38 +0000 (12:36 +0000)]
Merge "Fixing swapchain for use with triple buffering" into devel/master

9 days agoMerge "Add locale api to text abstraction" into devel/master
Bowon Ryu [Wed, 19 Feb 2025 07:10:55 +0000 (07:10 +0000)]
Merge "Add locale api to text abstraction" into devel/master

10 days ago(Vulkan) Fix minor coverity issues 78/319878/1
Eunki, Hong [Wed, 19 Feb 2025 05:37:37 +0000 (14:37 +0900)]
(Vulkan) Fix minor coverity issues

1. Non-initalized structs (spriv.h, command-buffer.h)
2. Make mMemory nullptr if allocation failed. (image-impl, buffer-impl)
3. Avoid nullptr copy, or negative length string for some case (texture, shader-impl)

Change-Id: Ib2b99af36d430e4159ef7eb7619b040a08f3c688
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 days ago(Vulkan::Reflection) Append uniform blocks only 1 times per each programs + Clean... 19/319819/5
Eunki, Hong [Tue, 18 Feb 2025 07:49:19 +0000 (16:49 +0900)]
(Vulkan::Reflection) Append uniform blocks only 1 times per each programs + Clean up some logic

Since we create relfections per each shader at vulkan side,
there was some problem if we try to use same uniform block at both
vertex and fragment shader.

Since current spriv don't know the uniform block's name,
let we just seperate it by binding of layout.

+

Their might be issue if VertexShader code have sampler2D (e.g. Scene3D blendshape)
It is code side bug, and we don't need to append sampler informations
whenever we call BuildReflection().

To make ensure code clean, let we clear mUniformBlocks and mUniformOpaques
at the begin of BuildReflection(), and sort + unique each of them.

TODO : Shouldn't we need to consider multi-set case?

Change-Id: Icece552a1dff9f144be580e93e7f3d65d401cf6a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 days agoAdd locale api to text abstraction 56/319856/2
Bowon Ryu [Wed, 19 Feb 2025 02:28:46 +0000 (11:28 +0900)]
Add locale api to text abstraction

Prevents the setlocale system call from being called repeatedly.

Change-Id: Ibd00d7e0f8145a4a6aa305a3ba4997c351acbd18
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
10 days agoLoad the shader using glProgramBinary 02/316602/24
sunghyun kim [Fri, 18 Oct 2024 07:39:33 +0000 (16:39 +0900)]
Load the shader using glProgramBinary

If there is a saved shader, load the shader using glProbramBinary

Change-Id: I5db0118d5bcc2f45537172d8b5039afe1c5fc309

10 days agoFixing swapchain for use with triple buffering 76/319776/2
David Steele [Mon, 17 Feb 2025 16:12:00 +0000 (16:12 +0000)]
Fixing swapchain for use with triple buffering

Some platforms are using triple buffering, but the
SwapchainBuffers only allocate 2. Changed to ensure that
the buffer count matches at least the minimum number of
images returned on swapchain creation.

Fixed coverity error in CreateSwapchainForSurface /
ReplaceSwapchainForSurface.

Change-Id: I6292daec0bf6e568f6818751ef1994c5ce87b24b
Signed-off-by: David Steele <david.steele@samsung.com>
11 days agoMerge "(Webp) Do not load file again if we know size and frame count" into devel...
Eunki Hong [Tue, 18 Feb 2025 02:05:23 +0000 (02:05 +0000)]
Merge "(Webp) Do not load file again if we know size and frame count" into devel/master

12 days agoMerge "Collect strerror_r relative error log printing logs" into devel/master
Eunki Hong [Mon, 17 Feb 2025 04:41:36 +0000 (04:41 +0000)]
Merge "Collect strerror_r relative error log printing logs" into devel/master

2 weeks agoMerge "DALi Version 2.4.6" into devel/master
Adeel Kazmi [Fri, 14 Feb 2025 12:43:32 +0000 (12:43 +0000)]
Merge "DALi Version 2.4.6" into devel/master

2 weeks agoDALi Version 2.4.6 72/319672/1 dali_2.4.6
Adeel Kazmi [Fri, 14 Feb 2025 12:34:18 +0000 (12:34 +0000)]
DALi Version 2.4.6

Change-Id: Idafa6b6b3ec9f545e8351df04313664f2c3a8bd5

2 weeks agoCollect strerror_r relative error log printing logs 18/319018/7
Eunki Hong [Mon, 3 Feb 2025 07:14:00 +0000 (16:14 +0900)]
Collect strerror_r relative error log printing logs

Let we collect all cases to file description error cases.

Until now, we use strerror_r return type value to print error logs.
But it will not works at XSI base kernel.
And also, strerror_r need a lots of parameters so the line of codes increased
wherever we want to print errno value.

So we can control both GNU and XSI case,
and easly check the error occured point.

Change-Id: Ice950acacf7cefc1e3dc3c1427342b91cfa66b5b
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 weeks ago(Webp) Do not load file again if we know size and frame count 55/319655/1
Eunki, Hong [Fri, 14 Feb 2025 07:19:53 +0000 (16:19 +0900)]
(Webp) Do not load file again if we know size and frame count

For single webp case, we release the buffer data after load finished.
But user can request the GetImageSize() and GetImageCount().
In this case, we re-load the webp buffer again, and
fail to release the buffers until loader desturcted.

Change-Id: I04817b9e8c589937b36f821e7653b0257c54e067
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 weeks agoMerge "Fontconfig: Replace FcInitReinitialize with FcInitLoadConfigAndFonts" into...
Chihun Jeong [Fri, 14 Feb 2025 06:51:58 +0000 (06:51 +0000)]
Merge "Fontconfig: Replace FcInitReinitialize with FcInitLoadConfigAndFonts" into devel/master

2 weeks agoFix build error when we use tizen_9.0 repo 97/319597/1
Eunki, Hong [Thu, 13 Feb 2025 08:02:28 +0000 (17:02 +0900)]
Fix build error when we use tizen_9.0 repo

Let we add new macro OVER_TIZEN_VERSION_10, and use it for latest APIs

Change-Id: I9d4cbaa523ca5b50eba99441fa45f57580a0dab8
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 weeks agoFontconfig: Replace FcInitReinitialize with FcInitLoadConfigAndFonts 10/319510/4
ANZ1217 [Wed, 12 Feb 2025 05:33:17 +0000 (14:33 +0900)]
Fontconfig: Replace FcInitReinitialize with FcInitLoadConfigAndFonts

FcInitReinitialize() causes global font cache and config reload.
which may lead to race conditions and crashes.
Replaced it with FcInitLoadConfigAndFonts() to safely reload config within the current process without affecting others.

Change-Id: Ic5c911f399de141310e99711ae72db64c9dad3cd

2 weeks agoMerge "Changing swapchain acquisition at frame start" into devel/master
David Steele [Wed, 12 Feb 2025 16:53:36 +0000 (16:53 +0000)]
Merge "Changing swapchain acquisition at frame start" into devel/master

2 weeks agoMerge "Fixing coverity errors" into devel/master
David Steele [Wed, 12 Feb 2025 16:53:23 +0000 (16:53 +0000)]
Merge "Fixing coverity errors" into devel/master

2 weeks agoMerge "[Vulkan] Reduced queue submissions" into devel/master
David Steele [Wed, 12 Feb 2025 16:53:08 +0000 (16:53 +0000)]
Merge "[Vulkan] Reduced queue submissions" into devel/master

2 weeks agoMerge "Removing DeviceWaitIdle from Vk::SwapBuffers" into devel/master
David Steele [Wed, 12 Feb 2025 16:52:51 +0000 (16:52 +0000)]
Merge "Removing DeviceWaitIdle from Vk::SwapBuffers" into devel/master

2 weeks agoChanging swapchain acquisition at frame start 67/319267/5
David Steele [Thu, 6 Feb 2025 18:11:37 +0000 (18:11 +0000)]
Changing swapchain acquisition at frame start

Need to ensure that we don't create end of frame fence if we're not
going to render anything.

But, we do want to have same pipelines for fbos and scene; so we need
to sync swapchain _before_ drawing to fbos.

Ensured that Swapchain owns it's external images.

Change-Id: I4cc64607ad964362cb793f435324110027b45740

2 weeks agoFix compile error after add -Werror flag added 81/319481/2
Eunki Hong [Tue, 11 Feb 2025 14:39:31 +0000 (23:39 +0900)]
Fix compile error after add -Werror flag added

ADD_COMPILE_OPTIONS(-Werror) option added after dynamic graphics backend applied.

Since we never make compile error for build warnings until now, it breakdown
compile error when we build Release mode.

To fix this issue, let we just keep -Wall option, and just fix
build warnings, for more stable codes.

And, for ~SwapchainBuffer(), let we don't throw exception
at destructor. Instead, just print log and skip assert.

Change-Id: I47cfd17d09ec26d346898421262e81f4baf03775
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 weeks agoMerge "Add FullScreenMode to InputMethodContext" into devel/master
Bowon Ryu [Tue, 11 Feb 2025 01:05:06 +0000 (01:05 +0000)]
Merge "Add FullScreenMode to InputMethodContext" into devel/master

2 weeks agoMerge "Add Combining Diacritical Marks to text script" into devel/master
Bowon Ryu [Mon, 10 Feb 2025 08:05:56 +0000 (08:05 +0000)]
Merge "Add Combining Diacritical Marks to text script" into devel/master

2 weeks agoAdd Combining Diacritical Marks to text script 86/319286/3
Bowon Ryu [Fri, 7 Feb 2025 06:24:59 +0000 (15:24 +0900)]
Add Combining Diacritical Marks to text script

Combining Diacritical Marks is an inherited script.
This is not used alone; it basically follows the previous script.
On the dali side, this is handled as a COMMON script.

Change-Id: Ib373ada7e46caccf025660e9bbc3aa2acc4e12f5
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 weeks agoFixing coverity errors 66/319266/2
David Steele [Thu, 6 Feb 2025 16:10:51 +0000 (16:10 +0000)]
Fixing coverity errors

Change-Id: I84d9de999dc95efc0e2e740ba406aa4507ac0bbf

3 weeks ago[Vulkan] Reduced queue submissions 95/318895/5
David Steele [Thu, 30 Jan 2025 18:40:32 +0000 (18:40 +0000)]
[Vulkan] Reduced queue submissions

Rather than individually queueing each command buffer, instead
rolled up all cmd buffers (for framebuffers) into a single submission.

(Still require separate queue submission for scene, as swapchain
cmd buffer is the final submission, and generates end of frame
fence)

(Also fixed EGL debug build for target)

Change-Id: Iac4fc1333437bfe3933ae4bbe3e7ae33364a0192
Signed-off-by: David Steele <david.steele@samsung.com>
3 weeks agoRemoving DeviceWaitIdle from Vk::SwapBuffers 68/318868/5
David Steele [Fri, 24 Jan 2025 11:49:08 +0000 (11:49 +0000)]
Removing DeviceWaitIdle from Vk::SwapBuffers

Rather than a hard wait each frame, should instead
leverage the exising end of frame fence that's owned
by the swapchain buffer.

Moved the AcquireNextImage functions out of BeginRenderPass, and
into the VulkanGraphicsController::FrameStart method; this will
now wait on the current buffer's end of frame fence before trying
to get the next image (for this buffer index).

SwapBuffers() now just increases the buffer index modulo the buffer
count (aka the number of swapchain images that are available for this
device).

Changed CommandBuffer to contain up to BufferCount() Impls; the relevant
impl is selected for each command by getting the current buffer index
from the device.

Changed DescriptorPool implementation to use the current buffer index
rather than trying to manage it's own pool index. This was quite broken!
It now grows the poolList to match the buffer index, which will never
go past the BufferCount. (usually 2 or 3).

Change-Id: I994046805bfb38285063e87f8409e856f14b3459

3 weeks agoDALi Version 2.4.5 16/319316/1 dali_2.4.5
Richard Huang [Fri, 7 Feb 2025 10:39:31 +0000 (10:39 +0000)]
DALi Version 2.4.5

Change-Id: I0f41c1bd2f75c12674dae76624018e0256fd5cc4

3 weeks agoFix coverity issue : Convert uint32_t to float first, then minus operate 35/319235/1
Eunki, Hong [Thu, 6 Feb 2025 05:59:42 +0000 (14:59 +0900)]
Fix coverity issue : Convert uint32_t to float first, then minus operate

Since it is possible that widthIn is zero, we should consider
the code with negavie cases.

Change-Id: I0c71d6336b2b415bc2af731ff738e79ac5fef9db
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 weeks agoMerge "Fix memory leak for depth and stencil buffer in Vulkan backend" into devel...
Adeel Kazmi [Tue, 4 Feb 2025 15:40:02 +0000 (15:40 +0000)]
Merge "Fix memory leak for depth and stencil buffer in Vulkan backend" into devel/master

3 weeks agoThe range of touch coordinates is [0:width - 1] and [0:height - 1] 14/319014/6
joogab.yun [Mon, 3 Feb 2025 06:46:48 +0000 (15:46 +0900)]
The range of touch coordinates is [0:width - 1] and [0:height - 1]

So, modify coordinate calculation when rotating.

Change-Id: I1ce7788a098104e1a729e2c78a7cf3fb49b7e31a

3 weeks agoMerge "Do not copy same UBODescriptor and TextureBinding at GLES::Context + Remove...
Eunki Hong [Mon, 3 Feb 2025 04:55:57 +0000 (04:55 +0000)]
Merge "Do not copy same UBODescriptor and TextureBinding at GLES::Context + Remove unused function : BindSamplers" into devel/master

4 weeks agoMerge "Fixed coverage build" into devel/master
David Steele [Fri, 31 Jan 2025 13:36:32 +0000 (13:36 +0000)]
Merge "Fixed coverage build" into devel/master

4 weeks agoDALi Version 2.4.4 20/318920/1 dali_2.4.4
David Steele [Fri, 31 Jan 2025 12:31:36 +0000 (12:31 +0000)]
DALi Version 2.4.4

Change-Id: I734fddaea896fa0f5cbf1c8d7723ed6a230ed748

4 weeks agoFixed coverage build 18/318918/1
David Steele [Fri, 31 Jan 2025 11:57:23 +0000 (11:57 +0000)]
Fixed coverage build

Change-Id: Ib458a5d1f748e4787ef616ed41ef963ca7fa35ff

4 weeks agoFix memory leak for depth and stencil buffer in Vulkan backend 17/318917/1
Richard Huang [Fri, 31 Jan 2025 11:36:08 +0000 (11:36 +0000)]
Fix memory leak for depth and stencil buffer in Vulkan backend

Change-Id: Iba74096c4ff2e1213a293a5fffcd8ee9b96ab7dd

4 weeks agoDynamic Graphics Backend 15/317915/16
Adeel Kazmi [Thu, 9 Jan 2025 18:35:30 +0000 (18:35 +0000)]
Dynamic Graphics Backend

Change-Id: I013ff62b54f2e8badee2c10e91b40d178b6f213c

4 weeks agoDo not copy same UBODescriptor and TextureBinding at GLES::Context + Remove unused... 56/318556/8
Eunki, Hong [Mon, 20 Jan 2025 10:25:13 +0000 (19:25 +0900)]
Do not copy same UBODescriptor and TextureBinding at GLES::Context + Remove unused function : BindSamplers

Some struct call std::fill_n internally when we call resize - for example : UniformBufferBindingDescriptor
But, we really don't need to use initialized value.

Let we make the container as Dali::Vector, so can skip useless initialize value.

Moreover, let we remove unused function, BindSamplers.

Change-Id: I66f2fa7e83fea89dfac1c5d20e003745991d4edc
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 weeks agoMerge changes I05449137,Ie4334fb8,I12dad280,Iaf63b42f into devel/master
David Steele [Fri, 24 Jan 2025 14:19:14 +0000 (14:19 +0000)]
Merge changes I05449137,Ie4334fb8,I12dad280,Iaf63b42f into devel/master

* changes:
  Change render target semaphore handling
  Inverting framebuffer viewport for Vulkan
  Implementing framebuffer in vulkan backend
  Allowing arbitrary dumping of multi-frame command buffers

5 weeks agoDALi Version 2.4.3 14/318814/1 dali_2.4.3
Richard Huang [Fri, 24 Jan 2025 10:47:31 +0000 (10:47 +0000)]
DALi Version 2.4.3

Change-Id: Ic2044196624e2cdba2ee02949d4fda02c93db600

5 weeks agoChange render target semaphore handling 72/317772/11
David Steele [Fri, 20 Dec 2024 17:40:17 +0000 (17:40 +0000)]
Change render target semaphore handling

Fixed bug with dependency graph adding same dependency more than once to render target

Changed queue submission to handle vector of wait stage masks
(as a render task may depend on more than one offscreen to finish rendering)

Changed render task dependence so that only the "earliest" dependent needs to
wait for offscreen - (2nd dependant Submit can't wait on already signalled sema, apparently!)
Fixes a lot of lockups in demos.

Changed swapchain Submit() to pass in any offscreen dependencies.
  Swapchain submit adds own dependence on acquireNextImageSemaphore.

Test harness:
  Some tests skip initial "SendNotification" call. This means that scene-setup done by the test harness is ignored until the next frame.
  Changed the TestApplication InitilizeCore method to ensure that the messages are processed after setup.
  (So it doesn't matter if the test doesn't first call app.SendNotification()).

Change-Id: I05449137fa14ce1b00d3ecd152f4d0cf2409228d

5 weeks agoInverting framebuffer viewport for Vulkan 76/317676/8
David Steele [Mon, 6 Jan 2025 18:26:08 +0000 (18:26 +0000)]
Inverting framebuffer viewport for Vulkan

Change-Id: Ie4334fb8c5894d9ec080c82b7203f335cff4cc7b

5 weeks agoImplementing framebuffer in vulkan backend 62/315762/14
David Steele [Thu, 12 Dec 2024 11:36:59 +0000 (11:36 +0000)]
Implementing framebuffer in vulkan backend

High level:
----------
Added render pass constructors for fbo.

Added offscreen texture dependency graph.

FBO command submission requires texture dependencies to ensure that
syncing semaphores are correctly setup.

Added submission semaphore to RenderTarget

Detail
------
vulkan-command-buffer.h/.cpp
  - Added mRenderTarget member which is stored when Begin() cmd is issued on this buffer.
  - Added call to check texture dependencies when BindTextures() cmd is issued.
  - Added call to add texture dependencies when BeginRenderPass() cmd is issued.
  - Replaced GetLastSwapchain with GetRenderTarget() (More generic)

vulkan-framebuffer.h/.cpp
  - Added render pass generation

vulkan-framebuffer-attachment.h
  - Added AttachmentDescription to constructor/New

vulkan-framebuffer-impl.h/cpp
  - Add AddRenderPass() method
  - Changed Attachment constructor to copy AttachmentDescription if not null, or use "Clear"/"Store"
    for load / store ops, respectively.

vulkan-graphics-controller.h/cpp
  - Changed FrameStart() to reset texture dependency graph
  - Changed SubmitCommandBuffers() to submit for all render targets (not just swapchain)
  - Changed PresentRenderTarget() to only present swapchain target
  - Changed CreateRenderTarget() to add render target to dependency checker
  - Added CreateFramebuffer() implementation
  - Added texture dependency methods
    - AddTextureDependencies() goes thru each attachment of a render target and adds it to the
        dependency checker
    - CheckTextureDependencies() goes through each bound texture to determine if it needs to wait
        on a render target submission
    - RemoveRenderTarget() - removes render target from dependency graph

vulkan-render-pass-impl.h/cpp
  - Added new New factory fn to pass in CreateInfo
  - Separated out sub-pass dependency generation - different setup for offscreen/swapchain.
  - Storing attachment handles in CreateInfo

vulkan-render-target.h/.cpp
  - Added mSubmitSemaphore. This is used when Submitting offscreen command buffers to the graphics
    queue to handle synchronization between render targets - the submission can wait on dependent
    targets to finish drawing to offscreens.
  - Added Submit() method to submit for either offscreen / swapchain.

vulkan-swapchain-impl.h/.cpp
  - Changed to use Queue::Submit method

vulkan-texture.h
  - Addition of CreateImageView() which ensures the image is allocated, and creates
    separate image view using existing parameters.

vulkan-queue.h/cpp
  - Moved Submit() function from Device class to Queue as method.

Change-Id: I12dad2805e4a25f431878e0c3bf07bead1943694
Signed-off-by: David Steele <david.steele@samsung.com>
5 weeks agoAllowing arbitrary dumping of multi-frame command buffers 66/316566/11
David Steele [Fri, 13 Dec 2024 10:03:22 +0000 (10:03 +0000)]
Allowing arbitrary dumping of multi-frame command buffers

Updated to pass out the render target information at the end of
the json.

Change-Id: Iaf63b42f89ab014c99a8635a1288b4a9ea9c9f23

5 weeks ago[AT-SPI] Fix deputy finding logic in GetNavigableAtPoint to include root 87/318387/2
Youngsun Suh [Fri, 16 Aug 2024 04:44:58 +0000 (13:44 +0900)]
[AT-SPI] Fix deputy finding logic in GetNavigableAtPoint to include root

Change-Id: I42fb2eed656443c1e6ebf68f8ff9570968fce631

5 weeks agoMerge "[AT-SPI] Fix GetNavigableAtPoint when the embedded widget has no accessibile...
Seoyeon Kim [Wed, 22 Jan 2025 05:34:06 +0000 (05:34 +0000)]
Merge "[AT-SPI] Fix GetNavigableAtPoint when the embedded widget has no accessibile object" into devel/master

5 weeks agoMerge "Fill empty UniformBufferBindingDescriptor only required" into devel/master
David Steele [Tue, 21 Jan 2025 11:12:35 +0000 (11:12 +0000)]
Merge "Fill empty UniformBufferBindingDescriptor only required" into devel/master

5 weeks agoMerge "[AT-SPI] Do not subtract extentOffset if it's a sub window of Widget" into...
Seoyeon Kim [Tue, 21 Jan 2025 09:45:36 +0000 (09:45 +0000)]
Merge "[AT-SPI] Do not subtract extentOffset if it's a sub window of Widget" into devel/master

5 weeks ago[AT-SPI] Fix GetNavigableAtPoint when the embedded widget has no accessibile object 85/318385/2
Youngsun Suh [Fri, 16 Aug 2024 04:00:30 +0000 (13:00 +0900)]
[AT-SPI] Fix GetNavigableAtPoint when the embedded widget has no accessibile object

Change-Id: I690114db34985912c996b9e9a8b2c8196011bc3e

5 weeks agoMerge "[AT-SPI] Implement missing DeputyAccessible feature" into devel/master
Seoyeon Kim [Tue, 21 Jan 2025 09:35:43 +0000 (09:35 +0000)]
Merge "[AT-SPI] Implement missing DeputyAccessible feature" into devel/master

5 weeks agoMerge "Fix potential memory leak in bidirectional support." into devel/master
Chihun Jeong [Tue, 21 Jan 2025 02:07:09 +0000 (02:07 +0000)]
Merge "Fix potential memory leak in bidirectional support." into devel/master

5 weeks agoMerge "Fix Unicode Byte Order Mark was misinterpreted as arabic character." into...
Chihun Jeong [Tue, 21 Jan 2025 02:07:04 +0000 (02:07 +0000)]
Merge "Fix Unicode Byte Order Mark was misinterpreted as arabic character." into devel/master

5 weeks agoAdd FullScreenMode to InputMethodContext 58/318558/2
Bowon Ryu [Mon, 20 Jan 2025 11:55:04 +0000 (20:55 +0900)]
Add FullScreenMode to InputMethodContext

to support ECORE_IMF_INPUT_HINT_FULLSCREEN_MODE
/**< The input panel should be shown in fullscreen mode @since 1.28 */

Change-Id: I94fd147c5296e8d162c02e249367759d819ad9eb
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
5 weeks ago[AT-SPI] Implement missing DeputyAccessible feature 84/318384/3
Artur Świgoń [Thu, 1 Aug 2024 14:29:40 +0000 (16:29 +0200)]
[AT-SPI] Implement missing DeputyAccessible feature

This feature helps determine the result of a recursive GetNavigableAtPoint
operation. The recursion is done by the at-spi2-core library.

Change-Id: I86ca04cc1e20496703635cb5fd8293f84c677be2

5 weeks agoMerge "[AT-SPI] Check if child is visible in scrollable parent" into devel/master
Seoyeon Kim [Tue, 21 Jan 2025 00:55:37 +0000 (00:55 +0000)]
Merge "[AT-SPI] Check if child is visible in scrollable parent" into devel/master

5 weeks agoFill empty UniformBufferBindingDescriptor only required 53/318453/2
Eunki, Hong [Fri, 17 Jan 2025 04:40:15 +0000 (13:40 +0900)]
Fill empty UniformBufferBindingDescriptor only required

Until now, we try to reset 64 * 32 byte whenever we bind uniform buffers.
But usually we don't fully use 64 bindings for uniforms.

And also, NULL_DESCRIPTOTR could be replaced as memset(0), what we already doing
for standalone uniform buffer bindings.

To reduce those useless std::fill_n and memset,
let we call memset for binding only if we cannot assume the data will
be comes

Change-Id: I39ce8655da2f0aae96451f5d0c5025b98b25995a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 weeks ago[AT-SPI] Do not subtract extentOffset if it's a sub window of Widget 89/318389/4
Youngsun Suh [Mon, 2 Dec 2024 09:12:03 +0000 (18:12 +0900)]
[AT-SPI] Do not subtract extentOffset if it's a sub window of Widget

Change-Id: Ic377579fc9b45510b37e1612baf9b7925308f584

6 weeks agoFix potential memory leak in bidirectional support. 86/318386/4
ANZ1217 [Thu, 16 Jan 2025 07:46:57 +0000 (16:46 +0900)]
Fix potential memory leak in bidirectional support.

the leak occurs when DestroyInfo() called more than once with same index.

Change-Id: I103d0e74963b104a76e9a22695b992df3d9ae752

6 weeks agoFix Unicode Byte Order Mark was misinterpreted as arabic character. 01/318501/3
ANZ1217 [Fri, 17 Jan 2025 08:59:14 +0000 (17:59 +0900)]
Fix Unicode Byte Order Mark was misinterpreted as arabic character.

/ufeff is Unicode BOM character.

Change-Id: I0cdcb738c7cefe259125bf481fc4cbb10baf8ec3

6 weeks agoDALi Version 2.4.2 59/318459/1 dali_2.4.2
Adeel Kazmi [Fri, 17 Jan 2025 06:42:32 +0000 (06:42 +0000)]
DALi Version 2.4.2

Change-Id: I9e3ae62f63668027fa043dd210c8da112c0bfe8f

6 weeks ago[AT-SPI] Check if child is visible in scrollable parent 24/318124/4
Hosang Kim [Wed, 29 May 2024 06:09:26 +0000 (15:09 +0900)]
[AT-SPI] Check if child is visible in scrollable parent

 Fix an issue where GetNeighbor function would incorrectly find
the next item in a gridview, even if child item was not actually visible.
 In a grid view, the next item may be located to the right of
the current item, even if it is not visible on the screen due to scrolling.
 Add IsChildVisibleInScroll to checking the next item is actually visible or not.
 This change improves the user experience by ensuring that the highlight function
always finds the correct next item, even in grid views.

Change-Id: Id9cbe3f97d29e7a8d5458a6b60e6d7f9ab0f27a6

6 weeks agoFix moving a reference with std::move in LRUCacheContainer 73/318373/1
ANZ1217 [Thu, 16 Jan 2025 06:47:33 +0000 (15:47 +0900)]
Fix moving a reference with std::move in LRUCacheContainer

Change-Id: I2ffe44ab4d75bc64fc7903a303d60ed00e4f3db5

6 weeks agoMerge "Prepare NativeTexture only once per each frames" into devel/master
Eunki Hong [Wed, 15 Jan 2025 01:21:35 +0000 (01:21 +0000)]
Merge "Prepare NativeTexture only once per each frames" into devel/master

6 weeks agoMerge "Add AutoRotation, LetterBox" into devel/master
joogab yun [Wed, 15 Jan 2025 00:33:42 +0000 (00:33 +0000)]
Merge "Add AutoRotation, LetterBox" into devel/master

6 weeks agoPrepare NativeTexture only once per each frames 33/318233/1
Eunki, Hong [Tue, 14 Jan 2025 10:49:28 +0000 (19:49 +0900)]
Prepare NativeTexture only once per each frames

Let we make ensure that GLES::Texture::Prepare() called
only 1 times per each frames.

It will guard to update native texture target multiple times
so EGLImage confused.

Change-Id: Ia243e378a0305e94df3ec444cdbdf22e25dfed7e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoMerge "Fix coverity: Division by zero" into devel/master
Eunki Hong [Tue, 14 Jan 2025 07:38:31 +0000 (07:38 +0000)]
Merge "Fix coverity: Division by zero" into devel/master

6 weeks agoFix coverity: Division by zero 84/318184/3
jmm [Tue, 14 Jan 2025 04:47:33 +0000 (13:47 +0900)]
Fix coverity: Division by zero

Change-Id: I4d59433bdce554f3625a58f326c63aa859f5c1ef

6 weeks agoFix coverity : Do not call move to const & and & type 76/318176/1
Eunki, Hong [Tue, 14 Jan 2025 03:16:54 +0000 (12:16 +0900)]
Fix coverity : Do not call move to const & and & type

Change-Id: I4b2ee2f1cd50d0976a4d508e4d3c63ec815171be
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoFix coverity : need to call bundle_free what we created by bundle_decode 73/318173/1
Eunki, Hong [Tue, 14 Jan 2025 03:06:28 +0000 (12:06 +0900)]
Fix coverity : need to call bundle_free what we created by bundle_decode

Change-Id: I2435bfcaa468a1e51605ebb9e38f717a212ccee4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoAdd forceChildSearch a11y attribute to enable searching for out-of-bounds child 22/318122/2
Youngsun Suh [Fri, 24 May 2024 05:56:17 +0000 (14:56 +0900)]
Add forceChildSearch a11y attribute to enable searching for out-of-bounds child

Change-Id: Iaa66022ec2edecfd9600f11f3af78f0e68c58cb1

6 weeks agoMerge "Fix font client coverity issue" into devel/master
Bowon Ryu [Mon, 13 Jan 2025 07:29:14 +0000 (07:29 +0000)]
Merge "Fix font client coverity issue" into devel/master

6 weeks agoFix font client coverity issue 80/318080/1
Bowon Ryu [Mon, 13 Jan 2025 05:22:38 +0000 (14:22 +0900)]
Fix font client coverity issue

Remove unique_lock unlock to prevent double unlocking.

Change-Id: I3a692321b8b10e2fc477075e204e3dfaadf2d9f4
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
6 weeks agoAdd AutoRotation, LetterBox 00/317900/3
joogab.yun [Thu, 9 Jan 2025 07:42:04 +0000 (16:42 +0900)]
Add AutoRotation, LetterBox

Change-Id: If8b6a28a0249133f42dc28c3575c44f35097960c

7 weeks agoDALi Version 2.4.1 37/318037/1 dali_2.4.1
David Steele [Fri, 10 Jan 2025 15:08:59 +0000 (15:08 +0000)]
DALi Version 2.4.1

Change-Id: Ibadcdb5dc654a303f7135bf3d987bea6b186f436

7 weeks agoUpdate emoji variation sequences to Version 16.0 55/317755/2
ANZ1217 [Tue, 7 Jan 2025 08:41:24 +0000 (17:41 +0900)]
Update emoji variation sequences to Version 16.0

Change-Id: I86f91ac9fb539187e148580232cc25bab8f2c459

7 weeks agoPrint infomation if we create eglSurface from Native if need 92/317492/2
Eunki Hong [Thu, 2 Jan 2025 15:01:56 +0000 (00:01 +0900)]
Print infomation if we create eglSurface from Native if need

Change-Id: I8c45c8e228b8ba9afdf3e4606a012309081db8a4
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
8 weeks agoa11y refactor: Remove mKnownObjects 99/316999/3
Youngsun Suh [Mon, 23 Dec 2024 02:20:05 +0000 (11:20 +0900)]
a11y refactor: Remove mKnownObjects

mKnownObjects is redundant as we already store accessbles in a map in bridge-impl.
Removig the data and update the path calculation logic.wq

Change-Id: I40899257ab293f2afe0bcdf9c3a7791dbc4e88bc

8 weeks agoDo not call RequestUpdateOnce, instead Deiconify 24/317324/1
Eunki, Hong [Mon, 30 Dec 2024 11:14:10 +0000 (20:14 +0900)]
Do not call RequestUpdateOnce, instead Deiconify

We can only assume that Deiconify signal can assume that window is valid.
Other API is just kind of request to window server, so we could not send
rendering forcibly.

Change-Id: I6d6b9348d4661efb241cb6aa24209346d908f5de
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoSkip Rendering if native texture not prepared 19/317119/1
Eunki Hong [Tue, 24 Dec 2024 11:27:50 +0000 (20:27 +0900)]
Skip Rendering if native texture not prepared

We should not render the program if texture was not prepared.
Also, if CreateResource failed, mEglImageExtensions might be nullptr.
So we need to make a nullptr check if CreateResource failed, and try to
call other API, like PrepareTexture().

Change-Id: Ic22ba6500faec496f94e6cc2f0cfdcd502bf3999
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 months agoMerge "Add DumpTree api" into devel/master
Youngsun Suh [Mon, 23 Dec 2024 00:23:29 +0000 (00:23 +0000)]
Merge "Add DumpTree api" into devel/master

2 months agoMerge "DALi Version 2.4.0" into devel/master
David Steele [Fri, 20 Dec 2024 15:49:36 +0000 (15:49 +0000)]
Merge "DALi Version 2.4.0" into devel/master

2 months agoDALi Version 2.4.0 69/316969/1 dali_2.4.0
Adeel Kazmi [Fri, 20 Dec 2024 11:36:49 +0000 (11:36 +0000)]
DALi Version 2.4.0

Change-Id: I9a8de8ca55a3702fae786ddbe1f1d947db8c20d6

2 months agoSupport CURLOPT_MAXREDIRS as environment + Print downloaded buffer if image load... 27/316827/3
Eunki, Hong [Wed, 18 Dec 2024 08:38:12 +0000 (17:38 +0900)]
Support CURLOPT_MAXREDIRS as environment + Print downloaded buffer if image load failed

Let we add environment value to control CURLOPT_MAXREDIRS.
Sometimes the redirection count 5 might too small to some applications.
Let we allow to them use more deep depth.

+

Sometimes, we failed to get valid image buffer from given url.

To check whether that url download real-image or not,
let we print prefix of buffers.

Change-Id: I5053ff539da684357d0c5e73d7d57c36423aa976
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoFixed both the GLES & VK builds for LibUV-X11 & GLIB profiles 61/316861/1
Adeel Kazmi [Wed, 18 Dec 2024 17:26:41 +0000 (17:26 +0000)]
Fixed both the GLES & VK builds for LibUV-X11 & GLIB profiles

Change-Id: I5bab5c28a90f4c34aff9f143d758403ea07ec99c

2 months agoMerge "Allow Capture files to be built for Vulkan too" into devel/master
Adeel Kazmi [Wed, 18 Dec 2024 15:40:19 +0000 (15:40 +0000)]
Merge "Allow Capture files to be built for Vulkan too" into devel/master

2 months agoMerge changes Ia50a8092,Ieb8d5c62 into devel/master
Eunki Hong [Wed, 18 Dec 2024 00:41:43 +0000 (00:41 +0000)]
Merge changes Ia50a8092,Ieb8d5c62 into devel/master

* changes:
  Call glFlush after create sync
  (TV only) Create NativeTexture sync after eglSwapBuffer

2 months agoAllow Capture files to be built for Vulkan too 30/316730/1
Adeel Kazmi [Tue, 17 Dec 2024 15:21:57 +0000 (15:21 +0000)]
Allow Capture files to be built for Vulkan too

- Added a check when creating Capture to only work with the GLES backend for now
- Only reason Capture taken out was because of NativeImage which is compiled in for
  Vulkan, just not implemented yet.

Change-Id: Id471d44030ae9115e194deecd4ab6cf17f5eda08