Note: Only two modes are supported (blend and copy).
The Efl.Gfx and Evas enums were different. All other values
were not supported. For legacy compatibility (since GL engine
actually implements some kind of support for all operations),
render_op_set() should still work fine, even though it's not
recommended, and won't work anymore with EO API.
This is a horrible API used for internal optimizations. Which
may or may not be partly broken anyway.
We can do better, in the future. Let's not expose this kind
of API.
Summary:
efl_ui_flip_internal_part_eo.h doesn't exist but it belongs to
the target list of Makefile.
Remove it from the list to fix an error when building elementary only.
Test Plan: $ make (in src/lib/elementary path)
Reviewers: jpeg, cedric
Differential Revision: https://phab.enlightenment.org/D4046
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This set of commits include the renaming of textblock to the new
convention, addition of a new interface for interactive text editing,
and a new entry widget that uses this new API.
A better write up will follow when the change is fully done. But the
gist of it is that now you just manipulate text cursors to manipulate
the text and selections. Edje_Entry is no longer used, the logic is
outside. Formats and markup are no longer used, they proved to be
problematic for text editing; we'll add wrappers for setting and getting
markup. Instead of formats we use the more strict subset, which is
format ranges, or as we called them "annotations" that essentially let
you apply a format on a range of text.
There are a few things missing that will soon follow. Namely:
1. Style is currently hardcoded. We need to change it to load from Edje,
and just use the old entry theme instead of the custom one.
2. Text filtering is not yet implemented.
3. There are a few known issues that need to be fixed.
4. Markup set/get support.
5. Change the IMF API and other APIs that we didn't know much about that
looked a bit messy.
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.
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
It could be possible that libinput_seat_get_physical_name does not
return a valid name, in which case searching for seats will fail. This
small patch just checks for a valid name being passed in and if not,
searches for a default seat name
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Summary: This fixes compilation on Windows: timeout.c is using SIGALRM which is unavailable on Windows
Test Plan: compilation
Reviewers: cedric, jpeg, stefan_schmidt
Differential Revision: https://phab.enlightenment.org/D4058
Reported by Simotek when testing the latest snapshot:
Were getting closer, "/usr/bin/mkdir -p /usr/share/elua/examples" should
be "/usr/bin/mkdir -p
/home/abuild/rpmbuild/BUILDROOT/efl-1.17.99.48545-1.x86_64/usr/share/elua/examples"
So, it seems my previous commit 79abba52c5 was a job
half done, as I forgot to remove Evas.Image from the inheritance
tree of all new evas image classes.