Commit Graph

15203 Commits

Author SHA1 Message Date
Carsten Haitzler 83752435cf eina log - handle possible overflow from high mem (last few bytes) or env
fixes CID 1361219
if you had an env var a few gb in size or we had stuff in the last bit
of memory address space this might be an issue, but that won't happen.

@fix
2016-08-06 15:53:18 +09:00
Carsten Haitzler 20c6bd296b eina log - keep coverity happy with potential ptr comparison overflow
fixes CID 1361220

in theory yes end minus start could be insanely huge or end be very
high in memory thus causing an overflow. this would have to be in the
last few bytes of memory space, so it never going to happen. and the
input from the env var has to be sane anyway as its user controlled.

@fix
2016-08-06 15:50:17 +09:00
Carsten Haitzler 15e34ffe15 embryo_cc - fix coverity complaint about assert
fix assert using a strance assert syntax and go back to basic asserts.
fix coverity CID 1361224

@fix
2016-08-06 15:41:02 +09:00
Stephen Houston 31f351ae4e Eio: Update my email address. 2016-08-05 20:33:27 -05:00
Carsten Haitzler d19cd4e63c eina threadqueue - for paranoia lock+ulock+free in order locks taken
so mimic order of locks taken to be paranoid ... this wouldnt be a
deadlock issue but just to be safe instead of sorry.
2016-08-06 09:56:02 +09:00
Stefan Schmidt 64bf1da8c1 edje: mark new edje_mmap_3d_has() API with since tag 2016-08-05 23:14:57 +02:00
Stefan Schmidt 063c31cb24 ecore_wl2: mark new events with since tag 2016-08-05 23:14:57 +02:00
Stefan Schmidt bb984760cd evas: add missing since tag for new evas_object_type_get() API 2016-08-05 23:14:56 +02:00
Cedric Bail 7e8c6b212d ecore: properly track events in Efl.Loop.Fd object.
Thanks Gustavo.
2016-08-05 12:14:18 -07:00
Cedric Bail a7bb1662e2 Revert "elementary/layout: attach edje object API with eo compositing"
This reverts commit 8a988717e1.

It seems we can't actually inherit from class more than once and neither eo
nor eolian will complain about it. You will just get random weird behavior.
This patch should come back once we have made an interface of edje.
2016-08-05 11:09:55 -07:00
Davide Andreoli a3ad7553c5 Simple test case to spot out a bad bug in elm.Entry
The bug is explained in T4296, basically the "changed" signal in elm.Entry is called randomly.
2016-08-05 19:02:19 +02:00
Carsten Haitzler 26db5d5056 eina thread queue - ensure blocks cannot be freed until lock+unlock
just in case... check blocks cannot be freed until locked and unlocked
just in case someone still is holding a lock.
2016-08-05 23:52:20 +09:00
Carsten Haitzler 84e4cf7145 ecore imf test - remove unused variable 2016-08-05 20:34:42 +09:00
Carsten Haitzler adc5cd422a ecore eina thread queue test - be anal about thread exiting cleanly 2016-08-05 20:20:25 +09:00
Carsten Haitzler 31e8a528b1 ecore-con - fix complaint about null slave list due to shutdown
so ecore-con already cleared the slaves list on shutdown but an
ecore_thread may stillbe active and thus removing from a NULL slaves
list wont work, so skip if slaves is NULL.

@fix
2016-08-05 19:41:59 +09:00
Carsten Haitzler 4a40ff95de eina lock semaphores - do not use shared semaphores and fix osx names
the way eina does sempahores, they can NEVER be sensibly shared
cross-process portably. so enabling sharing is a pointless idea. in
fact some os's like openbsd check if the sempahore addres is in a
sharable mem region and deny init if it is not. on osx you dont use
shared memory but a sempahore name you share instead... and this is
not exposed thus it can't be shared either. if we did process sharable
semaphores we'd make shm segments and/or name them in a sharable way
were you can share the idenitifer of the shm segment and/or the offset
address or name from osx. but we don't, so making them
process-private is the right thing. sharable sempahores will need a
whole new api.

this also fixes osx naming to make the name pretty unguessable/private
and opened exclusive (or it fails) by using pid, sem counter, and 4
random numbers. it's not a security mechanism as the create will fail
if there is a clash. chances are low. we unlink before anyway. good
enough for osx for now.

@fix
2016-08-05 18:11:42 +09:00
Carsten Haitzler 8fd224b4d6 eina thread queue/semaphores - check even more unlikely errors + complain
check some really unlikely alloc errors and semaphore deadlock errors
and report if that has happened. just in case.
2016-08-05 17:38:02 +09:00
Carsten Haitzler 07924f26f1 eina thread queue - check returns fo semaphore new/lock/release to debug
so openbsd may have issues with semaphores - maybe. this would catch
them if it it. why - if sem_init/sem_wait are different... i dont know.
2016-08-05 17:09:34 +09:00
Carsten Haitzler 8889daa7c5 ecore con eet test - dont use localhost port 8080
so thats a common local port to use for other things... 8080 - don't
use it, so use 12346 much like 12345 is for the other tests. far less
likely to clash. fix up tests to work better.
2016-08-05 17:09:34 +09:00
Shinwoo Kim 89d5479c0b atspi: toolbar - fix cannot call select callback
There is a line to check select_mode in _item_select function.
The item selected(clicked) callback is called when the select_mode is ELM_OBJECT_SELECT_MODE_NONE.
The checking select_mode should be handled at one place.
2016-08-05 16:17:13 +09:00
Carsten Haitzler 720f17619e ecore eina threadqueue test suite - be correct about volatile+padding
fill in the padding of mesages (10 bytes) with something so valgrinds
can be happy and use vlatiole for msgs count as the msgs num should
have been incremented already before the msg sned is done and main
thread/loop gets the msg
2016-08-05 14:35:41 +09:00
Carsten Haitzler 6b6823e5af eina_threadqueue - fix const ptr warning on spinlocks if atomic disabled
atomics SHOULDNT be disabled anyway, but if they are... fix this
warning. (no real bug)
2016-08-05 13:42:50 +09:00
Carsten Haitzler 013c0702f4 ecore_imf - fix make check to doa "load all" check after de-sillifying it
this should make ecore_imf testable with empty env vars also meaning
no env var and the make check test will now ensuree this is set to
exactly test this.
2016-08-05 13:42:11 +09:00
Jean-Philippe Andre 32df056a32 ecore_imf: Fix crash when ECORE_IMF_MODULE is set 2016-08-05 11:33:01 +09:00
Jean-Philippe Andre 917f34587b evas: Make safety check more lenient
This is to avoid ERR messages such as "object is not an image!"
that can happen when a legacy image function is called on an
eo image (proxy, 3d, ...) object.

Note: This does not fix any known issue, but it's probably a safer
solution.
2016-08-05 11:01:55 +09:00
Jean-Philippe Andre 28c917836c efl: Cleanup some code (return values)
This removes some useless code in various places, where the
switch from eo_do() to standard function call was not properly
refactored.

This changes:

type ret = 0;
ret = my_eo_function();
return ret;

To:

return my_eo_function();
2016-08-05 10:32:30 +09:00
Jean-Philippe Andre 26ee77ff67 evas image: Lower ERR message to WRN and fix it
In elm_image, efl_file_get() was called on a legacy Evas Image
object, which generated an ERR message. This was way too much
noise for something that actually works.

It's best not to call efl_file_get/set API on a legacy
object, but it can be convenient for smooth code transitions
from legacy to pure eo.

Also, add safety to those APIs.

Test case: elm_test genlist dnd, start dragging anything.
2016-08-05 10:32:30 +09:00
Jean-Philippe Andre 12fbaacc97 evas: Mark image fill_spread as deprecated
It was never implemented.
2016-08-05 10:32:30 +09:00
Jean-Philippe Andre 4d67ee2478 evas: Add safety checks to evas image legacy APIs
This checks for NULL and ensures the type is evas image.
2016-08-05 10:32:30 +09:00
Daniel Kolesa 13245db06c docs: make dark theme default, add switch --graph-theme-light 2016-08-04 16:45:34 +01:00
Daniel Kolesa 35eebf5c2c docs: add default dark theme (via --graph-theme-dark) in docgen 2016-08-04 16:43:29 +01:00
Marcel Hollerbach 3f1d40cff8 efreet: free fallback cache on shutdown
this fixes errors like:
ERR<4864>:eet lib/eet/eet_lib.c:645 eet_shutdown() File '/home/osauser/.cache/efreet/icons___efreet_fallback_localhost.localdomain.eet' is still open 1 times !

@fix
2016-08-04 17:04:50 +02:00
Carsten Haitzler 8dd27f2fd9 elm tooltips - fix positioning cornercases
this should fix T4277
2016-08-04 23:23:30 +09:00
Daniel Hirt 44569b859a Elm.Entry: use proper theme_set function on edje object
Shouldn't use elm_widget_theme_object_set for handlers/anchors here.

Fixes T4091.
@fix
2016-08-04 13:27:08 +03:00
Carsten Haitzler e5cfb76ef1 edje object shutdown - be far more paranoid about ptrs and order
so we didnt set everything to null after being freed and object sae
freed after some data. do the data frees after objects are deleted so
callbacks cant access null data anyway. this makes this edje shutdown
far more robust and safe. massive improvement in stability i hope.
2016-08-04 18:28:49 +09:00
Carsten Haitzler c59995916e edje - fix access to freed data struct during object shutdown
this fixes T4181
2016-08-04 18:19:42 +09:00
Hermet Park b07617ea76 elementary widget: actually this is a right fix than fa4a72d3fc
Now rage and enventor both will be fine.
2016-08-04 16:44:06 +09:00
Carsten Haitzler fa4a72d3fc elm key events/disabling/focus - fix after another disabled widget fix
this fixes key events in rage again after
ea2b5e4048 broke them. this fixes T4285
2016-08-04 16:37:21 +09:00
Subhransu Mohanty d458101a41 edje: updated the start index of vector resource from 1 to 0
Reviewers: cedric, jpeg

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-08-03 17:34:57 -07:00
Carsten Haitzler a3e7413992 elm image - silence warnings of setting smooth if image is edje 2016-08-04 08:17:18 +09:00
Andy Williams f2a4ff154f Fix further text checks in Elm_Code T4264
An incorrect assumption in how unused memory may be initialised
    @fix
2016-08-03 23:43:23 +01:00
Stefan Schmidt 9f5e5ae732 elm: scrollable: add guards to include eo and legacy header only when allowed
Make sure the eo and legacy headers are only included when the matching defines
are enabled.
2016-08-03 15:03:37 +02:00
Stefan Schmidt fea0c92bc9 elm: fileselector: add guards to include eo and legacy header only when allowed
Make sure the eo and legacy headers are only included when the matching defines
are enabled.
2016-08-03 15:03:37 +02:00
Chris Michael e4c641ed1e evas: Fix compiling evas x engine with no gles
This fixes an issue from 19eb7b727f where the code
would no longer compile due to not finding noext_glXCreatePixmap in
the structure. This was due to the fact that this field was not
compiled into the structure if gl_gles was defined.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-08-03 09:00:50 -04:00
Carsten Haitzler f23788dcb0 elm image - store smooth scale var in object as intended
this fixesa bug reported by davemds and kuuko in python bindings test
suite where setting smooth flag != getting it right after.
2016-08-03 18:27:57 +09:00
Jean-Philippe Andre 9b2980e1b1 widget: Fix propagation of events on hold
Because of the translation between legacy and eo key
events, the on_hold flag state could sometimes be lost.

Symptom:
 elementary_test -to Focus
 Click on a button inside the scroller
 Up/down would jump to the end of the scroller, rather than
 the next button.

Thanks a lot to Woohyeon for the very good bug report.
2016-08-03 18:08:31 +09:00
Jean-Philippe Andre 19eb7b727f glx: Fix black windows in E on nvidia
This fixes calls to glXCreatePixmap that would consistently
fail on nvidia >= 360.

It seems glXCreatePixmapEXT was used instead of glXCreatePixmap,
and that function always returned 0.

One could assume always using the non-EXT version of the
function should be preferred. Unfortunately, doing so for all
the other functions brings back the black windows.

I'm taking a very careful approach by doing this only for drivers
>= 360.

Fixes T3030

@fix
2016-08-03 17:32:14 +09:00
Jean-Philippe Andre 444ab8fb17 gl_x11: Minor code refactor around eglCreateImage
Trying to debug T3030... hitting a brick wall at the moment.
Add better error handling (for EGL).
2016-08-03 17:32:14 +09:00
Carsten Haitzler abeeb11b19 elm theme - don't use empty env vars eina_prefix handles anyway
in 14ec825aa9 cedric added trying
ELM_DATA_DIR env var explicitly for looking for themes. first if this
is NULL then we look in a bogus directory (null). secondly eina_prefix
already takes care of env vars like thsi as part of figuring out
prefix with correct namespace etc. so this just is a bug as opposed to
anything useful and the CORRECt implementation is already done in
eina_prefix.

@fix
2016-08-03 17:27:42 +09:00
Davide Andreoli 7c01254ba7 edje: fix color class broken by b543f4c896.
T4270

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-08-02 16:54:33 -07:00
Cedric Bail 914043d567 eina: test safepointer in the correct range for 32bits system.
The generation counter on 32bits system is on 8bits, obviously 1024
is more than that.

T4265
2016-08-02 15:35:15 -07:00
Andy Williams f7396703c5 Fix text check in Elm_Code T4264
An incorrect assumption in how unused memory may be initialised
@fix
2016-08-02 23:23:31 +01:00
Stefan Schmidt b7bc4f8125 tests: eolian_cxx: add define to allow the use of beta APIs like eo
This is needed again now as we put eo back into beta for 1.18.
2016-08-02 22:21:18 +02:00
Jean Guyomarc'h 57f95de890 ecore_audio: use the correct module wrapper
This was code for sndfile. sndfile module should have been
used instead of the pulseaudio one.
It led to a build break when having sndfile but not pulseaudio.

Ref: 879d93377b
2016-08-02 21:12:33 +02:00
Derek Foreman 871a9cff03 ecore_drm2: Fix a condition where no outputs are enabled
If the first output we test is disconnected but has the crtc of
the primary display assigned then we'll fail to assign the crtc
to the connector it's really connected to later.

This is a quick hack as trying to sort this out properly may be
too invasive for the upcoming 1.18 and isn't really important until
1.19 supports multihead anyway.
2016-08-02 13:29:09 -05:00
Daniel Kolesa a43fda4ddc docs: put graph before hierarchy 2016-08-02 17:35:14 +01:00
Daniel Kolesa e540a9864b docs: allow rank dir and size to be changed in theme 2016-08-02 16:47:54 +01:00
Tom Hacohen bf772125e8 Eo: Move Eo back into beta.
Eo should now be considered beta again. This commit puts it back in beta
and makes it necessary to define EFL_BETA_API_SUPPORT before including
Eo.h.
2016-08-02 16:34:35 +01:00
Daniel Kolesa ad358a80e9 docs: support for foldable inheritance graphs 2016-08-02 15:46:03 +01:00
Daniel Kolesa 3c34a53cb8 docs: add theme loader for graphs 2016-08-02 15:32:50 +01:00
Vitalii Vorobiov dde1299182 edje_edit: delete swallowed object before unswallowing (for part type GROUP)
unswallowing set swallowed_object to NULL inside of
_edje_real_part_swallow_clear
so it is impossible to delete object anymore.
And so, changing sources leaves fantoms and undeleted objects.

@fix
2016-08-02 17:01:33 +03:00
Hermet Park ea2b5e4048 elementary widget: fix a wrong disabled behavior.
This is a corner case bug I spontaneously found.

* Scenario.

A. Disable A widget.
B. Add a child B widget to A.
C. Now B Widget theme will be followed to A that is performed by
   elm_widget_theme_apply()
D. This elm_widget_theme_apply() calls elm_widget_disabled_set() (originally.)
E. Now B widget will be logically disabled.
D. Let's enable A widget again.
E. After going through widget disabled sequence, elm_widget_disabled_eval()
   will be called in the last
F. In this function, A widget tries to enable its children. But B widget won't
    be enabled because its logically disabled!

Acutally, nowhere widget change children's disabled states logically,
but it propagates its state to children within volatile way so that
A widget perfectly keeps the disabled/enabled state with its children and
recover the children's enable/disable state once their relationship is cut off.

@fix
2016-08-02 22:49:33 +09:00
Carsten Haitzler 7a70d41541 elm scroller accel was broken by default confgis setting it to 0. fix
now set default wheel scroll accel to 7 as epr the confgi upgrade code
and also improve the acceleration to "rely on itself" and feedback
loop. this is so much better now i can scroll through things in a
whisk with the wheel.

fixes T4263

@fix
2016-08-02 17:32:19 +09:00
Stefan Schmidt aad5b8b83e tests: ecore_con: make sure info is initialized
One test does init info before passing it to _url_compl_cb while two others
are not. Also test if inof is NULL in callback here to avoid crashes.

tests/ecore_con/ecore_con_test_ecore_con_url.c:194:4: warning: 'info' may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_event_handler_add(ECORE_CON_EVENT_URL_COMPLETE,
2016-08-02 09:31:10 +02:00
Stefan Schmidt a467bb30ca tests: eio: add Eina.h include for eina_init and shutdown functions.
tests/eio/eio_suite.c:33:4: warning: implicit declaration of function 'eina_init' [-Wimplicit-function-declaration]
     eina_init();
     ^
tests/eio/eio_suite.c:38:4: warning: implicit declaration of function 'eina_shutdown' [-Wimplicit-function-declaration]
    eina_shutdown();
2016-08-02 09:29:58 +02:00
Stefan Schmidt 00227b81f4 build: do not dist now longer available files
Another cleanup for commit dd1d3f0d2d. These
makefiles are now longer available better not try to dist them.
2016-08-02 08:32:13 +02:00
Stefan Schmidt 600aebcf6e build remove now unused eolian subbuild helper makefile
In commit dd1d3f0d2d the consumers of the makefile
have been removed. No need to still have it around.
2016-08-02 08:11:15 +02:00
Carsten Haitzler 879d93377b efl runtime dynamic lib loading - make errors consistent and useful
so drop trying to appease the openbsd packages and stick to "upstream
so major versions" and let users fix their systems with symlinks. also
report what we are looking for so they have a chance to symlink to
make efl happy.

at some point we should make a single simple runtime lib linker
subsystem in efl so all these errors are reported in the same way,
input libray names are listed in a simple consistent way etc. etc.

for now we have 3 locations in efl that do this and they are roughly
similar. we can unify it later.
2016-08-02 11:23:34 +09:00
Cedric BAIL dd1d3f0d2d autotools: since it has been broken for some times and nobody noticed, let's remove per directory support. 2016-08-01 13:36:47 -07:00
Romain Naour 02c14d10a3 elementary: remove *.eo.h files from includesub_HEADERS
Otherwise *.eo.h files will be installed twice, so it can break a
parallel install on fast machines, whereby two make jobs may run
concurently, trying to install the same files.

With elementary 1.17.1:
/usr/bin/install -c -m 644 elm_sys_notify.eo.h
/usr/bin/install -c -m 644 elm_sys_notify.eo.h
 usr/bin/install: cannot create regular file 'elm_sys_notify.eo.h': File exists

Fixed in Buildroot:
https://git.busybox.net/buildroot/commit/?id=bba82cbfe4caaa01366fc74fb3b6f4c41587a28b

While applying the fix on latest master (1.18.0-beta1), the only
remaining *.eo.h file is efl_ui_text.eo.h.

Fixes:
http://autobuild.buildroot.net/results/7e9/7e9caffe442dcf40ee41da56fd3f55ffedf3a291

Signed-off-by: Romain Naour <romain.naour@gmail.com>
2016-08-01 18:12:53 +02:00
Carsten Haitzler 23f4d22e0a edje_cc build - link to lua and use ula cflags as edje_cc uses lua
i do not remember it using lua... well that's obvious then - add
cflags/libs.
2016-08-01 23:33:58 +09:00
Carsten Haitzler 37735d8b4f ecore-imf - fix stupidity of loading ALL modules even if not needed
eocre-imf loaded all input modules even though an env var was set to
tell it to use a specific one. this just wastes memory and slows down
startup time. this uses the env var to choose ro auto-guesses wayland
or xim input if the right env vars are set, and if it doesnt know
falls back to "load all" as before. this saves 28kb of dirty pages.
this helps address T4227

@fix
2016-08-01 21:12:24 +09:00
Carsten Haitzler 1d0b500fa8 edje - reduce memory footrpint by dlopening ephysics on demand
this saves about another 80Kb or so in dirty pages by only loading
ephysics when needed. This removed ephysics and bullet library dirty
pages from the process space. this is another patch to address T4227.

@fix
2016-08-01 19:11:39 +09:00
Carsten Haitzler d27f5fcab7 ecore_audio - save 232k of real RAM by dlopening depednecies
so libpuls and libsndfile suck in dependencies. they suck in so much
that by the time linking is done we've written to about 230kb of
PRIVATE MEMORY as dirty pages in symbol tablesm global veriables etc.
etc. - this is just horrible. especially if an app never makes any
sound... it's just wasted memory. this stuff is invisible to normal
memory debug tools. so this begins to address things. please see
T4227. my numbers now put me at:

1780Kb total dirty writable mapped from library file pages. down from
2012Kb.

This fixes some memory bloat reported in the above ticket, but there
is more to fix for sure.

@fix
2016-08-01 14:41:15 +09:00
Subhransu Mohanty e077e92372 edje: throw error when vector resource not found.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4202
2016-08-01 13:24:34 +09:00
Subhransu Mohanty 7af272d93c edje: Fix handling of polygon and polyline node.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4203
2016-08-01 13:23:44 +09:00
Jean-Philippe Andre 523aea45ce tests: Place inline window inside a box
This shows off how to properly use an inline window.
I tried to add extra smarts inside elementary to handle those
inline windows like normal objects... but it led to more bugs.

The only way that makes sense to use this inline window
is to separately treat the image object and the window
itself. Any other approach is too tricky.

See T1973
2016-08-01 10:29:24 +09:00
Jean-Philippe Andre 58c3808231 ecore_evas: Register animators for inline image ee
In ecore_evas_object_image_new, register animator tick del/add
catchers, so that animators can work. This fixes mouse scroll
in an inline window.
2016-08-01 10:29:24 +09:00
Jean-Philippe Andre b3293408a4 scrollable: Avoid useless connect to animator
If scrolling Y no need to register X animators. And vice
versa. It's a minor optimization.
2016-08-01 10:29:24 +09:00
Daniel Hirt 0d9ddc4514 Canvas text: fix range geometry calculation for RTL
Fixes T3627.

@fix
2016-07-31 10:33:30 +03:00
Carsten Haitzler 67246cddcb ecore imf - ibus - fix destroy/disconnect handling that crashes
restart e or have ibus input get destroyed and come back... the ibus
module will do bad things to its pants... because the wrong things
were passed to the signal callbacks... this fixers that along with
ensuring a freed string ptr is NULL.

@fix
2016-07-30 01:42:15 +09:00
Daniel Kolesa 085623006d elua: add table serializer/deserializer
This is important for docgen use (reading theme configs).
2016-07-29 14:27:26 +01:00
Stefan Schmidt 9c8eea6ad8 tests: ecore: try to keep constness for Efl_Version
It returns as const so better try to keep this be having the avriable const as
well.
2016-07-29 14:59:43 +02:00
Stefan Schmidt b56bf67f56 tests: eina: comment out unused test to avoid warning
Just to avoid the unused function warning.
2016-07-29 14:55:10 +02:00
Stefan Schmidt 3bd4c19f55 eina: promise: fix memory leak in error path
If we would not get a promise back here the allocated array would leak when we
return. Make sure we also free it in this case.

CID: 1360468
2016-07-29 14:53:36 +02:00
Stefan Schmidt 461c5d2787 ecore: xcb: make sure length_name is always initialized
lib/ecore_x/xcb/ecore_xcb_icccm.c: In function ‘ecore_x_icccm_name_class_set’:
lib/ecore_x/xcb/ecore_xcb_icccm.c:320:11: warning: ‘length_name’ may be used uninitialized in this
function [-Wmaybe-uninitialized]
         s += length_name + 1;

Looking at the code this is indeed possible so better play safe here.
2016-07-29 14:20:16 +02:00
Stefan Schmidt 620d0031de evas: xcb: fix build break of xcb engine
This was broken since commit ed2e78286b
The variable is named differently in the xlib vs. xcb code
2016-07-29 14:17:39 +02:00
Stefan Schmidt 61edc87787 elm: object_item: add guards to include eo and legacy header only when allowed
Make sure the eo and legacy headers are only included when the matching defines
are enabled.
2016-07-29 12:04:13 +02:00
Stefan Schmidt f9ff0cd6dd elm: sys_notify: add guards to inlcude eo and legacy header only when allowed
Make sure the eo and legacy headers arte onl yincluded when the matching defines
are enabled.
2016-07-29 12:04:13 +02:00
Stefan Schmidt f752288666 eldbus: make sure eldbus model is hidden behind the BETA API flag
Make sure we keep this in beta for now until our EO based interfaces are ready.
2016-07-29 12:04:13 +02:00
Woochan Lee 6e325ee691 multibuttonentry: Fix wrong definitions.
Summary:
There is no "ELM_MULTIBUTTONENTRY_EVENT_CHANGED"
Because of this, MBE's Internal entry did not get a changed callback.

And MBE does not have changed smart callback.

Those things made by someone during EO interface working i think.

Test Plan: elementary_test

Reviewers: Hermet, cedric, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4195
2016-07-29 14:36:17 +09:00
Cedric Bail 351c2007f6 eio: add a test for T3237.
I have been trying to reproduce the reported ephoto issue, but couldn't. This
test case reproduce the reported scenario.
2016-07-28 21:03:12 -07:00
Cedric Bail cec3eddb41 eio: all our tests need eina and we aren't testing eina here, so init once and for all. 2016-07-28 21:03:12 -07:00
Carsten Haitzler 5f224a6671 efl - elm genlist - clean up sanghyeon's patch to be less code
use if not while, no first, and timing checkis already done at end so
remove from if/while. cleaner now.
2016-07-29 11:57:10 +09:00
Carsten Haitzler 518c59166c fix warnings in sanhyeons's patch/fix 2016-07-29 11:52:02 +09:00
Jonghee Choi 09b01de58a [CONFIG] call elm_rescale() only when scale value is changed
Summary: it doesn't need to call elm_rescale() in _config_flush_get() when the scale value is not changed.

Reviewers: jaehwan, cedric, raster

Subscribers: minkyu

Differential Revision: https://phab.enlightenment.org/D4186
2016-07-29 11:44:40 +09:00
SangHyeon Lee 8d8d08effa genlist: fix memory-leak in filter queue and refactoring queue iteration
Summary:
There are critical memory-leak in filter queue process.
         It looks typo so I fix it and refactoring queue iteration logic to spend
		 less time in for and while loop.

Test Plan: Tested by filter elementary test

Reviewers: shashank0990

Reviewed By: shashank0990

Subscribers: raster, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4170
2016-07-29 11:29:25 +09:00
jinwoo.shin c7c387b33a Fix memory leak issue on genlist_example_02
Summary: The realized items list should be freed by either eina_list_free() or EINA_LIST_FREE when it is no longer needed

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: minkyu

Differential Revision: https://phab.enlightenment.org/D4193
2016-07-29 11:08:09 +09:00
Carsten Haitzler 29fce42900 evas generic gst loader - handle fwrite return value for coverity
fixes CID 1360467
2016-07-29 07:57:17 +09:00
Carsten Haitzler 742fbc5717 evas canvas destruction - detect zombie objs and hack at them with axes
ok. so here's the issue at least now. we have eo objects in the canvas
and they have a refcount of 2 user_refcount is 0. the calls stack does
NOT show we are calling callbacks at that time on these objects. they
are not in the backtrace (the canvas is, the objects themselves are
not).

SOMETHING is keeping 2 eo "internal" refs on these objects and i have
no idea what/how/who. it's a royal pain in the butt to find out as the
only way is lots and lots of logging and you get drowned in the
logging...

so what I have now done is a super ugly workaround that detects these
zombie objects that refuse to die and just FORCES them to die when the
evas canvas frees and clears out layers.
ac10a00acc doesn't really cause the
issue, it just brings it out in the open for all to see far more
easily. but something is deeply wrong SOMEWHERE with SOME objects and
our refcounts.

this fixes T4187
2016-07-29 00:02:03 +09:00
Daniel Kolesa 63a3da0c0f docs: support for writing edge styles for individual connections 2016-07-28 14:19:12 +01:00
Daniel Kolesa 26ebd20db8 docs: initial bits for theming support for graphs 2016-07-28 14:09:35 +01:00
Jean-Philippe Andre feccbc7d83 tests: Add missing function implementations
In eolian test cases.
Not a problem when EOAPI is defined as weak, but compilation
will fail if the symbols are strong. Eg. on Solaris (it's just
a guess).

Fixes T3889
2016-07-28 20:15:23 +09:00
Amitesh Singh ba060fe932 entry: allow force recalc on "size,eval" "elm" signal
Summary:
In some use cases, font (style) of elm.text in elm entry is changed
on focus and unfocus. user must send "size,eval",elm signal to entry to
force recalc, but this was not happening. This patch fixes that issue.

fixes T4233

Reviewers: tasn, herdsman, raster

Subscribers: cedric, seoz, jpeg

Maniphest Tasks: T4233

Differential Revision: https://phab.enlightenment.org/D4196
2016-07-28 15:22:07 +05:30
Jean-Philippe Andre 28aa0ba79f win: Fix evas framespace under X
Mouse inputs would not work if the window is rotated,
because the framespace was invalid.

Fixes T4132
2016-07-28 16:30:41 +09:00
Carsten Haitzler 1c7663e311 edje entry - check all minor struct callocs and on fail report + unwind
lots of unchecked malloc/calloc returns, so check these, unwind safely
and complain (highly unlikely to happen unless the system is about to
fall over). this should fix T4230
2016-07-28 11:00:35 +09:00
Vitor Sousa 7efa27faed elementary: fix legacy path set/get for Fileselector specializations
Fix legacy functions elm_fileselector_path_get and
elm_fileselector_path_set.
Make these functions call the correct function when called with a
specialization of Elm.Fileselector (instead of the base class function).

Create internal versions of path set/get functions to avoid warnings
about deprecated function calls.

Fix T4198

@fix
2016-07-27 18:09:23 -03:00
Derek Foreman f975cdf513 ecore-drm2: Silence compiler warning
We probably can't actually use this variable uninitialized, but
let's init it anyway to keep gcc happy.
2016-07-27 15:23:12 -05:00
Chris Michael 4431ff01ff ecore-drm2: Fix issue of VT-Switching going blank on returns
As it turns out, when we vt-switch Back to a running Enlightenment,
it ends up processing all outputs and causes Evas to create a giant
canvas to cover all outputs. This new canvas causes a blank screen as
the pageflipping fails (due to fb being too large). As we do not yet
support output on more an one screen anyway, temporarily disable any
output which is not marked as primary.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-27 15:35:42 -04:00
Chris Michael 1bbc23b086 ecore-drm2: Add API for vt-switching
This commit adds a function we can call from inside Enlightenment in
order to fix an issue with VT-Switching. The problem was when a client
application is open, the compositor does not pass along the key-combo
for vt-switch but rather sends it to an application. This patch (along
with upcoming Enlightenment one) fixes the issue.

NB: This late API add approved by Stefan ;)

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-27 13:28:10 -04:00
Chris Michael 3754ad0477 elementary: Reduce variable usage
As we don't use the framespace x, y here then there is really no need
to have them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-27 12:02:51 -04:00
Chris Michael 3b82375835 elementary: Fix issue of wrong minimum size for some E dialogs
When we are calculating minimum size hints for the window object, we
should be adding framespace to maximum size, not subtracting it...

Honestly this just looks like a brain-dead typo.

Fixes T44225

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-27 11:12:23 -04:00
Vitalii Vorobiov b07a0c523c edje_edit: avoid such values like 2.77556e-17
using spinner to change double values means that sometimes
if set such weird values while should go to 0.0

@fix
2016-07-27 15:18:07 +03:00
Chris Michael bf414d8c54 elementary: Avoid possibly setting opaque region twice
Previously, if the window had no frame object, then this could would
have been setting opaque region twice (for the alpha case). We can
avoid this if we move the alpha check to below the frame check.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-27 08:08:00 -04:00
Jean-Philippe Andre ccac110d71 elm: Fix extra mouse,in events in layout_content_unset
Problem: crash in assert() in terminology.

Scenario:
 Open Terminology,
 Split V by keyboard,
 Move mouse to split 2,
 Create tab by keyboard
 --> abort() in terminology

Cause:
 An extra mouse,in event happens during edje_object_unswallow
 inside elm_layout_content_unset.

Root cause:
 efl_part() in elm_layout had a side effect: edje_recalc on the
 edje object. Causing its geometry to be "properly" defined and
 the mouse event to trigger callbacks.

Solution:
 Avoid calling recalc... somehow.

Conclusion:
 Without adding any new API, edje edit provides internally the
 information that we want: type of an edje part (for box & table).

Fixes T4221
See T4028
See T3509
2016-07-27 16:48:45 +09:00
Carsten Haitzler bd91ebbbd7 efl - ecore-x - work around e's badness in makeing an x image for all wins
so e is being stupid and creating an ecore-x image forevery single
window if in x11 mode if it needs it or not. this results in having ti
allocate an actual x image and shm segments. work around this and get
bit order from somewhere else than the x image itself thus avoiding
the allocation until a real get or put is done.

@fix
2016-07-27 10:32:41 +09:00
Derek Foreman 3d5dbbfcd0 elput: Use correct filename in unlink
We switched from mkstemp to eina_file_mkstemp() but ended up unlinking
the template filename, which didn't exist on the filesystem.
2016-07-26 12:38:24 -05:00
Derek Foreman 8b87cd9e46 wayland_shm: Use correct filename in unlink
We switched from mkstemp to eina_file_mkstemp() but ended up unlinking
the template filename, which didn't exist on the filesystem.
2016-07-26 12:38:24 -05:00
Chris Michael ed55b1f733 ecore-wl2: Add safety check for valid compositor
As we cannot create a new wl_region without a valid compositor, add a
safety check.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-26 12:43:24 -04:00
Chris Michael acbba9b03b ecore-wl2: Remove error message during connect/reconnect
Since session recovery can cause apps to constantly try and reconnect
to the display server, we probably should not be filling logs here. On
the other hand, any failures on first connect are now not going to
display any error messages.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-26 10:55:31 -04:00
Vyacheslav Reutskiy 5d9cb39911 edje_pick: copy block 'data'
Copy global data from files. Main resoan for it - elementary.
Elementary needs data "version" for load widget styles.

@fix
2016-07-26 15:30:15 +03:00
Stefan Schmidt 3f4b2a2c90 edje: remove now unused variables
Commit e3ed888aa9 removed the code where these
variables have been used before.
2016-07-26 12:41:19 +02:00
Stefan Schmidt 8a933c28d5 examples: edje: make sure we handle the various corner cases for the po files
Delete the earlier copied files only. Handles out of tree and in tree builds.
2016-07-26 12:40:55 +02:00
Jean-Philippe Andre 365a322f01 edje: Remove invalid call to recalc in efl_part
What a mess... Assuming efl_part() had no side effect on the
object it took me hours to figure out that there was a wrong
call to _edje_recalc_do in the efl_part() function itself.
That was bad, and existed because efl_part() used to be
efl_content_get().

efl_part() should not have any side effect.

Also, fix a return value in content_remove.

Fixes T4214 (invalid redraw and crash in terminology).
2016-07-26 18:57:38 +09:00
Carsten Haitzler 4b145afcfe elm cnp windows - remove unused vars 2016-07-26 16:49:03 +09:00
Carsten Haitzler b3d40d393e elm cnp win32 - do one side at least of unix newlines to windows newln
this PARTLY addresses T3556 ... this handles our own conversion of
makrup to string then to a windows newlined string. this half. i wrote
the conversion code for the other way but it's unused as i am unsure
where exactly to plug in it. following the cnp code makes me not sure
where it goes so for now - not there, but ready to go.

to be clear. out API is unix text. utf8 strings at our api with UNIX
newlines. that is our api. that is the text we accept and produce. if
you deal with another file or interface that does not provide this
then the job of conversion is AT THAT POINT. eg elm_cnp.c has to do
this. as would file loads of text files (and saves) etc. - anything
else like forgivingly handling anything at the api level makes it
totally unclear what our api is and what should go in and come out.

to be portable we have to define what it is and the most portable
thing to do is at the api level within a process we define one and
only one format. UNIX \n format.

@fix - partial
2016-07-26 16:44:10 +09:00
Carsten Haitzler 1b8643b9a0 efl ui image - fix view size get to NOT apply scaling
this fixes T3254
2016-07-26 15:24:13 +09:00
Subhransu Mohanty e3ed888aa9 edje: fixed issue with applying transformation and stroke width
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4192
2016-07-26 14:33:15 +09:00
Carsten Haitzler 3a77d5bc20 edje examples - when you cp also just assume success if same file
fix makefiles for examples.... more

@fix
2016-07-26 14:22:43 +09:00
Subhransu Mohanty 56398a2035 example/edje: updated vg example with interpolation usecase
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4191
2016-07-26 14:19:59 +09:00
Subhransu Mohanty 12e09d2d2a edje: fixed issue with vector part state inheritance.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4190
2016-07-26 14:19:59 +09:00
Subhransu Mohanty f38dbd39f5 example/evas: update evas vg example.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4189
2016-07-26 14:19:59 +09:00
Subhransu Mohanty 0023f20d85 efl/interface: fixed the shape interpolation implementation.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4188
2016-07-26 14:19:59 +09:00
Jean-Philippe Andre 9f04590bbf edje: Minor fix (return proper bool value) 2016-07-26 14:19:59 +09:00
Jean-Philippe Andre 3590010003 edje: Use eo_del instead of eo_unref where needed
This fixes the following error message:
Object '0x40000002f0000030' still has a parent at the time of destruction.

Though I actually wonder why ref == 0 and there was a parent.
Something is still a bit fishy here.
2016-07-26 14:19:59 +09:00
Carsten Haitzler 6b68dd5712 edje examples - stop deleting the po files from the src tree!
whatever someones was trying to do.. they just endewd up deleting po
files in the src tree every time you clean! argh! fix!
2016-07-26 14:04:59 +09:00
Carsten Haitzler ed2e78286b evas software x11 - be agressive with shm cache and keep it low
shm cache size is now 1.5x the total number of pixels in sw x11
outbutf's and that's it. 32 segment max limit too. this should keep
things down

@opt
2016-07-26 13:59:54 +09:00
Carsten Haitzler 93a683daad evas and ecore_x shm segment management - fix over allocation and perms
so our sysv shm segments were both over-permissive (nothing bad
really, just other users could read and write to/from our pixel data
destined for the screen... they could do this to x11 directly anyway
so no real issue), but be more restrictive and use 0600 as xserver
runs as root so can read/write anyway and we only want our own uid
access. but even more - fix our shm segment flushing to not keep lots
of segments floating about like a bad smell when we don't need them.
we had a cache but it wasnt flushed when it should be since async
rendering turned up. this fixes that and we're back to agressively
flushing them out when idle.

@fix
2016-07-26 13:21:50 +09:00
Shinwoo Kim e2093f7886 Revert "access: add an example of elm_object_part_access_object_get"
This reverts commit f8aa67cd18.
2016-07-26 11:03:32 +09:00
Shinwoo Kim f8aa67cd18 access: add an example of elm_object_part_access_object_get 2016-07-26 10:40:57 +09:00
Minkyu Kang 5a7535cc4c elm_bg: fix typo in doc
Summary: Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: seoz, jpeg

Differential Revision: https://phab.enlightenment.org/D4184
2016-07-26 10:25:14 +09:00
Sungtaek Hong d40d469bce elm_conform: set data pointer to obj from NULL.
Summary:
 - In the callback for ELM_PLUG_EVENT_IMAGE_DELETED,
   it tries to get elm_conform's data from NULL.
@fix

Reviewers: Hermet, woohyun, cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4177
2016-07-26 10:25:14 +09:00
Jean-Philippe Andre b2b980a737 evas: Fix inefficient updates with no_render
is_visible returns 0 if no_render is true, so should
was_visible as well. Yeah, there will be problems if
no_render changes on the fly. Don't do that.

Fixes T4193
2016-07-26 10:25:14 +09:00
Derek Foreman da6b03540f wayland_shm: Fix fd leak in dmabuf
Need to close the fd from PrimeHandleToFD.
2016-07-25 12:19:43 -05:00
Chris Michael b32e1ace46 ecore-wl2: Reduce debug noise on key events
This is annoying to see key events flooding a terminal ... so comment
out this debug statement. If a developer really needs this, then
enable it locally.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-25 12:18:48 -04:00
Stefan Schmidt a17d59c7c3 Revert "access: add API to get access object of given part"
This reverts commit 57d77c9041.

We are in freeze right now and this is a new feature. Considering the access
API is still in beta I might have let this slip by but its does not even build

../../../src/tests/elementary/elm_test_popup.c:27:1: error: conflicting types for ‘elm_object_part_access_object_get’
 START_TEST (elm_object_part_access_object_get)
 ^
In file included from ../../../src/lib/elementary/Elementary.h:240:0,
                 from ../../../src/tests/elementary/elm_test_popup.c:6:
../../../src/lib/elementary/elm_object.h:521:54: note: previous declaration of ‘elm_object_part_access_object_get’ was here
 EAPI Evas_Object *elm_object_part_access_object_get(const Evas_Object *obj, const char *part);
                                                      ^
../../../src/tests/elementary/elm_test_popup.c: In function ‘elm_object_part_access_object_get’:
../../../src/tests/elementary/elm_test_popup.c:39:47: warning: passing argument 1 of ‘elm_object_part_access_object_get’ makes integer from pointer without a cast [-Wint-conversion]
    access = elm_object_part_access_object_get(popup, "access.title");
                                               ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: expected ‘int’ but argument is of type ‘Evas_Object * {aka struct _Eo_Opaque *}’
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:13: error: too many arguments to function ‘elm_object_part_access_object_get’
    access = elm_object_part_access_object_get(popup, "access.title");
             ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: declared here
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:11: error: void value not ignored as it ought to be
    access = elm_object_part_access_object_get(popup, "access.title");
           ^
Makefile:43996: recipe for target 'tests/elementary/tests_elementary_elm_suite-elm_test_popup.o' failed
make[5]: *** [tests/elementary/tests_elementary_elm_suite-elm_test_popup.o] Error 1

If you still want this in make sure it actually can compile the tests you added.
2016-07-25 18:01:37 +02:00
Stefan Schmidt 51f7a7c520 examples: elementary: make sure the prefs_example* files get into dist
These files have been missing from dist and thus some example builds failed.
We also need to clean them up afterwards now.
2016-07-25 18:00:42 +02:00
Stefan Schmidt 8ac236cff4 examples: edje: fix build of edje files with translation within distcheck
The edje text example covers the translation functionality which need the mo
and po files during edje_cc compilation. Further more the folder need to be
writable to create the new mo/po files.

We need to ensure that this is the case during a distcheck which is read only
on the source tree.
2016-07-25 18:00:42 +02:00
Stefan Schmidt d922a556b4 evas: filters: add return value in all cases
Function with non-void return value so we need to add a return in all cases.
Thanks to gcc for complaining here.
2016-07-25 18:00:42 +02:00
Chris Michael 8be8f8cbd3 elementary: Fix formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-25 11:54:32 -04:00
Marcel Hollerbach f94d349f52 ecore_wl2: also add the del control code
otherwise we are sending the controlcode for delete, which is wrong.

This fixes the backspace on delete problem.
2016-07-25 17:45:13 +02:00
Chris Michael 32af25ebb9 elput: Fix issue of losing mouse input when removing a device
When we are adding new input devices, if we already have an existing
one (keyboard, pointer, touch, etc) then we should just be
incrementing the device count and returning from the init function.
Previous code here would increment the device count, then continue on
and create a new internal representation of the device. This was
causing issues when a device gets removed.

Fixes T4192

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-25 10:55:57 -04:00
Shinwoo Kim 57d77c9041 access: add API to get access object of given part 2016-07-25 22:05:24 +09:00
Carsten Haitzler 96fbea9dae elm table and box resize themselves on sizing eval - fix this - dont resize
thsi fixes T3031

@fix
2016-07-25 19:13:15 +09:00
Shinwoo Kim 1fbc491904 elm_access: fix typo of atspi action 2016-07-25 19:02:21 +09:00
Carsten Haitzler 287c543ea3 efl - when evas generic loaders merged the gst loader was missed. fix
this fixes the missing gst loader from generic loaders.
2016-07-25 15:21:45 +09:00
Carsten Haitzler 89a3be8735 ector module - remove sueless chekc for null done already CID 1347411
fixes a pointeless check coverity found
2016-07-24 18:44:15 +09:00
Carsten Haitzler b94a7b5cb4 ecore-imf - remove usueless checks for context - CID 1351451
useless checks for ic in code. fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 8c9adcb616 efl ui image async locking -fix CID 1356199 - locked data cant be messed with
this addresses a coverity issue that in theory looks right

fix CID 1356199

@fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 8b20d8dd0d efl ui video - fix coverity CID 1356997
really minor lack of check if emotion init succeeds. check and
complain if it fails.

@fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 35e39f4145 edje entry - fix coverity CID 1357752
fix potential crash if calloc fails and sel is NULL

@fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 10f7641dda evas cache2 - fix coverity CID 1357754
@fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 71cb445b6c elm quicklaunch binary - fix coverity CID 1353607
@fix
2016-07-24 18:44:15 +09:00
Carsten Haitzler 1c6bb48c11 evas image updates - optimize by over-rendering less with hidden content
so if an img obj had some update regions and was opaque, it didnt del
an update region first before adding the updates, thus possibly
letting update regions pass through the opaque image area

@fix
2016-07-24 18:44:15 +09:00
Davide Andreoli 3a726037fa Gstreamer1: implement subtitles mute/unmute ability
This seems the only way to disable subtitles embedded in the video file.

WIthout this patch calling em_spu_mute_set/get do not work, thus I consider this a @fix
2016-07-24 11:07:23 +02:00
Derek Foreman 6108aa942c wayland_shm: Speed up dmabuf on intel
using map_bo/unmap_bo instead of gem_map_bo_gtt/gem_unmap_bo_gtt
results in a cacheable mapping and a large performance boost.

(dmabuf will still remain turned off by default for the release)
2016-07-22 14:32:37 -05:00
Daniel Kolesa 3c7a99935e docs: split type serializers and keyword ref into their own module in docgen 2016-07-22 13:27:24 +01:00
Thiep Ha b72214ab03 elementary: change cursor types for cocoa
Map more cursor types for cocoa.
Fix T3352
2016-07-22 13:27:22 +09:00
Marcel Hollerbach 348f6b428a ecore_wl2: be compatible with x input
This commit introduces a new state per input, this state is just for the
keymap and no modifieres, the state is used to get the keysym from a
keycode. This is done to stay compatible with x since keyname in efl is
the characters which are describing the key which is pressed, without
the transformation of shift etc.

This also escapes keycodes from beeing a utf8 character, and passes out
a keyname instead of the utf8 symbol.

fix T3976
fix T4184
2016-07-21 22:10:54 +02:00
perepelits.m 82f62b6234 edje: fix specular color
Summary: We use int from 0 to 255 for color, not float

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-07-21 12:28:21 -07:00
Cedric BAIL f7af802f4f edje: allow inheritance from an aliased group. 2016-07-21 11:19:44 -07:00
Mike Blumenkrantz 80f91290c0 elm_win: move window contents back to 0,0 when deleting frame object
fix T4092
2016-07-21 13:51:16 -04:00
Mike Blumenkrantz 9b11b227a3 elm_win: simplify borderless_set when reapplying the same state 2016-07-21 13:51:16 -04:00
Chris Michael ce2160ab5d elementary: Remove logically dead code
In all code paths leading to this goto statement being called,
'iter_array' variable will already be NULL, so checking it's validity
is just logically dead code.

Fixes Coverity CID1357392

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 13:21:25 -04:00
Chris Michael 4309050fec elput: Use proper variable type
The 'getenv' function returns char * ... not a const char *, so adjust
variable type to match

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 13:18:57 -04:00
Chris Michael 89234ce6bc eina: Fix null pointer derefernce
Coverity reports that eina_safepointer_get returns a NULL promise here
(checked 20 out of 21 times). As eina_safepointer_get can return NULL,
we should check the validity of 'promise' here before trying to
derefernce it later.

Fixes Coverity CID1356625

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 13:07:26 -04:00
Chris Michael a89186069e elementary: Remove logically dead code
Coverity reports that this is logically dead code. As we check the
validity of 'model' above this function, then testing 'model' for
validity again in this expression is just logically dead.

Fixes Coverity CID1356617

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 12:58:03 -04:00
Chris Michael 30ab0a89be elementary: Remove logically dead code
Coverity reports that this is logically dead code. As eo_item has been
dereferenced on all paths leading here, and it is also set above, then
it cannot be NULL at this point, thus this check is logically dead.

Fixes Covierty CID1355585

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 12:53:13 -04:00
Chris Michael fb09df7977 eldbus: Check return value and error out if necessary
Coverity reports that we do not check the return value of
_eldbus_model_proxy_load here. We likely should be checking that in
case the model proxy fails to load so we can return proper values here.

Fixes Coverity CID1355233

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 12:50:19 -04:00
Chris Michael 4555f5d594 edje: Fix unchecked return value
Coverity reports that we call _circular_dependency_find here without
checking the return value

Fixes Coverity CID1349867

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 12:29:35 -04:00
Chris Michael 3bc6e30d63 evas: Fix missing breaks in switch
Coverity reports that we are missing breaks in the switch blocks here,
so add missing breaks.

Fixes Coverity CID1347413 and CID1347414

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-21 12:25:02 -04:00
Vyacheslav Reutskiy 026b7cc495 edje_pick: reset alias flag for copied group
edje_pick make copy of whole group, even if group is alias. So if
group was alias need to reset this flag.

@fix
2016-07-21 14:02:46 +03:00
Jean-Philippe Andre ec9107dc1f eo: Fix override test case to match new policy
The new policy is a lot more restrictive.
Honestly, I don't like it.
2016-07-21 14:03:10 +09:00
Jean-Philippe Andre 6a559a6fff eo: Prevent eo_override to be called on an already overridden object
I don't see the point of it but can't be bothered to argue.
For Tom.
2016-07-21 13:49:37 +09:00
Derek Foreman 83301ca6ba wayland_shm: Add missing headers to wayland_shm sources
Some headers weren't being placed in the release tarball.
2016-07-20 11:10:42 -05:00
Mike Blumenkrantz fad8e90f5e Revert "elementary: Make wl frame borders above content"
This reverts commit 46904e19a7.

this breaks stacking entirely and prevents a large number of widgets from
ever becoming visible
2016-07-20 12:02:42 -04:00
Daniel Kolesa 0364dc3173 docs: split off writer and utils into modules in docgen 2016-07-20 15:29:53 +01:00
Daniel Kolesa 5f7bc3fbfb docs: begin modularizing the doc generator script 2016-07-20 15:03:49 +01:00
Carsten Haitzler b07b40cf4a elm flip - make it not crash and interactive mode work again
elm flip has been broken for a while - interactive mode was broken and
it was causing crashes. this fixes that.

@fix
2016-07-20 14:24:23 +09:00
Carsten Haitzler 0e5d9980b2 evas image updates - reduce overhead with bordered images not scaled
this fixes over-rendering (where we render the whole image) if it has
a border set. do proper region updates if the image has a border but
is not scaled and the fill is at 0 0 and sams size as the object etc.
etc. so this is simple and doable.

this fixes T4123
2016-07-20 13:13:41 +09:00
Carsten Haitzler ba5e3ec2fb evas objkect image - make opaque rect getting code more readable
this just makes it more obvious where its handling the opaque middle
fill case.  see T4123 - i was just reding the code and this seemingly
does the right thing.
2016-07-20 11:34:01 +09:00
perepelits.m 91314b64e2 edje: fix ambient color
Summary: change specular color to ambient int the function of ambient color

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

Differential Revision: https://phab.enlightenment.org/D4169
2016-07-20 10:42:22 +09:00
Mike Blumenkrantz adbdc335d9 elm_win: handle elm,action,menu signal for wl clients
trigger the xdg-shell method for this when the signal is received

fix T3460
2016-07-19 14:15:15 -04:00
Mike Blumenkrantz d335617941 elm_win: simplify opaque region updating during fullscreening
already handled during _elm_win_frame_del
2016-07-19 13:23:40 -04:00
Mike Blumenkrantz f368a720a9 elm_win: update opaque region when frame is deleted
fix T4092
2016-07-19 13:23:40 -04:00
Cedric Bail b33b2ddc39 elementary: as screen get bigger, we need more cache to store uncompressed image. 2016-07-19 09:51:13 -07:00
Vyacheslav Reutskiy 711288b2ea edje_pick: copy dependent group
Parts can use enother groups as source, for example textblock. If source
groups does not exist - group is not valid. This patch extend the group
copy process and copy dependend group too.

@fix
2016-07-19 18:31:01 +03:00
Daniel Kolesa 0d126eab35 elua: enable module lookups in apps location
This will allow for better organization of the docgen script.
2016-07-19 16:19:42 +01:00
Stefan Schmidt 7d443f30e2 ecore_wl2: dnd: fix leak of event resource when not used
In the else branch the allocated event is never used. Make sure we free the
resource before returning.

CID: 1357753
2016-07-19 14:52:28 +02:00
Chris Michael 1c832a1b12 Revert "elementary: Fix issue of toggling border state causing visual jumps"
This reverts commit fb24955782.

While this patch did fix the issue of toggling window Borderless state
in EFl-Wl client applications, it is "Enlightenment's" stance that it
will not change to match this fix, so this has to be reverted else
internal E dialogs show up with no border (due to them using SSD).

This is going to re-open T4092 sadly :( and now leave that bug with no
possible fix.

ref T4092

Fixes T4126

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-19 08:17:00 -04:00
Daniel Hirt 979338978a Ui text: remove unused variables 2016-07-19 14:08:48 +00:00
Jean-Philippe Andre f09df82283 evas: Fix call to NULL object 2016-07-19 19:36:43 +09:00
Jean-Philippe Andre 2c7f9481ed textblock: Prevent crash in evas_object_textblock_cursor_new(NULL)
This happened in expedite
2016-07-19 18:32:32 +09:00
Jean-Philippe Andre 0d3f5c9661 tests: Add ifdef clang to avoid warning on GCC and elsewhere
Avoids warning about unsupported pragma
2016-07-19 17:55:07 +09:00
Jean-Philippe Andre 3029227fa1 eo: Change eo_override to avoid struct passing and GCC construct
This is a (minor) API & ABI break in Eo.h!

I say minor as eo_override shouldn't be used yet (EO is unstable
and this patch includes all the use cases in EFL).

I'm not very happy about the new form of the macro, but it avoids
two things:
- passing in a struct (valid in C, but never used in EFL)
- using a GCC construct to create structs on the fly

It was inspired by the event array define, but I don't think
we need the runtime memcpy here.

See also:
https://gcc.gnu.org/onlinedocs/gcc/Compound-Literals.html
2016-07-19 17:55:07 +09:00
Jean-Philippe Andre a9d4d7e836 drm2: Fix shadow variable
int ret is not even needed here.
2016-07-19 17:55:07 +09:00
Carsten Haitzler d143becfe1 edje lang set - fix coverity harmless complaint
fix CID 1357755
2016-07-19 16:41:06 +09:00
Jean-Philippe Andre d5166657e2 efl: Add support for efl_event_flags() to hold events
This fixes the following ERR message:
ERR<30400>:eo /home/jpeg/e/core/efl/src/lib/eo/eo.c:462 _eo_call_resolve()
 in ../src/lib/evas/canvas/efl_event_input.eo.c:3: func 'efl_event_flags_get'
 (1483) could not be resolved for class 'Efl_Event_Hold'.

This is an EO-API only fix.
2016-07-19 16:12:05 +09:00
Jean-Philippe Andre 0e6b6c4828 efl: Hold event (EO API) should implement instance_get
This fixes the following ERR:

ERR<23969>:eo /home/jpeg/e/core/efl/src/lib/eo/eo.c:462
  _eo_call_resolve() in ../src/lib/efl/interfaces/efl_event.eo.c:5:
  func 'efl_event_instance_get' (1479) could not be resolved for class 'Efl_Event_Hold'.
2016-07-19 16:12:05 +09:00
Carsten Haitzler ac10a00acc evas - on shutdown avoid potential invalid memory access
i don't know for sure if this fixes T4103 but in theory i think it
might given a reading of the backtrace and a guess at what might
happen, so try this fix. it doesn't hurt and can only help.

@fix
2016-07-19 15:43:22 +09:00
Carsten Haitzler ad1bfac960 eina rbtree iterator - fix leak found while debugging other problems
there was a leak of elements on  the itrator stack when the stack was
flushed still having some items on it, thus losing their pointers and
never freeing them.

@fix
2016-07-19 15:43:22 +09:00
Jean-Philippe Andre 4923ae81c0 evas: Add a textblock to the image proxy example
This is to show that proxies can proxy more than just other
images, and also this was done to test D4159 (alternatively
changed into the previous commit).
2016-07-19 14:43:45 +09:00
Jean-Philippe Andre 38a32e98fb evas: Avoid proxy subrender if size is 0
See also D4159. This is an alternative to the proposed patch.

Fixes T3949 (I hope!)
2016-07-19 14:43:33 +09:00
Al Poole 8e7253996e ecore_con: fix lookup of libcurl on OpenBSD.
@fix T4130

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-07-18 11:22:28 -07:00
perepelits.m 77afcb596d edje: fix definition of viewport in edje-3d
We now use eo_do() and EFL_CANVAS_SCENE3D_CLASS macro to create viewport

Reviewers: raster, Hermet, cedric

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-07-18 10:42:59 -07:00
Daniel Kolesa bb509c4a2d docs: generate a keyword list for use by codelink plugin 2016-07-18 15:34:28 +01:00
Stefan Schmidt e28bc49bc6 tests: eina_cxx: make sure simple.eo gets disted in all cases
If we turn on release mode simple.eo did not land in the tarball as it was
behind the EFL_ENABLE_TESTS condition. We now dist it in all cases.
2016-07-18 15:56:50 +02:00
Jean-Philippe Andre d2fcfafb46 win: Set window alpha when changing theme
This sets the window alpha back to 0 when switching from a theme
with alpha to one without. Thanks @bu5hm4n for asking about this.
2016-07-18 18:11:37 +09:00
Jean-Philippe Andre 03ec8204bf tests: Show use of eo_override for custom layout
This requires the previous fix in eo to actually work.
2016-07-18 18:00:26 +09:00
Jean-Philippe Andre cae939e208 eo: Fix leak in eo_override and allow NULL to reset
eo_override would leak the vtable if called multiple times, this
fixes that. Also, it is now possible to revert back to the original
class' vtable by passing in { NULL, 0 }

I believe it is thus possible to incrementally override more
functions on an object. Absolutely not recommended, but should work.
But it is not possible to selectively revert back to the original
class implementation on a single method. Use eo_super for that,
or revert back the entire object overrides.

PS: Is it normal that we pass in a struct? We never do that in EFL...
2016-07-18 17:55:58 +09:00
Jean-Philippe Andre f18747e6dd Evas GL: Use [u]int64_t directly in all APIs
This removes the need for khronos_[u]int64_t as well as the special
typdef EvasGL[u]int64.

Hopefully this should work on all platforms (note: [u]int64_t is
used in Eina APIs, so it is already required for EFL apps).

Fixes T3200
2016-07-18 15:09:19 +09:00
Jean-Philippe Andre 5faf536f51 evas: Also fix was_opaque for rect & image
I believe the function is not used, so it doesn't really
matter.
2016-07-18 13:54:27 +09:00
Jean-Philippe Andre e1ff000704 evas: Some more opacity check fixes
This should fix T3309

Snapshot objects are image objects, so the function is_opaque
exists. No need to bypass it. Also, alpha rectangles are not
opaque. Assume that anything with a filter is not opaque.

All of this fixes T3309 but the main point was on snapshot
objects (probably because the only point of a snapshot is
to apply a filter on it).
2016-07-18 13:38:05 +09:00
Jean-Philippe Andre 9248d3a5ac evas: Fix cutout regions with transparent images
This should fix rendering issues with E theme and
transparent borders.

Fixes T3309
2016-07-18 11:57:38 +09:00
Jean-Philippe Andre f13b0a4d5f win: Set proper flag when EDC specifies win "alpha" 2016-07-18 10:51:51 +09:00
Marcel Hollerbach cfaf332468 elementary: only call ecore_wl2 if wayland is enabled
fix T4125
2016-07-16 13:19:05 +02:00
Cedric Bail 57226d86ff eio: handle failure due to lack of access right. 2016-07-15 17:07:49 -07:00
Cedric Bail adff89dfc0 eio: make it possible to force fallback monitor for testing purpose. 2016-07-15 17:07:49 -07:00
Cedric Bail e93d6f90db eio: avoid access after death of eio handler due to inotify triggering IN_IGNORED event. 2016-07-15 17:07:49 -07:00
Cedric Bail bf369ba661 eio: cleanup thread pointer on thread finish. 2016-07-15 17:07:49 -07:00
Chris Michael fb24955782 elementary: Fix issue of toggling border state causing visual jumps
This commit partially fixes a phab ticket where toggling window border
state (elm_test -to "Window States") would cause the frame to be
destroyed thus making the window contents appear to jump around

ref T4092

NB: I call this a 'partial' fix because while it does fix the issue of
efl client apps, there is still some breakage in Enlightenment that
needs investigating.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-15 15:35:23 -04:00
Derek Foreman 55c59d3c40 ecore_drm2: Allow enabling outputs in drm events
Previously a drm event could create a new output or disconnect an output,
but could not re-enable an existing output.

This results in failure to properly wake from screen blanker.
2016-07-15 12:15:09 -05:00
Jee-Yong Um 5a3c015e9e edje: add required attribute in Edje_Part
Summary:
When using EDC written by another person, developer usually
does not need to know all specified parts in EDC but editable
like swallow, text or textblock parts.
The required flag tells whether the part is intended to be used outside EDC.

Reviewers: jpeg, cedric, raster, Hermet

Reviewed By: jpeg, raster

Subscribers: raster, NikaWhite, kimcinoo, jpeg

Differential Revision: https://phab.enlightenment.org/D3579
2016-07-15 16:34:34 +09:00
Derek Foreman f8e07c4d7c ecore_drm2: Try to mmap gbm buffers
We're currently doing screenshots in E under wayland by copying data
out of the framebuffer, mmaping gbm buffers makes screenshots work
again when rendering with GL.
2016-07-14 16:25:05 -05:00
Derek Foreman f48f565306 ecore_drm2: Fix page flipping
Properly handle the ticker racing ahead of the refresh rate by once again
triple buffering.

Fixes T3819
2016-07-14 15:29:54 -05:00
Derek Foreman 8507b512a0 ecore_drm2: Don't disable custom ticker if flip fails
When using a mix of vblank and pageflip events like we're stuck with now
a failed flip is going to happen sooner or later.  We fix this by triple
buffering.  We shouldn't turn off the custom ticker.
2016-07-14 15:29:49 -05:00
Tom Hacohen 8c6effae8e Evas font: Fix width query for OpenType fonts. (rewrite)
This is essentially a cleaner redo of ef817f15f0.
Logic should be exactly the same as there, the different is that this
one shares the code between OT and non OT.

Please refer to that commit for more information.
2016-07-14 17:32:01 +01:00
Tom Hacohen 281043e357 Revert "Evas font: fix width query for OT"
This was not done correctly. This split the code, which is essentially
the same for both OT and non OT. It's the same logic with some minor
additions for OT, so most of the code should be together.

This reverts commit ef817f15f0.
2016-07-14 17:24:38 +01:00
Daniel Kolesa e263ee0121 docs: more detailed stats (print intermediate percentages) 2016-07-14 16:07:08 +01:00
Daniel Kolesa e321ef22a4 docs: generate separate doc pages for events 2016-07-14 15:32:19 +01:00
Marcel Hollerbach d2926f74ff elm_cnp: use defined charset before falling back to default
the chance is very high that some glyphs are not fitting into the
default (US-ASCII) so better falling back here on specified utf8.

@ref T3972
2016-07-14 13:58:26 +02:00
Daniel Hirt ef817f15f0 Evas font: fix width query for OT
Fixes T4068.
Simply querying the last glyph to determine the width of the glyph sequence
won't always work, as OT can have negative offsets (adjusts the placement of a
specific glyph better).

The solution is to calculate the "max width" of some sequence that will
guarantee us proper width results. The worst solution would be to iterate on all
the glyphs and sum up the max width. This is a bit impractical. Instead, we will
inspect just the "cluster" of the last glyph, if one exists.

This should have no performance impact on trivial cases, and very little impact
on the others.

@fix
2016-07-14 12:22:44 +00:00
Carsten Haitzler e8c396a6e2 evas generic loaders fix timeout on windows where no alarm exists
this uses a thread - to do the same. based on code vtorri put in T3790

this should fix T3790
2016-07-14 14:23:49 +09:00
Carsten Haitzler b1f2c335e6 evas headers - remove duplicate declarations of the same function
this should fix T3027
2016-07-14 13:32:13 +09:00
Hermet Park c54cd41316 elementary tooltip: --printf 2016-07-14 12:10:09 +09:00
Carsten Haitzler 04c6313114 ecore - add more ecore main loop checks that were missing in some places
so 1 ecore_exe func was missing a main loop check... just to be sure.
2016-07-14 08:55:03 +09:00
Carsten Haitzler 4bbe5ee058 eina thread create - use pthread_sigmask as this can be called from thread
@fix
2016-07-14 08:39:31 +09:00
Cedric BAIL 7bb8afe4f9 eo: fix tests after renaming. 2016-07-13 16:17:16 -07:00
Sungtaek Hong cebbf43881 elm_colorselector: selected item is updated when color is changed.
Summary:
 - Previously, mode change, color change updated
   sd->selected, but did not send signals to edje of the item.
 - Also, mode change in colorselector set sd->selected to
   the first item even when palette is visible in previous mode.
 - Now, when mode is changed, sd->selected is set NULL and send
   unselected signal if palette is invisible, and keep sd->selected
   if palette is visible.
 - sd->selected is set NULL when color is changed in picker and
   color bars because previous selected item is not current color of
   colorselector

Test Plan:
1.
    1) launch elementary_test colorselector.
    2)Select any item and check the item is selected when palette is visible.
    3) Change mode to Palette, Both, All, and check selected item is not changed.
    (Previously, selected item is changed to the first item of the palette, but previous item was seen as selected.)

2.
    1) launch elementary_test colorselector.
    2) Select any item and check the item is selected when palette is visible.
    3) Change mode to Components, Picker.
    4) Change mode to Palette, and check none of items is selected.
    (Previously, selected item is changed to the first item of the palette, but previous item was seen as selected.)

3.
    1) launch elementary_test colorselector.
    2) Select any item and check the item is selected when palette is visible.
    3) Change mode to All.
    4) Click arrows in Picker and color bars.
    5) Observe selected item is not unselected when color is not changed, and selected item is unselected when color is changed.
4.
    1) launch elementary_test colorselector.
    2) Select any item and check the item is selected when palette is visible.
    3) Press direction key and check selected item is changed.
    (Previously, selected item's edje is not updated.)

Reviewers: woohyun, Hermet, jpeg, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-07-13 16:07:15 -07:00
Cedric BAIL 03915fc07b elementary: switch code accordingly to use new ref version. 2016-07-13 16:06:30 -07:00