Commit Graph

15076 Commits

Author SHA1 Message Date
Chris Michael 0cf806005e ecore-wl2: Destroy buffer before we exit the buffer_test function
Small patch to destroy our test buffer before we exit the
_ecore_wl2_buffer_test function so that we do not leak here.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-20 11:27:15 -05:00
Pawel Aksiutowicz 36b6935304 elementary: removed warning from elm_widget
Reviewers: stanluk, lukasz.stanislawski, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5506
2017-11-20 16:13:46 +01:00
Chris Michael 2e1806521e elput: Remove unreachable code
As we are returning the evdev above, this block is unreachable so
remove it.

Fixes Coverity CID1382857

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-20 07:51:50 -05:00
Jean-Philippe Andre eae0885e0a slider: Implement Efl.Content 2017-11-20 20:39:44 +09:00
Jean-Philippe Andre 443be32129 radio: Implement Efl.Content 2017-11-20 20:39:34 +09:00
Jean-Philippe Andre 026430578a elm: Fix minor warning (return void) 2017-11-20 20:34:17 +09:00
Jean-Philippe Andre 1c200331f1 button: Implement Efl.Content set/get/unset
This fixes make check (cxx compilation).
2017-11-20 20:22:48 +09:00
Jean-Philippe Andre 029cf28745 image: Return file+key even for edje objects 2017-11-20 20:06:01 +09:00
Jean-Philippe Andre a24d24ff6b slider: Remove bad defines from EO file 2017-11-20 19:22:15 +09:00
Jean-Philippe Andre 372bf108a7 win: Make wm_available_rotations simpler for EO
The problem with the API is that it uses an array of ints, which is not
well defined in EO. We could set an array of pointers to int, but that
would be super awkward to use.

I believe the original API has been slightly over-engineered as it was
passing an array of available rotations when in reality only 4 rotations
could be supported (0, 90, 180, 270). It seems to me that the day
arbitrary rotation needs to be allowed, another API would be required
(maybe with a range, or a single bool flag to allow anything).

I have not modified the internal code, which still uses an array (as
ecore evas uses that).

Mote: ec464939d9 removed wm_rotation_supported_get(), as well as
the preferred rotation from EO, but they could easily be added back if
needed.

Note 2: I couldn't test as desktop E doesn't support WM rotations.

Ref T5322
2017-11-20 19:02:29 +09:00
Jean-Philippe Andre dda18948ae efl: Split Efl.Container and Efl.Content
When I first implemented the Efl.Container interface I made a mistake of
mixing "single slot" content API's with "multiple children" content
API's.  This should fix that, by separating API's that are for a single
part and those that deal with a list of children.

  Efl.Content: Single slot. This will be used a lot by efl_part()
objects, and for the default content of widgets (eg. the window
content).

  Efl.Container: Multiple children. Used by lists, boxes, layouts
(edje/elm), etc...

I didn't see any class that implemented both interfaces (note: Layout
implements Container and Button implements Content, so technically
Button implements both through inheritance).

For now the eo_prefix is not changed in Efl.Container. I wonder if it
should be reset (to efl_container) or not. This would only affect the C
API.

Ref T5328
2017-11-20 19:02:09 +09:00
Marcel Hollerbach 67188ba22b efl_ui_focus_manager: emit callbacks after stack change
fix T6389
2017-11-20 09:13:08 +01:00
Marcel Hollerbach 87900a97d0 efl_ui_focus_manager_sub: remove event callback array when destructing
i forgot about that and this leads to a segfault in enlightenment, the
object then segfaults when the parent manager emits a event and then the
code tries to access the private data of a dead object.
2017-11-20 09:13:08 +01:00
Pawel Aksiutowicz 63f8071c7d evas: fix typos in canvas/evas_object_textblock
Reviewers: lukasz.stanislawski, stanluk, jpeg

Reviewed By: lukasz.stanislawski

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5456
2017-11-20 12:03:52 +09:00
Lukasz Stanislawski 2f294aeb88 elm: add "activate" action to ctxpopup items
Summary: Change-Id: I0974c3bec02a05d3d46d7cc0fd86572e32248a3b

Subscribers: jenkins, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5493
2017-11-20 12:03:29 +09:00
Lukasz Stanislawski 26e49ca562 elm: overload access children getter
Subscribers: jenkins, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5482
2017-11-20 12:03:04 +09:00
Bryce Harrington cc14a1288c eina: Indicate in and out parameters for eina_matrix
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5496
2017-11-20 12:02:24 +09:00
Pawel Aksiutowicz cb2ba05675 elementary: fix typos
Reviewers: stanluk, lukasz.stanislawski

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5494
2017-11-20 11:54:52 +09:00
Marcel Hollerbach b27944da08 elm_list: use internal focus set instead of public focus set
elm_object_item_focus_set ensures that the list also gets focus, thus calling
that in _elm_list_elm_widget_on_focus_update would result in a infinite
call recursion, if setting the focus fails (for example when the object
is not visible yet, [see enlightenment for that]).

This fixes a freeze if you open lunchers config.
2017-11-19 11:08:36 +01:00
Derek Foreman 796de8cb86 wayland_shm: Don't use a fixed number of buffers
We no longer allocate 3 buffers at startup, we now allocate only as needed.

Trimming the queue will come later, as there are some situations where we
might need 3 buffers and later drop down to 2 (when on a hardware plane)

Most clients will only ever need 2 buffers, so this is a reasonable RAM
savings.
2017-11-17 14:33:36 -06:00
Derek Foreman 04ce069cba ecore_wl2: Properly handle buffer test failure during buffer_init
The buffer manager is already cleaned up at this point, don't try to
do it again.
2017-11-17 14:32:50 -06:00
Cedric Bail 7821367b1a eina: properly initialize EINA_ERROR_VALUE_FAILED. 2017-11-17 11:12:06 -08:00
Cedric Bail 7cfb9e00ed eina: properly initialize EINA_ERROR_NOT_MAIN_LOOP. 2017-11-17 11:11:48 -08:00
Cedric Bail 574d4526cb eina: properly initialize EINA_ERROR_MAGIC_FAILED. 2017-11-17 11:11:28 -08:00
Cedric Bail 8fbd8bfe2a eina: fail with an Eina_Error on copy failure. 2017-11-17 10:44:26 -08:00
Marcel Hollerbach 56522f19ff efl_ui_focus_manager_sub: do not specify a interface as first argument
this leads in eo to the meaning that the manager.sub is giving
implementations to that interface, but leaving the ->func with NULL,
which leads on some maschines to the assumation that this is
pure_virtual, which means not composition objects will be queried, on
other maschines this will work, since there other inherits will
overwrite this entry and set ->src to NULL.

While i still dont understand why this works on some maschines and does
not on others, this is is now fixed.
2017-11-17 16:08:14 +01:00
Marcel Hollerbach b93e744e1f elm_widget: simplify code
there is now a utility function
2017-11-17 16:08:14 +01:00
Marcel Hollerbach 2ba64efe62 Eo: be a bit more detailed in the docs
this is completly not obvious. But now its documented.
2017-11-17 16:08:14 +01:00
Marcel Hollerbach 19cb57d914 efl_ui_focus_manager_calc: efl_wref_del deletes the wref
A happy thank you goes to the doc for leaving this trivial peace of
information undiscovered!

Followup commit will fix this
2017-11-17 16:08:14 +01:00
Marcel Hollerbach ffca5284ae efl_ui_focus_manager:do not followup if we have not changed candidate
_followup_previous_direction should only be called if there was a real
change to the redirect. In was happening that we have not changed the
focus but called _followup_previous_direction, which lead to weird focus
changes.
2017-11-17 16:08:14 +01:00
Marcel Hollerbach f8badf1c06 elm_widget: remove focus set
calling this function was not working at all, so its gone now
2017-11-17 16:08:14 +01:00
Marcel Hollerbach 84a6a329fe elementary: stop using elm_widget_focus_set 2017-11-17 16:08:14 +01:00
Marcel Hollerbach 6daff0e6f4 elm_main: checking the redirect chain is not neccessery
the manager is in or has no focused element
2017-11-17 16:08:14 +01:00
Marcel Hollerbach 1e5c894a1b elm_main: replace _elm_object_focus_set with efl_ui_focus_util_focus 2017-11-17 16:08:14 +01:00
Marcel Hollerbach 4086f18ebf efl_ui_focus_manager_calc: error if a element is not registered yet 2017-11-17 16:08:14 +01:00
Marcel Hollerbach 2e6a08737d efl_ui_focus_object: emit changed event after the flag gets set
otherwise new efl_ui_focus_object_focus_get calls could be confused.
2017-11-17 16:08:14 +01:00
Marcel Hollerbach 738cb8a2bb efl_ui_focus_util: add a util class
the util class is for common code that is just added again and again.
2017-11-17 16:08:14 +01:00
Andrii Kroitor c37226ef5e elm_genlist: fix rare segfault
Conditions:
- style is "double_label"
- the is some content for items (i.e elm_label)
- elm_genlist_filter set was once called after genlist creation with
  NULL data
- label_get callback uses elm_genlist_item_prev_get on its current item
- at least one item is added as a sub-item
- ~2 blocks of items are added afterwards
- items are added quickly while holding 'enter' on an elm_button

@fix
2017-11-17 10:16:41 +02:00
Amitesh Singh 35f3019a6d Efl.Ui.Slider: add default indicator format to %0.2f
This was broken in legacy code as well.
Thanks to @taxi2se for reporting.

elm_test -> slider -> check vertical slider

@fix
2017-11-17 14:55:51 +09:00
Amitesh Singh 19e70a8e1f Efl.Ui.Slider: replace default with on_drag in visible_mode enum.
Ref T6376
2017-11-17 14:38:32 +09:00
Amitesh Singh 651d9e94a0 Efl.Ui.Slider: add visible_mode() as an indicator part API
Ref T6376
2017-11-17 14:38:32 +09:00
Amitesh Singh 67996afbf6 Efl.Ui.Slider: make indicator_visible_mode() legacy APIs
Ref T6376
2017-11-17 14:38:32 +09:00
Amitesh Singh 77164413cd Efl.Ui.Slider: make indicator_show_on_focus/indicator_show() legacy APIs
Ref T6376
2017-11-17 14:38:32 +09:00
Shilpa Singh e58e00b08a elm_index: Index item role modify
Summary:
Modified index item role to EFL_ACCESS_ROLE_RADIO_MENU_ITEM from EFL_ACCESS_ROLE_PUSH_BUTTON
as index item should maintain its current state.

Test Plan:
Query the role of index item from atspi client, ATSPI_ROLE_RADIO_MENU_ITEM role should
be returned.

Reviewers: kimcinoo

Reviewed By: kimcinoo

Subscribers: cedric, govi, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D5486
2017-11-17 10:18:18 +09:00
Derek Foreman 1bd513305e ecore_wl2: fix user pointer for dmabuf param listener
Proving once again that those that defeat type safety usually get what
they deserve.
2017-11-16 13:18:48 -06:00
Derek Foreman 925be86f9e ecore_wl2: Fix dmabuf test failure
We need to destroy the buffer manager on fail, since it will exist but
only be able to create buffers we can't actually use.
2017-11-16 13:18:48 -06:00
Derek Foreman c08920820b ecore_wl2: Don't try to close drm_fd if we never opened it
derp.
2017-11-16 13:13:38 -06:00
Andy Williams 63c6724f08 eina: fix docs for manage_read_only_new 2017-11-16 12:49:56 +00:00
Jean-Philippe Andre 313eb563b5 win: Rename specific APIs to avoid clashes
This renames 3 basic APIs specific to Win:
 - name
 - type
 - role

Ref T5322
2017-11-16 19:11:51 +09:00
Lukasz Stanislawski 57e0d19c45 elm: return Efl.Access.Actions only if action_area is not set
Summary:
The accessibility clients should not have a possibility
to dismiss popup in case when action area is set.

Reviewers: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5481
2017-11-16 18:17:49 +09:00
Shilpa Singh 54657b0a95 elm_index: Send selected signal to atspi client
Summary: When Index item is selected, notify atspi clients.

Test Plan:
when atspi mode is enabled, item selection notification
should be received by atspi client

Reviewers: kimcinoo

Subscribers: cedric, govi, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D5485
2017-11-16 18:17:49 +09:00
Lukasz Stanislawski 989f6c27d2 elm: enhance access name for spinner
Summary: Try to take access name from internal entry object or text button first.

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5480
2017-11-16 12:12:04 +09:00
Lukasz Stanislawski 20c9dd1e84 elm: add Efl.Access.Value interface to progressbar
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5479
2017-11-16 12:05:21 +09:00
Jean-Philippe Andre e9ebe5c676 elm: Define and rename internal atspi struct in EO
This thing is used by only 2 EO APIs that are marked as @beta. I wonder
if the @beta tag or the ptr() expression made it work for eolian,
because it simply wasn't defined in EO.

I'm renaming it just so that it's more consistent with the new names
used by atspi (and EO API in general).
2017-11-16 12:00:18 +09:00
Lukasz Stanislawski c838e30a24 elm: Rename elm_interface_atspi_widget_action mixin
Reviewers: jpeg

Subscribers: jenkins, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5400
2017-11-16 12:00:18 +09:00
Cedric Bail 30adccd6a2 elementary: make sure that ecore shutdown match ecore init. 2017-11-15 16:29:14 -08:00
Cedric Bail babcb0f1e4 elementary: do not send a PAUSE event if not iconified. 2017-11-15 16:29:14 -08:00
Cedric Bail 1112ce2a8a ecore: should be the one triggering EFL_LOOP_EVENT_TERMINATE. 2017-11-15 16:29:14 -08:00
Cedric Bail cd1f5915d2 elementary: add an interface to enable/disable PAUSE/RESUME application state.
If you want to have EFL application behave in a more efficient way. Like dropping
memory usage or stopping unecessary network operation, this option should be on
and the application should listen on PAUSE/RESUME event on the main loop.
2017-11-15 16:28:20 -08:00
Derek Foreman fcdbc07fe3 ecore_wl2: Don't open rendernode if we're not going to use it
We should only open this when actually testing dmabuf.  Otherwise we're
just wasting time and adding an opportunity to fail shm init over
unrelated issues.
2017-11-15 11:54:37 -06:00
Derek Foreman 23f5b41176 ecore_wl2: Reset buffer_manager to NULL on failure
Calling this multiple times even after it fails the first time is a legit
thing now.  We'll be doing that when we want to test dmabuf at connection
start.
2017-11-15 11:54:37 -06:00
Derek Foreman 517f929aa5 ecore_wl2: Send a dmabuf non-immediate create at startup
We use immediate mode dmabuf creation at runtime, but this can result in
clients being killed with no option to fallback if the buffers can't be
consumed by the compositor.

This test should catch when a system can allocate a dmabuf buffer and the
compositor claims to accept dmabuf, but the buffer can't actually be used
for whatever reason.  We'll then use wl_shm at runtime instead of dmabuf.
2017-11-15 11:54:37 -06:00
Derek Foreman 3ac556f2e1 ecore_wl2: factor out part of buffer creation
So we can use it to make a non-immediate mode buffer test.
2017-11-15 11:54:37 -06:00
Derek Foreman 04cebba623 ecore_wl2: Filter buffer types by compositor capabilities
It does us no good to be able to allocate dmabuf capable memory if the
compositor can't handle it.  This should fix failures on systems where
allocation is possible but the compositor doesn't advertise dmabuf.
2017-11-15 11:54:37 -06:00
Derek Foreman 579b6d69b3 ecore_wl2: Add a second sync for dmabuf formats
While we don't yet use these, we should, so let's make sure they're
available before we start making windows.
2017-11-15 11:54:37 -06:00
Derek Foreman 054bdc870b ecore_wl2: Refcount syncs at startup
There are some binds at startup that result in additional information
being sent, so we may need to call wl_display_sync() multiple times, and
only send the client a SYNC_DONE event when the final one completes.
2017-11-15 11:54:37 -06:00
Derek Foreman e863dcaae7 ecore_wl2: Create xkb_context before compositor connection
We really need this to exist before potentially processing seat/keyboard
stuff in _ecore_wl2_display_connect()
2017-11-15 11:54:37 -06:00
Derek Foreman 9fdcf7d0eb wayland_shm/ecore_wl2: Move buffer allocation into ecore_wl2
This moves all the platform specific buffer allocation into ecore_wl2
instead of the engine.

Note that this makes an internal struct available in the header.  This
will be removed shortly.
2017-11-15 11:54:37 -06:00
Marcel Hollerbach e3de0f994f efl_ui_calendar: set focus object protected mode
i forgot a define here and was confused by the fact that we have two
calendar widgets, sorry for that.
2017-11-15 17:38:43 +01:00
Marcel Hollerbach de084292e0 efl_ui_focus_manager: unset the redirect chain once a redirect is set
this prevents the manager from having a redirect chain while not even
beeing used by the root manager
2017-11-15 13:21:22 +01:00
Marcel Hollerbach 7e227161b9 efl_ui_focus_manager_calc: correct handle focus when redirects are set
so we dont have two focused elements
2017-11-15 13:21:22 +01:00
Marcel Hollerbach df81e2f492 efl_ui_focus_manager: ensure the manager is in focus when focus is set
this makes handling of focus easier in elementary
2017-11-15 13:21:22 +01:00
Marcel Hollerbach 07cb2d2dcd efl_ui_focus_object: document the bahaviour of the manager property 2017-11-15 13:21:22 +01:00
Marcel Hollerbach 7c9e13a550 efl_ui_focus_object: make it protected
_this_ focus set should never be called by anyone other than the
efl.ui.focus package
2017-11-15 13:21:22 +01:00
Godly T.Alias 67313bf8aa CtxPopup: Add implementation for getting focused item
Summary:
Adding the focused_item_get implementation for ctxpopup widget for
getting the focused item

Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>

Test Plan: elm_object_focused_item_get

Reviewers: cedric, raster, prince.dubey, shilpasingh, jpeg

Reviewed By: shilpasingh

Subscribers: Jaehyun_Cho, Blackmole, jpeg, rajeshps, shilpasingh

Differential Revision: https://phab.enlightenment.org/D5474
2017-11-15 19:29:00 +09:00
Andrii Kroitor a2532b8ef0 genlist: fix state corruption of content
When using reusable content, genlist preserves old object's state and is
expecting reusable_content_get callback to change all needed properties.
But there was an inconsistency: it was silently re-enabling the old content.

@fix
2017-11-15 10:57:10 +02:00
JinYong Park d96f3bb4f3 Ctxpopup: resizing ctxpopup after its content is removed
Summary:
When ctxpopup's content is removed,
ctxpopup doesn't recalculate its size, so empty space is remaind.
To fix this problem, ctxpopup recalculate its size when content is removed.
This patch is about T6327

@fix

Test Plan:
1. run elementary_test -to ctxpopup
2. select 10st item
3. click button in ctxpopup

Reviewers: jpeg, Jaehyun_Cho, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5462
2017-11-15 16:46:01 +09:00
Shilpa Singh 36afcf2af9 efl_ui_win.c: send bounds changed signal on window rotation
Summary:
On window rotation send bounds changed signal to inform ATSPI client
about the orientation of window

Test Plan:
In ATSPI mode, when orientation of efl window is changed, ATSPI client should
get notification

Reviewers: kimcinoo

Subscribers: cedric, govi, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D5469
2017-11-15 14:41:37 +09:00
Cedric Bail 23902aabe9 elementary: make sure efl_general.h detection work also when you are not using BETA interface. 2017-11-14 21:04:55 -08:00
Cedric Bail 07da1facaa elementary: protect from stall include.
This should be reverted before next release as this header was only
there during this release cycle.
2017-11-14 20:14:44 -08:00
Cedric Bail 88b2e28759 elementary: provide network when doing ui. 2017-11-14 20:14:01 -08:00
Cedric Bail 003d2d5823 elementary: only include Efl_Ui.h when BETA API is requested. 2017-11-14 20:13:29 -08:00
Cedric Bail 6ae1c3239e elementary: elm_widget actually rely on elm_object_item. 2017-11-14 20:12:36 -08:00
Cedric Bail 064f683458 elementary: fix typos in header inclusion rules. 2017-11-14 20:11:55 -08:00
Cedric Bail f455215ef5 ecore: always declare EFL_MAIN not just for application using the BETA flag. 2017-11-14 20:10:33 -08:00
Cedric Bail 663e31413a Revert "Revert series of patches from cedric (due to dependencies and conflicts)"
This reverts commit 2cea85db38.

Their was a typo that I made during cleanup of the patch before pushing that I didn't
notice broke some stuff. But also you may have an old efl_general.h in your elementary
directory that is now being picked instead of the one provided by the tree.
2017-11-14 20:08:09 -08:00
Carsten Haitzler 2cea85db38 Revert series of patches from cedric (due to dependencies and conflicts)
Revert "elementary: currently double declare elm_init/shutdown."
This reverts commit 44bb0c1848.
Revert "elementary: fix efl_ui_multibutton installed headers."
This reverts commit 32a213dc72.
Revert "elementary: introduce Efl_Ui.h."
This reverts commit df3d3f7334.
Revert "ecore: do not display error message on cancel."
This reverts commit 99654b7cd2.
Revert "efl: and don't forget to install the new dependencies."
This reverts commit 814ffb9b6b.
Revert "ecore: remove EFL_OBJECT_BETA as Efl_Core.h is for Efl new inerfaces."
This reverts commit 619d0f3cff.
Revert "ecore: move EAPI_MAIN from elementary to ecore."
This reverts commit e5d84da864.

as such commit e5d84da864 starts the
breaking. enlightenment, terminologya and other apps can't compile
against that efl anymore. 619d0f3cff
then makes this even worse with even more header errors and undefined
types. on top of this df3d3f7334 then
starts making elementary_test segfault when it runs. it wont even
start up.

asu such of these 7 commits in the first 4 (that are then relied on
later) 3 of these first 4 cause serious breakage. this simply is a
complete lack of testing changes, so i've rolled fl back to before
these things so it builds and works again and you can build against it.

PLEASE test these things. this looks ot me to be obviously a lack of
any testing... :(
2017-11-15 11:48:55 +09:00
Cedric BAIL 44bb0c1848 elementary: currently double declare elm_init/shutdown. 2017-11-14 16:55:49 -08:00
Cedric BAIL 32a213dc72 elementary: fix efl_ui_multibutton installed headers. 2017-11-14 16:53:16 -08:00
Cedric BAIL df3d3f7334 elementary: introduce Efl_Ui.h. 2017-11-14 16:36:17 -08:00
Cedric BAIL 619d0f3cff ecore: remove EFL_OBJECT_BETA as Efl_Core.h is for Efl new inerfaces. 2017-11-14 14:17:00 -08:00
Cedric BAIL e5d84da864 ecore: move EAPI_MAIN from elementary to ecore. 2017-11-14 13:50:13 -08:00
Andy Williams 95b0d7ca68 elm_code: Add basic scope parsing to syntax highlighting.
This is currently displayed by showing scope in the widget gutter
2017-11-14 19:12:56 +00:00
Bryce Harrington 1227f914e2 eina: Improve API docs for eina_crc.h
Reviewers: cedric, ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: jpeg, segfaultxavi

Differential Revision: https://phab.enlightenment.org/D5468
2017-11-14 13:14:59 +00:00
Shilpa Singh 7e83545ab3 elc_popup.c: accessible name_get interface added
Summary: accessible name_get interface added, popup does not have default text.
What should be read for the name information should be define by popup.

Test Plan:
In atspi mode, when an AT-client such as screen-reader queries, it should return
as "Alert title(if present)/text(if present)"

Reviewers: kimcinoo

Subscribers: cedric, jpeg, govi, rajeshps

Differential Revision: https://phab.enlightenment.org/D5466
2017-11-14 15:22:36 +09:00
Jean-Philippe Andre 8f2e491573 eolian: Fix odd syntax (remove EINA_UNUSED) 2017-11-14 13:40:19 +09:00
Jean-Philippe Andre 0c142462a1 win: Move autodel to C only
Note: this is C only, not legacy only.
The problem is that bindings will hold a strong reference to the window,
which will then die "under the rug" if autodel is enabled. This then
leads to at least ERR if not crashes.

Note:
elm_policy needs to support autodel and quit on last del only for C
applications. Bindings will require some other mechanism that doesn't
break all assumptions wrt. references.
2017-11-14 12:18:39 +09:00
Amitesh Singh 302cc259ff Efl.Ui.Format: Add support for "struct tm" in string format. 2017-11-14 10:54:41 +09:00
Amitesh Singh 9ba451c98a Efl.Ui.Slider_Interval: remove smart data associated with class.
Its not getting used anywhere.
2017-11-14 09:54:42 +09:00
Cedric BAIL 5017f06a72 evas: disable unecessary lock when not using evas_render2
Calling this lock for no good reason result in a 2% slow down. Easy
enough to disable as we do not use evas_render2 at all. Might be
something to consider if we ever develop evas_render2 further.
2017-11-13 14:39:08 -08:00
Cedric BAIL 6bbcb3cc15 edje: last improvement of _edje_hash_find_helper speed by reducing call to eina split function. 2017-11-13 14:25:10 -08:00
Cedric BAIL eddd52cba7 edje: cache last string search miss to reduce useless call to eina_str_split_full by 3. 2017-11-13 14:13:08 -08:00
Cedric BAIL 7c615e1831 edje: cleanup life cycle of buffer in _edje_hash_find_helper. 2017-11-13 14:12:42 -08:00
Marcel Hollerbach 63ef60402f efl_ui_win: unfocus and focus again the most upper widget
if we unfocus a window we should unfocus also the current focused
widget.

fix T6297
2017-11-13 14:21:06 +01:00
Shilpa Singh 6508b8849c elc_naviframe.c: Append title, subtitle while reading title and subtitle in naviframe.
Summary: read title along with naviframe item title and subtitle along with naviframe subtitle.

Test Plan:
In accessibility mode, when naviframe title area is focused, The  text title and subtitle should be read
out along with item's title and subtitle.

Reviewers: kimcinoo

Reviewed By: kimcinoo

Subscribers: cedric, govi, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D5463
2017-11-13 20:54:05 +09:00
Jean-Philippe Andre 4255c34f7a calendar: Remove invalid ref to elm enum
Thanks @JackDanielz for the report. This does not solve your actual
concern, though.
2017-11-13 18:08:57 +09:00
Vyacheslav Reutskiy d498065cb4 edje: add event for inform about circular dependency
This commit add the event "circular,dependency" for edje object. Given
event is called when edje found the circular dependency between parts
in object. This event will be usefull and informative paired with
Edje_Edit API.
2017-11-13 10:57:19 +02:00
Bryce Harrington 7764abe8f6 eina: Fix spelling/punctuation errors in docs (quaternion..rectangle)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5450
2017-11-13 12:09:21 +09:00
Lukasz Stanislawski 6505f535f6 elm: evaluate MULTISELECTABLE state for genlist and gengrid
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5452
2017-11-13 12:08:57 +09:00
Lukasz Stanislawski b9f31b1836 elm: set accurate access role for elm_icon
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5453
2017-11-13 12:08:43 +09:00
Lukasz Stanislawski 2ea179d373 elm: set accurate access role for elm_popup
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5454
2017-11-13 12:08:24 +09:00
Bryce Harrington b60c3fb3ba eina: Fix spelling/punctuation errors in documentation (safepointer..strbuf)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5458
2017-11-13 12:05:09 +09:00
Bryce Harrington dab3a6fca3 eina: Fix spelling/punctuation errors in documentation (thread..xattr)
Summary:
Also makes some of the doxygen comment line spacing/formatting
consistent.

Interesting ref on grammar of 'an uniform' vs. 'a uniform':
  https://english.stackexchange.com/questions/4700/is-it-a-uniform-or-an-uniform
It is AN honor to work with such A uniform language as English. *sigh*

Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5459
2017-11-13 12:04:59 +09:00
Bryce Harrington d0ded365e9 eina: Add API doxygen for eina_rbtree_inline_lookup()
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5460
2017-11-13 12:04:39 +09:00
Bryce Harrington 3830cbaa25 eina: Improve eina_alloca API dox
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5461
2017-11-13 12:04:32 +09:00
Carsten Haitzler f40c91941d libinput check - move up to requiring 1.6 as a minimum for libinput 2017-11-12 21:47:02 +09:00
Marcel Hollerbach a2a0ccf36b elm_widget_item_static_focus: do not accept the adapter as subchild
The problem here was that the adapter we have created would be
recognized as our subchild, and thus we delete our own subchild, which
is wrong. This fixes that problem and keeps the adapter alive.
2017-11-12 12:05:31 +01:00
Marcel Hollerbach b364293b0c genlist: implement item focus
this implements item-content focus for genlist. feel free to notify me
if there are any crashes or something simular.

ref T6181
2017-11-12 12:04:11 +01:00
Marcel Hollerbach d30985b4e2 elm_gengrid: do not try to bring in a NULL item 2017-11-11 20:21:56 +01:00
Marcel Hollerbach 53052abaa6 elm_widget_item: refactor logic from gengrid into seperated class 2017-11-11 20:21:56 +01:00
Marcel Hollerbach c075b7caaa elm_gengrid: improve the performance while realizing
realization is now back to the normal performance mode, the widgets are
reevalulated when composition calls for preparing
2017-11-11 20:21:56 +01:00
Marcel Hollerbach 1ff0d6462b elm_widget: add a new api for directly reevalulating widgets
usefull if the provider changes
2017-11-11 20:21:56 +01:00
Marcel Hollerbach 9f382b3371 efl_ui_focus_composition: make sure to prepare before anything else
happens

this fixes mysterical focus chain changes in gengrid
2017-11-11 20:21:56 +01:00
Marcel Hollerbach 4c4224df29 efl_ui_focus_composition: make sure to not unregister and register again
this fixes issues where a widget suddenly changes parent...
2017-11-11 20:21:56 +01:00
Al Poole 42484606d0 elm_code: add support for go syntax. 2017-11-11 13:23:12 +00:00
Carsten Haitzler 75daddc839 Revert "Edje: use textblock by default"
This reverts commit ef3d2120bf.

This breaks E. pager ono my right screen looks like:

http://devs.enlightenment.org/~raster/shot-2017-11-11_12-13-14.png

on my left screen shellf keeps swapping between 2 dizes wobbling back
and forth every frame eating cpu and making it "blurry"...

note - theme is the flat one in devs/raster/theme/flat2 branch. so
this change certainly breaks something...
2017-11-11 12:10:32 +09:00
Vincent Torri b5333edd3f evil: add tests for Windows port.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 13:13:44 -08:00
Chris Michael de9cf5a217 ecore-wl2: Minor formatting fixes
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-10 15:59:51 -05:00
Derek Foreman abba80f3d6 ecore_wl2: Add API for adding damage to a window
This was done in the engine previously, but would be better as a library
function.
2017-11-10 13:43:45 -06:00
Daniel Hirt ef3d2120bf Edje: use textblock by default
As most of you know, TEXT part was, up to this point, an Evas.Text
object.

This patch merges TEXT and TEXTBLOCK both to use Efl.Canvas.Text.
Code is added to emulate what TEXT did that TEXTBLOCK did not.

I believe we can move forward with TEXT, and deperacate TEXTBLOCK from
the EDC. You can also set markup to TEXT parts.

Exactness seems to show some differences, but further examination shows
that it's due to difference in how width is calculated in
Efl.Canvas.Text. The results seem correct.

Be sure to report of any breakage via Phabricator or contact me
directly.
I am running E with this and did not stumble upon any crashes or visual
bugs.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:30:09 -08:00
Daniel Hirt c7b2372ffb Edje: move textblock handling to a separate source
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:30:04 -08:00
Daniel Hirt 58ce1d654b Canvas text: change halign/valign to use doubles
There are use cases where you would want to align by a value.

The wordy alignment values are thus removed.
This commit also separates auto-modes (none, normal, locale) for
horizontal alignment to its own API.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:30:00 -08:00
Daniel Hirt 941fe1ffbd Canvas text: adjust bottom padding at edge of text
Now the edges include both the top AND bottom paddings.
Also fixes vertical alignment.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:29:53 -08:00
Daniel Hirt 45d3614345 Canvas text: fix width calculation with style effects
There are multiple places in the code where both the padded item's
width and the maximum style padding (at the edges) are accounted for.
For the sake of making calculations for wrapping/ellipsis we should
only use the maximum style padding.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:29:49 -08:00
Daniel Hirt 0725ff620b Canvas text: update style pad when no format nodes are present
This updates the style pad even if there are no format nodes.
An example of this is having a default style set to the object.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:29:44 -08:00
Daniel Hirt 20ecea1615 Canvas text: fix applying effects
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:29:39 -08:00
Daniel Hirt a80209a59e Canvas text: favor font name parsing over set properties
Since font names can also specify styles like weight, width etc, we
should parse the font name AFTER setting the respective properties to
the font description, so it can override some if required.

This allows, for example, the following operation:

efl_text_font_weight_set(obj, EFL_TEXT_FONT_WEIGHT_NORMAL);
efl_text_font_set(obj, "Sans:Bold");

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-10 10:29:27 -08:00
subhransu mohanty 41062cb15d evas/vg: use surface cache for efl vg canvas 2017-11-10 11:20:38 +09:00
subhransu mohanty f0b8c37d80 evas/vg: refactor ector engine api and backend . 2017-11-10 11:20:38 +09:00
subhransu mohanty befb7701a7 evas/engine: added new engine api for ector 2017-11-10 11:20:38 +09:00
subhransu mohanty aacf277c3a evas/vg: added support for engine surface cache. 2017-11-10 11:20:38 +09:00
subhransu mohanty d4a2b2025b evas/common: added a generic cache in evas common. 2017-11-10 11:20:38 +09:00
subhransu mohanty 76e75dc105 ector: move gradient generation api to draw library for reuse. 2017-11-10 11:20:38 +09:00
Cedric Bail 3b7607d7f6 ecore_evas: improve ecore_evas fallback animator logic for legacy case.
In Enlightenment with internal window being WL window connected to the
X11 backend, you end up with the later requiring the former to tick, even
if the former do not have a proper animator source. To work around the
problem when there is one backend that is not providing support for
animator source, we do need to avoid switching on another window source
as they could be linked somehow and we can not know.
2017-11-09 18:07:31 -08:00
Cedric Bail fee2b1beb4 ecore_con: add support for EFL_MAIN with ecore_con support. 2017-11-09 15:25:51 -08:00
Cedric Bail bd83a76393 ecore: move EFL_MAIN to Efl_Core.h
This make EFL_MAIN available and working with just Ecore. For simplicity
it is available with Efl_Core.h. Ideally it should also work with Efl_Net.h
alone and finally with an Efl_Ui.h.

T6262
2017-11-09 15:13:37 -08:00
Cedric Bail 66c46f0528 elementary: allow efl_general.h to be included multiple time. 2017-11-09 15:13:37 -08:00
Cedric Bail 4d41f95106 elementary: make elm_init and elm_shutdown optional in EFL_MAIN. 2017-11-09 15:13:37 -08:00
Derek Foreman 132a77c682 ecore_wl2: Discard too-old dmabuf support
We need at least version 2 for create_immed, so don't even bind the
global if it's useless to us.

This will also stop us from trying to use dmabuf (and getting killed by
the compositor) on older compositors that don't support the version we
need - we'll just use wl_shm instead when this pointer is NULL.
2017-11-09 16:06:42 -06:00
Derek Foreman 51da93da28 efl_wl: Add missing @since to new functions
These ones were introduced for 1.21.
2017-11-09 12:41:22 -06:00
Carsten Haitzler 1e83d963d9 elput - ref device that is in the event queue 2017-11-09 11:42:29 +09:00
Amitesh Singh 6c444bebcb Efl.Ui.Slider: fix documentations 2017-11-09 11:02:29 +09:00
Al Poole e63e2d7e21 elm_code_widget: keep track of visibility.
Keep track of visibility and ensure the cursor can never be
filled when hidden. This should finally end any issue with the
cursor and visibility with the new focus system. Didn't see this
previously until working on Edi's bottom panes which caused redraw
on resize of the widgets.

@fix
2017-11-09 00:55:36 +00:00
Daniel Kolesa 70ee11af84 eolian: enable cyclic imports of eo files 2017-11-08 16:46:14 +01:00
Daniel Kolesa 5c2611d93a eolian: simplify dependency parsing and cut down on hash lookups 2017-11-08 16:12:40 +01:00
Carsten Haitzler 7a7abb043a elput - re-enable switches (power buttons, lid etc.)
this is needed for devices that no longer produce aspi events for
these. otherwise good luck getting any event on lid open/close or on
pressing the power button. this also stops hiding switch events from
libinput and now you can get switch events to find lid or tablet mode
switching changes.

@fix
2017-11-08 20:37:50 +09:00
Jean-Philippe Andre 10b6eb627a edje: Oops. Remove edje_global include as well. 2017-11-08 20:16:28 +09:00
Jean-Philippe Andre cc1ed7183c edje: Hide edje_global from the rest of the world
Call provider_find on the loop (or basically any object) with the
color/text/size class interface instead, to find it. The main loop is
the main holder of those objects.

Note: This makes use of provider_find instead of direct access to the
variable, in order to self-test the code. In theory release builds will
not do this and user directly the variable.
2017-11-08 20:02:31 +09:00
Jee-Yong Um 2f838acd4e Efl: add class interfaces (color/text/size)
Summary: implement Efl.Gfx.Class interface

Reviewers: jpeg, cedric

Subscribers: taxi2se, herdsman

Differential Revision: https://phab.enlightenment.org/D4403
2017-11-08 19:17:59 +09:00
Andy Williams d5dbcdabd1 eo: Rename efl_ref_get to efl_ref_count 2017-11-08 09:30:42 +00:00
Carsten Haitzler 2a5267d416 unbreak efl so e works again.... after cedric
we cant go iterating the mainloop before the current point. if someone
set up handlers but hasnt configured the things those handles use yet
as they dont expect them to be used until the mainloop is started...
thenthings break. we cant change this assumption without breaking
things.
2017-11-08 16:32:52 +09:00
Jean-Philippe Andre c308498a9d win: Fix alpha windows
Fixes T6334
2017-11-08 16:17:29 +09:00
subhransu mohanty 8952c3e524 evas/vg: changed the efl_vg_dup api signature.
Reviewers: jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5440
2017-11-08 15:55:52 +09:00
Bryce Harrington 50fba34e6c eina: Fix spelling/punctuation errors in documentation (prefix..promise)
Reviewers: cedric, ajwillia.ms

Subscribers: jpeg, segfaultxavi

Differential Revision: https://phab.enlightenment.org/D5438
2017-11-08 15:20:34 +09:00
Pawel Aksiutowicz e2ad1469a5 focus: Some typos for efl_ui_focus_manager fixed
Reviewers: stanluk, lukasz.stanislawski

Subscribers: lukasz.stanislawski, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5433
2017-11-08 15:16:04 +09:00
Carsten Haitzler a3b1b5d540 efl - fix build after cedric breakage
25b6a280c0 broke the build...
specifically building AGAINST efl.
2017-11-08 15:05:11 +09:00
Cedric BAIL 50cc85f426 elementary: fix quicklaunch support. 2017-11-07 16:08:39 -08:00
Cedric BAIL e32dd07c9d elementary: refactor and clean efl_quicklaunch_prepare. 2017-11-07 16:08:39 -08:00
Cedric BAIL d171cf9639 elementary: fix ELM_MAIN macro to properly expose symbol. 2017-11-07 16:08:39 -08:00
Cedric BAIL fa3e1dc784 evas: rely on ecore to reset evas rendering thread on fork. 2017-11-07 16:08:39 -08:00
Cedric BAIL d125892601 evas: rely on ecore to reset upscaler thread on fork. 2017-11-07 16:08:39 -08:00
Cedric BAIL 73e6404b1a evas: rely on ecore to reset ecore_pipe for evas_async_events.
Ecore being a dependency of evas, let's make our life easier and
rely on ecore to tell us when to reset pipe due to a fork instead
of trying to guess.
2017-11-07 16:08:39 -08:00
Cedric BAIL ee65414ef6 ecore: introduce ecore_init_ex/ecore_shutdown_ex to propagate argc,argv properly. 2017-11-07 16:08:39 -08:00
Cedric BAIL 3d72cb8da3 ecore: report startup time of the main loop with EFL_FIRST_LOOP environment variable. 2017-11-07 16:08:39 -08:00
Cedric BAIL dd40079185 ecore,elementary: move startup time accounting in ecore. 2017-11-07 16:08:39 -08:00
Cedric BAIL 25b6a280c0 elementary: move Efl new general purpose API to efl_general.h 2017-11-07 16:08:39 -08:00
Carsten Haitzler ede0587887 efl net - handle proxy helper fails better and abort proxy lookups
if proxy fails are too many then give up on queued lookups as they
likely will continue. i noticed a process continually spawning efl net
proxy helper because one queued lookup failed and could be looked up
so it kept trying again and again.

@fix
2017-11-07 22:42:49 +09:00
Jean-Philippe Andre 528dfce251 slider: Export the part class
It needs to be exposed for things like c++ and others to work.
2017-11-07 22:17:04 +09:00
Jean-Philippe Andre 8aeccdb7a1 slider: Advertise indicator part in the EO file
There are 3 other indicator APIs that aren't in the part class... why?
2017-11-07 22:00:43 +09:00
Jean-Philippe Andre 0076f54112 evas: Yet another OSX build fix...
Please tell me this is the last one
2017-11-07 21:53:45 +09:00
Sungtaek Hong 439fbe4bcb efl_ui_radio: keep radio state when theme is changed
Summary:
during elm_widget_theme_apply() state was set to off when state is on.
@fix

Test Plan: change locale/theme when a radio is on.

Reviewers: jpeg, cedric, woohyun

Differential Revision: https://phab.enlightenment.org/D5432
2017-11-07 21:08:40 +09:00
Jean-Philippe Andre 12fa8caec5 evas: Another attempt at fixing OSX build
Build failed with LKI not found, as a symbol, but it's a macro.
Copy & pasted from evas_common_private.h
How can this work on one platform and not another? I don't get it...
2017-11-07 20:18:52 +09:00
Bryce Harrington 70f7f88eab eina: Fix spelling errors in documentation (matrixsparse..module)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5425
2017-11-07 09:03:57 +00:00
Carsten Haitzler 3790c4d47a eina freeq - make it clear that content is invalid on submission
and that the free function cannot access content of the pointer
(unless the pointer memory size is 0).
2017-11-07 17:36:57 +09:00
Carsten Haitzler eb67a08c8d eo - fix freeq usage to not use freeq for a vtable cleaning
the freeq can't allow things to access the content of the pointer
because the content canbe written over by canary handling qhen
submitted to the freeq. clear it inline then just submit the final
pointer to the freeq.

@fix
2017-11-07 17:36:57 +09:00
Carsten Haitzler 784411800b elm win - note need for other display system code... 2017-11-07 17:36:57 +09:00
Amitesh Singh d6c9b37925 Efl.Ui.Slider: implement Slider.part & Ui.format functions
indicator_format_set/get & indicator_format_function_set are
now legacy APIs.
indicator format can be set by using generic Ui.Format function
e.g.
efl_ui_format_string_set(efl_part(sliderObj, "indicator"), "1.0%f");
2017-11-07 17:13:44 +09:00
Jean-Philippe Andre 80b0ef7537 elm: Fix make check (code_widget)
elm_code_widget is causing a lot of trouble as it's relying on internal
access to elementary, without being built as part of elementary.so. Many
EAPI symbols are exported that shouldn't need to be, as they are only
internals of elm.
2017-11-07 14:59:01 +09:00
Jean-Philippe Andre a438e9382c evas: Fix make check
Because of this I couldn't test my previous patches properly and now
realized that I also broke make check... >_<

See D5419
2017-11-07 14:57:14 +09:00
Jean-Philippe Andre d39bbc1491 elm: Create legacy widgets with elm_legacy_add
This will be used to solve issues around style_set:
if the widget is legacy or pure eo we may need to select a different
style. So in the constructor we need to know whether we are legacy or
eo. Note that calling style_set in finalize only is too late as we would
lose information such as efl_text_set() called inside efl_add().
2017-11-07 14:50:31 +09:00
Jean-Philippe Andre 6cea4993e0 elm: Don't do anything before construction
Obviously ui.win is still the ugly exception.
2017-11-07 14:43:22 +09:00
Jean-Philippe Andre ee90f72a76 elm: Call efl_access_type_set after construction
I don't think it is necessary to call this before construction, and that
could instead lead to issues. It's just weird overall.
2017-11-07 14:43:22 +09:00
Carsten Haitzler 6a47c2243e efl ui win - make win centering work with multiple screens
this should fix T6323
@fix
2017-11-07 13:53:27 +09:00
Vitalii Vorobiov d98e2323ad vg_common: property apply "objectBoundingBox" morphings to radial gradient
When objectBoundingBox flag is set up, all gradients should morphed into
multiple gradients for every entity that has gradient to be applied on
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 73bfd4f04d efl_gfx_path: fix typo in _path_bounds_get
Wrong position was used while going through the array of
points

@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov a44daaa394 ector: use cairo_pattern_add_color_stop_rgba in gradient_radial
It actually invoked SIGSEGV when trying to load SVG file with Radial
Gradient

@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 7d9c1256a3 vg_savers/svg: empty (for now) module that will save svg in original file
Just as a starter to make a working background that, later on, will go
through Svg_Node's and build a certain source code to be saved in SVG
picture as a file
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 3f75c92ca9 evas_vg_cache: load svg from any file, not from defined only
so it doesn't only load from eet or edj only
but also from those any extensions who is ACTUALLY eet, but named as,
for example, like, "file_with_svg.dev"

@fix
2017-11-07 11:54:08 +09:00
Jean-Philippe Andre d4a3d2f5de evas: Fix invalid header protector
clang is smart enough to warn about this.
I've mentioned it multiple times...
2017-11-07 11:54:08 +09:00
subhransu mohanty b038d7df25 Remove evas internal dependency from the evas_font module
Summary:
dev branch : devs/subhransu/font

The Final goal is to move the evas_font module to ector so that both ector and evas can reuse the code.
make the api simple so that sam eapi can be used by evas_textblock and ector text.

This is the 1st stage to achive that gola, first remove the evas internal dependancy as much as possible before moving to ector library.

Reviewers: jpeg, raster, herdsman, cedric, id213sin

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5419
2017-11-07 11:34:53 +09:00
Jean-Philippe Andre 066f2c5cb7 evas: Add some crash prevention checks
This could happen if objects still have references while evas is being
shut down (a bad situation).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre ccc3efd77d elm: Fix examples/tests using elementary_config
elementary_config.h should not even exist. It's been hijacked as a
private header for elementary, but all "real" configuration is stored in
efl's main config.h now.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 4f98b54915 cxx: Add beta define to Evas.hh
This is probably temporary as well, but it's necessary to make examples
compile (with rectangle).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 5f5325ea33 cxx: Fix binding temporarily (efl/interfaces)
This uses the new cref keyword instead of inout, as the c++ code has no
access to the internals of struct Efl.Text.Cursor.Cursor

Something tells me cref may not be the perfect solution here (we lose
information on whether this is in, out or inout).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre c490392ee6 cxx: Fix ifdef protections in function impl
Mote: for protected we should use "protected:" if that is somehow
possible.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre e7009b77a2 cxx: Add experimental "easy" way to use wref
I hid it behind ifdef for now as I'm very much unsure of what I'm doing.
This whole modern C++ thing is still weird to me :)

Prerequisite:
 #define EFL_CXX_WREF_EASY

This allows constructs such as:

  auto wobj = obj._get_wref();
  std::cout << wobj->text_get() << std::endl;
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 73ec85aeff cxx: Add _get_wref() convenience to all classes
This allows constructs like:

  auto w_obj = obj._get_wref();
  auto cb = std::bind([w_obj]() {
    auto o = w_obj.lock();
    if (!o) return;
    o->call();
  });
  event_add(..., obj, cb);

Note: I don't like how those wref work. Close to c++ wref but far from
EFL wref.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 9c9278cd45 cxx: Fix a few examples
- Calendar: Some examples can't be ported. Not good.
 - Toolbar: Needs the new API to be completed.
 - Clock: Crashes at runtime.

Ping @felipealmeida
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 3f64dcc521 cxx: Place beta API declarations behind ifdef
NOTE: protected APIs are placed behind ifdef as well in the
implementation file. This makes sense since the define is required for
the C code to compile, but this isn't what @protected means.
2017-11-07 09:57:24 +09:00
Chris Michael 12947e01e8 evas-object-main: Fix potential null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). As such, we should not be calling
_event_animation_object_get with a null object so add a null check here.

Fixes Coverity CID1381713

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:17:29 -05:00
Chris Michael 6c76fdb824 evas-object-main: Fix null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). The _all_animation_objects_cancel function
directly dereferences the obj parameter passed into it, so lets null check it
before calling that function.

Fixes Coverity CID1381711

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:13:08 -05:00
Chris Michael 04d1fe7299 evas-object-main: Fix null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). The _all_animation_objects_cancel function directly
dereferences the obj parameter passed into it, so lets null check it
before calling that function.

Fixes Coverity CID1381710

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:10:50 -05:00
WooHyun Jung 68b366c831 efl_ui_calendar: apply efl_ui_focus_composition 2017-11-06 16:28:29 +09:00
Youngbok Shin a386597ad9 evas textblock: handle ellipsis when text's height exceed its area by "br"
Summary:
Textblock's ellipsis feature only worked when text's width exceeds its area.
So, it didn't work when text's height exceeds its area by "br" tags.
This patch will do ellipsis when only ellipsis=1.0 is set.
@fix

Test Plan: make check

Reviewers: herdsman, raster, cedric, jpeg, sohyun

Reviewed By: raster

Subscribers: woohyun

Differential Revision: https://phab.enlightenment.org/D5412
2017-11-06 11:29:43 +09:00
Youngbok Shin de9f0aff57 edje: don't return negative width and height from _parts_extends
Summary:
It should return width and height with positive values or zero.
@fix

Test Plan: make check

Reviewers: raster, jpeg, cedric

Reviewed By: raster

Subscribers: jiin.moon

Differential Revision: https://phab.enlightenment.org/D5422
2017-11-06 11:06:41 +09:00
Cedric Bail 769a970be0 eo: fix typo.
Thanks Gustavo.
2017-11-04 13:26:21 -07:00
Cedric Bail b7066e3352 eo: add helper to manipulate Eo object as Eina_Value. 2017-11-03 15:31:31 -07:00
Cedric Bail a1e9497461 eo: refactor use of efl_replace. 2017-11-03 15:31:31 -07:00
Cedric BAIL e891a01749 eina: add a function return a reference to a copy of Eina_Value. 2017-11-03 15:31:30 -07:00
Andy Williams 624b960155 elm_code: Trying some markdown syntax, this is complex 2017-11-03 21:05:08 +00:00
Andy Williams 2b3e462858 elm_code: Trying some markdown syntax, this is complex 2017-11-03 21:03:58 +00:00
Daniel Kolesa 0dbbb18171 eolian: disallow ptr() on things that are already pointer-like
This disallows deeply nested pointers, you can only explicitly
ptr() on types that are strictly value types.

For a few cases where it was necessary to override this behavior,
you can use legacy(ptr(x)) as a temporary measure.
2017-11-03 15:30:10 +01:00
Cedric Bail e5d1cc731a ecore_evas: always find a source for ticking legacy animator.
As we do not know when a window won't be able to tick, and we do
not know which window a legacy animator is attached to, we require
all windows to tick as often as they can and only generate one tick
per loop run.

This might need more adjustement especially with multi output.
2017-11-02 15:26:08 -07:00
Andy Williams 82b0da0c8a Correct struct labelling
Avoids linking every occurrence of 'The'
2017-11-02 20:57:47 +00:00
Daniel Kolesa 4f5b72a3ed eo files: convert various to use @cref 2017-11-02 16:41:01 +01:00
Chris Michael 5332f3355b efl-ui-focus-manager: Remove set but not used variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-02 10:05:56 -04:00
Daniel Kolesa 27929f9467 elm radio: fix build of things that don't enable eo APIs 2017-11-02 14:48:52 +01:00
Daniel Kolesa 263c3ac2ae eio: properly mark array contents as ptr 2017-11-02 13:53:14 +01:00
Daniel Kolesa cf63573e73 eolian: only allow reference (ownable) types in containers 2017-11-02 13:51:02 +01:00
Amitesh Singh 225b704651 Efl.Ui.Radio: remove value{} api
Efl.Ui.Nstate already implements value{}.

@fix
2017-11-02 17:28:48 +09:00
Cedric BAIL 83493bba73 ecore_evas: if an async rendering is still going on, there won't be a new one starting. 2017-11-01 15:33:44 -07:00
Cedric BAIL 925d558780 ecore_evas: do not propagate drawing change blindly from sub surface to parent.
It is not because a round of rendering happen for a child, that it result in
actually drawing anything in the parent. The parent will always be aware of
the rendering request of the sub surface and we should only track what the
parent think.

T6049

Tested-by: Derek Foreman <derekf@osg.samsung.com>
2017-11-01 15:32:36 -07:00
Sungtaek Hong 5f7710f561 efl_ui_radio: remove some legacy code
Summary:
This uses constructor/destructor instead of group_add/group_del.

Note: finalize can't be used for theme loading as any action done
inside
efl_add(...) would be lost (eg. part text set).

Test Plan: 1) run elementary_test -to radio

Reviewers: jpeg, woohyun, cedric

Subscribers: akanad

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-01 10:34:45 -07:00
Chris Michael 1ed8e4c84e evas: Minor formatting fixes
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 12:38:58 -04:00
Marcel Hollerbach f2da8a7f54 efl_ui_focus_manager: remove strange naming of a function
this is just normal next or prev, the prepare is done on the caller side
now
2017-11-01 15:26:52 +01:00
Marcel Hollerbach 08d104498c efl_ui_focus_manager: improve debug informations 2017-11-01 15:26:52 +01:00
Chris Michael 9021c752cb ecore-drm2: Fix issue of not being able to set output mode
If we pass in screen geometry here when trying to set an output mode,
we can encounter "out of memory" errors from libdrm with outputs
that have a high resolution. As it turns out, we should be passing 0, 0 for
the x/y values when trying to set an output mode.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 08:52:03 -04:00
Daniel Kolesa b7ebc1cd25 efl_ui_win: revert accidental override remove 2017-11-01 13:40:38 +01:00
Lukasz Stanislawski 5c997b3aaa elm: mark access interfaces as beta
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5365
2017-11-01 21:31:46 +09:00
Jean-Philippe Andre 824792f09d elm: Major cleanup of EO files
This prevents legacy EO classes from being exposed through .eo.h headers
or .eo in share/eolian/includes. Also removes a slew of useless xxx_eo.h
intermediate headers.

Notes:
 - elm_systray has no proper API: it's not clear if the EO API should be
   released (in which case it needs to be renamed to efl_something) and
   there is no legacy API to create a systray object.
 - Some files have been placed in a "FIXME" section, as I believe they
   are necessary within EO land, but at the same time still don't
   conform to the interfaces (eg. name starts with elm_).
 - elm_interface_scrollable is required by photocam. This means photocam
   needs to be adapted to fit the EO scroller API (still to be
   completed, I believe).

Bugs:
 - This breaks most C++ examples. I KNOW. And I'm working on it.

Ref T5301
2017-11-01 21:23:31 +09:00
Daniel Kolesa f851fa511e eolian: add part validation (including dup check with funcs) 2017-11-01 13:19:33 +01:00
Daniel Kolesa b4705ea968 elementary: use @cref where possible 2017-11-01 12:50:36 +01:00
Daniel Kolesa eab6f009e2 eolian: add @cref as alternative to @in
This is a "pass by reference to const" equivalent. There is no explicit pointer
and currently it's the same as ptr(const(x)) on the type. However, it is also
usable on properties.
2017-11-01 12:40:39 +01:00
Godly T.Alias 0496b7988a Genlist Item Pin Feature
Summary:
**@feature** T6241

This feature enables genlist to pin an item to viewport which will
be available always for user to view/select.

**Use Case**:
In a big list of music, most times when user finds a song which they
like, before playing that they may want to go through the entire list
to check whether there is some other good songs, but
after seeing the entire list user have to again scroll back to the
position of item which they liked to play it then.
In this case item pinning can be used, so that the item
which they want to keep for future selection can be pinned
and then it will remain in viewport, finally when user want to do
operation on item, it will be readily available in viewport.

Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>

Test Plan: Elementary Test -> Genlist -> Double click on items to enable/disable pinning

Reviewers: raster, cedric, prince.dubey, SanghyeonLee

Subscribers: rajeshps, jpeg, shilpasingh

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5340
2017-11-01 16:11:30 +09:00
JinYong Park 9d946fa839 Ecore_Imf: fix wrong annotation and enum name
Summary:
There are wrong annotation about version and wrong enum name
so fix that.

Reviewers: jpeg, cedric, akanad

Differential Revision: https://phab.enlightenment.org/D5403
2017-11-01 13:09:18 +09:00
JinYong Park a1935164fe Eet: fix wrong doxygen definition
Summary:
Eet_Image_Encoding and Eet_Colorclass is from enumeration in Emile,
but it's definition is typedef, not enum.

It makes broken link like below webpage.
https://docs.enlightenment.org/efl/current/group__Eet__File__Image__Group.html

In above page, Eet_Image_Encoding is not linked.

So doxygen documentation should be changed to typedef.

Reviewers: cedric, jpeg, myoungwoon, conr2d

Differential Revision: https://phab.enlightenment.org/D5411
2017-11-01 13:08:58 +09:00
JinYong Park b44889305a Elm_Entry: Add annotation to unnamed enum
Summary:
There are unnamed enumeration in Elm_Entry,
so add annotation and names like D5376 (https://phab.enlightenment.org/D5376)

Reviewers: jpeg, cedric, myoungwoon

Differential Revision: https://phab.enlightenment.org/D5401
2017-11-01 13:08:36 +09:00
Bryce Harrington 054e817572 eina: Fix spelling errors in documentation (log..matrix)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5417
2017-11-01 11:36:50 +09:00
Jean-Philippe Andre 9cec14918c evas: Move evas_canvas.eo to legacy-only
This isn't meant to be installed. The canvas API in EO is based around
the interfaces Efl.Canvas and the widget Efl.Ui.Win. Anything else is
not EO (eg: ecore_evas, evas, ...)

Note: evas_canvas3d is the last remaining thing that is installed along
EO files, but those are all beta APIs.
2017-11-01 11:22:33 +09:00
Jean-Philippe Andre b8ca1272ae evas: Add seat argument to 'pointer_inside' (EO)
This merges pointer_inside and pointer_inside_by_device.
Affects only EO.
2017-11-01 11:22:33 +09:00