according to the docs, this mode means that no content size hints should
be taken into account when calculating size hints for the overall object
fix T7313
Differential Revision: https://phab.enlightenment.org/D6860
FIx backspace issue and also issue involving the cursor
position and deleting/cutting/backspace of selected text.
Now that we properly move the cursor around when making a
selection, it's important that we place the cursor in a
valid position in the widget following the removal of text.
Previously the cursor always remained in a "safe" position
however now it's crucial to update this position when
necessary.
@fix T7259
Differential Revision: https://phab.enlightenment.org/D6835
Summary:
Canvas allows objects become zombies.
Even though they were deleted they could be accessed by canvas
for second frames.
Reviewers: #committers, zmike
Reviewed By: #committers, zmike
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6849
Summary:
it seems that the original patch in this case introduced a regression
where format strings ending with %% in progressbar would not be
displayed correctly. a followup patch attempted to resolve this, but
this second patch introduced another regression where some format strings
would always display 0%
fixing compiler warnings is always valued, but in the case where the
patch to fix the warning creates regressions then we will live with the
warnings instead
This reverts commit b4112b9735.
This reverts commit be770d37fb.
Subscribers: cedric, #reviewers, #committers
Tags: #efl_widgets
Differential Revision: https://phab.enlightenment.org/D6863
Summary:
Prevent wayland clients from being able to destroy the compositor's
singleton keymap by making individual copies for each client.
Reviewers: zmike, devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6862
Summary:
This reverts commit 4917910b49.
4917910b break backward compatibility.
Reproduction:
void pipe_handler(...);
pipe = ecore_pipe_add(pipe_handler, NULL);
ecore_pipe_write(pipe, NULL, 0);
Because of the null check condition, pipe_handler isn't called after 4917910b.
Some apps behavior which is written to expected to call pipe_handler was broken.
also, this patch fixed segfault during build on Windows
Test Plan: make on Windows
Reviewers: raster, zmike, vtorri
Reviewed By: zmike, vtorri
Subscribers: woohyun, cedric, #reviewers, #committers, zmike, vtorri
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6824
Summary:
From (1) "the following commit" message, the changed condition in this patch
should check if the virtualized file is copied or not.
In eina_file_virtualize
head_padded = 16 * ((sizeof(Eina_File) + slen + 15) / 16);
file->global_map = ((char *)file) + head_padded;
In eina_file_dup
file->global_map != (void*)(file->filename + strlen(file->filename) + 1)
Because of this discord condition makes eina_file_dup copies always.
(1) This is "the following commit":
commit 4766316935
Author: Cedric Bail <cedric@osg.samsung.com>
Date: Wed Mar 8 10:13:36 2017 -0800
eina: force copy of not copied virtualized file while doing an eina_file_dup.
The other way around is pretty much impossible as you don't know who does
an eina_file_dup and for how long they keep there reference.
T5234
Reviewers: zmike, Hermet
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6857
Summary:
the mnw and mnh variables were misleading in this context because they actually
refer to the max width and max height
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: devilhorns, cedric, #reviewers, #committers
Tags: #efl_widgets
Differential Revision: https://phab.enlightenment.org/D6859
Summary:
Apparently there are cases where efl_ui_focus_object_focus_manager_get
can return NULL. In order to trap for this, we can simply modify the
do loop slightly and check for a valid manager before we actually
start looping
Test Case: elementary_test -to "Panel Scrollable" and click Toggle
button
ref T7030
Depends on D6703
Reviewers: bu5hm4n, YOhoho
Subscribers: #reviewers, cedric, #committers, zmike
Tags: #efl_widgets_focus
Maniphest Tasks: T7030
Differential Revision: https://phab.enlightenment.org/D6704
Summary:
evas object types require an evas as the parent. this has always been
the case, though it has only begun to (again) be treated as an error
recently
fixes unit test failures
Subscribers: cedric, #reviewers, #committers
Tags: #efl_widgets_code
Differential Revision: https://phab.enlightenment.org/D6852
Summary:
A object that is not evas class shouldn't use evas_find. it may occurs segfault.
ref c2e8b492b1
Test Plan:
Evas *evas = evas_new();
evas_free(evas);
evas_object_line_add(evas);
Check weather there is segfault.
Reviewers: Hermet, raster, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6816
Summary:
efl_ui_win.c only includes private ecore_evas headers when building
for wayland, but wayland canvas creation functions are called even
in non-wayland builds.
Move the "hidden" wayland APIs to the public header so they don't
mess up non-wayland builds.
Reviewers: devilhorns, zmike
Reviewed By: devilhorns, zmike
Subscribers: devilhorns, cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6822
Summary:
there is no sound when multisense is disabled, so this is functionally
equivalent to the audio being muted
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl_layout_engine
Differential Revision: https://phab.enlightenment.org/D6837
Summary:
these operations cannot be completed if the support is not built in, so
return false in order to provide the correct state to the caller
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6839
Summary:
This can occur and thus malloc will return NULL when line->length is
0. Check for !line->length and return. Very difficult to reproduce, but
I had managed three times, and avoided a crash.
Reviewers: #committers, ajwillia.ms, zmike
Reviewed By: #committers, zmike
Subscribers: cedric, #reviewers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6842
Summary:
Image object isn't created on constructor anymore. so that it need to check
whether image object exist.
Reviewers: Hermet, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6834
Summary:
image object was created in group_add before 868e3308. if you call
elm_image_object_get before file_set, you can get NULL.
this patch avoid that.
Test Plan:
obj = elm_image_add(...);
img = elm_image_object_get(obj);
img should not be NULL.
Reviewers: Hermet, zmike
Reviewed By: zmike
Subscribers: JackDanielZ, cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6828
Summary:
using EINA_LIST_FREE here double deletes 2 list items on every iteration
due to recursive list removals, which prevents some items from being
deleted as expected
fix T7266
Reviewers: netstar
Reviewed By: netstar
Subscribers: netstar, cedric, #reviewers, #committers
Tags: #efl_widgets
Maniphest Tasks: T7266
Differential Revision: https://phab.enlightenment.org/D6829
Summary:
this avoids extra recalcs and resizes when csd is not active, which has
the side benefit of not breaking the x11 engine's behavior--currently only
an issue because the ecore-evas x11 backend does not have an implementation
of ConfigureNotify event handling which is even remotely correct
these issues will be resolved in future patches
fix T7243
ref T7008
Reviewers: devilhorns, ManMower
Reviewed By: devilhorns, ManMower
Subscribers: ManMower, cedric, #reviewers, #committers
Tags: #efl_display_system
Maniphest Tasks: T7243, T7008
Differential Revision: https://phab.enlightenment.org/D6794
Summary:
in the case where the user has called loop_time_set with a value in the future,
avoid setting the loop time to something that would potentially cause a callback
to occur with a loop_time value before a previous occurrence of that callback
@fix
Reviewers: ManMower
Reviewed By: ManMower
Subscribers: ManMower, #reviewers, cedric, #committers
Tags: #efl_main_loop
Differential Revision: https://phab.enlightenment.org/D6764
Summary: For now its beta, and the since tag is added.
Reviewers: zmike
Reviewed By: zmike
Subscribers: #reviewers, kimcinoo, Hermet, cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6751
Summary:
As with other checks in ELM return if object is not yet
finalized. This stops lots of console noise.
@fix T7265
Test Plan:
elementary_test: use panel test from console and view the noise
from EINA. Apply then do the same.
Reviewers: #committers, zmike
Reviewed By: #committers, zmike
Subscribers: cedric, #reviewers, zmike
Tags: #efl
Maniphest Tasks: T7265
Differential Revision: https://phab.enlightenment.org/D6826
Summary:
As the cursor_rect for elm_code_widget is not created until the code
widget gets focus, we cannot just assume it is already there when
trying to emit a focus signal. The cursor_rect does not get created
until widget_cursor_update is called.
This fixes an issue where NULL is passed to efl_layout_signal_emit.
To test this, just launch elementary_test and click the Code Editor
test. As soon as you try to click into the Code Editor, this gets
triggered.
ref T7030
Reviewers: netstar, ajwillia.ms
Reviewed By: netstar
Subscribers: #reviewers, cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7030
Differential Revision: https://phab.enlightenment.org/D6701
Summary:
failing to unset this causes the ecore_imf flag to go negative if edje
is ever completely shut down twice
@fix
Reviewers: ManMower
Reviewed By: ManMower
Subscribers: ManMower, #reviewers, cedric, #committers
Tags: #efl_layout_engine, #easy
Differential Revision: https://phab.enlightenment.org/D6763
There is often a tree of elements registered in a manager that are
having all the same redirect element. Unserting the redirect property
just because the node has this redirect element is not helpfull as this
would break basically elm_tests button search. However, if it is the
container itself, then the redirect can be unset, as nothing else can
ever reach again the redirect manager.
ref D6800
Differential Revision: https://phab.enlightenment.org/D6802
Summary:
before it would have only worked if there would have been the
architecture in the path, which was definitly not the case.
This fixes the problems.
Depends on D6795
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6819
Summary:
It turns out elm/uiclock (which was removed in 89675c3219) is actually used,
at least by the datetime legacy widget. Removing this widget broke the
datetime_example test.
This commit reverts 89675c3219 and fixes the elm/uiclock part names:
- Part names are prefixed with 'elm.'
- efl_ui_clock.c (which is used for both the new efl and the legacy elm widgets)
now looks for part names with 'efl.' and 'elm.' prefixes, and without any
prefix, for compatibility with older themes.
Fixes T6928
Test Plan: the Datetime elementary_test (and all other clock-related tests) now work.
Reviewers: zmike, jsuya, CHAN, devilhorns, Jaehyun_Cho
Reviewed By: zmike, jsuya, CHAN
Subscribers: #reviewers, Jaehyun, Hermet, cedric, #committers
Tags: #efl
Maniphest Tasks: T6928
Differential Revision: https://phab.enlightenment.org/D6577
Summary:
move most of the _item_free() calls to the invalidate method and unset some
delete callbacks on content items to avoid invalid calls during deletion
calling any of this during the object destructor is invalid because the parent
object can no longer be accessed at this time
fix T7236
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: #reviewers, stefan_schmidt, cedric, #committers
Tags: #efl_widgets
Maniphest Tasks: T7236
Differential Revision: https://phab.enlightenment.org/D6759
it seems that this should have been a pop call, not the function
pointer. This key eina_array_pop is never used. Nor would the array get
smaller, so i assume this should be a pop call.
Differential Revision: https://phab.enlightenment.org/D6814
Summary:
this should not take any action if the existing value of manual_render is
set to the passed value
Reviewers: devilhorns, kimcinoo, ManMower
Reviewed By: devilhorns, kimcinoo, ManMower
Subscribers: ManMower, cedric, #reviewers, #committers
Tags: #efl_display_system
Differential Revision: https://phab.enlightenment.org/D6786
Summary: This fixes progressbar format strings that contain the pattern %%, thus making it a string and not a format.
Test Plan: elementary_test progressbar shows %% on the first vertical progressbar before this patch. afterwords it shows % correctly.
Reviewers: zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6790
Summary:
ensure that all the children are gone once we unregister the widget
itself. This helps widgets that are not cleaning up theire children /
items on invalidation.
ref T7213.
Reviewers: CHAN, YOhoho, zmike
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7213
Differential Revision: https://phab.enlightenment.org/D6754
Summary:
calling this on a object that is legacy is not going to work. And will
print a error. This will make new widgets less verbose.
ref T7213
Depends on D6755
Reviewers: YOhoho, zmike, CHAN
Reviewed By: YOhoho
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7213
Differential Revision: https://phab.enlightenment.org/D6756
Summary:
We need to pass the entire pointer, not just 32-bits of it.
Fixes a crash with enlightenment sandbox gadgets where
ecore_wl2_window_alpha_get() is called with an invalid pointer while
trying to display a pop-up.
Reviewers: zmike, devilhorns
Reviewed By: zmike, devilhorns
Subscribers: devilhorns, cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6775
Summary:
Efl_Ui_Widget which is super of Elm_Map is not implement Efl_Ui_Zoom. to call
efl_super of Elm_Map for Efl_Ui_Zoom method occurs unresolved function error.
Test Plan:
map_example_01
Check that there is no error message.
Reviewers: zmike, Hermet
Reviewed By: Hermet
Subscribers: #reviewers, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6772
Test Plan:
map_example_01
Check that +,- button is working and no error message.
Reviewers: zmike, Hermet
Reviewed By: Hermet
Subscribers: #reviewers, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6771
Summary:
Prerequisite: Partial rendering ON + Image Prealoding + Triple surface buffer of GL.
Previously, evas trys to draw of an image which didn't prepare of image data yet (in case of preloading)
This time, it will draw a solid color onto the dest sufrace 1,
But luckily, preloading is finished just after, it draws proper image data onto next surface 2 and 3.
Now, triple buffer is filled with the image data but only first frame is still empty. That's a problem.
This patch skips to draw image if it doesn't prepare data yet, but once the preloading is finished,
it starts to draw images.
@fix
Reviewers: #committers
Subscribers: kimcinoo, cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6739
Summary:
this pointer is owned by elm_theme, not the image, so the image refcount
must be increased in order to avoid accidentally closing the file which is
still in use by elm_theme and triggering a crash
this resolves the crash in the `efl_ui_image_zoomable_icon` test
Reviewers: Hermet
Reviewed By: Hermet
Subscribers: #reviewers, cedric, #committers
Tags: #efl_widgets
Differential Revision: https://phab.enlightenment.org/D6774
Summary:
TAB of efl_ui_tab_bar is no longer widget_item.
TAB is now layout,
so, do not need below signals.
"efl,text,visible"
"efl,text,hidden"
"efl,icon,visible"
"efl,icon,hidden"
Test Plan: elementary_test -to efl.ui.tab_pager
Reviewers: Jaehyun_Cho, Hermet
Reviewed By: Jaehyun_Cho
Subscribers: #reviewers, cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6770