Seats are not implemented, if there is a type mismatch promises are
going to be rejected. Most of this code is copied over from
selection_manager.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11195
i dont know why we skipped the first two atoms, but right now, if a
application is only providing one single target, we would crash.
With this we might copy a few atoms more. However, these atoms do not
matter, as we skip those, that we cannot understand
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11194
we need that in order to get seleciton per window events, which is
required to get a nice mapping onto the ecore_evas object.
Reviewed-by: Carsten Haitzler (Rasterman) <rasterman.com>
Reviewed-by: Chris Michael <cp.michael@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11193
The idea of copy and paste here is:
- The user specifies the content he wants to have in the selection
buffer with a Eina_Content, these content pointer ownerships are
passed to the called. Internally ecore_evas code will memorieze the
pointer, and pass on function callbacks to the modules, which then do
not have to deal with the ownership.
- In case the module does not specify these APIs, the callback
implementation will be called, which only works for cnp *not* dnd.
- Action and mime types are handled as strings, which allows way better
custom organisations.
(The docs needs improvement)
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11192
A little abstraction to have abstract data content bound to a type.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D11018
This patch fixes an issue detected by Coverity in that 'sdp' is
already being dereferenced before we check it. ELM_WIN_DATA_GET can
return NULL, so we should check it's return Before trying to use the
variable.
Fixes CID1419871
This patch adds a small check for a valid 'obj' variable inside the
object_intercept macros, which fixes several Coverity reported issues
of NULL pointer dereference.
Fixes CID1420239 through CID1420258
this is now handled when eo is erroring.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11464
this is usefull, as we now know which type of part we have, if a API
call does not succeed.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11463
that is usefull esp. on parts.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11462
ensure that these functions are still usable with async load
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11424
when this property is set, the mixin implementation of efl_file_load() is
never called, which means the internal loaded flag (and related data) is
not set, and so the values for these properties must instead be returned
directly from the image data
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11423
this is a bit ugly, but in the case where skip_head is used it's important
to propagate the resulting Eina_File back up to the image object's data
for use in other api functions
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11422
As per mailing list discussion, This macro is apparently a forward
facing API so we should be using efl_data_scope_safe_get in the event
that the API receives an object of the wrong type (which would have
caused a crash previously).
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11450
Small patch to reduce the number of calls to efl_data_scope_get as per
mailing list discussion. Since the
EVAS_OBJECT_INTERCEPT_CALLBACK_DEFINE macro already retrieves the
protected data via efl_data_scope_get, we can just pass that
protected data directly to evas_object_intercept_init/deinit functions
without the need to refetch it.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11449
we implement the API from it, so we should have that as a type here.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11447
If elm_object_item_del is called in pop_cb and pop_cb returns
EINA_FALSE, then the given item is destructed by _item_noref when
efl_unref is called after pop_cb.
After the above destruction, efl_del is called after the above efl_unref
and it deletes the item again.
Not to delete item after the item is destructed, efl_del after pop_cb is
removed.
Summary:
Legacy event info have canvas and output coordinates.
Output coordinates have information of original position.
Canvas coordinates have information of transformed position.
So keep backward compatibility, fix filling legacy information.
This reverts commit 7f724f6c5d
Reviewers: Hermet, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11445
For now, only create textgrids when needed. Also improve other
regions of the widget. This will improve large file support and
also some rendering of the widget.
This improves performance 1-2 times. However, there must be a
reasonable redesign regarding the current use of textgrids.
Summary: this is useful for tracking surfaces of specific clients
Reviewers: bu5hm4n, devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11438
Allocated but never used (and never freed). Seems like a copy and paste
bug to me.
CID: 1412363
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11442
Make sure we free the iterator here as well.
CID: 1409658
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11441
ensure that tap continues working after complex gestures
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11440
these end up triggering a lot of corner cases in other recognizers too,
but the tests themselves are fairly minimal
Differential Revision: https://phab.enlightenment.org/D11391
need to always make sure we set this when a gesture is being tracked so
we know which touch point we're watching
Differential Revision: https://phab.enlightenment.org/D11387
it's not enough to just check the value for this in the recognizer; we need to
always modify the recognizer property here to correctly manage object lifetimes
and generate the correct events (e.g., not emitting momentum gestures while
multiple fingers are moving simultaneously)
also update a couple existing unit test checks which were wrong
Differential Revision: https://phab.enlightenment.org/D11386
if the recognizer is processing using a touch point other than the first finger,
e.g., in the case where multiple fingers are pressed simultaneously, then
the recognizer needs to also detect distance based on that finger
more fixes for triggering tap events while fingers are moving
Differential Revision: https://phab.enlightenment.org/D11385
when a gesture ends and is not set to continue, the gesture object must
be preserved until the entire touch sequence ends in order to ensure that
all the touch point states are accurately detected and updated and so
additional instances of that gesture are not accidentally triggered
this fixes weird corner cases where you could tap with two fingers and
then get a long press event while dragging the second finger around as
long as you did it quickly enough
Differential Revision: https://phab.enlightenment.org/D11384
this is a 1:1 port with minimal changes other than what's necessary to
integrate into the new framework
Differential Revision: https://phab.enlightenment.org/D11383
this is consistent with the rest of efl naming
ref T8503
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D11376
this adds a simple custom gesture implementation with basic motion
accumulator properties to verify (and give an example of) the custom
gesture capability that can be used by apps alongside custom recognizers
Differential Revision: https://phab.enlightenment.org/D11352
when the mouse motion was used, we need to mark this event as processed.
Otherwise a click event will be emitted which is wrong.
Additionally, we should only scroll when we are definitly not clicking.
Right now, the scrolling animation would dance arround on a real TS.
Additionally², this commit introduces a little macro which calculates
the distance of a position.
Evaluate return code of mkdir() and print error if it fails.
CID: 1419844
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11429
This reverts commit 3d57fc0c92.
The change broke elementary tests on my local machine as well as on CI.
Please redo the change and bring it back after testing with the test
suites we have.
Summary:
EFL should guarantee size of label in various situations that the label is resized.
elm_layout_sizing_eval called on on_label_resize.
Test Plan: N/A
Reviewers: YOhoho, zmike, Hermet
Reviewed By: Hermet
Subscribers: cedric, #reviewers, Hermet, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11435
In commit 8cb0b193ea the logic was changed and we could return here
without free'ing the plain_text resource we allocated. Make sure we
handle this even on the error case and early return.
CID: 1408481
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11433
Coverity pointed these out as we deferences after null check.
Looking into it showed these use of a bitwise operator on vars where it
does not make any sense (to me). They look like wrongly done NULL
checks. Switchign them over to a logical OR operator.
CID: 1419876, 1419869, 1419868, 1419862, 1419854, 1419849
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11432
If dt equals EX_FONTS_DIR we would have returned already.
CID: 1419879
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11430
Handle the error case and propagate the error upwards.
CID: 1419855
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11428
Summary:
If use ein_str_split, have to free the first element of the array
and free the array.
Test Plan: N/A
Reviewers: Hermet, YOhoho, bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11419
strdup() would not be happy about a NULL to copy, but we have
eina_strdup in place already to handle this gracefully.
CID: 1419846
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11421
Check if we can initialize correctly and return failure if not.
CID: 1419872, 1419864, 1419867, 1419850
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11420
Before we leave the fucntion here we need to free our temporaray paths
variable.
CID: 1419860
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11411
Allocate extra space for the terminating null byte and / of the string.
Switch to snprintf() as well.
CID: 1419863
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11410
Summary:
remove warnings.
../src/tests/elementary/suite_helpers.c:779:86: warning: ?idy2? may be used uninitialized in this function [-Wmaybe-uninitialized].
...
Test Plan: N/A
Reviewers: YOhoho, Hermet, Jaehyun_Cho
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11417
Summary:
remove warnings.
../src/bin/elementary/test_ui_spotlight.c:1126:9: warning: 'view' may be used uninitialized in this function [-Wmaybe-uninitialized]
...
Test Plan: N/A
Reviewers: YOhoho, Hermet, Jaehyun_Cho
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11418
Make sure we free local resources before we break.
CID: 1419845
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11414
We need to amke sure we free this images before we return.
CID: 1419848
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11413
We only opened it read only, but this should still be closed before
leaving.
CID: 1419853
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11412
When we allocated s but fail to allocate l we need to make sure to free
the first allocation before erroring out.
CID: 1419874
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11409
Before we leave the scope here this needs to get free'd up or it will
leak.
CID: 1419877
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11408
If we hit this error path we need to release the allocated buffer.
CID: 1419878
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11407
Summary: use existing utf-16 to utf-8 conversion function in Ecore_Win32. Add API to convert utf-8 to utf-16 in Evil for copy'n paste on Windows
Test Plan: compilation
Reviewers: raster, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11406
Summary:
* this was left as a duplicated efl_ui_image test
* elm_image doesn't have a legacy api for setting icons
* elm_icon doesn't actually have any tests for icon loading
Depends on D11396
Reviewers: kimcinoo, Hermet
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11397
Summary:
this should operate on the internal image object to reflect the file
state there instead of the outer object
Reviewers: kimcinoo, Hermet
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11396
Summary:
There is a case that uses a mask and a mat at the same time.
One of them did not apply. This patch modifies two attributes to be parent-child.
Test Plan: N/A
Reviewers: Hermet, smohanty, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11399
Summary:
If _icon_standard_set() fails, _icon_freedesktop_set() is tried.
This was causing missing icons in the homescreen example, which uses
application icons which are obviously not present in the default theme.
Thanks to @bu5hm4n!
Test Plan: The homescreen sample application from the examples repository now correctly shows all missing icons.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers, bu5hm4n
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11381