Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 14:57:09 +0000 (12:57 -0200)]
ecore_con/ecore_ipc: flush should wait for connection.
Some applications will create the handle, immediately send data, flush
and delete it, expecting the data to be sent to remote peer.
This is a bad behavior as the application would become unresponsive
until the connection is established, data can be written (since
depends on server consuming it), then allow it to be closed.
A proper behavior here would be to chain based on events, with the
usage of a copier would be simply wait for "done" event.
However the legacy API allowed this and terminology depends on this
awkward "feature", thus be bug-compatible.
This fixes T5015.
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 14:51:56 +0000 (12:51 -0200)]
efl_io_file: initialize all fd to -1.
Since 0 is a valid fd, we should initialize these to -1.
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 14:47:13 +0000 (12:47 -0200)]
efl_net_socket_fd: initialize fds to INVALID_SOCKET
Since 0 is a valid fd, then we'd try to do socket operations on it,
which would generate misleading errors.
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 13:58:55 +0000 (11:58 -0200)]
ecore_con/ecore_ipc legacy: fail early for local sockets.
In the old/legacy API the socket would be opened early in non-blocking
mode (connect returned errno==EINPROGRESS), with UNIX socket being
path-validated early and returning NULL as 'server' handle.
Some applications relied on this instead of monitoring the "ERROR"
events, considering the connection to be successful if there was a
handle -- this was the case with Terminology after it moved from DBus
to Ecore_Ipc.
Although this is not correct, we must keep compatibility and thus we
stat() in compatibility layer, failing early as the old API would do.
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 13:37:24 +0000 (11:37 -0200)]
ecore_con/ecore_ipc: keep log domain alive after shutdown.
These legacy API had the nasty behavior of keeping handles alive until
the pending events were dispatched, this could happen after the module
itself was shutdown, resulting in log to unregistered domains.
Then do not unregister the domain -- eina_shutdown will avoid leaks
anyway.
Chris Michael [Mon, 19 Dec 2016 14:49:36 +0000 (09:49 -0500)]
elput: Fix resource leak
Coverty reports that we leak 'reply' here if we fall into the error
condition.
CID1367506
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Mon, 19 Dec 2016 14:48:30 +0000 (09:48 -0500)]
elput: Fix resource leak
Coverity reports that 'reply' is leaked here if we fall into the error
condition.
CID1367507
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 13:09:02 +0000 (11:09 -0200)]
coverity: add modeling file to reduce false positives.
Gustavo Sverzut Barbieri [Mon, 19 Dec 2016 12:37:21 +0000 (10:37 -0200)]
efl_net: fix CID 1367489 due copy & paste.
we're looking at "x" since it's the return of getaddrinfo(), not "r"
which is used for something else.
Gustavo Sverzut Barbieri [Mon, 12 Dec 2016 18:35:26 +0000 (16:35 -0200)]
efl_debug_common: remove stale code/macros.
These are not needed anymore.
Jean-Philippe Andre [Mon, 19 Dec 2016 03:03:46 +0000 (12:03 +0900)]
evas/ply: Fix some memleaks
I have a strong feeling that this parser is not very robust...
Closes T5001
Andy Williams [Sat, 17 Dec 2016 13:03:31 +0000 (13:03 +0000)]
elm_code: Don't assume control characters make a change
@fix
Ivan Furs [Fri, 16 Dec 2016 23:27:09 +0000 (15:27 -0800)]
Eio_monitor: support native monitor for Win32 (T4978)
Test Plan:
eio_monitor_backend_add() and eio_monitor_fallback_add use different structures
**eio_monitor_backend_add() **
struct _Eio_Monitor_Backend
{
Eio_Monitor *parent;
Eio_Monitor_Win32_Watcher *watcher_file;
Eio_Monitor_Win32_Watcher *watcher_dir;
Eio_Monitor_Win32_Watcher *watcher_parent;
};
**eio_monitor_fallback_add()**
struct _Eio_Monitor_Backend
{
Eio_Monitor *parent;
Eina_Stat self;
Eina_Hash *children;
Ecore_Timer *timer;
Ecore_Idler *idler;
Ecore_Thread *work;
int version;
Eina_Bool delete_me : 1;
Eina_Bool initialised : 1;
Eina_Bool destroyed : 1;
};
therefore, an error occurs
**void eio_monitor_backend_del**(Eio_Monitor *monitor)
{
if (!_eio_monitor_win32_native) <------_eio_monitor_win32_native is EINA_TRUE
{
eio_monitor_fallback_del(monitor); <------ignored------
return; <------ignored------
}
_eio_monitor_win32_watcher_free(monitor->backend->watcher_parent);
_eio_monitor_win32_watcher_free(monitor->backend->watcher_dir);
_eio_monitor_win32_watcher_free(monitor->backend->watcher_file);
free(monitor->backend);
monitor->backend = NULL;
}
Reviewers: raster, vtorri, an.kroitor, jpeg, reutskiy.v.v, FurryMyad, cedric
Reviewed By: cedric
Subscribers: vtorri, artem.popov, cedric, jpeg
Tags: #windows, #efl
Differential Revision: https://phab.enlightenment.org/D4492
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Hosang Kim [Fri, 16 Dec 2016 23:25:18 +0000 (15:25 -0800)]
scrollable_interface: fixed logic for calcualting position to scroll.
Summary:
When width of parameter(w) is bigger than or equal to scroller's width(pw),
scrollable object must be scrolled to x position.
Test Plan: elementary_test -> focus 4
Reviewers: woohyun, SanghyeonLee, Hermet, cedric, jpeg, raster
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4491
Hosang Kim [Fri, 16 Dec 2016 23:24:00 +0000 (15:24 -0800)]
elm_widget: add logic for updating geometry after moving
Summary:
scrollable object.
In multiple scrollable case, the target object should be updated.
Because the first object is scrolled. So the parent of the first object should be scrolled.
Reviewers: woohyun, Hermet, jpeg, cedric, raster
Differential Revision: https://phab.enlightenment.org/D4490
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Cedric BAIL [Fri, 16 Dec 2016 23:15:17 +0000 (15:15 -0800)]
edje: handle case when strdup would be NULL.
alternate solution to D4488. Would be better to have a buffer and recycle it.
Jee-Yong Um [Fri, 16 Dec 2016 23:02:06 +0000 (15:02 -0800)]
elm.hoversel: fix item size calculation
Summary:
The way to find the position of hoversel expansion is based on geometry
currently, but it causes errors when theme is not made as expected.
This patch makes hoversel use string to find the right position and
calculate item width correctly when items are shorter than hoversel itself.
Test Plan:
elementary_test -to hoversel
(error case shows in tizen mobile device when screen is rotated)
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4484
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Cedric BAIL [Fri, 16 Dec 2016 22:10:11 +0000 (14:10 -0800)]
eio: check error case for eina_value_get.
CID 1356609
Cedric BAIL [Fri, 16 Dec 2016 22:06:02 +0000 (14:06 -0800)]
ecore: add test for efl_promise_connect.
Cedric BAIL [Fri, 16 Dec 2016 22:05:10 +0000 (14:05 -0800)]
ecore: add helper to automatically connect a future result to a promise.
This helper is to be used likely with next and an external request.
Cedric BAIL [Fri, 16 Dec 2016 21:11:29 +0000 (13:11 -0800)]
ecore: add tests for new promise delayed behavior.
Cedric BAIL [Fri, 16 Dec 2016 19:28:50 +0000 (11:28 -0800)]
ecore: fix test to generate one main loop iteration to see promise fulfilled.
Cedric BAIL [Fri, 16 Dec 2016 19:26:46 +0000 (11:26 -0800)]
ecore: delay promise fulfillment to next loop iteration.
Cedric BAIL [Fri, 16 Dec 2016 18:42:59 +0000 (10:42 -0800)]
ecore: remove useless information from header.
Cedric BAIL [Fri, 16 Dec 2016 18:19:37 +0000 (10:19 -0800)]
ecore: refactor promise propagation code.
Derek Foreman [Fri, 16 Dec 2016 15:12:30 +0000 (09:12 -0600)]
evas engines: Stop using arrays of 1 member for egl context and surface
There's actually an array of 2 in gl_x11, but it appears we only use the
first 1, except in an #if 0 block.
I gather this is legacy for some reason - it sure doesn't seem to make
any sense now, so I'm chopping off all the extra array indexes.
Note: I've not changed gl_sdl - it looks like it doesn't use the context
or surface at all and they could just be removed, but I don't build that
one here and don't want to touch it.
Vyacheslav Reutskiy [Fri, 16 Dec 2016 13:30:20 +0000 (15:30 +0200)]
edje_pick: copy images from image sets
@fix
Vyacheslav Reutskiy [Fri, 16 Dec 2016 13:27:53 +0000 (15:27 +0200)]
edje_pick: use separate Eina_List vars for different EINA_LIST_FOREACH
Jean-Philippe Andre [Fri, 16 Dec 2016 09:59:05 +0000 (18:59 +0900)]
elm: Add a test case for evas masking
This tests masks of masks in a genlist, with maybe a map.
Nothing crazy.
Jean-Philippe Andre [Fri, 16 Dec 2016 09:53:33 +0000 (18:53 +0900)]
elm_layout: Implement Efl.Text
This implements support for efl_text_set() for the default
part (NULL). This also adds support for efl_text_set(efl_part())
for layouts. This should cover a LOT of widgets :)
The next step is to remove Elm.Layout.text but it's used in too
many places at the moment. @herdsman!!
Jean-Philippe Andre [Fri, 16 Dec 2016 08:04:05 +0000 (17:04 +0900)]
evas: Fix issues with masking (make check)
After a previous patch, mask_subrender worked differently, and
didn't reset the object's cache clip color. This made evas_suite
fail. But also it seems some other issues creeped in and it was
necessary to fix the test case by adding data_updates (mistake!)
and removing an invalid draw call.
Carsten Haitzler (Rasterman) [Fri, 9 Dec 2016 06:27:55 +0000 (15:27 +0900)]
elm - add test for efl ui win stacking api
Carsten Haitzler (Rasterman) [Fri, 9 Dec 2016 06:27:10 +0000 (15:27 +0900)]
efl_ui_win - use ecore_x window stack api to set up property in x11
Carsten Haitzler (Rasterman) [Thu, 8 Dec 2016 10:14:32 +0000 (19:14 +0900)]
efl_ui_win - teamwork really has issues and i think needs deprecation
teamwork api in elm win (efl_ui_win) has a few issues:
1. it directly ddigs into ecore_wl2 and uses internal headers to use
zwp_* api's directly... which effectively tied elementary directly to
libwayland and thats not a good thing - thats why ecore_wl2 exists -
to act as a layer in between
2. the only thing that supports it is e and only wiht a module and
there is no fallback code in elm to work outside this environment, so
it's kind of broken by design and will not actually reliably work
3. from a stability and security point of view, and api and protocol
that allow a client to ask your wm/compositor to open ANY url - go
make a network request possibly to a hostile url/site is bad. needing
to handle so so so so many protocols, file types etc. etc. is going to
lead to issues that SHOULD at least be isolated in the app, but now it
spreads into your wm/compositor too. :(
4. there is ZERO benefit to asking the wm to do this. the app is
using efl already. it already has all the same abilities with the same
libraries to download/display etc. so why doesnt the app do it itself?
5. doesnt work in windows, osx, framebuffer (fbcon or drm)... only in
x11 and wayland. (and then only with e + module)
6. there is no way to detect if it's going to work and write your own
fallback (which shouldnt be needed/done anyway).
nice work and enthusiasm on making teamwork but it just isn't the right
thing - not in its current form and not by design (security reasons) :(
@deprecate
Carsten Haitzler (Rasterman) [Thu, 8 Dec 2016 09:48:05 +0000 (18:48 +0900)]
ecore-x - add missing atom fetches!
ECORE_X_ATOM_E_ILLUME_SLIDING_WIN_STATE
ECORE_X_ATOM_E_ILLUME_SLIDING_WIN_GEOMETRY
ECORE_X_ATOM_E_KEYROUTER_SUPPORTED
ECORE_X_ATOM_E_KEYROUTER_WINDOW_KEYTABLE
all had no atom fetches! fix..
@fix
Carsten Haitzler (Rasterman) [Thu, 8 Dec 2016 09:42:34 +0000 (18:42 +0900)]
ecore-x - add e stack type atom and api's to set and get it
Carsten Haitzler (Rasterman) [Thu, 8 Dec 2016 08:49:23 +0000 (17:49 +0900)]
efl_ui_win - add window "view stack" api's and ability
this adds the a stack of windows (view stack, something like naviframe
but using multiple windows instead) to elementary allowing windows to
be put into a stack and treated as one "application" when ijn such a
stack with the newest window on top being the active/focused one (or
should be). this allows for special show/hide animations as well as
possibly special sizing policies and placement policies.
@feature
Jean-Philippe Andre [Fri, 16 Dec 2016 06:21:01 +0000 (15:21 +0900)]
evas: Apply clip when rendering a masked mask
This fixes a rare crash in the SW engine when a masked mask is
to be rerendered. The clip adds more safety as the lower render
draw functions assume it is properly set.
Jean-Philippe Andre [Fri, 16 Dec 2016 05:55:44 +0000 (14:55 +0900)]
test.edc: Fix indentation of a group
Jean-Philippe Andre [Fri, 16 Dec 2016 05:35:52 +0000 (14:35 +0900)]
evas: Change int into a single bit
clean_layer is a bool
Jean-Philippe Andre [Fri, 16 Dec 2016 03:16:01 +0000 (12:16 +0900)]
evas: Fix masks of masks
Don't ask. This is a world of magic.
Jean-Philippe Andre [Fri, 16 Dec 2016 02:19:17 +0000 (11:19 +0900)]
evas: "fix" masks of masks inside a proxy
Here's the situation:
1. A container (genlist) has a mask, M0.
2. An item I0 inside this container uses a proxy P0 as render object
rather than the item directly (eg. for zooming in/out).
3. An element E0 inside this item has another mask, M1.
Theory:
1. The proxy surface for P0 is rendered, and M1 is applied to
the element E0.
2. The proxy P0 is rendered on the canvas, with M0 applied.
Practice:
1. The element E0 is prepared for rendering, this triggers
a mask subrender for M1.
2. M1 is rendered with M0 as a prev mask, then kept in cache and
not redrawn (no geometry change, etc...)
3. When P0's surface is rendered, M1's surface is the result of M1+M0.
4. When P0 is drawn on screen, we can see the effect of M1+M0 as
P0's geometry might be different from the item's I0.
Solution:
Discard prev masks and force a mask redraw when we're inside a
proxy. Ideally we should detect if the prev mask belongs to the
insides of the proxy or not.
Problems:
_mask_apply_inside_proxy() is definitely not correct, but it's
not easy to test it. Anyway I believe that in order to properly
implement all of this, we need to rethink evas_render and
the draw context. Non-primary render surfaces (maps, proxies,
masks, filters, ...) should be rendered with a clean context
and clipping, masking, etc should be computed appropriately.
Jean-Philippe Andre [Fri, 16 Dec 2016 01:55:47 +0000 (10:55 +0900)]
evas: Remove flag use_mapped_ctx and add do_async
Always assume use_mapped_ctx as true, the caller of evas_render_mapped
must ensure that the context is suitable (so either clean or contains
the appropriate clip info).
Also pass do_async to mask_subrender. For now it will always be reset
to false as the SW engine requires sync render to convert from RGBA
to Alpha (not great). The upcoming GL async engine should be able to
render masks asynchronously without any problem.
Jean-Philippe Andre [Fri, 16 Dec 2016 01:53:03 +0000 (10:53 +0900)]
evas: Call object render in mask_subrender
This can avoid some invalid render from evas_render_mapped in
a rare case. I'm not sure about the conditions but I know for
sure that at the moment mask_subrender should be only rendering
plain old images into a dedicated surface. So no need for
evas_render_mapped here.
Jean-Philippe Andre [Fri, 16 Dec 2016 01:44:47 +0000 (10:44 +0900)]
evas: Remove context from the evas public data
It was never used, except in dubious situations (most likely a typo).
A clean context is now used in the top-most call to
evas_render_updates_internal_loop.
Jean-Philippe Andre [Fri, 16 Dec 2016 01:40:55 +0000 (10:40 +0900)]
evas: Remove context from some engine function
This is for canvas_alpha_get. context is never used.
Jean-Philippe Andre [Fri, 16 Dec 2016 01:37:54 +0000 (10:37 +0900)]
evas: Remove context from polygon internal functions
It's not used
Jean-Philippe Andre [Thu, 15 Dec 2016 06:25:43 +0000 (15:25 +0900)]
evas: Use ENFN, ENDT in evas_render
This makes code shorter and easier to read (imo).
Also introduce ENCTX for the engine context. It's used in a couple
places and I believe it's just wrong - but works because the engine
context and the current context are the same.
Jean-Philippe Andre [Wed, 14 Dec 2016 07:28:42 +0000 (16:28 +0900)]
evas: Avoid calling efl_isa in proxy_subrender
It's not necessary.
Jean-Philippe Andre [Tue, 13 Dec 2016 08:41:49 +0000 (17:41 +0900)]
evas: Add source_region property to proxy objects
This will allow partially rendering a proxy in a smaller image,
limited to the specified region. At the moment, this will allow
apps to create proxies of very large objects and let them deal
with the geometry & clipping.
This is not directly solving the issues with adding a filter
to textblock or the infinite page scrollers.
@feature
Cedric BAIL [Fri, 16 Dec 2016 00:45:10 +0000 (16:45 -0800)]
emile: refactor color convertion/copy logic in jpeg data decoder.
Cedric BAIL [Thu, 15 Dec 2016 23:18:54 +0000 (15:18 -0800)]
eet: add test for eet_alias_get.
Cedric BAIL [Thu, 15 Dec 2016 23:18:41 +0000 (15:18 -0800)]
eet: add test for eet_memopen_read.
Cedric BAIL [Thu, 15 Dec 2016 23:00:58 +0000 (15:00 -0800)]
eina: add a test for eina_stringshare_refplace.
Cedric BAIL [Thu, 15 Dec 2016 22:40:06 +0000 (14:40 -0800)]
eina: add test for skyline algorithm.
Cedric BAIL [Thu, 15 Dec 2016 22:30:57 +0000 (14:30 -0800)]
autotools: lcov-baseline is a dependency of lcov-report actually.
Cedric BAIL [Thu, 15 Dec 2016 22:30:33 +0000 (14:30 -0800)]
eio: fix attr tests to process an array of string.
Cedric BAIL [Thu, 15 Dec 2016 19:39:16 +0000 (11:39 -0800)]
eina: pass the right size of the string to avoid unbounded access warning.
Cedric BAIL [Thu, 15 Dec 2016 19:31:31 +0000 (11:31 -0800)]
evas: silence warning of clobbered variable in the png saver.
Cedric BAIL [Thu, 15 Dec 2016 19:28:17 +0000 (11:28 -0800)]
evas: fix use of signed and unsigned type in conditional expression warning.
Cedric BAIL [Thu, 15 Dec 2016 19:27:54 +0000 (11:27 -0800)]
evas: fix potential use of unitialized variable.
Cedric BAIL [Thu, 15 Dec 2016 19:17:34 +0000 (11:17 -0800)]
emile: reduce the amount of clobbered variable.
Cedric BAIL [Thu, 15 Dec 2016 18:44:22 +0000 (10:44 -0800)]
eolian: silence clobbered variable warning.
Cedric BAIL [Thu, 15 Dec 2016 18:31:56 +0000 (10:31 -0800)]
ecore_con: reduce amount of warning related to clobbered variable.
Cedric BAIL [Thu, 15 Dec 2016 18:08:21 +0000 (10:08 -0800)]
efl_debug: silent unused use of static variable.
Cedric BAIL [Thu, 15 Dec 2016 18:01:14 +0000 (10:01 -0800)]
evas: fix comparison between unsigned and signed warning.
Cedric BAIL [Thu, 15 Dec 2016 17:59:41 +0000 (09:59 -0800)]
ecore_con: fix incompatible type warning.
Cedric BAIL [Thu, 15 Dec 2016 17:55:11 +0000 (09:55 -0800)]
ecore_con: fix misleading indentation warning.
Hannes Janetzek [Thu, 15 Dec 2016 04:18:39 +0000 (05:18 +0100)]
ecore-x: fix Mode_switch key mapping
- remove redundant XKeysymToString when sym == sym2
@fix
Daniel Kolesa [Thu, 15 Dec 2016 12:31:35 +0000 (13:31 +0100)]
eolian: enable typechecked expression validation
This code was formerly disabled, but it's safe now.
Tom Hacohen [Thu, 15 Dec 2016 11:18:24 +0000 (11:18 +0000)]
Eo: remove unreachable code in isa.
This condition can never be true. It can't be NULL here. A NULL here
would have caused a crash earlier, though it can only be NULL if an
allocation fails, which is something that we don't really handle
for smallish allocations.
CID1366823
Daniel Kolesa [Wed, 14 Dec 2016 17:14:10 +0000 (18:14 +0100)]
eolian: handle pointer types in typechecking expr eval
Also improve expr error messages and fix Eolian tests.
Daniel Kolesa [Wed, 14 Dec 2016 16:40:43 +0000 (17:40 +0100)]
ecore con tests: fix missing include
Daniel Kolesa [Wed, 14 Dec 2016 16:32:32 +0000 (17:32 +0100)]
eolian gen: specialize default values by type
Now we can generate NULL for stuff that is pointers and empty
struct literals for struct instead of just 0 for everything. The
previous behavior was incorrect for those cases and generated
broken code.
Daniel Kolesa [Wed, 14 Dec 2016 16:31:24 +0000 (17:31 +0100)]
eolian: handle pointers in aliased_base_get
Daniel Kolesa [Wed, 14 Dec 2016 16:28:50 +0000 (17:28 +0100)]
eolian: unary expr eval for floats and add a signed number mask
This adds a new mask for all signed numbers (sint + float) and
fixes unary expr evaluation for floats, as well as fixes eval
error messages.
Mike Blumenkrantz [Wed, 14 Dec 2016 16:43:39 +0000 (11:43 -0500)]
ecore-wl2: restore previous session recovery behavior on hide
ref
9492ee21dfa642123043da5d5ef7954e886b0f9c
Chris Michael [Wed, 14 Dec 2016 14:14:50 +0000 (09:14 -0500)]
elput: Properly check return values from libinput config functions
As libinput_config_status may contain 3 possible return values, we
need to santize the return values there into Eina_Bool for use in our
own functions.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 14 Dec 2016 14:11:50 +0000 (09:11 -0500)]
elput: Add API functions to get/set if tap-to-click is enabled
This patch adds API functions to get or set if tap-to-click is enabled
on a touchpad device
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 14 Dec 2016 14:04:52 +0000 (09:04 -0500)]
elput: Add API functions to get/set touchpad click method
This patch adds API functions to get or set the click method used on
touch devices. The click method defines when to generate software
emulated buttons
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 14 Dec 2016 13:59:56 +0000 (08:59 -0500)]
elput: Add API functions to get/set the scroll method for a touchpad
device
This patch adds API functions which can be used to get or set the
scroll method used for a given device. Scroll method defines when to
generate scroll axis events
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 14 Dec 2016 13:48:37 +0000 (08:48 -0500)]
elput: Add API functions to enable/disable dwt support on touchpads
This patch adds API functions to get/set if dwt (disable-while-typing) is
enabled on a touchpad.
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 13 Dec 2016 18:22:29 +0000 (13:22 -0500)]
elput: Add API functions to enable/disable drag-lock on touch devices
This patch adds API functions to get or set if drag-lock is enabled on
touch devices.
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 13 Dec 2016 18:05:58 +0000 (13:05 -0500)]
elput: Add API functions to enable/disable tap-and-drag
This patch adds new API functions for Elput touch devices to get or set if
tap-and-drag is enabled on a touchpad device
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Mykyta Biliavskyi [Wed, 14 Dec 2016 13:40:49 +0000 (15:40 +0200)]
Fix generate ecore key events on windows.
If Ctrl+number combination pressed/unpressed function
_ecore_win32_event_keystroke_get return NULL. It happens because
ToUnicode WinAPI func fails to prepare unicode string for given scancode
and the keyboard state.
This commit add exception for the case with digits keys. In case if
there no translate
string, but the digit key processed - will be created a normal event as
usual.
Shinwoo Kim [Wed, 14 Dec 2016 11:18:50 +0000 (20:18 +0900)]
elementary: slider uses max value when atspi tries to set value.
Because double type value could be 1.
00000000000000022204.
Jaehyun Cho [Wed, 14 Dec 2016 10:53:49 +0000 (19:53 +0900)]
naviframe: Raise previous view after item pop is finished.
Previously, previous view was raised immediately when item pop is
started so previous view covers current view when item pop is started.
Now, previous view is raised after item pop is finished so previous view
covers current view when item pop is finished.
Change-Id: I86f343e0b49f3801d00e553755896f0eb756daa0
Thiep Ha [Wed, 14 Dec 2016 08:59:40 +0000 (17:59 +0900)]
edje_calc: remove redundant checking
We check amin > ZERO && amax > ZERO, so no need to do it them again.
Guilherme Iscaro [Tue, 13 Dec 2016 16:50:31 +0000 (14:50 -0200)]
Ecore Evas VNC: Properly shutdown server during cleanup.
Summary:
The function rfbScreenCleanup() does not close the open sockets,
a call to rfbShutdownServer() must be done to properly close them.
Reviewers: cedric, bdilly
Reviewed By: bdilly
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4459
Vitalii Vorobiov [Tue, 13 Dec 2016 12:17:39 +0000 (14:17 +0200)]
edje_pick: fix memory leak while on group dependency build
@fix
Shilpa Singh [Tue, 13 Dec 2016 11:56:18 +0000 (20:56 +0900)]
elc_naviframe: Delete naviframe items in LIFO manner on widget deletion.
Summary:
Naviframe manages items in the form of a stack, but deletion is happening
in FIFO manner, the deletion of items on widget deletion should also happen
in LIFO manner.
Use Case: Application allocates memory on first push and passes down the same
handle for all subsequent pushes, now on deletion as first item is deleted first
crash happens when the memory is accessed in second item on its deletion.
hence Naviframe should also delete items in LIFO manner.
@feature
Test Plan:
elementary_test->naviframe->push multiple pages
Now terminate the app, the items should be deleted in LIFO
manner.
Reviewers: Hermet, Jaehyun, Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, govi, rajeshps, jpeg
Differential Revision: https://phab.enlightenment.org/D4483
Jean-Philippe Andre [Mon, 12 Dec 2016 09:36:49 +0000 (18:36 +0900)]
elm_test: Add a test case for gfx filters
This adds a test window for the efl_gfx_filter (also known as
evas filters). The builtin examples are not incredibly pretty
but they showcase some of the most basic features. They also
show that some of the filters need to be improved.
Note that the code contains a lot of FIXME due to the incompleteness
of our EO API. Also, Efl.Ui.Text still has quite a few issues (sizing,
lack of a working change event, ...) so the UI doesn't even look as
designed (a label is missing). Hopefully this should get fixed over
time.
Oh and this is mostly using EO APIs but that's a terrible idea as
evas_object_text is not going to be exposed in EO land... except
it's the only object implementing filter support (with image).
Jean-Philippe Andre [Tue, 13 Dec 2016 05:59:37 +0000 (14:59 +0900)]
spinner: Fix mouse wheel events
Fix invalid cast of event_info
Jean-Philippe Andre [Tue, 13 Dec 2016 04:38:16 +0000 (13:38 +0900)]
evas: Make evas object loop users
This makes efl_loop_get() work on evas objects, returning the
main loop as expected. Also make the loop a property of the
Loop_User class (shouldn't it be called Efl.Loop.User instead?)
Jean-Philippe Andre [Mon, 12 Dec 2016 09:17:30 +0000 (18:17 +0900)]
evas: Fix stacked box align
I added a way to respect the object's alignment when adding them
to a stacked box, but that alignment should only be used when the
box align is set to fill, otherwise both aligns would conflict.
See
3df7b717c932adac481aa0ec527d4d5893b07bb8
Daniel Zaoui [Tue, 13 Dec 2016 05:45:50 +0000 (07:45 +0200)]
Fix compilation warning due to redeclared variable
Bruno Dilly [Tue, 13 Dec 2016 05:28:50 +0000 (03:28 -0200)]
Merge branch 'devs/iscaro/memory'
This series reduce the memory footprint caused by
_evas_object_pointer_data_get() previous implementation.
Patches by Guilherme Iscaro <iscaro@profusion.mobi>
Reviewed By: bdilly, cedric, jpeg, raster
Differential Revision: https://phab.enlightenment.org/D4474
Guilherme Iscaro [Mon, 5 Dec 2016 16:48:58 +0000 (14:48 -0200)]
Efl.Canvas.Object: Remove the extra parementer at _evas_object_pointer_data_get()
The Evas_Pointer_Data struct already contains a Efl.Input.Device pointer.
Guilherme Iscaro [Mon, 5 Dec 2016 16:26:25 +0000 (14:26 -0200)]
Efl.Canvas.Object: Reduce memory used to store Evas_Object_Pointer_Data.
The hash implementation demonstrated that too much memory was being used
to store the Evas_Object_Pointer_Data. In order to reduce the memory usage
this patches now changes the Evas_Object_Pointer_Data storage to an Eina_Inlist and
now Massif profiles shows that the memory usage was drastically reduced.
Awadhesh Singh [Tue, 13 Dec 2016 00:35:46 +0000 (16:35 -0800)]
evas: fix memory leak in software generic in error case.
Summary:
pixels_tmp memory need to be free in default case too.
Signed-off-by: Awadhesh Singh <awadhesh1.s@samsung.com>
Reviewers: singh.amitesh, raster, cedric
Reviewed By: cedric
Subscribers: atulfokk, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4473
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>