Daniel Kolesa [Thu, 20 Oct 2016 14:48:41 +0000 (16:48 +0200)]
eolian gen: use EWAPI for events instead of EOAPI
Apparently only methods/properties can be EOAPI.
Daniel Kolesa [Thu, 20 Oct 2016 14:44:20 +0000 (16:44 +0200)]
eolian gen: use EWAPI for all generated variables
Daniel Kolesa [Thu, 20 Oct 2016 14:03:29 +0000 (16:03 +0200)]
ecore con: generate vars instead of writing them manually
Daniel Kolesa [Thu, 20 Oct 2016 14:01:11 +0000 (16:01 +0200)]
eolian gen: automatically uppercase names for vars/constants
Daniel Kolesa [Thu, 20 Oct 2016 13:22:14 +0000 (15:22 +0200)]
eolian gen: update tests to cover var generation
Daniel Kolesa [Thu, 20 Oct 2016 13:11:17 +0000 (15:11 +0200)]
eolian gen: generate vars in source files for globals with value
Daniel Kolesa [Thu, 20 Oct 2016 12:39:50 +0000 (14:39 +0200)]
eolian gen: initial generation of variables in headers
Felipe Magno de Almeida [Thu, 20 Oct 2016 06:52:18 +0000 (04:52 -0200)]
eo-cxx: Fix compilation and warnings in clang
Jean-Philippe Andre [Tue, 18 Oct 2016 02:32:05 +0000 (11:32 +0900)]
elm: Remove elm app client/server implementation & APIs
This removes EO APIs related to an unmaintained client/server
model for applications. The reasons for this removal are the
following:
- unused
- no support in E
- relies on dbus as the sole transport layer
- unmaintained since the original patches
- only EO API (iow: beta, never released API)
I've also never seen the test cases (in elementary_test) actually
work.
According to Gustavo (k-s), the original author of this feature
is not involved in EFL at the moment, and unlikely to be in the
near future.
Note that terminology has in the past used those APIs when it
was still using some beta EO APIs. This code is now long gone,
removed in terminology commit
3ffcbadd6f9881472db6 (2014/12/13,
for version 0.8.0)
If someone wants to step in and maintain the implementation,
protocol and (EO) API, then feel free to revert this patch
and revive the feature. But it will need to be more solid than
this implementation.
Jee-Yong Um [Wed, 19 Oct 2016 21:50:12 +0000 (23:50 +0200)]
eolian: fix build warning
Differential Revision: https://phab.enlightenment.org/D4356
Derek Foreman [Wed, 19 Oct 2016 21:04:02 +0000 (16:04 -0500)]
wayland_egl: Remove weirdo buffer age kludge cargo culted from gl_x11
There's no reason why we'd need a full redraw if the buffer age for
this buffer isn't the same as the buffer age for the last buffer, so
let's cut out this thing.
Derek Foreman [Wed, 19 Oct 2016 20:58:59 +0000 (15:58 -0500)]
wayland_egl: Use surface damage instead of buffer damage
We should always pass surface damage to eglSwapBuffersWithDamage.
Derek Foreman [Wed, 19 Oct 2016 20:54:08 +0000 (15:54 -0500)]
gl_drm: Use surface damage instead of buffer damage
We should always pass surface damage to eglSwapBuffersWithDamage.
Derek Foreman [Wed, 19 Oct 2016 20:33:09 +0000 (15:33 -0500)]
evas_engines: Send both surface and buffer damage to outbuf_flush callback
Some engines should using sending surface damage, until now we'd only ever
provided them with buffer damage.
The difference is that surface damage is the damage to the surface the
compositor is displaying, and the buffer damage is the damage to the
buffer the client has rendered. These are different when the client
is using multiple buffers of different ages to render into.
Anything that calls eglSwapBuffersWithDamage, wl_surface_damage() or
wl_surface_damage_buffer() should be using surface damage, and not
buffer damage.
This patch is intended to make no functional change - any flush cb that
used buffer damage before still should. Actual fixes to follow.
Apologies if I broke any engines - it's a bit of a copy and wasteland
out here.
Derek Foreman [Wed, 19 Oct 2016 16:59:34 +0000 (11:59 -0500)]
Revert "wayland_shm: Add swap mode fallback when buffer age changes"
This reverts commit
62ca4486ea30fd63a5589ea7af373a5cb9982031.
Honestly, I think the gl_x11 code doesn't make sense either. :)
There's no logical reason that we have to do that, though it may be
hiding some other bug? If that's the case, the bug should be fixed
properly.
Cedric BAIL [Wed, 19 Oct 2016 20:40:49 +0000 (13:40 -0700)]
ecore: test recursive case on efl_future.
Cedric BAIL [Wed, 19 Oct 2016 20:39:10 +0000 (13:39 -0700)]
ecore: allow efl_future_cancel on a promise currently being resolved.
This is necessary for allowing proper handling of recursive cancel.
Tom Hacohen [Wed, 19 Oct 2016 15:20:19 +0000 (16:20 +0100)]
Eo: Add a regression test for ref leak in function resolve
This adds a regression test for the last commit.
Tom Hacohen [Wed, 19 Oct 2016 15:14:15 +0000 (16:14 +0100)]
Eo: Fix reference leak when failing to resolve function.
When resolving a function for an object the object would get reference,
and then in some failure cases won't be freed.
I suspect this is a regression following the reshuffling that was done
in that function recently.
Thanks to zmike for investigating and reporting this.
Fixes T4740
@fix
Tom Hacohen [Wed, 19 Oct 2016 15:14:03 +0000 (16:14 +0100)]
Eo: Remove no longer relevant tests.
Daniel Kolesa [Wed, 19 Oct 2016 13:24:26 +0000 (15:24 +0200)]
eolian: fix the nonsensical semantics for variables
Both variables and constants can have extern on them (it means the same thing
as in types, they won't get generated in C). This is different from the previous
semantics which only allowed extern on globals, which makes no sense.
Both globals and constants are allowed to have a value (previously only
constants were); constants are required to have a value. Globals having
a value is just a convenience for initialization during source generation.
This is unlike the previous behavior, where the value was optional for both
globals and constants and only allowed when not marked extern, which makes
no sense either.
Obivously, even when globals have a value, they're not allowed to be used
in expressions, as they cannot be evaluated at compile time (they're mutable).
SangHyeon Lee [Wed, 5 Oct 2016 06:36:04 +0000 (15:36 +0900)]
gengrid: support for non homogenous items
Summary:
Dimensions of gengrid items can be altered for
non homogenity.
Care must be taken however to set the homogenous
size for items using elm_gengrid_item_size_set().
In horizontal mode only the heights will change
and in vertical mode only the widths. Fixed dimension
will be as set with elm_gengrid_item_size_set().
This is forked by https://phab.enlightenment.org/D2422
Test Plan:
elementary_test -to "Gengrid Resized Items"
Current test program provides focus autoscroll
and item looping options.
Reviewers: raster
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4330
Jean-Philippe Andre [Wed, 19 Oct 2016 05:05:31 +0000 (14:05 +0900)]
evas: Last fix... now it builds
Jean-Philippe Andre [Wed, 19 Oct 2016 04:39:02 +0000 (13:39 +0900)]
evas: More compilation fixup with EGLImage
This is what happens when you can't test a patch yourself ^^
Jean-Philippe Andre [Wed, 19 Oct 2016 04:32:55 +0000 (13:32 +0900)]
evas: Fix compilation with older EGL (maybe <1.5)
EGLImage was not introduced until very recently. EGLImageKHR was
the proper type. Thanks Roy for the report.
Cedric BAIL [Tue, 18 Oct 2016 23:49:04 +0000 (16:49 -0700)]
ecore: handle recursive trigger of promise by the cancel of a future.
This avoid double free/double callback call.
Gustavo Sverzut Barbieri [Tue, 18 Oct 2016 22:00:52 +0000 (20:00 -0200)]
efl_net_dialer_udp: enable SO_BROADCAST before sending to 255.255.255.255
Like other toolkits, let's enable this automatically for users before
connecting to 255.255.255.255 IPv4 (IPADDR_BROADCAST), otherwise most
systems will just fail to connect and send packets.
Gustavo Sverzut Barbieri [Tue, 18 Oct 2016 20:51:59 +0000 (18:51 -0200)]
efl_net_dialer_udp: "connect" to an UDP server to send and receive data.
Like existing ecore_con code, this does not use SOCKSv5 UDP
proxy. It's kinda cumbersome to add since requires a keep alive TCP
connection to the server, a second UDP channel and framing around the
original UDP frame.
Added UDP_CORK (if present) to match TCP_UDP present in TCP sockets,
this allows one to execute multiple write() calls that will result in
a single datagram, generated when CORK becomes FALSE again.
The efl_io_copier_example.c now accepts this as output. There is no
input UDP as there is no way to notify the server of a connection
(since such thing doesn't exit), usually servers react after a
datagram is received, replying to the source.
Gustavo Sverzut Barbieri [Tue, 18 Oct 2016 18:32:04 +0000 (16:32 -0200)]
efl_net_socket_tcp: only emit error message if cork is being enabled.
by default we'll start with cork=0 and on adoption of a FD we'll apply
cached values, thus we'd try to apply cork=0 (default) and it would
error, which is annoying on platforms without such feature.
since users interested in TCP_CORK will enable it first, they will get
the error at that point.
Derek Foreman [Tue, 18 Oct 2016 20:52:56 +0000 (15:52 -0500)]
ecore: replace arbitrary time with 32-bit safe arbitrary time
The end of time is much closer than you think. it_value.tv_sec is
a signed 32-bit number on 32-bit machines. Using a negative tv_sec
causes timerfd_settime() to fail.
Jean-Philippe Andre [Tue, 18 Oct 2016 08:36:43 +0000 (17:36 +0900)]
wayland_shm: Add swap mode fallback when buffer age changes
This copies the behaviour in opengl_x11 engine, where the buffer
age needs to be continuously the same to be taken into account.
If the age varies, then we fallback to a full redraw.
Apparently this fixes issues on actual devices. I tested this
patch in weston (I didn't have issues before and buffer age is 1).
Vyacheslav Reutskiy [Tue, 18 Oct 2016 05:49:07 +0000 (08:49 +0300)]
edje_edit: avoid generate '(null)' value for image.normal
Vyacheslav Reutskiy [Mon, 17 Oct 2016 14:25:43 +0000 (17:25 +0300)]
edje_edit: add correct tweens generation for inherit state
Vyacheslav Reutskiy [Mon, 17 Oct 2016 13:56:11 +0000 (16:56 +0300)]
edje_cc: set correct value for attr set for MESH_NODE
On parce the image.normal token set attribute 'set' only for part type
EDJE_PART_TYPE_MESH_NODE.
@fix
Shilpa Singh [Tue, 18 Oct 2016 01:56:53 +0000 (10:56 +0900)]
elm_atspi_bridge: visible data changed signal not sent issue fix.
Summary:
_visible_data_changed_signal_send function checks for wrong object,
hence always returns with out actually sending signal.
The state is set to pd->object_broadcast_mask and not
pd->object_children_broadcast_mask in _set_broadcast_flag function.
Test Plan:
Send the visible data changed signal from any widget, but signal
is not sent.
Reviewers: cedric, lukasz.stanislawski, kimcinoo
Reviewed By: kimcinoo
Subscribers: rajeshps, govi, jpeg
Differential Revision: https://phab.enlightenment.org/D4352
Andrii Kroitor [Mon, 17 Oct 2016 15:51:59 +0000 (18:51 +0300)]
edje_edit: refactor eet file usage
Summary:
Move opening for read/write/read-write and error message to internal method
Reuse eet file from Edje instead of opening it again in read-only mode
Add wrapper for eet_close to skip closing if internal file was used
Reviewers: NikaWhite
Subscribers: cedric, jpeg, #eflete
Differential Revision: https://phab.enlightenment.org/D4353
Chris Michael [Mon, 17 Oct 2016 14:43:43 +0000 (10:43 -0400)]
elementary: Fix call to offer_supports_mime function
As this function was misnamed in Ecore_Wl2, update the code here to
use the proper API function.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Mon, 17 Oct 2016 14:43:27 +0000 (10:43 -0400)]
ecore-wl2: Fix typo in API function name
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Jean-Philippe Andre [Mon, 17 Oct 2016 10:28:14 +0000 (19:28 +0900)]
map: Fix elm_map usage (typo)
Simon Lees [Mon, 17 Oct 2016 10:28:04 +0000 (20:58 +1030)]
Emile: use stronger ssl cipher
Follows on from
356a1aa87a04a8d1c43e01fa861270d0947069c0 emile
didn't exist when this work was done originally
Simon Lees [Mon, 17 Oct 2016 03:28:32 +0000 (13:58 +1030)]
ecore_ssl: Use stricter cipher suites
Thanks to Victor Pereira from the SUSE Security team for auditing
this and recommending better options.
This has been discussed several times but knowone ever got to
commiting it.
Subhransu Mohanty [Fri, 14 Oct 2016 10:45:42 +0000 (19:45 +0900)]
evas/map: do nothing when same map is set again
Reviewers: cedric, Hermet, jpeg
Reviewed By: jpeg
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4344
Shuhrat Dehkanov [Fri, 14 Oct 2016 10:37:46 +0000 (19:37 +0900)]
ELM: sync "clicked" usage with other places in the lib
Summary: In all other places "clicked" is defined as a local variable.
Reviewers: tasn, jpeg
Reviewed By: jpeg
Subscribers: cedric, minkyu
Differential Revision: https://phab.enlightenment.org/D4349
Dave Andreoli [Sat, 15 Oct 2016 18:59:57 +0000 (20:59 +0200)]
Emotion: prefer ratio to calculate sizes
Instead of calculate the ratio from the sizes, calc the width from the ratio,
as ratio seems always accurate.
Fallback to the old code if ratio not available (tbh I never see this case)
@Fix EMOTION_ASPECT_KEEP_BOTH with some rare strams, mostly DVD and online stuff
Carsten Haitzler (Rasterman) [Sat, 15 Oct 2016 02:28:01 +0000 (11:28 +0900)]
fix edje_cc segv when compiling bling bling theme
accessed parts out of range for the part table. check part count first
before checking. fixes segv. @fix
blinblng: http://enform.haxlab.org/files/blingbling_e21.tgz
Derek Foreman [Fri, 14 Oct 2016 21:03:47 +0000 (16:03 -0500)]
evas gl x11 engine - Wrap eglCreateImage
eglCreateImage and eglCreateImageKHR have different parameters - the
attribute list is EGLint for one and EGLAttrib for the other. Since
EGLAttrib is long, on a 64-bit system it's a different size than EGLint.
This was causing a crash in Enlightenment's wl_x11 on 64-bit machines when
trying to use a gl client.
Add a thin wrapper to use whichever is available and pass the appropriate
sized data.
Derek Foreman [Fri, 14 Oct 2016 21:02:45 +0000 (16:02 -0500)]
ecore_evas_wayland: Don't use frame callbacks on windows with no shell surface
If we set a frame callback on a window with no shell surface (ie: and unmapped
window), the frame callback will never fire. This was preventing some
applications like rage from ever posting a frame.
Derek Foreman [Fri, 14 Oct 2016 21:01:54 +0000 (16:01 -0500)]
ecore_wl2: add API for testing if a window has a shell surface
Daniel Kolesa [Fri, 14 Oct 2016 13:31:23 +0000 (15:31 +0200)]
eolian gen: better checks for whether to add space after type
Stefan Schmidt [Fri, 14 Oct 2016 10:36:25 +0000 (12:36 +0200)]
examples: eolian_cxx: adapt code generation to changed eolian_gen commandline
The commandline options have changed for eolian_gen to generate the code. Adapt
the makefile helpers to fix the build break in examples
Carsten Haitzler (Rasterman) [Fri, 14 Oct 2016 07:20:22 +0000 (16:20 +0900)]
fix possible eina file shutdown issue
i am not sure as i cannto reproduce this, but i hope this fixes T4677
by ensuring if eina_file_shutdown is called it cannto double-free a
hash.
Subhransu Mohanty [Fri, 14 Oct 2016 06:52:51 +0000 (15:52 +0900)]
evas/module: add a new module in vg_saver for eet
Reviewers: cedric, jpeg
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4350
Jean-Philippe Andre [Thu, 13 Oct 2016 08:59:13 +0000 (17:59 +0900)]
evas: Fix evas_object_smart_clipped_clipper_get
This was broken for smart objects that are not "clipped smart
objects". This fixes the example evas_smart_object.
NOTE: This EAPI was removed in efl-1.18!
/!\ This was an uncaught API break between 1.17 and 1.18 /!\
@fix
Jean-Philippe Andre [Thu, 13 Oct 2016 08:42:38 +0000 (17:42 +0900)]
evas: Improve render debug logs
Compiled out by default
Carsten Haitzler (Rasterman) [Fri, 14 Oct 2016 02:08:45 +0000 (11:08 +0900)]
ecore_evas - fix setting urgent immediately after show
fixes T4726
Derek Foreman [Thu, 13 Oct 2016 22:40:38 +0000 (17:40 -0500)]
ecore-wl2: Fix input and opaque region setting
Bad y co-ordinate resulted in broken shadows after session recovery.
@fix
Chris Michael [Thu, 13 Oct 2016 16:52:43 +0000 (12:52 -0400)]
elementary: Fix issue of using uninitialized values
Coverity reports that Evas_Coord_Rectangles were being used here without being
initialized so declare those variables with some initial values
Fixes CID1362984
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Thu, 13 Oct 2016 16:50:12 +0000 (12:50 -0400)]
evas: Fix directly dereferencing pointer which may be NULL
Coverity reports this as a dereference before null check which implies
that 'cur' May be null here, so let's not use it before we check it.
Fixes CID1363765
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Thu, 13 Oct 2016 16:47:38 +0000 (12:47 -0400)]
evas: Fix directly dereferencing pointer which may be NULL
Coverity reports this as a dereference before null check which implies
that 'pd' May be null here, so let's not use it before we check it.
Fixes CID1364114
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Thu, 13 Oct 2016 16:43:44 +0000 (12:43 -0400)]
evas: Fix missing varargs cleanup
This patch fixes Coverity CID1364123 which reports that (in some
cases) va_end was not being called for var args. As they were
previously initialized with va_start, then va_end should be getting
called.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Marcel Hollerbach [Thu, 13 Oct 2016 14:25:37 +0000 (16:25 +0200)]
gengrid: call this on the pam class not on the normal class
this fixes gengrid.
Daniel Kolesa [Thu, 13 Oct 2016 13:03:50 +0000 (15:03 +0200)]
eolian gen: use the new data type API to simplify the code
Daniel Kolesa [Thu, 13 Oct 2016 12:54:12 +0000 (14:54 +0200)]
eolian: add API to get the C class datatype
Felipe Magno de Almeida [Thu, 13 Oct 2016 08:51:52 +0000 (17:51 +0900)]
Fix use of undeclared type in C++ tests compilation
Moved Evas_Object_Intercept_Cb_Type; typedef declaration after enum
_Evas_Object_Intercept_Cb_Type definition
Felipe Magno de Almeida [Wed, 12 Oct 2016 05:53:46 +0000 (14:53 +0900)]
cxx: Fix Makefiles for C++ compilation and installation
Marcel Hollerbach [Thu, 13 Oct 2016 08:27:06 +0000 (10:27 +0200)]
ecore: free futures which are still pending on shutdown
otherwise we are leaking a eina list.
This was discovered while running the elm_suite with CK_FORK=no, since
ecore and eina are init´ed and shutdown´ed, after the shutdown this list
points to freeed memory pools. So in the next testcase the list is
invalid and crashes. This fixes it with freeing the list on shutdown.
Subhransu Mohanty [Thu, 13 Oct 2016 08:09:39 +0000 (17:09 +0900)]
evas/module: add a new module in vg_loader for eet
Reviewers: jpeg
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4347
Jean-Philippe Andre [Thu, 13 Oct 2016 01:25:03 +0000 (10:25 +0900)]
evas: Use proper type in smart objects API (eo)
Daniel Kolesa [Wed, 12 Oct 2016 13:08:37 +0000 (15:08 +0200)]
eolian gen: use the C get function name getter instead of manual concat
Daniel Kolesa [Wed, 12 Oct 2016 13:05:46 +0000 (15:05 +0200)]
eolian gen: utilize the new class C name getter instead of manual concat
Daniel Kolesa [Wed, 12 Oct 2016 12:56:22 +0000 (14:56 +0200)]
eolian: add an API to get the C name used to access the class
Vyacheslav Reutskiy [Wed, 12 Oct 2016 12:00:05 +0000 (15:00 +0300)]
edje_edit: new API for generate source code for color classes
Extend edje edit deberate source API. Add two new API.
- edje_edit_object_color_class_list_get return a list of used color classes for
given object
- edje_edit_color_classes_source_generate is generate code for given
color classes list
Vyacheslav Reutskiy [Tue, 11 Oct 2016 12:50:10 +0000 (15:50 +0300)]
edje_edit: add API for get source code of global block data
This API is annex for edje_edit_object_source_generate. Together this
API's provide a mechanism for generate source for custom groups from
a edj file or more.
Vyacheslav Reutskiy [Tue, 11 Oct 2016 11:38:34 +0000 (14:38 +0300)]
edje_edit: add API for generate group source code without 'collection'
Subhransu Mohanty [Wed, 12 Oct 2016 09:39:10 +0000 (18:39 +0900)]
evas/module: Added a new module vg_loader for svg
Reviewers: cedric, jpeg
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4346
Jean-Philippe Andre [Wed, 12 Oct 2016 09:14:58 +0000 (18:14 +0900)]
elm_widget: Remove unnecessary set{} get{} in eo file
Jean Guyomarc'h [Wed, 12 Oct 2016 06:07:25 +0000 (08:07 +0200)]
edje: fix memory leak
Jean-Philippe Andre [Wed, 12 Oct 2016 02:31:17 +0000 (11:31 +0900)]
evas: Mark group_add/del as internal
Lacking a proper internal tag, I'm using both protected (it is
in fact a protected access function) and beta (to mark as unstable,
not real API).
New smart objects based on EO only should rely on constructor,
finalize and destructor exclusively. In theory, this should be fine.
Unfortunately it may be impossible to inherit from the Efl.Ui.Win
class as it uses a really bad hack and calls super.constructor
inside the finalize method.
Jean-Philippe Andre [Tue, 11 Oct 2016 07:54:31 +0000 (16:54 +0900)]
evas/elm: Remove function group_resize
This is an override of efl_gfx_size_set. Same as before, the
order of operations matter so it is possible that a corner
case will break. In particular, legacy code was:
- intercept
- smart resize (do stuff), super, super, super
- evas object resize
The new code is more like:
- intercept
- super, super, super, evas object resize
- do stuff
But unfortunately this broke elm_widget (read: all widgets) as
the internal resize was done before the object resize. So,
inside the resize event cb, the resize_obj size would not match
the smart object size. >_<
Jean-Philippe Andre [Tue, 11 Oct 2016 03:39:05 +0000 (12:39 +0900)]
evas/elm: Remove function group_move
This is an override of efl_gfx_position_set.
As for the other patches, I hope I didn't break anything.
A problem likely to happen is that the super call was inserted
too early or too late in the call flow. For instance:
_myclass_position_set(obj, x, y) {
position_set(super(obj), x, y);
position_get(obj, &prevx, &prevy);
do_something_with_delta_xy();
}
The above code flow is obvisouly wrong, but may have crept in this
patch (such a bug sneaked in inside smart object, breaking
everything at first).
Jean-Philippe Andre [Tue, 11 Oct 2016 03:02:20 +0000 (12:02 +0900)]
evas: Move move_children_relative to legacy only
While this kind of API seems to make sense with smart objects
(relative coordinates), it is currently not used apart from
the smart object class itself.
So, for now, I'm moving this to legacy to clean up Efl.Canvas.Group
and we can later add the equivalent in a clean "group" API.
Jean-Philippe Andre [Mon, 10 Oct 2016 09:59:42 +0000 (18:59 +0900)]
evas/elm: Remove group_show and group_hide
These should be just overrides of Efl.Gfx.visible.set. Many
widgets were handling smart show() and hide() manually, which
means this patch is quite large.
Hopefully this doesn't break anything, obviously. But here are
some widgets known to be problematic, as the old code flow was
really strange (sometimes not calling the efl_super function):
- window
- notify
Jean-Philippe Andre [Mon, 10 Oct 2016 07:44:48 +0000 (16:44 +0900)]
evas: Move clip_unset to legacy, remove group_clip
Similarly to group_color_set, group_clip_[un]set should not
exist and should be a result of efl_super and inheritance.
This patch also removes clip_unset from the EO API and keeps
only clip_set(NULL). The reason is that it will avoid bad overrides
of clip_unset() vs. clip_unset(NULL). This also simplifies the code
a bit. Ideally we should be able to reintroduce clip_unset in EO
if we can have a "@final" tag (like java's final keyword), to
prevent overrides.
Jean-Philippe Andre [Mon, 10 Oct 2016 09:24:20 +0000 (18:24 +0900)]
evas: Remove inexisting private function declarations
Jean-Philippe Andre [Fri, 7 Oct 2016 07:25:49 +0000 (16:25 +0900)]
evas: Remove method group_color_set
Widgets should simply override efl_gfx_color_set and call
super all the way up to evas object.
Legacy compatibility with call interceptors and early call
abortion (eg. delete_me or obj->layer == NULL) are implemented
with an internal call. See the previous commit introducing the
API.
Jean-Philippe Andre [Fri, 7 Oct 2016 03:43:21 +0000 (12:43 +0900)]
evas: Add pseudo-internal API to intercept basic calls
This is a poor man's solution to get rid of group functions such
as clip_set, clip_unset, color_set, etc... See the following
commits.
This API needs to be EAPI for elementary but shouldn't be used
outside EFL. This is required purely for legacy compatibility.
Here's the call flow, inside show(obj):
1. if (intercept_show(obj)) return;
2. show(super(obj));
3. do other stuff
Jean-Philippe Andre [Fri, 7 Oct 2016 03:34:24 +0000 (12:34 +0900)]
evas: Simplify code with intercept macros
Jean-Philippe Andre [Fri, 7 Oct 2016 02:37:00 +0000 (11:37 +0900)]
evas: Move intercept function types to legacy header
Jean-Philippe Andre [Wed, 7 Sep 2016 07:44:03 +0000 (16:44 +0900)]
evas_data: Fix safety checks in evas_object_data
This relies on efl_isa rather than the broken magic check
(by broken I mean it only checks for NULL).
Jean-Philippe Andre [Wed, 7 Sep 2016 05:47:33 +0000 (14:47 +0900)]
evas: Move group color_set after checking for change
I can't see why the group (smart object) color_set function
was called even if the color hadn't change. Let's test and
see if this breaks anything :)
Jean-Philippe Andre [Tue, 6 Sep 2016 12:03:11 +0000 (21:03 +0900)]
evas: Small simplification of object color_set
Jean-Philippe Andre [Tue, 6 Sep 2016 11:02:34 +0000 (20:02 +0900)]
group: Replace group_no_render by object no_render
Most of the smart functions "Efl.Canvas.Group.group_xxx" should
not exist and be overrides of the base object function instead.
Cleaning this up is necessary if we want an EO API for custom
smart objects. This patch is the first attempt at removing a
method (the simplest one).
As for no_render, I wonder if propagating to the children
really is necessary. evas_render should skip them already.
Chris Michael [Tue, 11 Oct 2016 15:30:13 +0000 (11:30 -0400)]
ecore-drm2: Free Output modes on destroy
When we destroy outputs, we should be freeing the Output's Modes also
as that was previously allocated memory.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 11 Oct 2016 15:22:40 +0000 (11:22 -0400)]
ecore-drm2: Use Atomic Modesetting for resolution changes
Since we have atomic properties now, we can use those to set given
Output modes (resolutions).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Hosang Kim [Tue, 11 Oct 2016 12:11:14 +0000 (21:11 +0900)]
edje_calc: add rounding pixel calculation for transition.
Summary: when transition animation is working, sometimes one pixels loss occurs.
Reviewers: cedric, woohyun, jpeg, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4341
Vitalii Vorobiov [Tue, 11 Oct 2016 11:54:24 +0000 (14:54 +0300)]
edje_edit: proper work with part id's on part restack and del for map fields
@fix
jiin.moon [Tue, 11 Oct 2016 12:08:29 +0000 (21:08 +0900)]
evas: Fix no update issue if visiblity of smart object has change
Summary: If child has change about visibility, can't check it correctly.
Reviewers: jypark, cedric, jpeg, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D4345
Andrii Kroitor [Tue, 11 Oct 2016 08:42:21 +0000 (11:42 +0300)]
windows: remove expicit -levil flag
Summary:
Built from sources version of evil is already added to linker flags and
adding extra -levil makes build fail if evil is not already installed in system.
Looks like this flag was here from old times when all efl libraries were separated.
Reviewers: vtorri, NikaWhite
Reviewed By: NikaWhite
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4332
jiin.moon [Tue, 11 Oct 2016 00:28:52 +0000 (08:58 +0830)]
evas: Fix not update issue with TBM surface
Summary:
If the pixels of image object has updates
via native_suface_set api with TBM surface,
does not update on screen(no rendering)
Reviewers: jpeg, cedric
Differential Revision: https://phab.enlightenment.org/D4340
Bruno Dilly [Mon, 10 Oct 2016 18:25:33 +0000 (15:25 -0300)]
Merge branch 'devs/iscaro/osx'
Some fixes for OS X.
This series fixes two problems pointed by jayji and some other
compiler warnings.
Patches by iscaro.
Differential Revision: https://phab.enlightenment.org/D4339