alpha
If we have a borderless alpha window, then make call to set opaque
region accordingly. This still avoids calling opaque_region_set twice,
yet maintains opaque region for the above mentioned case.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
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.
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.
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!
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
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).
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
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
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.
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.
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();
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.
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.
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
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
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
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>
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
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
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
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
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
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>
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>
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
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