Summary:
When an Elm_Segment_Control object is created, the constructor calls
the smart_add() behind the scenes. It then calls _update_list() which
calls _position_items(), with the sd->obj unset (because it was set
after calling super constructors). This led to a CRI() (and therefore
to a backtrace) on the creation of each Elm_Segment_Control.
@fix
Test Plan: elementary_test
Reviewers: stefan_schmidt, cedric, raster
Differential Revision: https://phab.enlightenment.org/D3276
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Avoid code duplication
Two dismissal signals at two different places
created some confusion and also code is duplicated.
Also removed some extra space.
Test Plan: NA
Reviewers: cedric
Differential Revision: https://phab.enlightenment.org/D3269
Summary: elm_genlist_first_item_get(), elm_genlist_last_item_get(), elm_genlist_item_prev_get(), elm_genlist_item_next_get() should return the next filtered item if filter is applied on the genlist.
Test Plan: test_genlist.c => Genlist Filter demo updated
Reviewers: shilpasingh, cedric, SanghyeonLee
Subscribers: divyesh, rajeshps
Differential Revision: https://phab.enlightenment.org/D3263
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
An application starts before the indicator has. In this case,
the application should try to connect again with the indicator.
Test Plan:
1. Start an application without the indicator service.
2. Start the indicator service.
Reviewers: raster, Hermet, woohyun, jaehwan, cedric
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D3258
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
1. When subtitle is set using actual part name "elm.text.subtitle",
subtitle,show signal is not sent issue fix.
2. Remove unnecessary checks, maintain code readability.
@fix
Test Plan:
Set text using edc part name elm.text.subtitle
Reviewers: Hermet, cedric
Reviewed By: cedric
Subscribers: shashank0990
Differential Revision: https://phab.enlightenment.org/D2988
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The box_clear, box_fill internal functions called when almost every internal chage happend.
(resize, theme apply, item append, item delete etc...)
Then those APIs delete/create item's edje object for all of the items.
It's very not good action for performance.
So, i changed this just edje object box unpack/pack instead of delete/create.
@fix
Test Plan:
Working test on elementary_test
and Call all of the index APIs for check this change.
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3268
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
It is an legacy of old code. When the view object of item was edje,
I think there was no meaningless parent-child relationship changes.
But, now, the view object is elm_layout and if we add object in proper order,
we don't need to make an useless parent-child realationship in any moments.
Test Plan: None
Reviewers: woohyun, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3254
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The icon is already sub object of VIEW(item) by content_set.
We don't need to make icon as a sub object of obj again.
It was used when VIEW(item) is Edje object.
Test Plan: None
Reviewers: Hermet, eagleeye, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3249
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Issue: When accessibility is set, individual color item's RGBA values are read
instead of actual color names.
Solution: Read color names by matching the color RGBA from the array.
Test Plan:
enable accessibility
run elementary test
select colorselector demo
click on individual color palette items
Reviewers: cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3240
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
There are several lines to get edje_object_data from elm_hover
or elm_hoversel like edje_object_data_get(elm_layout_edje_get(obj), "key");
These codes can be replaced with elm_layout_data_get(obj, "key");
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3193
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When the window is in background, for associated conformant, indicator must not update the plug information.
To fix this issue, On window goes to background, the associated plug handled by confromant is deleted.
Test Plan:
On any device (like handset) which should have indicator support, this scenario can be reproduce. I tested on a handset
with gdb attach to running process having window and confromant with indicator support.
Reviewers: raster, Hermet, cedric
Reviewed By: cedric
Subscribers: rajeshps, govi
Differential Revision: https://phab.enlightenment.org/D3177
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When calendar widget is already created and if we change language,
weekdays do not get translated because weekday string is statically
stored only during create.
Update the weekdays again when object is changed.
@fix
Test Plan:
1.Create and show calendar widget
2.Change the language
Weekdays do not get translated
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3149
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently hoversel creates the item view when user clicks on hoversel,
So it will cause a delay for the hover to come depending on number
of items as the items in hover have to be created. If item creation
is done during item_add that delay can be avoided and pressed effect also
will become smooth (item_add will be taking more time with this change, but
it happens only once). If applications prefer memory usage more than execution
time, then applications can do item_add in hoversel clicked callback.
Test Plan: elementary_test
Reviewers: raster, Hermet, conr2d, prince.dubey, shilpasingh, cedric
Reviewed By: cedric
Subscribers: rajeshps, poornima.srinivasan
Differential Revision: https://phab.enlightenment.org/D3058
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Although elm_win is only created and evas_object_show with elm_win is not called,
evas_rendering works sometimes.
This rendering is not necessary. Because on one is shown and just back buffer is allocated.
This patch is the prohibiting auto-rendering, if elm_win is shown by calling evas_object_show()
It is effective for power consumption and reducing memory.
@fix
Test Plan:
1. elementary_test : checking all menus's working
2. modifed bg_example_02 : updated elm_bg's color by animator without evas_object_show(elm_win)
Reviewers: jpeg, jypark, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D3282
Summary:
Eo complained about an invalid type 'Edje_Object' passed to
elm_widget_sub_object_add(). It is the segment control itself
that should be the subject of the call to this function.
@fix
Test Plan: elementary_test: no more Eo errors
Reviewers: cedric, stefan_schmidt
Differential Revision: https://phab.enlightenment.org/D3277
Summary:
The region position passed to region_show and region_bring_in used to be
relative to the object position, not the scroller.
This fixes T1686.
@fix
Reviewers: seoz
Maniphest Tasks: T1686
Differential Revision: https://phab.enlightenment.org/D3168
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When _elm_interface_scrollable_page_bring_in is called, page is not changed yet.
So "page,changed" smart callback is unnecessary.
Sometimes "page,changed" smart callback is called twice.
Because "drag,stop" and "anim,stop"is called it.
So I add updating current page code.
Test Plan:
elementary_test -> scroller
1. using wheel.
2. using "prev page" and "next page".
3. draging sceen
Reviewers: Hermet, singh.amitesh, cedric, raster, jaehwan, seoz
Differential Revision: https://phab.enlightenment.org/D3260
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
There was all the necessary code, except that the default
theme did not implement properly the signal & required data.
There is still a problem though, as the "timeout" smart callback
will be called at the start of the animation, so it's not possible
for an app to hide() or del() at this point (that would get
rid of the animation). But there's no other callback after
the animation ends.
elementary_test -to Notify > "Bottom" illustrates this issue.
Removed #include for elementary_config.h if HAVE_CONFIG_H is
defined. Which causes errors with external projects. Instead,
defined the necessary macros to use the Eo API.
Summary:
Previously child_can_focus flag could be only updated when
child is deleted from object's subobject list. This patch
additionally updates child_can_focus flag when focusability
is changed with elm_widget_focus_can_set function.
Patch solves child_can_focus issue in similar situations:
elm_icon_add(layout);
elm_object_content_set(layout, icon);
elm_widget_child_can_focus_get(layout); // returns EINA_TRUE
icon = elm_icon_add(win);
elm_object_content_set(layout, icon);
elm_widget_child_can_focus_get(layout); // returns EINA_FALSE
@fix
Reviewers: cedric, stefan_schmidt
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D3237
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When user called "elm_multibuttonetnry_editable_set()" API as false.
the internal entry will be unpacked from box.
Then called that API as true again.
the internal entry just show without box packed.
Also, editable set API should not work in MBE shrink mode.
Test Plan:
Alternately Call elm_multibuttonentry_ediable_set API as true, false.
Then check the internal entry state.
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D3134
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The select function set in item_append does not get called on item selection issue fix.
As per documentation, the function has to get called.
@fix
Test Plan: elementary_test is updated with the demo
Reviewers: navnbeet, Hermet, CHAN, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3158
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Hoversel scrollability can be considered as default behavior of hoversel.
These APIs are not necessary any more.
Reviewers: cedric, DaveMDS
Subscribers: DaveMDS, cedric
Differential Revision: https://phab.enlightenment.org/D3241
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
At-spi clients assume that object:state-changed:focused event is emitted
on application start. By the time atspi_bridge will establish
connection on at-spi bus all focused events are already emitted.
To fix this we reemit "focused" event in bridge connection callback.
This fixes a bug when Orca screen reader do not read first element after
application launch.
@fix
Summary:
In D2063, "max_size" data item is added to limit the number of items
to show at a time when hoversel is expanded.
However, it limits the number of items too few, so makes scrollable
function useless.
This patch removes limitation of hoversel size with pixels,
but if it needs, developers can set the limitation yet.
(By theme customization)
Test Plan:
elementary_test "hoversel"
click the second hoversel
Reviewers: DaveMDS, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3223
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The Internal box can has a lot of label for child when user set text many times.
Fix this wrong implement. It has to get only one label for child.
@fix
Test Plan:
Call elm_object_text_set() many times for MBE.
Check the label got a wrong geometry.
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D3133
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The timestamp has 0 value when n_long_tap_start callback called.
Then timestamp is same on each n_long_tap_move callback functions.
For fix this bug, update timestamp before called state_set function.
Also update timestamp in every timeout.
Test Plan:
Run test_gesture_layer2.c
Print timestamp in every n_long_tap_XXX callback.
Reviewers: tasn, cedric
Differential Revision: https://phab.enlightenment.org/D3144
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
elm_hoversel_scroll_enabled_set/get() API were changed to
elm_hoversel_scrollable_set/get().
However, the name of member of Elm_Hovsersel_Data related to those API
are not changed.
It can confuse developers later, so change it same to the name defined
in elm_hoversel.eo file.
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D3140
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
For various angles 90, 180, 270, the calculation of dnd window position
is not proper causing window to be placed wrongly while dragging.
Signed-Off By: Kumar Navneet <k.navneet@samsung.com>
@fix
Test Plan:
Longpress and drag and drop in entry by placing device at various angles
90, 180 and 270.
Reviewers: woohyun, cedric, thiepha
Reviewed By: thiepha
Subscribers: navnbeet
Differential Revision: https://phab.enlightenment.org/D3188
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
I missed this one yesterday. Also change it to use floating point values
instead of casting which does not make much sense for hard-coded values.
CID: 1327343
When dividing with an int we would loose the fractional part. Better cast to
a double to make clear we want double precision here.
CID: 1327343, 1327344
for release we need to test performance - esp of evas and eo in real life usage
and scroling is just such one. this adds a simple automated scrolling
test to genlist test (hit the button or ELM_TEST_AUTOBOUNCE=1
elementary_test -to genlist) so you can get consistent input and benchmark info
This change is the simplest I could do, but I think it would be better
to move _item_theme_hook inside _item_new. This is a further attempt
to fix T2777.
Summary:
Currently path is strdup() when getting real path, but it is not freed
in some cases.
@fix
Reviewers: seoz, Hermet, woohyun, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3194
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently, longpressed event can be called when map is
scrolled, zoomed or rotated. This might cause unintentional
result, because mouse need to be down at lease once to
execute scroll, zoom, or rotate, and longpressed event will start
when those events takes long enough time.
Reviewers: seoz, Hermet, woohyun, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3195
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
libatspi implementation allows to call methods on objects which
are not added to client cache with "AddAccessible" at-spi signal.
Bridge should allow to perform such calls by updating its internal
cache as soons as it returns a reference to the dbus object to client.
Elementary is not using much the calculate callback from Evas. This
create all sort of problem where it transform O(n) algorithm. Like
sizing a toolbar for next frame to O(n^n) by actually sizing the
toolbar every time an object is inserted.
T2777
_sizing_eval is very costly on toolbar as it recalc all edje part and sends
signal to all of them. _item_theme_hook was already calling _sizing_eval
doubling the cost of adding new item.
various fixes have occurred over the years to improve proxy rendering.
as a result, this theme, which is apparently the only other user of proxy
edje parts besides deskmirror, was broken.
@fix
Summary: clang reports SIG_BLOCK_CLICKED and SIG_TIMEOUT as being
unused variables, so remove
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: clang reports passing EINA_FALSE here is being treated as an
Eo object, so pass NULL instead
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: clang reports passing EINA_FALSE here is being treated as an
Eo object, so pass NULL instead
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: clang reports ELM_APP_SERVER_VIEW_PROPS_ENTRY as being an
unused variable, so remove.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Scenario:
const char * accel = accel_get();
accel_set("gl:depth");
Now accel may not be valid anymore since the original
Eina_Stringshare might have been destroyed. So there was
no point in saving the const char * pointer. It was not valid
after the call to set(). This is a bit confusing here. Returning
char* would be clear: the caller would own the data.
too many rels and complexity to track this to a more coherent
message
probably broken since 1.0 since there are zero "noicon" toolbar
tests
@fix
fix T2782
Elm_Image rely on Evas_Image ability to rotate content. There is no
pixels manipulation involved that require an update_add here. In fact
this cause a bug where the content would disapear due to evas trying
to get some pixels data that are not where it think they are.
Summary:
In hover.edc, hoversel dismiss animations are defined,
but it doesn't work at all. (Hover is removed before animation)
This patch makes hoversel remove its hover after dismiss animation.
@fix
Test Plan: elementary_test hoversel
Reviewers: Hermet, cedric
Reviewed By: cedric
Subscribers: woohyun
Differential Revision: https://phab.enlightenment.org/D3070
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: As ecore_evas_wayland_move ends up updating the location of
the ecore_wl_window, we should be calling move with the proper
geometry as this ends up updating the internal ecore_wl_window
geometry (which in turn sends to xdg_surface_set_window_geometry).
This is part of a fix where xdg_surface_set_window_geometry was
getting sent inproper values.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This reverts commit 1094fb77a0ee23cbe1e8b15783e406a8d93b7fd4.
Feature is freezed for new released version.
This patch must updated after release finished.
Toolbar creates a more_item when shrink mode is
ELM_TOOLBAR_SHRINK_EXPAND.
If select mode is ELM_OBJECT_SELECT_MODE_ALWAYS and there is no item
appended, then toolbar sets a selection on a newly created item.
In this case, sd->more_item is referenced before the new more_item is
assigned to sd->more_item.
@fix
Summary:
Add elm_gengrid_item_all_contents_unset API for reusing contents in application side.
User can unset all contents or re-use their contents for increase scrolling performance.
genlist already support this API.
@feature
Test Plan: Need to add test in elementary_test.
Reviewers: raster, singh.amitesh, cedric
Subscribers: woohyun, Hermet, seoz
Differential Revision: https://phab.enlightenment.org/D3066
previous config ignored elm theme if ithas cursors. this was just
wrong, so switch default back to using theme and update configs
accordingly etc. this is houw it should have worked.
Summary: Unsure whether these are left-over, or are going to be
implemented in the near future...but for now, #if 0 out these 2
functions as they are currently unused.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Allow to add some extra contextul information about accessibility objects
which can be used by Assistive Technology to provide better user experience.
API is still marked as beta.
@feature
org.a11y.atspi.Collection interface allows to perform fast search
queries on accessibility objects tree.
Due to lack of specification of collection interface this implementation
base on gnome project implementation from https://git.gnome.org/browse/at-spi2-atk/.
@feature
This actually doesn't work for coverity, I guess we just need to mark it
as false-positive, as it will never be null.
This reverts commit 178e7e6ac9419742d1bbe583fd252fc6536e5649.
These screenshots are used in the documentation but we never made sure that we
have them actually. This resulted in our docs missing image links.
Thanks to Jean Rene Dawin for reporting it at the Enlightenment Developer Day.
Moved the data fetching to be after the tests. This doesn't really
matter and is mostly there to silence coverity. Coverity was complaining
about "it" being dereferenced before the null check (implicit in
EO_OBJ), so reordering it will fix it.
CID 1040000
Summary:
elm_hover_dismiss() doesn't hide hover directly, but sends signal only.
It can be translated that "dismiss" do not hide hover only, but handles
some works. (EDC program, callbacks etc.)
However, "dismiss" sends signals after hide hover itself, so following
edje signals are ignored. (Hover cannot be seen already!)
This patch makes hover dismiss delayed while handling edje signal.
@fix
Test Plan: elementary_test hover2
Reviewers: Hermet, cedric
Reviewed By: cedric
Subscribers: woohyun
Differential Revision: https://phab.enlightenment.org/D3068
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Issue: If text set is NULL to naviframe, crash happens in strcmp
Soln: Check for text if NULL, before passing to strcmp
@fix
Test Plan:
//Pass the text as NULL
elm_object_part_text_set(nf, "title", NULL);
Reviewers: Hermet, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3052
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Hoversel can be used like dropdown or pulldown menu.
In that case, changing hoversel label into selected item lable can be
considered as common usage of hoversel.
This API automatizes changing label.
Reviewers: SanghyeonLee, Hermet, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2963
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Some modifications for hoversel scrollability are applied.
For example,
The logic for generating scroller is changed. (newly added during activation)
If hoversel's contents are larger than hover,they will be resized to fit hover.
If hoversel is moved (by window rotation etc.), scroller will be resized.
Reduandant code are removed from popup for scrollability.
Test Plan:
You can see the sample for scrollable hoversel in second one
of "elementary_test hoversel".
Reviewers: Hermet, SanghyeonLee, cedric
Reviewed By: cedric
Subscribers: godlytalias, Hermet
Differential Revision: https://phab.enlightenment.org/D2926
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Set proper atspi parents in cases when AT-SPI object tree structure
should be different then elementary tree (mostly in cases of elm_widget_items)
Add regression tests for those cases.
This patch moves some duplicated implementation from elm_widget
and elm_widget_item classes into atspi base mixin. It allows to
better share code and reduce maintainability.
Change-Id: I8d264661e7ffade7da72299f29075a536d71eaa3
Introduce global event emitter for accessibility events. With such emitter
there is no need to register array of callbacks on every accessibility object.
Fallback eldbus interface allows to handle dbus method call on
multiple object paths only with single callback. This greatly
reduces a ammount of memory since there is no need
to register eldbus interface for every accessible object.
Summary:
Before item packed again in mbe box. box calc own min height.
In this case, there is no need to increase line number when entry is box item.
Actually the min height of box calculated wrong here.
@fix
Test Plan:
Give a color to internal box.
Then items add.
Check the internal box area got a wrong height value.
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D3102
Summary:
MBE internal box get its padding size from edc.
Previously, it does not consider when calculating the padding size.
In this commit, the padding size from edc is divided by its base_scale
so that desirable size can be calculated.
@fix
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D3103
Summary:
There is no good entry test for changing editable mode.
This patch adds a test for changing editable in entry.
Reviewers: Hermet, tasn, herdsman
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D3112
Summary:
If item filters are appended and multibuttonentry is deleted, the
filter list is not freed causing leak
Signed-Off By: Kumar Navneet <k.navneet@samsung.com>
Signed-Off By: Shilpa Singh <shilpa.singh@samsung.com>
Test Plan:
append item filters and when multibuttonentry is deleted leak is
observed, run valgrind in this scenario.
Reviewers: Hermet, cedric, CHAN
Subscribers: navnbeet
Differential Revision: https://phab.enlightenment.org/D3118
the remote editor needs to be rewritten to use x11 client messages
and wayland shell extensions at some point. need to make this stable
now to use in e20 release
After a52a53802aebf03d297aa857f0cb6a9779949a49 callback was called after every
spinner value change even if it was made from code.
This commit fixes unfocus issues without breaking callbacks logic
@fix
Reviewers: CHAN, ajwillia.ms
Subscribers: CHAN, ajwillia.ms
Differential Revision: https://phab.enlightenment.org/D3107
Signed-off-by: Andy Williams
Summary:
I need to think more about item omitted case, horizontal case as well.
Now i'm working on this. It may need to refactoring internal logic.
Please revert this commit it break view when index item omitted.
@fix
This reverts commit 560338c5c31bda8912938074cb736eabdb9f1f31.
Reviewers: Hermet, cedric, woohyun
Differential Revision: https://phab.enlightenment.org/D3062
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Flipselector lose last character when 50 characters showing case.
This defined value will using in snprintf, fetch_str(_edje_embryo_fn_fetch_str).
As you already know, we have to give the location in array for '\n'.
Test Plan: Give the 50 characters for flipselector text.
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3064
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
elm_multibuttonentry_clear API not worked well.
It deleted only odd items. Because of the sd->items has been modified inside elm_widget_item_del().
Then we don't have to search target item inside of _item_del().
@fix
Test Plan:
Add MBE items.
Call elm_multibuttonentry_clear API.
Check the bug state.
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3065
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When calendar widget is already created and if we change language,
weekdays do not get translated because weekday string is statically
stored only during create.
Update the weekdays again when object is changed.
Test Plan:
1. Create and show calendar widget
2. Change the language
Weekdays do not get translated
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3035
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
The focus go to scroller only when it needs.
If the focusable object isn't in the current viewport of the scroller,
the scroller should have the focus.
If not, the focus move to the focusable object in the scroller.
@feature.
When the focus is moved, it uses focus_direction instead of
focus_origin.
It can get the focus by using the geometry of previous focused object or item
@feature
Summary:
If there is a special value for current spinner value, just jump to apply and show up the special value for entry text.
There is no need to check format.
@fix
Test Plan:
Add special value for each spinner value.
Spinner editable set as true.
Click the button layout for activated spinner entry.
Check the entry text.
Reviewers: cedric, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2976
Summary:
When user call elm_calendar_first_day_of_week_set() to change first day of week.
the marked day has to update.
But, it's not updated, because of internal logic error.
I fixed internal logic for update specific day mark.
@fix
Test Plan:
Called elm_calendar_mark_add()
Then called elm_calendar_first_day_of_week_set(
Check the mark in not updated.
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3100
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
If there is a spinner on scroller.
User can scrolling and spinner button longpress at the same time.
Prevent this weird action, delete longpress timer when scroller enabled.
@feature
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3101
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Add Filtering support in genlist based on filter function set by application.
@feature
Test Plan: Genlist filter sample added in elementary_test
Reviewers: raster, shilpasingh, cedric, SanghyeonLee
Subscribers: SanghyeonLee, divyesh, rajeshps, govi, prince.dubey, poornima.srinivasan
Differential Revision: https://phab.enlightenment.org/D2514
Summary:
Set the display mode to none only when both clipboard and keypad is
hidden.
Signed-Off By: Shashank Pandey <shashank.p@samsung.com>
Signed-Off By: Shilpa Singh <shilpa.singh@samsung.com>
@fix
Test Plan: Keypad opened, Clipboard opened, close clipboard
Reviewers: woohyun, CHAN, Hermet
Reviewed By: Hermet
Subscribers: CHAN, Jaehyun, shashank0990
Differential Revision: https://phab.enlightenment.org/D2968
this fix is a fix due to the fix in
933dfca5bcda4943ecdd81ab09dc34989234f7f3 whihc fixed other issues. now
focus is properly set where it should be. this affected rage
@fix
Summary:
In Types Dnd test, if we drag from label to entry, the text is inserted
with "<br/>". The reason is that we drag with type ELM_SEL_FORMAT_TEXT
but the transferred data is markup.
This patch fixes it by changing the transferred data to text.
@fix
Reviewers: JackDanielZ
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D3072
Summary:
The x, y coordinates in pos callback should be relative to
the top-left of the object.
This patch corrects the x,y coordinates and adds poscb to elementary test
to clearly show the bug case.
Test:
Run Genlist Dnd Dflt Anim with the change in this patch.
Drag an item to other genlist and see the printed out item, x, y.
@fix
Reviewers: JackDanielZ
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D3063
Summary:
There was override for elm_object_item_part_text_get() only.
This patch implements elm_object_item_part_text_set().
Reviewers: Hermet, cedric
Subscribers: Hermet
Differential Revision: https://phab.enlightenment.org/D3054
multibuttonentry is editable
Summary:
Input panel should be controlled only if Multibuttonentry is editable, else causes issues in applications controlling keypad by themselves
@fix
Reviewers: CHAN, Hermet
Reviewed By: Hermet
Subscribers: navnbeet
Differential Revision: https://phab.enlightenment.org/D3050
Summary: slider is not focused after slider is dragged.
Test Plan: elementary_test -> slider
Reviewers: woohyun, seoz, smohanty, cedric, raster
Differential Revision: https://phab.enlightenment.org/D3057
Add elm_object_focus_next_item_set/get,
elm_object_item_focus_next_object_set/get and
elm_object_item_focus_next_item_set/get.
If the item and object is set at the same time,
the item is preference to object when the focus moves.
This feature is implemented about gengrid.
It will be implemented about ohter widgets.
@feature
Summary:
If file path is wrong, don't need to call the image preload api.
And the result of evas_object_image_load_error_get api is not correct
after calling the image_preload api.
I will check more about it.
Reviewers: cedric, Hermet, jpeg
Reviewed By: jpeg
Differential Revision: https://phab.enlightenment.org/D3039
Summary:
MBE item append logic changed when mirrored set as true.
The item appended from left side of internal box to right side, even mirrored set as true.
@fix
Test Plan:
Precondition : elm_widget_mirrored_set as true.
Run mbe sample in elementary_test.
Add item.
Reviewers: cedric, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2975
this fixes a bug with horizontal style toolbar items and toolbar code
itself simply emitting the wrong signals that causes 0 height items.
this fixes T2710
@fix
smooth out scrolling and simplifyconfig as well as expose config apis
to configure it all and elm config ui sliders and checkboxes for
related config values etc. etc. - with this it is much smoother if you
use the default values, though latency is a bit worse. it looks nicer
though.
@feature
there is an annoyance in elm that when focus goes back toa window it
restores focus to the last focused widget. if that widget happens to
be invisible in a scroller then this is really annoying as the
scrollers reset. this makes restoring optional. only if there is a
hilight object AND it's visible - then restore, otherwise don't and
revert focus to the window itself again.
@fix
i found that the focus doesnt auto-show when focusing things inside
scrollers and so on. i had to add more points to trigger auto show.
this fixes that
@fix
Summary:
When the calendar view updated(Press next button to activated next month),
a lot of signals process(signal emitted) to calendar edc.
The signals which related with view update, should process in same loop.
If not, the view looks weird.
To ensure signals process same time, i called "edje_object_message_signal_process" after layout sizing eval called.
@fix
Reviewers: Hermet, cedric, woohyun
Subscribers: id213sin
Differential Revision: https://phab.enlightenment.org/D3019
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
There are two issues about preload
1. elm_image_preload_disabled_set api does not work.
Always returned before call the evas_object_image_preload()
2. image preload does not work at file_set time.
If image's show property is not TRUE, do not call evas_object_image_preload() at file_set time.
But there is no action when image's show property will be TRUE after call the file_set api.
@fix
Reviewers: Hermet, jpeg
Differential Revision: https://phab.enlightenment.org/D2989
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
Fix behaviour for changed, activated, press events.
Forwarders must be set on entry's original events,
so they will call corresponding fileselector entry's callbacks.
@fix
if sd->obj is null then the a zoom timeout has a null data param and
that means we cant get sd data... so dont set up a zoom timeout unless
sd->obj is valid.
@fix
so elm map loads every module it can find in a recursive dir walk of
all elm modules. this si nuts. this can accidentallly load OLD modules
and thats a recipe for disaster. so check module arch dir aagainst
module arch string to load the right version and be quiet if module
doesn thave the right symbols - it's the wrong module type.
@fix
Summary:
When loop is set, the arrows on horizontal/vertical bar
should not be disabled. These arrows show the scrollable direction,
if enabled. Disabled arrows show no more scroll in that direction.
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>
Merge branch 'master' of http://git.enlightenment.org/core/elementary
Test Plan: elementary_test -> scroller -> loop in x axis.
Reviewers: raster, Hermet, singh.amitesh
Subscribers: sachin.dev, SanghyeonLee, eagleeye
Differential Revision: https://phab.enlightenment.org/D2953
Summary:
fix sub-item position after prepending if parent item has no other
sub-items
Test Plan:
1. add genlist
2. add parent item
3. compare results of following actions:
case 1: append sub-item "child1" and then prepend sub-item "child2"
case 2: prepend sub-item "child2" and then append sub-item "child1"
ExR results are the same
CuR in case 2 sub-items are placed in wrong position
Reviewers: cedric, raster, reutskiy.v.v, SanghyeonLee, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2965
Summary:
Updated genlist to select first item which is not in
DISPLAY_ONLY mode
@fix
Signed-off-by: Vaibhav Gupta <g.vaibhav1@samsung.com>
Test Plan:
Following is the test to verify:
1. Create a genlist
2. Make 1st item as ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY
3. Now bring the focus to genlist by key down
4. It should bring focus on 2nd item and not 1st.
Reviewers: raster, Hermet, SanghyeonLee, singh.amitesh
Subscribers: sachin.dev
Differential Revision: https://phab.enlightenment.org/D2957
Summary:
When text is set on a multibuttonentry item, item does not resize
again based on text.
Signed-off By: Kumar Navneet <k.navneet@samsung.com>
@fix
Test Plan: Set long text to multibuttonentry item, after item is created and shown.
Reviewers: woohyun, CHAN, Hermet
Reviewed By: CHAN, Hermet
Subscribers: navnbeet
Differential Revision: https://phab.enlightenment.org/D2967
Summary:
MBE clicked callback doesn't called when user click label, padding area of MBE.
Because of the MBE edc only has the SWALLOW part for internal box. never emit the signal for clicked.
So i added RECT part for bg of mbe.
@fix
Test Plan: Run elementary_test -> execute multibuttonentry sample.
Reviewers: seoz, woohyun, cedric, Hermet
Reviewed By: Hermet
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2821
Summary:
When push is in progress, block popping until
push is complete to allow animation to complete.
@fix
Reviewers: Hermet
Subscribers: subodh6129, shashank0990
Differential Revision: https://phab.enlightenment.org/D2966
Summary:
This reverts commit bba4c217f2ce4f032fca6298cc8b2fc6ff3d7c19.
"x and y position variable assumes values ranging from min to max " is right.
but in looping behavior, x and y are able to have value bigger than max or smaller than min.
@fix
Test Plan:
1. elementary_test -> scroller
2. on Loop in X axis
3. scrolling page to left.
4. page is moved last page directly.
Reviewers: SanghyeonLee, tanwar.umesh07, raster, cedric, jaehwan, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2977
Summary:
Size or offset spacer make hover be able to move its swallows to right positions.
In elm_layout_sizing_eval() for hover, moving and resizing spacers are done
after moving and resizing hover.
It causes in hover's move or resize callback, geometry can not be got correctly.
Reviewers: SanghyeonLee, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2999
Summary:
Item layout will be added in elm focus tree.
evas_object_focus_set is no meaning here for MBE operation.
So i changed focus API from "evas_object_focus_set()" to "elm_object_focus_set()"
elm_object_focus_allow_set() already called in item adding function.
@fix
Reviewers: Hermet, cedric
Differential Revision: https://phab.enlightenment.org/D2993
Summary:
The focus movement is wrong when down key press
is done of first item of last row, intsead of
taking the focus out, it moves the focus to next
item (right).
@fix
Signed-off-by: Vaibhav Gupta <g.vaibhav1@samsung.com>
Test Plan:
1. Launch elementary_test -> Gengrid 2 sample
2. Add a few items such that there are 2 items in last row
3. Do a down key press on 1st item of last row
4. Observe focus movement
Reviewers: raster, Hermet, SanghyeonLee, singh.amitesh
Subscribers: sachin.dev
Differential Revision: https://phab.enlightenment.org/D3001
Item expandend state need to be resetted (contracted) when the
item goes in the items cache, otherwise when the item will be reused
it will have unwanted state (expanded).
Quite visible in the "Genlist Tree and Decorate All Mode" test
@fix
This fixes a behavioural change introduced in D1135.
Steps to reproduce:
1. elementary_test -> genlist/list/gengrid
2. scroll dragging the scroll-bar
3. an item nearest to viewport gets selected when you release the mouse button
Most of the time, we don't want item to be selected or focused on dragging
scroll-bar via mouse. Revert config flag to 0 to have old behaviour before D1135.
fixes: T2662
@fix
resize object was not getting focused in case of mouse click.
Steps to reproduce:
1. elementary_test -to "toolbar focus".
2. set focus to toolbar item via mouse.
3. focus does not come to toolbar.
fixes T2697
@fix
There is no need to loop when reorder mode is enabled. This looks
ugly and nobody wants it. This fault was introduced in 7aaa5c8d0a4a5714b4f1bf79e
This patch also fixes following crash
1. elementary_test -to "Gengrid 2".
2. Enable all the options available.
3. Do reorder of item via keys.
4. Observe segv on reordering edge items.
@fix
Steps to reproduce:
1. elementary -> gengrid focus
2. change mode to horizontal
3. set focus to one of item in 2nd column.
4. Press Left direction key
issue: focus moves out of gengrid.
@fix
Summary:
since the variable 'preferred_rot' is checked its validation in _elm_win_xwin_update(),
so, should be initialize it before invoking.
@fix
Reviewers: jypark, woohyun, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2987
Summary:
Added the following examples:
* bg_cxx_example_01
* bg_cxx_example_02
* bubble_cxx_example_01
* button_cxx_example_00
* button_cxx_example_01
* calendar_cxx_example_01
* calendar_cxx_example_02
* calendar_cxx_example_03
* calendar_cxx_example_04
* calendar_cxx_example_05
* clock_cxx_example
* datetime_cxx_example
* glview_cxx_example_01
* hoversel_cxx_example_01
* icon_cxx_example_01
* location_cxx_example_01
* menu_cxx_example_01
* popup_cxx_example_01
* radio_cxx_example_01
* separator_cxx_example_01
* slider_cxx_example
* spinner_cxx_example
* table_cxx_example_01
* table_cxx_example_02
* thumb_cxx_example_01
Added documentation for the above examples, as well as how using lambdas
with C++ elm binding. How to use autohide feature and how to use the C++
wrappers to create windows, widgets and call Eo functions from them with
automatic C++ type conversion and how to use signals from C++.
':' is usually regarded as the delimetr for new theme path
but it uses to look up the drive, ie, c: on windows, on the other hand.
this patch fixes to determine wheter ':' is used for drive name or delimeter.
@fix
Summary:
if app sets available rotations before invoking elm_win_alpha_set(),
wm rotation doesn't work.
this patch fixes it.
Test Plan: N/A
Reviewers: jypark
Reviewed By: jypark
Differential Revision: https://phab.enlightenment.org/D2946
Summary:
Since the _count variable is static, the buttons which are added
to scroller, get text value ahead of previously added count, instead
of starting from 1 every time a new window is opened for the example.
Signed-off-by: Vaibhav Gupta <g.vaibhav1@samsung.com>
Test Plan:
Following is the test:
1. Open Scroller 3 sample
2. Add some items and note the "Item count value of added buttons
3. Close the sample
4. Re-open Scroller 3 sample, and again add some items
5. Observe the "Item count" text of added buttons.
Reviewers: raster, Hermet, singh.amitesh
Subscribers: sachin.dev
Differential Revision: https://phab.enlightenment.org/D2959
Summary:
The original code did not consider the case where the text will be
reapplied by chunks. The repositioning of the cursor should be postponed
to when the idler work is done, or not required at all.
Fixes T2646.
@fix
Reviewers: NikaWhite
Reviewed By: NikaWhite
Maniphest Tasks: T2646
Differential Revision: https://phab.enlightenment.org/D2952
This is an example of classic code copy and paste mistake.
Probably inspired from similar code in genlist/gengrid.
We were actually deleting the other items (except selected one) in
viewport in _elm_list_nearest_visible_item_get() which results into crash
while deleting the list object.
@fix
Resolves: T2662
Summary:
After item looping, Gengrid item was getting selected.
So, checked for item_select_on_focus_disable flag and
accordingly set focus state or selected state of Gengrid item.
@fix
Signed-off-by: Yeshwanth Reddivari <r.yeshwanth@samsung.com>
Reviewers: raster, Hermet, singh.amitesh, SanghyeonLee
Subscribers: sachin.dev
Differential Revision: https://phab.enlightenment.org/D2937
performing strlen() on potential non-string data is not recommended and can
even lead to crashes. nul terminating non-string data is pointless and enables
bad application behavior such as calling strlen() on potentially non-string data
@fix
previously the drop format was chosen in a manner unrelated to what
the offered format was, leading to applications receiving either the correct
data with the wrong format, the wrong data with the wrong format, or
the wrong data with the correct format. by comparing the drop handler
types with the offered type and ensuring that there is a match, the
correctness of the format that the application receives is more reliable
@fix
conformant would ignore min size of content (and propagate min size
to paent widget - eg window). this was just wrong. remove fixed here
(also align is useless as that is a default).
@fix
In the widget code, focus origin is added. It can know
the focus movement is originated by which action.
The widgets can choose the item focus moves to last focused item
or geometrically nearby item by focus origin.
In gengrid, focus moves to last focused item if focus origin is
ELM_FOCUS_REVERT. It moves to nearby item if focus origin is from
ELM_FOCUS_UP to ELM_FOCUS_LEFT.
TODO: widgets have items should add the direction feature if it
want the focus to move to nearby item.
@feature
Summary: The Elm Copy and Paste test was not actually pasting the
copied text into the entry when the Paste button was clicked. This
patch fixes that issue.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
When the focus is move to the object in scroller, it is scrolled
to show the focus region as a widget.
If the focus region want to be shown as an item,
set the mode ELM_FOCUS_REGION_SHOW_ITEM.
If then, it will be scrolled as an item.
TODO: Widgets have items are added on_focus_region function.
@feature
This commit is related to 4d553d2bcf2157053433994ca3facb56bd670da9.
It doesn't work if item_select_on_focus_disable is 1.
So _item_focus_down is changed like _item_single_select_down.
@fix
Summary:
do not return yet in case of edge items if looping
is disabled. try to select/focus last item.
Signed-off-by: Jyotiprakash Sahoo <jp.sahoo@samsung.com>
@fix
Test Plan: elementary_test -> Gengrid 2
Reviewers: raster, singh.amitesh, cedric, SanghyeonLee
Reviewed By: SanghyeonLee
Differential Revision: https://phab.enlightenment.org/D2865
These files come from some modules in src/modules while we set out base dir to
src/lib. In result these files are search for in src/lib and not found. In the
long term we want to find out how to collect them as well but for now a working
coverage is already good.
Overall coverage rate:
lines......: 18.1% (12596 of 69412 lines)
functions..: 18.6% (1766 of 9500 functions)
Will work on getting these run by jenkins once it is back.
Summary:
When user set min max as 50, 150 with %d format, then value set as 100.
The spinner value set as '0'
Because the sd->val type is double.
Spinner entry has same problem.
@fix
Test Plan:
Set spinner format as %d.
Check the spinner value.
It's not supported.
Reviewers: Jaehyun_Cho, cedric, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2898
Conflicts:
src/lib/elm_spinner.c
Summary:
When the scroller size changes by dragging the
corners, the calculations will miss the condition "x+w == x1 + w1".
This is because of format specific computer calculations. So,
improvisation is made in comparisons.
@ fix
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>
Test Plan:
elementary_test -> scroller -> scroll to the extreme right (right arrow brightness changes).
Now, drag the lower right corner to increase the width of scroller. Drag the corner slowly to see the issue clearly.
The arrow brightness changes alternatively, instead the hbar is positioned to the extreme right.
Reviewers: Hermet, cedric, raster
Subscribers: singh.amitesh, eagleeye, SanghyeonLee, sachin.dev
Differential Revision: https://phab.enlightenment.org/D2796
Summary:
When icon is set, icon size is calculated without considering
edje base scale. This can lead to a miscalculation when
base scale is set other than 1.0.
@fix
Reviewers: seoz, woohyun, cedric, Hermet
Reviewed By: Hermet
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2798
Summary:
_elm_access_say() does not free the given text.
But, the text from eina_strbuf_string_steal() is not cared
from outside of _elm_access_say(), too.
It should be changed to eina_strbuf_string_get().
Test Plan: N/A
Reviewers: cedric, woohyun, kimcinoo, JackDanielZ, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2918
Summary:
Calling the elm_config_accel_preference_get api with "none" as parameter,
it means user does not want to use acceleration.
Reviewers: Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2920
If we want to run from the local build dir without make install before
elm_module would fail to load the modules as it is expecting them in the
final install location.
We can now change this by setting ELM_RUN_IN_TREE to force it load the not
yet installed modules.
ref T2028
Our tests require a theme file. So far they picked this just from the system
where it was installed to in a previous run. We have situations where this would
not work though. Running make check before install on a new system or during
distcheck comes to mind.
With AM_TESTS_ENVIRONMENT we make that the theme is also looked for in the not
yet installed builddir.
Thanks to Lukasz Stanislawski for pointing me to this.
ref T2028
internal object content_area was not swallowed into popup
since elm_object_part_content_set() was used.
Steps to reproduce:
1. clouseau elementary_test -to popup
2. open subpopup example.
3. observe orphan content_area object in clouseau widget list.
Summary:
elm_list, elm_genlist widgets are handle focus highlight
relying on only elm_widget_focus_highlight_enabled_get() API.
The API is not considered about auto focus highlight feature.
So, we need to check a flag for auto focus from _elm_config.
It resolves T2555.
@fix
Test Plan: elementary_test -> List Focus or Genlist Focus
Reviewers: raster, cedric, SanghyeonLee, singh.amitesh
Reviewed By: SanghyeonLee, singh.amitesh
Maniphest Tasks: T2555
Differential Revision: https://phab.enlightenment.org/D2914
Summary:
When editable set is set to FALSE, there is no need to specifically
hide the keypad as keypad will automatically hide when entry is hidden.
@fix
Signed-off By: Kumar Navneet <k.navneet@samsung.com>
Reviewers: woohyun, Hermet, CHAN, cedric
Reviewed By: cedric
Subscribers: subodh6129, navnbeet
Differential Revision: https://phab.enlightenment.org/D2907
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently, the first item is marked selected when
the colorselector is added. However, this is not normal behavior
since the first item is not shown selected.
Moreover, always selecting the first item during creation does not
sound natural.
Reviewers: cedric, Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2906
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The numerical formula below is calculated with the double type.
-> ELM_SCALE_SIZE(x) (int)(((double)(x) / elm_app_base_scale_get()) * elm_config_scale_get())
But if number of significant figure of the return value goes over 15, the epsilon error will happen.
Because of that, it is better to divide to do later.
Reviewers: woohyun, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2900
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The evas box swallowed in "elm,swallow,index" part.
Then the each index item will be appended into evas_box when elm_index_go called.
If user make the line or dot for that swallow part for resize same as internall box.
edje_size_min_calc always give the '0'value for it.
Box will be swallowed the only on swllow part for desicion index layout size.
So the index min value should follow the box size.
Test Plan:
Run any index sample.
Get the index min size and check the value.
It gets always wrong before.
Reviewers: cedric, Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2896
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
An item size calculated with scale value when item appended.
This code is not need.
@fix
Reviewers: Hermet, woohyun, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2840
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
I add the APIs for supporting multi language on index.
"elm_index_item_priority_set()" API can give the priority value for each item.
it will be grouping with each priority items when index start to draw the item.
It can get a 0 or 1 (default : -1) -1 priority item show always even priority changed.
"elm_index_priority_set()" API can changed the current priority in manually.
priority will be up automatically when user send move event into last of priority 1 group item.
otherwise, priority will be down automatically when user send move event into first of priority 0 group item.
"elm_index_priority_get()" API can get a current index priority.
@feature
Test Plan:
I added the test application in test_index with give the name as "test_index3"
(It's for only show how to handle the priority APIs and show the how does it works for multi language
so it doesn't operate with genlist.)
You can check the how it works and how APIs works for it as well.
Reviewers: eunue, seoz, woohyun, Hermet
Subscribers: SanghyeonLee, eagleeye
Differential Revision: https://phab.enlightenment.org/D2729
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently, hoversel shows all items at the same time, but to limit
the size of contents and make it scrollable is neccesary to some users.
elm_hoversel_scroll_enabled_set/get() API makes the contents of hoversel
scrollable or not.
Test Plan:
The newly added scroll function is enabled for the second hoversel
in "hoversel" sample of elementary_test.
Reviewers: Hermet, raster, herdsman, cedric, tasn
Subscribers: JackDanielZ, cedric, Hermet
Differential Revision: https://phab.enlightenment.org/D2603
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
If name of theme has ".",example "abc.def.edj", it would fail to check the file name.
So, I changed the strchr functions to strrchr function.
Reviewers: seoz, raster, Hermet, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2285
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
This patch is code refactoring for genlist item cache logic
as same as gengrid item cache and removing unnecessary
Item_Cache properties.
{selected, disabled, expanded} exist in Item_Cache,
but _item_cache_find ignore those flagged properties,
so _elm_genlist_item_status_update will not working with
itc properties(all itc properties are EINA_FALSE).
Test Plan: Need to check elementary_test genlist sample working properly.
Reviewers: raster, Hermet, seoz, jaehwan, cedric
Reviewed By: cedric
Subscribers: cedric, singh.amitesh, eagleeye
Differential Revision: https://phab.enlightenment.org/D2660
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
There is no way to give padding between each items, previously.
So i added horizontal, vertical padding here.
I will add APIs for set, get padding size set, get.
@feature
Test Plan:
Change the horizontal, vertical paddidng value in multibuttonentry.edc
Run elementary_test
Execute multibuttonentry sample.
Add items.
Check the padding between items.
Reviewers: woohyun, seoz, Hermet, raster
Reviewed By: Hermet, raster
Subscribers: raster
Differential Revision: https://phab.enlightenment.org/D2534
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently when user clicks on the radio, and when api value_set() called by
the developer we emit "elm,state,radio,*" signal. To support value change animation when
user interacts with radio. There is no way to distinguish the action in EDC.
This "elm,activate,radio,*" is a way which edc can make use to distinguish the state change signal
by the user action or due to api call.
Reviewers: Hermet, raster, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2829
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently when user clicks on the checkbox, and when api state_check() called by
the developer we emit "elm,state,check,*" signal. To support state change animation when
user interacts with check box. There is no way to distinguish the action in EDC.
This "elm,activate,check,*" is a way which edc can make use to distinguish the stae change signal
by the user action or due to api call.
Reviewers: woohyun, raster, cedric, Hermet
Reviewed By: Hermet
Subscribers: id213sin
Differential Revision: https://phab.enlightenment.org/D2817
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Test Plan:
1. Install previous version of elementary
2. Remove config from homedir
3. Build new config with elemetnary_config app
4. Install patched version of elementary
5. run elementary_test Hoversel test
6. Space end Enter should open hovesel
Reviewers: seoz, jaehwan, singh.amitesh, cedric
Reviewed By: cedric
Subscribers: seoz
Differential Revision: https://phab.enlightenment.org/D2787
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
SIG_CAHANGED notify user to
genlist is now changed their items and properties and all
calculation is finished, so user can get correct values in
that callback.
This SIG_CHANGED smart callback already supported in gengrid.
Test Plan:
N/A
This patch is addition of new smart callback.
Reviewers: raster, seoz, singh.amitesh
Subscribers: Hermet, cedric, eagleeye
Differential Revision: https://phab.enlightenment.org/D2773
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Entry has only number text when activated and value changed, Even user registered special value to each spinner value.
If the user registered special value, we should check then showing the special value instead of number text.
Its will more helpful to expect the result when user set a spinner value using spinner entry.
@fix
Test Plan:
There is a spinner sample in elementary_test.
Changing editable value as TRUE for the last spinner object.
Click the spinner to activated entry and check the result.
Reviewers: Hermet, Jaehyun, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2844
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
set scroller size in content_set.
Resolves: T2623
@fix
Test Plan:
1. run ecrire
2. Add some text in newfile
3. Close ecrire
4. a almost zero size popup.
Reviewers: tasn, herdsman, raster, SanghyeonLee, stefan_schmidt
Reviewed By: stefan_schmidt
Subscribers: stefan_schmidt, herb, seoz
Maniphest Tasks: T2623
Differential Revision: https://phab.enlightenment.org/D2901
Summary: This fixes T2624 where ecore_wl_window_update_location was
being called inside the Ecore_Evas too often. It is now only called
from the Elementary window whenever we update the opaque region. This
should help to fix the resize issue that we are seeing in wl.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
We should steal the focus while setting focus to subobjects from parent.
This issue is reproducable in case of setting focus on one of items of hoversel
on expanded cb of hoversel.
@fix
Summary:
Two different behaviour are observed with clicked event.
1. When scroller is not present:
a. Mouse down over object,
b. mouse move outside the object
c. mouse up, clicked happens
2. When scroller is present:
a. Mouse down over object,
b. mouse move outside the object
c. mouse up, clicked NOT happens
So clicked callback should happen over the object only i.e when mouse move out of the objcet clicked should be ignored, and behaviour will be consistent
@fix
Test Plan: NA
Reviewers: shilpasingh, cedric
Differential Revision: https://phab.enlightenment.org/D2856
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Currently, radio is set EINA_FALSE when radio is disabled.
This causes unexpected behavior when the radio is selected and
get disabled. Using elm_radio_value_get() API will return
the value of disabled radio. This is not consistent with setting
EINA_FALSE when radio is disabled. Thus, disabled radio should
also have selected and unselected states.
Reviewers: woohyun, smohanty, Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2880
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Changed docsw of elm_frame.eo according to the new format
Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, q66
Reviewed By: q66
Differential Revision: https://phab.enlightenment.org/D2885
Summary:
Changed docs of elm_flipselector.eo and elm_flipselector_item.eo to new format
Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, q66
Reviewed By: q66
Differential Revision: https://phab.enlightenment.org/D2884
Summary:
Converted docs of elm_fileselector_entry.eo to the new format
Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, q66
Reviewed By: q66
Differential Revision: https://phab.enlightenment.org/D2882
This fixes a crash in edje_inspector as:
- delete callback is called on the object
--> this unloaded elm
- destructor is called on the object
--> this did some elm stuff, in particular read the config
from _elm_config (now NULL).
Instead, shutdown elm after del, during free.
Also reset hash pointer to NULL after free.
Summary:
Even user sets empty string here for text, label still packed in box with min size(finger size).
label_set internal logic is not clear before.
ex: object min set, resize check the string length then sending signal, min set again.
so i deleted the signal emit code here, we can handle label show, hide status in code and it's more clear.
Besides "sd->label" is always true all of the case. we need to check whether it's packed or not.
The label will be added to parent's sub object when it's packed into box.
label_set as empty string in adding time also meaningless.
@fix
Test Plan:
Run multibuttonentry sample.
Set a text somthing for it then set an empty string here.
Reviewers: Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2841
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When spinner change it's value it should call callbacks for
colorselector but not for spinner.
@fix
Reviewers: raster, reutskiy.v.v, cedric
Reviewed By: reutskiy.v.v, cedric
Subscribers: NikaWhite
Differential Revision: https://phab.enlightenment.org/D2780
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
In some MBE use case, Application can append item using only item_append API.
in that case, the end text(item count) doesn't update properly.
So, i add a code for fix it.
@fix
Test Plan:
1. Add a button for call "elm_multibuttonentry_item_append()" in test_multibbutonentry.c
2. Make MBE shrink mode.
3. Click button to append item to shrinked MBE.
4. Check the MBE end text state.
Reviewers: Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2848
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
If there is a uneditable MBE, the MBE doesn't have to get a entry inside of the box.
It breaks MBE box layout, resize logic.
And check the box focus, entry visible is not enough to cover MBE is uneditable case.
If MBE is uneditable, box_resize callback called when item added. in this case,
we need to check what view type user want. if its not shrink view here, do not make
MBE to shrink mode.
@fix
Test Plan: Run elementary_test -> execute multibuttonentry sample with editable set as false.
Reviewers: Hermet, seoz, woohyun, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2824
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: It has been observed that while scrolling of genlist with entry, clipping is not happening and "hit_rect" comes over navi item title. e.g. During theme change such scenario comes.
@fix
Test Plan: Scenario not in elementary test. Entry as content of genlist item. Same genlist should be the content of naviframe item. In this scenario genlist height must be grater than viewport sie so scrolling possible.
Reviewers: cedric, raster, Hermet, woohyun
Subscribers: rajeshps, govi
Differential Revision: https://phab.enlightenment.org/D2836
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
The numerical formula below is calculated with the double type.
-> h_pad / edje_object_base_scale_get(wd->resize_obj) * elm_widget_scale_get(obj) * elm_config_scale_get()
But if number of significant figure of the return value goes over 15, the epsilon error will happen.
Because of that, it is better to divide to do later.
Reviewers: woohyun, raster, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2872
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
We don't have event block area in mbe.
Item clicked callback is not called when user clicked the item in mbe shrinked state.
However, item press effect will be shown.
@fix
Test Plan:
Delete the line always calling expanded set API in MBE clicked callback.
Execute MBE sample in elementary_test.
Check the item got a click event but not call the clicked callback.
Reviewers: Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2870
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
After applying eo to elm_flipselector_item,
APIs in elm_flipselector_common.h are generated by eolian.
elm_flipselector_common.h is no more necessary.
Reviewers: Hermet, cedric
Reviewed By: cedric
Subscribers: Hermet
Differential Revision: https://phab.enlightenment.org/D2867
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
elm_calendar_weekdays_names_set() API is generated by eolian,
but its prototype is defined in both elm_calendar_common.h and
elm_calendar.eo.legacy.h.
Remove duplicated reference from elm_calendar_common.h
Reviewers: Hermet
Subscribers: Hermet
Differential Revision: https://phab.enlightenment.org/D2866
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
strftime is quite a bad POSIX API. You won't know the size it needs to put the strings in
until you did give it enough byte and it could also fail without a clear way to detect it.
So this patch work around that and introduce a currently internal helper that will be moved
later to Eina.
This patch has been triggered by the issue reported and the attempt fix from D2877.
Summary:
Converted docs of elm_diskselector.eo and elm_diskselector_item.eo to the new format
Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, q66
Reviewed By: q66
Differential Revision: https://phab.enlightenment.org/D2864
Summary:
Converted docs of elm_ctxpopup.eo and elm_ctxpopup_item.eo to new format
Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, q66
Reviewed By: q66
Differential Revision: https://phab.enlightenment.org/D2862