| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This composite object utilizes the Efl.Canvas.Text, Efl.Canvas.Text.Cursor and
Efl.Ui.Interactive API to server as a proper replacement for the Elm Entry
widget.
@feature
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
@feature
Ui text: Add a new interactive version of Canvas.Text
This object is internal and is essentially a Canvas.Text that accepts
key and mouse input. It should be used by Ui.Text as the text
layout/input driver.
Ui text interactive: Add include guard to header.
Ui internal text: Improve input handling support and add selection.
Ui internal text: Add a lot of imf stuff.
Add more text selection handling code.
Add support for allowing selection.
Efl.Ui.Text.Interactive: (reword) code format fix.
Efl.Ui.Text.Interactive: Remove useless struct members.
Add multiline toggle support and a constructor.
Text interactive: Add support for legcay newline.
Text interactive: Use the new cursor_equal function.
Efl.Ui.Text.Interactive: (Rebase split) fixup cursor
Efl.Ui.Interactive: (Rebase split) fixup line_jump_by usage
Text interactive: Cleanup tab/return handling.
Text interactive: Use cursor_equal more.
Text interactive: Simplify and unify selection handling in key input.
Text interactive: Fix user text change reporting.
This is useful for implementing undo/redo.
Text interactive: Add documentation to event.
Efl text interactive: (Rebase reword) Add a new interface to be used later.
Ui text interactive: Migrate one missing change_info call.
Ui text interactive: Mark the correct type for the change event.
Ui text interactive: (Edited) Move to elementary and add "selection,changed".
This is useful for implementing selection handlers. We had to move it to
elementary because we started referencing cursors.
Ui internal: Emit an event for selection changed.
Ui text interactive: Remove unused code.
Ui text interactive: Remove more unused code.
Ui text interactive: Remove more unused code.
Ui text interactive: Rename improperly named function.
Ui text interactive: Update code to the new canvas text api.
Ui text interactive: provide access to the selection cursors.
This is the new API for manipulation selection outside of the object.
Just manipulate these cursors to manipulate the selection.
Fix previous commit.
Ui interactive: Clean up internal functions.
Ui interactive: Fix abuse of selection in word deletion.
Ui text interactive: Fix selection.
Ui text interactive: Fix right key to move next.
Ui text interactive: Fix selection using keyboard.
Ui text interactive: Don't emit selection changed events twice.
We now use the cursor changed event to track changes, so no need
to manually emit events ourselves.
Ui Text interactive: Remove selection,cleared signal, use changed instead.
If the selection cursors are equal, there's no selection, if they are
different, there is.
Ui text interactive: remove redundant code.
Ui text interactive: Don't emit selection changed events on init.
Ui text interactive: Remove unused variable.
Efl.Ui.Interactive: fixup char_coor usage
Ui text interactive: Fix some fixmes.
Ui text interactive: fix selection_cursors_get
Ui text interactive: Skip key down events if marked ON_HOLD.
|
|
|
|
|
|
|
| |
Also: This merges style user and normal style into a list with precedence. This
allows for more flexibility while keeping the API clean.
@feature
|
|
|
|
|
|
|
| |
The text cursor is now an eo object. Consult the efl_canvas_text_cursor.eo file
for the API.
@feature
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The implementation depends on creating different code paths from the now-legacy
behavior of text appending.
The annotation system introduced in this commit replaces the current way of
applying formats on text.
Up until now it has been quite a hassle for the user to control the formats, as
it required keeping track of the format positions with an opener and closer
formats almost every time (with the exception of own-closing formats).
The combination of Efl.Text API along with the Efl.Canvas.Text annotation API
essentially replaces the capabilities of the old format.
There is additional annotation API to allow more control, so be sure to check
the documentation/.eo files and the wiki page of Efl.Canvas.Text.
The style API now accepts actual strings of format style. There is not longer
need to instantiate as style with style_new() followed later by style_free().
@feature
|
| |
|
|
|
|
|
| |
This order seems more right. It does not have a visible
impact though...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pffff... another tricky one...
-windowDidResize is actually also called when the window is not
resize by the user, leading to multiple event posting, and of
course the infamous call of ecore_main_loop_iterate() when it
was not paused at all, leading to messy events handling... the
most visible being the initial resizing of the window going rogue.
We now ensure with -windowWillStartLiveResize and -windowDidEndLiveResize
that we only send an event when the user requested it. Since the main
loop is paused at this point, calling ecore_main_loop_iterate()
becomes safe.
Fixes T3648
|
| |
|
|
|
|
|
|
| |
I broke it in dc73f6644e0ed8fdbd2c6c8187591fb7eb8027c7.
Excuse of the day: I'm not working from my usual spot and there's screen glare
here that made me not see the *. Good excuse?
|
|
|
|
|
|
|
| |
Autotools really really really sucks.
Because of the above, we need to manually list both source dirs and
build dirs, because some of the include files are in the source dirs and
some are in the build dir (generated).
|
|
|
|
|
| |
There was no need for the extra variable. This also fixes a shadow
warning.
|
|
|
|
|
|
|
|
|
|
| |
When compositing objects, we were checking that class_of(B) is in A's
inheritance tree before allowing attaching B as a composite object of A.
This is wrong and breaks a few cases, for example: B extends a class that
is in A's inheritance tree or B implements an interface that is in A's
inheritance tree.
Thanks to Marcel for reporting.
|
|
|
|
| |
I really cannot see why we should require to use --enable-feature on those, they should be safe.
|
|
|
|
| |
In the final report we want to show if the loader is enabled, not if it's wanted
|
|
|
|
| |
This typo was preventing the svg loader to be built in every cases
|
|
|
|
|
|
|
|
|
|
| |
Evas events recently changed, and involved the use
of the 'multi' field within a mouse mouve event.
It was used afterwards for mouse scrolling, but since
it was never set by ecore_cocoa, scrolling went
broken...
Fixes T3789
|
|
|
|
|
|
|
| |
The same checks are performed later on.
There is no use doing it twice.
Only affects Cocoa windows.
|
| |
|
| |
|
|
|
|
| |
Fix a warning thrown by Apple-llvm.
|
|
|
|
| |
#SizeHintsMess... I really cannot understand why aspect_fixed is not respected :(
|
|
|
|
| |
This should be harmless and just fix syntax hilighting is some editors (geany at least)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The bug came from the fact we need to handle the destruction of the
main loop which destroy the underlying timer. The event handler that
catch the destruction of the timer can not make the difference between
eo_del call from the timeout code and eo_del from the main loop
destruction. By removing the event handler, the double free is properly
avoided.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
As we add more object in the main loop, they can't live in the top
namespace as they make little sense there (Efl.Fd !). For coherence,
everyone should in the loop namespace, so move timer there.
|
|
|
|
| |
This is only a legacy API.
|
| |
|
|
|
|
|
| |
Add NULL checks and EINA_MAGIC checks that avoid crashing when it
shouldn't.
|
|
|
|
| |
Remove not very useful parameter to eina_promise_then callbacks.
|
|
|
|
|
| |
With the exynos allocator a failure can happen during a resize, and the
resize path wasn't properly falling back to wl_shm buffering.
|
|
|
|
|
| |
Whether "char" is signed or unsigned is architecture dependent, so if we
know we need a -1 in a char type we must declared it to be signed.
|
|
|
|
|
| |
Whether "char" is signed or unsigned is architecture dependent, so if we
know we need a -1 in a char type we must declared it to be signed.
|
|
|
|
| |
Remove not very useful parameter to eina_promise_then callbacks.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now when dealing with pointer types, we will not get pointer to
pointer semantics in callbacks and eina_promise_owner_value_set
for Eina_Promise.
It will work as expected:
Eina_Promise_Owner* promise = eina_promise_add();
void* p = malloc(sizeof(T));
eina_promise_owner_value_set(promise, p, &free);
|
| |
|
|
|
|
| |
This fix the left over etc .deps during make distcheck.
|
|
|
|
|
| |
Allows clients on exynos hardware to allocate GEM buffer objects
to back DMAbuf buffers.
|
|
|
|
|
| |
Split out the intel specific stuff into an abstraction in preparation for
adding exynos support.
|
|
|
|
|
|
| |
The call to eina_promise_then steals the first ref'count, so it is
possible that the promise is freed after the eina_promise_then,
so we need to eina_promise_ref before eina_promise_then.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Implemented interface Efl.Gfx.Buffer functions bufer_map/unmap for Efl.Canvas3D.Scene.
Added function e3d_drawable_texture_rendered_pixels_get to module evas_gl_3d
to getting pixels from FBO. Added wrappers for functions
e3d_drawable_texture_rendered_pixels_get and e3d_drawable_texture_id_get
to have possibility call it through engine functions.
Reviewers: cedric, Hermet, raster, jpeg
Reviewed By: jpeg
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3978
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So... I had issues with evas-fb engine which was massively leaking,
one image per frame.
After investigating a bit with @cedric on IRC, the reference count
of the cache entries was always 2 before the engine dropped.
So, for each frame with an animation, we could never drop a cache
entry, leading to a trumendous amount of memory leaking.
Now for non-async rendering, we copy the behaviour of
evas_render_pipe_wakeup() which is called in async-mode,
and actually drops a reference in the cache entry.
Fixes T3763
|