the efl ui dnd code didn't reset the drop list key to null (deleting
it) once it had freed the list of frop items. this also fixes another
issue in T7113 which causes crashes on exit.
so there are 2 problems behind T7113. first is a problem in the efl
selection manager being "sloppy" with selection data. it's doing a
strlen on the data but it's not a normal c string. it's a blob of
binary data + length value. this fixes that "sloppiness" by using the
len field.
there is also another bug in the dnd test code that again has to do
with "sloppy" handling of data buffers and assuming nul byte
termination and not using the len field properly.
this fixes T7113.
Summary:
elua example files were not being distributed correctly as a result of
improper use of build conditionals
Depends on D6582
Reviewers: devilhorns, ManMower
Reviewed By: ManMower
Subscribers: #committers, cedric
Tags: #efl_build
Differential Revision: https://phab.enlightenment.org/D6583
Summary:
when running 'make distcheck' immediately after configure, the build
will fail because some example files were incorrectly being distributed
instead of being compiled normally in the dist build
Reviewers: ManMower
Reviewed By: ManMower
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6582
Summary:
when an exit (SIGINT, SIGQUIT, SIGTERM) signal is received, the ui should
immediately stop updating in order to present the user with an instant
response
this uses a simple volatile int to block any ticks which begin after the
signal is received; if a signal is received during a tick then it will complete
normally
fix T7000
Depends on D6589
Reviewers: ManMower
Reviewed By: ManMower
Subscribers: cedric, #committers
Tags: #efl_main_loop
Maniphest Tasks: T7000
Differential Revision: https://phab.enlightenment.org/D6590
Summary:
The test was checking that multiple register calls fail. However, we
made this more stable and are making register only error if the
configuration is not the same. This fixes that.
fix T7141
Reviewers: zmike
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T7141
Differential Revision: https://phab.enlightenment.org/D6588
Summary:
The last lines in _efl_selection_manager_drop_target_del were skipped
when `!pd->drop_list` was met. These lines clear the selection event
handlers. Thus, events kept firing and causing erratic behavior.
Fixes T7130
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7130
Differential Revision: https://phab.enlightenment.org/D6579
Summary:
elm_fileselector was using efl_ui_widget_state_apply to call for internal chain update.
This internal chain update was relying on efl_ui_focus_object_manager_get, which
results in a wrong value at this time, since the value is still the old one and not the
current one. (This behaviour will be updated after the release). Focus composition
solves this issue by not relying on the properties of efl.ui.focus_object, but rather
take the values from the configuration in the state_apply call.
fix T6147
fix T7105
Reviewers: zmike, stefan_schmidt, segfaultxavi, devilhorns, herdsman
Reviewed By: zmike
Subscribers: herdsman, cedric, #committers
Tags: #efl
Maniphest Tasks: T7105, T6147
Differential Revision: https://phab.enlightenment.org/D6552
Summary:
efl_new(CLASS), i.e., without initializers, never worked before.
The problem is the dangling comma: efl_add_ref(klass, NULL, );
Fortunately the C preprocessor concatenation operator # # has a special
case just for this occasion: When you do A ## B, and A is a comma and B
is empty, it removes also A.
https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html
This trick is already in use in several other EFL headers using variadic macros.
Reviewers: zmike, bu5hm4n, devilhorns, herdsman
Reviewed By: zmike
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6553
Summary:
Summary
When focus rect move from inc/dec button using keyboard arrow keys, entry show callback is called and focus is set on entry and then text button is hidden. Hiding focus button triggers focus cycle to revert focus on entry, due to which entry gets unfocused callback which subsequently hides entry. So, entry and text button both goes to hidden state. To fix this setting focus on entry after text button is hidden.
Signed-Off By: Prasoon Singh<prasoonsingh16@gmail.com>
Test Plan
Move focus rect from inc/dec button to text button, and observe both text button and entry gets
invisible. Expected behavior is entry should become active.
Test Plan:
Move focus rect from inc/dec button to text button, and obesrve both text button and entry gets
invivible. Expected behaviour is entry should become active.
Reviewers: cedric, CHAN, shilpasingh, zmike
Reviewed By: shilpasingh, zmike
Subscribers: zmike, #committers, govi, rajeshps, jpeg
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D5153
Summary:
When closing the fd handler, it checks if the fd is already closed and prints
an annoying warning: "fd %d closed, can't remove from epoll - reinit!"
We need to close the handler first and then the actual fd.
I am not familiar with this part of the code, but this fix removes the warnings
and does not seems to have adverse effects.
Test Plan: It had warnings before and now it doesn't, haven't observed any other adverse effect.
Reviewers: raster, zmike, devilhorns
Reviewed By: zmike
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6561
Summary:
Basically, render_pre/post should be called only if rendering happens.
Unfortunately, this behavior had been broken by some mistakes.
As far as I understand after reading history carefully,
this issue introduced for fixing unpair of pre/post cbs.
In case of async render, the post callback would be triggered in
evas_render_pipe_wakeup(), it means POST callbake shouldn't be tiggered in
evas_render_updates_internal(). If that post callback were removed in
evas_render_updates_internal(), then in case of sync_render,
POST callback won't be triggered. So previously, the PRE/POST couldn't get
paired.
I guess cedric put a mistake that nothing2rendering which brought
the pre/post pair issue, even he said that patch fix the unpair of them.
(But actually that patch brought the issue!)
See this: dc841ed9b2
Whatever it was intented or not, that patch totally insane, even
non-descripting.
If we just trigger post cb only if sync render or no_rendered case,
We could make satisfication for both cases.
@fix
Reviewers: #committers, devilhorns, zmike
Reviewed By: #committers, zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6573
Summary:
this mimics expected behavior by enlightenment
for 2.0, this behavior should likely be changed since the INVALIDATE event
should be the last expected point at which a parent<->child relationship
continues to exist in any form
ref D6540
Depends on D6554
Reviewers: devilhorns, Hermet
Reviewed By: Hermet
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6555
Summary:
this will speed up tests and make it slightly less intimidating to
add new tests
Reviewers: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6554
Summary:
Before this was erroring. However, this error was not reporting a bad
situation, thus there is no need to error. This patch fixes errors on
the Popup test when scrollable is set to 1.
Reviewers: devilhorns, zmike
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6560
Summary:
alpha prevents an opaque bg, so ensure that this is being correctly
detected
worth noting here is that the eo api for win calls through _elm_win_standard_init()
during finalize which ensures that need_bg_solid is set; the legacy api
does not call this during "normal" construction
fix T7129
Depends on D6568
Reviewers: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T7129
Differential Revision: https://phab.enlightenment.org/D6569
Summary:
when applying alpha in a non-composited environment, shaped should be
set. when removing alpha in a non-composited environment, shaped should
be unset if it has not previously been explicitly set
@fix
Reviewers: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6568
Summary:
Here opened eina file is just leaked.
close it properly.
@fix.
Reviewers: devilhorns, #committers, zmike
Reviewed By: #committers, zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6549
Summary:
In fixing T7099 I've also allowed the buffer queue to grow quite large,
so now we should prune it back if it's bigger than it needs to be for
a long time.
ref T7099
Depends on D6565
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7099
Differential Revision: https://phab.enlightenment.org/D6566
Summary:
It's no longer needed in the header because it doesn't change
the size of the structures there anymore.
Depends on D6564
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6565
Summary:
Instead of allocating a fixed number of buffers immediately, allocate
buffers if needed to render to.
Normally we only need 2 buffers, but we've been allocating 3 to handle
worse case behaviour. As T7099 shows, this is not always enough. We
now cap at a max of 10.
For the normal case where we always use 2 this results in a slight
memory reduction (1 buffer) and a slight renering load reduction
because we pick the oldest buffer to render into.
A future patch will trim the buffer queue if it's been too large for
a long time.
fix T7099
Depends on D6563
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7099
Differential Revision: https://phab.enlightenment.org/D6564
Summary:
This is just a step towards making it a variable length.
ref T7099
Depends on D6562
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7099
Differential Revision: https://phab.enlightenment.org/D6563
Summary:
Use pointers instead of an array of structures, since we're going to
replace the array with a list shortly.
ref T7099
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7099
Differential Revision: https://phab.enlightenment.org/D6562
Summary:
this caused DSO linker issues when enabled and was only testing
init+shutdown for a deprecated component which has not been actively developed
in some time
Reviewers: devilhorns, ManMower, bu5hm4n
Reviewed By: devilhorns, ManMower
Subscribers: bu5hm4n, ManMower, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6539
Summary: the key structure has two fields key and keyname, those should be identical to the keystructures from x. the method xkb_keysym_to_utf8 however returns different values for keys like "minus" thus only relying on xkb_keysym_name files this issue.
Reviewers: eagleeye, devilhorns
Reviewed By: eagleeye
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6520
Summary:
Trying to delete a file from a creation notification callback can
fail. Sometimes the eio model test would sit forever in select()
waiting for events that will never occur because of this.
This happens since d84a268a71 broke
deleting of files that haven't yet been assigned a type. Before
this commit a delete_me flag would be set before attempting to
build a stat buf asynchronously, and then on completion the file
would be deleted.
I think this was changed because that could potentially race with
other async calls and delete the file sooner than expected. So
instead of reverting I've made a special delete path that shouldn't
race with non-delete paths.
Reviewers: devilhorns, zmike
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6543
this has been going on for a while. on nvidia drivers in gles mode on
x11 there is a massive perf drop to like a few fps with enough windows
if we build for egl/gles instead of opengl. it was the re-creating of
eglimages every frame. put a vendor specific workaround for this and
avoid it. it's not needed there anyway. framerate back to 60fps
smoothness afterwards.
@fix
Summary:
The implementation calls efl_ui_pan_xxx on what was assumed to be any
Efl.Canvas.Object. This changes the type to be Efl.Ui.Pan.
Also, reordered headers due to the introduced dependency.
Reviewers: devilhorns, Hermet
Reviewed By: Hermet
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6536
Summary:
these objects are destroyed when invalidate is called as a result of the
evas smart object class destroying the smart object at this time
ref D6222
Reviewers: bu5hm4n, devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6540
Summary:
it's possible for many tests in this suite to hang indefinitely, so ensure
that they terminate eventually instead of holding up the build
ref T6838
Reviewers: stefan_schmidt, bu5hm4n, devilhorns, Hermet
Reviewed By: Hermet
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T6838
Differential Revision: https://phab.enlightenment.org/D6542
Summary:
These three classes have essentially the same API, just different
underlying data types. This patch seeks to improve the docs for all
three while retaining or improving the consistency between them.
Several functions had completely incorrect documentation (looks like
cut-and-paste mistakes), others had missing or incorrectly named
parameter documentation, typographical errors, or other similar issues.
This also cleans up a lot of spelling and grammar errors, defines return
values as part of @return, and reformats/revises doxygen code for
consistency.
There are no changes to code, except some whitespace cleanup.
Reviewers: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6544
Summary:
For whatever reason the test is stalling for me waiting for me to
entire a password at make time. Provide one internally.
Reviewers: devilhorns, zmike
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6528
Summary:
if not, things are going to fall apart, as manager_top then can be NULL
or invalid. Top has to be a window element, if this is not the case,
then the widget tree of the given widget is dangling somewhere in the
void. Calculating the next object in there or even the active manager
will result in errors, since the active manager is not really the active
manager, but rather just a manager object somewhere in a danging widget
subtree.
Moving the focus into such a dangling widgettree might result in a stuck
focus rect on this object, since the DFS of the focus manager
implementation cannot backtrack anymore into the widgets that are still
part of the widget graph.
Depends on D6531
Reviewers: devilhorns, segfaultxavi, zmike
Reviewed By: segfaultxavi
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6532
Summary:
elm_object_focus_next was not working correctly for objects where obj is
not the focused object.
fix T5940
Reviewers: devilhorns, segfaultxavi, zmike, stefan_schmidt
Reviewed By: segfaultxavi
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T5940
Differential Revision: https://phab.enlightenment.org/D6531
Summary:
This one is rather harmless, as the NULL returned by this fuction is handled
correctly in all places, but this commit removes the runtime warning.
ref T7030
Test Plan: After this commit the warning disappears. Got the warning with win_example.
Reviewers: zmike, bu5hm4n, devilhorns
Reviewed By: devilhorns
Subscribers: netstar, cedric, #committers
Tags: #efl
Maniphest Tasks: T7030
Differential Revision: https://phab.enlightenment.org/D6538
Summary:
signal.h is not included with all build options somehow, making this
a bit unreliable. also check for define existence for random platforms
which don't define this symbol
Reviewers: devilhorns, ManMower
Reviewed By: ManMower
Subscribers: ManMower, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6535
Summary:
these tests will fail if run with root permission, so avoid checking them
when run as root
ref T7094
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T7094
Differential Revision: https://phab.enlightenment.org/D6534
Summary:
It seems this function is no longer used since some rework. Clean it up.
lib/eina/eina_thread_queue.c:127:1: warning: ‘_eina_thread_queue_msg_block_real_free’ defined but not used [-Wunused-function]
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6537
Summary:
This file contains both legacy and new API code, this makes it a little
difficult to deploy.
In Makefile_Ecore.am files can be marked either as legacy or public.
If it is not in legacy, make distcheck fails because Ecore_Legacy.h includes
efl_loop_timer.eo.h.
If it is not in public, bindings are not generated for it.
It cannot be in both places, or make install fails, refusing to install the
same file twice.
Fortunately, there is an ugly place to put files like this one, and it's
already full of other outcasts, so...
Fixes T7114
Test Plan: make distcheck still works, and C# bindings are generated for efl_loop_timer.eo
Reviewers: zmike, bu5hm4n, devilhorns
Reviewed By: zmike
Subscribers: vitor.sousa, cedric, #committers
Tags: #efl
Maniphest Tasks: T7114
Differential Revision: https://phab.enlightenment.org/D6527
Summary:
This reverts commit 0dc492087e.
there are no longer any errors here so this should fail the build any time errors
are introduced
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6525
Summary:
gcc somehow didn't notice this until an unrelated use of the variable
later was removed. Now it's a warning.
Depends on D6523
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6524
Summary:
This is now totally trivial and needs not exist.
Depends on D6522
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6523
Summary:
There's no benefit to generating ids instead of just using the
Ecore_Wl2_Window pointer in events.
This has the added benefit of working around a really nasty hash collision
bug when multiple ecore_evas engines are used at once.
ref T7053
ref T6222
@beta_break
Depends on D6521
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Maniphest Tasks: T7053, T6222
Differential Revision: https://phab.enlightenment.org/D6522
Summary:
ecore_event_window_unregister(ee->prop.window) is actually *exactly*
the same as ecore_evas_input_event_unregister(ee)
So this sequence just uselessly tries to remove something from an empty
hash table.
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6521
this previously used an entire eina prefix to determine where to find
efreetd, when a simpler approach would have been to just pass the directory
where it's being installed
this also inhibited running the correct efreetd during in-tree builds and tests,
as it was using the install prefix instead of the in-tree wrapper script
@fix
fix T6713
Differential Revision: https://phab.enlightenment.org/D6516
this is located in the bin/ecore_con directory, not bin/ecore_con/utils,
so ensure that we pass the correct path in order to avoid not finding the
file
@fix
ref T6713
Differential Revision: https://phab.enlightenment.org/D6515
edje_cc does not use any of this functionality, and it's problematic
at build time since efreetd is not run in-tree and does not use in-tree
libraries
ref T6713
Differential Revision: https://phab.enlightenment.org/D6514
this pairs with the newly-added -N option to denote groups in edc files
which should not be checked for correct namespacing
the option is useful for cases such as music_control.edc,
where a group has been shipping for years with API signals like
"btn,clicked" which cannot be changed since they are used in an external
application and compatibility must be maintained
the documentation for this option explicitly states that it must only be used
inside an #ifdef SKIP_NAMESPACE_VALIDATION block, allowing this keyword to
be easily removed at a later point
ref T7072
@feature
Differential Revision: https://phab.enlightenment.org/D6388
Summary:
Some ecore_evas such as ecore_evas_extn_plug doesn't have evas.
ecore_evas_extn_plug seems to be Ecore_Evas, but actually it is Evas_Object_Image.
ecore_evas_extn_plug makes new ecore evas, but it only exists to communicate with ecore_evas_extn_socket.
newly ecore evas only open and close file(ecore_evas_extn_socket). so it doesn't have evas.
```
EAPI Evas_Object *
ecore_evas_extn_plug_new_internal(Ecore_Evas *ee_target)
{
...
ee = calloc(1, sizeof(Ecore_Evas));
...
o = evas_object_image_filled_add(ee_target->evas);
...
return o;
}
```
Reviewers: zmike, Hermet, woohyun, raster, devilhorns
Reviewed By: zmike
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6504
Summary:
an evas may or may not have a parent; this is legacy api and it's all
confusing
Reviewers: bu5hm4n, devilhorns
Reviewed By: bu5hm4n
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6486
Summary:
This mirrors the focus property from the notify to the one from popup.
This is needed to establish legacy behaviour, as earlier popup was able to get focus.
ref T6707
Depends on D6510
Reviewers: zmike, devilhorns
Reviewed By: zmike
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T6707
Differential Revision: https://phab.enlightenment.org/D6511
Summary:
this object takes a internal dummy object, and thus the properties
should be mirrored to the real root.
The focus property on the root of the manager is required that the outer world really sees that the focus is on the root or not.
Depends on D6506
Reviewers: zmike, devilhorns
Reviewed By: zmike
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6510
Summary:
A few classes were added in the wrong place in the makefile, rendering them
neither public nor legacy, and unaccessible to bindings.
Test Plan:
The Efl.Model_Item class is now accessible to C#, and previously it wasn't.
This class is used in the EO tutorials, which would have needed a rewrite.
make check, examples & distcheck still work.
Reviewers: bu5hm4n, zmike, devilhorns
Reviewed By: zmike, devilhorns
Subscribers: cedric, felipealmeida, lauromoura, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6507
Summary:
this should only happen if the user has made a mistake regarding the
existence or type of an object, so ensure that an error message occurs to
help debug any failures which result
fix T6326
Reviewers: bu5hm4n, Hermet, woohyun, devilhorns
Reviewed By: Hermet
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T6326
Differential Revision: https://phab.enlightenment.org/D6322
Summary:
Define return values as part of @return.
Clarify that the returned list of files are gnuplot filenames specifically.
Cleanup grammar throughout.
Reviewers: zmike, devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6502
Summary:
using runtime directory in all cases for this is wrong, as ecore-con has a number
of fallback codepaths for the case where runtime directory is not set or not valid.
by using the same ecore-con function which ecore-ipc uses to generate the socket
string, the error message path should always be the same as the path which is
used by efreetd
extra linkage was required by efreet in order to use ecore-con functions, so
the internal lib variable in the build system was modified to provide this
@fix
fix T7045
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T7045
Differential Revision: https://phab.enlightenment.org/D6425
Summary: signal tests can only be used in fork mode or else they just fail
Reviewers: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6477
Summary:
it's unclear to me why this test was implemented with the expected
event ordering of SERVER_DEL -> SERVER_ERROR; going as far back
as efl 1.7, the behavior has always been ERROR -> DEL
this fixes the test to verify the expected event ordering on a dns
resolve failure
Depends on D6481
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6482
Summary:
in the course of the efl-net rewrite, the previous relied-upon behavior
sequence of error -> disconnect -> del was broken, and error events no
longer triggered disconnects or server deletion.
the failure was caused by a check for the 'connecting' flag, preventing
DEL events from being triggered
further, the ordering of the events was flipped from ERROR -> DEL to
DEL -> ERROR; this is also fixed now
this caused any failed connection to leak the entire server connection
since existing handlers for the del event were never triggered and the
server was never destroyed
@fix
fix T6330
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T6330
Differential Revision: https://phab.enlightenment.org/D6481
Summary:
this selection is data with a specified length, not a terminated string
@fix
Depends on D6484
Reviewers: devilhorns
Subscribers: netstar, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6485
Summary:
these selections are data with specified lengths, not strings
Depends on D6483
Reviewers: devilhorns, bu5hm4n
Subscribers: bu5hm4n, netstar, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6484
Summary:
a selection manager is application-wide, not per-window. creating separate
managers for each window duplicates all callbacks for the window's display
server, guaranteeing broken behavior at any time when more than one window
exists
fix T6937
Reviewers: bu5hm4n, devilhorns
Subscribers: cedric, #committers
Tags: #efl
Maniphest Tasks: T6937
Differential Revision: https://phab.enlightenment.org/D6483
when debugging was active, this would frequently result in the monitor thread
blocking in a read() call for a fd which had already been closed by the main
thread. the main thread would be waiting for the monitor thread to fail its read()
and destroy itself, but the read() would never end without an interrupt
this reworks the monitor thread destruction to stop relying on the thread to
remove its session from the session list and instead only access the list from
the main thread, allowing sessions to always be immediately destroyed
fix T7103
This fixes the following backtrace
#5 0x00007ffff4ee87d0 in efl_ui_focus_manager_root_get (obj=0x0) at lib/elementary/efl_ui_focus_manager.eo.c:17
#6 0x00007ffff4ef50cb in _efl_ui_focus_layer_enable_set (obj=0x40000004adfe, pd=0x12fde40, v=0 '\000') at lib/elementary/efl_ui_focus_layer.c:127
#7 0x00007ffff4ef52dd in efl_ui_focus_layer_enable_set (obj=0x40000004adfe, v=1 '\001') at lib/elementary/efl_ui_focus_layer.eo.c:4
#8 0x00007ffff4ef4df0 in _efl_ui_focus_layer_efl_gfx_entity_visible_set (obj=0x40000004adfe, pd=0x12fde40, v=1 '\001') at lib/elementary/efl_ui_focus_layer.c:35
#9 0x00007ffff0f366a3 in efl_gfx_entity_visible_set (obj=0x40000004adfe, v=1 '\001') at ../src/lib/efl/interfaces/efl_gfx_entity.eo.c:15
#10 0x00007ffff5d832bb in evas_object_show (eo_obj=0x40000004adfe) at lib/evas/canvas/evas_object_main.c:1917
#11 0x00007fffcc365c74 in _bar_icon_preview_show (data=0xfaa7e0) at ../src/modules/luncher/bar.c:906
#12 0x00007ffff6d4305a in _ecore_call_task_cb (func=0x7fffcc36549c <_bar_icon_preview_show>, data=0xfaa7e0) at lib/ecore/ecore_private.h:442
#13 0x00007ffff6d434d2 in _ecore_timer_legacy_tick (data=0x12ca950, event=0x7ffffffc57c0) at lib/ecore/ecore_timer.c:160
#14 0x00007ffff0d06e90 in _event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0, legacy_compare=0 '\000') at lib/eo/eo_base_class.c:1671
#15 0x00007ffff0d07162 in _efl_object_event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1755
#16 0x00007ffff0d07208 in efl_event_callback_call (obj=0x4000001f25b2, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1758
#17 0x00007ffff6d4478e in _efl_loop_timer_expired_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:634
#18 0x00007ffff6d445bd in _efl_loop_timer_expired_timers_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:587
#19 0x00007ffff6d0b423 in _ecore_main_loop_iterate_internal (obj=0x4000000003dc, pd=0x890bf0, once_only=0) at lib/ecore/ecore_main.c:2317
#20 0x00007ffff6d08e66 in _ecore_main_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/ecore_main.c:1175
#21 0x00007ffff6d11757 in _efl_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/efl_loop.c:83
#22 0x00007ffff6d13e6e in efl_loop_begin (obj=0x4000000003dc) at lib/ecore/efl_loop.eo.c:28
#23 0x00007ffff6d08fe0 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1248
#24 0x000000000054817c in main (argc=2, argv=0x7fffffffdc78) at ../src/bin/e_main.c:1090
fix T7034.
Differential Revision: https://phab.enlightenment.org/D6492
there is actaully no need to add the event, we can cleanup the pointer
in the invalidate call. Further more, the event was executed before the
method, thus checks against more_item failed because that was already
NULL. The result have been error messages, this fixes the error.
Differential Revision: https://phab.enlightenment.org/D6496
'more' should indicate when a more item is needed, this is needed if one
item is set to visibility false, thus checking this here is required.
#FocusBug
fix T6806
Differential Revision: https://phab.enlightenment.org/D6495
according to 09d3d5b85a elm scale should
be ignored. However, setting no_scale breaks efl_ui_bg as no_scale
disables scale types, which are required to work.
fix T7080
Differential Revision: https://phab.enlightenment.org/D6494
orientation no_scale etc. can have impact on the min max calculation.
Thus that should be called on every property set.
ref T7080
Differential Revision: https://phab.enlightenment.org/D6493
This improves the results from the graph calculations.
Everything is documented in the comments.
The genlist of focus 6 is placed in a way that the button
at the top is not in reach, before we only had lvl1 and lvl2
(as described in the code comment), thus the button was only
reachable via right not via top. lvl3 makes it accessable
via top AND right.
fix T7098
Differential Revision: https://phab.enlightenment.org/D6491
Summary:
It was only happened when legacy newline is enabled. By default,
legacy newline is enabled. As I know, legacy newline option has
to change textblock's internal behavior. But, it shouldn't change
the given original text. It fixes T3399.
Test Plan: A Test case is included in Evas test suite.
Reviewers: Jaehyun_Cho, z-wony, tasn, woohyun, herdsman, Blackmole, devilhorns
Subscribers: #committers, zmike, raster, cedric, jpeg
Tags: #efl
Maniphest Tasks: T3399
Differential Revision: https://phab.enlightenment.org/D3874
Summary:
a adapter is used whenno real widget is created during realization, when
a adapter is used, the parent cannot be fetched via
elm_widget_parent_get, there we need efl_parent_get
Reviewers: ManMower, devilhorns, stephenmhouston, zmike, Hermet
Reviewed By: Hermet
Subscribers: Hermet, cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6339
The ellipsis item was tracked so it can be inserted at the correct
position. It was not cleared properly, leading to a randomly failing
test suite.
Actually, it seems that there is no need to even store the ellipsis item
as the object data, so it was also moved to be in the layout context,
instead.
A special shoutout to ManMower for lending me his machine, as the test
suite didn't fail on mine.
Fixes T6986
@fix
Summary:
fallbacks string also has to be compared to load proper fdesc.
If a font which does not have fallback fonts is loaded,
fallback fonts can't be appended to the same font.
@fix
Reviewers: tasn, woohyun, herdsman, zmike, devilhorns
Reviewed By: herdsman
Subscribers: #committers, zmike, raster, Blackmole, z-wony, cedric, jpeg
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D3707
Summary:
When multiple fallback fonts was passed to evas_font_load(),
the while loop could run forever. I think it is never tested.
@fix
Test Plan:
Set the following textblock style and set it to a textblock object.
"font=Sans font_fallbacks=Ubuntu,Inconsolata,BlahBlah font_size=..."
Run and see application is in stuck.
Reviewers: tasn, woohyun, herdsman, devilhorns
Subscribers: #committers, zmike, raster, Blackmole, z-wony, cedric, jpeg
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D3703
Summary:
_manager_in_chain_set is not needed to be called if the focus property
is already correct. If a manager is moved out of the redirect property,
then the focus is dropped completly
Reviewers: ManMower, devilhorns, zmike, stephenmhouston
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6338
Summary:
this relation can be retrieved with eet_node_parent_get() but is never
set internally
fix T4600
@fix
Reviewers: artem.popov, devilhorns, Hermet, vtorri
Reviewed By: Hermet
Subscribers: Hermet, cedric, #committers
Tags: #efl
Maniphest Tasks: T4600
Differential Revision: https://phab.enlightenment.org/D6336