Carsten Haitzler (Rasterman) [Fri, 19 Aug 2016 02:48:29 +0000 (11:48 +0900)]
efreetd - only open log file is env var is set to do so
set EFREETD_LOG to something to get efreetd to log. otherwise efretd
log files can end up rather larth and since they go in xdg_runtimedir
- thats mostly a ramdisk... they eat actual ram. so save a lot of
memory and only log if asked to.
@fix
Carsten Haitzler (Rasterman) [Fri, 19 Aug 2016 02:04:50 +0000 (11:04 +0900)]
evas software downscaler - get about 1.8x to 3x speedups for cases
this speeds up downscaling of images by somewhere between 1.8 to 3x
dpeending on case and cpu etc. - this is ONLY for downscaling of an
image buffer betweeb 50% width and/or height up to 100% of width and
height. it's a special case optimization that cuts down the complexity
of the full super sampling filter to just do a bilinear interpolation
which is actually strictly correct for this size range and shouldn't
drop quality. it uses fixed point (16.16) to do the sup pixel sampling.
no mmx/asse or neon, but we could actually easily use it as we do use
mmx/ee and neon in the bilinear upscaler to do interpolation so this
would work here too. it just requires time and effort to make yet 2x
more special cases and use the ASM to do the hard slog here.
@optimize
Gustavo Sverzut Barbieri [Thu, 18 Aug 2016 16:36:05 +0000 (13:36 -0300)]
eina_error: allow errno.h codes.
we have some duplication of errors between Eina_Error and errno.h,
however we should use Eina_Error to extend the traditional errno.h
system.
then change eina_error_msg_register() and
eina_error_msg_static_register() to return a magic bit to state the
number was registered, and on other functions test this bit in order
to operate on registered values, otherwise fallback to errno.h, such
as strerror().
It also deprecates 2 clear duplicated errors:
- EINA_ERROR_OUT_OF_MEMORY -> ENOMEM
- EINA_ERROR_TIMEOUT -> ETIMEDOUT
There are two details when using strerror():
- old behavior did not return strings for non-error, such as
"Success" or "Unknown error ${N}"
- thread-safety issues: since we must be thread safe, then use
strerror_r() and eina_stringshare_add() that value, keeping a hash
of cached values
Daniel Kolesa [Thu, 18 Aug 2016 14:12:24 +0000 (15:12 +0100)]
docs: add include flag verification
Daniel Kolesa [Thu, 18 Aug 2016 13:50:24 +0000 (14:50 +0100)]
docs: add writer support for include plugin
Youngbok Shin [Thu, 18 Aug 2016 11:39:40 +0000 (14:39 +0300)]
Evas text: fix RTL text ellipsis issues
Summary:
Visual position of ellipsis item should be set according to
its bidi direction. But, by setting visual position in same way
as logical position, the end ellipsis could be put opposite side.
Also, start ellipsis must placed on left side of RTL text.
@fix T3187
Test Plan: Test an sample on T3187
Reviewers: tasn, woohyun, herdsman
Subscribers: raster, Blackmole, z-wony, cedric, jpeg, minudf
Maniphest Tasks: T3187
Differential Revision: https://phab.enlightenment.org/D3769
Youngbok Shin [Thu, 18 Aug 2016 11:09:16 +0000 (14:09 +0300)]
Elementary: Load image for image item with proper orientation
Summary:
Image files can have orientation information. Elm Entry have to
call evas_object_image_load_orientation_set() for showing image
with proper orientation.
Test Plan: N/A
Reviewers: herdsman, raster, jpeg
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4244
Youngbok Shin [Thu, 18 Aug 2016 10:33:08 +0000 (13:33 +0300)]
Evas Text: parse font string everytime for updating lang properly
Summary:
We can't assume the given font is same with current fdesc by comparing string.
Since Evas starts to supporting "auto" for language,
the given font string should be parsed once before comparing it.
@fix
Test Plan: N/A
Reviewers: tasn, raster, cedric, herdsman
Subscribers: jpeg, minudf, z-wony, Blackmole, woohyun
Differential Revision: https://phab.enlightenment.org/D4227
Carsten Haitzler (Rasterman) [Thu, 18 Aug 2016 05:19:25 +0000 (14:19 +0900)]
ejde - fix recalc single min n edje for h eval
this fixes a seemingly small typo that would only turn up with fixed
point, but not floats as we have by default whwere we had
x = 999;
instead of
x = FROM_INT(999);
shouldn't be visibule unless you disable float support and use fixed
point in edje.
Carsten Haitzler (Rasterman) [Thu, 18 Aug 2016 05:18:06 +0000 (14:18 +0900)]
edje - solve crash issues brought on by optimization of edje mem usage
this solves a crash brought on by
1d6a58cfc9f3bbe821eb04150e2b1e0ede7b32eb
that optimized mem usage but seems to have created issues in empc.
fixes T4382
Gustavo Sverzut Barbieri [Thu, 18 Aug 2016 04:01:25 +0000 (01:01 -0300)]
efl_loop_user: error if parent is not a loop provider.
it was silently ignoring the parent, which led me to hours trying to
investigate why my code wasn't working just to realize my parent
wasn't being assigned and refcounts were screwed.
Gustavo Sverzut Barbieri [Wed, 17 Aug 2016 00:41:26 +0000 (21:41 -0300)]
eolian: gracefully handle incorrect case of inherit.
If you use "EFl" instead of "Efl", it will find the proper file, but
won't find the type... crashing.
Handle that case and hint the user about it.
Jihoon Kim [Thu, 18 Aug 2016 01:40:24 +0000 (10:40 +0900)]
edje_entry: Make a result of retrieve_surrounding_cb secure
Summary:
Regardless of the password mode of Entry,
_edje_entry_imf_retrieve_surrounding_cb alwalys passes plain_text
to any callers who register that callback.
This commit replace plain text with '*'
because current behavior could be a security hole in some case.
Reviewers: woohyun, id213sin, jihoon
Reviewed By: jihoon
Subscribers: cedric, jsuya, z-wony, jpeg
Differential Revision: https://phab.enlightenment.org/D4238
Lauro Moura [Wed, 17 Aug 2016 23:53:56 +0000 (20:53 -0300)]
eolian_cxx: Fix behavior with explicit void return
Only perform the single value/return type substitution on properties if the
void return type is implicit (i.e. NULL return from function_return_type_get),
following the eolian-C implementation as we use the generated headers.
Also update example after Eo-Efl changes.
Derek Foreman [Wed, 17 Aug 2016 21:22:54 +0000 (16:22 -0500)]
wayland_egl: Fix rendering on systems without buffer age
If buffer age isn't present we really want to return MODE_FULL, but we were
previously returning MODE_AUTO.
On recent mali drivers this resulted in accidental partial updates leading
to incorrect rendering.
Derek Foreman [Wed, 17 Aug 2016 21:21:29 +0000 (16:21 -0500)]
wayland_egl: Remove swap_mode from engine info
This was never set anywhere and always defaulted to 0, or AUTO
Stefan Schmidt [Wed, 17 Aug 2016 12:37:56 +0000 (14:37 +0200)]
examples: evas: ensure filter example lua files land in tarball
These are needed for a make doc run and have been missing the tarball before.
@fix
Stefan Schmidt [Wed, 17 Aug 2016 12:35:15 +0000 (14:35 +0200)]
doc: put shot.sh into dist to allow make doc run from tarball
This was missing in the release tarballs before breaking a make doc run from
them.
@fix
Daniel Kolesa [Wed, 17 Aug 2016 12:50:01 +0000 (13:50 +0100)]
docs: move all of serializers to doctree
Daniel Kolesa [Wed, 17 Aug 2016 12:42:29 +0000 (13:42 +0100)]
docs: move type serializer into doctree
Daniel Kolesa [Wed, 17 Aug 2016 12:34:20 +0000 (13:34 +0100)]
docs: move type cstr retrieval to doctree
Tom Hacohen [Wed, 17 Aug 2016 10:24:48 +0000 (11:24 +0100)]
Efl Object: Make event description arrays const.
This was an oversight. They should have been const arrays, and not just arrays
of pointers to const items.
Minkyoung Kim [Wed, 17 Aug 2016 08:50:18 +0000 (17:50 +0900)]
evas/gl_x11 : Add multiple_buffer member in native surface x11 type union.
Summary:
If native surface is multiple buffer pixmap such as named pixmap, Evas should recreate eglImage everyframe.
Because DDK get the buffer ID once at eglImageCreate time.
So if internal buffer ID is changed, should recreate eglImage.
Test Plan: Wearable Tizen.
Reviewers: wonsik, raster, cedric, jpeg
Reviewed By: jpeg
Subscribers: spacegrapher, dkdk, cedric
Differential Revision: https://phab.enlightenment.org/D4211
Jean-Philippe Andre [Wed, 17 Aug 2016 08:21:33 +0000 (17:21 +0900)]
evas: Fix BMP load with region set and scale down
This fixes usage of photocam on large BMP images.
Follows previous commits by @jiin.moon.
Jean-Philippe Andre [Wed, 17 Aug 2016 07:45:16 +0000 (16:45 +0900)]
evas: Fix region test in jpeg load with region + zoom
The previous commit exposed an issue with the region test
does not take into account the scale down factor.
Not a @fix in itself, as it depends on the previous patch.
jiin.moon [Wed, 17 Aug 2016 07:39:13 +0000 (16:39 +0900)]
emile: region_set does not working in jpeg loader if scale_down has set
Summary:
If both region and scale_down has set, ERR would be returned by loader of jpeg.
@fix
Test Plan: sample code
Reviewers: raster, jypark, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4200
Jean-Philippe Andre [Wed, 17 Aug 2016 07:23:16 +0000 (16:23 +0900)]
photocam: Fix region load + scale down options
I have no idea how photocam even worked before. @jiin.moon
exposed a major issue in photocam by fixing how the jpg loader
scale down + region load combination works.
@fix
jiin.moon [Wed, 17 Aug 2016 07:07:22 +0000 (16:07 +0900)]
evas: Add support for region load with PNG files
Summary:
PNG loader support region_set when decoding
@feature
Reviewers: cedric, jpeg, jypark, raster
Subscribers: raster
Differential Revision: https://phab.enlightenment.org/D4165
jiin.moon [Wed, 17 Aug 2016 07:06:05 +0000 (16:06 +0900)]
evas: Support region_set for BMP image
Summary:
1) BMP loader support region decoding.
@feature
2) Fix an issue what BMP loader can't decode an 16bit image with bit field
@fix
Test Plan: attached sample codes
Reviewers: cedric, jpeg, jypark
Differential Revision: https://phab.enlightenment.org/D4228
Stefan Schmidt [Tue, 16 Aug 2016 15:05:04 +0000 (17:05 +0200)]
evas: mark unused function parameter as such
Jean-Philippe Andre [Wed, 17 Aug 2016 05:37:50 +0000 (14:37 +0900)]
evas: Fix hold events
This fixes a crash with thumbscroll.
Fixes https://phab.enlightenment.org/T4378
Jean-Philippe Andre [Wed, 17 Aug 2016 04:08:03 +0000 (13:08 +0900)]
evas: Fix mouse inputs when also listening to multi
Since the new event type is the same for multi and single
touch (finger id is the only difference), multi touch listeners
would get triggered even for single mouse events.
Fixes https://phab.enlightenment.org/T4345
Fixes https://phab.enlightenment.org/T4378
This raises a question though: How do we want to differentiate
between single & multi touch events in the eo interfaces?
Tom Hacohen [Tue, 16 Aug 2016 15:28:33 +0000 (16:28 +0100)]
Efl Object: Change and rename the type we use for function pointers.
Rename the type to something more sensible and change it to remove the
last remanent of Eo1. This fixes a fixme that has been there for a
while.
The type doesn't really matter, it just looks nicer with the va_list.
Tom Hacohen [Mon, 15 Aug 2016 16:11:13 +0000 (17:11 +0100)]
Efl object: implement CoW for the function vtables
This commit implements a sort of CoW for the vtables. The vtables are
usually just linked to and refcounted. When we need to change them we
allocate new ones and copy them over so we can write to them.
I wrote some code to measure the effectiveness of this change. When
running elementary_test (and immediately exiting) I saw that out of the
total number of vtable chains (561) that were needed by the classes in
the EFL, 79 (14.08%) were reused. Considering that I had to add
refcounting (unsigned short, but let's consider it's the size of a word
because of alignment), I would calculate the saving as such (in bytes):
Number of items in a chain (refcounted block): 32
32 bit:
sizeof(chain_node) = 8
Mem wasted on refcounting: 561 * 4 = 2244
Mem saved because of sharing: 79 * (32 * 8) = 20224
Total save: 17980 bytes
64 bit:
sizeof(chain_node) = 16
Mem wasted on refcounting: 561 * 8 = 4488
Mem saved because of sharing: 79 * (32 * 16) = 40448
Total save: 35960 bytes
Wow, we use a lot of memory in Eo classes, I'm sure we can
save even more if we put our hearts into it (change the shareable units
to be smaller to increase the chance of sharing).
This is internal and doesn't affect API/ABI so we can change this even
further with time.
This also improves efl_object_override(). This should now be quite
memory efficient (don't abuse, but it's not a big hogg as it was), so
feel free to abuse that one and rely on it in API.
@feature
Stefan Schmidt [Tue, 16 Aug 2016 14:22:06 +0000 (16:22 +0200)]
evas: engine: remove set but unused variable
Daniel Kolesa [Tue, 16 Aug 2016 13:53:04 +0000 (14:53 +0100)]
docs: add Type to doctree and remove direct eolian api usages
Daniel Kolesa [Tue, 16 Aug 2016 13:39:04 +0000 (14:39 +0100)]
docs: reduce the Expression API to just what's necessary
Daniel Kolesa [Tue, 16 Aug 2016 13:37:45 +0000 (14:37 +0100)]
docs: add Expression node type
Jean-Philippe Andre [Wed, 10 Aug 2016 09:59:36 +0000 (18:59 +0900)]
evas: Fix ordering of input event
The previous patch
1185c40e508ca2ecc4c5e86b shows how having
two event types for the same thing (key or mouse input events)
was a bad idea. The only guaranteed order of callbacks is the
priority but even that was not enforced (since legacy or eo
style event had to come first).
Fixes T4310
Jean-Philippe Andre [Tue, 9 Aug 2016 11:11:07 +0000 (20:11 +0900)]
edje: Allow no_render in description
Previously, it was limited to the part block. It was a mistake
and should have been put in the description instead, as this
allows it to change during state transition (like visible, or
proxy_src_visible).
@feature
Jean-Philippe Andre [Tue, 16 Aug 2016 09:24:27 +0000 (18:24 +0900)]
elm: Remove _EFL_APP_VERSION_SET from ELM_MAIN
This macro is behind a BETA ifdef. Shouldn't be used here,
unless we want to remove the beta flag and stabilize
efl_build_version_set() now.
Thanks Stefan for the report.
@fix
Jean-Philippe Andre [Tue, 16 Aug 2016 08:59:56 +0000 (17:59 +0900)]
win: Mark two properties as eo-only
Why aren't those functions implemented yet?
@fix
Jean-Philippe Andre [Tue, 16 Aug 2016 08:24:58 +0000 (17:24 +0900)]
elm: Hide new init APIs behind BETA tag
This places the following behind beta:
- efl_quicklaunch_fallback
- efl_build_version_set
I don't think EFL_MAIN would have worked without BETA API support,
so no need to expose those for now.
@fix
Jean-Philippe Andre [Tue, 16 Aug 2016 08:06:19 +0000 (17:06 +0900)]
glview: Mark draw_request as eo-only
This is a rename of changed_set, not a new function.
@fix
Jee-Yong Um [Tue, 9 Aug 2016 08:30:04 +0000 (17:30 +0900)]
elementary: remove redundant parts_text_fix from Elm.Layout
Summary:
When a theme is loaded, Elm.Layout updates strings with new theme.
This adjustment will be performed by Edje. (See D4219)
Reviewers: cedric, jpeg
Subscribers: taxi2se
Differential Revision: https://phab.enlightenment.org/D4220
Jee-Yong Um [Tue, 9 Aug 2016 08:29:49 +0000 (17:29 +0900)]
edje: resolve user defined string with type
Summary: Resolve Edje_User_Defined string with type (normal/escaped/unescaped)
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4219
Jean-Philippe Andre [Thu, 4 Aug 2016 02:49:33 +0000 (11:49 +0900)]
gl: Fix usage of GLX/EGL/GL extensions
This is reverts:
e4c641ed1e5607651e2d43a832e7cc01471f3fd6
build fix
19eb7b727fbf35620a13fb65b50d3056a484360e:
glx: Fix black windows in E on nvidia
For all extension functions, we need to match with the extension itself
since GetProcAddress() can return a non-NULL value even when the function
does not exist. Drivers can do a runtime mapping depending on the
context. So, we only trust the return value of GetProcAddress() when
we know for sure that the extension exists.
Thus, if a symbol exists we will always prefer it rather than relying
on GetProcAddress().
Also, glGetString(GL_EXTENSIONS) is now deprecated so we're lucky
it still works most of the time. glGetStringi() should be used
instead. This patch changes some of the use cases, but not all.
Fixes T3030 (again)
Fixes T4288
@fix
Jean-Philippe Andre [Mon, 1 Aug 2016 08:38:05 +0000 (17:38 +0900)]
eina: Set EINA_ERROR_TIMEOUT to cond_timedwait
This adds a new error code.
I'm using a weak symbol (were supported, ie GCC on linux) for
some kind of forward compatibility.
Fixes T1780
@feature
Jean-Philippe Andre [Mon, 1 Aug 2016 07:06:44 +0000 (16:06 +0900)]
eina: Move EWAPI and EAPI_WEAK to Eina.h from Eo.h
So it may be used outside EO (eina error is what I have in mind).
I believe it doesn't need to be redefined in all EFL libs, especially
since it's not used on Windows yet.
JEONGHYUN YUN [Mon, 1 Aug 2016 06:38:50 +0000 (15:38 +0900)]
elm_panel : add a toggled event triggered when panel toggled in any way.
Summary:
There are 2 ways to toogle the panel, by using elm_panel_toggle API and by interaction such as flick or click on panel.
This toggled event can help us to know the time when the panel toggled by all case.
Reviewers: woohyun, kimcinoo, Hermet, jypark
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4180
Jean-Philippe Andre [Tue, 19 Jul 2016 12:08:02 +0000 (21:08 +0900)]
evas: Implement GL map/unmap for the simple case
Most of the code relies on the software generic engine
implementation, using inheritance between engines.
This fixes expedite image map RGBA test.
Jinyong Park [Mon, 1 Aug 2016 05:56:00 +0000 (14:56 +0900)]
edje_embryo: add function to know swallow has object
Summary:
Using edc script, there is no way to know evas object is set on swallow part or not.
So, to know that, some elm widget send signal and save some information to edc variables when object is set on swallow part.
I think it is helpful to make better edc script.
@feature
Reviewers: herb, cedric, raster, id213sin, jpeg
Reviewed By: jpeg
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4176
Jean-Philippe Andre [Tue, 16 Aug 2016 07:08:07 +0000 (16:08 +0900)]
edje: Clean up edje eo apis
Patches by Conr2d.
Differential Revision: https://phab.enlightenment.org/D4224
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
Jee-Yong Um [Thu, 11 Aug 2016 05:38:33 +0000 (14:38 +0900)]
edje: clean up APIs
- convert methods to property setter/getter
- remove "values" block when getter returns read_only value
- fit the type of params of eo funcs to those of legacy APIs
Jee-Yong Um [Thu, 11 Aug 2016 04:39:27 +0000 (13:39 +0900)]
edje: clean up part text item APIs
Jee-Yong Um [Thu, 11 Aug 2016 04:37:00 +0000 (13:37 +0900)]
edje: clean up part text anchor APIs
Jee-Yong Um [Thu, 11 Aug 2016 04:30:03 +0000 (13:30 +0900)]
edje: clean up part text input panel APIs
Jee-Yong Um [Thu, 11 Aug 2016 02:21:02 +0000 (11:21 +0900)]
edje: clean up part text imf context APIs
Jee-Yong Um [Thu, 11 Aug 2016 02:18:35 +0000 (11:18 +0900)]
edje: clean up part text select APIs
Jee-Yong Um [Thu, 11 Aug 2016 02:14:41 +0000 (11:14 +0900)]
edje: clean up part text cursor APIs
Jee-Yong Um [Thu, 11 Aug 2016 02:05:03 +0000 (11:05 +0900)]
edje: clean up part text APIs
Jee-Yong Um [Thu, 11 Aug 2016 01:58:18 +0000 (10:58 +0900)]
edje: clean up part external APIs
Jee-Yong Um [Thu, 11 Aug 2016 01:56:24 +0000 (10:56 +0900)]
edje: fix reference error of part drag APIs
Jee-Yong Um [Thu, 11 Aug 2016 01:46:54 +0000 (10:46 +0900)]
edje: clean up part drag APIs
Jee-Yong Um [Thu, 11 Aug 2016 01:34:53 +0000 (10:34 +0900)]
edje: clean up part basic APIs
Jee-Yong Um [Thu, 11 Aug 2016 00:33:55 +0000 (09:33 +0900)]
edje: group methods in edje_object.eo
Jean-Philippe Andre [Tue, 16 Aug 2016 05:57:02 +0000 (14:57 +0900)]
evas: Fix potential memleak in event info objects
The new event info being an eo object, it needs to be properly
cleaned. I believe this memleak would not show up much in massif
or other checking tools, as it's a stringshare leak. Also, most
of those event objects will in fact be reused and never deleted.
@fix (backported as
c58e293d343396859daabdd348)
Carsten Haitzler (Rasterman) [Tue, 16 Aug 2016 06:19:21 +0000 (15:19 +0900)]
evas gl x11 engine - fix buffer age symbol find and use
it serems some changes broke our buffer age querying - we were using
the wrong symbol... the EXT or ARGB onenot the core one which does
work. use that first. then we get buffer age.
@fix
Thiep Ha [Tue, 16 Aug 2016 03:36:26 +0000 (12:36 +0900)]
elm video: correct api
The elm_videfl_add should be elm_video_add.
It was changed by commit
e65aae994e72c1d3f8ac6b5360d3772f177b77ef.
This commit brings it back.
Sungmin Kwak [Sat, 13 Aug 2016 06:03:10 +0000 (15:03 +0900)]
ecore_imf: fix typo
Change-Id: I2660fa96a0525fcdf9e83e9eb33f449c282f6581
Felipe Magno de Almeida [Mon, 15 Aug 2016 18:15:11 +0000 (15:15 -0300)]
docs: Fix rename from eo_add to efl_add
Felipe Magno de Almeida [Mon, 15 Aug 2016 18:14:53 +0000 (15:14 -0300)]
eolian-cxx: Fix compilation break with Eo rename to EFL
Daniel Kolesa [Mon, 15 Aug 2016 14:12:18 +0000 (15:12 +0100)]
docs: correctly wrap struct/enum fields in doctree
Tom Hacohen [Mon, 15 Aug 2016 13:44:41 +0000 (14:44 +0100)]
Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.
Obviously breaks both API and ABI.
Daniel Kolesa [Mon, 15 Aug 2016 14:04:04 +0000 (15:04 +0100)]
docs: add Typedecl to doctree
Daniel Kolesa [Mon, 15 Aug 2016 13:45:36 +0000 (14:45 +0100)]
docs: use the variable getters in all places
Daniel Kolesa [Mon, 15 Aug 2016 13:41:59 +0000 (14:41 +0100)]
docs: add static getters for wrapped variables
Daniel Kolesa [Mon, 15 Aug 2016 13:36:24 +0000 (14:36 +0100)]
docs: initial Variable in doctree
Daniel Kolesa [Mon, 15 Aug 2016 13:26:19 +0000 (14:26 +0100)]
docs: no need to include eolian in stats
Daniel Kolesa [Mon, 15 Aug 2016 13:25:04 +0000 (14:25 +0100)]
docs: remove the mappings module
Daniel Kolesa [Mon, 15 Aug 2016 13:18:20 +0000 (14:18 +0100)]
docs: add method to get parameter's direction name
Vyacheslav Reutskiy [Mon, 15 Aug 2016 10:59:46 +0000 (13:59 +0300)]
elm_genlist: unhighlight item if it not selected
Summary:
Main trouble in handle click and double click event.
If user hold Esc and do double click on genlist item,
it still highlighted but not selected, because between
click and double click genlist process a key down event.
This patch add check the item state on mouse up, check
a item state - if item highlighted but not selected,
unhighlight it.
@fix
Fixes T3986
Test Plan:
1. run elementary_test Genlist
2. hold ESC
3. double-click on few genlist items
Reviewers: raster, cedric, NikaWhite
Subscribers: seoz, jpeg
Maniphest Tasks: T3986
Differential Revision: https://phab.enlightenment.org/D4222
Daniel Kolesa [Mon, 15 Aug 2016 13:14:33 +0000 (14:14 +0100)]
docs: generic namespace generator in Node
Daniel Kolesa [Mon, 15 Aug 2016 13:06:20 +0000 (14:06 +0100)]
docs: remove some direct eolian api usages
Daniel Kolesa [Mon, 15 Aug 2016 13:03:53 +0000 (14:03 +0100)]
docs: wrap func params in doctree
Daniel Kolesa [Mon, 15 Aug 2016 12:53:01 +0000 (13:53 +0100)]
docs: move all eolian init logic into doctree
Daniel Kolesa [Mon, 15 Aug 2016 12:50:32 +0000 (13:50 +0100)]
docs: abstract away directory scan
Daniel Kolesa [Mon, 15 Aug 2016 12:48:13 +0000 (13:48 +0100)]
docs: abstract away object scope enum
Daniel Kolesa [Mon, 15 Aug 2016 12:43:25 +0000 (13:43 +0100)]
docs: remove some unused funcs in docgen
Daniel Kolesa [Mon, 15 Aug 2016 12:38:53 +0000 (13:38 +0100)]
docs: integrate fallback func doc into Function
Daniel Kolesa [Mon, 15 Aug 2016 11:50:52 +0000 (12:50 +0100)]
eolian tests: fix reference file after beta in legacy change
Carsten Haitzler (Rasterman) [Mon, 15 Aug 2016 02:40:31 +0000 (11:40 +0900)]
evas smart obj - handle invalid object id's when scop data get is NULL
handle smart member add if the object is invalid withotu crashing.
also don't abort and crash with other invalid states like of smart
object or child is to be deleted, has no layer etc. - continue on
safely without a crash.
@fix
Carsten Haitzler (Rasterman) [Mon, 15 Aug 2016 02:30:23 +0000 (11:30 +0900)]
evas table - handle recursive access to cols/rows where child frees
thsi fixes invalid memory access to already freed memory in a parent
call where a child freed it by reference counting the struct to
ensuire it stays alive in the parent func using it.
@fix
Carsten Haitzler (Rasterman) [Sun, 14 Aug 2016 13:30:32 +0000 (22:30 +0900)]
edje - save memory on edje parts as a lot of over-allocation was done
so ... Edje_Calc_Params was huge ... like about 200 bytes. every part
in every live edje object got one of these in addtion to real part
struct info etc. ... so really every part was probably consuming
300-500 bytes or so... crazy. so i made a lot of the data now optional
so only the minimum required is allocated now which cuts down about 110
or even 120 bytes per part, depending. 100 bytes was needed for 3d
node parts even though almsot no parts are 3d node parts... the image
and text data was 30-40 bytes so we consumed 100 even if we only used
30-40... so this cuts that done and puts in polace calc param cleanup
funcs everywhere they are needed to clean up this extra allocated data.
i also reduced this even more by maping pointers to req_drag, map and
physics and clip_to fields in another extension struct cutting
down another 28/52 bytes on most parts (in return for an added
4/8 bytes - on 32/64bit accordingly).
in elementary_test this saves about ~300kb of ram for just having the
etst run and displaying (peak memory measuremment). so massif says
10.6M -> 10.3M.
@optimize
Jean Guyomarc'h [Sun, 14 Aug 2016 16:55:33 +0000 (18:55 +0200)]
elementary: fix documentation for elm_prefs
Update API references and code example.
Carsten Haitzler (Rasterman) [Sun, 14 Aug 2016 04:50:03 +0000 (13:50 +0900)]
edje - remove unused fields from part desc and calc params
fill spread and angle have never been used - resevred intitially for
gradient objects, but never put into use, so remove to get rid of
junk/memory footprint etc.
@optimize
Carsten Haitzler (Rasterman) [Sun, 14 Aug 2016 03:25:59 +0000 (12:25 +0900)]
edje - replace eina list with eina inlist to save mem and performance
edje was keeping every edje object created in an eina list so it could
access them later. not really great when every list node contains at
least 4 pointers (data, next, prev and accounting, possibly magic
too). also ever time an edje object is deleted it has to remove from
this list which means... walking the list to where the obj is... not
great. replace with an inlist which is just 3 ptrs, no extra pressure
on list pool and removal os O(1) too.
@optimize
Carsten Haitzler (Rasterman) [Sat, 13 Aug 2016 14:08:01 +0000 (23:08 +0900)]
elm win - fix elm win center to actually center again
@fix
Carsten Haitzler (Rasterman) [Sat, 13 Aug 2016 13:42:13 +0000 (22:42 +0900)]
efl api release - fix elm win accel preference set in legacy api
this shouldnt exist in legacy api as its not settable after creation.
it's useful only for eo constructors before finalize
Carsten Haitzler (Rasterman) [Sat, 13 Aug 2016 02:05:36 +0000 (11:05 +0900)]
efl api release - fix @since for evas test filter program/source set api