AT-SPI2 specification states that active window can have only one widget
with FOCUSED state. This differs from elementary design which assumes
that whole elementary widget tree branch is focused.
Patch assumes that if a widget have no focusable children and can have
focus it can be marked as FOCUSABLE on atspi bus.
Move enums from elm_win_common.h to elm_win.eo in order to make them
more accessible for bindings.
Moved the include for elm_win.eo.legacy.h to the top of elm_win_legacy.h
to allow the use of the generated types in the function declarations.
This commit adds the Eolian class elm_win_standard.
It is basically a derivation from elm_win that creates a default background.
The intent is to replace the legacy functions elm_win_util_standard_add and
elm_win_util_dialog_add by functions accessible via Eo API functions such as
eo_add and eo_do.
To fully replace an elm_win_util_standard_add call, use:
eo_add(ELM_WIN_STANDARD_CLASS, NULL,
elm_obj_win_name_set("example"),
elm_obj_win_type_set(ELM_WIN_BASIC),
elm_obj_win_title_set("Example"));
Removed the constructing method elm_obj_win_constructor.
Now "name" and "type" are properties that must be set at creation, like this:
eo_add(ELM_WIN_CLASS, NULL,
elm_obj_win_name_set("example"),
elm_obj_win_type_set(ELM_WIN_BASIC));
Also, the "title" property can be set at creation now.
Summary:
There could be a demand for providing subtle different item styles
according to the existence of icon or text swallowed in genlist item.
For example, if icon exists, genlist item shows icon, or show rectangle
where icon should be placed.
One style can have various form with this signal.
Reviewers: Hermet
Subscribers: Hermet
Differential Revision: https://phab.enlightenment.org/D2348
This commit also updated one of the elementary test to show
the new one of doing it.
This lets users of the API just add a callback and automatically
get animation ticks. It's done per window, because update rate
may be different for different windows (think different screens).
Summary:
Some newly implemented attributes are not present in several classes and
interfaces.
This patch:
- Adds some attributes (like @nullable, @optional, own, free) to several .eo files.
- Changes some eina types names to the equivalent eolian name (like "Eina_Bool" to "bool")
- Adds the element type of lists and iterators.
Reviewers: felipealmeida, tasn
Reviewed By: tasn
Differential Revision: https://phab.enlightenment.org/D2350
Jupp, its a dirty hack but it helps to work around the problem for now and
get the release out. I will revert it in master after the release and we
keep the bug open until this is fixed and hopefully backported.
ref T2367
This should be a proper fix for T1717. Idea is that we build a list of operation
that needs to be deferred in order (including pop and push) so that we are sure
we can pop and push in any order without the need to wait for any event.
Changed all the callback_call to pass the correct Elm_Object_Item
(Eo) pointer, was passing Elm_Slideshow_Item_Data instead.
@fix
Also updated the test
Summary:
If current item is disabled, next item should be
taken.
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>
@fix
Reviewers: raster, Hermet
Subscribers: singh.amitesh, sachin.dev
Differential Revision: https://phab.enlightenment.org/D2458
Summary:
fix the _item_multi_select_down() function for
ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY select_mode.
_item_multi_select_up is right, but _item_multi_select_down is wrong.
So fixed this.
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>
@fix
Reviewers: Hermet, raster
Reviewed By: raster
Subscribers: sachin.dev, singh.amitesh
Differential Revision: https://phab.enlightenment.org/D2452
Summary:
After discussion with DaveMDS, D2402 is a wrong fix and must be reverted.
This reverts commit a7978f931a4b67820b6b65758ce6f362c1ebec70.
Reviewers: cedric, DaveMDS
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D2437
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
When content is resized, scrollbar's position is not updated.
Add bar position update after bar size is changed.
Test Plan: elementary_test -> scroller3
Reviewers: seoz, jaehwan, woohyun, cedric, raster, kimcinoo, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2419
Summary:
incorrect evas_object_box_children_get usage: returned list must be freed
@fix
Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet
Differential Revision: https://phab.enlightenment.org/D2412
Summary:
1.) Fixing defective label position.
Whenever user create multibuttonentry and set some text into label,
label will be shown at zero point (0,0) of MultiButtonEntry parent.
But then, after clicking on any button of MBE object, label position forced to
be recalculated and changes it's position.
2.) Fixing wrong size when label is not used.
When label is not being used, buttons shift by few pixels,
and it looks like if label is actually there, which is wrong.
@fix
Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet
Reviewed By: Hermet
Subscribers: NikaWhite
Differential Revision: https://phab.enlightenment.org/D2416
Summary:
The entry inactive signal emitted when finish spinner value set.
but the active signal emitted after that. so it makes weird view state.
The function 'key_action_toggle()' called twice. (for entry, spinner)
event propagate called this func twice and its make this issue.
This patch makes to ignore toggle event when entry is not visible.
T2262
Test Plan:
Run elementary_test, execute spinner widget sample.
Click the first spinner.
Input something on entry.
Press enter key.
Check the issue.
Reviewers: raster, Hermet
Subscribers: kuuko
Differential Revision: https://phab.enlightenment.org/D2411
Summary:
There is a invisible prev button. but it can get a focus and delete the current naviframe item.
Its not intend to added here i think, so i add a function that not add prev button automatically.
Test Plan:
Run elementary_test -> Naviframe Complex
Move focus use arrow key button and input enter key on prev button.
Click the View list, check the ERR msgs.
Reviewers: Jaehyun, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2420
Summary:
While setting theme currently changes style and theme to all button and
whole multibuttonentry object, it doesn't change few other parts of this object.
Part are, for examples, "guidetext", "label" and "closedbutton".
Fixing this sad mistake leads to be able to create different styles for such
wonderful widget.
@fix
Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet
Reviewed By: Hermet
Subscribers: NikaWhite
Differential Revision: https://phab.enlightenment.org/D2407
Summary:
Reloading image in zoom in/out only if its previous orientation was changed
@fix
Signed-off-by: kabeer khan <kabeer.khan@samsung.com>
Reviewers: jpeg, raster, cedric
Differential Revision: https://phab.enlightenment.org/D2402
Summary:
Even if the given Evas_Object is NULL, API returns ELM_INPUT_PANEL_LAYOUT_NORMAL.
But, ELM_INPUT_PANEL_LAYOUT_INVALID seems proper in that case.
Test Plan:
Call the following API with NULL.
elm_entry_input_panel_layout_get(NULL);
Reviewers: woohyun, Hermet, eunue
Reviewed By: eunue
Differential Revision: https://phab.enlightenment.org/D2404
Summary:
Currently zoom in/out rotated or flipped image was causing lost of orientation
and aspect of image is also changed. Fixed that by reloading image on pan_obj on zoom
@fix
Signed-off-by: kabeer khan <kabeer.khan@samsung.com>
Reviewers: DaveMDS, jpeg, cedric, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D2381
Summary:
In case of mirror enabled, wanted x should come from _elm_scroll_x_mirrored_get().
This defect is visible in case of some fancy effects on scroller (map).
@Fix
Reviewers: raster, Hermet
Subscribers: herdsman, sachin.dev, kimcinoo, eagleeye, seoz
Differential Revision: https://phab.enlightenment.org/D2363
when insert a new item before/after an item, the relative item should not be NULL.
this patch fixes naviframe, gengrid, genlist, list, and toolbar.
@fix
Summary:
theme change was delayed untill some other change (i.e. mode change, clock update)
@fix
Test Plan:
1. create new style "test" for elm_clock
2. add this style to theme
3. compare results of following modifications of src/examples/clock_example.c:
```
/* am/pm */
ck = elm_clock_add(win);
elm_object_style_set(ck, "test"); //style is applied before ap_pm set
elm_clock_show_am_pm_set(ck, EINA_TRUE);
```
and
```
/* am/pm */
ck = elm_clock_add(win);
elm_clock_show_am_pm_set(ck, EINA_TRUE);
elm_object_style_set(ck, "test"); //style is applied after ap_pm set
```
ExR: style is applied in both cases
Result without this patch: style is applied only in first case
Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D2349
Summary:
Checkbox should support a third state "indeterminate" along with "Checked" and "Unchecked"
This third state is a state of checkbox which is shown when checkbox is neither Checked nor Unchecked.
- Added this new feature on the basis of a boolean variable's value.
- By default this boolean variable is disabled and checkbox will treat like old way.
- While adding this, I kept in mind, that applications which are already using checkbox, should not be affected, so I used 0=False=Unchecked, 1=True=Checked, and 2=Indeterminate
- Also added an example check_example_o2.c, which is using checkbox with both ways, using boolean, and using enum.
- Now also values can be set using boolean values, but it will give a type casting warning. As a boolean doen't support third state, so I used an enum int like.
- Added APIs to enable disable third state mode. elm_check_three_state_mode_set(check_obj, bool_val), and elm_check_three_state_mode_get(check_obj)
- Modified old APIs which were setting or getting states of checkbox.
- Added a state in theme of checkbox, with third state image.
Reviewers: seoz, raster, Sergeant_Whitespace, Hermet
Subscribers: Hermet, Sergeant_Whitespace, sachin.dev
Differential Revision: https://phab.enlightenment.org/D2249
Summary:
using theme of the object instead of default for subparts.
@fix
Reviewers: cedric, seoz, Hermet, raster, reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D2370
Summary: This fixed the elm_win_window_id_get function when running in
wayland to return the ecore_wl_window_id rather than the surface id.
This change is necessary so that anyone calling this function can use
the return value in ecore_wayland function calls.
NB: Thanks to Hermet for pointing this out ! :)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
The surface and context should not be current when deleted.
Evas GL would work just fine but since it deletes the surface
and context immediately upon request, those should not be
current.
This is a slightly different behaviour from EGL.
Flipselector has some random whitespaces that do not belong.
Additionally there are a few hidden non-blocking spaces that prevent
edje_cc to compile the default.edc on arm. Appearantly on x86/amd64 this
works normally.
This patch works around T2285 while the issue should remain open as the
real issue, edje_cc treating nbsp as a whitespace on arm, is not fixed
through this patch.
ref T2285
Signed-off-by: Olliver Schinagl <o.schinagl@ultimaker.com>
Without any locking or thread-safe mechanism, the previous implementation
would have failed as soon as too many file_set() happened on the same
object. Indeed, file_set() can happen while the async open thread is
running. I shouldn't have blindly listened to Cedric :P
Summary:
Issue: Mirroring of elm_panel not working correctly.
Solution: Handle mirroring appropriately for animations.
@fix
Test Plan:
Case: 1
1. Open elementary_test
2. Mirror on
3. Open scrollable panel, click on toggle button.
Case: 2
1. Keep the scroller panel opened
2. Turn off Mirror
Case: 3
1. Turn on mirror
2. Check direction button in non-scrollable panel.
Reviewers: shilpasingh, raster, Hermet, Princekrdubey
Reviewed By: shilpasingh
Subscribers: poornima.srinivasan, subodh6129
Differential Revision: https://phab.enlightenment.org/D2237
Summary:
Some APIs need to return specific values for their usage.
For Examples, elm_xx_select_mode_get function need to return
ELM_OBJECT_SELECT_MODE_MAX when invalid input comes.
**Fixed API list :**
elm_list_mode_get
elm_list_multi_select_mode_get
elm_genlist_mode_get
elm_genlist_select_mode_get
elm_genlist_multi_select_mode_get
elm_genlist_item_type_get
elm_genlist_ttem_index_get
elm_genlist_item_select_mode_get
elm_gengrid_select_mode_get
elm_gengrid_multi_select_mode_get
elm_gengrid_item_index_get
Test Plan: Call API with NULL parameter and check return value.
Reviewers: Hermet, seoz, jaehwan, raster, eunue
Subscribers: id213sin
Differential Revision: https://phab.enlightenment.org/D2306
Since the latest elm colorclass changes we need eldbus-codegen to generate
some files. Not all setups have this in their normal $PATH so let allow these
setups to set the correct path during configure. This allows our Jenkins setup
as well as others to work again.
why have elm image repeat events always (and unable to stop it)? this
is neither useful nor convenient. it's just painful. it makes images
not behave like prety much every object. they already are set up to
capture events - then do it normally.
@fix
Without depth, glview / evas gl basically fall back to indirect rendering.
Also change bg color from yellowish to brown (and use PREMULTIPLIED
colors, not random values).
This will allow apps to set the proper viewport, even if the
actual surface geometry didn't change.
This fixes a rare situation where the mode is changed from indirect
to direct (eg. in elm_test glview).
This commit enables generic broadcasting of changes in widget hierarcies.
Previously this kind of broadcasting had to be implemented inside widget.
This solution is using elm_widget sub_obj_add/sub_obj_del functions.