Commit Graph

53219 Commits

Author SHA1 Message Date
Cedric BAIL 662f7d3310 ecore_con: use new API eina_file_close_on_exec. 2017-04-18 16:56:01 -07:00
Cedric BAIL 712f7e878b ecore: use new API eina_file_close_on_exec. 2017-04-18 16:55:31 -07:00
Cedric BAIL a2094567c9 evas: use new API eina_file_close_on_exec. 2017-04-18 16:55:03 -07:00
Cedric BAIL fed9ca47f2 eet: use new API eina_file_close_on_exec. 2017-04-18 16:54:44 -07:00
Cedric BAIL b2893dfc77 eina: use new API eina_file_close_on_exec. 2017-04-18 16:54:03 -07:00
Cedric BAIL 9d8549f7a3 eina: add an API to correctly do close on exec. 2017-04-18 16:53:26 -07:00
Chris Michael 2badf1e706 ecore-drm2: Add support for putting dmabuf clients into hardware planes
Small patch set which adds necessary API functions that we can use in
order to allow placing dmabuf clients into a hardware plane based on
supported format, size, etc.

Merge branch 'devs/devilhorns/planes'
2017-04-18 07:57:56 -04:00
Chris Michael e2a6ee29f0 ecore-drm2: Add fields to plane structure for current, next, pending
FBOs

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael d3d9ab2296 ecore-drm2: Free any previous atomic request
If we fail the atomic request merge, cleanup any previous request and
just use the new one.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 345fefd3ef ecore-drm2: Add API functions for atomic commit test and commit
This patch adds 2 new API functions, one which we can use to test atomic
commits before actually applying them, and another which does the
actual Atomic commit.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 9d5c76e0d5 ecore-drm2: Add library symlink to merge atomic commit requests
Small commit to symlink to drmModeAtomicMerge function so we can use
that for atomic commit tests.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 9e07d37320 ecore-drm2: Add API function to set plane destination
When we do an atomic commit, we need to know where to place a given
plane (in the case of overlays) in relation to the CRTC, so provide an
API function that can be used for that purpose.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 44d5c855e0 ecore-drm2: Store plane src values on assign
As we will need the plane state source values when we do an atomic
commit, we can store them when plane_assign is called as we already
have the FBO available.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 19da4706f3 ecore-drm2: Add hardware plane functions
This patch adds a new file where we can store any additional functions
we may need to work with hardware planes. Currently the file contains
a public function that can be used to assign a given Ecore_Drm2_Fb to
a hardware plane

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael f1525ecf35 ecore-drm2: Cleanup list of output planes on output_destroy
Small patch to make sure we free memory previously allocated for
hardware planes when we destroy an output

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 9dbf54e2f6 ecore-drm2: Move defines for CAP_CURSOR sizes to private header
As we may need these defines in other files, move them to the private
header so there is access to them.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 205c829a11 ecore-drm2: Store cursor size on device
As we will need these values later to determine if an FBO can go onto
the cursor plane, we should store this in the device structure to
avoid having to refetch them later.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 980ed70eb9 ecore-drm2: Support multiple planes on a given output
Various hardware can support multiple planes on a given output. As
such, we need to be able to store multiple plane states per-output.
This small patch adds support for that.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 4f8f41299f ecore-drm2: Add support for plane formats
Small patch to store supported formats on a given plane state. This
will be used for assigning dmabuf clients to a hardware plane based on
size and supported format.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 0a647f9fce ecore-drm2: Remove old atomic flipping code
As we are refactoring the usage of hardware planes and atomic commits,
we need to remove the old usage of atomic flipping for ecore_drm2_fb
because atomic flipping will be handled differently.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 43104a7268 ecore-drm2: Add opaque structure to represent a hardware plane
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Chris Michael 554883c048 ecore-drm2: Disable driver whitelist tests
While having the ability to test for specific driver and kernel
versions is nice to ensure that Atomic is supported, it quickly can
get out of hand trying to maintain this whitelist so (for now) disable
it and rely on the kernel results from drmSetCap.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-04-18 07:55:10 -04:00
Derek Foreman 61f40d58f7 ecore_drm2: Add ecore_drm2_fb_dmabuf_import
Imports a set of dmabuf buffers as a single Ecore_Drm2_Fb
2017-04-18 07:55:10 -04:00
Derek Foreman f0fc86516d ecore_drm2: store 4 handles, strides, and planes
We're going to support multi-planar formats soon.

It'll be great, you'll love it.
2017-04-18 07:55:10 -04:00
Derek Foreman 45e173d186 ecore_drm2: Use library function instead of ioctl for addfb2
Minor clean up.
2017-04-18 07:55:10 -04:00
Jean-Philippe Andre 86d1f2b6cd eo: Use COW to save 8~16 bytes per object
Summary:
This uses Eina_Cow to implement support for rarely used features
in EO objects. This covers:
- composite objects (eg. UI widgets: combobox, text, video, win)
- vtable for efl_object_override
- del_intercept

All of these features are quite tricky to get right and while
very useful, should still be used with great care. With this patch,
the size of an _Eo_Object struct comes down from 80 bytes (rounded
up from 72b) to 64 bytes (rounded up from 56b) on 64 bits.

Also I haven't measured precisely but I don't expect any performance
impact since the COW data is more likely to remain in L1/L2 cache,
as the default one will be used most often. Unfortunately, the
results of "make benchmark" have been quite inconsistent over
multiple runs.

This saves ~64kb in elementary_test (>4k objects) at the cost of
~100 calls to COW write (del intercept on some events).

@optimization

Reviewers: raster, cedric

Differential Revision: https://phab.enlightenment.org/D4796
2017-04-18 18:52:27 +09:00
Jeeyong Um e8711baec3 edje_cc: Clean up repeated code in color setter
Summary: Remove duplicated code

Reviewers: jpeg, cedric

Reviewed By: jpeg

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D4769
2017-04-18 18:42:51 +09:00
Bryce Harrington 10f1fedfec ecore_evas: Unnecessary to test p before calling free(p)
Summary:
Modern, standards-compliant compilers already test p, so as per the C
spec it is superfluous to do so before the call.

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4791
2017-04-18 18:42:51 +09:00
Vyacheslav Reutskiy c4e7d611d6 elm_filselector: don't force the icon size
A icon in the files view, mode grid, should not apply size bigger then
swallow for it. This commit additional fix for
52ddf9331a
2017-04-18 11:32:52 +03:00
Carsten Haitzler c65782b15c ecore file - use eina_file_mkstmp to solve umask complaint
this fixes coverity CID 1039614
2017-04-18 17:30:50 +09:00
Carsten Haitzler 706c7f9e3b genlist - fix coverity complaint about null check
we checked for null and then just used a null return later inthe loop.
this fixes that. this should fix CID 1360955
2017-04-18 17:30:50 +09:00
Carsten Haitzler 330368c10c eina log - try and fix coverity complaint about integer overflow again
it seems coverity didn't like our checks like if end - start > 0xffff
then dont do anything. this should effectively stop any issues but
seemingly not, so try another way to keep coverity happy.

CID 1361219
2017-04-18 17:30:50 +09:00
Carsten Haitzler f3f032e63f eina log - try and fix coverity complaint about integer overflow again
it seems coverity didn't like our checks like if end - start > 0xffff
then dont do anything. this should effectively stop any issues but
seemingly not, so try another way to keep coverity happy.

CID 1361220
2017-04-18 17:30:50 +09:00
Carsten Haitzler 39baea1053 efreet cache create - check return values of i/o funcs
this is pretty harmless but it checks these and at least reports an
error...

this fixes CID 1361941 + 1361940

@fix
2017-04-18 17:30:50 +09:00
Carsten Haitzler 4a4b0d8794 evas key lock state set - remove dead code
l is checked for NULL twice. this removes the pointless second check.
@fix
2017-04-18 17:30:50 +09:00
Carsten Haitzler 4e282c79bd evas key modifier state set - remove dead code
m is checked for NULL twice. this removes the pointless second check.
@fix
2017-04-18 17:30:50 +09:00
Carsten Haitzler 55ad786873 evas - table - remove logically dead code
this is right - it is dead code. this fixes CID 1372487

@fix
2017-04-18 17:30:50 +09:00
Jeeyong Um 3958a8ca3b AUTHORS: Add Sungtaek Hong to the authors file 2017-04-18 16:50:26 +09:00
Sungtaek Hong aaefd66d0c edje_cc: add short state handler for part.description.clip_to
Summary:
part.clip_to statement has short handler named "part.clip"
while part.description.clip_to does not.

Its short handler name should be "part.description.clip"
in order to have same experience with "part.clip".

Reviewers: cedric, Hermet, jpeg, conr2d

Reviewed By: conr2d

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4789
2017-04-18 16:48:04 +09:00
Jihoon Kim badf7bca45 ecore_imf: Added a new ecore_imf_context_keyboard_mode_get API and input_panel_event_callback type
Summary:
Applications want to know the current keyboard mode state to handle application's size manually.
So added a new ecore_imf_context_keyboard_mode_get API and input_panel_event_callback type for
keyboard mode.

Test Plan: Tested in Tizen device

Reviewers: jihoon, woohyun, id213sin

Reviewed By: jihoon

Subscribers: cedric, jsuya, z-wony, jpeg

Differential Revision: https://phab.enlightenment.org/D4790
2017-04-18 16:18:10 +09:00
Vyacheslav Reutskiy 52ddf9331a elm_fileselector: fix thumbnail size for other themes bisides default
Elm_fileselector has the hardcoded value for calculate the item size
with thumbail, this size was 16, it's looks like thumbnail size plus
labal text height, but hardcoded value haven't effect to scale. Other
problem with items without labels. As a result we have correct
thumbnail size only with default theme and with scale 1.0.

This commit made the item size accordingly to size what user set. It's
made more clearly this API behavior.

@fix
2017-04-18 10:04:07 +03:00
Vyacheslav Reutskiy 0ecf3c6906 fileselector: apply style for files view
By some reason style does not applyed to genlist/gengrid in
fileselector. Also fixed issue with applyed style for files view on
change mode.  Now this problem is fixed.

@fix
2017-04-18 10:04:07 +03:00
Jean-Philippe Andre acb9ae70fe eo/elm: Simplify box/grid EO API
After talking with @eunue I realised that the way I'd first
implemented the box/grid "pack" API was simply too complicated.
I had tried to make it possible to change the layout function
at runtime, like good old evas box, but since there are no function
pointers in EO the final design was really convoluted.

If someone really needs to change the layout of a box at runtime,
just create your own subclass, or unpack all items and repack them
in a new box.

Note: there are still some issues with the layout params & flow
2017-04-18 15:34:29 +09:00
Jean-Philippe Andre d6d4c3c25b eo: Fix crash in case of API misuse
If efl_object_override() is called with a function that does
not exist in the original class, it may lead to a crash on
indexing an non-existing array in the vtable.

This is really just a safety check, as the usage was wrong:
 * You are only allowed to override functions that are defined in the
 * class or any of its interfaces (that is, efl_isa returning true).
2017-04-18 15:34:29 +09:00
Carsten Haitzler 3e494a0a21 ecore pipe - fix checking return of read for pipes in new code 2017-04-18 14:30:22 +09:00
Carsten Haitzler 352174784e ecore pipe - fix new coverity complaint about using closed socket
this should fix CID 1374297
2017-04-18 14:25:56 +09:00
Carsten Haitzler 1eb36e6f84 ecore pipe - fix potential use of freed pipe data
new thanks to new patches so not an existing bug in the last release
2017-04-18 14:25:56 +09:00
Carsten Haitzler 0911370790 ecore pipe - clean up formatting a bit 2017-04-18 14:25:56 +09:00
Jean-Philippe Andre e79f27ae0c efl: Remove manual definitions of event "changed"
Honestly I can't see why gfx & gfx.path "changed" need a manual
definition, instead of relying on EO. If the API needs to be
internal only, then EO needs to handle internal APIs. In this
case, the event was exposed as a C API but not a EO... why?
2017-04-18 11:07:46 +09:00
Woochan Lee e85c92662b elm_calendar: Improve code quality.
Summary:
The values(259200, 86400) are hard to know the meaning.
And we don't have to call gmtime() in for loop.

Test Plan: elementary_test -> calendar

Reviewers: jpeg, Hermet, shilpasingh, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4717
2017-04-18 10:17:07 +09:00