Commit Graph

49 Commits

Author SHA1 Message Date
Jean-Philippe Andre d4929e58fc elm: Remove some eo files from installation
These are some of the EO files that shouldn't be part of the public
EO API:
- elm_access (old)
- actionslider
- bubble
- diskselector
- flipselector (a fancy spinner)
- hoversel (use combobox instead)
- icon (use image instead)
- inwin
- naviframe (unreplaced for now)
- photo (use image)
- prefs
- segment control
- separator
- slideshow
- thumb (use image)

Note: This breaks the use of the elm_widget_xxx.h headers. Those
      were internal headers anyway. Exposed because of a lack of
      a proper inheritance API.
2016-10-26 13:42:54 +09:00
Jean-Philippe Andre 8a9f0bd603 evas/elm: Remove function group_resize
This is an override of efl_gfx_size_set. Same as before, the
order of operations matter so it is possible that a corner
case will break. In particular, legacy code was:
 - intercept
 - smart resize (do stuff), super, super, super
 - evas object resize

The new code is more like:
 - intercept
 - super, super, super, evas object resize
 - do stuff

But unfortunately this broke elm_widget (read: all widgets) as
the internal resize was done before the object resize. So,
inside the resize event cb, the resize_obj size would not match
the smart object size. >_<
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 11b7cf6b72 evas/elm: Remove function group_move
This is an override of efl_gfx_position_set.
As for the other patches, I hope I didn't break anything.

A problem likely to happen is that the super call was inserted
too early or too late in the call flow. For instance:

  _myclass_position_set(obj, x, y) {
    position_set(super(obj), x, y);
    position_get(obj, &prevx, &prevy);
    do_something_with_delta_xy();
  }

The above code flow is obvisouly wrong, but may have crept in this
patch (such a bug sneaked in inside smart object, breaking
everything at first).
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 97c9fa64a4 evas/elm: Remove group_show and group_hide
These should be just overrides of Efl.Gfx.visible.set. Many
widgets were handling smart show() and hide() manually, which
means this patch is quite large.

Hopefully this doesn't break anything, obviously. But here are
some widgets known to be problematic, as the old code flow was
really strange (sometimes not calling the efl_super function):
 - window
 - notify
2016-10-12 11:25:56 +09:00
Youngbok Shin 145f590f84 elementary entry: send a signal to edje for notifying scrollable mode
Summary:
If entry edje should be changed according to scrollable mode,
the signal will be used. The following signals are added.
	"elm,scroll,enable"
	"elm,scroll,disable"

Test Plan: N/A

Reviewers: raster, tasn, herdsman, cedric

Subscribers: minkyu, jpeg, akanad, z-wony, Blackmole

Differential Revision: https://phab.enlightenment.org/D4254
2016-09-26 16:11:10 +03:00
Andy Williams a050395770 elm: Fix edit popup menu order
Cut/Copy/Paste is the standard order most other places.
@fix
2016-09-17 23:58:55 +01:00
Tom Hacohen d5e321466e Efl object: Rename Eo_Event -> Efl_Event.
This is the last step of the Eo renaming efforts.
2016-08-30 13:34:10 +01:00
Vitor Sousa 8356b16a49 Efl Object: remove legacy callback calls from event_callback_call
Efl.Object.event_callback_call no longer calls legacy smart callbacks;
calling only event callbacks registered with the given event description
pointer.

Create the method Efl.Object.event_callback_legacy_call to inherit the old
behavior from Efl.Object.event_callback_call, calling both Efl.Object events
and legacy smart callbacks.

Update all other files accordingly in order to still supply legacy
callbacks while they are necessary.
2016-08-26 15:45:07 -03:00
Youngbok Shin b915d29cd1 Elementary: Load image for image item with proper orientation
Summary:
Image files can have orientation information. Elm Entry have to
call evas_object_image_load_orientation_set() for showing image
with proper orientation.

Test Plan: N/A

Reviewers: herdsman, raster, jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D4244
2016-08-18 14:09:16 +03:00
Tom Hacohen e65aae994e Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.

Obviously breaks both API and ABI.
2016-08-15 15:07:42 +01:00
Tom Hacohen c662934be8 Change the EFL to follow the new Eo rename. 2016-08-11 17:04:43 +01:00
Daniel Hirt 3eae9ff74f Elm.Entry: force cursor change on size_eval signal
This is a follow-up to ba060fe932.
Fixes T4274.
2016-08-08 16:47:22 +03:00
Cedric Bail a7bb1662e2 Revert "elementary/layout: attach edje object API with eo compositing"
This reverts commit 8a988717e1.

It seems we can't actually inherit from class more than once and neither eo
nor eolian will complain about it. You will just get random weird behavior.
This patch should come back once we have made an interface of edje.
2016-08-05 11:09:55 -07:00
Daniel Hirt 44569b859a Elm.Entry: use proper theme_set function on edje object
Shouldn't use elm_widget_theme_object_set for handlers/anchors here.

Fixes T4091.
@fix
2016-08-04 13:27:08 +03:00
Amitesh Singh ba060fe932 entry: allow force recalc on "size,eval" "elm" signal
Summary:
In some use cases, font (style) of elm.text in elm entry is changed
on focus and unfocus. user must send "size,eval",elm signal to entry to
force recalc, but this was not happening. This patch fixes that issue.

fixes T4233

Reviewers: tasn, herdsman, raster

Subscribers: cedric, seoz, jpeg

Maniphest Tasks: T4233

Differential Revision: https://phab.enlightenment.org/D4196
2016-07-28 15:22:07 +05:30
Shilpa Singh 5b791420ea Accessibility: Read pre-edit text.
Summary:
Edje_entry:  In order to read pre-edit characters as well,
send entry_change_info with preedit,changed
Elm_entry: In order to read pre-edit characters as well,
send text to screen reader on preedit,changed.

Test Plan:
1. Change keyboard language to korean/enable prediction
2. Check the reading, text should be read even before committing

Signed-off-by: Shilpa Singh <shilpa.singh@samsung.com>

Reviewers: thiepha, jihoon, cedric, raster

Reviewed By: raster

Subscribers: raster, kimcinoo, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4145
2016-07-11 10:36:39 +09:00
Hermet Park a099b6d2b3 Revert "elm_entry: remove unnecessary text clearing in text_set"
This reverts commit 38db4b4c03.

This changes entry behavior that introduce enventor break.
Can't accept it until that break is reasonable.
2016-07-07 11:15:12 +09:00
Jiwon Kim 38db4b4c03 elm_entry: remove unnecessary text clearing in text_set
Summary:
When text_set is called for entry, it sets to empty text
before calling _entry_text_append().
but, _entry_text_append() has 'set' parameter.
Therefore text is set in that function, and clearing is not needed.

It can fix "changed" smart callback is invoked multipe times
when a short text is set to entry.

In addition, if text length is larger than ELM_ENTRY_CHUNK_SIZE,
set text directly as amount of chunk size and idler will append
about remain text.

@fix

Test Plan:
1. elementary_test -to "entry5"
2. click "set 10000" button
2-1. changed message should be printed 1 time
3. click "set 10001" button
3-1. changed message should be printed 2 times

Reviewers: tasn, Hermet, id213sin, cedric

Reviewed By: cedric

Subscribers: woohyun, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4134

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-07-06 12:48:59 -07:00
Jinyong Park 3271ec8d18 theme: return enum from elm_widget_style_set instead of bool
Summary:
if trying to apply incorrect theme, widget apply default theme and return TRUE.
so there is no way to check it really apply correct theme.
To resolve this problem, _elm_theme_set return three type enum

* related history : 4ca3ef4514
* elm_object_style_set is public api, so I didn't change it.
* typedef name [ Theme_Apply ] is temporarily, please suggest better one.

@fix

Reviewers: singh.amitesh, herb, Hermet, cedric, jpeg, raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4073
2016-07-01 15:09:43 +09:00
Daniel Hirt ee36fdc218 Revert "elm: Fix wrong use of char instead of string and void out parameter"
This reverts commit 61f52a26fb.

This fixes the reported break on T4000.
2016-06-30 11:32:02 +00:00
Jee-Yong Um 8a988717e1 elementary/layout: attach edje object API with eo compositing
Test Plan: make check

Reviewers: Hermet, jpeg, cedric

Subscribers: slotus.lee

Differential Revision: https://phab.enlightenment.org/D3871

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-06-27 11:18:05 -07:00
Jiwon Kim 7a17f6fb47 elm_entry: restrict focus region to inside of entry object area
Summary:
Focus region must be located in entry object.
Therefore if it get out of entry,
 it just returns last cursor position that can be shown.

@fix

Test Plan:
1. elementary_test "Entry on Page Scroll"
2. click 2nd btn and close popup
3. page should not be scrolled

Reviewers: raster, herdsman, id213sin, woohyun, tasn, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4072
2016-06-27 15:45:10 +09:00
Hermet Park 61e5c9b8f0 Revert "elm_entry: fix duplicate text set"
This reverts commit 0959e87d99.

This broke the entry behavior that introduced enventor critical issue also.
It looks like a timing issue, but i didn't deep into further.

Please check a simple test case.
https://phab.enlightenment.org/F38614

Before/after applying your patch, the result is totally different.
2016-06-25 03:42:18 +09:00
WooHyun Jung 0959e87d99 elm_entry: fix duplicate text set
Summary:
When user set text to entry, "changed" smart callback is invoked 2 times.
Because entry set to ""(empty string) and append text internally.
But, in a recent, set flag is added for _entry_text_append().
So, empty string set is does not needed before appending.

@fix

Test Plan:
- elm_entry_entry_set(entry, "text") : 2 times invoked (bug)
- elm_object_part_text_set(entry, NULL, "text") : 2 times invoked (bug)
- elm_object_part_text_set(entry, "elm.text", "text") : 1 times invoked

Reviewers: herdsman, tasn, id213sin, woohyun

Reviewed By: woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4074
2016-06-23 10:07:33 +09:00
Jean-Philippe Andre 7bf8da2baa evas: Rename Evas.Object to Efl.Canvas.Object
One step closer to make the EO inheritance tree look like
it's all Efl.
2016-06-21 14:35:19 +09:00
Tom Hacohen 6202cc7485 Adjust the code according to the eo event stop changes.
This was changed in the previous commit.
2016-06-20 18:02:00 +01:00
Youngbok Shin 14cbd23d29 Edje, Elementary: Remove <password=off> tag when password mode is disabled
Summary:
When edje_password_show_last option is enabled, the edje_entry uses <password=off>
for showing last character. But, when password mode is disabled by the elm_entry,
<password=off> is remained in the text. It can cause some problems.

Because, there is no way to control password mode by API for the edje_entry.
The elm_entry can't remove <password=off> tag before getting text from the edje_entry.
So, the patch adds edje_object_part_text_hide_visible_password() function and
the elm_entry will use this when elm_layout_theme_apply() is called.
@fix

Test Plan:
1. Run "elementary_test".
2. Show "Entry Password" demo. (Newly added by this patch)
3. Password mode is enabled. Put some text.
4. Click "Show Password" check box to disable password mode.
5. Put more text.
6. Click "Hide Password" check box to enable password mode again.
7. See a character among the text is visible. (without this patch)

Reviewers: tasn, herdsman, cedric, jpeg, thiepha, raster

Reviewed By: raster

Subscribers: Blackmole, z-wony, woohyun

Differential Revision: https://phab.enlightenment.org/D3988
2016-06-20 21:11:25 +09:00
Jean-Philippe Andre 52f9220b3f Evas: Rename smart object into Efl.Canvas.Group 2016-06-17 19:32:43 +09:00
Jean-Philippe Andre 42b63f5507 Evas: Add smart_ prefix to all smart functions (eo)
This is a first step at separating legacy smart
object features away from standard efl interfaces.
2016-06-17 19:25:48 +09:00
Jean-Philippe Andre 9a052a740d Evas: Move smart_callbacks_descriptions to legacy 2016-06-17 19:25:47 +09:00
Jean-Philippe Andre b2355d7da3 Evas: Rename Selectable_Interface to Efl.Ui.Selectable 2016-06-10 18:06:15 +09:00
Jean-Philippe Andre 31c4fd1f7c Evas: Rename Scrollable_Interface to Efl.Ui.Scrollable 2016-06-10 18:06:15 +09:00
Jean-Philippe Andre e691de04be Evas: Rename Clickable_Interface to Efl.Ui.Clickable
Event prefix is efl_ui:
 EFL_UI_EVENT_CLICKED
 EFL_UI_EVENT_CLICKED_DOUBLE
 ...

The event prefix could be reduced to efl but I personally
prefer with UI.
2016-06-10 17:33:53 +09:00
Jean-Philippe Andre 37625fca91 Evas/Edje/Elm: Use combined_min instead of min everywhere
This allows apps to set the objects min size with hint_min,
while letting the rest of EFL define the minimum size with
rstricted_min.

I don't like the property names much...
2016-06-09 16:37:49 +09:00
Ji-Youn Park 8cf9ee67bd efl_ui_win: rename elm_win to efl_ui_win 2016-06-07 23:11:48 +08:30
Felipe Magno de Almeida 61f52a26fb elm: Fix wrong use of char instead of string and void out parameter 2016-06-06 02:47:15 -03:00
Jean-Philippe Andre 99924852ab Efl: Remove part name in Efl.Container (use Efl.Part)
This touches Edje and also Elementary where part names are used.
This commit blew up in size since now all content part APIs
(get, set, unset) require to use Efl.Part instead.

This is a big refactoring commit, but no logic should
have been changed. Fingers crossed.
2016-05-26 19:55:50 +09:00
Jiwon Kim f20f4c6e50 Elm entry: fix returning wrong focus region
Summary:
In on_focus_region function,
entry returns relative x,y position from edje object.
It should be calculated from elm object's position.

@fix

Test Plan:
1. $elementary_test "Entry on Page Scroll"
2. click under button
3. click upper text in entry
4. page should not be scrolled

Reviewers: tasn, cedric, woohyun, Hermet, herdsman, raster

Subscribers: Blackmole, id213sin, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3923
2016-05-26 17:25:57 +09:00
Cedric Bail 75a53ece10 eo: for consistency use object like all our API. 2016-05-18 08:18:04 -07:00
Daniel Kolesa 7782c0bcb9 eolian: add event_prefix and have classes follow that or eo_prefix by default
Previously events used to use class name as a prefix and ignored eo_prefix
when specified. This is no longer the case. Events follow eo_prefix by default
now. In order to get around this for classes where this is undesirable, a new
field event_prefix was added which takes priority over eo_prefix. If neither
is specified, class name is used like previously.

@feature
2016-05-17 17:50:43 +01:00
Tom Hacohen 6760e05968 Elm interface atspi editable text: Fix namespacing. 2016-05-12 11:45:46 +01:00
Youngbok Shin e49d84f057 entry: add elm_entry_select_allow_set/get APIs
Summary:
There is no way to allow/deny the text selection feature.
It is only controlled by disabled state. But, some UX does
not want to allow the text selection on editable entry widget.
@feature

Test Plan:
Run the following test case. You can see "Select Allow" check box.
elementary_test -to entry

Reviewers: tasn, herdsman, cedric, thiepha

Reviewed By: thiepha

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3934
2016-05-12 11:10:42 +09:00
Mike Blumenkrantz ec3cb83185 Revert "elm entry: remove unused funtions"
This reverts commit 2e68debe7b.

ref T3455
2016-05-10 13:23:05 -04:00
Thiep Ha b39d869b7a elm entry: add more control for dnd
Adding dnd's enter, leave, position callbacks to let users know
when drag item is entered, leaved; move cursor to follow
drag item's position.
2016-05-09 17:32:12 +09:00
Thiep Ha 2e68debe7b elm entry: remove unused funtions
The _elm_entry_entry_paste is removed from elm_cnp.c.
It is unused now. We can remove it and related function.
2016-05-03 17:13:47 +00:00
Jean-Philippe Andre d962705e41 Elm.Layout: Protect some functions 2016-04-26 11:36:23 +09:00
Jean-Philippe Andre 902950018b Efl: Introduce Efl.Container and unify APIs
This removes Efl.Pack_Named which had a terrible name,
removes Elm.Container which should have been renamed
Efl.Ui.Container anyway, and introduces an interface
Efl.Container instead.

The hierarchy tree is now changed as objects don't inherit
from Efl.Container (it's an interface, not a regular class)
but only implement it. Obviously it is very easy to
reintroduce an Efl.Ui.Container parent class if we need it,
but I guess it should have some actual logic. It's basically
part of what Elm.Widget already does.

Some function names have been modified to look better in C
with the efl_content prefix.

@feature
2016-04-26 11:36:23 +09:00
Tom Hacohen f14305024e Eo event: rename Eo_Event->event_info to Eo_Event->info.
The previous naming was redundant and too long.
2016-04-12 15:23:55 +01:00
Cedric BAIL c2a1c49ab2 elementary: move all legacy files to their expected new location. 2016-03-23 13:24:41 -07:00