Commit Graph

15315 Commits

Author SHA1 Message Date
Chris Michael 3cd4a5e77f elementary: Fix resource leak
Coverity reports a resource leak here. According to eina_strbuf
documentation, the result of eina_strbuf_release should be
free'd when not needed anymore.

Fixes Coverity CID1383551

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-12-11 14:51:09 -05:00
Chris Michael 13d29eda98 elementary: Fix resource leak
Coverity reports a resource leak here. According to eina_strbuf
documentation, the result of eina_strbuf_release should be
free'd when not needed anymore.

Fixes Coverity CID1383550

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-12-11 14:49:29 -05:00
Chris Michael 1842945432 elementary: Fix resource leak
Coverity reports a resource leak here. According to eina_strbuf
documentation, the result of eina_strbuf_release should be free'd when
not needed anymore.

Fixes Coverity CID1383549

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-12-11 14:47:14 -05:00
Marcel Hollerbach ec56282186 efl_loop: we are creating there efl classes
we should also delete them with efl_del, ecore_timer is only for legacy
2017-12-11 12:58:22 +01:00
Marcel Hollerbach b4e21d7f4f efl_ui_focus_manager: this thing is not used anymore 2017-12-11 10:46:52 +01:00
Marcel Hollerbach c3a4fc7d64 efl_ui_focus_manager_calc: performe the second stage later
the second stage is not meant to be a transition in both ways, only
because the one item is closer does not mean a other one is closer.
2017-12-11 10:46:52 +01:00
Marcel Hollerbach 87cc19b94d efl_ui_focus_manager_calc: implement better relation calculation
The new calculation mechanism does not only look into the exact
directions up,right,down,left of a node, it also now checks the sectors,
bound by: x < node.x, x > node.max_x, y < node.y, y > node.max_y.

ref T6453
2017-12-11 10:46:52 +01:00
Marcel Hollerbach 22c7fb86d9 efl_ui_focus_manager_calc: refactor into its own stage 2017-12-11 10:46:52 +01:00
Marcel Hollerbach 44d7ff1fb3 efl_ui_focus_manager_calc: refactor calculation logic 2017-12-11 10:46:52 +01:00
Pawel Aksiutowicz a9a31715d9 evas: clean code of evas_common_cpu_can_do() in common/evas_cpu
Reviewers: stanluk, lukasz.stanislawski, jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5602
2017-12-11 17:18:55 +09:00
Sungtaek Hong cd1a466fd7 efl_ui_popup_scroll: remove build warnings
Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5640
2017-12-11 17:10:07 +09:00
Woochan Lee 4b2f1abc9f efl_ui_spin_button: Change property name to avoid name duplicating.
Summary:
The name 'loop' is already there in efl canvas.

loop -> circulate.

Test Plan: elementary_test -> efl_ui_spin_button test.

Reviewers: jpeg, Jaehyun_Cho, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5639
2017-12-11 16:45:27 +09:00
Taehyub Kim 54a53a14e7 Efl.Ui.Popup.Alert: add message signal process function for scroller size calculation
Summary:
add message signal process function for scroller size calculation
@fix

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5618
2017-12-11 16:12:15 +09:00
Jaehyun Cho f98d1e52ba efl_ui_popup_alert_scroll: Move BETA macro before Elementary.h 2017-12-11 16:12:13 +09:00
Vincent Torri 771bb6e6a7 Evil: use static buffer to store error messages
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5394
2017-12-11 16:04:02 +09:00
Amitesh Singh 196b6f1ba4 interface: rename Efl.Dup to Efl.Duplicate.
dup is considered too short and maybe confusing,
hence rename it to duplicate instead.
2017-12-11 15:25:31 +09:00
Jaehyun Cho f394db44fc efl_ui_popup_alert_scroll: Add expandable property
Summary:
The expandable property allows popup to expand its size up to the given
maximum size.
So by setting expandable property, popup expands its scrollable content
size from the minimum size of the content to the given maximum size.

Reviewers: jpeg

Subscribers: cedric, thiepha, woohyun, Blackmole, herb

Differential Revision: https://phab.enlightenment.org/D5630
2017-12-11 14:00:21 +09:00
Jaehyun Cho 2d422482d3 efl_ui_popup_alert: Remove unnecessary elm_layout_sizing_eval 2017-12-11 13:33:15 +09:00
Jaehyun Cho 10761cf2f5 efl_ui_popup: Update size calculation logic
Instead of doing size calculation whenever elm_layout_sizing_eval() is
called, do size calculation when the object is rendered like
efl_ui_layout.
2017-12-11 13:33:12 +09:00
Taehyub Kim 0096a8aa3c Efl.Ui.Popup: add popup_size property
Summary: add popup_size property

Test Plan:
1. run elementary_test -to efl.ui.popup
2. check the popup

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5600
2017-12-11 13:32:49 +09:00
Taehyub Kim adddeabda2 Efl.Ui.Popup: calculate the alignment when the size is changed
Summary: calcuate the alignment when the size is changed

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5554
2017-12-11 13:32:11 +09:00
Shilpa Singh 9128b9001f elm_entry: if cnp mode is PLAINTEXT, & do not get pasted
Summary:
if cnp mode is PLAINTEXT mode, & do not get pasted issue fix and
conversion(markup to utf8) should happen only for PLAINTEXT mode

Test Plan:
Set PLAINTEXT cnp mode to entry and paste text consisting
of &

Reviewers: thiepha, herdsman

Subscribers: cedric, govi, rajeshps, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5470
2017-12-11 11:44:16 +09:00
Stefan Schmidt ec18f8a5e0 docs: even document this external types
They might be removed later but right now they have been the last two
items blocking 100% doc coverage in the EO files.
2017-12-08 17:10:06 +01:00
Stefan Schmidt 5f288dfde0 docs: add the last docs for efl_io_manager eo class 2017-12-08 17:09:46 +01:00
Stefan Schmidt 2cd8c4adb4 docs: add the last missing items for eo files in efl/interfaces 2017-12-08 17:08:56 +01:00
Stefan Schmidt 44f18909ca docs: add missing items for efl_gfx* eo classes 2017-12-08 17:06:50 +01:00
Stefan Schmidt b4b2711408 docs: fil in missing items for efl_model eo class 2017-12-08 17:04:35 +01:00
Stefan Schmidt 6902a68492 docs: fix last missing doc item for elm_code eo class 2017-12-08 16:17:27 +01:00
Stefan Schmidt fa270a8a2b docs: document the elm_calendar_item eo class 2017-12-08 16:17:27 +01:00
Stefan Schmidt 7c6ce2a532 docs: fill in last missing bits for efl_ui_popup* eo classes 2017-12-08 16:17:27 +01:00
Stefan Schmidt 1aeec585b9 docs: fill missing items in efl_interpolator_* eo classes 2017-12-08 16:17:27 +01:00
Stefan Schmidt 2ed7084456 docs: fill in missing documentation ein efl_gesture* eo classes 2017-12-08 16:17:27 +01:00
Stefan Schmidt 7bc3ea400c docs: add last missing documentation in efl_animation_object 2017-12-08 16:17:27 +01:00
Stefan Schmidt 246b44ed35 docs: fill in all missing item documentation for efl_ui_focus_*
There has been gaps in various files. Makre sure we have them all
covered.
2017-12-08 16:17:27 +01:00
Amitesh Singh 39793f4cd5 evas_event: add missing comments about code. 2017-12-08 22:58:34 +09:00
Amitesh Singh b734c132f9 efl.canvas.object: implement pointer_inside of Efl.Canvas.Pointer.
remove eo apis pointer_in, pointer_device_in, pointer_inside_get &
pointer_inside_by_device_get and add legacy APIs for
pointer_inside_get & pointer_inside_by_device_get.
These four APIs do almost same things.
2017-12-08 20:13:31 +09:00
Amitesh Singh 80463f0e2e interface: add Efl.Canvas.Pointer intf for pointer related functions.
and remove pointer_inside function from Efl.Canvas{}
2017-12-08 20:13:31 +09:00
Sungtaek Hong 1503fb5359 efl_ui_spin: apply new theme set policy
Summary: Applied new theme group name. Moved logic in finalize to constructor.

Test Plan: Run elementary_test->Efl.Ui.Spin, Efl.Ui.Spin.Button, Part_Background

Reviewers: jpeg, woohyun, CHAN

Reviewed By: CHAN

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5592
2017-12-08 16:02:24 +09:00
Sungtaek Hong e2dee2c92b efl_ui_clock: remove warning
Summary: separator0 part was not text part, thus printing error.

Test Plan: Run elementary_test->Efl.Ui.Clock

Reviewers: jpeg, woohyun, cedric

Differential Revision: https://phab.enlightenment.org/D5629
2017-12-08 16:02:24 +09:00
Sungtaek Hong a9bb425dd5 elm_entry: remove warning during construct
Summary:
elm_layout_theme_set calls theme_apply, which means
 some of the components might not be initialized.

Test Plan: Run elementary_test->check no more ERR shown.

Reviewers: jpeg, woohyun

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5564
2017-12-08 16:02:24 +09:00
Youngbok Shin 300ded6c30 efl_ui_text: apply new theme logic and use constructor/destructor
Summary:
It removes legacy aliases from efl_ui_text's theme.
And it also move all code from group add/del overriding functions to
constructor/destructor.
@fix

Test Plan: N/A

Reviewers: jpeg, taxi2se

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5601
2017-12-08 16:02:24 +09:00
Woochan Lee 9d2141b5a3 efl_ui_multibuttonentry: Apply lazy edc, code clean up.
Summary: Apply lazy edc, code clean up.

Test Plan: elementary_test -> multibuttonentry sample.

Reviewers: jpeg, taxi2se, Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5607
2017-12-08 16:02:23 +09:00
Jean-Philippe Andre 3e9825cb96 eo: Remove trailing newline in ERR message 2017-12-08 16:02:23 +09:00
WooHyun Jung cd79611626 efl_ui_calendar: apply new theme policy
Reviewers: jpeg, taxi2se

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5578
2017-12-08 16:02:23 +09:00
Jaehyun Cho 1f1c3b9b27 efl_ui_popup: Fix class names 2017-12-08 16:02:23 +09:00
Sungtaek Hong 220fa4c178 efl_ui_popup_alert: refactor popup_alert_part
Summary: remove redundant logic for button part.

Test Plan: Run elementary_test->Efl.Ui.Popup_alert

Reviewers: jpeg, Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, Blackmole, herb

Differential Revision: https://phab.enlightenment.org/D5577
2017-12-08 16:02:23 +09:00
Sungtaek Hong e7e375937b elm: introduce ELM_PART_OVERRIDE_PARTIAL
Summary:
ELM_PART_OVERRIDE_PARTIAL replaces ELM_PART_OVERRIDE and
ELM_PART_OVERRIDE_ONLY_ALIASES.
The difference is ELM_PART_OVERRIDE_PARTIAL calls super
ELM_PART_IMPLEMENT when subclass of part is not needed.

Test Plan:
Run elementary_test, Part Background, background part is well set.
           Run efl.ui.panes/efl.ui.flip, check content is well set.

Reviewers: jpeg, Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5566
2017-12-08 16:02:23 +09:00
Sungtaek Hong c12d947484 efl_ui_popup: remove unnecessary overides
Summary:
efl_ui_popup parts overrides efl_content and efl_text
         which are sometimes not needed.

Test Plan: Run elementary_test -> efl_ui_popup tests

Reviewers: jpeg, cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Jaehyun_Cho, Blackmole, herb

Differential Revision: https://phab.enlightenment.org/D5556
2017-12-08 16:02:23 +09:00
Woochan Lee 1588b8be0a efl_ui_spin_button: Replace legacy widgets to efl ui widgets.
Summary:
elm_button -> efl_ui_button class.

elm_entry will be changed after filter feature added.

Reviewers: Jaehyun_Cho, jpeg, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5555
2017-12-08 16:02:23 +09:00
Sungtaek Hong 5e4abdb873 efl_ui_popup: apply new theme logic for alert_scroll, alert_text 2017-12-08 16:02:22 +09:00
Sungtaek Hong 22c5f771be efl_ui_popup: apply new theme logic for efl_ui_popup 2017-12-08 16:02:22 +09:00
Sungtaek Hong 3490da0fff elm_code_widget: change efl_add to legacy_add
Summary:
elm_code_widget is legacy add, thus efl_add is not available.

Signed-off-by: Sungtaek Hong <sth253.hong@samsung.com>

Reviewers: jpeg, cedric, ajwillia.ms, woohyun

Differential Revision: https://phab.enlightenment.org/D5548
2017-12-08 16:02:22 +09:00
Sungtaek Hong 751cf2c0d0 efl_ui_widget: make Elm.Widget.theme, Elm.Widget.theme_object internal 2017-12-08 16:02:22 +09:00
Sungtaek Hong fc8cc4a9b3 efl_ui_widget: find theme just once in layout inherited widget
When a widget inherits layout in tries to set theme in group_add or in
constructor. When another widget inherits the previous widget, it sets
layout again with new klass name. This sets klass in the widget and
sets layout in super class, so that it can set layout only once.

Test Plan: Run efl_ui_widget related elementary test.

Reviewers: jpeg, cedric, woohyun, singh.amitesh

Differential Revision: https://phab.enlightenment.org/D5473
2017-12-08 16:02:22 +09:00
Sungtaek Hong f80ab519af efl_ui_widget: use elm_widget_element_update to set subobj edc
affected widget list:
efl_ui_clock: test, ampm
efl_ui_multibuttonentry: guidetext, label, closedbutton
efl_ui_slider: popup(indicator)
efl_ui_text: scroller, handler, magnifier, cursor, selection, anchor
2017-12-08 15:57:26 +09:00
Sungtaek Hong dd4467505e efl_ui_widget: find new edc resource for efl_ui_widgets
new eo widgets(efl_ui_ prefix) finds new edc group in
data/elementary/themes/edc/efl/*.edc.
New group name is "klass/group:style" and "base" group name and
"default" style name can be omitted.

for now, separator for style is ':' but needs to be decided.
2017-12-08 15:57:26 +09:00
Sungtaek Hong cff9b1b11a efl_ui_widget: add new internal EAPI for new group name
theme_klass: set/get klass name used for resize_obj
theme_element: set/get group name used for resize_obj
theme_style: set/get style name used for resize_obj
element_update: automatically sets and apply theme for
             sub object of widget.
2017-12-08 15:57:25 +09:00
Andy Williams bdcd034af5 elm_code: Update background handling to work with transparency better 2017-12-07 23:39:49 +00:00
Andy Williams 1a5d6fa93a elm_code: Adding initial support for alpha channel 2017-12-07 23:39:49 +00:00
Daniel Kolesa 535fa0e8f1 eolian: no need to init eina in db 2017-12-07 19:11:58 +01:00
Daniel Kolesa 3ebd1f1506 eolian: store units in state 2017-12-07 19:11:58 +01:00
Daniel Kolesa 8653d8cd73 eolian: properly free all hashes in state free 2017-12-07 19:11:58 +01:00
Daniel Kolesa e7bf69fc04 eolian: make deferred parsing map non-global 2017-12-07 19:11:58 +01:00
Daniel Kolesa 2343e6cc54 eolian: make parsing/parsed files mapping non-global 2017-12-07 19:11:58 +01:00
Andy Williams 9d09d722b9 eina: Update header for readability
Author Nate Drake
Reviewer: Andy Williams
2017-12-07 16:21:11 +00:00
Jean-Philippe Andre ec8fe2a8f3 eo: Fix warning when Eo.h is used from C++ 2017-12-07 12:48:00 +09:00
Jean-Philippe Andre 3c68a8afc9 eo: Remove unnecessary defines from the EO file
Those promise/future APIs are not required in the EO files.
2017-12-07 11:25:40 +09:00
Jean-Philippe Andre e4797e75f7 eo: Move unnecessary eina type out of the EO file 2017-12-07 11:22:11 +09:00
Jean-Philippe Andre fa786667b8 edje: Rename events according to recent rename
Ref T5315
2017-12-07 10:24:08 +09:00
Lauro Moura c5ff7f0f46 eolian_cxx: Fix Eolian_Unit support
Summary:
Unit is now stored in klass_def, parameter_def and function_def for
future calls to the Eolian API.

Reviewers: felipealmeida, jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5613
2017-12-06 19:10:40 -03:00
Marcel Hollerbach eee6fbad78 focus: more testcases! 2017-12-06 16:10:18 +01:00
Marcel Hollerbach c1c58cfb69 efl_ui_focus_manager_calc: fix first touch setup for none regular tests
we had the issue that we stopped looping if we are a regular end. but we
need to continue until we have no rec_manager anymore.
2017-12-06 16:10:18 +01:00
Daniel Kolesa 9a5c3cfbe2 eolian: remove internal state struct (rely on external Eolian state) 2017-12-06 15:07:31 +01:00
Daniel Kolesa a39d2e8fe5 eolian: move filenames hashes to state 2017-12-06 15:07:31 +01:00
Daniel Kolesa a25327c62e eolian: move constants to temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 21db23f702 eolian: move global vars to temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 7491f9353f eolian: move enums to temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 51ec796497 eolian: move structs to temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 8428eaa663 eolian: store aliases in temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 9fb3abc662 eolian: store classes in temporary state 2017-12-06 15:07:31 +01:00
Daniel Kolesa 14cd25a8d3 eolian: create an internal temporary state 2017-12-06 15:07:31 +01:00
Shinwoo Kim 763c634dce elm: Use EFL_UI_WIN_CLASS to check if an object is window
The EFL_ACCESS_WINDOW_INTERFACE was used to check if an object is window.
This could make sense. But it would be better to use EFL_UI_WIN_CLASS for
consistency.
2017-12-06 14:54:49 +09:00
Shinwoo Kim 6a6685ab21 elm: Fix _elm_widget_onscreen_is for window
A window is using ecore_evas geometry value for its evas_object geometry value.
The evas_output_viewport x(y) value which is used in _elm_widget_onscreen_is
is always 0. So _elm_widget_onscreen_is could return EINA_FALSE, if ecore_evas
geometry x(y) value is bigger than 0, even though a window object is on screen.
So it is not correct to compare ecore_output_viewport and evas_object geometry
for a window object. Moreover it does not make sense.
2017-12-06 14:23:44 +09:00
Amitesh Singh 54ae9cc18b edje: rename Edje.Object to Efl.Canvas.Layout 2017-12-06 13:12:29 +09:00
Amitesh Singh b3715d30bb Efl.Canvas.Object.eo: indent correction 2017-12-06 11:17:09 +09:00
Marcel Hollerbach f533ab94d8 eo: add definition of function back 2017-12-05 20:53:12 +00:00
Andy Williams b6b0fac978 eo: Update header for readability
Author: Nate Drake
Reviewer: Andy Williams
2017-12-05 17:04:19 +00:00
Marcel Hollerbach 78afa2fb84 efl_ui_focus_user/object: fix api duplication
just like the commit before, this fixes duplicated api names
2017-12-05 17:19:28 +01:00
Marcel Hollerbach baf624680d efl_ui_focus_manager: fix api duplication 2017-12-05 17:19:28 +01:00
Daniel Kolesa 8a1f93f698 eolian: pass state where necessary
This modifies the API so that global state removal is made
possible. It's still used internally for now but externally
the state is contained.
2017-12-05 16:41:42 +01:00
Daniel Kolesa 67e1c2ab88 eolian: add initial refcounting for database objects
This will be necessary once the unit system is in (it will be used
to keep track of multiple references to objects across units).
2017-12-05 16:41:42 +01:00
Daniel Kolesa 2a0f873c84 eolian: pass unit within validation engine 2017-12-05 16:41:42 +01:00
Daniel Kolesa e83e089765 eolian: contain master state in a larger structure 2017-12-05 16:41:42 +01:00
Daniel Kolesa 53aa99550d eolian: add API for master unit creation 2017-12-05 16:41:42 +01:00
Daniel Kolesa 6abb24b717 eolian: create an actual unit structure for files
Units now form an actual tree stored in their own hash. This will
later replace all global state of Eolian, by introducing a master
unit that you will pass around.
2017-12-05 16:41:42 +01:00
Yeongjong Lee 93492bcc3b elm_widget: simplify _eval_registration_candidate
Test Plan: make check

Reviewers: bu5hm4n, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5588
2017-12-05 18:35:31 +09:00
Amitesh Singh bdc3969452 edje: rename intf Efl.Canvas.Layout_Group to Efl.Layout.Group 2017-12-05 16:18:32 +09:00
Amitesh Singh c7aa3b2f83 edje: rename intf Efl.Canvas.Layout_Calc to Efl.Layout.Calc 2017-12-05 16:18:32 +09:00
Amitesh Singh 7b3fde4d4b edje: rename intf Efl.Canvas.Layout.Signal to Efl.Layout.Signal 2017-12-05 16:18:32 +09:00
Jean-Philippe Andre b867b6aa24 ecore_wl2: Fix a warning 2017-12-05 15:06:34 +09:00
Jean-Philippe Andre 207a0cf3e3 eo: Move hacky API auto_unref to C only
This API is meant to be used by parts only, and by bindings dealing with
part objects. This patch fixes make check which got broken in the after
the previous one (cxx).
2017-12-05 15:06:34 +09:00
Jean-Philippe Andre 8cdb3184f8 cxx: Fix compilation after merge
This resolves a few issues and brings back the experimental features.

Also, disable some of the ugliest experiments:
 - manual function overrides,
 - define APIs only in eo_cxx namespace

Some APIs are generated behind EFL_CXXPERIMENT (eg. event_name_cb_add or
some weak pointer stuff). I believe they are useful but would like to
make sure there are no serious drawbacks with generating those.
2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 2b0805ddce cxx: Define types after forward declarations
This is useful if the types refer to the current class.
2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 052d9dda44 cxx: Include edje from elementary 2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 09cf282741 cxx: Use per-function guards in efl object
This prevents generation of del().
I also removed constructor, finalize and destructor as I believe this
requires special work with eo_inherit (where did this work go??).
2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 5d6a5343b7 cxx: Include definition header in impl header
Good for IDE's. Not extremely useful considering how unreadable those
files are.
2017-12-05 15:01:43 +09:00
Jean-Philippe Andre cb7f2d0dd5 cxx: Add header guards for manual definitions
This will be used for things like efl_del

efl_part was a lucky case where the entire class was to be implemented
manually, thus the global header guard was sufficient.
2017-12-05 10:17:46 +09:00
Jean-Philippe Andre 6653b9e2b1 cxx: Implement support for @class static functions 2017-12-05 10:17:02 +09:00
Jean-Philippe Andre 0f812f1584 cxx: Fix indentation of ifdef guard 2017-12-05 10:15:40 +09:00
Jean-Philippe Andre c372e5e6c7 win: Allow unref until deletion
This is for bindings. I wish I could actually distinguish the use case
more (between efl_add() from C and instantiation from C++).
2017-12-05 10:15:40 +09:00
Jean-Philippe Andre 5901b4601e cxx: Implement support for parts
This generates methods like this:

  Part_Class part_name() const;

Which can then be used like:

  slider.indicator().format_string_set("%1.1f");
2017-12-05 10:15:40 +09:00
Jean-Philippe Andre f47bb54f4f cxx: Fix evas compile test and Evas.hh
The c++ header was checking the wrong header guard. Fixing that would
break the compilation test, as it was doing the wrong thing. Also I
think config.h should not be included for compilation tests. This should
make things slightly better.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 63725d71fd cxx: Implement proper part support (wrt. refs)
It's VERY hacky, but works as expected: no leak, no extra unref. This is
a lucky case of simply overriding efl_part() implementation in C++,
without having to modify the declaration.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 0f5d40e6d4 cxx: Add header guards to .impl.hh
Those are included headers after all, even if they're only included once
from Elementary.hh (or whatever Efl_Header.hh).
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre b4e3d4d8a4 cxx: Avoid pedantic warning with -Wold-style-cast
This affects the generated headers.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 03af836332 cxx: Use set for forward classes
This avoids duplication. Not very important as there are FWD_GUARD
macros anyway.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre d887c4de52 cxx: Add implicit conversion to Eo* pointer
This is part of the experimental stuff.

Allows calling C functions without using ._eo_ptr() explicitly. Probably
not super useful, assuming the interfaces are done :)
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre a787c3cc07 cxx: Only use eo_cxx:: for methods
Add an experimental (disabled) macro to only generate functions inside
the eo_cxx equivalent of a class, instead of inside both the eo_cxx and
the normal class definition.

I guess the duplicated definition had something to do with doxygen, but
I'm not sure this is quite necessary as doc will be generated with
custom scripts.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 12d50cbe19 cxx: No instantiate ctors for non-regular classes
Only regular classes can be instantiated, this should be reflected in
the C++ binding as well.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 753304c69d cxx: Add define EFL_CXXPERIMENTAL for testing
I'll hide some controversial features behind this, until we come to an
agreement with @felipealmeida and people who actually know C++ (iow: not
just me^^).

Features protected:
 - easy wref (using -> without locking)
 - xxx_event_cb_add() functions in object classes
 - instantiate(obj) to create a new object
 - add as a synonym for instantiate (both in efl::eo)
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 5425baa906 cxx: Add support for function pointers
This was tested on the function pointer Efl.Ui.Format_Func_Cb
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre a597084db7 cxx: Add strbuf to the list of recognized builtins 2017-12-05 10:09:58 +09:00
Jean-Philippe Andre 22919b2050 format: Use strbuf builtin type instead of ptr() 2017-12-05 10:09:58 +09:00
Jean-Philippe Andre 43a6fddf1f eolian: Add builtin type "strbuf"
Refers to Eina_Strbuf*
2017-12-05 10:09:58 +09:00
Jean-Philippe Andre 258a214e0f cxx: Add event_cb_add functions to events
This enables a syntax like:

  button.clicked_event_cb_add([]() { std::cout << "Hello" << std::endl; });

I could not manage to pass the std::placeholders inside the template,
depending on whether the lambda has arguments or not. Not sure if
that's even possible.
2017-12-05 10:09:58 +09:00
Lauro Moura 3c5efa1e8d efl_mono: Fix eina_value_set.
Instead of messing around with varargs, create individual wrappers for
each type supported.

The va_list approach was getting problems with float/double on Windows.
2017-12-04 15:47:52 -03:00
Lauro Moura c316a2ef37 ecore: Fix compilation for GCC 4
Summary:
GCC4 support compound literals for static initializers only in C89. This
commit reverts to the previous behavior when using this version.

Currently we are using it to build on Windows.

Reviewers: felipealmeida, cedric, barbieri

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5518
2017-12-04 15:47:52 -03:00
Lauro Moura 09221f8516 elm: Move legacy enums to elm_general.eot.
efl_ui_text and friends uses some enums currently defined in
elm_entry.eo. The latter is exported outside the elm public eolian eos
and never generated.

This commit moves the enums to the "transition" file elm_general.eot.
2017-12-04 15:47:52 -03:00
Lauro Moura 8b1a72e972 efl_mono: Add native support library
Buildsystem integration will come in a future commit
2017-12-04 15:47:51 -03:00
Lauro Moura e6dd831f7e eolian_cxx: Many changes for the C# bindings
- Added helper function to get all methods of a given class (local and
  inherited methods)
- Add filename information to klass
- Added new defs: enum, value (currently only integers), struct
- Generator refactoring
- Eolian C compatibility
2017-12-04 15:47:49 -03:00
Lauro Moura 0931696a4f eolian: Add inarray and inlist 2017-12-04 15:47:48 -03:00
Stefan Schmidt 2631fabcac docs: fill in missing docs for efl_animation_ eo classes 2017-12-04 16:43:12 +01:00
Stefan Schmidt 9cefba4e90 docs: fill in missing docs for efl_ui_calendar_item eo class 2017-12-04 16:34:23 +01:00
Stefan Schmidt c13e2f2be0 docs: fill in missing docs for efl_animation eo class 2017-12-04 16:33:57 +01:00
Stefan Schmidt 0d0e677431 docs: fill in missing docs for efl_ui_popup_alert eo class 2017-12-04 15:42:36 +01:00
Stefan Schmidt 5ee90bcd04 docs: fill in mising docs for efl_ui_popup_anchor class 2017-12-04 15:32:48 +01:00
Stefan Schmidt 110f1b66a6 docs: fill in mising eo file docs for efl_ui_popup 2017-12-04 15:29:43 +01:00
Pawel Aksiutowicz 767eefbf21 ecore: removed warning from ecore_anim
Reviewers: stanluk, lukasz.stanislawski, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5535
2017-12-04 19:35:06 +09:00
Pawel Aksiutowicz c41480e46c ecore: munmap() call get size of the same type as nmap() call in "len" argument
Reviewers: stanluk, lukasz.stanislawski, jpeg

Reviewed By: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5553
2017-12-04 19:32:46 +09:00
Amitesh Singh 10103b9b45 efl.gfx: move scale{} from efl.ui.base to efl.gfx 2017-12-04 14:38:39 +09:00
Cedric Bail 25747d0881 ecore: rename efl_loop_Eina_FutureXXX_timeout to efl_loop_timeout. 2017-12-03 16:30:53 -08:00
Cedric Bail d0518f7325 ecore: remove efl_loop_timeout. 2017-12-03 16:20:20 -08:00
Al Poole 1be1ef168a eina_file_win32: also check for copy before unmapping region. 2017-12-02 11:45:53 +00:00
Derek Foreman 7658fc101f ecore_wl2: Add API ecore_wl2_window_surface_flush
This allows something that only has the Ecore_Wl2_Window (ie: something
that isn't engine code) to force dropping of all the buffers.

This should be safe to call at any time as the buffer handling logic
will properly cleanup the buffers when async render is done with them
or the compositor releases them.

This will eventually be used when a wayland client receives a
wl_output.leave events to indicate it isn't displayed on any outputs.
2017-12-01 10:59:51 -06:00
Derek Foreman c48ca81026 ecore_wl2: Add ecore_wl2_surface_flush
This removes all buffers from a surface.
2017-12-01 10:58:44 -06:00
Derek Foreman fdd05f8028 ecore_wl2: add Ecore_Wl2_Surface to Ecore_Wl2_Window
Track the surface of a window and only allow one.

Eventually this might be worthwhile to apply to subsurfaces, but for today
lazy is the way.
2017-12-01 10:58:44 -06:00
Derek Foreman 4f63f327b0 ecore_wl2: Make Ecore_Wl2_Buffer struct private
Nothing needs these members anymore.  If need arises in the future then
proper getter/setter functions can be added.
2017-12-01 10:58:44 -06:00
Derek Foreman 8a3b983c53 ecore_wl2 wayland_shm: Move surface functions into ecore_wl2
Finish pushing these all into ecore_wl2
2017-12-01 10:58:44 -06:00
Derek Foreman 5b4b18836a wayland_shm: Remove struct _Dmabuf_Surface
It's all piled into Surface now.
2017-12-01 10:58:44 -06:00
Derek Foreman f3dd394b85 ecore_wl2: Return NULL from ecore_wl2_window_display_get during recovery
This should save us from having to set the window to in the engine info
NULL and then back during/after recovery.
2017-12-01 10:58:44 -06:00
Andy Williams 756964c493 Revert "elm_code: Call parent theme_apply when we're applying"
This reverts commit 3e5e994360.
This crashes within Edi. The partial solution is not good enough.
2017-12-01 16:44:34 +00:00
Amitesh Singh ad9e36d750 focus: use elm_object_focus_get instead 2017-12-02 00:54:21 +09:00
Yeongjong Lee 9fac52134c efl_ui_spin_button: check focus state
Summary:
Because toggle_entry function control entry focus, it need to check
focus state in focus changed callback

Test Plan:
1. elementary_test - Efl.Ui.Spin.Button
2. Click the entry of spin_button

Reviewers: Jaehyun_Cho, CHAN

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5569
2017-12-01 12:06:24 +09:00
Amitesh Singh 769aeb5fcc edje: fix NULL ptr dereference
Fixes CID 1383425
2017-12-01 10:59:58 +09:00
Marcel Hollerbach 38b3ef1b8c elm_genlist: use the correct elm_object_focus_get function
genlist does not get focus anymore, only its children are getting them.

fix T6425
2017-11-30 20:07:52 +01:00
Marcel Hollerbach 1d7833a4b2 efl_ui_focus_composition: fix docs 2017-11-30 19:20:42 +01:00
Andy Williams 3e5e994360 elm_code: Call parent theme_apply when we're applying 2017-11-30 17:36:30 +00:00
Al Poole a538f47854 eina_file: make sure we use a stringshare when virtualized.
As the filename is now a stringshare, also make sure virtual
files use stringshares for the filename! Also when unmapping
we still need to test whether it is copied or not as unmap
will break on less tolerant architectures.

@fix T6449
2017-11-30 13:57:25 +00:00
Amitesh Singh 5b113aaa38 edje legacy: replace Edje_Object with Evas_Object 2017-11-30 20:05:49 +09:00
Amitesh Singh 864fbede3e edje: fix the typo in prev commit 2017-11-30 20:02:36 +09:00
Amitesh Singh 2ddea7065f Efl.Ui.Base: remove base_scale.get{} from interface.
base_scale for edje would be legacy now.
2017-11-30 19:27:04 +09:00
Amitesh Singh 5f3e0d62a4 Efl.Gfx.Shape: fix efl_super() call. 2017-11-30 16:23:19 +09:00
Amitesh Singh 774a01a28b Efl.Gfx.Path: add missing EOLIAN prefixes to eolian functions. 2017-11-30 16:09:37 +09:00
Amitesh Singh 77d730627e Efl.Gfx.Shape: add missing EOLIAN prefixes to eolian functions. 2017-11-30 16:09:37 +09:00
Amitesh Singh ad28bdfb5a Efl.Gfx.Shape: implement Gfx.Path.interpolate{}
This fixes the Eolian 'interpolate' redefine warning.
2017-11-30 16:09:37 +09:00
Jean-Philippe Andre d957e0a6e4 evas: Animation is a property not method set+get 2017-11-30 11:03:49 +09:00
Jean-Philippe Andre aef05c26d6 eolian: Warn less on duplicate beta APIs
The check was only done on one of the two functions, resulting in some
unwanted warnings.

EOLIAN_WARN_FUNC_DUPLICATES=1 will show non-beta warnings.
EOLIAN_WARN_FUNC_DUPLICATES=2 will still show all warnings.
2017-11-30 10:48:24 +09:00
Jean-Philippe Andre bd5b76508b efl: Introduce interface Efl.Dup
A few classes allow their objects to be duplicated, so they should all
use the same interface.

Also, rename VG's dup to copy_from as it's not conforming to the
definition of dup.
2017-11-30 10:48:24 +09:00
Jean-Philippe Andre 8803040484 evas: Implement scale API in proper EO fashion
This removes the internal function pointer for scale_update. This makes
all relevant classes implement the scale API in EO.

This removes the duplicate function in Efl.Canvas.Object and only uses
the one from Efl.Ui.Base interface.

This *seems* to be working as expected. Fingers crossed!

PS: I don't like the name Efl.Ui.Base. It's an interface for a few
common API's between Gfx, Canvas and UI levels... Maybe scale simply
doesn't belong there.
2017-11-30 10:48:24 +09:00
Jean-Philippe Andre 73e3a82bc2 edje: Move perspective to legacy
Note: Edje.Perspective is not bound to EO, and this is the only reason
why I'm moving this to legacy only. Marking as beta would mean the
legacy APIs would not be generated, so that would have almost the same
effect as moving to legacy.

It would be nice to actually support this in EO, though this seems like
a rarely used feature.

Ref T5315
2017-11-30 10:48:24 +09:00
Andy Williams c89dc4e0e4 elm_code: If showing line numbers don't resize at 10 lines.
Content will still shift at 100 but that should be less intrusive
2017-11-29 17:37:21 +00:00
Andy Williams 54d3091133 elm_code: Don't bold beginnings of lines
Fixes T6444
2017-11-29 16:17:27 +00:00
Amitesh Singh 038e492fe1 focus: fix build break after previous commit. 2017-11-29 19:46:04 +09:00
Amitesh Singh 29b47e0a07 focus: remove focus.get{} from widget.eo
This is taking care by focus manager now.
2017-11-29 19:25:14 +09:00
Jean-Philippe Andre 8faa65d90b edje: Move text_change_cb to legacy only
This should probably be replaced by a well defined signal.

Note: If edje sends signals on swallow/unswallow and text set/unset we
could simplify some of the elementary code, eg. for button's icon
handling. The theme should be handling the padding automatically, it's
not the elementary widget's role

Ref T5315
2017-11-29 15:36:44 +09:00
Jean-Philippe Andre 6225293d2e edje: Move "preload" to legacy only
EO file API is still in flux, especially wrt. async loading. Let's just
keep this in legacy for now.

A few more patches and Edje.Object will reach its final form.

Ref T5315
2017-11-29 15:36:44 +09:00
Jean-Philippe Andre 6c53992668 edje: Implement Efl.File.load_error
Don't create a new function with the same name, it's absurd.
2017-11-29 15:36:44 +09:00
Jaehyun Cho 4b18e754de elm_part_helper: Change macro name for default content part 2017-11-29 13:43:21 +09:00
Yeongjong Lee c1e9d9f2f0 evas: Remove duplicated code
Reviewers: raster, cedric

Reviewed By: raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5552
2017-11-29 11:59:54 +09:00
Chris Michael edc6ee8680 elementary: Remove set but unused variables
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-28 11:42:01 -05:00
Woochan Lee e8238522be efl_ui_spin: Support value change using mouse wheel.
Summary:
Enable value change using wheel.

(Up, Down key value change will be supported after D4933 dicussing.)

Test Plan: elementary_test efl_ui_spin test sample.

Reviewers: Jaehyun_Cho, jpeg, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5546
2017-11-28 20:03:06 +09:00
Jaehyun Cho a3ad64dcd0 efl_ui_popup: Replace Efl.Container to Efl.Content to rebase 2017-11-28 17:15:42 +09:00
Jaehyun Cho dcb7093c4c efl_ui_popup_alert: Remove expandable property for now
It needs more time to stabilize expandable property.
So the expandable property is removed for now.
The expandable property will be added later.
2017-11-28 17:15:42 +09:00
Jaehyun Cho c752d8fe6b efl_ui_popup: Make backwall efl part object of Efl.Ui.Popup 2017-11-28 17:15:42 +09:00
Jaehyun Cho 91df6723c9 efl_ui_popup: Rename bg_set with backwall_set
Since "background" is used as a basic part property, "backwall" is used
to indicate the area behind efl_ui_popup.
2017-11-28 17:15:42 +09:00
Taehyub Kim e65731b755 efl_ui_popup: add _calc_align function in sizing eval function
Summary: add _calc_align function in sizing eval function to show popup correctly.

Reviewers: Jaehyun_Cho, jpeg, cedric, thiepha, Blackmole, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5373
2017-11-28 17:15:42 +09:00
Taehyub Kim 8301e66d87 efl_ui_popup: add timeout signal
Summary: add the timeout signal for user notification

Reviewers: Jaehyun_Cho, jpeg, cedric, Blackmole, thiepha, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5372
2017-11-28 17:15:42 +09:00
Jaehyun Cho 27c0c90423 efl_ui_popup_alert: Define Clicked_Event structure 2017-11-28 17:15:42 +09:00
Jaehyun Cho a44e8cec39 efl_ui_popup: Replace group_add/del with constructor/destructor 2017-11-28 17:15:42 +09:00
Jaehyun Cho b85cebdb96 efl_ui_popup: Code refactoring to replace legacy APIs 2017-11-28 17:15:42 +09:00
JinYong Park 0928335fbc efl_ui_popup: remove parent_window_get method
Summary: remove Efl.Ui.Popup's internal method "parent_window_get"

Test Plan: elementary_test -to efluipopup

Reviewers: jpeg, Jaehyun_Cho, woohyun, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5363
2017-11-28 17:15:42 +09:00
JinYong Park 2b2bc50e8b efl_ui_popup: replace title_set to efl_text_set with efl_part
Summary: Replace Efl.Ui.Popup.Alert's title set method to using efl_text_set with efl_part

Test Plan: elementary_test -to efluipopupalert

Reviewers: jpeg, Jaehyun_Cho, woohyun, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5359
2017-11-28 17:15:42 +09:00
Taehyub Kim 8d315ce7aa efl_ui_popup: add timeout property
Summary: add timeout property

Test Plan:
1. run elementary_test -to efluipopup
2. after 3 seconds, popup will be delete

Reviewers: Jaehyun_Cho, jpeg, woohyun, thiepha, Blackmole, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5205
2017-11-28 17:15:42 +09:00
JinYong Park c8c7ac8aae efl_ui_popup_anchor: add Efl.Ui.Popup.Anchor class
Summary:
Add initial code for Efl.Ui.Popup.Anchor class.
It supports adding anchor object to popup.

Test Plan: 1. run elementary_test -to efluipopupanchor

Reviewers: Jaehyun_Cho, thiepha, herb, jpeg, cedric, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5126
2017-11-28 17:15:42 +09:00
JinYong Park a7082df12b efl_ui_popup: remove unnecessary function call
Summary:
In _calc_align function, it could get align property through Efl_Ui_Popup_Data *pd directly,
but call align_get function previously.

Reviewers: Jaehyun_Cho, herb, thiepha, jpeg, cedric, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5207
2017-11-28 17:15:42 +09:00
Taehyub Kim f5010b7ba6 efl_ui_popup_alert_scroll: check sizing evaluation while scroller is changed
Summary: add a sizing check variable for safety of sizing evaluation when the min size of scroller is changed.

Test Plan:
1. run elementary_test
2. search the sample with "popup" keyword
3. click the Efl Ui Popup Alert Scroll sample

Reviewers: Jaehyun_Cho, jpeg, woohyun, thiepha, Blackmole, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5204
2017-11-28 17:15:42 +09:00
JinYong Park 2e9042fae1 efl_ui_popup: remove efl_ui_popup_position_set
Summary:
Remove efl_ui_popup_position_set.
Its functionality is replaced with efl_gfx_position_set.

Test Plan:
  1. elementary_test -to efluipopup

Reviewers: Jaehyun_Cho, herb, thiepha, woohyun, jpeg, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5129
2017-11-28 17:15:42 +09:00
JinYong Park 0365bf1e13 efl_ui_popup: use efl_data_scope_get instead of using 'self' object
Summary:
Use efl_data_scope_get to get Efl_Ui_Popup_Data structure.
There is no reason using "self" object in Efl_Ui_Popup_Data.

Reviewers: Jaehyun_Cho, herb, thiepha, woohyun, jpeg, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5128
2017-11-28 17:15:42 +09:00
Taehyub Kim 3dccf133bb efl_ui_popup_alert_text: add Efl.Ui.Popup.Alert.Text Class
Summary:
Add initial code for Efl.Ui.Popup.Alert.Text Class.
It supports setting texts on the content area.

Test Plan: 1. run elementary_text -to efluipopupalerttext

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5124
2017-11-28 17:15:42 +09:00
Taehyub Kim f22d40b1e6 efl_ui_popup_alert_scroll: add Efl.Ui.Popup.Alert.Scroll class
Summary:
Add initial code for Efl.Ui.Popup.Alert.Scroll Class.
It supports scrolling content.

Test Plan: 1. run elementary_test -to efluipopupalertscroll

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, Blackmole, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5123
2017-11-28 17:15:42 +09:00