Commit Graph

12606 Commits

Author SHA1 Message Date
Derek Foreman 0aac2db93a ecore_drm2: Use stricter cursor plane size check
Unfortunately the plane sized returned from the cursor plane query isn't
a limit, it's an exact size.  Sometimes you can use a different size,
but that's completely hardware dependent - so stick to the advertised
size.
2017-05-05 12:53:24 -05:00
Derek Foreman ab8ec5ed5f ecore_drm2: Add API to update the fb for a plane 2017-05-05 12:53:23 -05:00
Derek Foreman c98a9b06c6 ecore_drm2: Rebuild atomic state from plane_destination_set
Call a test commit to rebuild the atomic_req
2017-05-05 12:53:23 -05:00
Derek Foreman 6b9a6a8bed ecore_drm2: Fix atomic flip with no new buffer
We don't have an atomic state, so we need to create one before the flip
2017-05-05 12:53:23 -05:00
Derek Foreman 9223b0d535 ecore_drm2: Pass user data to atomic flip
We need the user_data to come back to us in the flip handler like it does
in the non atomic flip.
2017-05-05 12:53:23 -05:00
Derek Foreman b6f67124e4 ecore_drm2: Add some atomic state tracking
I think we're now at the point where the two paths are merged.

Still no atomic functionality because nothing assigned the primary plane,
so we have no atomic state to commit.  The machinery should be in place
though.
2017-05-05 12:53:23 -05:00
Derek Foreman ba4d41ff63 ecore_drm2: Handle atomic state in _release_buffer
Further merging of atomic and non-atomic paths
2017-05-05 12:53:23 -05:00
Derek Foreman b902ef7c69 ecore_drm2: Make _release_buffer take a state struct instead of fb
Lets us push the NULL set into _release_buffer for some clean up
2017-05-05 12:53:23 -05:00
Derek Foreman 89630ddeb1 ecore_drm2: Refactor common code from non-atomic path
We'll need to perform all this for atomic operations as well.
2017-05-05 12:53:23 -05:00
Derek Foreman 8d72a2cf46 ecore_drm2: Fix typo in comment 2017-05-05 12:53:23 -05:00
Derek Foreman e7a494ba87 ecore_drm2: treat atomic flip without a req as an error
We should use the safety macro here instead of silently continuing so we
can get something in the log if this happens.
2017-05-05 12:53:22 -05:00
Derek Foreman 9da0f52642 ecore_drm2: remove fb parameter from _fb_flip()
Time to start smashing the atomic and non-atomic paths together.
2017-05-05 12:53:22 -05:00
Derek Foreman 8143abff2c ecore_drm2: Replace output fbs with state structs
next, pending, and current are going to have to deal with atomic state
instead of just fbs soon
2017-05-05 12:53:22 -05:00
Derek Foreman 63dbf061a9 ecore_drm2: Move atomic state into an output state struct
This should make it easier to share code paths between atomic and non
atomic operations.
2017-05-05 12:53:22 -05:00
Derek Foreman 6482367aa2 ecore_drm2: Perform test flip during plane assignment
Make sure we can commit that plane at assign time so when we hook up to
the scene graph it knows when it can safely use a plane.
2017-05-05 12:53:22 -05:00
Derek Foreman 8d42d7d50a ecore_drm2: Drop static from _fb_atomic_flip_test()
We're going to need this one in plane assign to test commits
2017-05-05 12:53:22 -05:00
Derek Foreman f1d779da06 ecore_drm2: remove flip test from commit path
We'll be doing tests as we build up plane state assignment.  it's too late
to do anything about it if we fail here - failed tests will block plane
assignment in the first place so the scene graph knows it still has to
render those visual elements.
2017-05-05 12:53:22 -05:00
Derek Foreman ba2275b7ec ecore_drm2: Add ecore_drm2_plane_release to release planes
Opposite of plane assign.
2017-05-05 12:53:22 -05:00
Derek Foreman 014e84d8fa ecore_drm2: Store output in plane structure
This will simplify a bunch of API that would otherwise have to pass in
both output and plane - and in some cases we might not have the output
handy anyway.
2017-05-05 12:53:21 -05:00
Derek Foreman aae1c50dd3 ecore_drm2: Remove next, current, pending from plane state
These will be output state eventually
2017-05-05 12:53:21 -05:00
Derek Foreman 308a11cfd6 ecore_drm2: Assign planes in ecore_drm2_plane_assign
Don't just test, allocate the resource, and then prevent further
assignments from trying to use it as well.
2017-05-05 12:53:21 -05:00
Derek Foreman 7dd8d6d163 ecore_drm2: Don't use drmModeAtomicMerge
We're creating the entire state from scratch already - trying to merge
with the old state will likely bring in state we just tried to replace.
2017-05-05 12:53:21 -05:00
Derek Foreman eb305727d0 ecore_drm2: Remove extra #ifdef
It's the same as the previous one, so combine them.
2017-05-05 12:53:21 -05:00
Derek Foreman 63bc30dd5b ecore_drm2: Fix typo in error message
Stop printing "commit test failed" from non-test commits.
2017-05-05 12:53:21 -05:00
Derek Foreman 950df19c67 ecore_drm2: Add an env var to disable atomic pageflips
Allows testing non-atomic paths without a reboot or a rebuild.
2017-05-05 12:53:21 -05:00
Chris Michael 0595e70b22 ecore-drm2: Do atomic commits per-output
In cases where output monitors have different frequencies, we need to
be doing atomic commits on a per-output basis. This patch modifies the
ecore_drm2_fb_flip function to support doing atomic commits per output.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:21 -05:00
Chris Michael 2ba64a4c0a ecore-drm2: Free output atomic request on destruction
When we free an output, make sure we cleanup any existing atomic
commit requests

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael 03cb02fa74 ecore-drm2: Remove newly added atomic API functions
As we need to do atomic commits on a per-output basis, these 2 newly
added API functions can go because these functions did one atomic
commit for all outputs

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael e5de325e90 ecore-drm2: Remove #ifdef for HAVE_ATOMIC in plane_assign function
As there is nothing inside this function which requires any Atomic API
calls, this #ifdef can be removed and the function can then still be
used to assign Primary planes for non-atomic use cases.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael b9f4641762 ecore-drm2: Minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael 86bd42884a ecore-drm2: Fill output states regardless if atomic
This commit fills in various output 'state' structures during creation
so that those state structures can be reused for pageflip handling
even if Atomic support is not enabled.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael f07f2e6e4e ecore-drm2: Enable filling state structures without atomic support
This commit enables the ability to fill our state structures even if
atomic support is not enabled. This will allow us to reuse those state
structures for dealing with pageflip in both the atomic & non-atomic
use cases.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael e1b26f6320 ecore-drm2: Enable reuse of existing state structures for non-atomic
As there is nothing 'atomic' specific in these structures, we can move
them outside the atomic ifdef and make use of them for handling
pageflip for both atomic and non-atomic use cases.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Chris Michael eb1ed0fc0a ecore-drm2: Minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-05-05 12:53:20 -05:00
Marcel Hollerbach 5b8421c550 eo: fix missing event emission
There have been cases where the logic of _event_callback_call break'ed
too early in the event submission.
Reason for that was the line ((const unsigned char *) desc -
(const unsigned char *) it->desc) producing a overflow.

This means the if statement

if (!legacy_compare &&
   ((const unsigned char *) desc - (const unsigned char *) it->desc) < 0)

was true while the pointer desc was smaller than it->desc, which means
the event subscription got aborted, even if it should not.

This turned out on two 32 bit maschines. And led to not rendering apps
anymore.

It was introduced by commit in 605fec91ee.

@fix
2017-05-04 20:44:42 +02:00
Marcel Hollerbach 3633bb4f5e efl_ui_focus_object: that definition is not needed. 2017-05-04 20:44:42 +02:00
Marcel Hollerbach a02b519bf4 efl_ui_focus_manager_sub: replace a wrong comment 2017-05-04 20:44:42 +02:00
Marcel Hollerbach 178b363bac efl_ui_focus_manager: specify the event in the same way evas does 2017-05-04 20:44:42 +02:00
Marcel Hollerbach c9aeeef9a5 efl_ui_focus_manager: the caller gives away the ownership of this list 2017-05-04 20:44:41 +02:00
Marcel Hollerbach 00660723c8 efl_ui_focus_manager: elaborate on what the last object is 2017-05-04 20:44:41 +02:00
Marcel Hollerbach e7281ff67e efl_ui_focus_manager: make documentation clear
jpeg pointed out that the documentation here is missleading and unclear.
2017-05-04 20:44:41 +02:00
Marcel Hollerbach 059239a997 efl_ui_focus_manager: give feedback if setting root worked or not
so a potential caller can make sure if the set of root worked or not
2017-05-04 20:44:41 +02:00
Marcel Hollerbach 0ebe80fa0b efl_ui_focus_manager: rename api from geometry to focus_geometry
otherwise we would clash with efl.gfx.
2017-05-04 20:44:41 +02:00
Daniel Kolesa 802d544265 eolian: allow future<void> for value-less futures 2017-05-04 15:27:17 +02:00
Bryce Harrington 29b512b90e Evas_Common: Fix punctuation errors and typos
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, stefan_schmidt, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4842
2017-05-03 15:07:44 -04:00
Bryce Harrington 910c316c17 evas: Rewrite Evas Eo documentation
Summary:
Cleans up grammar, simplifies wording, and elaborates on some details
for better clarity.  Assume the reader will already have a basic
understanding of reference counting and 3D graphics in order to avoid
overexplaining these concepts.

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4837
2017-05-03 12:38:41 +02:00
Bryce Harrington 1e1a9df53d evas_canvas3d_mesh: Fix typo
Summary:  Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4838
2017-05-03 11:55:21 +02:00
Andy Williams 3b9e69e888 elm_code: Expose API for inserting text at cursor
widget operations use NULL terminated strings, backend does not.
Refactor some selection code so all selection deletions trigger
undo events (except where they should not).
2017-05-03 08:17:06 +01:00
Al Poole 9b8efc4811 elm_code : LINE_APPEND Render fix
Summary: @fix

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4839
2017-05-02 20:58:14 +01:00
Jihoon Kim ea8196e411 ecore_imf: Add ecore_imf_context_prediction_hint_set API
Summary: Added a new api to send the prediction hint string to IME.

Test Plan: Tested in Tizen device

Reviewers: woohyun, id213sin, jihoon

Reviewed By: jihoon

Subscribers: cedric, jsuya, z-wony, jpeg

Differential Revision: https://phab.enlightenment.org/D4805
2017-05-02 16:28:10 +09:00
Cedric BAIL 19c65cdc8d ecore_evas: make ecore_evas buffer asynchronous. 2017-04-28 16:11:23 -07:00
Cedric BAIL 849a182018 evas: only call output function on initialized output. 2017-04-28 16:11:23 -07:00
Cedric BAIL 23dddfffac ecore_evas: do timeout reset on RENDER_POST for future asynchronous rendering. 2017-04-28 16:11:23 -07:00
Cedric BAIL 1bd82596a6 ecore_evas: properly warn when we are already rendering. 2017-04-28 16:11:23 -07:00
Cedric BAIL da8efae8c0 ecore_evas: refactor ecore_evas buffer render logic.
First step into introducing async rendering for ecore_evas buffer.
2017-04-28 16:11:23 -07:00
Andy Williams e99bfd7e7d elm_code: Fix selection,start signal
@fix
2017-04-28 21:18:35 +01:00
Al Poole 7ee68cb4e2 eio: improve Kevent (FreeBSD et. al)
Summary: Adds initial support for file/directory creation and deletion detection.

Reviewers: raster, cedric

Reviewed By: cedric

Subscribers: raster, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-28 10:17:17 -07:00
Carsten Haitzler aa92cddb8b evas font code - build on older freetypes without new definitions
use the actual #35 as:

in freetype and it cant change without breaking abi...

@fix
2017-04-28 18:41:39 +09:00
Carsten Haitzler b2ca7a96dc thread fence code - move elsewhere in file to avoid conflicts 2017-04-28 18:41:39 +09:00
Derek Foreman 83adbadc89 evas: Add a function to block for render thread completion
This is needed by dmabuf engine fallback when it realizes it locally
allocated a buffer, has been rendering to it, but the compositor can't use
it.

So the engine copies its buffer contents into a new wl_shm buffer and
continues from there - however we need to make sure the async renderer
has finished first, so we don't copy a partial buffer.

This allows us to block for all previously submit actions in the render
queue to complete.
2017-04-26 13:47:46 -05:00
Bryce Harrington 70cbb29477 ecore_evas: Add doxygen for ecore_evas_gl_x11_options_new()
Reviewers: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4828
2017-04-26 13:34:52 -04:00
Daniel Kolesa 6af8527117 eo: move all the key_ properties to C 2017-04-26 16:19:06 +02:00
Daniel Kolesa 20d1cf94c3 eo: move wref_add/wref_del to C 2017-04-26 16:19:06 +02:00
Daniel Kolesa 67c7eb3134 eo: move future_link to C 2017-04-26 16:19:06 +02:00
Stefan Schmidt f406bae8b7 ecore: efl_promise: remove superfluous NULL check
f is already checked against NULL in the eina array macro. No need to check
again.

CID: 1362730
2017-04-26 15:12:53 +02:00
Stefan Schmidt c56bb560d0 eldbus: check return of dbus_signature_iter_next()
CID: 1341856
2017-04-26 14:49:37 +02:00
Stefan Schmidt 24d6d83cf8 evas_filter: initialize was_empty to false to have a defined state
It is used further below in an if clause but might not have been
initialized at that point.

CID: 1374276
2017-04-26 14:27:30 +02:00
Jaeun Choi afbe8ade6b evas: fix logic in evas_events.c
Summary:
when collecting the objects under a mouse pointer,
evas uses the geometry of an object to decide
whether the mouse pointer is inside the area of the object,
which is inappropriate for a mapped object.
so mapped objects don't receive mouse events when they should.
this patch fixes the issue.

Test Plan: A sample code will be added as comments

Reviewers: jpeg, raster

Subscribers: cedric, eunue

Differential Revision: https://phab.enlightenment.org/D4826
2017-04-26 18:42:49 +09:00
Vyacheslav Reutskiy f9702fe1f9 elm_fileselector: made fileselector styling more flexible
Previously the progressbar in fileselector use hardcoded style name
"wheel", that made unpossible to create different style for
fileselector. This commit made it possible.

@fix
2017-04-26 11:16:01 +03:00
Vyacheslav Reutskiy a17a91b22f elm_cursor: add style name for sub cursor
Missing style name for sub cursor call the next error output:

ERR<24193>:elementary lib/elementary/els_cursor.c:734 elm_cursor_theme()
Could not apply the theme to the cursor style=(null)

Also this error call extra recalc for cursor hot spots.

Fixes T5408
@fix
2017-04-26 09:26:19 +03:00
Vincent Torri 540de0e254 Ecore_Evas: use window states and event property to fix ecore_evas_fullscreen_set()
This implies that elm_win_fullscreen_set() is also fixed

@fix
2017-04-26 15:07:38 +09:00
Vincent Torri 3f389c6e1e Ecore_Win32: add Property event API
@feature
2017-04-26 15:07:36 +09:00
Vincent Torri fd9ec9d1af Ecore_Win32: add ecore_win32_window_state_get() API to retrieve a window states
@feature
2017-04-26 15:07:34 +09:00
Vincent Torri 19797c9615 Ecore_Win32: update fullscreen state 2017-04-26 15:07:32 +09:00
Vincent Torri fdaa4f2418 Ecore_Win32: follow a bit more X code 2017-04-26 15:07:31 +09:00
Vincent Torri f497cf7bb5 Ecore_Win32: fix information message 2017-04-26 15:07:26 +09:00
Vincent Torri ea4765051e Ecore_Win32: fix spelling 2017-04-26 15:07:18 +09:00
Bryce Harrington 51ac5ba137 efl_ui_focus_manager: check for null return from node_get
Summary:
node_get() can return NULL sometimes.  Add a missing check, and add dox
for the function to document the error return.

>>>     CID 1374434:  Null pointer dereferences  (NULL_RETURNS)
>>>     Assigning: "node" = null return value from "node_get".

@fix CID1374434

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-25 16:29:46 -07:00
Jeeyong Um e105646041 edje_cc: introduce "Anchors" - easy way to set parts relationship
Test Plan: compile src/examples/edc-anchors.c and run

Reviewers: zmike, raster, cedric, jpeg

Reviewed By: raster, jpeg

Subscribers: raster, barbieri, zmike, SanghyeonLee, taxi2se, Jaehyun_Cho

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-25 16:25:15 -07:00
Cedric BAIL 7f5ec0c8ea evas: do not rely on Evas canvas for Evas Ector engine backend. 2017-04-25 16:16:30 -07:00
Marcel Hollerbach b077058e44 elm_box/table: set the order directly when a container is registered
The following situation:
 - A Box in a naviframe, with n children.
 - All added children register to the focus graph with the box as parent,
   order gets set correctly.
 - Naviframe hides this item, so box property tree unfocusable gets set
   to true, it gets unregistered from the focus graph, even every single
   child gets unregistered.
 - The item gets shown - every child and the table are getting
   registered again.
 - Order is not set again, since the box does not get changed
 - Order of the children is mixed up.

This should fix this case since the order is flushed every time the box
gets registered.
2017-04-25 21:38:54 +02:00
Marcel Hollerbach 69877a91af efl_ui_focus_manager: safe fields from the node
There could be the case that the item gets freed due to some handling in
a event handler of the event EFL_UI_FOCUS_MANAGER_EVENT_FOCUSED.
So the code now sets the node to NULL after the event is called and
saves the fields that are rfom use later.
2017-04-25 21:38:54 +02:00
Gustavo Sverzut Barbieri 6dd3594735 efl.net: rename Ip.Address to Ip_Address.
It's unlikely that we'll have other stuff under Ip namespace, also not
that likely to have other than Ip Addresses (to invert it to
Address.Ip), thus make a toplevel entry Ip_Address as suggested by
DaveMDS.
2017-04-25 11:18:00 -03:00
Vyacheslav Reutskiy d54e130b70 elm_entry: reset 'icon' and 'end' swallow when style changed
Fixes T5397
2017-04-25 16:35:33 +03:00
Jean-Philippe Andre e274512c81 efl/gfx: Remove unused function
This fixes a warning with -Wunused-function
2017-04-25 21:22:32 +09:00
Jean-Philippe Andre ac121a628d evas: Fix crash in idle_flush
As reported by raster on the ML. The pointer passed to the
engines is not an engine output but an Efl_Canvas_Output.
2017-04-25 21:19:42 +09:00
Stefan Schmidt 672677a0e3 docs: efl_ui_focus_manager: document last missing items in this new file 2017-04-25 11:32:36 +02:00
Stefan Schmidt 764d8b1375 docs: elm_widget: document new foc us_register method 2017-04-25 11:32:03 +02:00
Stefan Schmidt 9ef12061e4 docs: efl_ui_focus_manager: document focus relations struct members 2017-04-25 11:13:12 +02:00
Jean-Philippe Andre b25d464f9f evas render: Fix issue with map render
Test case:
  elementary_test -to "Gesture Layer"

Just move the pictures around (eg. to the bottom). They could
disappear entirely.

This is because the geometry used was based on the smart
object "bounding box" rather than the mapped output.

@fix
2017-04-25 14:37:00 +09:00
Cedric BAIL 55e1b3f205 evas: remove engine.data.output.
This is the first step toward handling multi output. This patch
remove engine.data.output from Evas structure and use an Eina_List
for it instead. It also start moving code around to fetch an output
or an engine context (which are the same at the moment, but will be
split in a later patch).
2017-04-24 15:10:48 -07:00
Cedric BAIL bc43eeba00 evas: start setting up output independently of the engine. 2017-04-24 15:10:48 -07:00
Cedric BAIL 76c6830b29 evas: evas_render actually need to access that structure. 2017-04-24 15:10:48 -07:00
Bryce Harrington 4b653b7a31 evas: Fix grammar of which vs. that
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4809
2017-04-24 08:28:31 -04:00
Bryce Harrington 9652703e7a evas: Fix grammar for which vs. that
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4808
2017-04-24 08:27:50 -04:00
Bryce Harrington a7bac868bc ecore_evas: Fix grammar for at/to/for/on/which/etc.
Summary:
Fixes some grammar confusion for in that/this, that/which, to/at,
to/for, at/by, etc.

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4806
2017-04-24 08:26:18 -04:00
Bryce Harrington a2e55b5c39 Fix spelling of 'alpha channel'
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4817
2017-04-24 08:25:22 -04:00
Youngbok Shin caed13d3fc evas: round glyph's advance before adding it to pen_x
Summary:
Rounding the sum of glyph's advance could cause inconsistency of
each glyph's positions. When Evas enables Harfbuzz library,
Each glyph's position has to be handled by only nearby glyphs.
But, currently, totally unrelated glyph's advacne could change
other glyphs positions.

ex) 1. "connect."
    2. "Tap here to connect."

You can see different gap between "c" and "o" of word "connect".
It should be same even if there was a different text before the word "connect".
@fix

Test Plan: N/A

Reviewers: raster, herdsman, jpeg

Reviewed By: raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D4782
2017-04-24 13:32:36 +03:00
Carsten Haitzler a6dc7da029 efreetd - make ability to not connect to efreetd non-critical
it's an error we can survive, so make it that level
2017-04-23 21:17:40 +09:00
Shinwoo Kim 3041b80b8b elementary: fix typo on comment
change "an widget" to "a widget".
2017-04-23 17:02:14 +09:00
Marcel Hollerbach 23e7155840 efl_ui_focus_manager: change the new order that gets set
Lets say there is a box with the following ordered children:
|Button|Box|Button|Box|Button| the two boxes do not have any children
at the time of the setup. The logic of the order_update will only order
the children like that:
|Button|Button|Button| Which is correct by that time, the two boxes dont
have any children.
Now the two boxes are also getting children, the order will not
selfupdate or anything so the logical chain would be:
|Button|Button|Button|Box|Box|. Which is wrong. To solve that the
manager keeps the order that got set last, and reapplies the order again
if something gets added to the parent where the order was set.

This should fix strange next / prev operations in ephoto.
2017-04-22 18:30:08 +02:00
Carsten Haitzler 29feb60d50 ecore - fix epoll ifdefs and case handling 2017-04-22 12:22:17 +09:00
Derek Foreman 05e8d76021 ecore_drm2: Fix ticking when atomic mode set is enabled
Putting the PAGE_FLIP_EVENT flag on the set rotation request resulted
in an extra event on the drm device fd that screwed up page flipping
badly from that point on.

@fix
2017-04-21 16:39:19 -05:00
Mike Blumenkrantz ab67217434 eina_tiler: use int size matching Eina_Rectangle internally to avoid overflow
since this code's creation it seems that the internal int size was set to use
short in order to micro-optimize memory usage, while the api function parameters
used Eina_Rectangle which had a larger int size. when initializing the internal
rect struct, this would lead to overflows which resulted in broken tilers which
returned iterators with no valid rects after having valid rects added

test case: run weston-subsurfaces

@fix
2017-04-21 16:16:12 -04:00
Mike Blumenkrantz ea0a3d304a elm_win: do not require mouse buttons to be pressed to activate csd move/resize
the api function requires this, but the unified handler for api+edje handler does
not, since edje singals are deferred and the button which triggered the move
may be released before the signal is processed

ref ea7bbfe47d
@fix
2017-04-21 16:16:12 -04:00
Mike Blumenkrantz eb9a5165f4 ecore-wl2: move ecore_wl2_display_inputs_get() into ecore_wl2_display.c 2017-04-21 16:16:12 -04:00
Cedric Bail 8187e34741 eina: some architecture don't like prefetch on NULL apparently. 2017-04-21 11:29:38 -07:00
Daniel Kolesa 3fb4bc336e eo: hide dbg_info from eo files
Continues b780cf2af2.
2017-04-21 17:59:32 +02:00
Daniel Kolesa da43c63ce1 eo: move event related structures and callback to C
We don't need to keep this in eo files anymore because the APIs
using them are now fully in C. This also allows removal of the
event callback builtin from Eolian.
2017-04-21 15:48:31 +02:00
Carsten Haitzler 24b77d8ed9 eio monitor - remove unused vars and fix warning 2017-04-21 16:39:06 +09:00
Carsten Haitzler f077fb1e0d eina mmap - fix warnings thanks to missing include
add include for eina_file.h
2017-04-21 16:38:40 +09:00
Carsten Haitzler b26276a7e9 eina debug - fix include of eina_file.h that was missing
fixes new warnings
2017-04-21 16:38:18 +09:00
Carsten Haitzler c6eacd6f27 efl_io_closer - fix warning about error print
lazy removal of fcntl without fixing up error print... fixed.
2017-04-21 16:23:16 +09:00
Carsten Haitzler 7282716820 ecore_pipe - fix warning of sign vs unsigned comparison 2017-04-21 16:19:43 +09:00
Carsten Haitzler a6253f44a9 elm widget - fix weak reference messup that causes segv's
welm widget weak refered the logical parent slot but never unreffed
the weak ref - ever. this should fix that. in fact it does. one crash
less with:

elementary_test -to "icon standard"

@fix
2017-04-21 16:14:06 +09:00
Ivan Furs 9d5a1d098c evas_async_events: Integrated Ecore_Pipe in evas_async_events
Summary: Integrated Ecore_Pipe in evas_async_events

Reviewers: vtorri, artem.popov, cedric, jpeg, raster, #eflete

Reviewed By: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4622
2017-04-21 16:14:06 +09:00
Jean-Philippe Andre 966df3130a focus: Review EO file and adjust doc a bit
I was reading it to understand this new focus system. So I also
made some cosmetic changes here and there in the file: wrap, fix
a few typos, add missing docs. I'm not pretending that the doc
is perfect now. This really was just a personal review.
2017-04-21 15:11:51 +09:00
Jean-Philippe Andre 57a960d26b focus: Fix shadow variable warning 2017-04-21 14:58:02 +09:00
Jean-Philippe Andre a33815eeef ecore wl2: Fix compilation 2017-04-21 10:08:52 +09:00
Derek Foreman f45b63edbd ecore_wl2: Don't crash when drag and drop is unsupported by compositor
Check for presence of data device manager so we don't crash if it's not
there.
2017-04-20 14:41:54 -05:00
Daniel Kolesa b780cf2af2 eo: move unbindable event APIs to C
In a few classes, this requires some manual expansion. This should
not break anything but it's also fairly ugly; a better solution
would be appreciated, for now we do this.

Similar changes will be done to a few other Efl.Object APIs as
well at later point.
2017-04-20 18:24:38 +02:00
Daniel Kolesa da982535f6 eo: move Efl_Event definition back to C
It's not used anywhere in eo files and has a void pointer.
2017-04-20 16:15:22 +02:00
Marcel Hollerbach 295940c0bc efl_ui_focus_manager: select the widget with the smallest distance
this improves the correctness-feeling when moving focus through a
elementary application.
2017-04-20 14:38:59 +02:00
Marcel Hollerbach 4450ff374f elm_interface_scrollable: add focus override
it seems this override got lost somewhere
2017-04-20 14:38:59 +02:00
Marcel Hollerbach c867ab64e0 elm_list: migrate to new focus system 2017-04-20 14:38:59 +02:00
Marcel Hollerbach 20a78af94f fix .eo file breaks 2017-04-20 14:38:59 +02:00
Marcel Hollerbach 800390bcb0 focus_tests: fix the test suite
this brings back the working testsuite and fixes a bug in the
submanager.
2017-04-20 14:38:59 +02:00
Marcel Hollerbach 3dfc546a2f efl_ui_focus_manager: the order contains nodes not focusables 2017-04-20 14:38:59 +02:00
Marcel Hollerbach fb6c37f16f elementary: introduce helper functions for the redirects 2017-04-20 14:38:59 +02:00
Marcel Hollerbach 74b4327746 update according to cedrics review comments 2017-04-20 14:38:58 +02:00
Marcel Hollerbach b056857093 focus: update object definition
Summary: This introduces a new focus system and the migration to this system.

Test Plan: run elementary_test

Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D4511
2017-04-20 14:38:58 +02:00
Marcel Hollerbach 716ec352d1 elm_widget: add unfocusable to debug informations 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 5c48607460 efl_ui_focus_manager: make setting a order easier 2017-04-20 14:38:58 +02:00
Marcel Hollerbach eb88bbe63d elm_box,grid,table: take the resize object as evas object 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 8c8570ba6a efl_ui_focus_manager: if there is no normal item then just do nothing 2017-04-20 14:38:58 +02:00
Marcel Hollerbach bd5bf5e719 efl_ui_flip: migrate to new focus system 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 996a502495 elm_grid: migrate to new focus system 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 23fd22836d efl_ui_focus_manager: there is the case that n can be NULL 2017-04-20 14:38:58 +02:00
Marcel Hollerbach a3c44fcf68 efl_ui_focus_manager_sub: do not update if parent is NULL
is is actually a dangerous case, and should NEVER happen
2017-04-20 14:38:58 +02:00
Marcel Hollerbach d481dd58ec efl_ui_frame: migrate to new focus system
when collapsed the subtree is unfocusable
2017-04-20 14:38:58 +02:00
Marcel Hollerbach 7c35606d06 elm_table: migrate to new focus system 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 7994fa3f68 elm_interface_scrollable: fix bringing in of items 2017-04-20 14:38:58 +02:00
Marcel Hollerbach 073c72acce elm_scroller: migrate to new focus system
the scrollable interface is doing most of the work, if we know that
something is already focused we just leave the action_move.
2017-04-20 14:38:58 +02:00
Marcel Hollerbach 9b64e7316a elm_widget: evalulate show flag and call focus on super 2017-04-20 14:38:58 +02:00
Marcel Hollerbach dfceeb78c3 elm_menu: mirgrate to the new focus
this just means the menu is registering a new manager, it is not really
doing anything, its just there so the children which are searching for
one are finiding one. Elm menu has not handled anything with keys in the
past and will later learn to do so.
2017-04-20 14:38:58 +02:00
Marcel Hollerbach 1ecf648dd8 elm_hover: migrate to new focus system
the hover will set itself as redirect once it is visible. And unset
itself once it is hidden.
2017-04-20 14:38:58 +02:00
Marcel Hollerbach ef8aed0385 efl_ui_win: migrate to the new focus system
this means, focus requests are redirected to the new focus manager.
2017-04-20 14:38:58 +02:00
Marcel Hollerbach 44e40c7c5e elm_interface_scrollable: use the submanager to register the children
this adds the registered elements at the broder of the scrollable to the
parents manager. scroller and gengrid works for registering
2017-04-20 14:38:58 +02:00
Marcel Hollerbach c203087d3b elm_box: set the correct order 2017-04-20 14:38:58 +02:00
Marcel Hollerbach f09dd5e3df efl_ui_focus_manager: allow settings of subsets
those subsets will just be prepended.
2017-04-20 14:38:58 +02:00