Commit Graph

15837 Commits

Author SHA1 Message Date
Mike Blumenkrantz f9ef210005 efl_gesture_manager: free hash in destructor
every canvas object has had this leak for some time:

==25217== 64 bytes in 1 blocks are definitely lost in loss record 1,669 of 3,515
==25217==    at 0x4C2FB6B: malloc (vg_replace_malloc.c:299)
==25217==    by 0x688D839: eina_hash_new (eina_hash.c:755)
==25217==    by 0x688D940: eina_hash_string_superfast_new (eina_hash.c:791)
==25217==    by 0x6265F8C: _efl_gesture_manager_efl_object_constructor (efl_gesture_manager.c:66)
2018-02-13 17:23:44 -05:00
Daniel Kolesa 0745ec922b eolian: properly initialize warned (to avoid random parse failures) 2018-02-13 21:48:46 +01:00
Chris Michael a78dc2d816 ecore-drm2: Add API functions to get/set output relative mode
These API functions will be used inside Enlightenment in order to
determine the proper extended screen size based on outputs relative
position.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-13 11:44:11 -05:00
Chris Michael 45bffff535 ecore-evas-drm: Include Evas_Internal header
We need to include this header so that we can use the new
efl_canvas_output functions

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-13 11:44:01 -05:00
WooHyun Jung b5a574f6e2 efl_ui_nstate: missed to add private.h 2018-02-13 23:26:14 +09:00
WooHyun Jung d679425c48 efl_ui_nstate: make "changed" callback is called properly
- "changed" callback is not called when theme_apply is called
- elm_check_state_set does not call "changed" callback to keep
  backward compatibility
2018-02-13 22:50:14 +09:00
WooHyun Jung 5d5538de5c Revert "elm: do not call "changed" callback when setting style"
This reverts commit b1ee35e35c.
2018-02-13 19:20:19 +09:00
WooHyun Jung 23877f2c44 Revert "Efl.Ui.Nstate: do not call "changed" callback"
This reverts commit fd8e9f9c4e.
2018-02-13 18:39:20 +09:00
Daniel Kolesa c82b30cc3c eolian: print all duplicate warnings before aborting build
Instead of aborting at the first warning, accumulate the warnings
and stop at the end of validation.
2018-02-13 10:17:41 +01:00
Carsten Haitzler 4195242c9b elm focus ... set focus in focus in if focus is not already on something
let's actually set focus in focus_in on window (ecore evas) IF focus
is not set. this seems to make terminology still work...
2018-02-13 18:12:11 +09:00
Carsten Haitzler 4eb5b2d3e8 efl ui win - if job runs after destruction of evas so dont flush pending 2018-02-13 15:28:47 +09:00
Carsten Haitzler 5db6b05187 elm - dont get top widget for non-ui objects 2018-02-13 15:21:49 +09:00
Carsten Haitzler 93e833d8cd efl ui win - fix focus break for terminology (at least)
at least terminology was broken by this. perhaps other efl apps. if an
efl app has decided to manually play with focus itself, like set focus
to some obj then leav ie, this line breaks that and interferes with
the object focused whenever the window gets focus set. if there is a
focus manager at least this is a new thing and so let the focus
manager set focus, but dont set old evas focus.

this fixes the break added in 56beb861e8
2018-02-13 13:46:38 +09:00
Wonki Kim 8988a02744 evas_polygon: Fix segfault while creating the object
Summary:
Calling evas_object_polygon_add(NULL) cause segmentation fault,
because there has been removed null check logic in evas_object_polygon_add(0ff7429)

This patch fix the problem.

Test Plan:
	1. Call evas_object_polygon_add(NULL)
	2. Check segmentation fault happen

Reviewers: cedric, jpeg, woohyun, jypark

Differential Revision: https://phab.enlightenment.org/D5801
2018-02-13 13:15:19 +09:00
Mike Blumenkrantz 536bfb7613 evas_vg: implement interpolate from Efl.Gfx.Path 2018-02-12 17:14:34 -05:00
Mike Blumenkrantz 09f2fab144 interfaces: merge all bounds_get methods into efl.gfx.path
ref 884fc35160
2018-02-12 16:59:48 -05:00
Mike Blumenkrantz 27ae060633 evas3d: use a type setter function with finalize instead of a custom constructor
resolves a conflict with the 'constructor' method name
2018-02-12 16:47:41 -05:00
Mike Blumenkrantz 87d741052b evas3d: add "unknown" node type for use with errors 2018-02-12 16:47:40 -05:00
Mike Blumenkrantz f85325d924 interfaces: remove Efl.Text.Properties
this is provided in Efl.Text.Font
2018-02-12 16:38:51 -05:00
Mike Blumenkrantz 05200163ed efl_text_font: copy docs from efl_text_properties 2018-02-12 15:58:00 -05:00
Mike Blumenkrantz a03bcd34af efl_vg: use efl.object's name property instead of implementing a new one 2018-02-12 15:56:46 -05:00
Mike Blumenkrantz 884fc35160 ector: rename ector_renderer "bounds_get" method to "boundary_get"
this conflicted with a method from Efl.Gfx.Path
2018-02-12 13:47:15 -05:00
Mike Blumenkrantz 11d5bac1d3 ector: fix property/method name conflict for "fill"
Shape implements a property, sw/gl/cairo implements a method

rename method to op_fill
2018-02-12 13:47:15 -05:00
Mike Blumenkrantz adc2be188c eolian: convert all of cedric's tabs to spaces in .eo files 2018-02-12 12:59:05 -05:00
Daniel Kolesa 09bcf9e5fd eolian: stop build with EOLIAN_WARN_FUNC_DUPLICATES > 1 2018-02-12 18:56:38 +01:00
Derek Foreman 563dba9d60 ecore_wl2: Send window hide in response to xdg popup done
Clients should be sent this event when the compositor sends popup done.
2018-02-12 11:27:50 -06:00
Marcel Hollerbach 56beb861e8 efl_ui_win: move inital focus set to focus_in handler
it seems that focus changes to FOCUS=FALSE are causing autodel windows
to kill themself, so we only set the focus on the window if the window
manager calls focus in AND we dont have anything to focus and nothing is
focused yet.
2018-02-11 18:04:06 +00:00
Carsten Haitzler dc70d5cb55 edje - entry - fix empty item handling
tjhis should fix empty items which might have a null item string...
deal with it

fixes T6668

@fix
2018-02-11 19:20:46 +09:00
Carsten Haitzler 43ac3c0b4c eina - tiler -= return true if rect alreadt there as its not a failure
docs say return true on succesas, false on failure. adding a rect we
already added is not a failur. it's an optimization to a NOP. so fix.
this was brought up by and fixes T6669 ... but in the opposite way.
2018-02-11 15:55:13 +09:00
Carsten Haitzler f609d6dc99 elm - fix new em_config func prototypes in header to have real param decl 2018-02-11 14:53:28 +09:00
Carsten Haitzler e96532f65c efl ui format - fix format checking to be correct
the format string checking was just ... wrong. it didnt' handle %%. it
didn't handle constant strings with no format in them... now it does.

fixes T6697

@fix
2018-02-10 16:44:38 +09:00
Carsten Haitzler d26f2237f1 elm progressbar - fix val set
set initial min and max to 0 and 1 respectively so val set works at
the start...

fixes T6697

@fix
2018-02-10 16:44:35 +09:00
Carsten Haitzler 1d5de2e58e efl ui progressbar - no space between value and percent in default fmt
do you write 20 % or 20% ? :) no space by default. fix.
2018-02-10 16:44:03 +09:00
Derek Foreman 712daf38db elm: Fix double shutdowns of ecore_x and ecore_wl2
This is now done elsewhere.  wayland clients were ERRing on shutdown.

ref 9cf61c2f6d
2018-02-09 11:25:41 -06:00
Derek Foreman a221bec6d0 ecore_wl2: Destroy offscreen event handler in surface destroy
Or we can get the event after destroying the surface and crash.
2018-02-09 09:49:52 -06:00
Sungtaek Hong b380e63b07 efl_part: call Efl.Text of each class' part
Summary:
Macro ELM_PART_TEXT_DEFAULT_IMPLEMENT calls
super class' Efl.Text interface, rather than this class.

Reviewers: jpeg, woohyun, Jaehyun_Cho, herdsman

Subscribers: cedric, id213sin

Differential Revision: https://phab.enlightenment.org/D5799
2018-02-08 11:37:51 +02:00
Sungtaek Hong 08d86d3941 efl_part: use efl_ui_widget's default_part_get
Summary:
efl_part macros are using each widget's internally defined
default_part_get() functions to get default part name.
This might potentially cause errors when future widgets
inherits the widget but not overriding Efl.Text.text and
Efl.Content.content.

Reviewers: jpeg, cedric, woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5797
2018-02-08 14:53:59 +09:00
subhransu mohanty 48433efc43 ector: Updated the ector_buffer_pixels_set() api with stride info
Reviewers: jypark, jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5795
2018-02-08 14:44:29 +09:00
Mike Blumenkrantz 80cc3f230d elm: remove ecore-x init from quicklaunch post-fork
this is invalid for basically every possible case. allow components
to naturally call this function as needed

@fix
2018-02-07 13:32:08 -05:00
Mike Blumenkrantz b7bec2ba9a elm: call ecore_app_args_set() after quicklaunch fork
ensure that apps get expected behavior when calling args_get()

@fix
2018-02-07 13:30:37 -05:00
Mike Blumenkrantz 9cf61c2f6d elm: move ecore-x and ecore-wl2 connection init to selection manager
this seems to be the only place where the related components are
explicitly used

neither of these components have fork-safe connections, so there is no
benefit to calling them during quicklaunch init
2018-02-07 12:12:22 -05:00
Mike Blumenkrantz c4e5bbe441 elm: print error if setsid() fails during quicklaunch fork 2018-02-07 12:12:22 -05:00
Mike Blumenkrantz d55fc77cfa eio: remove broken pid-based monitor reset copied from ecore-file
this has no technical basis for existing and should be handled by
individual monitor backends

@fix
2018-02-07 12:12:22 -05:00
Mike Blumenkrantz 6a500331bd ecore: fix event flushing to not erase+leak events
stealing the message data here prevents events which aren't being flushed from
ever being usable again and is unnecessary since the free callback will be
automatically called during the destructor

ref 5dd52fd09b
2018-02-07 12:12:22 -05:00
Jaehyun Cho 000d43b29e elm_part_helper: Fix to use registered default text part 2018-02-07 20:52:12 +09:00
Shinwoo Kim fd8e9f9c4e Efl.Ui.Nstate: do not call "changed" callback
Before solving following problem in Efl.Ui.Check

https://phab.enlightenment.org/T6673

The changed callback is called with opposite value,
if application is using Efl.Ui.Check with state pointer.

The reason is that the changed callback is called in
efl_ui_nstate_activate, and the value refered by state pointer
is changed only after the efl_ui_nstate_activate is called.

static void
_activate(Evas_Object *obj)
{
   EFL_UI_CHECK_DATA_GET(obj, sd);

   efl_ui_nstate_activate(obj);
   if (sd->statep) *sd->statep = efl_ui_nstate_value_get(obj);
2018-02-07 16:25:36 +09:00
WooHyun Jung d8aa950a38 evas_object_textblock: add null checks for EAPIs 2018-02-07 14:19:46 +09:00
Myoungwoon Roy, Kim b203ff1878 ecore_event: Fix a break of consistency of return data
Summary:
This patch fixes a break of consistency of return data from ecore_event_del.
Before EFL 1.20, when calling ecore_event_add(ECORE_EVENT_SIGNAL_USER, event_data, NULL, &data);
The user data(data) is saved at event->data. and when user calls ecore_event_del(event_handler),
ecore_event_del returns event->data. However, current ecore_event_del returns pd->ev.
I think it is ABI break.

Test Plan: Execute test suite

Reviewers: cedric, raster, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5786
2018-02-07 13:50:24 +09:00
Chris Michael e93f7bce30 ecore-drm2: Ensure output changed event is sent for removed outputs
If an output gets disconnected, we would still like to be notified of
that. In the _outputs_update function, we mark an output as
disconnected by setting output->connected and output->enabled to
FALSE. With this line in place (in the output_event_send function) we
would never get notified if an output was disconnected.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-06 13:01:25 -05:00
Shinwoo Kim b1ee35e35c elm: do not call "changed" callback when setting style 2018-02-06 22:40:11 +09:00
Amitesh Singh 0aca43be23 efl.ui.progressbar: add checks for min & max value
this improves the validity check for min & max values
provided from user side.
2018-02-06 22:35:33 +09:00
Jean-Philippe Andre 27c0d53f9b efl_ui: Disable includes that don't compile
Efl.Ui.Text:
The EO file contains a lot of references to legacy Elm types, which are
defined in elm_general. They should be checked and moved over to
efl_ui.eot if necessary.

Efl.Ui.Multibuttonentry:
This class was originally supposed to be based on a Model Item but as of
now the API is still uncertain, so MBE itself hasn't been worked on
more. Disable this from EO-only apps until its API is fixed.

Ref T6666
2018-02-06 21:27:37 +09:00
Hosang Kim 24b0ae0df5 ecore/evas: add NULL checks to handle argument is NULL.
Summary:
ecore_pipe_read_fd/ecore_pipe_write_fd
evas_engine_info_set/get

Reviewers: woohyun, Jaehyun, Jaehyun_Cho, jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5790
2018-02-06 17:58:44 +09:00
WooHyun Jung 1accec4ce1 evas: add null checks to handle when e->engine.func is not set yet 2018-02-05 22:19:44 +09:00
Shinwoo Kim bb5f4aa857 eina_tiler: fix typo of rect comparing 2018-02-05 20:02:06 +09:00
Mike Blumenkrantz 26d73cbae1 eio: make inotify monitors fork-safe
@fix
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 5760b3f335 eeze: simplify watch code and make it fork-safe
avoid reads from parent process's udev fds
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 7927cfefe3 ecore-file: make monitoring truly fork-safe
add a fork reset callback and attempt to preserve existing monitors
during reset

@fix
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 4e14ba3f48 elm: call ecore_event_init() during init
events from this component are used internally in elm, don't rely on
other components to do it

@fix
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 95a339733a eldbus: make connections fork-safe
after a fork, any existing connection objects can no longer be used,
but it's up to the user to destroy them. internally, this prevents
existing connections from ever being returned as valid connections
and creates new ones after a fork

also destroy fd handlers for connections to ensure that no data is
accidentally clobbered before the connections are cleaned up
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 10ce0cbd8a efreet: reset ipc connection after fork
ensure that existing connection is not reused
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz aaf3659faf eldbus: do not require error return when adding/removing signal matches
this forces the functions to be synchronous and blocks (potentially forever)
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 7f0a4154f5 efl-wl: add function for passing ecore-exe flags to launched exes
@feature
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 32c293bea4 efl-wl: no need to check exe tag on app del, just remove pid always 2018-02-02 16:59:44 -05:00
Mike Blumenkrantz e8d24596a6 efl-wl: add functions for managing allowed client pids
@feature
2018-02-02 16:59:44 -05:00
Shinwoo Kim 3c38071745 elm: fix typo - remove line to debug 2018-02-02 19:07:04 +09:00
Shinwoo Kim 610eee1e52 elm: use Dbus securely
The Efl.Access.Attribute is using key and value.
The value could be NULL. If the value is NULL, then following error occurs.

*error:
arguments to dbus_message_iter_append_basic() were incorrect,
assertion "_dbus_check_is_valid_utf8 (*string_p)" failed
in file ../../dbus/dbus-message.c line 2712.
This is normally a bug in some application using the D-Bus library.
Array or variant type requires that type string be written, but end_dict_entry
was written.
The overall signature expected here was 'a{ss}' and we are on byte 3 of that
signature.
2018-02-02 18:56:58 +09:00
Radoslaw Cybulski cc2e43cc4b elm: fix for invalid attribute matching
Summary:
Fixes invalid attribute matching in at-spi's collection interface's GetMatches***
functions.

Reviewers: stanluk

Reviewed By: stanluk

Subscribers: lukasz.stanislawski, cedric

Differential Revision: https://phab.enlightenment.org/D5774
2018-02-02 09:05:13 +01:00
Daniel Hirt a89c9e037a Ui layout: fix another text retrieval line of code
This is a follow-up to a44ae48df811ff2bd085da86db1688c0f387efc4.Need to
undo the markup_get call, so that the correct code path
(_efl_ui_layout_text_set) is used. Legacy checks are in that code path.

ref T6642
2018-02-01 19:24:44 +02:00
Daniel Hirt a44ae48df8 Ui layout: fix latest attempt to fix markup retreival
Commits c07a40c745 and
429e19563d tried to fix markup retrieval by
creating a different code path for the setter and getter. However, legacy code
paths needs to be taken into consideration.
This commit fixes legacy widgets (like guide text that did not show any text
        in the entry at the top of 'elementary_test').

ref T6642
2018-02-01 13:48:03 +02:00
Carsten Haitzler 26833b8d28 efl ui did - dont segv if createicon func is not provided 2018-02-01 20:09:05 +09:00
Shinwoo Kim 8aaa350262 Use ERR instead of CRI if *DATA_GET* returns NULL
This patch set is for remains.
2018-02-01 14:20:57 +09:00
Shinwoo Kim 9f2e1d050f elm: Use ERR instead of CRI if *DATA_GET* returns NULL 2018-02-01 12:16:28 +09:00
Daniel Kolesa a6d0e787e4 eolian: no need to store 'parsed' table anymore either 2018-01-31 19:14:15 +01:00
Daniel Kolesa 8b1f2f34b4 eolian: simplify parsed checking 2018-01-31 19:06:37 +01:00
Daniel Kolesa f0877c9329 eolian: no need to track currently parsing file anymore 2018-01-31 18:13:29 +01:00
Daniel Kolesa b5794afa58 eolian: all dependency parsing is now deferred 2018-01-31 18:13:29 +01:00
YeongJong Lee d2df4b382f efl_ui_focus_parent_provider_gen: code refactoring
Summary: remove needless function call and else statement

Reviewers: bu5hm4n

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5732
2018-01-31 15:04:26 +01:00
YeongJong Lee f00000df5a efl_ui_focus_manager_sub: avoid a call to NULL
Summary:
we need to consider the manager change to NULL

@ref T6616

Reviewers: bu5hm4n

Subscribers: cedric

Maniphest Tasks: T6616

Differential Revision: https://phab.enlightenment.org/D5771
2018-01-31 14:29:18 +01:00
YeongJong Lee a20cacf53f elm_menu: avoid a call to NULL
Summary: the provider_find can be called before parent_set in constructor.

Test Plan:
1. EINA_LOG_LEVELS=eo:2 elementary_test -to menu
2. check that there is no warning message about efl_provider_find

Reviewers: jpeg, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5773
2018-01-31 14:29:12 +01:00
Marcel Hollerbach 2fc1d7e3c7 efl_ui_focus_composition: remove elements_flush
this can also be done when calling prepare_logical
2018-01-31 14:21:37 +01:00
Myoungwoon Roy, Kim 211093b7c5 ecore_event: Check for the valid type
Summary:
This patch checks for the valid types.
As mentioned API reference documentation, user must know its type before hand.
The type should be chedked like previous efl version and ecore_event_type_flush_internal()

Test Plan: Execute a ecore test suite.

Reviewers: cedric, raster, jpeg, stefan_schmidt, Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5776
2018-01-31 18:55:40 +09:00
Myoungwoon Roy, Kim e9d1a1e988 ecore_main: Check for the valid flag
Summary:
This patch checks for the valid Ecore_Fd_Handler_Flags.
The flags should be checked like previous verion because
There are no default handlings in case of out of Ecore_Fd_Handler enum values in other funcs.

Test Plan: Execute a test case

Reviewers: cedric, raster, jpeg, stefan, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5775
2018-01-31 18:55:40 +09:00
Amitesh Singh 98f38ac0f7 Efl.ui.progressbar: remove duplicate call
eina_value_set() was already getting called
2018-01-31 18:04:39 +09:00
Amitesh Singh c99b37ad47 Efl.Ui.Progressbar: implement range min max 2018-01-31 17:44:20 +09:00
Derek Foreman 90fecc7485 wl2_surface_dmabuf: Trim the buffer queue after a while
If we have more buffers than we need for 100 frames then drop the oldest.

This can happen if we're on a hardware plane and then removed from it, or
really whenever the compositor feels like holding onto a few frames.

Trimming the queue too soon could result in having to do a costly full
frame redraw, so we wait a while to make sure we don't need one again.

Having more frames than we need costs us a little every draw since we
always use the oldest available.  It also wastes memory.
2018-01-30 17:09:52 -06:00
Derek Foreman 879f248f08 ecore_wl2_surface: Flush surfaces for offscreen windows
When a surface leaves all outputs we can discard its buffers to save
memory.

Currently most compositors don't send leave events for iconify, so this
pretty much just saves us a cursor buffer under weston for now, but in
the future it could be used for freeing resources of offscreen (fully
occluded or iconified) windows.
2018-01-30 17:09:52 -06:00
Derek Foreman 9632c7b56c wl2_surface_dmabuf: improve surface flush
We used to abandon all buffers even if they were locked. This can't
actually free them until they're all released by the compositor.

Instead just free any buffer the compositor doesn't have locked, so we can
still re-use them when they're released without needing a full redraw.

There's probably room for additional cleverness here.  If we get a new
frame event before the buffer release we may want to keep it, and if we
get the release first we may want to abandon it.
2018-01-30 17:09:51 -06:00
Derek Foreman 1bd41aa3b6 ecore_wl2: Add new event for windows not displayed on any output
When a window leaves all outputs we can free its render buffers to save
memory.  This new event is generated when a window leaves all outputs.
2018-01-30 17:09:51 -06:00
Derek Foreman 8abac6da65 ecore_wl2: Track outputs a surface is present on
Keep a list of Ecore_Wl2_Output * a surface is present on.
2018-01-30 17:09:51 -06:00
Derek Foreman cc0cfb7822 ecore_wl2: Add internal _ecore_wl2_output_find
This finds the Ecore_Wl2_Output * for a given struct wl_output *
2018-01-30 17:09:51 -06:00
Mike Blumenkrantz da9eef6027 ecore: add function for prepending an event handler
@feature
2018-01-30 13:02:07 -05:00
Daniel Kolesa 5651b2e586 eolian: deferred parsing of inherits + better static checks
This change finally introduces deferred parsing of inherits to
Eolian, after a long time and many iterations. That means instead
of parsing inherits directly as part of the main file's parse pass,
they're pushed into a queue and parsed later. The validation engine
was modified to properly fill in the remaining info afterwards.

This may introduce breakages but I haven't noticed any. It also
properly unlocks cyclic dependency support in Eolian.

Additionally, this also introduces checks for duplicates in class
inherits (class Foo(Bar, Bar) is no longer possible) and it adds
stricter name checks, so you can no longer have a class Foo.Bar
and refer to it as Foo_Bar in implements. This was actually never
meant to be supported, but the check was previously broken.

@feature
2018-01-30 17:08:44 +01:00
Daniel Kolesa 7b643f6919 eolian: move impl/ctor fill to validation stage 2018-01-30 17:08:44 +01:00
Jaeun Choi c950b17a57 efl_ui_image: add missing NULL check 2018-01-30 21:21:35 +09:00
Jaehyun Cho c53cbc572e efl_ui_panes: Handle NULL object case 2018-01-30 19:50:08 +09:00
Jaehyun Cho 10342af920 elm_panes_legacy: Fix description of functions 2018-01-30 18:53:33 +09:00
Vincent Torri 1770059b8a Evil: remove "symlink" code (it was for .lnk files anyway...) 2018-01-30 16:52:24 +09:00
Vincent Torri 8f5029fbbc Eio: disable the symlink code on Windows 2018-01-30 16:52:24 +09:00
Vincent Torri 0c96d9e8cf Efreet_Mime: update comment about symlinks on Windows 2018-01-30 16:52:24 +09:00
Vincent Torri 78af66ffb4 Eina: ignore EINA_FILE_LNK on Windows 2018-01-30 16:52:24 +09:00
Vincent Torri ef0f0a50b2 Ecore_File: remove symlinks support on Windows (library and test) 2018-01-30 16:52:24 +09:00
Myoungwoon Roy, Kim 6bb2b8b402 ecore_timer: Check for the valid callback func
Summary:
This patch checks whether the callback function is valid or not.
Callback function must be set up for the class.

Test Plan: Execute test suite

Reviewers: cedric, raster, stefan, Jaehyun_Cho

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5762
2018-01-30 14:43:11 +09:00
Bryce Harrington 7f43866707 eina: Cleanup grammar in eina_hash doxygen
Summary:
Corrects some grammatical errors, and rephrases wording of some passages
for better clarity.  Also fix a few doxygen formatting inconsistencies.

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5764
2018-01-30 14:42:35 +09:00
Sungtaek Hong eb50ece082 edje_object: fix typo in EAPI edje_object_color_class_description_get
Reviewers: woohyun, jpeg, cedric, conr2d

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D5766
2018-01-30 14:25:39 +09:00
Sungtaek Hong 30593b19ba Efl.Ui.Image: remove previous image when NULL is set
Summary:
when Efl.Ui.Image has an image,
         efl_file_set(efl_added, NULL, NULL) is not working.
         I think this should remove prevous image and go back to empty image.
         @fix

Reviewers: jpeg, cedric, eunue, woohyun, Jaehyun_Cho

Subscribers: Blackmole

Differential Revision: https://phab.enlightenment.org/D5742
2018-01-30 13:55:51 +09:00
Sungtaek Hong 596c88f899 Efl.Ui.Check: fix changed callback is called twice
Summary:
Efl.Ui.Check inherits Efl.i.Nstate which also calls changed callback.

fixes T6639

Test Plan: run elementary_test->check->click 'icon not resizable'

Reviewers: woohyun, cedric, jpeg, singh.amitesh

Reviewed By: singh.amitesh

Maniphest Tasks: T6639

Differential Revision: https://phab.enlightenment.org/D5768
2018-01-29 22:54:23 +09:00
Sungtaek Hong dc28a344cc elm_index: fix documentation of wrong param name
Reviewers: jpeg, woohyun, eunue, conr2d, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5767
2018-01-29 21:17:26 +09:00
Sungtaek Hong 09d3d5b85a efl_ui_bg_widget_legacy: ignore ELM_SCALE
Summary:
For legacy efl_ui_bg_widget or elm_bg, ELM_SCALE is ignored
when calculating internal image size.

Test Plan:
compare elementary_test->bg option with
ELM_SCALE=2.0 elementary_test->bg option

Reviewers: woohyun, jpeg, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, id213sin

Differential Revision: https://phab.enlightenment.org/D5763
2018-01-29 19:31:39 +09:00
Shinwoo Kim 429e19563d elm: make elm_layout_text_set use efl_text_markup_set
The elm_layout_text_get is using efl_text_markup_get by following commit.

    commit c07a40c745
    elm: make elm_object_text_get return markup info as well.

    This commit solves following issue

    https://phab.enlightenment.org/T6642

    If I set object text as below
    elm_object_text_set(btn, "Some<br>text");
    then elm_object_text_get(btn) returns "Some text" not "Some<br>text".

So using efl_text_markup_set makes sense.
2018-01-29 12:25:18 +09:00
Marcel Hollerbach 97ec48434f efl_ui_focus_manager_calc: keep the entry for the redirect seperated
logicals on the focus stack can cause there a lot of confusion.

This fixes a missed focus out event from the entry in elementary_test
2018-01-27 13:01:20 +01:00
Derek Foreman 376d8d1e36 ecore_wl2: Make surface managers modular
This allows loading modules to handle wayland surfaces, and makes the
existing dmabuf manager a module.
2018-01-26 15:54:00 -06:00
Derek Foreman 3e230693e6 eina_module: Drop ridiculous ERR messages from module_list_load/unload
The documentation for these functions claims that passing a NULL array
results in doing nothing - that should also include logging nothing.

EINA_SAFETY_ON_NULL_RETURN() logs an ERR message and should be reserved
for usage when NULL is not actually a valid state.

Additionally, it's entirely possible to turn off EINA_SAFETY_CHECKS, at
which point these functions would stop behaving as the documentation
says they do.  Not great.
2018-01-26 15:54:00 -06:00
Derek Foreman 01aac084d7 ecore_wl2: Use wl_buffer_get in dmabuf_surface_post
This is the final place where this code was reliant on internal structures,
it now solely uses (beta) public api.
2018-01-26 15:54:00 -06:00
Derek Foreman 288b693ac4 ecore_wl2: fix ecore_wl2_buffer_wl_buffer_get
It was currently only used internally and had the side effect of
creating a new buffer instead of just returning the existing one.

Now it's useful to external callers, as it only returns the existing
wl_buffer and has no freaky side effects.
2018-01-26 15:54:00 -06:00
Derek Foreman 0fc4fa7156 ecore_wl2: Add surface_window_get api
One of the last remaining blockers for compiling dmabuf support as a
plug-in.
2018-01-26 15:54:00 -06:00
Derek Foreman fb3928ec96 ecore_wl2: Add API to remove surface managers
Someone might want to do this I guess.
2018-01-26 15:54:00 -06:00
Derek Foreman 03671c9c20 ecore_wl2: Add a way to register new surface managers
And use it for the existing dmabuf surface manager.
2018-01-26 15:54:00 -06:00
Derek Foreman 83f8db157e ecore_wl2: rename _surface_flush for consistency
It was originally thought that this could be common code for multiple
back-ends, but that doesn't really make sense now, so rename it to match
the other dmabuf functions.
2018-01-26 15:54:00 -06:00
Derek Foreman 07c41f48c4 ecore_wl2: Move private data allocation into back-end code
The backend should allocate its own private data and return it instead
of a bool.

This assumes all back-ends will need some manner of private data, which
is certanly true for the one back-end we provide.
2018-01-26 15:54:00 -06:00
Derek Foreman 044106c8a2 ecore_wl2: Move backend specific members into a private data struct
buffers and current buffers are really specific to the dmabuf backend,
another plug-in might not need them.
2018-01-26 15:54:00 -06:00
Derek Foreman 7c026c52cc ecore_wl2: Move surface size update into generic code
This didn't have to be in backend code in the first place.
2018-01-26 15:54:00 -06:00
Derek Foreman 4d430a98bf ecore_wl2: Add API surface_buffer_create
The specific surface code only needs these generic surface bits to pass
to buffer_create, so make a helper function for that instead of queries
for w, h, and alpha.
2018-01-26 15:54:00 -06:00
Derek Foreman e4122da211 ecore_wl2: Remove force from surface reconfigure
It no longer has any users or need to exist.
2018-01-26 15:53:59 -06:00
Derek Foreman e11bb10a4e ecore_wl2: Move smarts from surface_map to buffer_map
This simplifies the surface code so that it no longer needs access to
buffer structure members.
2018-01-26 15:53:59 -06:00
Derek Foreman 1a5e307f73 ecore_wl2: Add buffer_fit API and use it from surface code
This tries to resize the buffer's useable area to fit the specified size -
this is possible if the stride of the buffer is larger than the current
width.
2018-01-26 15:53:59 -06:00
Derek Foreman 7d81a16cdb ecore_wl2: Add buffer age inc and use it in surface code
Technically not necessary, since we could do this with get and set, but
it's a little more convenient to the user this way.
2018-01-26 15:53:59 -06:00
Derek Foreman dce3fcda86 ecore_wl2: Add buffer_age_set and use it in surface code 2018-01-26 15:53:59 -06:00
Derek Foreman e97a8cefe8 ecore_wl2: Add buffer_age_get API and use it in surface code 2018-01-26 15:53:59 -06:00
Derek Foreman ebcce5aefa ecore_wl2: Add API for setting buffer busy status and use it
Since surfaces will be managed by plug-ins, we need to make sure they
don't rely on internal structures.
2018-01-26 15:53:59 -06:00
Derek Foreman e3a3e02042 ecore_wl2: Add API for querying buffer lock status and use it
Since surfaces will be managed by plug-ins, we need to make sure they
don't rely on internal structures.
2018-01-26 15:53:59 -06:00
Derek Foreman 1c2bb7bda7 ecore_wl2: Make the surface interface a pointer 2018-01-26 15:53:59 -06:00
Derek Foreman b87606775f ecore_wl2: Move surface manager interface into public API
So people can write plug-ins for this stuff.
2018-01-26 15:53:59 -06:00
Derek Foreman 84f703cf67 ecore_wl2: Call check function through a pointer
We'll need this in the function array when we make surface managers
modular.
2018-01-26 15:53:59 -06:00
Derek Foreman bf4b828cb6 ecore_wl2: Move dmabuf surface specific tests into their own function
Refactoring to allow non-dmabuf surface managers.
2018-01-26 15:53:59 -06:00
Derek Foreman 601f9cc484 ecore_wl2: Make session recovery more robust
Clear out the window callback when doing session recovery, and
make sure we have a valid on if we get a double commit.

This should stop a session recovery crash, and fix a small leak per
recovery.
2018-01-26 15:51:44 -06:00
Mike Blumenkrantz 023127bf6f quicklaunch: return child pid from elm_quicklaunch_fork() on success 2018-01-26 14:10:31 -05:00
Marcel Hollerbach 7d0008d6e2 efl_ui_focus_manager_calc: prepare everything before border elem eval
otherwise we might miss the elements that are registered on prepare.
2018-01-26 15:11:50 +01:00
Marcel Hollerbach 1be0506b31 efl_ui_focus_manager_calc: check earlier for LOGICAL
this safes us performance
2018-01-26 15:11:50 +01:00
Marcel Hollerbach d447967b76 elm_gen****: do not call realize on items
better rely on the adapter and wait for realization so the adapter is
wether created or not even created but used with content. This fixes
item content focus, crashes at startup and a freeze in genlist test!
2018-01-26 15:11:50 +01:00
Mike Blumenkrantz 8f2b36b774 ecore: prune existing thread_join callbacks during ecore_fork_reset
permitting these to persist and trigger at a later point will cause
the process to deadlock while attempting to join non-existent threads

@fix
2018-01-25 15:33:25 -05:00
Lauro Moura e70368f10e eolian_cxx: Fix "unused parameter" warnings
The Klass(Klass &&other) one was causing "synthesized method ... first
required here' warnings on Windows gcc-4.8.
2018-01-25 15:56:08 -03:00
Cedric BAIL 7db7d84fa2 ecore_con: missed compiler warning. 2018-01-25 09:54:36 -08:00
Cedric BAIL fb3e49d66d ecore_con: restore ability for negative port on local connection.
Thanks make check.
2018-01-25 09:40:20 -08:00
Carsten Haitzler 3f8c282544 ecore-con pass port into err print 2018-01-26 01:53:58 +09:00
Carsten Haitzler eb951e99a6 ecore_con - give error output if port num is invalid 2018-01-26 01:04:12 +09:00
Shinwoo Kim c07a40c745 elm: make elm_object_text_get return markup info as well.
This commit solves following issue

https://phab.enlightenment.org/T6642

If I set object text as below
elm_object_text_set(btn, "Some<br>text");
then elm_object_text_get(btn) returns "Some text" not "Some<br>text".
2018-01-25 22:10:32 +09:00
Myoungwoon Roy, Kim 1837253935 ecore_con: Check for the valid port number
Summary:
This patch checks whether the port number is valid or not.
The valid port number is an unsigned 16-bit integer, so 1-65535.
0 is reserved already.

Test Plan: Execute test suite

Reviewers: cedric, raster, stefan, Jaehyun_Cho

Reviewed By: raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5761
2018-01-25 13:23:25 +09:00
Jean-Philippe Andre 426ccba6bd win: Fix legacy win type name
Window constructor is hijacked by the finalize method, which messes up
the normal order of operations. As a result, the legacy type name for a
window object was "elm_widget" rather than "elm_win".

This fixes a crash in E (as it checks the legacy type name to verify an
object's type).

See D5748
2018-01-25 11:43:31 +09:00
Cedric BAIL 1eb4d1311e eo: only call costly function _eo_op_desc_name_get when in debug mode. 2018-01-24 15:36:39 -08:00
Mike Blumenkrantz bd41e4626f efl-wl: don't leak xkb mmaps when running under x11
ref a32735e9a7
2018-01-24 16:31:26 -05:00
Mike Blumenkrantz a32735e9a7 efl-wl: create and maintain xserver-based keymap and keyboard states under x11
when run in a non-wayland environment, it's necessary to do some extra work
in order to guarantee that the keymap remains the same in the compositor as
in the xserver and to also guarantee that modifier states are accurately
applied even when the compositor is not actively focused

fix T6631
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 6e4c3b0445 efl-wl: use image border to optimize surface rendering with 1 opaque rect 2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 093aecd75e efl-wl: unset kbd mods changed flag after sending modifiers
@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 4a32e2456e efl-wl: fix no-op of setting keyboard enter on already-entered surface
@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz a524ab1fe3 ecore-x: add some useful xkb function wrappers
@feature
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz b28d6ac5e6 ecore-x: re-add implementation of ecore_x_connection_get()
this symbol has been missing since the removal of xcb

@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 067ec7bd5c ecore-x: filter XkbNewKeyboardNotifyEvent before emitting ecore-x event
this is only relevant to watchers of the ecore-x event if there is a keycode
change

@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 4b38020f89 ecore-x: add more info to Ecore_X_Event_Xkb event
this event corresponds to xkb state changes which are useful when working
with xkb instances

@feature
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 10fc36614f efl-wl: add functionality for directly passing through xkb objects
when used in enlightenment, it's necessary to be able to directly use
the compositor's keyboard state to ensure consistency when keypress events
are not propagated

@feature
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 2f4a89cb0e efl-wl: add docs for smart callbacks 2018-01-24 16:18:51 -05:00
Sungtaek Hong 549c781310 eolian_gen: remove reference to elm_entry because it is not installed
Summary:
elm_entry.eo is not installed to system directory like
         "/usr/local/share/eolian/include/elementary-1", and
         eolian_gen tries to refer elm_entry.eo which results in failure.

Test Plan:
Create any eo class file which inherits Efl.Ui.Layout.
           eolian_gen eo_file.eo
           observe eolian_gen finishes

Reviewers: jpeg, herdsman, woohyun, Jaehyun_Cho, cedric

Subscribers: conr2d, id213sin, JongminLee

Differential Revision: https://phab.enlightenment.org/D5760
2018-01-24 18:51:26 +09:00
YeongJong Lee 8eda161f67 efl_ui_focus_layer: avoid a call to NULL
Summary:
efl_ui_focus_layer_enable_set(obj, EINA_FALSE) can be called before
registered_manager assigned

Test Plan:
1. EINA_LOG_LEVELS=eo:2 elementary_test -to menu
2. terminate the elemetary_test
3. check that there is no focus_manager warning about a call to NULL

Reviewers: bu5hm4n

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5759
2018-01-24 18:49:04 +09:00
Sungtaek Hong cb25699dac efl_ui_legacy: add new interface to indicate legacy widget
Summary:
For now, how to check whether a widget is legacy or not
is to check flags in private data or static flag, which is set
during elm_legacy_add.
If Efl.Ui.Legacy interface is added, it can be easilly checked
by efl_isa(obj, EFL_UI_LEGACY_INTERFACE)

Reviewers: woohyun, jpeg, cedric, Jaehyun_Cho

Subscribers: conr2d, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5748
2018-01-24 18:14:26 +09:00
YeongJong Lee f6ba674cd8 efl_ui_win: Avoid a call to NULL
Summary:
parent_get and smart_parent_get are called in parent_widget_get
this also remove the duplicated code

Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5757
2018-01-24 15:36:08 +09:00
Bryce Harrington 692136202f eina: Make return doxygen consistent
Summary:
Ensure @return defines error returns consistently.  In several cases the
errors were explained in the body but not mentioned in the @return docs.

Drop redundant return value documentation for clarity.  Some routines
were defining the return values both in @return and in the doxygen body.

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5756
2018-01-24 11:35:01 +09:00
Marcel Hollerbach 8d1b9d4f9e efl_ui_focus_manager: listen to deletion for regular and logical
otherwise we might exit with a load of errors
2018-01-23 21:27:45 +01:00
Marcel Hollerbach b2be688ccc elm_genlist: prepare the item when its set
so the border element is set accordingly on the parent manager which
then can be picked up for focus relations.

ref T6453
2018-01-23 21:27:45 +01:00
Marcel Hollerbach 1bdbf207f1 efl_ui_focus_composition: only rely on manager
for the case of a custom manager this resulted in wrong behaviour.
2018-01-23 21:27:45 +01:00
Chris Michael 382e1a8957 elput: Fix null pointer dereference
Coverity reports this as a null pointer dereference, so check for
'seat' existence before comparing with strcmp

Fixes CID1385369

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-01-23 07:00:19 -05:00
Youngbok Shin 32f8e0c726 elementary config: Fix to use ELEMENTARY_BASE_DIR for configure path
Summary:
"--with-elementary-base-dir" option was ignored by recent patches on elm_config.
The macro is being used in elm_theme. It should be syncronized.
The default value of the macro is ".elementary".

@fix

Test Plan: N/A

Reviewers: raster, cedric, jpeg

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D5755
2018-01-23 11:27:55 +09:00
Mike Blumenkrantz ff1a0475c3 ecore-x: add more null checks for functions
@fix
2018-01-22 17:34:37 -05:00
Mike Blumenkrantz 7c087d209a ecore-x: perform internal shutdown on io error if callback is set
avoid crashing in callback when referencing dead display or handling events

@fix
2018-01-22 17:34:37 -05:00
Mike Blumenkrantz d555c6c903 ecore-wl2: correctly translate spacebar keyname into key events
fix T6620

@fix
2018-01-22 13:04:15 -05:00
Chris Michael d1a7dd5e42 ecore_drm2: fix seat matching when checking for a device with a null seat
Summary: Check to make sure that the seat from the matching device is still null.

Test Plan: Make sure that devices are not being rejected while on seat1. This depends on another patch

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: ManMower, devilhorns, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5711
2018-01-22 11:26:13 -05:00
Chris Michael 4e2406ed3b ecore_drm2: Only use a virtual terminal on seat0
Summary: Only seat0 supports virtual terminals.

Test Plan: Make sure enlightenment does not error out on non-seat0 due to a virtual terminal error. Enlightenment will not start yet on seat1 with this alone

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: ManMower, devilhorns, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5710
2018-01-22 11:25:15 -05:00
Shinwoo Kim 5d8f2df24b elm: Fix typo checking ecore_evas for efl_access_component_extents 2018-01-22 22:07:57 +09:00
Myoungwoon Roy, Kim 0a5b15ccac ecore_main: Check for null ptr deref
Summary: This patch fixes a tentative crash owing to dereference of fd_handler.

Test Plan: Execute test suite

Reviewers: cedric, raster, stefan, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5754
2018-01-22 21:27:20 +09:00
Jean-Philippe Andre 2c66616179 genlist: Avoid a call to NULL
elementary_test -to genlist
-> LOTS of warnings, when creating the genlist, as the items aren't
ready yet. This just avoids the WRN as recalc will happen later anyway.
2018-01-22 20:38:37 +09:00
Stefan Schmidt 131ddded60 efl_selection_manager: fix compilation on osx after rename
In commit c91ae98fd3 data was renamed but
the ifdefed osx part forgotten to update.
2018-01-22 12:15:19 +01:00
Myoungwoon Roy, Kim 1b7089a26b ecore_evas: Check for null ptr deref
Summary:
This patch fixes a tentative crash owing to ptr dereference.
Unlike ecore_evas_object_cursor_set and ecore_evas_object_cursor_device_set,
ecore_evas_cursor_set uses Ecore_Evas *ee before calling internal function which
internally checks null ptr dereference of Ecore_Evas *ee.

Test Plan: Executes test suite

Reviewers: cedric, raster, stefan, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5753
2018-01-22 18:28:24 +09:00
Myoungwoon Roy, Kim 6629df5e67 ecore_anim: Check for null ptr deref
Summary:
This patch fixes a tentative crash owing to null ptr dereference
ecore_animator_freeze() has a same patch already.

Test Plan: execute test suite

Reviewers: cedric, raster, jpeg, stefan, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5752
2018-01-22 17:07:58 +09:00
Carsten Haitzler d309687865 fix break of hoversels
this fixes T6627
2018-01-21 19:26:38 +09:00
Vincent Torri 0623618f73 elementary: fix compilation of efl_selection_manager on windows
Test Plan: compilation

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-01-19 13:36:13 -08:00
Derek Foreman 520821e432 wayland: Reduce number of unneccessary display flushes
b48781aa6c fixed multiple bugs where the
display wasn't flushed correctly, however it was a little overzealous.

Some of the flushes were added after calls that only updated internal
state, some in internal functions in which the caller was already going
to flush, and some were after wayland protocol calls that are double
buffered anyway and won't do anything until a following commit.

Also, I've removes at least one long standing flush where the recently
added flush is in a better location than the original.
2018-01-19 12:40:40 -06:00
Jean-Philippe Andre 4153320476 widget: Ooops! Fix focus break in previous patch.
Sorry... Weird that elementary_test worked fine. I might have badly
tested.
2018-01-19 17:48:45 +09:00
Jean-Philippe Andre 20570f74d3 widget: Move on_focus_update to Focus.Object
Following @taxi2se's recommendation. This is indeed a focus method, and
Widget already inherits from Focus.Object.

Ping @bu5hm4n who probably wants to adapt this further.

Ref T5363
2018-01-19 17:30:04 +09:00
Jean-Philippe Andre c35f257bf2 widget: Remove item from on_focus_update
It's legacy stuff, and always NULL.
2018-01-19 17:17:01 +09:00
Jean-Philippe Andre a465f4d878 widget: Use enum for orientation_mode
This was proposed by Dave on the ML, I think it makes sense. Right now
the enum is just like the boolean, feature-wise, but it makes more sense
semantically (mode is not a bool) and allows for future extension (eg.
only apply orientation update for landscape vs. portrait modes).

There is absolutely zero testing for this in our existing codebase. Yay.
2018-01-19 16:19:36 +09:00
Jean-Philippe Andre 9ceb9419af cxx: Fix a trivial warning 2018-01-19 15:59:21 +09:00
Cedric BAIL e9bc9c920a elementary: simplify Efl.Ui.Text.Factory.Emoticons. 2018-01-18 10:48:21 -08:00
Daniel Hirt 4a905a22a4 Canvas image: add Efl.Canvas.Text.Factory + use in Ui.Text
This interface has a simple 'create' method to create Efl.Canvas.Object
given a key.
This is used higher-up in Ui.Text in the next commit.

Ui text: add ability to set item factories

Added API to set an item factory object.
This is similar to the previous item providers (that worked with
callbacks).

You instantiate a factory object and set it on the Ui.Text object.
Each factory implements the "create" method from
Efl.Canvas.Text.Item_Factory.

This also includes 3 public factories (Image, Emoticon and Fallback):
  - Image factory: creates images from added entries (key strings)
  - Emoticon factory: creates emoticons by querying the theme
  - Fallback: creates image, then falls back to emoticon

If no factory is set, then the fallback (internal) factory is used.

See the added "Ui.text Item Factory" test in elementary_test for an
example of usage.

@feature
2018-01-18 10:20:28 -08:00
Daniel Hirt 2eac0dd89d Edje: remove item provider from eo api 2018-01-18 10:20:28 -08:00
Mike Blumenkrantz 7a3ec89fd2 elm_win: move wayland display flush to after method calls
ref b48781aa6c
2018-01-18 10:47:43 -05:00
Bryce Harrington 77dc9ab874 eina: Clarify that Eina_Matrix_Type can describe any matrix
Summary:
The Eina_Matrix_Type enum is returned by eina_matrix4_type_get and
eina_matrix2_type_get; it is not Matrix3-specific.  Update doxygen
accordingly.

Reviewers: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5744
2018-01-18 08:19:08 -05:00
Bryce Harrington 5f59a76587 eina: Cleanup spelling/grammar/punctuation for Eina List
Summary:
This fixes some typos and misspellings, massages grammar in a few
places, tidys up a little whitespace, and fixes incorrect docs in a spot
or two.

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5745
2018-01-18 08:16:52 -05:00
Daniel Kolesa 1017f37de7 eolian: fix redefined function checks
For one, the hash has to be populated once per inheritance tree
and the skipping on already-validated funcs was interfering with
that as the function might have been validated in another
inheritance tree already.

Also, if a class appeared multiple times in an inheritance tree,
as is common with e.g. Efl.Object, it would get added into the
hash the first time and then checked against the second time,
which would result in a strange error message about the
function being redefined in its own class.

So now we prevent both cases from happening.
2018-01-18 12:49:05 +01:00
Jean-Philippe Andre c91ae98fd3 cnp: Rename selection data to content
This solves an issue with C# bindings where a field of a struct can not
have the same name as the struct itself. Go figure why.
2018-01-18 18:46:15 +09:00
Vincent Torri f5b01ac5ce all: Simplify definition of EAPI
This will help in the transition from Autotools to Meson. This has been
tested on Windows for which EFL_XXX_BUILD were first introduced.
2018-01-18 18:04:03 +09:00
Jean-Philippe Andre 8a1655a15c widget: Remove comment 2018-01-18 17:40:21 +09:00