Daniel Kolesa [Mon, 16 Jan 2017 14:51:11 +0000 (15:51 +0100)]
eolian: remove/add APIs and clean up implements system
As there is no need to have separate is_auto, is_empty and
is_pure_virtual for functions and implements (each function has
its own base implement by default) I removed the function ones.
Instead, I added a way to retrieve a function's base implement
so that you can instead do the checks on the implement even when
you only have the function.
I also moved base implement build directly into the parser instead
of the database filler. That allows for significant cleanup. I
also removed distinction of implement pointers in Eolian_Function
for get and set as implements now always contain an entire thing
so the pointer was always the same anyway.
Things should still behave more or less the same, but ordering
of generated functions has changed because ordering of implements
has changed.
Wonki Kim [Mon, 16 Jan 2017 05:20:04 +0000 (14:20 +0900)]
interface_scrollable: Unify basis of calculation of page_get logic
Summary:
If rtl mode is set, current_page_get api should return reversed page number.
To do that, make x position x-axis reversed before page calculating.
Also bring_in and page_show should show the reversed page in rtl mode.
This patch modify the functions to support that.
Lastly, scroller should be scrolling based on the right edge of the page.
This patch is a combination of the patches(D4559,D4560)
Test Plan:
1. Run scroller test on elementary_test
2. Turn ui mirrored mode on
3. Manipulate scroller in various ways
- It should scroll proper position when you click next or prev btn.
Reviewers: woohyun, taxi2se, z-wony, cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4558
Woochan Lee [Mon, 16 Jan 2017 02:48:48 +0000 (11:48 +0900)]
elm_multibuttonentry: Fix MBE got a wrong state.
Summary:
Even User set a MBE state as "shrink" when MBE created.
MBE has been changed the state as "none" during added items.
This patch will be fixed that bug state.
@fix
Test Plan:
Add below line after create mbe.
'elm_multibuttonentry_expanded_set(mbe, EINA_FALSE)'
Then Add items using item_append API.
See the result. mbe is not on shrink mode.
Reviewers: Hermet, jpeg, cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4548
Andy Williams [Sun, 15 Jan 2017 23:50:37 +0000 (23:50 +0000)]
elm_code: Add some safety
Andy Williams [Sat, 14 Jan 2017 19:39:39 +0000 (19:39 +0000)]
elm_code: Fix selection when moving around with cursor keys
Also fix the handling of newlines in our selections
@fix
Dave Andreoli [Sun, 15 Jan 2017 15:05:21 +0000 (16:05 +0100)]
net gadget: try to improve the theme
* make the 2 monitors fill based on tx/rx percentage vals
* try a more bluish version (still need a bit of love)
Note that this is not working atm (okra need to fix in E)
Andy Williams [Fri, 13 Jan 2017 22:49:57 +0000 (22:49 +0000)]
Luncher: Fix engage theme to scale more smoothly.
There is still a layering issue and the algorithm could be improved
Mike Blumenkrantz [Fri, 13 Jan 2017 16:34:07 +0000 (11:34 -0500)]
ecore-wl2: make session recovery listener global
global proxies have a single instance and do not work with
multiple listeners
@fix
Mike Blumenkrantz [Fri, 13 Jan 2017 16:34:07 +0000 (11:34 -0500)]
elm_box: allow aspects 1 <= x < 0.0
this was a typo in my initial implementation
@fix
Chris Michael [Fri, 13 Jan 2017 14:52:24 +0000 (09:52 -0500)]
ecore-wl2: Use input serial for move and resize functions
This is a partial revert of
2bd880c6c7 which changed to use
wl_display_get_serial function. When can do that for most things,
however things like window move/resize need to use the input serial
which started the move/resize.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Fri, 13 Jan 2017 14:46:18 +0000 (15:46 +0100)]
docs: generate correct eolian function signatures
Now signatures don't contain full class name, just func name.
Daniel Kolesa [Fri, 13 Jan 2017 14:44:09 +0000 (15:44 +0100)]
eolian: change eo file syntax @virtual_pure -> @pure_virtual
Daniel Kolesa [Fri, 13 Jan 2017 14:40:29 +0000 (15:40 +0100)]
eolian: use consistent pure_virtual naming in API
Previously one API used just virtual (incorrect) and one used
virtual_pure (which just sounds weird). So unify with a single
name, pure_virtual, similar as in other lanugages.
This does not change eo file syntax yet.
Daniel Kolesa [Fri, 13 Jan 2017 14:15:10 +0000 (15:15 +0100)]
eolian: consistent and cleaner error values from APIs
Now all error/unknown/etc values returned from APIs are zero,
previously it was a mix of zeroes and minus ones. Also, some
enums that had no error/invalid value before have one now, which
allows for better distinction between what is an error and what
is an intended result.
Jaeun Choi [Fri, 13 Jan 2017 11:23:54 +0000 (20:23 +0900)]
elm_bg: rotate image according to the orientation info
rotate image into the standard orientation according to the EXIF data
(think about taking a picture from camera and setting it as bg)
Carsten Haitzler (Rasterman) [Fri, 13 Jan 2017 09:04:17 +0000 (18:04 +0900)]
efl_ui_win - switch to the element being used for border type
Woochan Lee [Fri, 13 Jan 2017 00:36:19 +0000 (16:36 -0800)]
elm_gesture_layer: update doc.
Summary:
Add description about gesture APIs.
Some of the developers told me that they really have no idea what is this for when first see the API doc...
Reviewers: Hermet, raster, jpeg, cedric
Reviewed By: cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4541
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Jee-Yong Um [Fri, 13 Jan 2017 00:32:02 +0000 (16:32 -0800)]
elm.hoversel: revert unnecessary item expansion & get proper size
Summary:
The changes of previous patch (
4ea7effe70423b5f88f98aea45a96582669aa280)
are reverted, and item calculation is fixed correctly.
The main reason why hoversel item has wrong size in screen rotation is
that hover doesn't update geometry when the size of target object is changed.
Test Plan: elementary_test -to hoversel
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4556
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Jee-Yong Um [Fri, 13 Jan 2017 00:30:28 +0000 (16:30 -0800)]
elm_hoversel: reset alignment before calculation
Summary:
When screen is rotated, _resizing_eval() will be called twice by hover_parent
resize and hoversel movement.
If the alignment is changed to the right in the first call because of the geometry
of edje part is not updated yet (hoversel uses edje part geometry in calculation),
hoversel keeps being right-aligned in the second call,
even though there is enough space to show with default alignment.
Test Plan: elementary_test -to hoversel
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4557
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Ivan Furs [Fri, 13 Jan 2017 00:24:31 +0000 (16:24 -0800)]
ecore_file: add case to properly rename a file in Windows
Summary:
If the file with a new path was created and 'rename' wants to replace the old path to the new path. 'rename' will return:
Windows 7: -1 (errno=EEXIST) (EEXIST == 17)
Ubuntu: 0
**EEXIST**
**Ubuntu**: The link named by new is a directory that is not an empty directory. (https://linux.die.net/man/3/rename)
**Windows 7**: Files exist. An attempt has been made to create a file that already exists. For example, the _O_CREAT and _O_EXCL flags are specified in an _open call, but the named file already exists.(https://msdn.microsoft.com/en-us/library/5814770t.aspx)
Test Plan:
**Sample code to rename in Linux and Windows if the file with the new name already exists:**
int main()
{
const char *_old = "old";
const char *_new = "new";
int fd1 = open(_old, O_CREAT);
close(fd1);
int fd2 = open(_new, O_CREAT);
close(fd2);
printf("rename:\t%s -> %s\n", _old, _new);
int r = rename(_old, _new);
if (r == 0)
{
printf("GOOD\n");
}
else
{
printf("CODE ERROR:\n" );
printf(" -rename...: %d\n", r );
printf(" -errno....: %d\n", errno);
}
return 0;
}
Reviewers: raster, vtorri, jpeg, NikaWhite, reutskiy.v.v, an.kroitor, cedric
Reviewed By: cedric
Subscribers: artem.popov, cedric, jpeg
Tags: #efl, #windows
Differential Revision: https://phab.enlightenment.org/D4561
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Al Poole [Thu, 12 Jan 2017 22:09:49 +0000 (14:09 -0800)]
emotion: add support for obtaining embedded artwork from media files with gstreamer1 backend.
Reviewers: raster, cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4550
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Daniel Hirt [Thu, 12 Jan 2017 16:01:52 +0000 (18:01 +0200)]
Ui text: fix deletion of the swallowed text object
The Efl.Canvas.Text object loses its parent due to a specific behavior
of Edje when swallowing objects.
The mentioned object then loses sync with the Ui.Text object, thus not
getting deleted upon destruction - that's actually because Edje
reparents to the canvas upon its own deletion.
Adding this fix until we figure out if there is a better alternative.
Chris Michael [Thu, 12 Jan 2017 16:09:47 +0000 (11:09 -0500)]
elput: Send touch motion before sending touch button events
This patch sends a touch motion event before sending of touch up/down
events. This allows some compositors (enlightenment) to update their
internal representation of where the mouse pointer is before handling
button events (as touch down/up is treated as a mouse button down/up).
Fixes T5094 for the old man ;)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Thu, 12 Jan 2017 15:24:18 +0000 (10:24 -0500)]
elput: Store touch timestamp and slot
This patch adds a timestamp field to the touch structure so that we
can store it and do not have to refetch the timestamp when sending
touch events.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Thu, 12 Jan 2017 15:56:49 +0000 (16:56 +0100)]
eolian: strict function type input checks in APIs
Strictness of various Eolian APIs has been enhanced, for example
eolian_class_function_get_by_name now won't return anything if
you request an EOLIAN_PROPERTY and the found func is just an
EOLIAN_PROP_GET, and various APIs won't accept arbitrary inputs
like EOLIAN_UNRESOLVED or EOLIAN_PROPERTY now, instead you will
need to provide EOLIAN_PROP_GET, EOLIAN_PROP_SET or EOLIAN_METHOD
explicitly.
The purpose of this is to reduce potential bugs and fix ambiguous
behavior. Thanks to use of EINA_SAFETY, appropriate errors should
be printed into terminal when an API is used incorrectly.
Daniel Kolesa [Thu, 12 Jan 2017 14:08:46 +0000 (15:08 +0100)]
eolian gen: do not use EOLIAN_UNRESOLVED/PROPERTY for lookups
Carsten Haitzler (Rasterman) [Thu, 12 Jan 2017 09:02:18 +0000 (18:02 +0900)]
elm theme/test - add start of nviframe window style and test it
Carsten Haitzler (Rasterman) [Thu, 12 Jan 2017 09:01:15 +0000 (18:01 +0900)]
elm_win - fix getting of stack id string if win id changes
new feature. win id changed with csd pus alpha so reget stack id
string then
Carsten Haitzler (Rasterman) [Wed, 11 Jan 2017 01:15:07 +0000 (10:15 +0900)]
eo - remove the spare eo domain for now for future expansion
Daniel Kolesa [Wed, 11 Jan 2017 18:25:54 +0000 (19:25 +0100)]
eolian: fine-grained is_auto/is_empty for implements
Daniel Kolesa [Wed, 11 Jan 2017 17:18:48 +0000 (18:18 +0100)]
eolian: remove function_is_implemented
Its design does not match current Eolian and will be replaced later.
There isn't any generator using it right now, so it's safe to remove.
Chris Michael [Wed, 11 Jan 2017 17:23:53 +0000 (12:23 -0500)]
ecore-evas-wayland: Add handler for window_configure_complete event
Small patch to add a handler so we can listen for when the surface
configure event is complete and can then go ahead and attach buffers
to the surface. This allows rage <filename> to work again in Weston :)
NB: This does allow rage <filename> to work under Weston now, but
still fails under Enlightenment for some reason :(
ref T5090
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Jan 2017 17:22:01 +0000 (12:22 -0500)]
ecore-wl2: Add event to raise when window configure is completed.
Small patch to create and raise a new event letting ecore_evas know
when the window has been configured. With the addition of xdg_shell v6
support, we cannot commit a surface with an existing buffer until the
surface has been configured. This patch allows us to raise an event to
ecore_evas when the surface has been configured, so we can then attach
a buffer to it.
ref T5090
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Jan 2017 17:19:25 +0000 (12:19 -0500)]
evas-wayland-shm: Compare hidden flag during reconfigure
Small patch to compare if the hidden flag being passed in is the same
as the one stored in Outbuf. With the addition of xdg_shell v6
support, we cannot commit a surface with an existing buffer until the
surface has been configured. In order to facilitate this, we will use
the 'hidden' flag so that any surface_post does not actually attach a
buffer unless configure has already been handled on the surface.
ref T5090
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Jan 2017 15:20:49 +0000 (10:20 -0500)]
ecore-wl2: Minor formatting fixes
NB: No functional changes, just formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Jan 2017 15:08:43 +0000 (10:08 -0500)]
ecore-evas-wayland: Minor formatting fix
NB: No functional changes, just formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Jan 2017 15:04:37 +0000 (10:04 -0500)]
evas-wayland-shm: Minor formatting fix
NB: No functional changes, just formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Wed, 11 Jan 2017 15:45:53 +0000 (16:45 +0100)]
eolian: improve implement error messages
By retrieving by EOLIAN_UNDEFINED, we can provide more concrete error messages
thanks to the logic later.
Daniel Kolesa [Wed, 11 Jan 2017 15:35:03 +0000 (16:35 +0100)]
eolian: enforce specification of both get and set in prop impls
Now you can't use the same syntax as you would for a method to
implement a property as whole, instead you need to specify the
getter and/or setter explicitly. This is to allow parent classes
to expand their properties without altering behavior of the child
classes.
Vitalii Vorobiov [Wed, 11 Jan 2017 13:10:35 +0000 (15:10 +0200)]
Edje_Edit: first part of vector API implementation
edje_edit_vector_del
edje_edit_vector_usage_list_get
edje_edit_vector_id_get
edje_edit_vectors_list_get
edje_edit_state_vector_get
edje_edit_state_vector_set
Jaehyun Cho [Wed, 11 Jan 2017 05:47:28 +0000 (14:47 +0900)]
Revert "edje_cc_parse: Fix to insert missing double quotation marks"
This reverts commit
5ae6e1db2f7f181039b05cbb562573321f419a8e.
On Windows, system() does not execute file if the argument of system()
begins with double quotation marks.
(e.g. system("\"C:\efl\lib/edje/utils/v-1.18/epp.exe\" ...");)
To resolve this issue on Windows, it has been fixed to have the argument
of system() not begin with double quotation marks.
(i.e. Do not use double quotation marks for epp.exe path in system().)
Jaehyun Cho [Tue, 10 Jan 2017 13:23:35 +0000 (22:23 +0900)]
edje_cc_parse: Fix not to convert macros to a single string
Double quotation marks convert macros to a single macro string and only
the first macro becomes valid.
So double quotation marks are not used for macros.
Chris Michael [Tue, 10 Jan 2017 17:00:39 +0000 (12:00 -0500)]
ecore-wl2: Mark window as pending configure when showing popup
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 16:49:10 +0000 (11:49 -0500)]
ecore-wl2: Remove incorrect EINA_UNUSED
These parameters are actually used inside this function so remove the
EINA_UNUSED
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 16:48:18 +0000 (11:48 -0500)]
ecore-wl2: Use 'serial' directly from wayland call
As we cannot rely on window->display->serial to be accurate (it is
only set when there is input going on), we should be getting the
'serial' values here directly from a wayland function call.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 16:28:40 +0000 (11:28 -0500)]
ecore-evas-wayland: Ensure pending configure is handled before rendering
With the change to xdg_shell v6, we need to wait for any pending
configure to be handled before we can render. This patch addresses
that issue and makes Elementary_Test work again under Weston :)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 16:27:10 +0000 (11:27 -0500)]
ecore-wl2: Add flag to indicate pending configure
With the change to xdg_shell v6 we need to indicate that a window has
a pending configure event, and not show the window if a configure is
pending. In order to handle this, we add a flag to the window
structure and can check it inside ecore_evas.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 14:44:53 +0000 (09:44 -0500)]
ecore-evas-wayland Fix formatting
NB: No functional changes (yet), just formatting cleanup so this is
more readable.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 10 Jan 2017 13:49:24 +0000 (08:49 -0500)]
ecore-wl2: Use correct serial value
When we get a configure event, we should be using the current display
serial to set as the window configure serial value. Previous code
would always end up setting the window configure_serial to 0 as
win->display->serial was not getting updated.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Andy Williams [Tue, 10 Jan 2017 12:53:21 +0000 (12:53 +0000)]
elm_code: Selections of word break on quotes too
SangHyeon Lee [Tue, 10 Jan 2017 04:59:42 +0000 (13:59 +0900)]
gengrid: fix highlight bug in disabled item
Summary:
if item is disabled, item must be not highlighted by touch events.
Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
Stephen 'Okra' Houston [Mon, 9 Jan 2017 20:49:43 +0000 (14:49 -0600)]
Elm theme: Center previews again in the luncher theme.
Dave Andreoli [Mon, 9 Jan 2017 19:59:55 +0000 (20:59 +0100)]
cpu + mem gadget: implemented vertical layouts
Derek Foreman [Mon, 9 Jan 2017 14:30:25 +0000 (08:30 -0600)]
dmabuf: Make failure a DBG instead of an ERR
It's not really an error - fallback to shm will be attempted.
Carsten Haitzler (Rasterman) [Sun, 8 Jan 2017 13:57:54 +0000 (22:57 +0900)]
ecore_con - move libproxy to a slave binary with stdin/out msging
so here's the ugly problem. libproxy. yes. we've discussed memory
usage (e.g. it may have to execute javascript and pull in lots of deps
etc.) but we dlopene'd on the fly. ok... but this didn't solve another
issue i hit:
libproxy was causing enlightenment to abort(). some internal bit of
libproxy was raising a c++ exception. this wasn't caught. this causes
an abort(). takes down your entire desktop. FANTASTIC. this is bad. i
wouldnt' expect a library we depend on to be THIS anti-social but
libproxy seemingly is. it SHOULd catch its error sand just propagate
back to us so we can handle gracefully.
there reall is no way around this - isolate libproxy. it's even worse
that libproxy can load arbitrary modules that come from anywhere sho
who knows what issues this can cause. isolation is the best solution i
can think of.
so this makes an elf+net_proxy_helper we spawn the first time we need
a proxy lookup. we re-use that binary again and again until it exits
(it should exit after 10 seconds of being idle with no requests coming
in/pending). it'll respawn again later if needed. this involves now
the efl net threads having to marshall back to mainloop to do the
spawn and to write to the proxy process (reading is done by async exe
data events and the data is passed down a thread queue to the waitng
efl net thread). if the exe dies with pending requests unanswered then
it's respawned again and the req's are re-sent to it... just in case.
it has a limit on how often it'll respawn quickly.
this seems to work in my limited testing. this ALSO now isolates
memory usage of libproxy to another slave process AND this process
will die taking its memory with it once it's been idle for long
enough. that;s also another good solution to keeping libproxy impact
at bay.
Jihoon Kim [Mon, 9 Jan 2017 01:19:51 +0000 (10:19 +0900)]
ecore_imf: remove unnecessary exported symbols in immodules
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
Chris Michael [Mon, 9 Jan 2017 00:48:26 +0000 (19:48 -0500)]
evas-gl-common: Fix incorrect expression
Coverity reports this as in incorrect expression because it was
checking cache_entry width <= 0 twice. Fairly safe to assume that the
proper check should be width || height.
Fix CID1368336
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Dave Andreoli [Sun, 8 Jan 2017 19:32:27 +0000 (20:32 +0100)]
New theme for the new cpu gadget
Dave Andreoli [Sun, 8 Jan 2017 18:06:32 +0000 (19:06 +0100)]
mem gadget: update to use a single msg from c code
Dave Andreoli [Sun, 8 Jan 2017 16:56:37 +0000 (17:56 +0100)]
A new theme for the new E memory gadget
hope you will like the new design
Stephen 'Okra' Houston [Sat, 7 Jan 2017 17:29:13 +0000 (11:29 -0600)]
E module themes: Improve sizing wrt to text.
Carsten Haitzler (Rasterman) [Sat, 7 Jan 2017 04:16:06 +0000 (13:16 +0900)]
ecore_drm2 - work with broken kernels that EBUSY on drm page flip
so thelatest rpi kernels available e.g. in raspbian contain no fixes
for this yet so thatmeans basically ALL users would be affected, so
best to have a small workaround in ecore_drm2 to try the page flip a
few times until it works. this actually works. i try a usleep for 100
then try again. up to 500 times max then give up. actual numbers show
that betwee 1 to about 60 tries gets the flip to happen when these
glitches happen. log an error when this happens so we know it's
happening and a workaround is kicking in.
technically this would be much nicer if swapping had a dedicated
thread that could stall in this case and keep trying, but the odd
times it happens (seems to happen on average maybe once every 30
seconds) it wouldnt stall the mainloop or rendering and JUSt stall a
dedicated swapper thread. this requires a lot mor work to implement
though and we'd have to then ensure swaps ARe async with the swap
result coming back as an event etc... so a lot more work.
this at least makes rendering on the rpi stable and i can dig into
other issues like libproxy throws exceptions and causes a whole
process abort() as a result, or the latest mesa pkgs have totally
broken partial gl rnedering with all non-rendered areas being black
(it used to work though... until i updated).
@fix
Cedric BAIL [Fri, 6 Jan 2017 23:58:26 +0000 (15:58 -0800)]
ecore_con: use the right type for prototype.
Cedric BAIL [Fri, 6 Jan 2017 23:37:49 +0000 (15:37 -0800)]
cxx: fix example with recent change.
Cedric BAIL [Fri, 6 Jan 2017 23:19:41 +0000 (15:19 -0800)]
eina: add test for all float/double util function.
Cedric BAIL [Fri, 6 Jan 2017 23:19:13 +0000 (15:19 -0800)]
eina: include forgotten test file in release tarball.
Cedric BAIL [Fri, 6 Jan 2017 19:33:20 +0000 (11:33 -0800)]
eina: move to use memcmp and rename eina_{flt,dbl}eq to eina_{flt,dbl}_exact.
Cedric BAIL [Fri, 6 Jan 2017 19:18:49 +0000 (11:18 -0800)]
eina: switch to equal FP_ZERO with fpclassify.
Cedric BAIL [Fri, 6 Jan 2017 17:57:46 +0000 (09:57 -0800)]
eina: rename EINA_{FLT,DBL}_CMP to EINA_{FLT,DBL}_EQ.
Stephen 'Okra' Houston [Fri, 6 Jan 2017 23:15:07 +0000 (17:15 -0600)]
Elm Theme: Add style alias for no inset shadow on scroller.
Stephen 'Okra' Houston [Fri, 6 Jan 2017 22:08:25 +0000 (16:08 -0600)]
Theme: Add necessary theme files for the new sysinfo gadget.
Mike Blumenkrantz [Fri, 6 Jan 2017 17:57:46 +0000 (12:57 -0500)]
eina: add macros for determining whether floats are nonzero
this is a commonly-used functionality, so make it faster to write
@feature
Mike Blumenkrantz [Fri, 6 Jan 2017 17:57:46 +0000 (12:57 -0500)]
eina: add functions for warningless exact comparisons of floats
in some cases a user does want to check exact values, so these functions
should be used to indicate this intent
needs windows support
@feature
Chris Michael [Fri, 6 Jan 2017 14:33:58 +0000 (09:33 -0500)]
evas-wayland-shm: Fix formatting
NB: No functional changes, just reformatting so that this insane
one-liner wraps to 80...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Marcel Hollerbach [Fri, 6 Jan 2017 12:02:37 +0000 (13:02 +0100)]
eina: fix up last commit
i am sorry. I missed that i just freed the string and not the complete
buf. This now really frees the buf.
Marcel Hollerbach [Fri, 6 Jan 2017 11:18:32 +0000 (12:18 +0100)]
eina_buf: replace eina_strbuf_free_return with eina_xXxbuf_release
The api name free_return wasnt a good choice so it is changed to
release. This also moves the implementation to binbuf template so it is
available in all buf types.
Carsten Haitzler (Rasterman) [Fri, 6 Jan 2017 10:25:25 +0000 (19:25 +0900)]
eina - fix redefinition of word size if already defined
YeongJong Lee [Fri, 6 Jan 2017 09:38:02 +0000 (09:38 +0000)]
elm_code: Add 2 spaces auto indent after keywords
Summary:
When insert newline, check the previous line has keyword.
If so, insert 2 spaces indent more.
Test Plan:
1. run elementry_test - Code Editor or Edi.
2. Type some code with keywords.
3. Type <Return>.
4. Check that the indentation of newline is correct.
Reviewers: ajwillia.ms
Reviewed By: ajwillia.ms
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4543
Carsten Haitzler (Rasterman) [Fri, 6 Jan 2017 08:42:44 +0000 (17:42 +0900)]
evas gl - avoid a possible crash of tex upload of invalid sized image
so i had a crash where my bt said the image size is 1x1 but the img
struct said its 0x0, so put in protection to not upload a texture from
a 0x0 image... just for now... because this is odd - the image data is
a real ptr i can access and there should be at least 1 pixel... but i
can't be sure this fixes it as this is one of those "one offs" i cant
reproduce...
@fix
Carsten Haitzler (Rasterman) [Fri, 6 Jan 2017 07:35:09 +0000 (16:35 +0900)]
evas image preload - fix race condition that stops preloads
so if you queue a preload while a cancel is still pending the new
preload never happens. this fixes that. now it does but checking for
leftover tasks in the cancel cb and rescheduling a preload thread.
@fix
Mykyta Biliavskyi [Fri, 6 Jan 2017 08:30:19 +0000 (10:30 +0200)]
edje_edit: fix set the images set as image.normal value.
Added ability to set the images set by name into image
part image.normal attribute.
Add search the images set id for case when the image id doesn't find in
image entries list.
@fix
Jiyoun Park [Fri, 6 Jan 2017 06:40:09 +0000 (15:40 +0900)]
evas_image_main: fix memory leak of camera app -PLM[P161206-03545]
In gl engine, image objects try to unload image's pixel data after creating or updating the texture.
but image entry's reference is still 1, it is added to the pending_unloads list,
and it is cleaned when evas render function.
If elm image use preload feature, preload_done flag is true, so this image data cannot be removed from
pending_unloads list, it cause memory leak.
I think it is better to free image's pixel data in evas_cache_image_unload_data,
(not add to the pending_unloads list)
but it it complicated to modify.
so I'll remove the code to check preload_done flag in evas_common_rgba_pending_unloads_cleanup function.
this flag check was added because of gl preloading, but now gl preloading feature is disabled.
this flag is related with https://phab.enlightenment.org/D2823
I tested photocam, but crash doesn't occur anymore, even though removing flag check.
Carsten Haitzler (Rasterman) [Fri, 6 Jan 2017 00:37:40 +0000 (09:37 +0900)]
evas image skip header - more fixes for when images fail to load
this fixes some more issues i have found in using skip header like if
the file doesn't exist etc. recent feature add so not a fix.
Cedric BAIL [Fri, 6 Jan 2017 00:33:29 +0000 (16:33 -0800)]
eina: try to provide __WORDSIZE to system that don't have it aka OpenBSD.
Derek Foreman [Thu, 5 Jan 2017 19:38:25 +0000 (13:38 -0600)]
wayland_shm: Yeah I dunno
This doesn't make any sense to me so it can't be right, right?
Fixes session recovery. If it breaks something else talk to devilhorns. :)
Derek Foreman [Thu, 5 Jan 2017 19:36:35 +0000 (13:36 -0600)]
wayland_shm: Add a way to update the stored wayland objects
On session recovery the engine needs to be given new copies of the
surface, dmabuf, and shm objects to run in the new connection.
This fixes session recovery breakage introduced when we stopped recreating
the outbuf on reconfigure.
Derek Foreman [Thu, 5 Jan 2017 19:33:19 +0000 (13:33 -0600)]
wayland_shm: Add a force flag to surface reconfigure
We're going to need a way to force reconfigure unconditionally to make
session recovery work again.
Derek Foreman [Wed, 4 Jan 2017 23:20:05 +0000 (17:20 -0600)]
ecore_wl2: Fix accidental re-use of tmp var
Oops, same tmp var for a nested inlist traverse. That won't end well.
Derek Foreman [Wed, 4 Jan 2017 19:12:56 +0000 (13:12 -0600)]
ecore_wl2: Don't request shell surfaces for all window types
Now that cursors are "windows", this results in a mess. So skip at least
NONE and DND for now.
Derek Foreman [Wed, 4 Jan 2017 17:40:17 +0000 (11:40 -0600)]
ecore_wl2: Prevent use after free on input deletion
Window structs keep inputs around, so we should sweep through them
and NULL out any stale ones on a delete.
Derek Foreman [Wed, 4 Jan 2017 16:33:34 +0000 (10:33 -0600)]
ecore_wl2: Remove the rest of the cursor frame callback
Oops, I made a clean spot, now I need to clean up the rest of this.
ref
641dfab516b8de1cf27ca07671ff73de6c8d32bf
Daniel Kolesa [Thu, 5 Jan 2017 14:58:55 +0000 (15:58 +0100)]
eolian: stricter implement/constructor verification
The system now verifies whether the class of an implement or
constructor exists within the inheritance hierarchy. It also
properly checks duplicates everywhere and prints better error
messages.
Marcel Hollerbach [Tue, 3 Jan 2017 09:52:27 +0000 (10:52 +0100)]
eina_strbuf: add eina_strbuf_free_return
Summary:
For a function which just composes a string with strbuf its quite
usefull to return the string while its freed.
This makes a function like:
{
Eina_Strbuf *buf;
char *path;
buf = eina_strbuf_new();
eina_strbuf_append(buf, "test");
eina_strbuf_append_printf(buf, "%s-%d.edj", "test", 0);
path = eina_strbuf_string_steal(buf);
eina_strbuf_free(buf);
return path;
}
To:
{
Eina_Strbuf *buf;
buf = eina_strbuf_new();
eina_strbuf_append(buf, "test");
eina_strbuf_append_printf(buf, "%s-%d.edj", "test", 0);
return eina_strbuf_free_return(buf);
}
Which is a bit more handy.
Test Plan: just run make check
Reviewers: raster, cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4545
JEONGHYUN YUN [Thu, 5 Jan 2017 08:26:32 +0000 (17:26 +0900)]
elm_panel: Add _scrollable_layout_resize internal funcion for refactoring
Summary:
Remove duplicated code in _elm_panel_efl_gfx_size_set
and _elm_panel_scrollable_content_size_set.
Reviewers: jpeg, woohyun, eunue, jypark
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4553
Jean-Philippe Andre [Thu, 5 Jan 2017 08:15:42 +0000 (17:15 +0900)]
colorselector: Switch to Efl.Ui.Box internally
This doesn't change anything (in theory) but was to test the
box implementation. Conclusion: it's not much better than
elm_box. Also, homogenous mode isn't set because the layout
is completely broken (+ sets a min size equal to the object
size, thus can not resize down ever). The palette's objects
have the same size anyway.
Jean-Philippe Andre [Thu, 5 Jan 2017 07:14:27 +0000 (16:14 +0900)]
evas: Slightly optimize size hints
Object size hints are stored in a specially allocated struct
(from a mempool) and even a call to size_hint_set(default_values)
will allocate this struct. This patch avoids unnecessary allocations.
Originally I was trying to fix an infinite recalc loop but it
magically vanished...
Jean-Philippe Andre [Wed, 4 Jan 2017 11:17:21 +0000 (20:17 +0900)]
button: Add support for efl_text_set
For now a very quick and dirty solution, relying on elm_layout
legacy APIs.
Jean-Philippe Andre [Wed, 4 Jan 2017 11:07:42 +0000 (20:07 +0900)]
Revert "elm_layout: Implement Efl.Text"
This reverts commit
584e17ae84750b0c8a9bc92f41c767073a41fc94.
After talking to @herdsman (before xmas) we concluded that we
didn't necessarily want a generic version of efl_text_set/get
for elm_layout. Instead, each widget that should have a default
text part should implement text_set/get themselves (very simple).
Note that Efl.Ui.Text somehow does not "implement" efl_text when
looking at the eolian files. It works by composition.
JEONGHYUN YUN [Thu, 5 Jan 2017 01:26:29 +0000 (10:26 +0900)]
elm_panel: Add get function in scrollable_content_size property
Summary:
Added get function for getting the size of the scrollable panel.
Additionally, added some exception handling code in scrollable_content_size_set
Reviewers: woohyun, eunue
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4549
Chris Michael [Wed, 4 Jan 2017 19:23:52 +0000 (14:23 -0500)]
elementary: Support xdg_shell version 6 show_window_menu function
As we now support xdg_shell version 6 on the client-side, we need to
use the zxdg_toplevel_v6 function call to show window menus.
Signed-off-by: Chris Michael <cp.michael@samsung.com>