Commit Graph

16173 Commits

Author SHA1 Message Date
Mike Blumenkrantz 9dcf6f71d0 ecore: further reduce pipe wait time during shutdown.
Summary:
it turns out that 0.01s is actually a lot, accounting for something like
20s across a run of 'make check' while providing no additional value

ref e0c8ab4c79
ref T6825
ref T6864

Reviewers: cedric

Maniphest Tasks: T6864, T6825

Differential Revision: https://phab.enlightenment.org/D5941

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-16 10:57:32 -07:00
YeongJong Lee ffbbf7b7d6 elm_list: check there is focused item when list get focus at first
Summary:
list have got focus. but there isn't logic to check whether focused_item exist.
we need that logic for list focus
this fixes T6807, T6799

Test Plan: elementary_test -to 'list focus'

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Maniphest Tasks: T6807, T6799

Differential Revision: https://phab.enlightenment.org/D5935
2018-04-15 11:52:34 +02:00
Davide Andreoli f0a0da9f44 Genlist: restore old behaviour of item next/prev in group items
Commit fd82c2521 has changed the behaviour of item_next/prev_get()
in case of genlist with group items (not tree).

The lagacy behaviour was to tread normal items and group items
in a flat way, like if group items was on the same level of
the children normal items.

As the commit already implement bug compatibility, seems to me
the case to restore also this case. Note that this changes only
apply to legacy genlist (I think).

Let me know if this broke something for you...as touching genlist
code is always an "I hope this is right" operation.
2018-04-13 20:37:36 +02:00
Carsten Haitzler 703277b242 efl selection manager - fix x11 cnp from entry to plain text conversion
use sel data not input data/size... copy & paste fix problem...
fixes 28d06f9a5f
@fix
2018-04-13 23:28:21 +09:00
Daniel Kolesa b8f28e2a99 elua: get rid of lightuserdata for state retrieval
In order to get around the lightuserdata 48-bit problem, split
the state pointer into two and reconstruct it later as necessary.
2018-04-13 15:40:05 +02:00
Derek Foreman e066e574cb Revert "elm entry - fix wayland bug by not updating selection until after mse up"
Summary:
This reverts commit b0a7c4b086.

This is adding another EFL bug to work around an EFL bug.

Reviewers: raster

Subscribers: devilhorns, stefan_schmidt, bu5hm4n, thiepha, cedric

Differential Revision: https://phab.enlightenment.org/D5933
2018-04-13 20:50:24 +09:00
Carsten Haitzler eab91edcb2 efl selection manager - fix dnd end handling to only handle on dnd
dnd end handling was being done even if no dnd started, like an
ungrab. this caused side effects like stoping selections in their
tracks.

@fix
2018-04-13 20:50:24 +09:00
Marcel Hollerbach 803fddea5d efl_ui_focus_manager_calc: do not redirect requested calls
this is not documented and does not make sense.
2018-04-13 11:07:34 +02:00
Marcel Hollerbach 9d5a9cf2e1 efl_ui_focus_util: add helper for getting the highest manager objekt 2018-04-13 11:07:34 +02:00
YeongJong Lee 35e7b36411 efl_ui_focus_manager_calc: a node from focus_stack is always normal node.
Summary:
focus_stack can't store logical node. we don't need to check a node from
focus_stack is not normal.
see line 1613

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5927
2018-04-13 11:07:34 +02:00
YeongJong Lee 4841165530 efl_ui_focus_manager_calc: remove needless check for normal node
Summary:
a node in focus stack is always normal node. we don't need to check whether
node is normal.

see also, 97ec48434f

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5930
2018-04-13 11:07:34 +02:00
YeongJong Lee 1d182a44f3 efl_ui_win: add "focused" and "unfocused" signals emission
Summary:
Win is root of focus manager. it means Win is logical node and "focused" and
"unfocused" signals in Win aren't handled by focus manager.
Win needs to emit the signals itself.

Reported by eagleeye, jsuya

Test Plan:
1. elementary_test -to 'window states'
2. Check that "WIN FOCUS: focused" and "WIN FOCUS: unfocused" printed.

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: jsuya, cedric, eagleeye

Differential Revision: https://phab.enlightenment.org/D5931
2018-04-13 11:07:34 +02:00
Marcel Hollerbach 01272c71d0 efl_ui_focus_manager: make request_move more powerfull
it turns out that it is useful and needed (for future patches) to
request moves for nodes that are not focused currently. It is also
needed to request a move that might end up in a logical node.
2018-04-13 11:07:33 +02:00
Marcel Hollerbach 32e17ecdc2 efl_ui_focus_manager_calc: only call next when the node is unexpected
ref T6793
2018-04-13 11:07:33 +02:00
Lauro Moura 65f868786a efl_mono: Proper support for @class methods.
Previously, class methods were implemented as regular instance methods.
This commits generates C# static methods for @class methods on the
*Concrete classes (and their childs).
2018-04-12 21:23:42 -03:00
Derek Foreman 2dbaef9b7c ecore_evas: Make draw_block block drawing
This was only used in the X custom render function, now it's meaningful
everywhere.  (Nothing that uses this code path currently sets it)

ref T6834
2018-04-12 15:59:39 -05:00
Derek Foreman 380a58a9d9 ee_x: Rename draw_ok to draw_block and invert logic
I want to use this in other engines, but no other engine initializes this
properly, so draw_ok would be EINA_FALSE everywhere.  This way draw_block
is EINA_FALSE after calloc in all engines that don't know about it.

ref T6834
2018-04-12 15:59:39 -05:00
Derek Foreman 2ad9b80517 efl_ui_win: Always show the wayland pointer
It's hidden by the compositor as required, so this just makes life much
more complicated in other code.

ref T6834
2018-04-12 15:59:39 -05:00
Carsten Haitzler b0a7c4b086 elm entry - fix wayland bug by not updating selection until after mse up
or update with a small delay after any change and check mouse button
mask to avoid some bizarre mouse up event that is stopping the
selection form continuing with a mouse up event... so this works
around that and still works.
2018-04-13 04:19:16 +09:00
Carsten Haitzler 28d06f9a5f efl selection - fix another binary buffer treates as string bug
as per subject.

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 13734e51c1 efl selection - fix entry <-> plain text compy and paste in wl
efl didnt convert markup to plain text when pasting markup -> text.
this fixes that and enables middle mouse paste etc. etc.

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 9d6ac24a9c efl selection manager - fix anoyther binary buffer treated as string bug
yet another "binary buffer" (pointer + size) streated as a string with
strdup + strlen which is oh so wrong. this fixes up some cnp in
wayland with garbage at the end of strings

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 59f3dbdd34 efl selection manager - fix crashes when doing selections on non-x11
elm was calling x calls when on wayland here... because it didnt check
the RUNTIME display system type for the window, relying on ifdefs
instead.

@fix
2018-04-13 04:19:16 +09:00
Daniel Kolesa 2defb32214 eolian: correct line/column number during doc reference validation
Eolian doc objects now bundle debug information necessary to
provide correct line/column numbers. It is not possible to get
this information cirectly from the text, as it's reformatted and
contains no extra whitespace or newlines beyond paragraph
separators.

Fixes T6701.
2018-04-12 15:24:15 +02:00
YeongJong Lee 4793398759 efl_ui_frame: remove dulicated _content_aliases
Summary:
Frame inherits from layout. it can use same _content_aliases of Layout

ref 3114ee264b

Reviewers: Jaehyun_Cho, woohyun, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5929
2018-04-12 22:11:39 +09:00
Carsten Haitzler 3d6fa02540 evas - loading extension query - fix to not skip small extensions
since this can take an extension as well as a file path (extension
being .gif or .jpeg etc.) it would skip if passed a small extension
only (5 chars or less). fix and this fixes e's thumbnailing too for
some files.

@fix
2018-04-12 20:56:48 +09:00
Youngbok Shin 4c36461233 evas: apply fribidi bracket types to show paired bracket properly
Summary:
The fribidi couldn't reorganize paired brackets (Ex. '(', ')')
when there is RTL + LTR text. According to TR9(http://www.unicode.org/reports/tr9/),
it has to be shown properly without LRM or RLM.

Also, from the fribidi 1.0.0, fribidi_get_par_embedding_levels() was deprecated.
It is replaced with fribidi_get_par_embedding_levels_ex() which is including
paired brankets rules from TR9.

@feature

Test Plan:
1. Create a elm_entry.
2. Set a text by calling text_set.
   elm_entry_entry_set(entry, "مرحبا Hello (40)");
3. Run and see the results.
   - Without this patch or fribidi 1.X.X, it will show text like this...
     "(Hello (40 مرحبا"

   - With this patch and fribidi >= 1.0.0
     "Hello (40) مرحبا"

Reviewers: raster, cedric, herdsman, woohyun

Reviewed By: herdsman

Differential Revision: https://phab.enlightenment.org/D5921
2018-04-12 12:55:26 +03:00
Jaehyun Cho e4fbab8b47 efl_canvas_object: Change parameter name of property event_animation
Change the parameter name of property event_animation from "event_type"
to "desc" to synchronize with other APIs.
(The parameter type is Efl.Event.Description)
2018-04-12 12:55:49 +09:00
Derek Foreman 48e0c6ea90 ecore_wl2: Fix ecore_wl2_window_output_find
Window geometry x, y are the offset from the top left corner of the
buffer, and not screen co-ordinates, so has nothing to do with output
geometry and can't be used to determine which window we're on.

Now that we track surface enter/leave events we can just give the first
output in the list of outputs we know we're on.
2018-04-11 16:29:07 -05:00
Derek Foreman f560c76b52 ecore_wl2: Properly handle minimize request before shell surface exists
If we're asked to iconify a window before it's visible we need to track
this and apply the state as soon as we create the shell surface.

fix T6834
2018-04-11 11:48:27 -05:00
Derek Foreman 5a2c5479bf ecore_wl2: Stop pretending to fully control minimized state
Under wayland we can set minimized but not unset it, nor can we tell
if it's been unset.  This means we can't cache the value, we need to
make the protocol request any time ecore_wl2_window_iconified_set is
called.

ref T6834
2018-04-11 11:48:27 -05:00
Derek Foreman d697e7936b ecore_wl2: Remove (beta) API ecore_wl2_window_iconified_get
We actually can't ever query this, it's clearly defined that way in the
protocol.  There is absolutely no way to ever know if we're iconified.

ref T6834
2018-04-11 11:48:27 -05:00
Marcel Hollerbach 253430ab76 efl_ui_focus_manager_calc: call next after requesting a subchild
requesting subchild for subchild is not a good idea, as it really only
fetches for a subchild, and never calls next and escapes the children of
the passed node.

fix T6793
2018-04-11 17:16:34 +02:00
Chris Michael b5c9742cb7 efl_ui_focus: Add missing EINA_UNUSED for unused function parameters 2018-04-11 10:11:20 -04:00
Chris Michael c18fac91ff ecore-evas: Remove unused variable 2018-04-11 10:05:33 -04:00
Daniel Kolesa e9811c6596 eolian: simplify class validation logic 2018-04-11 14:58:41 +02:00
Daniel Kolesa 710748c551 eolian: better/more robust class inheritance list replacement 2018-04-11 14:31:03 +02:00
Marcel Hollerbach eef0c5164a elc_popup: no need to make them focusable
if they have content the content will be focusable, if there is no
content the rect of root_focus will be focused instead.
2018-04-11 10:36:24 +02:00
Marcel Hollerbach f4b70fc6cd efl_ui_focus_manager_root_focus: maintain focus state over state eval
the rect is unregistered and registered again, if it was focused, still
focus it.
2018-04-11 10:33:19 +02:00
Carsten Haitzler 86c855bdd3 ecore ipc - fix send to skip data payload if null/0
conversion to efl.nmet didnt deal with null/0 zised payloads properly
and tried to send them, resulting in lots of ERR complaints which were
not errors. fix that to not try and send such empty payloads

@fix
2018-04-11 14:34:40 +09:00
Cedric Bail 23800a06a0 ecore_evas: remove dead code. 2018-04-10 15:01:43 -07:00
Cedric Bail 664c1c8eb4 evas: we directly use the main loop, we do not need external integration anymore. 2018-04-10 14:42:54 -07:00
Cedric Bail f1f1a8c996 evas: protection during canvas shutdown. 2018-04-10 14:42:54 -07:00
Jaehyun Cho 5351070a4d efl_canvas_animation_player: Reset map after animation is finished
Previously, beginning state of animation is applied after animation is
finished if final_state_keep_get() is false.

Now, map is reset (no animation is applied) after animation is finished
if final_state_keep_get() is false.
2018-04-10 22:38:40 +09:00
Jaehyun Cho 503bb0c8f9 efl_canvas_animation_player: Change Running_Event_Info to Event_Running
To synchronize other types of event info,
Efl_Canvas_Animation_Player_Running_Event_Info is changed to
Efl_Canvas_Animation_Player_Event_Running.

Remove unused struct.
2018-04-10 22:38:32 +09:00
Marcel Hollerbach c705139623 ecore_file: switch from buf to tmpstr
before 	c65782b15c the acutal path has
been filled into buf, with eina_file_mkstemp the string is filled into
tmpstr, so that path should be chmoded instead of the template buf.

Thx to MatP for the report!
2018-04-10 14:27:44 +02:00
Shinwoo Kim 579eeb4a8c efl_io_queue: add null check for slice->mem
A negative test case leads to segmentation fault.
If ecore_evas_msg_parent_send is called with NULL data, then slice->mem would
be NULL, and _efl_io_queue_efl_io_writer_write calls memcpy with NULL src.
2018-04-10 16:25:11 +09:00
Hermet Park d62ee3bea1 evas: improve evas map anti-alising rendering quality.
Old version algorithm was imperfection a bit, quality was poor at some specific
degrees, specifically, when pixel increment pattern on the diagonal lines is
unstable.

This revised version was better than old one even source code is much cleaner
and simpler.

See belows.

*NonAA vs AA:
https://ibb.co/bCNfMc

*Compare the worst case aa in the old version:
https://ibb.co/bEJsZx

*Test video:
https://youtu.be/Wn20Tym5lfg
2018-04-10 11:19:19 +09:00
Woochan Lee 0088189eee elementary: add new config value to handle tap finger size.
Summary:
The tap_finger_size value of the concept is different from the finger_size value used in the past.

We need a minimum value for recognize the gesture as a tap or not.

Since the actual screen has different screen sizes, there is a problem that the recognition rate of tap is lowered when using the existing value(finger_size)

Test Plan: elementary_test -> gesture sample.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb, id213sin

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5842

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-09 10:36:43 -07:00
Woochan Lee f9fa8bfcb0 ecore_evas: check return value.
Summary: After migration this code in Tizen. The coverity said it needs to check return value(CID 39562).

Reviewers: raster, myoungwoon, woohyun, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5907

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-09 10:36:43 -07:00