Derek Foreman [Wed, 11 Oct 2017 14:04:59 +0000 (09:04 -0500)]
wayland_dmabuf: Clean up unused variable
Pending is useless now that we use immediate buffer creation.
Derek Foreman [Wed, 11 Oct 2017 14:00:49 +0000 (09:00 -0500)]
wayland_dmabuf: Use create_immed
We've really always needed to do immediate creates. On a surface resize
there's no place to wait for the round trip for the new buffers to exist.
We've gotten away with this until now by good luck because we dispatch
wayland events during asynchronous render. However, with async render off
or if schedule happens in an unfortunate order, we can end up with
tearing.
Derek Foreman [Wed, 11 Oct 2017 13:58:41 +0000 (08:58 -0500)]
ecore_wl2: Bind dmabuf version 2
Version 2 allows for create_immed requets. No new events are added until
version 3, so this is a trivial update.
Derek Foreman [Thu, 5 Oct 2017 20:15:10 +0000 (15:15 -0500)]
ecore_wl2: Fix setting empty input regions
We should still update window->input_rect when the input region is empty.
Derek Foreman [Thu, 5 Oct 2017 19:56:58 +0000 (14:56 -0500)]
ecore_wl2: Fix setting empty opaque regions
We should still update window->opaque when the opaque region is empty.
Derek Foreman [Thu, 5 Oct 2017 19:07:26 +0000 (14:07 -0500)]
ecore_evas_wayland: Use ecore_wl2_false_commit to trigger frame callbacks
This will allow us to receive a tick without changing any other state.
Derek Foreman [Thu, 5 Oct 2017 19:06:42 +0000 (14:06 -0500)]
ecore_wl2: Add as partial commit function for setting off a tick
This adds the concept of a "false commit" that just sends a surface
commit without changing any other state.
This is intended to be used by ecore_evas to request a frame callback
from the compositor
Derek Foreman [Wed, 4 Oct 2017 18:46:34 +0000 (13:46 -0500)]
ecore_wl2: Add new API to latch window state for updates
Add an API to call at the beginning of render to latch state at
that moment, and use it for the wayland engine.
Derek Foreman [Wed, 4 Oct 2017 17:12:55 +0000 (12:12 -0500)]
ecore_wl2: Split configurations into client set and compositor requested
This should lead to clearer and more maintainable code than having one
pile of state that's asynchronously fiddled with by both client and
compositor.
Derek Foreman [Fri, 29 Sep 2017 21:18:43 +0000 (16:18 -0500)]
ecore_wl2: Move some state into its own struct
These need to be double buffered, and that will be done in a follow up
patch.
Derek Foreman [Fri, 29 Sep 2017 21:17:18 +0000 (16:17 -0500)]
ecore_wayland: Use ecore_wl2_window_resizing_get() to get resizing
Use the getter instead of directly accessing the structs.
Derek Foreman [Fri, 29 Sep 2017 21:16:11 +0000 (16:16 -0500)]
ecore_wl2: Add a getter for window->resizing
Derek Foreman [Fri, 29 Sep 2017 17:56:10 +0000 (12:56 -0500)]
ecore_wl2: Fix some @since tags
Seems my brain missed the efl release and started tagging new API
incorrectly in the doxy.
This is all beta API that should probably only be used by other EFL
internals anyway, but I suppose it's a good idea to try to be somewhat
correct.
Derek Foreman [Thu, 14 Sep 2017 22:04:51 +0000 (17:04 -0500)]
wayland_shm: Make some function static
Only used in this file.
Derek Foreman [Thu, 14 Sep 2017 22:04:21 +0000 (17:04 -0500)]
wayland_shm: Kill stale comment
This comment doesn't make sense now, as all the frame callback stuff
is in ecore_wl2.
Derek Foreman [Thu, 14 Sep 2017 22:02:50 +0000 (17:02 -0500)]
wayland_dmabuf: make dlsym queried symbols static
We only need these in this file.
Derek Foreman [Thu, 14 Sep 2017 17:35:16 +0000 (12:35 -0500)]
wayland_shm: Remove hidden from the outbuf
Outbuf shouldn't have to track its hidden status, that should be ecore_evas
problem. Until now we were doing this because our kludgey wayland
ticking made things difficult, but I think it's safe to remove now.
Derek Foreman [Thu, 14 Sep 2017 17:30:12 +0000 (12:30 -0500)]
wayland_shm: Remove hidden from surface posting calls
Now that we tick based on frame callbacks it should be impossible to post
an update while hidden.
Derek Foreman [Tue, 12 Sep 2017 14:54:33 +0000 (09:54 -0500)]
wayland_shm: stop storing wl_display in dmabuf_surface
Query it through the engine info's ecore_wl2_display instead.
Derek Foreman [Tue, 12 Sep 2017 13:37:04 +0000 (08:37 -0500)]
evas_shm: Remove wl_dmabuf and wl_shm from engine info
All queries for these are now on the ecore_wl2_display
Derek Foreman [Mon, 11 Sep 2017 22:16:17 +0000 (17:16 -0500)]
wayland_shm: Remove surface_set function
Now that we use the display's shm and dmabuf pointers we don't need to
update them.
Derek Foreman [Mon, 11 Sep 2017 22:11:36 +0000 (17:11 -0500)]
wayland_dmabuf: Query zwp_linux_dmabuf_v1 from display
Get it from the display instead of using our stored copy.
Derek Foreman [Mon, 11 Sep 2017 22:06:31 +0000 (17:06 -0500)]
evas_shm: query wl_shm from ecore_wl2_display
Stop using the internally stored copy, always query from active display.
This fixes session recovery.
Derek Foreman [Mon, 11 Sep 2017 21:57:05 +0000 (16:57 -0500)]
wayland_shm: Add Outbuf to Surface struct
We're going to need that soon.
Derek Foreman [Mon, 11 Sep 2017 21:42:30 +0000 (16:42 -0500)]
wayland_shm: Pass Surface instead of Shm_Surface
Surface has some variables we'll need later.
Derek Foreman [Mon, 11 Sep 2017 20:48:56 +0000 (15:48 -0500)]
wayland_shm: Handle dirty bit outside of the backends
We don't have to query that deeply to know whether we need to redraw the
buffer or not, we can make that decision in more generic code.
Derek Foreman [Mon, 11 Sep 2017 20:37:53 +0000 (15:37 -0500)]
wayland_shm: Store the ecore_wl2_display in the Outbuf
We'll need it soon.
Stephen Houston [Thu, 12 Oct 2017 16:37:28 +0000 (11:37 -0500)]
Luncher theme: Handle space to the left, right, and bottom in the active preview better.
Jaehyun Cho [Wed, 13 Sep 2017 05:59:22 +0000 (14:59 +0900)]
efl_animation: Add interpolator property
Interpolator property is added to apply interpolation function.
Jaehyun Cho [Tue, 12 Sep 2017 08:49:40 +0000 (17:49 +0900)]
ecore: Add Efl.Interpolator class
Efl.Interpolator class is to interpolate a value.
Efl.Interpolator class has the following interpolation function classes
as its subclasses.
Efl.Interpolator.Linear
Efl.Interpolator.Accelerate
Efl.Interpolator.Decelerate
Efl.Interpolator.Sinusoidal
Efl.Interpolator.Divisor
Efl.Interpolator.Bounce
Efl.Interpolator.Spring
Efl.Interpolator.Cubic_Bezier
Jaehyun Cho [Tue, 5 Sep 2017 02:33:58 +0000 (11:33 +0900)]
efl_animation: Add repeat_mode property
To not display original state when the reverse repeat starts, the
animators in group parallel and group sequential are deleted.
Jaehyun Cho [Mon, 4 Sep 2017 10:17:48 +0000 (19:17 +0900)]
efl_animation: Add start_delay property
Add start_delay property to delay the given amount of time in seconds
from when the animation starts until the animation is animated.
Jaehyun Cho [Wed, 30 Aug 2017 11:20:15 +0000 (20:20 +0900)]
efl_animation: Add repeat_count property
Jaehyun Cho [Wed, 30 Aug 2017 09:17:18 +0000 (18:17 +0900)]
efl_animation: Add pause and resume methods
Add target_map_reset method to fix flicking issue when animation is
paused and resumed.
Jaehyun Cho [Wed, 30 Aug 2017 07:16:18 +0000 (16:16 +0900)]
efl_animation: Support event animation
Register an animation for an event.
Start the animation when the event happens.
Jaehyun Cho [Wed, 30 Aug 2017 03:08:41 +0000 (12:08 +0900)]
efl_animation: Add sequential group animation and object
Efl.Animation.Group.Sequential is a class for animations started in
sequence.
Efl.Animation.Object.Group.Sequential is a class which provides
methods for an object of Efl.Animation.Group.Sequential.
The objects added into the sequential group animation object start
in sequence.
Jaehyun Cho [Fri, 25 Aug 2017 08:54:29 +0000 (17:54 +0900)]
efl_animation: Add parallel group animation and object
Efl.Animation.Group.Parallel is a class for animations started in
parallel.
Efl.Animation.Object.Group.Parallel is a class which provides methods
for an object of Efl.Animation.Group.Parallel.
The objects added into the parallel group animation object start in
parallel.
Jaehyun Cho [Fri, 25 Aug 2017 08:17:24 +0000 (17:17 +0900)]
efl_animation: Add group animation object
Jaehyun Cho [Fri, 25 Aug 2017 08:08:59 +0000 (17:08 +0900)]
efl_animation: Add group animation
Efl.Animation.Group is an abstract class which provides methods for
group animations such as parallel and sequential group animations.
Jaehyun Cho [Fri, 25 Aug 2017 07:55:48 +0000 (16:55 +0900)]
efl_animation: Add translate animation object
Jaehyun Cho [Fri, 25 Aug 2017 04:37:12 +0000 (13:37 +0900)]
efl_animation: Add translate animation
Jaehyun Cho [Fri, 25 Aug 2017 03:03:08 +0000 (12:03 +0900)]
efl_animation: Add scale animation object
Jaehyun Cho [Fri, 25 Aug 2017 02:34:28 +0000 (11:34 +0900)]
efl_animation: Add scale animation
Jaehyun Cho [Fri, 25 Aug 2017 02:26:09 +0000 (11:26 +0900)]
efl_animation: Add rotate animation object
Jaehyun Cho [Fri, 25 Aug 2017 02:10:58 +0000 (11:10 +0900)]
efl_animation: Add rotate animation
Jaehyun Cho [Fri, 25 Aug 2017 01:47:26 +0000 (10:47 +0900)]
efl_animation: Add alpha animation object
Jaehyun Cho [Fri, 25 Aug 2017 01:14:51 +0000 (10:14 +0900)]
efl_animation: Add alpha animation
Jaehyun Cho [Thu, 24 Aug 2017 13:34:13 +0000 (22:34 +0900)]
efl_animation: Add animation object
Efl.Animation.Object is a class which starts or cancels animation.
Efl.Animation.Object instance is created by Efl.Animation instance.
So Efl.Animation.Object instance contains animation properties from
Efl.animation instance.
Animation properties are set by using Efl.Animation instance and the
animation is started or cancelled by using Efl.Animation.Object.
Jaehyun Cho [Thu, 24 Aug 2017 11:45:52 +0000 (20:45 +0900)]
efl_animation: Add efl_animation
Efl.Animation is a class which contains basic properties of animation
for Efl.Canvas.Object.
Jean-Philippe Andre [Thu, 12 Oct 2017 09:16:42 +0000 (18:16 +0900)]
widget: Rename focus_region (EO)
This region has little to do with focus, as it's more of a region of
interest within the widget, and not directly related to the highlight
geometry, for instance. It's related to focus in the sense that only
widgets with focus would really care about this region.
I decided to change this name after talking with @bu5hm4n.
Note that gengrid uses this but is also completely broken (the focus
highlight floats around and you don't even see the focused item).
Note: This is very close to show_region but I'm not sure those can be
merged safely (since the default "focus_region" is NULL while the
default "show_region" is the widget's geometry).
Ref T5363
Jean-Philippe Andre [Thu, 12 Oct 2017 07:00:42 +0000 (16:00 +0900)]
edje_object: Mark access_part_iterate as @beta
This may be internal... Not sure we need this exposed outside of the
ATSPI layer, really. Marking as beta for now.
Ref T5315
Sungtaek Hong [Thu, 12 Oct 2017 06:29:39 +0000 (15:29 +0900)]
efl_ui_bg: fix ELM_BG_OPTION_CENTER bg in left top side.
Summary:
- setting size_hint_min logic was deleted while changed elm_bg to efl_ui_bg.
- this sets size_hint_min again.
@fix
Test Plan:
1. Run Elementary test
2. Run Bg Option
3. Select Center radio.
4. Resize windows.
5. Observe bg images remains in center.
Reviewers: jpeg, JackDanielZ
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5281
Jean-Philippe Andre [Thu, 12 Oct 2017 06:15:34 +0000 (15:15 +0900)]
evas: Implement support for different H/V font DPI
This is modifying how a rarely used environment variable that sets the
DPI used for font sizing is parsed. The previous form remains valid, of
course. Note that EFL tends to use "scaling" instead of this DPI. The
font DPI is useful for me to open up a terminology window with almost
the same size as my IDE's code viewer.
Use case:
export EVAS_FONT_DPI=95x94 terminology
Note:
I still don't get a 1:1 match with Qt's rendering, and in fact
94x95 works better than what 95x94 (which is reported by xdpyinfo).
Interesting though :)
@feature
Jean-Philippe Andre [Thu, 12 Oct 2017 03:28:23 +0000 (12:28 +0900)]
widget: Some EO docs formatting
Cosmetic surgery.
Cedric BAIL [Wed, 11 Oct 2017 21:19:44 +0000 (14:19 -0700)]
elementary: update elementary binary to use efl_exit().
Cedric BAIL [Wed, 11 Oct 2017 21:15:36 +0000 (14:15 -0700)]
elementary: add way to exit symetric to EFL_MAIN.
Stephen Houston [Wed, 11 Oct 2017 20:05:02 +0000 (15:05 -0500)]
Luncher theme: Offset the preview from the bottom.
Stephen Houston [Wed, 11 Oct 2017 19:02:25 +0000 (14:02 -0500)]
Luncher theme: Keep aspect on luncher preview - Don't force max sizes.
Chris Michael [Wed, 11 Oct 2017 17:07:09 +0000 (13:07 -0400)]
ecore-evas-drm: Reduce code duplication
Minor code cleanup to reduce duplicated function calls.
NB: No functional changes
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Oct 2017 13:21:48 +0000 (09:21 -0400)]
emotion: Properly unmap video frame
Calls to gst_video_frame_unmap should take a GstVideoFrame as a
parameter (not a buffer). I believe this was the intended function
here (to unmap the video frame), so fix the call to not pass a
GstBuffer.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 11 Oct 2017 13:17:35 +0000 (09:17 -0400)]
evas: Compile out unused functions
These timestamp functions are not currently being called, perhaps they
were intended for something later?, but for now just #if 0 them out as
they are not used
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Amitesh Singh [Wed, 11 Oct 2017 08:03:33 +0000 (17:03 +0900)]
efl theme: Add heirarchy for new theme
Marcel Hollerbach [Wed, 11 Oct 2017 07:50:39 +0000 (09:50 +0200)]
elm: include those headers in Elementary.h
Marcel Hollerbach [Wed, 11 Oct 2017 07:13:00 +0000 (09:13 +0200)]
elm: fix compilation of examples
We need to install efl.ui.focus.composition and efl.ui.focus.layer
WooHyun Jung [Wed, 11 Oct 2017 02:00:25 +0000 (11:00 +0900)]
efl_ui_clock: remove unused signals
Marcel Hollerbach [Tue, 10 Oct 2017 20:24:39 +0000 (22:24 +0200)]
elm_main: also return true when the object is a redirect manager
Marcel Hollerbach [Tue, 10 Oct 2017 19:35:27 +0000 (21:35 +0200)]
elm_interface_scrollable: use focus_geometry not normal geometry
Marcel Hollerbach [Tue, 10 Oct 2017 19:23:42 +0000 (21:23 +0200)]
elm_widget: also eval all children when we are visible
Marcel Hollerbach [Tue, 10 Oct 2017 17:52:18 +0000 (19:52 +0200)]
Merge branch 'devs/bu5hm4n/remove-old-focus-api'
This removes the old focus api from elm_widget.
This sadly brings a few breaks with it that will be fixed in the next
few weeks.
There is currently no item-content focus in gengrid, genlist, list.
custom focus chains are not supported right now, calling the api of it
will result in NOPs.
Inline windows are currently also not getting focus, even though they
should.
Marcel Hollerbach [Wed, 27 Sep 2017 19:20:51 +0000 (21:20 +0200)]
elm_widget: remove apis we dont need anymore
Marcel Hollerbach [Tue, 10 Oct 2017 13:20:13 +0000 (15:20 +0200)]
elm_main: port to new focus api
Marcel Hollerbach [Wed, 16 Aug 2017 13:56:57 +0000 (15:56 +0200)]
elm: move the focus direction definition to general
and remove the old definition
Marcel Hollerbach [Mon, 25 Sep 2017 16:00:06 +0000 (18:00 +0200)]
elm_code: remove those parts
they are not anymore needed, before they existed for keeping the focus
in the window, even if the keystrokes should be focus movements. This is
already working without this.
Marcel Hollerbach [Tue, 26 Sep 2017 23:07:20 +0000 (01:07 +0200)]
efl_ui_win: port to new focus api!
Marcel Hollerbach [Wed, 27 Sep 2017 15:28:41 +0000 (17:28 +0200)]
elm_access: Port to the new focus api
Marcel Hollerbach [Tue, 10 Oct 2017 10:07:21 +0000 (12:07 +0200)]
elm_gengrid: disable the code for now
it will return later
Marcel Hollerbach [Tue, 26 Sep 2017 23:26:33 +0000 (01:26 +0200)]
elm_genlist: for now disable this code
it will return later
Marcel Hollerbach [Tue, 26 Sep 2017 23:35:53 +0000 (01:35 +0200)]
elm_list: for now disable the code
it will return later
Marcel Hollerbach [Mon, 25 Sep 2017 16:01:04 +0000 (18:01 +0200)]
elm_colorselector: migrate to composition!
Marcel Hollerbach [Tue, 26 Sep 2017 23:46:00 +0000 (01:46 +0200)]
elm_spinner: migrate to composition!
Marcel Hollerbach [Mon, 2 Oct 2017 20:52:48 +0000 (22:52 +0200)]
elm_panel: make it a layer
Marcel Hollerbach [Mon, 2 Oct 2017 20:47:53 +0000 (22:47 +0200)]
elm_ui_focus_layer: add configurable behaviour
the layer can now be configured if it should be automatically enabled at
visibility and if the focus should cycle in the layer or not.
Marcel Hollerbach [Tue, 26 Sep 2017 23:37:36 +0000 (01:37 +0200)]
elm_notify: remove old api!
Marcel Hollerbach [Sat, 30 Sep 2017 18:01:18 +0000 (20:01 +0200)]
elm_segment_control: migrate to composition!
Yes! We now have a widget where the we can focus items ... but nothing
more ... ?!
Marcel Hollerbach [Fri, 29 Sep 2017 21:53:23 +0000 (23:53 +0200)]
elm_calendar: migrate to composition!
Marcel Hollerbach [Fri, 29 Sep 2017 20:45:30 +0000 (22:45 +0200)]
elm_clock: convert to composition!
Marcel Hollerbach [Fri, 29 Sep 2017 20:43:37 +0000 (22:43 +0200)]
introduce efl_ui_focus_composition!
It does what the class description tells
Marcel Hollerbach [Fri, 29 Sep 2017 16:56:26 +0000 (18:56 +0200)]
efl_ui_focus_manager_calc: delete items if they are deleted
Marcel Hollerbach [Thu, 28 Sep 2017 09:33:13 +0000 (11:33 +0200)]
elm_widget: use the user_manager for setting focus
Marcel Hollerbach [Mon, 28 Aug 2017 08:20:14 +0000 (10:20 +0200)]
efl_ui_Focus_manager_root_focus: add focus rectangle
the focus rectangle is basically just a normal efl.canvas.rectangle, but
with the focus interface implemented.
This fixes alot of errors which gets called when the root_focus manager
is used, with the submanager as mixin.
Marcel Hollerbach [Thu, 24 Aug 2017 18:03:04 +0000 (20:03 +0200)]
efl_ui_focus_manager_root_focus: correctly call state eval
when a new item is registered we should eval state to unregister the
rect
Marcel Hollerbach [Thu, 28 Sep 2017 09:00:10 +0000 (11:00 +0200)]
efl_ui_focus_manager_root_focus: only register if we really need to
Marcel Hollerbach [Mon, 25 Sep 2017 16:07:54 +0000 (18:07 +0200)]
elm: introduce efl_ui_focus_layer
what it does is described in the mixin
this commit refactors inwin hover popup ctxpopup to use that behaviour.
Since it should do exactly that.
Marcel Hollerbach [Wed, 27 Sep 2017 19:11:40 +0000 (21:11 +0200)]
elm_conform: use legacy elm_object api!
Marcel Hollerbach [Wed, 27 Sep 2017 15:45:28 +0000 (17:45 +0200)]
elm_dayselector: remove old api!
Marcel Hollerbach [Tue, 26 Sep 2017 23:46:57 +0000 (01:46 +0200)]
elm_toolbar: remove old api!
Marcel Hollerbach [Tue, 26 Sep 2017 23:44:48 +0000 (01:44 +0200)]
elm_slideshow: remove old api!
Marcel Hollerbach [Tue, 26 Sep 2017 23:44:20 +0000 (01:44 +0200)]
elm_seperator: remove old api!
Marcel Hollerbach [Tue, 26 Sep 2017 23:42:20 +0000 (01:42 +0200)]
elm_scroller: remove old api!
Marcel Hollerbach [Tue, 26 Sep 2017 23:40:30 +0000 (01:40 +0200)]
elm_prefs: remove old api!