platform/upstream/efl.git
8 years agoevas_eet: Add Type Safety check
Pankaj Mittal [Thu, 10 Dec 2015 07:26:56 +0000 (16:26 +0900)]
evas_eet: Add Type Safety check

Summary:
The Function _evas_canvas3d_eet_file_free(void) is referenced in  evas_model_load_file_eet()(file:evas_model_load_eet.c at line 122).
This call is  under condition
        if ((eet_file->mesh == NULL) || (eet_file->header == NULL)).
when  either eet_file->mesh or eet_file->header are NULL, dereference of the corresponding pointer in function "_evas_canvas3d_eet_file_free()"
will generate Segmentation Fault.

@fix

Reviewers: raster, Hermet, tasn, wonsik, spacegrapher, cedric, jpeg

Subscribers: singh.amitesh, sachin.dev, alok25, yashu21985, mvsovani, cedric

Differential Revision: https://phab.enlightenment.org/D3369

8 years agoevas/gl: Update texture when preload is cancelled.
Minkyoung Kim [Thu, 10 Dec 2015 07:04:57 +0000 (16:04 +0900)]
evas/gl: Update texture when preload is cancelled.

Summary:
When preload is cancelled before finishing loading,
should reload the image data and update the texture during rendering object.
So, force texture to be updated on first drawing time.
(It should be guaranteed that preload image object is hidden before preload done.)

Test Plan: Local tests

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: eunue, jiin.moon, wonsik, cedric, spacegrapher

Differential Revision: https://phab.enlightenment.org/D3416

8 years agoecore-evas-wayland: Fix issue of starting resizing causing size jumps
Chris Michael [Wed, 9 Dec 2015 17:03:53 +0000 (12:03 -0500)]
ecore-evas-wayland: Fix issue of starting resizing causing size jumps

Previously, when we started to resize an efl app, the size would
"jump" due to framespace being adjusted. This patch fixes that issue
and resize now works as expected.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-evas-wayland: Move configure acknowledge to render_flush_pre
Chris Michael [Wed, 9 Dec 2015 14:38:01 +0000 (09:38 -0500)]
ecore-evas-wayland: Move configure acknowledge to render_flush_pre

If we acknowledge a configure from xdg during post render, we end up
breaking maximize of EFL clients inside Weston (and perhaps other
compositors). In order to fix that, we will now send the configure ack
post render but pre flush.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoRevert "edje: calc - remove pointer comparison while finding part desc"
Amitesh Singh [Wed, 9 Dec 2015 15:59:42 +0000 (21:29 +0530)]
Revert "edje: calc - remove pointer comparison while finding part desc"

This reverts commit c892a1cb714fed496cbf5568c4d43880b6fb67b2.

8 years agoedje: calc - add curly braces to avoid ambiguous 'if'
Amitesh Singh [Wed, 9 Dec 2015 10:25:59 +0000 (15:55 +0530)]
edje: calc - add curly braces to avoid ambiguous 'if'

merge two if conditions into one also.

8 years agoedje: calc - remove pointer comparison while finding part desc
Amitesh Singh [Wed, 9 Dec 2015 10:16:41 +0000 (15:46 +0530)]
edje: calc - remove pointer comparison while finding part desc

Only strcmp comparision is realiable.
@fix

8 years agoEvas text: Fix Evas Text truncated text case.
Youngbok Shin [Wed, 9 Dec 2015 07:50:33 +0000 (09:50 +0200)]
Evas text: Fix Evas Text truncated text case.

Summary:
Evas Text only concerns about a advance of each text item.
When a width of last character is bigger than its advance, the last character can be truncated.
And the different line size calculation caused different aligning between Evas Text and Evas Textblock.
So, the width of last character will be considered in Evas Text just like Evas Textblock.
@fix

Test Plan:
The following text shows how the size calculation is different between Evas Textblock and Text.
Get native size from Evas Textblock and get width(geometry) of Evas Text.
You can see the width of Evas Text is bigger than native size of Evas Textblock.
(adv > width)
こんにちは。

The following text will be truncated without this patch.
(adv < width)
ନୂଁ

Reviewers: woohyun, tasn, herdsman

Subscribers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3004

8 years agoEvas: Fix build for ubuntu... again
Jean-Philippe Andre [Wed, 9 Dec 2015 07:58:48 +0000 (16:58 +0900)]
Evas: Fix build for ubuntu... again

See 75fed54f0e4d72b20860
Apparently the proper CFLAGS are not set for SSE compilation.
SSE flags are set only for a specific file (now 2 of them).

As usual, it was worksforme but not for others. This should probably
fix that. Thanks Sub for the report and testing this solution.

8 years agoefl - ecore-x randr - fix coverity issue found after previous leak fix
Carsten Haitzler (Rasterman) [Wed, 9 Dec 2015 05:21:10 +0000 (14:21 +0900)]
efl - ecore-x randr - fix coverity issue found after previous leak fix

fix coverity issue pointed out in the previous commit fix:

dadc1451e7f53d64b9b848d18c4c2514d791c53e

use after free of ptr (free was in wrong spot)

@fix

8 years agoEvas filters: Move 'fill' to its own file
Jean-Philippe Andre [Wed, 9 Dec 2015 02:42:31 +0000 (11:42 +0900)]
Evas filters: Move 'fill' to its own file

8 years agoEvas: Add all 'draw' files to evas static lib
Jean-Philippe Andre [Wed, 9 Dec 2015 01:20:01 +0000 (10:20 +0900)]
Evas: Add all 'draw' files to evas static lib

This should fix the build on old Ubuntu. I didn't get this error myself,
but apparently the following issue happened:

  CCLD   lib/ecore_evas/libecore_evas.la
lib/evas/.libs/libevas.so: undefined reference to `efl_draw_neon_init'
lib/evas/.libs/libevas.so: undefined reference to `efl_draw_sse2_init'
collect2: ld returned 1 exit status

Thanks @mer.kim for the report

8 years agoeina_quaternion: fix ein matrix type comparison
Stefan Schmidt [Wed, 9 Dec 2015 00:22:38 +0000 (01:22 +0100)]
eina_quaternion: fix ein matrix type comparison

Fixing a bug that I fixed before. Sadly got introduced again. See
a486671bce76e405a8d7261f19b0f67ca678f0c4 for the details.

CID: 1341769

8 years agoRevert "evas: refactor model's savers and loaders."
Stefan Schmidt [Tue, 8 Dec 2015 21:23:17 +0000 (22:23 +0100)]
Revert "evas: refactor model's savers and loaders."

This reverts commit 32c33ed64dda542c7cfc952fc656bb711260441b.

This refactor broke the evas test cases for the model loaders and savers. I gave
it a week to get fixed but a first try did not succeed and its blocks a lot of
other automated testing. To be honest, it should have never gone it when it
breaks existing test cases. Once fixed this refactor can happily go in.

Fixes T2905

8 years agoRevert "build: fix distcheck after model saver and loader rework"
Stefan Schmidt [Wed, 2 Dec 2015 11:15:09 +0000 (12:15 +0100)]
Revert "build: fix distcheck after model saver and loader rework"

This reverts commit a7a2781a00ca6557aef6490bc0159cb426441b28.

Fix for a commit that needs reverting so we need to revert this patch as well.
See next commit or bug number for details.

Ref T2905

8 years agoecore-wl2: rewrite iconified set function for consistency
Chris Michael [Tue, 8 Dec 2015 14:56:57 +0000 (09:56 -0500)]
ecore-wl2: rewrite iconified set function for consistency

* santize boolean params
* enforce window state flag setting

@fix

ref T2919

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoEvas textblock: improve and fix line range rectangles
Daniel Hirt [Tue, 8 Dec 2015 15:17:59 +0000 (17:17 +0200)]
Evas textblock: improve and fix line range rectangles

The line range rectangles geometries needed a bit of adjusting. I
started out with fixing T2648. In order to fill the gap between the end
of the line and the margins, the geometry of the last line's character
was used. I am not really sure why. Anyway, we have the line geometry,
so I replaced it with that.

Then, it led me to do some alignment checks, and indeed alignment cases
were not treated. For instance, an LTR paragraph could have a line
aligned with a value greater than 0.0. That means that we should fill
the gap from the left of the line, if it was the last line in a
multi-line selection. The inverse case is for RTL.

I think it now works as it should. Will see if the selection logic is
missing some more stuff once I come up with more example cases.

Fixes T2648.

@fix

8 years agoeina: Adding API for base64 url encoding.
Srivardhan Hebbar [Tue, 8 Dec 2015 11:43:42 +0000 (20:43 +0900)]
eina: Adding API for base64 url encoding.

Summary:
I have put the common encoding code in the common function. The 2 API's
call them with a flag. Thinking of doing the same way to decode
function also.
T2880

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3414

8 years agoEdje cc: Fix use of uninitialised value.
Tom Hacohen [Tue, 8 Dec 2015 11:41:28 +0000 (11:41 +0000)]
Edje cc: Fix use of uninitialised value.

Slash should be initialised to NULL, as if slash was not found in case
we don't even look for it.

Also, further restrict slash's scope.

@fix

8 years agoEvas render2: Fix always false comparisons.
Tom Hacohen [Tue, 8 Dec 2015 11:35:25 +0000 (11:35 +0000)]
Evas render2: Fix always false comparisons.

This looks like a classic copy and paste error. It didn't make any sense
before, and it seems like no one was going to take a look at it.
This looks correct. If this breaks something (is render2 even used),
someone should remove those lines. I wasn't entirely sure if I should
just remove them, or correct them, as some of the code looked redundant
anyway.

8 years agoEvas test matrix: Silence warning.
Tom Hacohen [Tue, 8 Dec 2015 11:15:23 +0000 (11:15 +0000)]
Evas test matrix: Silence warning.

This happens because this test doesn't really depend on anything evas,
so it doesn't set evas up. We want to be warned when tests forget to set
evas up, just not in this case.

8 years agoEcore con socks: Add missing break statement to switch.
Tom Hacohen [Tue, 8 Dec 2015 11:05:17 +0000 (11:05 +0000)]
Ecore con socks: Add missing break statement to switch.

This looks like an obvious case of missing break. If it wasn't a missing
break, there should have been at least a comment. Looking at the code it
looks like a break is needed. Also, I suspect this code path is never
really tested, and that's why we never hit it.

Tests are not failing either way.

CID1039379

8 years agoEolian legacy generator: Make code a bit clearer.
Tom Hacohen [Tue, 8 Dec 2015 10:57:19 +0000 (10:57 +0000)]
Eolian legacy generator: Make code a bit clearer.

This makes it clear that only one of those conditions can be
true.

This also fixed CID1323087

8 years agoEvas filters: Remove unused variable
Jean-Philippe Andre [Fri, 4 Dec 2015 07:30:54 +0000 (16:30 +0900)]
Evas filters: Remove unused variable

8 years agoEvas: Remove unwanted file added by accident
Jean-Philippe Andre [Tue, 8 Dec 2015 05:54:21 +0000 (14:54 +0900)]
Evas: Remove unwanted file added by accident

From commit 82504d9d77f761f2575f63095459011eba02a594

8 years agoEfreet, Elua : use eina_file_mkstemp instead of mkstemp
Vincent Torri [Tue, 8 Dec 2015 05:24:59 +0000 (14:24 +0900)]
Efreet, Elua : use eina_file_mkstemp instead of mkstemp

Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3411

8 years agoEvil: remove useless internal function
Vincent Torri [Tue, 8 Dec 2015 04:53:32 +0000 (13:53 +0900)]
Evil: remove useless internal function

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3410

8 years agoEvil: fix infinite recursive loop in previous addition of setlocale() in Evil
Vincent Torri [Tue, 8 Dec 2015 04:53:23 +0000 (13:53 +0900)]
Evil: fix infinite recursive loop in previous addition of setlocale() in Evil

Summary:
setlocale() called itself because it was defined as a #define
so remove this #define from evil_locale.h and move it in another header file
To avoid future problem, move similar defines to this header file
Also clean all the header file mess in Evil

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3409

8 years agoedje: introduce size_class attribute
Jee-Yong Um [Tue, 8 Dec 2015 03:15:48 +0000 (12:15 +0900)]
edje: introduce size_class attribute

Edje_Part can change its min or max size in code level with
size_class.

Differential Revision: https://phab.enlightenment.org/D3329

PS: Manual commit, arc refused to work...

@feature

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
8 years agoedje_cc: Fix parsing including file path in EDC on Windows.
Jaehyun Cho [Tue, 8 Dec 2015 02:01:11 +0000 (11:01 +0900)]
edje_cc: Fix parsing including file path in EDC on Windows.

On Windows, including file path in EDC has not been parsed correctly
because '\' has not been used for path separator.
This commit fixes edje_cc complie to use '\' as path separator on
Windows.

8 years agoevas: fix mistake in descriptions of matrix
se.osadchy [Tue, 8 Dec 2015 00:51:55 +0000 (16:51 -0800)]
evas: fix mistake in descriptions of matrix

Summary: Wrong word in documentation eina_matrix.h.

Reviewers: Hermet, raster, jpeg, cedric

Reviewed By: jpeg, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3406

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoevas: recognize duplicated data structure with eina_quternion and ector.
se.osadchy [Tue, 8 Dec 2015 00:12:56 +0000 (16:12 -0800)]
evas: recognize duplicated data structure with eina_quternion and ector.

Summary:
Move data structure and functionality to eina_quaternion from evas_vec4.

Reviewers: raster, Hermet, cedric

Subscribers: jpeg, Oleksander

Differential Revision: https://phab.enlightenment.org/D3327

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore-evas-wayland: Don't set window geometry in ecore_evas
Chris Michael [Mon, 7 Dec 2015 20:32:58 +0000 (15:32 -0500)]
ecore-evas-wayland: Don't set window geometry in ecore_evas

As we do not have the proper values for window geometry to be setting
it here, remove calls to set window geometry. We can more accurately
determine the window geometry from inside Elementary as it handles the
theme for the window borders.

@fix

ref T2919

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: rewrite maximize/fullscreen set functions for consistency
Chris Michael [Mon, 7 Dec 2015 19:39:29 +0000 (14:39 -0500)]
ecore-wl2: rewrite maximize/fullscreen set functions for consistency

* sanitize boolean params
* enforce window state flag setting
* use window flag instead of window type for state

@fix

ref T2919

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoevas: Fix definition of framespace in canvas eo file
Chris Michael [Mon, 7 Dec 2015 17:54:21 +0000 (12:54 -0500)]
evas: Fix definition of framespace in canvas eo file

The definition of 'framespace' in the canvas eo file is incorrect.
Framespace is the space occupied by the window frame within the canvas viewport

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix issue of cleanup function always removing from client
Chris Michael [Mon, 7 Dec 2015 17:18:28 +0000 (12:18 -0500)]
ecore-wl2: Fix issue of cleanup function always removing from client
display hash

As the cleanup function is a generic helper to cleanup things in the
Ecore_Wl2_Display structure, we cannot always just explicitly the
display from the client_displays hash.

The removal from the appropriate hashes should be done by the calling
function(s) (ecore_wl2_display_disconnect for clients, and
ecore_wl2_display_destroy for servers)

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix formatting and remove extra blank line
Chris Michael [Mon, 7 Dec 2015 16:30:53 +0000 (11:30 -0500)]
ecore-wl2: Fix formatting and remove extra blank line

NB: no functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoEvas textblock: fix evas_textblock_cursor_line_set
Daniel Hirt [Mon, 7 Dec 2015 15:23:24 +0000 (17:23 +0200)]
Evas textblock: fix evas_textblock_cursor_line_set

The line_set function should set the cursor to the first logical
position in the line. We can't use the first text position of the
first item in the line, due to BiDi considerations (the line may be
reordered). I've split evas_textblock_cursor_line_char_first to avoid
code duplication, as it already handles these cases.

@fix

8 years agoEvas GL: Fix build for bigendian
Jean-Philippe ANDRE [Mon, 7 Dec 2015 16:03:40 +0000 (01:03 +0900)]
Evas GL: Fix build for bigendian

Fixes T2918

8 years agoevas-wayland-egl: Fix the unnecessary renewal of the engine window.
Seunghun Lee [Mon, 7 Dec 2015 15:06:21 +0000 (10:06 -0500)]
evas-wayland-egl: Fix the unnecessary renewal of the engine window.

Summary:
As we do not set the ob->info->info.win variable anymore inside
Ecore_Evas (old code that was removed), we can omment out the line.
This line was causing unnecessary renewal of the engine window (thus
causing flickering when rotation was applied).

@fix

Test Plan: Rotate or Resize the window on wayland-egl.

Reviewers: gwanglim, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3407

8 years agoecore-wl2: Don't free display structure during display cleanup function
Chris Michael [Mon, 7 Dec 2015 15:00:23 +0000 (10:00 -0500)]
ecore-wl2: Don't free display structure during display cleanup function

Due to reference caching, we cannot free the display structure here
yet. During calls to ecore_wl2_display_destroy (or others), if the
number of references reaches zero, then we end up calling
wl_display_destroy (or equivelant). If we free our display structure
during cleanup function, then calls to wl_display_destroy will cause a
segfault as our display->wayland_display has already been freed from
the structure

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoefl - ecore-x xrandr - fix memleaks of properties fetched
Carsten Haitzler (Rasterman) [Mon, 7 Dec 2015 10:34:53 +0000 (19:34 +0900)]
efl - ecore-x xrandr - fix memleaks of properties fetched

while doing some debugging, ifound we have been leaking these xrandr
properites that were malloced in certain cases. this fixes these leaks.

@fix

8 years agoeina: Updated test case to test more scenario.
Srivardhan Hebbar [Mon, 7 Dec 2015 10:22:47 +0000 (19:22 +0900)]
eina: Updated test case to test more scenario.

Summary:
The test cases which I took from wikipedia didn't have the characters
'/' and '+' in the encoded string. So added test case testing these.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3405

8 years agoeina: Adding example for base64 decode function.
Srivardhan Hebbar [Mon, 7 Dec 2015 10:00:39 +0000 (19:00 +0900)]
eina: Adding example for base64 decode function.

Summary:
Depends on D3381

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Differential Revision: https://phab.enlightenment.org/D3383

PS: arc patch failed so manually applying this patch

8 years agoeina: Adding API for base64 decode.
Srivardhan Hebbar [Mon, 7 Dec 2015 09:41:53 +0000 (18:41 +0900)]
eina: Adding API for base64 decode.

Summary:
Added eina_str_base64_decode API.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3381

@feature

8 years agoEvas GL: Detect GLES 3 support for OpenGL
Jean-Philippe Andre [Mon, 7 Dec 2015 08:27:45 +0000 (17:27 +0900)]
Evas GL: Detect GLES 3 support for OpenGL

As @zmike mentionned in T2396 there is an extension string
declaring full support for GLES 3 when using OpenGL.

Note: I can't really test myself since I have recent drivers.
Hopefully this is correct.

Fixes T2396

8 years agoEcore_File: fix merge and simplify logic in ecore_file_file_get() on WindoWS
Vincent Torri [Mon, 7 Dec 2015 05:08:19 +0000 (14:08 +0900)]
Ecore_File: fix merge and simplify logic in ecore_file_file_get() on WindoWS

Summary: Ecore_File: fix merge and simplify logic in ecore_file_file_get() on WindowS

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3404

8 years agoefl: add binary mode to open() calls
Vincent Torri [Thu, 3 Dec 2015 10:42:08 +0000 (11:42 +0100)]
efl: add binary mode to open() calls

This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoefl: add binary mode to fdopen() calls
Vincent Torri [Thu, 3 Dec 2015 09:52:56 +0000 (10:52 +0100)]
efl: add binary mode to fdopen() calls

This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoefl: add binary mode to f(re)open() calls
Vincent Torri [Thu, 3 Dec 2015 08:32:39 +0000 (09:32 +0100)]
efl: add binary mode to f(re)open() calls

This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore-wl2: fix use after free and leak when deleting display object
Mike Blumenkrantz [Sat, 5 Dec 2015 18:06:03 +0000 (13:06 -0500)]
ecore-wl2: fix use after free and leak when deleting display object

ref T2919

8 years agoecore-wl2: add function for getting display from window
Mike Blumenkrantz [Sat, 5 Dec 2015 18:05:15 +0000 (13:05 -0500)]
ecore-wl2: add function for getting display from window

8 years agoecore-wl2: apply same deferred shell surface creation as ecore-wayland
Mike Blumenkrantz [Sat, 5 Dec 2015 00:01:02 +0000 (19:01 -0500)]
ecore-wl2: apply same deferred shell surface creation as ecore-wayland

new wheel meets old wheel.

ref 265ad8b5d0c46ad17de790e85ceaa593d7a5dd24

8 years agoecore-wl2: handle null global has in ecore_wl2_display_globals_get()
Mike Blumenkrantz [Fri, 4 Dec 2015 23:59:49 +0000 (18:59 -0500)]
ecore-wl2: handle null global has in ecore_wl2_display_globals_get()

8 years agoecore-evas-wayland: Acknowledge configure event post render
Chris Michael [Fri, 4 Dec 2015 19:15:19 +0000 (14:15 -0500)]
ecore-evas-wayland: Acknowledge configure event post render

This fixes a potential issue where we may have been sending the
configure acknowledgement before applying the actual new configuration
to the surface. Sending the ack_configure during post-render ensures
that we have already rendered according to the new configure
(addresses deferred rendering issue).

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-wl2: Implement function pointer for configure acknowledge
Chris Michael [Fri, 4 Dec 2015 19:12:06 +0000 (14:12 -0500)]
ecore-wl2: Implement function pointer for configure acknowledge

We need a way to store the configure serial, and make the
xdg_surface_ack_configure callback be callable by Ecore_Evas at the
appropriate time. This fixes an issue where previously we were
(potentially) sending a configure acknowledgment while not applying
the configure due to deferred rendering.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-evas-wayland: Properly cleanup ecore_wl2 during error
Chris Michael [Fri, 4 Dec 2015 16:40:54 +0000 (11:40 -0500)]
ecore-evas-wayland: Properly cleanup ecore_wl2 during error

If we fail to connect to an existing wayland display, then we should
properly cleanup (call ecore_wl2_shutdown) before exiting

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-evas-wl: Cleanup creating a wayland canvas
Chris Michael [Fri, 4 Dec 2015 16:35:35 +0000 (11:35 -0500)]
ecore-evas-wl: Cleanup creating a wayland canvas

Unsure where all these extra display_connect calls came from, but
remove them.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoEvas textblock: Skip layout logic for an text item which doesn't have font.
Youngbok Shin [Fri, 4 Dec 2015 14:46:26 +0000 (14:46 +0000)]
Evas textblock: Skip layout logic for an text item which doesn't have font.

Summary:
Evas textblock could cause infinite loop if there is no fonts to use.
If there is no fonts, text_props.text_len is never set.
When text_props.text_len is 0, the for loop in _layout_par runs forever.
It is ridiculous to use Textblock without fonts. But, it shouldn't runs
infinite loop in any situation.

@fix

Test Plan:
1. Remove all of fonts in your EFL or Tizen device.
   (Or you can test it modifying some codes in Textblock by skipping load fonts.)
2. Run elementary_test -to entry3 or see any multiline textblocks.

Reviewers: tasn, herdsman, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3402

8 years agoEvil: remove useless code
Vincent Torri [Thu, 3 Dec 2015 08:15:12 +0000 (09:15 +0100)]
Evil: remove useless code

This code was used for GNU printf and al. but it is useless now

8 years agoCocoa: Fix make dist
Jean-Philippe Andre [Fri, 4 Dec 2015 07:22:20 +0000 (16:22 +0900)]
Cocoa: Fix make dist

See 967d2fe7fa5327675f830dbc3a

8 years agoEvas filters: Implement mix3 func for rgba masking
Jean-Philippe Andre [Fri, 4 Dec 2015 06:43:27 +0000 (15:43 +0900)]
Evas filters: Implement mix3 func for rgba masking

This operation was faked by running a mul and a blend ops. Now
they are combined into one. A GL shader should also be able
to do this in a single pass.

8 years agoEvas filters: Use Efl.Gfx.Render_Op
Jean-Philippe Andre [Fri, 4 Dec 2015 06:09:56 +0000 (15:09 +0900)]
Evas filters: Use Efl.Gfx.Render_Op

Some filters are now broken. Yay for refactoring! Will be fixed
in the following commit.

8 years agoDraw: Add new mask functions
Jean-Philippe Andre [Fri, 4 Dec 2015 05:05:20 +0000 (14:05 +0900)]
Draw: Add new mask functions

Copy & blend to uint32 with a uint8 mask + color.

8 years agoecore-evas-wayland: Use proper Ecore_Wl2 window functions
Chris Michael [Thu, 3 Dec 2015 19:55:42 +0000 (14:55 -0500)]
ecore-evas-wayland: Use proper Ecore_Wl2 window functions

To get the proper maximized and fullscreen states, we should be using
the ecore_wl2_window functions, not the ecore_wl_window functions

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-evas: Remove duplicated ecore_evas_cocoa_window_get function
Chris Michael [Thu, 3 Dec 2015 17:41:34 +0000 (12:41 -0500)]
ecore-evas: Remove duplicated ecore_evas_cocoa_window_get function

During my merge of the ecore_wl2 branch, somehow a duplicated
cocoa_window_get function got added. Remove it.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore: Add a new wayland module
Chris Michael [Thu, 3 Dec 2015 17:18:16 +0000 (12:18 -0500)]
ecore: Add a new wayland module

This is a merge of branch 'devs/devilhorns/ecore_wl2' that improves on
the existing ecore_wayland module. Improvements include support for
mulitple wayland displays (nested compositor scenario), Improved time
to first frame, reduced input latency, and better support for xdg window
geometry.

@feature

8 years agoecore-wl2: Always create cursor surface for pointer
Chris Michael [Thu, 3 Dec 2015 16:40:27 +0000 (11:40 -0500)]
ecore-wl2: Always create cursor surface for pointer

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas wayland: enforce frame/state change triggering before move/resize
Mike Blumenkrantz [Tue, 17 Nov 2015 23:21:11 +0000 (18:21 -0500)]
ecore-evas wayland: enforce frame/state change triggering before move/resize

if a state change occurs on the ee, related callbacks must be run prior to
performing any resizes in order to ensure that the correct csd sizes are
calculated

@fix

ref T2841

8 years agoecore-evas-wl: Fix issue of resize jumping
Chris Michael [Mon, 9 Nov 2015 16:55:21 +0000 (11:55 -0500)]
ecore-evas-wl: Fix issue of resize jumping

Summary: When an initial client application was shown and we tried to
resize it, the resize would jump by the amount of framespace. This was
because the xdg_surface@configure event would be sending window
geometry as the width/height params in the event. We need to account
for that in the callback of window configure and adjust size
accordingly.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code
Chris Michael [Mon, 28 Sep 2015 17:42:38 +0000 (13:42 -0400)]
ecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore_cocoa: add support for system cursors
Jean Guyomarc'h [Thu, 8 Oct 2015 09:58:46 +0000 (11:58 +0200)]
ecore_cocoa: add support for system cursors

- Ecore_Cocoa_Cursor enum which references system cursors;
- API to show/hide cursor: ecore_cocoa_window_cursor_show();
- API to set system cursor: ecore_cocoa_window_cursor_set();
- Ecore_Evas interface to get Ecore_Cocoa_Window from Ecore_Evas.

@feature

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore-evas-wl: Fix issue of improper window geometry
Chris Michael [Tue, 17 Nov 2015 18:51:19 +0000 (13:51 -0500)]
ecore-evas-wl: Fix issue of improper window geometry

This fixes an issue where maximizing a window would set improper xdg
surface window geometry. We receive window configure sizes based on
xdg surface window geometry, so we need to subtract framespace there
or else window size grows when maximizing/unmaximizing multiple times.
This also adjusts the call to xdg_surface_set_window_geometry to
account for framespace (Fixes T2842).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas wayland: use correct values when updating wayland window size
Mike Blumenkrantz [Fri, 13 Nov 2015 20:09:03 +0000 (15:09 -0500)]
ecore-evas wayland: use correct values when updating wayland window size

by using the geometry from after the request size has been updated,
scenarios such as the following can be avoided:

[4208305.332] xdg_surface@46.set_window_geometry(0, 0, 1778, 1)
[4208305.370] xdg_surface@46.set_window_geometry(0, 0, 1778, 250)

@fix

8 years agoecore-wl2: Add start of code to support wl_keyboards
Chris Michael [Mon, 30 Nov 2015 16:32:15 +0000 (11:32 -0500)]
ecore-wl2: Add start of code to support wl_keyboards

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Add private Ecore_Wl2_Keyboard structure
Chris Michael [Mon, 30 Nov 2015 15:31:22 +0000 (10:31 -0500)]
ecore-wl2: Add private Ecore_Wl2_Keyboard structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove unnecessary use of MIN macro
Chris Michael [Mon, 30 Nov 2015 15:11:08 +0000 (10:11 -0500)]
ecore-wl2: Remove unnecessary use of MIN macro

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix calling wl_surface_frame with proper Ecore_Wl2 window
Chris Michael [Mon, 19 Oct 2015 14:42:09 +0000 (10:42 -0400)]
ecore-wl2: Fix calling wl_surface_frame with proper Ecore_Wl2 window
frame

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas-wl: Fix ecore-evas wl common code due to botched rebase
Chris Michael [Tue, 13 Oct 2015 17:01:52 +0000 (13:01 -0400)]
ecore-evas-wl: Fix ecore-evas wl common code due to botched rebase

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code
Chris Michael [Mon, 28 Sep 2015 17:42:38 +0000 (13:42 -0400)]
ecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas wayland: enforce frame/state change triggering before move/resize
Mike Blumenkrantz [Tue, 17 Nov 2015 23:21:11 +0000 (18:21 -0500)]
ecore-evas wayland: enforce frame/state change triggering before move/resize

if a state change occurs on the ee, related callbacks must be run prior to
performing any resizes in order to ensure that the correct csd sizes are
calculated

@fix

ref T2841

8 years agoecore-evas-wl: Fix issue of improper window geometry
Chris Michael [Tue, 17 Nov 2015 18:51:19 +0000 (13:51 -0500)]
ecore-evas-wl: Fix issue of improper window geometry

This fixes an issue where maximizing a window would set improper xdg
surface window geometry. We receive window configure sizes based on
xdg surface window geometry, so we need to subtract framespace there
or else window size grows when maximizing/unmaximizing multiple times.
This also adjusts the call to xdg_surface_set_window_geometry to
account for framespace (Fixes T2842).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas wayland: use correct values when updating wayland window size
Mike Blumenkrantz [Fri, 13 Nov 2015 20:09:03 +0000 (15:09 -0500)]
ecore-evas wayland: use correct values when updating wayland window size

by using the geometry from after the request size has been updated,
scenarios such as the following can be avoided:

[4208305.332] xdg_surface@46.set_window_geometry(0, 0, 1778, 1)
[4208305.370] xdg_surface@46.set_window_geometry(0, 0, 1778, 250)

@fix

8 years agoecore-evas-wl: Fix bad merge
Chris Michael [Sun, 22 Nov 2015 23:48:00 +0000 (18:48 -0500)]
ecore-evas-wl: Fix bad merge

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Start on implementing support for multi-seat
Chris Michael [Sun, 22 Nov 2015 21:13:36 +0000 (16:13 -0500)]
ecore-wl2: Start on implementing support for multi-seat

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Cancel data callback if we have a fatal error
Chris Michael [Wed, 18 Nov 2015 14:21:23 +0000 (09:21 -0500)]
ecore-wl2: Cancel data callback if we have a fatal error

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove setting custom wl_log handler
Chris Michael [Wed, 18 Nov 2015 14:20:02 +0000 (09:20 -0500)]
ecore-wl2: Remove setting custom wl_log handler

Seems EINA_LOG_DOM has a problem printing out wayland protocol logs,
so allow wayland to handle that itself.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix maximized & fullscreen functions to use window flag
Chris Michael [Wed, 18 Nov 2015 14:18:04 +0000 (09:18 -0500)]
ecore-wl2: Fix maximized & fullscreen functions to use window flag

Rather than rely on window->type for maximized & fullscreen, use the
cooresponding window flag

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix calling wl_surface_frame with proper Ecore_Wl2 window frame
Chris Michael [Mon, 19 Oct 2015 14:42:09 +0000 (10:42 -0400)]
ecore-wl2: Fix calling wl_surface_frame with proper Ecore_Wl2 window frame

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas-wl: Fix ecore-evas wl common code due to botched rebase
Chris Michael [Tue, 13 Oct 2015 17:01:52 +0000 (13:01 -0400)]
ecore-evas-wl: Fix ecore-evas wl common code due to botched rebase

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code
Chris Michael [Mon, 28 Sep 2015 17:42:38 +0000 (13:42 -0400)]
ecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas wayland: enforce frame/state change triggering before move/resize
Mike Blumenkrantz [Tue, 17 Nov 2015 23:21:11 +0000 (18:21 -0500)]
ecore-evas wayland: enforce frame/state change triggering before move/resize

if a state change occurs on the ee, related callbacks must be run prior to
performing any resizes in order to ensure that the correct csd sizes are
calculated

@fix

ref T2841

8 years agoecore-evas wayland: use correct values when updating wayland window size
Mike Blumenkrantz [Fri, 13 Nov 2015 20:09:03 +0000 (15:09 -0500)]
ecore-evas wayland: use correct values when updating wayland window size

by using the geometry from after the request size has been updated,
scenarios such as the following can be avoided:

[4208305.332] xdg_surface@46.set_window_geometry(0, 0, 1778, 1)
[4208305.370] xdg_surface@46.set_window_geometry(0, 0, 1778, 250)

@fix

8 years agoecore-wl2: Add missing @since for all existing doxygen
Chris Michael [Tue, 10 Nov 2015 16:04:24 +0000 (11:04 -0500)]
ecore-wl2: Add missing @since for all existing doxygen

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Change name of ecore_wl2_window_class_name_set function
Chris Michael [Tue, 10 Nov 2015 14:50:19 +0000 (09:50 -0500)]
ecore-wl2: Change name of ecore_wl2_window_class_name_set function

It makes more sense to have this function be called
ecore_wl2_window_class_set.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Add missing EINA_UNUSED for function parameters
Chris Michael [Tue, 10 Nov 2015 14:37:07 +0000 (09:37 -0500)]
ecore-wl2: Add missing EINA_UNUSED for function parameters

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Add function to get a windows rotation
Chris Michael [Tue, 10 Nov 2015 14:35:25 +0000 (09:35 -0500)]
ecore-wl2: Add function to get a windows rotation

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix issue of not unsetting move mouse pointer
Chris Michael [Mon, 9 Nov 2015 20:49:18 +0000 (15:49 -0500)]
ecore-wl2: Fix issue of not unsetting move mouse pointer

Summary: When we finish moving a window, previously the mouse cursor
would never get unset from the hand cursor. This is due to the way
that grabs work in wayland, and not ever getting an event notification
for the move being completed. This patch works around that issue

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Fix maximized and fullscreen functions to restore geometry
Chris Michael [Mon, 9 Nov 2015 16:57:42 +0000 (11:57 -0500)]
ecore-wl2: Fix maximized and fullscreen functions to restore geometry

Previously, when we maximized or fullscreen a window, we were sending
the improper geometry to the window_configure callback

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas-wl: Fix issue of resize jumping
Chris Michael [Mon, 9 Nov 2015 16:55:21 +0000 (11:55 -0500)]
ecore-evas-wl: Fix issue of resize jumping

Summary: When an initial client application was shown and we tried to
resize it, the resize would jump by the amount of framespace. This was
because the xdg_surface@configure event would be sending window
geometry as the width/height params in the event. We need to account
for that in the callback of window configure and adjust size
accordingly.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>