Summary:
this still potentially needs some work and changing the implementations
now would be too invasive
ref T7864
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7864
Differential Revision: https://phab.enlightenment.org/D10149
Summary:
evas_object_callbacks_finalized could take NULL obj because
_efl_canvas_object_efl_object_finalize could call it with NULL obj.
Reviewers: bu5hm4n, jsuya, Hermet
Reviewed By: bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10141
Summary:
After making efl_ui_text interface be stabilized, this property
can be considered again about its opening.
ref T8097
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8097
Differential Revision: https://phab.enlightenment.org/D10140
Summary: If theme doesn't have version data, `version` can be NULL.
Reviewers: zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10146
these aren't implemented by anything and duplicate the functionality provided
by efl.gfx.image::image,preload_state,changed
ref T7876
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10128
there are more discussion need on this range selection.
we could extend this parameter with range structure(aka Eina.Range)
so that extendable object to object, int to int, Range to Range.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10145
If my understanding is correct, below referenced commit needs to be applied to
efl_ui_win only.
@ref D10049
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10143
Summary:
our new method naming rule only allow verb at the last position,
so change name to fallow rule.
Reviewers: bu5hm4n, cedric, segfaultxavi
Reviewed By: bu5hm4n, segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10144
this is a bit of an overhaul wherein the existing 'play' mechanics are
all inverted. 'pause' is a state which stops playback but does not affect
the playback_position property.
this patch also includes implementations of Efl.Player::playing for
a couple classes which (now) only implement pause, as this is a requirement
for the objects to actually activate their animations
test cases:
* unit tests
* all elm_test animation cases
* elm_test video
* rage
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10114
this has some overlap with the existing 'play' property which will
soon be renamed. the intent here is that there is a property for
controlling the 'playing' state and then another property for managing
'pausing' the play state
ref T7877
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10113
efl.playable implements a number of properties which are also present
in efl.player. playable was intended to be separate, so enforce this
split in all classes which use player
ref T7877
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10109
Summary:
efl,anim,activate is the signal used by buttons, which is what this is
ref T8231
Depends on D10099
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: segfaultxavi, cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8231
Differential Revision: https://phab.enlightenment.org/D10100
Summary:
this makes the meaning of the variable more clear
no functional changes
Depends on D10092
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10093
Summary:
part aliasing should be done at the layout level, not using bespoke string
comparisons. also this removes the "title" part of the alert_popup theme
which was previously considered api
Depends on D10091
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10092
Summary:
this throws error and warning messages if the theme api version does
not match the current efl version, and it will cause unit tests to fail
when the theme version is not updated
ref T8231
Depends on D10093
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl_widgets
Maniphest Tasks: T8231
Differential Revision: https://phab.enlightenment.org/D10081
Summary:
We have been casting the selection to unsigned char * for the address of
sel and not for the value. Coverity pointed this out:
Overrunning buffer pointed to by (unsigned char *)&sel of 8 bytes by
passing it to a function which accesses it at byte offset 167 using argument 168
It seems this has been working by memory layout and luck if I understand
it all correctly.
Coverity ID: 1402666
Reviewers: thiepha, raster, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10107
if a non-null value is passed here, this needs to actually evaluate
all the part aliases
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10091
these are internal apis for managing part aliasing on the C side,
but they apply to efl_ui_layout and not elm_layout
no functional changes
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D10090
After 892c26f906, widget factories require
a widget to be their parents.
This commit updates C# tests and adds a warning message to elementary if the user does
not provide one.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10122
Summary: this does not require any other interfaces
Reviewers: bu5hm4n
Reviewed By: bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10110
it does not matter if pmin_size is > 0 or not. The important thing is
that it is different to what is now, but thats it.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9970
with this commit you can more or less use focus. The only uncaught case
for now is that if the object is not available, no focus can be set.
Navigating with focus on the screen however should be possible.
Differential Revision: https://phab.enlightenment.org/D9969
The idea of this widget is to provide to MVVM what Efl.Ui.Collection provide and
leverage the same shared logic for layout.
Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>
Co-authored-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9958
This interface is currently focusing on being use by widget like
Efl.Ui.Collection_View or Efl.Ui.Select_Model. I have decided that
it should not be available along with Efl.Ui.Multi_Selectable.
Differential Revision: https://phab.enlightenment.org/D9957
For most event it is actually meaningful to share them with Efl.Ui.Collection_View so let's do it.
Differential Revision: https://phab.enlightenment.org/D9956
This was meant to happen but did not previously happen. It is not
ideal to do it now but better do it while we still can.
In short, this removes one half of the variables API (keeps
constants as they are) and repurposes the API to be only for
constants. This is also better for consistency to match errors.
normally when you create a window, you just want to have it beeing a
basic window. If not you still can set the window type.
ref T8229
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10049
This will enable better strategy in scheduling removal of object from the cache
instead of doing the throttling in the View as there is a better understanding
of the different layer the items are going to go through and where they will
consume time.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9955
In an attempt to make things more complex than they should have been,
I tried to change the inheritance tree on the fly and assume widget would
rely on autodeleting its children. This is way more complex of a solution
than to let the View actually release all the child manually and just set
the window as the default parent.h
Co-authored-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9953
constructing is called during construction time, building is called
after finalize. This is usefull for theme related properties that can
only be set after the theme is applied, which happens during finalize.
Being event allow the user of the factory to add more initialization
without needing to implement any new class.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9952
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9951
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9950
Summary:
If 'L' is removed due to optimization, it should be supported like 3b1f7be
If the previous command is 'M', use 'L'.
Test Plan: N/A
Reviewers: Hermet, smohanty, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10104
Summary:
with this commit all implementations of Efl.Pack_Linear to permit NULL
as existing parameter, this is verified with a spec test unit.
fixes T8210
Reviewers: zmike, segfaultxavi
Reviewed By: zmike
Subscribers: woohyun, Jaehyun_Cho, YOhoho, segfaultxavi, zmike, cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8210
Differential Revision: https://phab.enlightenment.org/D10023
in position manager grid and list, there are caches for the sizes, so
the access within placing the item is faster. The cache sometimes is
invalidated, which means, it must be rebuild before accessing it.
This commit is the result of reviewing all the accesses, that the
correct item is available.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10065
with this commit there are a few errors less, for the case a object is
destroyed while registered as a border element in the sub manager.
This adds a few more callbacks to the list of callbacks, however, i
could not messure a big performance impact.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10067
see the _eina_thread_internal() function
r = c->func((void*) c->data, eina_thread_self());
The second param has been missed in ecore_thread_worker, ecore_direct_worker functions.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10073
this was never pulled in from the build system and thus was never actually
defined
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10078
this is already handled by edje, all we really want here is a flag
to avoid more eo lookups internally when calling canvas_group_change
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10079
Summary:
- As we don't have C++17's [[fallthrough]], rely on GCC'd detection
of fallthrough comments.
See https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/
- Replaced some copy constructors with typecast operators.
Previously, a constructor with remove_const/remove_cv were used
to allow const iterators to be constructed from non-const iterators.
This had the side effect of making these constructors actual copy
constructors for non const lists. As we did not define other
special constructors/operators, the rule of 5 were violated for these
cases.
This commit replaces these constructors with actual typecast operators
that promote non const iterators to their const counterparts.
- Cast a Eina_Bool/bool narrowing conversion
- Add a missing break statement from D10050
Reviewers: zmike, brunobelo, felipealmeida
Reviewed By: brunobelo
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9934
fix warning when used in C90 code.
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10077
division of integer by integer results integer.
this patch fix the case to make a division result more precise.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10039
EFL_RUN_IN_TREE is set for all binaries that are executed during build
time, and test suites. With this commit we are ensuring that we are not
sending messages during that time to journald, otherwise we would waste
a lot of time + we would create a lot of unneccessary log messages.
(eina test suite runtime with journald hook: 11.21s without journald
hook: 0.57s)
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10076
The objects referenced are unreferenced when memory allocation fails in
elementary factory.
Differential Revision: https://phab.enlightenment.org/D9968
INFO is a way too verbose log domain, this lead to the fact that we
spammed journald before the first frame with ~200-300 messages
(depending on the setup) which is quite a lot. Additionally, this also
lead to the fact that we often TIMEOUT our own tests.
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10075
The tbuf binbuffer has already been freed the line above, which means
this condition would always be true as !tbuf would always result in true.
As a result the rest of the function has never been executed.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10046
This temporary allocation is only used in this block and goes out of
scope when leaving. Make sure we free the resource before this happens.
Coverity ID: 1402653
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10045
First and last could have been uninitialized for their first use in some
cases. Make sure we set the x y coordinates to 0 to begin with.
Coverity IDs: 1401458, 1404747
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10044
Summary:
Based on the discussion T7883, there is no reason to keep those
interfaces separately. So, now, efl_ui_scrollable will support
the events and methods together.
@ref T7883
Reviewers: eagleeye, bu5hm4n, zmike, segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7883
Differential Revision: https://phab.enlightenment.org/D10072
this used to be a thing in order to prevent widgets from spamming themselves
with recalcs during construction, but since that's no longer possible we
can remove this and also resolve an issue where legacy widgets failed
to correctly calculate their min size if no text was set
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10043
i am not sure why this should ever happen. However, a error here is
better than a access out of the bounds of the array.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10066
With this commit the API of load controller and efl.gfx.image is
implemented via composition, which makes eolians API checker happy
ref T7880
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10064
this is not needed here, and not permitted in a none beta context.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10069
at first i tried to implement that with composition, however, this does
not work, caused by the fact that the edje_object does not implement
efl.gfx.image nor load controller. which would mean i would have to
differentiate based on the type what kind of composition i would attach,
additionally, i would have to write an additional object which would
implement the correct behaviour.
To shortcut this overdone approach, this commit simply implements the
APIs in the image object.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10068
7321911468 moved the constructor to to
top, which leads to the fact that a few widgets cannot fetch the shared
data of the window. Which made the test suite fail.
With this commit we are just moving the sub_object_add after the
constructor, which fixes the flip crash.
This fixes the test suite
the object is not properly set up yet for child classes -0 parent like
the main evas object or smart obj havent been constructed yet so call
this really early, not in the middle of construction of an efl ui
widget...
this fixes a segv in elementary_test -to filp where it segv's on
object construction where evas object ->cur/prev are NULL (not set up
yet).
Summary:
Eolian supports reporting the defaults for parameters and return values, but in some
places we have been writing this information in the documentation instead.
This patch moves it to its proper place, where documentation generators can pick it up
and render it in a consistent manner.
Ref T8171
Reviewers: zmike, bu5hm4n, lauromoura
Reviewed By: lauromoura
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8171
Differential Revision: https://phab.enlightenment.org/D10051
Summary:
This also adds the information of default values in `parameter_def`.
This will help adding actual default parameter support in the C#
bindings.
Thanks to @segfaultxavi for improved formatting and escaping.
Fixes T8224
Reviewers: segfaultxavi, felipealmeida, brunobelo
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, segfaultxavi, #committers
Tags: #efl
Maniphest Tasks: T8224
Differential Revision: https://phab.enlightenment.org/D10050
Summary: Event name is applied in the past tense.
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10040
what is happening is that a file gets announced through eio_model
listing code, at this point of time, the monitor does not yet know about
the file. If the file now gets deleted between the annoncing and the
learning of the file from the monitor, then the file got an ADD event,
but no DEL event. Which is a bug.
With this commit there is a new API which asks the monitor if the file
already has the knowledge about the files existance, or not. A few
monitors like win32 inotify or cocoa do not have context about the file
directly, if the OS is now having the same bug, then we are again in
trouble, however, we canot do anything about that. In the case of kevent
or poll, this asks the context of the monitor if the file is already
there.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10006
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9949
With the new Efl unified infrastructure, we do delay a lot of the computation to finalize,
by filling the object information before finalize we reduce unecessary computation.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9948
there are situations where the entity is not ready yet when the initial
placing does happen. With this API you can tell the position manager
that the placing of the items can be reapplied at the entities are
availble now.
Differential Revision: https://phab.enlightenment.org/D9947
setting of these properties does not work, as they are not available in
legacy, but edje is still creating legacy objects.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10007
real part set was used to set the real part on the part, so the obj
pointer of Layout_Part_Data points to the correct evas object. With this
commit, this API is removed from the public .eo files, and is refactored
into the same API which is private.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9993
this api was missing, the pack method here is behaving in the same
manner as Efl.Ui.Table.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9992
Efl.Color and Efl.File cannot be done due to composition. Efl.Gfx.Image
can, so we can solve this via composition, this also resolves all the
other cases for Efl.Gfx.Image.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9991
This will fix Coverity issue.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9986
a while back we have moved event submission from custom lists to eo
events. We also merged together the freeze and thaw functions, however,
this brought up one bug. smart_callbacks and the likes (those that used
custom lists before) are not effected by the legacy freeze and thaw
functions. This means, we should declare these legacy wrapper objects
unfreezable in order to obtain this behaviour.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D10016
move more header includes around to fix building with Efl_Ui.h
ref T8228
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10022
this adds 4 more signal handling fds and loops over them for reading/writing
signal info in order to handle more signals when the buffer of one (or more)
pipes is full
also update the unit test to verify that we are receiving all the events without
dropping any and bump the number of signals to 2000 since we should now be able to
handle that many
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10027
if any efl-based process receives a bunch of signals in a short period of
time, it will deadlock in the signal handler. this is unavoidable given the
current signal handling architecture
by setting nonblock, we can at least avoid deadlocking even if it means we'll
be losing signal events
@fix
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10025
The condition here is that the composited interface does not
already appear in the inheritance tree of the given class. If
it does, don't add. If it doesn't, add it to the class that
specifies the composited block.
We need to keep in mind that the Manager and the Recognizers are not visible to the user.
The user only sees the events and the different Efl.Canvas.Gesture_* payloads.
Summary: This patch improves single line descriptions described on T7717
Test Plan: NA
Reviewers: segfaultxavi, woohyun, Hermet, cedric
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10002
legacy "check" and "toggle" widgets operate differently:
* check emits only the "toggle" event
* toggle emits "toggle", "on", "off"
legacy also must not emit events when the widget's state is changed
programmatically
to handle this effectively, check whether the event has been emitted for
each state when the signal is emitted from the theme, and track this
for subsequent uses to ensure that exactly one event is triggered
when it should be
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9831
this improves the usefulness of radio box by presenting it as a box widget
which has the additional feature of being able to manage radio widgets
also fix all the image cases in elm_test which relied on there being only
a single box in the window
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9998
these headers should be usable independently without having one secretly
pull in the other
fix T7667
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9981
this was somehow actually a legacy header which duplicated elm_calendar.h
...sort of
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9980
efl_ui_animation_view.h is the legacy header (but why?)
efl_ui_animation_view.eo.h is the unified header
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9979
.c files in src/lib/elementary should only include elm_priv.h to ensure
that all the include ordering is correct and that all necessary headers
are pulled in
.c files outside of src/lib/elementary should include either/both
Efl_Ui.h, Elementary.h as needed
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9978
this should include emotion, since that component is used internally,
and it should not explicitly include api headers which should be in
public headers
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9977
supposedly this header should be usable if someone wants to create an
elm widget, so ensure that it can be included without issues
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9976
this is a legacy header, it can't include any unified api types
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9974
this is still pretty broken, but at least the headers aren't
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9972
these seem to randomly have been changed when they shouldn't have
also install elm_clock_eo.h since this is required but we didn't install it
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9971
Summary: this patch adds a guard block in case of failure of eet_open().
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9987
Summary:
this reduces the necessary event subscriptions for cases where someone
is likely to want to listen on these events
ref T7875
Depends on D9996
Subscribers: cedric, #reviewers, #committers
Tags: #efl_api
Maniphest Tasks: T7875
Differential Revision: https://phab.enlightenment.org/D9997
Summary:
this is a clearer name which makes the intent of the API more obvious at
a glance
ref T7875
Subscribers: cedric, #reviewers, #committers
Tags: #efl_api
Maniphest Tasks: T7875
Differential Revision: https://phab.enlightenment.org/D9996
Model do not own the Eina_Value when it is set on them. They can make a copy of it,
but shouldn't free it.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9945
eina_value_copy assume the given Eina_Value as target is not initialized
when it copy the source in it. In eina_value_reference_copy we were initialising
before calling eina_value_copy which would then override and leak the internal
pointer no fault of the users.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9943
the API calls have not been implemented, this revision implements these
APIs as redirects to the image if those are a edje object.
Normally this should be a calling the legacy edje API. However, this is
here really hard as imitating the correct callback behaviour is hard.
And the correct behaviour with the eina value type is also just leading
to copying the implementation from edje. So in order to keep the amount
of code low here, this just uses the efl-api to redirect the requests.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9989
this should get a better solution later on. There is also no real usage
for that.
ref T7922
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9985
Summary:
- As we don't have C++17's [[fallthrough]], rely on GCC'd detection
of fallthrough comments.
See https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/
- Add some missing copy assignment operators as reported by
-Wdeprecated-copy
- Cast a Eina_Bool/bool narrowing conversion
Reviewers: zmike, brunobelo, felipealmeida
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9934
1403023 Unchecked return value
1403024 Unchecked return value
1403026 Unchecked return value
If the eina value conversion fails the default value (0) will be used, which is already a good default.
ERRs have been added so the developer has a hint of what is happening.
Summary: safed_bindings will leak by going out the function without freeing.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9966
Summary:
We settled for the focus_allow name.
The other APIs are not internal, they are protected, and this is
noted, no need to say that again.
Additionally it is not helpfull to have commented out c_prefix
definitions.
Depends on D9936
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9937
Summary:
this is not true anymore, this has been reverted due to how legacy
works. *yey*
Depends on D9935
Reviewers: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9936
Summary:
Event name is applied in the past tense.
Meaning of 'stop' is 'stop it early', so I changed it to 'finish'
Test Plan: elementary_test -> efl.ui.scroller
Reviewers: segfaultxavi, woohyun
Reviewed By: segfaultxavi
Subscribers: zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9859
Introduced in 9b294d6284 the new eina_file_statgen_* API has a typo in
its disable function. Fixing this before it gets out into a release.
Thanks goes to the https://abi-laboratory.pro service for offering their
great API/ABI reports to the open source communities to help finding such
things!
Differential Revision: https://phab.enlightenment.org/D9962
Summary:
rename this to match its function
ref T7926, T7875
Depends on D9932
Subscribers: cedric, #reviewers, #committers
Tags: #efl_api
Maniphest Tasks: T7926, T7875
Differential Revision: https://phab.enlightenment.org/D9933
Summary:
this adds more docs for the overall interface as well as improvements to
existing docs
ref T7717
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl_docs
Maniphest Tasks: T7717
Differential Revision: https://phab.enlightenment.org/D9929
Summary:
always return NULL when an internal text object exists to avoid exposing
internal objects; this is an abstraction mechanism which should not be
extended or relied upon
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9910
This is to allow monospace bits with periods, commas and other
non-alphabetical characters. Newlines are not supported (they end
the block) and escapes are supported (for ]).
Fixes T8213.
Summary:
this is needed in order to support the value to be a multiple of the
step when drag has finished. The normal changed event is still emitted
with non-multiple of step, but the steady event only contains the
correct values now.
ref T8187
Reviewers: zmike, segfaultxavi, woohyun
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8187
Differential Revision: https://phab.enlightenment.org/D9928
Eolian @properties should be documented at the property level, and
documentation at the setter or getter level should be left to setter-
or getter-specific comments. There is usually no need at all to have
setter- or getter- specific comments.
Also, a property is not a method so descriptions should match that.
This patch removes lots of duplicated text, and will allow enabling
by default the eolian check that ensures that properties have proper
property-level docs.
No functional changes.
Summary:
the docs should not assume that the current language is LTR and should
instead specify that the horizontal direction depends on the language
reading direction
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9911
Summary:
before pack_at with no element failed because the list element has been
NULL.
This fixes the insertion, the codepath also works without the error.
Depends on D9871
Reviewers: zmike, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9890
Summary: these are valid calls and should be handled correctly
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9880
Summary:
historically, if the mtime of an edj file changes after being loaded,
the edje file should be reloaded. this needs to occur in a single call
with the previous user definitions intact, so verify that the mtime is
the same in efl.file::file_set when using the same file name
@fix
Reviewers: cedric
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9877
Summary:
in this case here, eina list count already returns the count *including*
the subobject, the case in pack_at below (where also +1 is added) is
different to that, as count is the value *before* the list add.
Depends on D9870
Reviewers: segfaultxavi, zmike, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9871
the problem here is that we might subscribe to an event before
evas_object_callbacks_init has happened. This sounds like something
which might not happen. However, with the interfaces project this
definitly will start to happen because someone will some day overwrite
the evas object and do something before the constructor, which will not
raise a error or something but will simply just not work.
With this commit we are not listening to the event callbacks via event
emission but rather via inheritance. With this there is no "earlier than
we listend" point, and the issue in the task is solved by itself.
fix T8202
Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9841
Ector buffer allocates memory in default,
We don't need to allocate buffer memory additionally to handle over outside.
We can map/unmap ector buffer for reusing this.
For reducing maintainability burden,
We drop supporting cairo backend.
The default backend is to software implementation from now.
It's well maintained so far and works good.x
Summary:
first of all, in efl-ui we should probebly ensure that a widget is
always created in a window object. Otherwise we are looking for trouble.
Additionally, calling efl_ui_win_shared_data_get on anything else than a
window object will result in a returned NULL value.
If we are not having a widget parent, there is also not much point in
calling a API that is only defined on the widget base class, so we also
move that away
Reviewers: kimcinoo, raster
Reviewed By: kimcinoo
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9762
Summary:
Eolian allows non-public members in interfaces and mixins (usually
@protected). As both kinds are converted to C# interfaces, this
causes problem as non-public members are forbidden in C# interfaces.
This commit changes eolian_mono by removing those members from the C#
interfaces. If a generated class implements the interface, the method is
generated as if it were a protected member of the class directly.
For mixed properties like `Efl.Io.Reader.CanRead { get; set @protected; }`,
the interface has only the public getter and the the implementing class has both
the public getter and the protected setter.
With this, C# devs won't be able to directly implement protected Eo
methods from interfaces. (But this really does not make sense from the
C# point of view).
ref T7494
Reviewers: segfaultxavi, felipealmeida, YOhoho
Reviewed By: YOhoho
Subscribers: cedric, brunobelo, Jaehyun_Cho, #reviewers, woohyun, #committers
Tags: #efl
Maniphest Tasks: T7494
Differential Revision: https://phab.enlightenment.org/D9800
we couldn't have multilpe listeners before. now we can. better this
way. have to do this now because i can't mark efl task as @beta
without taking out massive wads of efl with it.
Summary:
the following commits did not correctly add super calls to the destructor,
resulting in a massive number of build errors as well as some unit test failures
ref e51699afbc
ref 38be95b0b6
Reviewers: raster, lauromoura
Reviewed By: lauromoura
Subscribers: lauromoura, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9902
Summary:
this provides full documentation for the class and all properties
ref T7717
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl_docs
Maniphest Tasks: T7717
Differential Revision: https://phab.enlightenment.org/D9882
Summary:
`Efl_Ui_Scrollable_On_Show_Region` is only used for legacy EAPI. it moved to
elm_widget.h from eo file. also, it renamed `Elm_Widget_On_Show_Region_Cb`.
Reviewers: Jaehyun_Cho, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9896
This fixes cases such as missing const when having a @by_ref
return type. The const should not be avoided there because it
is not returning the whole type as const, just what the pointer
dereferences to.
Summary:
Vg_entry is shared by different child windows.
When two or more objects load the same file
When resizing, cache_vg_entry_render can delete an active entry
while creating a new entry and deleting an existing entry.
Therefore, use cache data added evas
Test Plan:
[enable json loader]
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -203,7 +203,7 @@ option('evas-loaders-disabler',
type : 'array',
description : 'List of modular image/vector load .....
choices : ['gst', 'pdf', 'ps', 'raw', 'svg', 'rs .....
- value : ['webp', 'json']
+ value : ['webp']
[Test]
elementary_test -> Animation View click -> play -> Animation View click again -> ...
Reviewers: Hermet, smohanty, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9740