Commit Graph

637 Commits

Author SHA1 Message Date
Stefan Schmidt 961a1ada0f Manual revert of: commit 07404215a9
combobox: add Multiple selection feature

This exposes problems with name clashes and behaviour change for the legacy API.
Revert for now and we can revisit for 1.19.

Git revert got to confused as this was committed before we merged elm in. I did
the revert manually.
2016-08-11 12:14:07 +02:00
Jean-Philippe Andre b29847e0da wayland_egl: Fix double free in case of failure
When trying to create a window, the WL EGL engine creates
an ecore_evas and connects to the wayland display. But if
EGL is not supported (in weston with nvidia for instance),
the egl initialization fails and the window must be detroyed
in order to fallback to wayland_shm.

This led to a double disconnect from the wayland display
as both the ecore_evas del and the error handling code
were trying to disconnect.

Also, use ref == 0 in two places rather than ref <= 0, as
it can prevent double frees in bad situations (ref < 0).
And reset a global variable to NULL on shutdown.
2016-08-11 11:37:41 +09:00
Jean-Philippe Andre 58aa349283 widget: Optimize out one function call if not needed 2016-08-10 14:17:58 +09:00
Carsten Haitzler 8d6d395358 fix double delcaration of variable in elm_code
this fixes T4318 - thanks romain.
2016-08-10 11:12:17 +09:00
Stefan Schmidt 4f840c5feb elm: config: fix API naming to use disabled instead of disable to unify
We use disabled across our APIs so better fix this new one to unify it before
we release. This was introduced in commit 0116e07288

Many thanks to DaveMDS for reporting this!
2016-08-09 16:26:49 +02:00
Daniel Hirt 3eae9ff74f Elm.Entry: force cursor change on size_eval signal
This is a follow-up to ba060fe932.
Fixes T4274.
2016-08-08 16:47:22 +03:00
Carsten Haitzler 0bcd4f73d2 elm filesel - handle api that might provide path too big for buffer
this addresses a path that could be too small (unlikely due to max
path generally being 4k), for a stack buffer. this should make
coverity happy. fix CID 1356634
2016-08-08 18:38:25 +09:00
Carsten Haitzler e5dbf6cfba elm init - handle return value of ecore_file_init make coverity happy
this isn't an issue as init will never fail, but makes coverity happy
with CID 1353589
2016-08-08 17:47:14 +09:00
Carsten Haitzler 05ad541534 elm dbus menu - handle return value of eldbus_message_iter_arguments_get
handle possible error return of eldbus_message_iter_arguments_get()
according to coverity CID 1353591. this should fix that.
2016-08-08 17:47:14 +09:00
Carsten Haitzler 9d8c829c2f elm app client - check return of eldbus_message_iter_arguments_get
as accoding to coverity CID 1353593 chekc returns of the above
function and return/continue as apporpriate if these fail (which
generallly they shouldnt unless some end of the dbus client is broken).
2016-08-08 17:47:14 +09:00
Carsten Haitzler c827d42fbd elm_need_efret() - improve error handling according to coverity
fix CID 1360466

we don't actually chekc if efreet inits right with elm_need_efreet()
as we just assume it inits (And there pretty much is no case where it
will not), but make coverity happy and check.

@fix
2016-08-08 17:47:14 +09:00
Sungtaek Hong 2de14b985c elm_map: fix wrong check of source search
Summary:
When map source is set by elm_map_source_set(),
it foreaches enlisted sources, and should return
when the source cannot be found.

@fix

Test Plan:
Call elm_map_source_set(map, [any type], [Wrong source name]);
         Observe  ERR("source name (%s) is not found", source_name) message.

Reviewers: Hermet, cedric, jpeg

Reviewed By: jpeg

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4212
2016-08-08 15:16:53 +09:00
Carsten Haitzler 9e09c46574 elm config - dont rescale ui if no config that needs rescale changed
also finger size, and other thigns that could affect ui look that may
need elm rescale to work.

this fixes T4296

@fix
2016-08-06 18:10:36 +09: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
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
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
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
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
Carsten Haitzler a3e7413992 elm image - silence warnings of setting smooth if image is edje 2016-08-04 08:17:18 +09: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
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
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
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
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
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
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
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
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
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
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
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
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 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
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