Eunki, Hong [Mon, 25 Apr 2022 04:26:46 +0000 (13:26 +0900)]
Calculate EncodedImageBuffer's hash in generate time
Change-Id: I3afb828d14372f68145c1fdca4db8e52ed31f9c2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Seungho BAEK [Mon, 25 Apr 2022 02:47:43 +0000 (02:47 +0000)]
Merge "Webp-loading, Fix svace issue and change the way to get animation flag" into devel/master
David Steele [Fri, 22 Apr 2022 13:10:03 +0000 (13:10 +0000)]
Merge "DALi Version 2.1.19" into devel/master
Adeel Kazmi [Fri, 22 Apr 2022 12:54:23 +0000 (13:54 +0100)]
DALi Version 2.1.19
Change-Id: I838159099a5014273072f66d5fcc7154e62d2d9a
sunghyun kim [Fri, 22 Apr 2022 03:03:50 +0000 (03:03 +0000)]
Merge "Save value to prevent duplicate deletion" into devel/master
Wonsik Jung [Thu, 21 Apr 2022 07:47:58 +0000 (07:47 +0000)]
Merge "Supports to re-calculate window position and size for window rotation" into devel/master
Wonsik Jung [Fri, 15 Apr 2022 08:53:39 +0000 (17:53 +0900)]
Supports to re-calculate window position and size for window rotation
Supports to re-calculate window position and size when partial size window is rotated.
It is needed when the rotated window is resized or moved.
Because window system APIs work on the default coordinate system
and application sets the window position and size on current orientation.
In addtion, fix the bug invalid touch coordinate when window's size is partial.
Change-Id: I65ce5ca5452e84faf732bb64071ed1977444de7f
Seungho BAEK [Thu, 21 Apr 2022 05:13:57 +0000 (05:13 +0000)]
Merge "Transfer uploadOnly flag to the core and update manager" into devel/master
seungho [Thu, 21 Apr 2022 03:04:35 +0000 (12:04 +0900)]
Webp-loading, Fix svace issue and change the way to get animation flag
Change-Id: I1043bc99f1bdbaf0a05f7bf4107495e759309b9f
Signed-off-by: seungho <sbsh.baek@samsung.com>
tscholb [Thu, 21 Apr 2022 02:46:53 +0000 (11:46 +0900)]
Save value to prevent duplicate deletion
If TriggerEvent is deleted in TriggerEvent::Triggered(),an incorrect value may be written to mOptions.
In this case, duplicate deletion occurs and a collision occurs.
To prevent this, the mOptions value was modified to be stored locally.
Change-Id: I37d149297e707a75eecd6cbd75a1a20307d62ace
seungho [Mon, 18 Apr 2022 06:59:22 +0000 (15:59 +0900)]
Transfer uploadOnly flag to the core and update manager
- uploadOnly flag is transferred to the update manager to do not change render-task state
- uploadOnly flag that has been transferred to the render manager is removed.
Change-Id: I06862bd376a0eacc7cd0a1f0a00b028bd249cad3
Signed-off-by: seungho <sbsh.baek@samsung.com>
Heeyong Song [Thu, 3 Feb 2022 07:10:18 +0000 (16:10 +0900)]
Support YUV decoding for JPEG
Change-Id: Ie7fddb22e70159821c27fb2ca1ccc2db19fe1ec4
Seungho BAEK [Fri, 15 Apr 2022 05:32:06 +0000 (05:32 +0000)]
Merge "Refactoring webp-loading and loader-webp" into devel/master
Shinwoo Kim [Fri, 15 Apr 2022 04:50:14 +0000 (04:50 +0000)]
Merge "[AT-SPI] Window: add highlight signal" into devel/master
Shinwoo Kim [Tue, 12 Apr 2022 08:23:31 +0000 (17:23 +0900)]
[AT-SPI] Window: add highlight signal
The Window will highlight itself on NUI side.
The GrabHighlight emits the Highlight signal.
Change-Id: I2296685688056359afe5ce807d0b61deb280c091
Richard Huang [Thu, 14 Apr 2022 10:35:05 +0000 (11:35 +0100)]
DALi Version 2.1.18
Change-Id: Ib924ba91d21f108e8d7604f9b0d2237d5b61ff04
seungho [Mon, 11 Apr 2022 13:38:00 +0000 (22:38 +0900)]
Refactoring webp-loading and loader-webp
- Remove duplicate code(To use WebPLoading from LoaderWebP)
- Use header flag to define the webp is animated or not.
Change-Id: I9118bd77aa6c1d3430b4d90ca62069f24331d82e
Signed-off-by: seungho <sbsh.baek@samsung.com>
Seungho BAEK [Wed, 13 Apr 2022 12:28:26 +0000 (12:28 +0000)]
Merge "Fix SVACE issue." into devel/master
David Steele [Wed, 13 Apr 2022 11:21:42 +0000 (11:21 +0000)]
Merge "Sort samplers in vertex shader first and then fragment shader" into devel/master
seungho [Wed, 13 Apr 2022 01:56:20 +0000 (10:56 +0900)]
Fix SVACE issue.
- Initialize framebuffer pointer.
Change-Id: I27bb4fa11c0ba348180d6818486e2a615335f9e6
Signed-off-by: seungho <sbsh.baek@samsung.com>
Seungho BAEK [Tue, 12 Apr 2022 12:48:21 +0000 (12:48 +0000)]
Merge "Refactoring Animated image loading" into devel/master
seungho [Wed, 24 Nov 2021 04:46:35 +0000 (13:46 +0900)]
Refactoring Animated image loading
- Open file in the first call to request frame.
- In case of WebP, load one more frame in the first loop to compute exact time interval.
Change-Id: I03a3b79af278c64d7911d4c65ad300bd09d76bfd
Signed-off-by: seungho <sbsh.baek@samsung.com>
Richard Huang [Mon, 11 Apr 2022 15:35:53 +0000 (16:35 +0100)]
Sort samplers in vertex shader first and then fragment shader
Change-Id: Ic46d65f219d5b0784ba969650fccc02de926639f
David Steele [Mon, 11 Apr 2022 14:20:09 +0000 (14:20 +0000)]
Merge "Test harness sync" into devel/master
Shinwoo Kim [Mon, 11 Apr 2022 05:43:39 +0000 (14:43 +0900)]
[AT-SPI] Fix a build break
There was a build error caused by ecore_wl2_window_resource_id_get
that is available from Tizen 7.0
Change-Id: I1716261c376a32dcec5100f8d5788645d69e8364
Heeyong Song [Mon, 11 Apr 2022 00:53:10 +0000 (00:53 +0000)]
Merge "Fix texture upload max buffer size" into devel/master
David Steele [Fri, 8 Apr 2022 16:17:43 +0000 (17:17 +0100)]
Test harness sync
Change-Id: I61ba20bc29cfafafe04e78d76fee33406f002856
David Steele [Fri, 8 Apr 2022 12:01:36 +0000 (12:01 +0000)]
Merge "DALi Version 2.1.17" into devel/master
David Steele [Fri, 8 Apr 2022 11:54:41 +0000 (12:54 +0100)]
DALi Version 2.1.17
Change-Id: I14d49acf0f62bfce36df7b341d2a12f6b8be38d7
Heeyong Song [Fri, 8 Apr 2022 09:36:27 +0000 (18:36 +0900)]
Fix texture upload max buffer size
Change-Id: Ib90f4bf1a05b926b28c60574b3de24866dfe80ed
Shinwoo Kim [Fri, 8 Apr 2022 06:54:36 +0000 (06:54 +0000)]
Merge "[AT-SPI] Add resource id to window attribute" into devel/master
Heeyong Song [Thu, 3 Feb 2022 05:21:57 +0000 (14:21 +0900)]
Add stride to PixelBuffer
Change-Id: I9f7c46e63b78e186a2bb47deb63d35d5a5102f5f
Shinwoo Kim [Mon, 4 Apr 2022 10:42:37 +0000 (10:42 +0000)]
Merge "[AT-SPI] do not keep window in ApplicationAccessible" into devel/master
Shinwoo Kim [Thu, 31 Mar 2022 11:02:02 +0000 (20:02 +0900)]
[AT-SPI] do not keep window in ApplicationAccessible
There is not a reason to keep window in ApplicationAccessible to emit
window related signals.
Moreover, keeping window increases the reference count.
In multi window case, Window.Reset() for the second window
cannot make ~Window() is called because of the reference count is not 0.
Change-Id: I13f636b12c62a29dc976602446b5dc13f2b521cb
Eunki Hong [Mon, 4 Apr 2022 07:56:45 +0000 (07:56 +0000)]
Merge "Don't cache colorMap pointer." into devel/master
Eunki, Hong [Fri, 1 Apr 2022 10:03:18 +0000 (19:03 +0900)]
Remove build warnings
Remove some annoying build warnings
Change-Id: I60065818ec8fa32d90a12258cb75d6d5e70977c2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 1 Apr 2022 12:26:46 +0000 (21:26 +0900)]
Don't cache colorMap pointer.
Some gif image failed to load the image map.
Maybe giflib re-use the memory of ColorMapPtr internally.
This patch make we don't cache localColorMapPtr and make always
generate colormap vector.
Due to the generating frequency, I increase the threshold a little.
Change-Id: Ie91723f0053f762d65c7ff3d25f74a1a6276b61b
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Fri, 1 Apr 2022 12:07:49 +0000 (12:07 +0000)]
Merge "DALi Version 2.1.16" into devel/master
Adam Bialogonski [Fri, 1 Apr 2022 11:51:34 +0000 (12:51 +0100)]
DALi Version 2.1.16
Change-Id: Ide75a32473e1bd06bb0a76c63dac0fd59efd433d
Shinwoo Kim [Fri, 1 Apr 2022 07:06:38 +0000 (07:06 +0000)]
Merge "[AT-SPI] Introduce AtspiEvents" into devel/master
Taehyub Kim [Fri, 1 Apr 2022 04:59:26 +0000 (04:59 +0000)]
Merge "drag-and-drop: add const prefix to member data of DragData" into devel/master
Eunki, Hong [Thu, 31 Mar 2022 14:22:19 +0000 (23:22 +0900)]
Reduce API call of FillFrame at gif-loading.
If previous frame's rect area is EQUAL with current frame's rect area,
we don't need to call FillFrame.
Because we will iterate that rect area in DecodeImage function.
In that case, Instead of call FillFrame, We just notify DecodeImage
Should fill background as specific color.
It will reduce most of case. Actually, If first frame, we access each pixel
Twice previous. This patch will reduce that access count.
Change-Id: Ica5fe669b6b553dbe55f054da5471dae865595a1
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Wed, 16 Mar 2022 18:58:16 +0000 (03:58 +0900)]
Minor optimization on image loading
1. Wrap DALI_UNLIKELY if there was some system / file error.
e.g. fread, fseek faild. malloc faild. image size or format not valid.
2. Reduce Dali::Vector operation more times.
When we use fixed size of Dali::Vector, use void * or std::uint8_t*
instead of &vector[0]. It's for reducing function call of operator[]
so we don't check index range, so we don't call Dali::Vector::Count().
3. Don't setup initial value of buffer for some cases.
Note. gausian-blur.cpp defect will be fixed in Heeyong's stride patch.
4. Reduce useless operations on loader-ico.cpp
Previous code use 4 times memory + buffer overflow error exist
when bitcount is 1 + read mask buffer only for each line. not whole buffer.
Change-Id: I28cdd7468ec4d573e53f4f6f7ad2345bca60b273
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Taehyub Kim [Wed, 30 Mar 2022 10:59:45 +0000 (19:59 +0900)]
drag-and-drop: add const prefix to member data of DragData
Change-Id: I5988f5200acab6c08f529ae4a506576ce65bff23
Shinwoo Kim [Fri, 25 Mar 2022 07:53:38 +0000 (16:53 +0900)]
[AT-SPI] Add resource id to window attribute
The window resource id is unique value in the system.
This value can be used in screen-reader to support multi-window.
The screen-reader will use this to find a window at xy position.
Change-Id: Icf27d260790eca5ae7768a7df4bdd906d5fd2e23
Eunki Hong [Tue, 29 Mar 2022 14:04:21 +0000 (14:04 +0000)]
Merge "Cache default fontDescription + use default when fontDescription empty" into devel/master
Eunki, Hong [Thu, 24 Mar 2022 08:44:13 +0000 (17:44 +0900)]
Cache default fontDescription + use default when fontDescription empty
When font description is empty, we will validate font in ValidateFont function.
And inside of that function, fontDescription become mDefaultDescription.
Due to the validateId is not matched, we always fail to get cached font info.
This patch make realFontDescription = mDefaultDescription
when input fontDescription family information is broken, so we can use
font cache feature well.
And also, ValidateFont API runtime is too long. So when we get default
font description, caching it immediatly. It will make that normal case
don't call ValidateFont API.
Change-Id: Iacb8ff84f159da5ee0d80f90c47001da54035e7e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Artur Świgoń [Thu, 17 Mar 2022 10:49:08 +0000 (11:49 +0100)]
[AT-SPI] Add WebEngine::GetAccessibilityAddress()
It is necessary to know the address of the root of the AT-SPI tree
created by Chromium in order to be able to embed it as a subtree in
a DALi application.
Change-Id: I015d6ebbd0ccdad08a4d25889086d8b4bd0e42a2
Eunki Hong [Mon, 28 Mar 2022 13:21:53 +0000 (13:21 +0000)]
Merge "Cache gif colormap so make gif-loading faster" into devel/master
Eunki Hong [Mon, 28 Mar 2022 10:35:25 +0000 (10:35 +0000)]
Merge "TTrace enable always in tizen + Add TTrace for some DALi's API" into devel/master
Shinwoo Kim [Mon, 28 Mar 2022 08:10:15 +0000 (08:10 +0000)]
Merge "[AT-SPI] Add ScreenReaderEnabled, Disabled" into devel/master
Eunki, Hong [Mon, 21 Mar 2022 09:08:16 +0000 (18:08 +0900)]
TTrace enable always in tizen + Add TTrace for some DALi's API
Make ttrace enable always in tizen + trace marker for some dali operation
HOW TO USE :
- build
In tizen, we turn on ttrace log. If you want to use ttrace in other platform,
(cmake) -DENABLE_TRACE=ON
- run
set environment like below
export DALI_TRACE_COMBINED=true (false in default)
export DALI_TRACE_APPLICATION=true (true in default)
export DALI_TRACE_FRAMEWORK=true (true in default)
export DALI_TRACE_EGL=true (true in default)
DALI_TRACE_COMBINED will trace every frames.
So they setup as false in default.
If you want to get the result every frame, you can setup environment as 'true'
Change-Id: Ie58cb0b9839c68a4824e3fdddd1ef96dddb5a2aa
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adeel Kazmi [Fri, 25 Mar 2022 10:56:59 +0000 (10:56 +0000)]
DALi Version 2.1.15
Change-Id: Id276a7a094def05f5ce4b9213718cc71a627d5ee
Shinwoo Kim [Thu, 10 Mar 2022 15:14:56 +0000 (00:14 +0900)]
[AT-SPI] Introduce AtspiEvents
The AtspiEvents can be used for the event mask to suppress
specific event.
Change-Id: I9c639a543c7c5b0db8c813c5a599c2148ea655b3
Eunki, Hong [Tue, 22 Mar 2022 12:56:36 +0000 (21:56 +0900)]
Cache gif colormap so make gif-loading faster
gif type file only allow to hold 256 kind of color.
Previous code check the index of code, and next generate 1 integer.
(the function name as PixelLookup)
This patch pre-calculate the result of PixelLookup.
So we can reduce the bitwise operation + ColorMap access time.
Change-Id: I31f00a6a25b6669582d4edf86b2e7bd6d621a020
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
tscholb [Wed, 23 Mar 2022 06:40:59 +0000 (15:40 +0900)]
Fix build error on callback of widget
Widget's new keyEvent only work over tizen 7.0.
For avoid build error, i added this patch
Change-Id: I3ee52451e75ef1e6ca6fd64abd2c4b134d864dd2
Eunki, Hong [Mon, 21 Mar 2022 09:10:47 +0000 (18:10 +0900)]
Resolve svace issue (non-return API)
Change-Id: I6ebb501d0896380bc0ee58727d0fc3ce8798ed59
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
sunghyun kim [Mon, 21 Mar 2022 07:32:22 +0000 (07:32 +0000)]
Merge "Add SyncKeyEvent for Widget" into devel/master
Adam Bialogonski [Wed, 16 Mar 2022 14:24:11 +0000 (14:24 +0000)]
DirectRendering:
- Implemented DrawNative() command for GL
- Creating individual context for native rendering (per window)
Change-Id: I45e9a3d938d654c1b660370c8cf3b5f91eea9c33
Eunki, Hong [Wed, 16 Mar 2022 12:24:30 +0000 (21:24 +0900)]
Wbmp load faster
1. Remove useless memcpy.
2. bit operation more faster
Change-Id: I7db9a239159670e7a3a22a3c2c951b7da0cd4e59
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Fri, 18 Mar 2022 11:57:20 +0000 (11:57 +0000)]
Merge "Fix crash issue when we decode some bmp" into devel/master
Richard Huang [Fri, 18 Mar 2022 11:23:24 +0000 (11:23 +0000)]
DALi Version 2.1.14
Change-Id: Iafb2cc1aaec7f680f9ae06b8847825c693f396d1
Eunki, Hong [Fri, 18 Mar 2022 08:18:38 +0000 (17:18 +0900)]
Fix crash issue when we decode some bmp
Some code use 'char' instead of 'unsigned char'.
and next, try to convert that value as 'unsigned int'
If char value was 255 (== -1), converted value become INT_MAX.
This patch make BMP decoder use correct data format
Change-Id: I4f08e28c916eb34f2d06da452b6dde6638d1789b
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
tscholb [Thu, 20 Jan 2022 12:35:44 +0000 (21:35 +0900)]
Add SyncKeyEvent for Widget
In the past, the WidgetApplication used the keyEvent using the screen connector's API.
However, this API is not synchronized.
So WidgetView cannot get feedback from WidgetApplication.
To solve this problem, AppFramework provides a new API to send keyEvent with sync.
So we add a new callback to use this API.
Plus,
Widget Application also needs a new API to send an alarm to the WidgetView when it uses a keyEvent.
So we add a new API called SetUsingKeyEvent().
Change-Id: I92c00b57dfe1c72baadb9fc082e253b1a0385d14
Shinwoo Kim [Tue, 15 Mar 2022 06:40:58 +0000 (15:40 +0900)]
[AT-SPI] Add ScreenReaderEnabled, Disabled
ScreenReaderEnabled should be distinguished from IsEnabled.
This is because there are things to do only when the screen reader is enabled.
Change-Id: Ibd9fd26380ef09b8c795696d9f320e0056c2bc41
Taehyub Kim [Wed, 16 Mar 2022 01:43:36 +0000 (18:43 -0700)]
DragAndDrop: disable default cursor while dragging
Change-Id: I4f3a0b4bc34f6b7846800d8e01daf6c5d63b3b2b
David Steele [Fri, 11 Mar 2022 15:21:51 +0000 (15:21 +0000)]
DALi Version 2.1.13
Change-Id: I88d6a6dee053b5729bd45106246a2c3bf41a363e
David Steele [Thu, 10 Mar 2022 14:46:43 +0000 (14:46 +0000)]
Test harness sync
Change-Id: I5eb7873c01501e66ed1b94f5463dbbea407c4236
David Steele [Thu, 10 Mar 2022 11:15:29 +0000 (11:15 +0000)]
Merge "Test harness sync" into devel/master
Eunki, Hong [Thu, 10 Mar 2022 07:23:03 +0000 (16:23 +0900)]
Fix coverity issue on jpeg loader : Add null check
Add some null checker branch on loader-jpeg-turbo which can be nullptr
Change-Id: I28d6a5c112ef8922beaf0597fc168d25d25465e1
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Shinwoo Kim [Thu, 10 Mar 2022 01:35:58 +0000 (01:35 +0000)]
Merge "[AT-SPI] text: add "GetRangeExtents" interface" into devel/master
David Steele [Mon, 28 Feb 2022 11:46:18 +0000 (11:46 +0000)]
Test harness sync
Change-Id: I9a5c6ea9faa193e67751b1fd9c9e129cc045df92
Artur Świgoń [Fri, 4 Mar 2022 13:21:27 +0000 (13:21 +0000)]
Merge "[AT-SPI] Add Socket interface" into devel/master
David Steele [Fri, 4 Mar 2022 11:20:35 +0000 (11:20 +0000)]
Merge "DALi Version 2.1.12" into devel/master
Adeel Kazmi [Fri, 4 Mar 2022 10:00:51 +0000 (10:00 +0000)]
DALi Version 2.1.12
Change-Id: Id84ef48d43da2173e9f025124d41bf0d1d7d89b3
Taehyub Kim [Fri, 4 Mar 2022 06:01:59 +0000 (06:01 +0000)]
Merge "dnd : Added more functions to drag and drop." into devel/master
Shinwoo Kim [Mon, 28 Feb 2022 07:46:23 +0000 (16:46 +0900)]
[AT-SPI] text: add "GetRangeExtents" interface
This interface will be used for getting MBR(Minimum Bounding Rectangle)
with following usage on the AT client side.
cc = atspi_text_get_character_count(text, NULL);
rect = atspi_text_get_range_extents(text, 0, cc, ATSPI_COORD_TYPE_WINDOW, NULL);
Change-Id: Iea4881269ee53807d75c0236c35672be7208fdac
Taehyub Kim [Thu, 24 Feb 2022 13:04:05 +0000 (22:04 +0900)]
dnd : Added more functions to drag and drop.
- Add DragData struct for StartDragAndDrop API which supports mime type to identify drag data type
- Add mime type to DragEvent to know drag data type when drag data is received
- Add RemoveListener API to pair with the AddListener API
Change-Id: I6d262874adb88bed78090288ca6694d5bd030fe2
David Steele [Wed, 2 Mar 2022 14:26:26 +0000 (14:26 +0000)]
Merge "Speedup image channel operation + alpha masking + etc" into devel/master
Seoyeon Kim [Wed, 2 Mar 2022 07:14:49 +0000 (07:14 +0000)]
Merge "[AT-SPI] Rework Accessible::GetInterfaces()" into devel/master
Eunki, Hong [Fri, 25 Feb 2022 06:08:15 +0000 (15:08 +0900)]
Speedup image channel operation + alpha masking + etc
Refactoring image channel selection algorithm.
Previous version run some unneccessary iterations
to select the offset of channel.
This patch change that we use offset pre-calculated table.
Now we can select & apply O(1) time complexity.
+
Remove unneccessary float operation during alpha masking.
+
Add some more dark magics on linear interpolation jobs.
+
Add some more dark magics on scanline.
Before patch reduced only each-line. This patch also reduce between-line operation
This patch, we can calculate 8 components in one operation.
Change-Id: I3b1ce7abbd5d719cd580c789167970e9012e3dbd
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adam Bialogonski [Fri, 25 Feb 2022 11:47:11 +0000 (11:47 +0000)]
DALi Version 2.1.11
Change-Id: Id51d322b6020b35ba54898ab62f52d9525b51a3a
Artur Świgoń [Tue, 15 Feb 2022 10:03:10 +0000 (11:03 +0100)]
[AT-SPI] Add Socket interface
Change-Id: I199c18011d24f7984e5f4cb95b5e626a418ab2ec
Artur Świgoń [Tue, 8 Feb 2022 08:19:46 +0000 (09:19 +0100)]
[AT-SPI] Rework Accessible::GetInterfaces()
This patch:
* Introduces an AtspiInterface enumeration with all possible AT-SPI
interfaces and an AtspiInterfaces collection (using EnumBitSet), and
changes the return type of Accessible::GetInterfaces() to
AtspiInterfaces. The new, compact storage format allows the collection
of interfaces to be cached. Interfaces will be queried even more often
with the upcoming polymorphic NUIViewAccessible. Thus, it makes sense to
introduce such an optimization, and checking whether a bit is set in a
4-byte bitmask is significantly cheaper than performing a series of
dynamic_cast's every time GetInterfaces() is called. Such calculation is
only performed once by a new virtual method, DoGetInterfaces().
* Adds a new static method Accessible::GetInterfaceName() which converts
an AtspiInterface value to a string identifier used in DBus
communication, which allows to remove most of the macro definitions in
accessibility-common.h.
* Adds some missing operators to Accessibility::BitSet and EnumBitSet.
* Introduces a template type resolver AtspiInterfaceType which converts
an AtspiInterface value to a native C++ type, and adds
Accessible::DownCast() which uses this helper to check both the return
value of GetInterfaces() and the result of dynamic_cast. This double
checking is required by the upcoming NUIViewAccessible. As a possible
optimization, dynamic_cast could be changed to static_cast for release
builds in the future (which should be safe as long as DoGetInterfaces()
is implemented correctly).
* Adds a new template method FindCurrentObjectWithInterface() to
BridgeBase in order to centralize previously duplicated error return
logic in implementations of FindSelf() in various Bridge classes, which
differed only in the target type and interface name to be reported in
the error DBus reply.
* Adds a new virtual method Accessible::DoGetInterfaces() which allows
any derived classes to customize (specifically, narrow down) the set of
interfaces visible to DBus callers (and FindCurrentObjectWithInterface()
respects that). This is the first step towards allowing NUI controls to
freely implement AT-SPI interfaces (currently they have to choose from a
small predefined set of NUIViewAccessible-derived classes due to the use
of dynamic_cast).
Change-Id: I14428ec20693a9b121d40ac1b12b6e30c709d313
Eunki Hong [Wed, 23 Feb 2022 17:39:51 +0000 (17:39 +0000)]
Merge "Make some image operation as bitwise operation + Reduce alpha-masking op" into devel/master
David Steele [Wed, 23 Feb 2022 17:13:35 +0000 (17:13 +0000)]
Merge "Implement some more speed-up : don't copy geometry" into devel/master
Eunki, Hong [Wed, 23 Feb 2022 12:50:05 +0000 (21:50 +0900)]
Make some image operation as bitwise operation + Reduce alpha-masking op
Make some simple arithmetic (and computer don't friendly) operations as
2-bit bitwise (and computer friendly) operations.
+
Tiny optimizer when premultiply alpha image pixels
Change-Id: Iff1878d7a6709d54a59cea5cffd55c69cbb7b0cb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Michal Maciola [Mon, 21 Feb 2022 13:30:47 +0000 (14:30 +0100)]
VectorImageRenderer: Fix data released in case of async loading
If thorvg is used by multiple processes it can't be guaranteed that particular
amount of threads will be used. Especially if we choose to work synchronously,
another process may force it to run asynchronously.
This patch changes copy parameter of load() to true, so to assure that in case
of asynchronous execution the data will not be released before the vector
image loaded.
It also adds printing of the return code in case of mSwCanvas->draw() failure.
Change-Id: I539323768d9fa0be0aeb165b161086973efddd8b
Eunki, Hong [Tue, 22 Feb 2022 12:48:33 +0000 (21:48 +0900)]
Implement some more speed-up : don't copy geometry
Make some GraphicsCommand API's input as const vector<>&
These will not copy the internal values. and also we can assume that
inputed data didn't change in that API.
Change-Id: Iffd0e53aa114ccf194b63b1ae9648d7729e9b763
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Seoyeon Kim [Tue, 22 Feb 2022 07:27:59 +0000 (16:27 +0900)]
Fix Coverity issue
- Initialized mData, which is std::array type, explicitly.
Then, BitSet constructor does not need to fill it with zero.
Change-Id: I40bd13bab1603633afc21a25917f361553b9a402
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
David Steele [Mon, 21 Feb 2022 12:29:24 +0000 (12:29 +0000)]
Fixing static analysis failures
Change-Id: I8239a1648da1c1b91dc366af8f1bb178e3f25bd7
Adeel Kazmi [Fri, 18 Feb 2022 11:13:05 +0000 (11:13 +0000)]
Merge "DALi Version 2.1.10" into devel/master
Richard Huang [Fri, 18 Feb 2022 11:01:20 +0000 (11:01 +0000)]
DALi Version 2.1.10
Change-Id: Ic308305d4d1ccccdd98a25efaf5d3b7e4b37f3c0
Eunki, Hong [Fri, 18 Feb 2022 07:22:41 +0000 (16:22 +0900)]
Remove graphics-api relative codes in public-api/application.h
graphics-api is not public.
so when someone try to include #include<dali/dali.h>, It occure complie error
due to dali/graphics-api/graphics-controller.h is not exist.
This patch remove that temperal codes, and make it compilable
Change-Id: I94404d36f223ea35213bf4f137f9b1d947aae165
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Taehyub Kim [Fri, 18 Feb 2022 04:13:01 +0000 (04:13 +0000)]
Merge "dali-adaptor: Multi-Window DnD Feature Implementation" into devel/master
Wonsik Jung [Fri, 18 Feb 2022 03:00:41 +0000 (03:00 +0000)]
Merge "Add Maximize/Minimized in Window" into devel/master
joogab.yun [Fri, 28 Jan 2022 04:13:23 +0000 (13:13 +0900)]
Add WheelEventGeneratedSignal and add clockwise value
Previously, RotaryEvents could always be received only by window.
Now, User can receive Rotary Events in focused View as well.
It is also possible to propagate events to the parent view.
If there is no focused View, the window will receive the event.
This only applies to Rotary Event(CustomWheel type).
Change-Id: I0c732811213b5f319e663132449be05e8c651547
Eunki, Hong [Wed, 16 Feb 2022 02:51:43 +0000 (11:51 +0900)]
Change more Vector::Resize in file downloader + Add missing comments
Change more jobs with buffer-relative resizes
+
Do some missing code style relative job. actually, copyright change.
Change-Id: I9ac8b7a69ec43df552a1bc367a2a0c5abb95c07d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Hosang Kim [Mon, 22 Nov 2021 05:54:48 +0000 (14:54 +0900)]
Add Maximize/Minimized in Window
1. Add Maximize/Minimized in Window.
This functions set maximized window or minimized window.
It is to support window border in client side.
2. Add log for egl window surface
For debugging, add log to print egl window surface's instance.
3. Fix window move or resize by display server.
When window is moved or resized by display server, DALi got configure notification event.
If DALi receives this event, DALi should not called ecore-wl2 window's move/resize function.
Change-Id: I0d1296996d9b6be152f7588913f1a16fef48f6df
Eunki, Hong [Tue, 15 Feb 2022 12:38:56 +0000 (21:38 +0900)]
ResizeUninitialized for some memory copy actions
For some dest of memory copy action, they don't need to initialize.
And previous Dali::Vector.Resize action repeat PushBack().
This patch replace these resize action as ResizeUninitialized() function.
That function just Reserve + SetCount so don't initialize data internally.
Most of memory-related jobs don't care about the number of items
Inside of Dali::Vector. So it is effective
It make jpg image load more faster
Change-Id: I0c429e73ad20469384910df971d8922b53fc9192
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>