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>