- Ecore_Cocoa_Cursor enum which references system cursors;
- API to show/hide cursor: ecore_cocoa_window_cursor_show();
- API to set system cursor: ecore_cocoa_window_cursor_set();
- Ecore_Evas interface to get Ecore_Cocoa_Window from Ecore_Evas.
@feature
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
As I don't see the use of inheritance for stroke anymore, we will use internal access
rather than inherited get/set function. This behavior can be reverted if anyone find
a real use case for it.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This now generate more optimized path by reducing the use of arc and
switching to only line whenever possible.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This allow to reduce the number of generated arc, but doesn't follow
SVG specification. This is just used internally and can't be used by
outside call.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This caused functions from eina_util to be undefined at compile time.
The compiler would make implicit casts of return values into ints,
which had major side effects (e.g. segfault edje_cc)
@fix
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
We need to check against the state here and if the compilers assignes 0 to the
first item in an enum we are screwed here as the bitwise AND will always
evaluate to false.
This is a re-incarnation from a486671bce
Summary: When one pointer moves, we should update the position of other devices.
Test Plan:
(1) Two pointer devices are connected.
(2) Move the cursor to (x, y) position using "device 1".
(3) When you move the cursor using "device 2", the cursor doesn't start from (x, y) position. This causes discontinuous mouse motion.
Reviewers: raster, zmike, gwanglim, stefan_schmidt, devilhorns, ManMower
Reviewed By: devilhorns, ManMower
Subscribers: cedric, Jeon, input.hacker, jpeg
Differential Revision: https://phab.enlightenment.org/D3384
Clang spits warnings here about missing field initializers for
Evas_Vec3 (missing y and z fields), so we will explicitly initialize
them to 0 (matching the x field).
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
We had this nice shortcuts for multiply and inverse with the identity matrix.
Pity we never used it! The EINA_MATRIX_TYPE_IDENTITY is coming from an enum
without and direct assignments to its internals. Being the first item in the
enum it is most likely will be 0 which makes the whole bitwise AND zero and thus
the optimized path will never get called. If our compiler now decides hew wants
to handle enums differently and does not assign the 0 to the first item this
bitwise operation will be even more screwed. What we really want is to check is
if the type we get for the matrix matches EINA_MATRIX_TYPE_IDENTITY. So better
do this. Made me look into matrix multply and inverse. Fun!
Thanks to smatch for poiting this out.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
Summary:
Evas supports UltraLight, UltraBold as font weight.
These terms have same weight value as ExtraLight, ExtraBold.
Some applications, for example, fontforge, use ExtraLight, ExtraBold terms for these weight values.
So, it would be better to support these terms, too.
@feature
Test Plan: None
Reviewers: tasn, woohyun, herdsman
Reviewed By: herdsman
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3126
Summary:
In entry, when selection_get function is called, selection is not
always returned the current selection.
Scenario:
- In select mode, entry has selection (e.g, by double click).
- When selection handler is moved, set the cursor the current coordinate
with edje_object_part_text_cursor_pos_set() API.
- Edje emits "selection,changed" signal.
- Elementary gets current selection and stores it.
- Elementary does not get selection as visual selection (e.g, text is
highlighted with "entry test", but the selection returned
from edje is "entry").
- If we copy and then paste to the entry, the pasted text is not same as
selected text.
Reason:
- In _edje_entry_cursor_coord_set function, if entry has selection, we only
emit "selection,changed" signal without freeing en->selection.
- When _edje_entry_selection_get is called, we check the en->selection,
since it is existed, we just return it which is not updated one.
This patch clears en->selection, so that it is updated at _selection_get,
and the updated selection is returned to caller.
@fix
Test Plan:
In mobile profile, open entry
- Right click, choose select, double click -> selection handlers are shown.
- Drag selection handlers to change selection.
- Right click, do copy.
- Right click, do paste.
- See the pasted text is not same as selection.
Reviewers: raster, tasn, herdsman
Subscribers: seoz, JackDanielZ, cedric
Differential Revision: https://phab.enlightenment.org/D2746
Align it with the rest of our cmake support files. Adding it to configure as
well so the cmake file gets generate from the cmake.in
Without this I had distcheck failing with a missing target for it.
Summary:
The list of elem->paths is given with the actual icon at position 0 and
the bigger the index is the lower the icon in the inherit structure is.
Due to the for loop beginning at 0 walking to the end this
direction is flipped. So the last r is returned, which is the lowest
icon in the inherit structure.
This is fixed by returning if the first valid path is found.
@fix
Test Plan: run jesus or efm with a custom icon theme beore the wrong icons are taken, now the correct ones are taken
Reviewers: raster, cedric
Subscribers: DaveMDS
Differential Revision: https://phab.enlightenment.org/D3366
See T2865.
Since Harfbuzz 1.1.0, terminology displays fonts funnily aligned to
the top. This is apparently because until 1.0.6 the y_offset was
always 0 for all glyphs, but since 1.1.1 the offset is actually
set.
This is a TEMPORARY fix. There might be an underlying issue left
here.
Harfbuzz changed behaviour in this commit:
commit 44f82750807475aa5b16099ccccd917d488df703
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Nov 4 20:40:05 2015 -0800
[ft] Remove font funcs that do nothing