Jean-Philippe Andre [Wed, 30 Aug 2017 07:22:32 +0000 (16:22 +0900)]
widget: Mark some functions as protected
I believe all of those APIs are in fact meant for widgets to use
themselves:
- on_focus
- on_show_region_hook
- focus_region
- focus_register
- focus_manager_factory
Ref T5363
Jean-Philippe Andre [Wed, 30 Aug 2017 07:15:34 +0000 (16:15 +0900)]
widget: Move item_loop_enabled to scrollable (EO)
I was told that the scrollable interface is being redesigned for EO.
This API definitely does not belong to the base Widget class, as it's
quite specific to item-based scrollable widgets, such as lists and
grids. Since Elm.Interface_Scrollable is itself being revamped, it is a
good place to move that EO API for now.
Ref T5363
Jean-Philippe Andre [Wed, 30 Aug 2017 04:39:16 +0000 (13:39 +0900)]
widget: Use rectangle in show_region
Also make it a property. It's asymmetric because of the force show
argument, but the get is much cleaner.
Ref T5363
Jean-Philippe Andre [Wed, 30 Aug 2017 04:55:47 +0000 (13:55 +0900)]
eina: Add convenience eina_rectangle_equal
@feature
Jean-Philippe Andre [Tue, 29 Aug 2017 09:15:33 +0000 (18:15 +0900)]
widget: Remove scroll_lock from EO
1. Uniformize the API, which is now for internal use:
This uses the same enum as scroller "movement_block" instead
of 2 separate properties. Less APIs, more consistence.
2. Remove scroll_lock x/y from EO widget. I was told it is not going to
exist in the upcoming scrollable interface.
3. Remove scroll hold/freeze getters.
scroll hold/freeze push/pop are still there but it remains to be seen
how the EO scrollable interface will exploit them. Right now they are
full of bugs.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 08:49:38 +0000 (17:49 +0900)]
scroll: Rename elm enum to efl.ui
This scroll block enum should also be used in widget itself.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 07:49:43 +0000 (16:49 +0900)]
widget: Rename drag_lock to scroll_lock (EO)
This also includes the drag_child_lock APIs. This had nothing to do with
dragging beyond maybe the case where scrolling is done by thumbscroll
(ie. finger drag).
Note that the EAPI were called already scroll_lock, not drag_lock.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 07:46:12 +0000 (16:46 +0900)]
widget: Remove drag_child_locked APIs (EO)
These are just internal helper functions for the scrollable mixin. I
don't think they need to appear in the external API.
Ref T5363
Jean-Philippe Andre [Wed, 30 Aug 2017 02:29:08 +0000 (11:29 +0900)]
widget: Use rectangle on the stack for region_show
Follow @k-s recommendation and simply use rectangles on the stack rather
than by pointer.
Ref T5363
Stefan Schmidt [Wed, 30 Aug 2017 07:59:57 +0000 (09:59 +0200)]
docs: remove outdated NOTES files with random notes about evas_vg
I have to say I am buffled that this file made it into the tree. The
naming is very generic (similar to NEWS; README, etc) but it only
contains some random notes about evas_vg. It has not been updated since
its initial commit in 2015 either.
Cedric, if you want to have these notes somewhere put them into
src/lib/evas, or better make it a real doc and put it into the wiki.
Carsten Haitzler (Rasterman) [Wed, 30 Aug 2017 03:03:41 +0000 (12:03 +0900)]
eina mmap safety - only map zeropages if it's an eina file that sigbuses
restrict mapping /dev/zero to only eina files having a sigbus
reported. the mmap was before all our file access used eina_file i
think thus the raw mmap of it. now walk all eina files and find the
candidate and only then if it exists flag is as having a faulty i/o
backing and map the zerto pages then return, otherwise call abort.
more restricted mapping and perhaps a fix for not trapping non-efl
issues.
@fix
Carsten Haitzler (Rasterman) [Wed, 30 Aug 2017 02:31:02 +0000 (11:31 +0900)]
eina file - use recursive locks for cache and file to avoid deadlock
since we have a sigbusd handler that flags an eina file with io errors
it has to walk the file cache and every file... taking locks. if those
locks were taking already in the current thread the sighandler was
called in... we'd deadlock. since this basicallly never happens (when
do we see i/o errors really? not much)... we never saw this as it'd
also reauire this race condition to happen too. but it is a problem
waiting to happen. this fixes that by moving to recrusive locks.
@fix
Reynaldo H. Verdejo Pinochet [Wed, 30 Aug 2017 00:08:03 +0000 (17:08 -0700)]
emotion: gst: use proper GStreamer time-unit macros
Summary:
Do not harcode numbers that make no immediate sense.
Additionally: add some wont-hurt doc note and fix
two related typos.
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5145
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Reynaldo H. Verdejo Pinochet [Wed, 30 Aug 2017 00:03:00 +0000 (17:03 -0700)]
emotion: gst: drop Frenglish from English messages
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5144
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Tue, 29 Aug 2017 23:24:20 +0000 (16:24 -0700)]
ector: cleanup grammar in comments
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D5132
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Tue, 29 Aug 2017 23:23:30 +0000 (16:23 -0700)]
evas: make the high level documentation more concise
Summary:
This is a very informative document but is much longer than it needs to
be. Tighten it up by condensing redundant information and expressing
the ideas more efficiently. Focus more on Evas and what it is than what
it isn't. Avoid explaining general graphics concepts like immediate
vs. retained, replacing with synopses. Switch from 2nd person to 3rd
person (i.e. don't say You/Your) to be less awkward, since we don't
really know why the reader is reading it. Simplify the compilation
directions; these are pretty standard, and most people won't be manually
linking to Evas anyway.
While this shortens the document considerably, it retains the
important key points, and makes it far more readable.
Reviewers: cedric
Reviewed By: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D5130
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Cedric BAIL [Tue, 29 Aug 2017 23:01:10 +0000 (16:01 -0700)]
evas: fix color set on Efl.Canvas.Group.
Dave Andreoli [Tue, 29 Aug 2017 19:34:47 +0000 (21:34 +0200)]
PKit gadget: more contrast for the design
the blue icon was not really readable on that light gray bg,
changed the icon to be dark gray
Jean Guyomarc'h [Tue, 29 Aug 2017 18:50:12 +0000 (20:50 +0200)]
evas: fix invalid return of evas_textgrid_cellrow_get()
evas_textgrid_cellrow_get() is supposed to return NULL if the row index
fed to the function is outside of the textgrid's range. It was instead
returning garbage pointer.
@fix
Jean Guyomarc'h [Tue, 29 Aug 2017 18:49:16 +0000 (20:49 +0200)]
eina: fix typo in documentation
Jean Guyomarc'h [Tue, 29 Aug 2017 18:41:40 +0000 (20:41 +0200)]
elm: fix uninitialized variables
Daniel Hirt [Tue, 29 Aug 2017 10:05:01 +0000 (13:05 +0300)]
Canvas text: fix non-dirty paragraph width calculation
Follow-up fix for
1624417d9137b87826962e431d08dc591f83d5e5.
Changed for a max comparison, rather than just assigning the line's
width.
Also, added a test case.
Fixes T5939
@fix
Daniel Zaoui [Tue, 29 Aug 2017 12:21:09 +0000 (15:21 +0300)]
Fix PS3 backend removal (Cedric...)
When running elementary_test with ELM_ENGINE='buffer', we got a crash.
The removal of PS3 backend patch didn't remove ELM_SOFTWARE_PSL1GHT and
didn't shift the _elm_engines indexes.
ELM_SOFTWARE_DDRAW stayed at the index 13 (value NULL) instead of moving
to index 12.
A strcmp with NULL occurred, leading to the crash.
@Cedric, I excuse you to not have run Exactness your code before pushing
:P
Thiep Ha [Tue, 29 Aug 2017 10:04:15 +0000 (19:04 +0900)]
Introduce text on path widget
Text on path (textpath) allows application to make text follow a path.
The path can be a efl_gfx_path or a circle.
Thank hermet for initializing this work.
@feature
Jean-Philippe Andre [Tue, 29 Aug 2017 07:41:53 +0000 (16:41 +0900)]
widget: Add protected tag to focus_highlight_geometry
This is meant to be called by the widget or elementary internals,
potentially reimplemented by widget subclasses.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 06:59:40 +0000 (15:59 +0900)]
widget: Use rectangle for focus_hilight
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 05:48:48 +0000 (14:48 +0900)]
widget: Mark focus_region_show as protected (EO)
This function is meant to be used by the widgets themselves, or internal
features such as elm_access.
Also remove const tag: this function call is definitely modifying the
widget (panning around and all that).
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 05:29:45 +0000 (14:29 +0900)]
widget: Simplify code with rectangle (EO)
This replaces x,y,w,h with a rectangle in parts of the focus_region
code.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 05:18:50 +0000 (14:18 +0900)]
widget: Merge on_focus_region and focus_region_get
This simplifies code and API.
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 04:50:56 +0000 (13:50 +0900)]
widget: Improve access_info doc
Ref T5363
Jean-Philippe Andre [Tue, 29 Aug 2017 04:33:49 +0000 (13:33 +0900)]
access: Fix crash in ecore
We use a temporary file for espeak (the accessibility text-to-speech
engine we use), and then we remove and close the file. But the fd was
not reset to -1 which meant that later on the previous fd was closed
again (this is kinda weird), but that fd was now invalid. Or rather it
was reused by ecore animator, closing the read-end of the pipe
(timer_fd_read). This caused SIGPIPE in the animator code.
Thanks strace and gdb for helping me figure out this. :)
@fix
Jean-Philippe Andre [Tue, 29 Aug 2017 01:55:56 +0000 (10:55 +0900)]
evas: Fix automatic visible set (EO)
This fixes a case where an object is hidden before the first render.
When called from elementary. the visible intercept code would be called
before evas object's visible_set, bypassing the line setting visible_set
to true.
As a consequence the object would be visible even when explicitly
requested as hidden.
Thanks @JackDanielZ for the report!
Jean-Philippe Andre [Tue, 29 Aug 2017 01:43:33 +0000 (10:43 +0900)]
evas: Fix a few shadow warnings
Jean-Philippe Andre [Thu, 24 Aug 2017 06:31:05 +0000 (15:31 +0900)]
widget: Rename hook "access" (EO)
This is also another protected and beta API. Meant to be overridden by
subclasses, but belongs to a still unstable API.
The difference between the internal legacy and the EO API is really bad.
Same as with activate (previous commit).
Ref T5363
Jean-Philippe Andre [Thu, 24 Aug 2017 06:21:59 +0000 (15:21 +0900)]
widget: Rename hook "activate" (EO)
This is for accessibility only. Protected function.
Also marked as beta as elm_access isn't going to be stable in EO (yet).
Ref T5363
Jean-Philippe Andre [Thu, 24 Aug 2017 06:01:19 +0000 (15:01 +0900)]
widget: Remove useless import in EO file
Ref T5363
Jean-Philippe Andre [Thu, 24 Aug 2017 05:33:36 +0000 (14:33 +0900)]
widget: Make theme_apply a protected function (EO)
This is a strange function but absolutely necessary to implement a
widget. Even non-layout widgets may override this.
Ref T5363
Jean-Philippe Andre [Thu, 24 Aug 2017 05:06:32 +0000 (14:06 +0900)]
widget: Rename hook "disable" (EO)
Renamed to on_disabled_update.
Also passed in the new state of disabled. It's more convenient this way,
than having the subclasses call disabled_get.
Also simplify some code...
Ref T5363
Jean-Philippe Andre [Thu, 24 Aug 2017 04:45:01 +0000 (13:45 +0900)]
widget: Rename hook "orientation" (EO)
Renamed to on_orientation_update
This internal / virtual function is in fact not overridden anywhere. Not
sure it is necessary to expose it in EO API?
Ref T5363
Gustavo Sverzut Barbieri [Mon, 28 Aug 2017 21:26:29 +0000 (18:26 -0300)]
eina_value: silent -Wextra for EINA_VALUE_EMPTY
-Wextra complains about missing initializers, so provide the full 8
bytes of the first member of the union.
Cedric Bail [Mon, 28 Aug 2017 18:32:13 +0000 (11:32 -0700)]
evas: handle new API use correctly for gl_drm backend.
Cedric Bail [Mon, 28 Aug 2017 18:13:40 +0000 (11:13 -0700)]
evas: fixup warning.
Mike Blumenkrantz [Mon, 28 Aug 2017 16:04:13 +0000 (12:04 -0400)]
theme: add slight inset for dialog content
Daniel Kolesa [Mon, 28 Aug 2017 15:27:47 +0000 (17:27 +0200)]
eolian: funcptr docs in correct place, remove more qualifiers
Daniel Kolesa [Mon, 28 Aug 2017 15:22:09 +0000 (17:22 +0200)]
eolian: less clumsy return type handling
Daniel Kolesa [Mon, 28 Aug 2017 15:20:18 +0000 (17:20 +0200)]
eolian: remove unused qualifiers from func pointers
Stefan Schmidt [Mon, 28 Aug 2017 14:45:21 +0000 (16:45 +0200)]
build: evas: fix names of jpeg200 test images
The suffix for both of them has been wrong.
Dave Andreoli [Sun, 27 Aug 2017 09:46:39 +0000 (11:46 +0200)]
Netstatus gadget: a new decent design
I'm still not really happy with this design, because 2 arrows are not
enough to understand it is "network"... but at least it looks good now :)
Stephen 'Okra' Houston [Sat, 26 Aug 2017 19:04:01 +0000 (14:04 -0500)]
Theme updates: Luncher icon indicator not relative. New pager plain style.
Cedric BAIL [Fri, 25 Aug 2017 22:44:19 +0000 (15:44 -0700)]
evas: fix build with egl.
Mike Blumenkrantz [Fri, 25 Aug 2017 18:47:30 +0000 (14:47 -0400)]
theme: let notifications wrap
infinitely wide notification popups are hard to read
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
evas image cache: notify preload for image objects without explicit callbacks
non-gl images do not have an explicit callback and so the preload inform callback
must be triggered manually for all cases
fix T5200
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
evas image cache: break out preload complete notification code into function
no functional changes
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
efl_ui_image: maintain geometry for prev image while preloading new image
if prev_img exists then it is visible, so continue maintaining its geometry
until it is deleted
fix T5936
@fix
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
elm_win: check for wayland engine during finalize by checking for wl win
fake wins don't provide engine info, but a wl win will still exist
@fix
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
elm_win: update opaque region for fake windows
fake windows still gotta render
@fix
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
efl-wl: match nested wl seats based on display ordering
a nested compositor will have a mismatch between canvas seat id and
compositor seat id, so this attempts to perform matching based on the
order that they are listed, which should be identical
@fix
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
ecore-wl2: normalize axis event values
this is value * 10 from the compositor, so /= 10 to get real value
fix T5427
@fix
Cedric BAIL [Fri, 25 Aug 2017 17:55:15 +0000 (10:55 -0700)]
evas: enable rendering of multiple output.
Cedric BAIL [Fri, 25 Aug 2017 17:55:06 +0000 (10:55 -0700)]
evas: no more ENDT.
Cedric BAIL [Fri, 25 Aug 2017 17:55:02 +0000 (10:55 -0700)]
evas: move updates to be per output.
Cedric BAIL [Fri, 25 Aug 2017 17:54:59 +0000 (10:54 -0700)]
evas: decorrelate canvas size from output size.
Cedric BAIL [Fri, 25 Aug 2017 17:54:55 +0000 (10:54 -0700)]
evas gl: fix glview by avoiding make current
gl_generic_context_find() returns the gl shared context struct but
this is not just a read-only operation. It in turn calls window_use
which may call make_current. This can invalidate the work of evas gl
when the API tried to switch to a specific context.
This fixes evas gl with multiple outputs.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Cedric BAIL [Fri, 25 Aug 2017 17:54:52 +0000 (10:54 -0700)]
evas: remove dead code to improve readability.
Cedric BAIL [Fri, 25 Aug 2017 17:54:19 +0000 (10:54 -0700)]
evas: make Evas_GL work with multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:52:52 +0000 (10:52 -0700)]
evas: reorder rendering phase to group output related operation.
Cedric BAIL [Fri, 25 Aug 2017 17:52:48 +0000 (10:52 -0700)]
evas: Evas_Canvas3D rendering logic need a complete overhaul.
For now, do not use Evas_Canvas3D in multi output context, it won't work.
The update code for Evas_Canvas3D_Node might trigger rendering logic, which
is opposite to what the scene graph logic should do. It require to much
reshuffle around to handle that case at the moment. So I am just adding a
warning.
Cedric BAIL [Fri, 25 Aug 2017 17:52:42 +0000 (10:52 -0700)]
evas: propagate output in evas_render_updates_internal_loop instead of using ENDT.
Cedric BAIL [Fri, 25 Aug 2017 17:52:38 +0000 (10:52 -0700)]
evas: enable handling multi output in evas_render_mapped.
Cedric BAIL [Fri, 25 Aug 2017 17:52:33 +0000 (10:52 -0700)]
evas: propagate output to evas_render_mask_subrender and don't use ENDT there.
Cedric BAIL [Fri, 25 Aug 2017 17:52:29 +0000 (10:52 -0700)]
evas: use output instead of default one during rendering of proxy.
Cedric BAIL [Fri, 25 Aug 2017 17:52:26 +0000 (10:52 -0700)]
evas: remove unused engine data from error set/get code.
Cedric BAIL [Fri, 25 Aug 2017 17:52:22 +0000 (10:52 -0700)]
evas: destroy seats and inputs before the display disapear.
Cedric BAIL [Fri, 25 Aug 2017 17:52:18 +0000 (10:52 -0700)]
evas: no more use of ENDT outside of evas_render.
Cedric BAIL [Fri, 25 Aug 2017 17:52:14 +0000 (10:52 -0700)]
evas: make vector graphic support multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:52:10 +0000 (10:52 -0700)]
evas: do not use default output or any other during render pre.
Cedric BAIL [Fri, 25 Aug 2017 17:52:07 +0000 (10:52 -0700)]
evas: remove unecessary use of output in filter code.
Cedric BAIL [Fri, 25 Aug 2017 17:52:03 +0000 (10:52 -0700)]
evas: make image_native_set use engine context not output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:59 +0000 (10:51 -0700)]
evas: make all window GLES3 or none.
Cedric BAIL [Fri, 25 Aug 2017 17:51:56 +0000 (10:51 -0700)]
evas: make function to find evas gl context from engine shared across backend.
Cedric BAIL [Fri, 25 Aug 2017 17:51:53 +0000 (10:51 -0700)]
evas: make filter handle multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:47 +0000 (10:51 -0700)]
evas: make Evas_GL start to use engine and output separately.
Cedric BAIL [Fri, 25 Aug 2017 17:51:44 +0000 (10:51 -0700)]
evas: convert Evas3D use of output to engine when meaningful.
Cedric BAIL [Fri, 25 Aug 2017 17:51:40 +0000 (10:51 -0700)]
evas: find a best possible output to manage an object to get pixels from.
The code shouldn't really need an output for getting the pixels, it just
happen that some of the backend function really need one to get a GL context.
Cedric BAIL [Fri, 25 Aug 2017 17:51:36 +0000 (10:51 -0700)]
evas: remove dead code that won't be easy to bring back to life.
Cedric BAIL [Fri, 25 Aug 2017 17:51:31 +0000 (10:51 -0700)]
evas: all context function use already ENC.
Cedric BAIL [Fri, 25 Aug 2017 17:51:27 +0000 (10:51 -0700)]
evas: remove image_content_hint_get from backend as it is unused.
Cedric BAIL [Fri, 25 Aug 2017 17:51:24 +0000 (10:51 -0700)]
evas: switch font backend function to rely on engine instead of output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:20 +0000 (10:51 -0700)]
evas: handle multiple output for plane assignment.
Cedric BAIL [Fri, 25 Aug 2017 17:51:17 +0000 (10:51 -0700)]
evas: convert evas backend cache function call to use Engine context.
Cedric BAIL [Fri, 25 Aug 2017 17:51:13 +0000 (10:51 -0700)]
evas: remove image_surface_noscale_region_get from engine backend as it is unused.
Cedric BAIL [Fri, 25 Aug 2017 17:51:10 +0000 (10:51 -0700)]
evas: move all image object related function to use the engine instead of the output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:05 +0000 (10:51 -0700)]
evas: forgotten convertion from output to engine.
Cedric BAIL [Fri, 25 Aug 2017 17:50:59 +0000 (10:50 -0700)]
evas: gl_common should not segv on freeing a NULL gl_image.
Cedric BAIL [Fri, 25 Aug 2017 17:50:45 +0000 (10:50 -0700)]
evas: add infrastructure to find a gl_context from a GL_Engine.
Cedric BAIL [Fri, 25 Aug 2017 17:50:40 +0000 (10:50 -0700)]
evas: switch all image animation engine related function to use ENC instead of an output.
Cedric BAIL [Fri, 25 Aug 2017 17:50:35 +0000 (10:50 -0700)]
evas: introduce a engine_new/free in gl_generic backend.
Cedric BAIL [Fri, 25 Aug 2017 17:50:31 +0000 (10:50 -0700)]
evas: refactor the call to window_use.
Cedric BAIL [Fri, 25 Aug 2017 17:49:59 +0000 (10:49 -0700)]
evas: refactor gl_generic use of window_use with context_get.
Cedric BAIL [Fri, 25 Aug 2017 17:49:53 +0000 (10:49 -0700)]
evas: differentiate engine from output.