Commit Graph

55132 Commits

Author SHA1 Message Date
Jean-Philippe Andre b6bab481aa widget: Mark old focus API as beta.
It's not beta. It's about to die.
Also, move #define ELM_WIDGET_BETA to the common header file, as it is
consequently required by ALL widgets. :(

Ping @bu5hm4n :)

Ref T5363
2017-08-31 11:22:04 +09:00
Stephen 'Okra' Houston b0fc5dde62 Luncher Theme: Set no border for alpha. This needs to be backported. 2017-08-30 20:15:00 -05:00
Marcel Hollerbach 0b3a14a387 efl_ui_focus_manager_calc: only focus none NULL candidates 2017-08-30 22:39:52 +02:00
Marcel Hollerbach ea5b0bdfde efl_ui_focus_manager: make logical_end work better
it turns out that we should also repsect logical elements that are
having a redirect_manager, since they are more at the "end" then a
potential regular node.

The user now needs to handle the logical_end call on this manager, or
handle at all what he wants to do with this information.

efl_ui_win now handles it in the way that it just focuses that logical
node, (which results in the redirect manager beeing set, then calling
again logical_end on that manager. Repeating this until we have finally
found a regular node that does fit out needs.
2017-08-30 22:39:52 +02:00
Derek Foreman 57d5b5921e ecore_wl2: Kill the wl idle enterer
We do flushes when we need them now, so we don't need this somewhat
non deterministic flush mechanism anymore.

Anything that breaks as a result of this should be fixable by adding an
ecore_wl2_display_flush() somewhere appropriate.
2017-08-30 15:08:53 -05:00
Derek Foreman 1bb45f6e61 ecore_wl2: Use ecore_wl2_window_commit for all wl_surface_commits
This adds an explicit flush to every surface commit.
2017-08-30 15:08:53 -05:00
Chris Michael 114f559e23 ecore-wl2: Formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-30 15:50:12 -04:00
Derek Foreman f886a76dae wayland: Force a display flush when committing surfaces
We had a hack in place to flush the display from an idle enterer instead
of after a surface commit.  This led to a problem where the idle
enterer dispatch order was:

renderer for main canvas
wayland dispatch idle enterer
renderer for mouse cursor canvas

The surface commit for the mouse cursor was never dispatched, so the mouse
cursor animation would only update at the rate other events occurred.

By flushing at the appropriate times instead we ensure a proper update.

ref T5850
2017-08-30 14:11:47 -05:00
Derek Foreman e7db6eec46 ecore_wl2: Add ecore_wl2_display_flush() api
Allowing engines to explicitly flush at the right times will remove some
awkwardness and bugs from our current display flush paradigm
2017-08-30 14:11:47 -05:00
Derek Foreman 388f8c41c8 wayland: Store Ecore_Wl2_Display instead of wl_display in engines
We'll need to call ecore_wl2 functions on it soon, and anything that
really needs the wl_display can query it.
2017-08-30 14:11:47 -05:00
Derek Foreman f2756f92e8 walyand_shm: Remove unused variable
Nothing in here actually cares about the wl_display anymore.
2017-08-30 14:11:47 -05:00
Derek Foreman e0d94b8234 ecore_wl2: Fix small bug in flush handler
If wl_display_flush() returns a non negative number it was successful,
so we should disable the write handler then.  We were theoretically always
doing an extra flush on an empty buffer.

This is mostly cosmetic as that's not a costly operation.
2017-08-30 14:11:47 -05:00
Derek Foreman 4e41f7569b ecore_drm2: Fix warning with a dirty hack
So because we include wayland-server.h we're told that wl_buffer is
deprecated - however clients are still expected to use it, it's only
deprecated for usage in a compositor.

Making these into void pointers shuts up the warning.

We need to include wayland-server.h since some of the code provided by
ecore_wl2 is for compositors, but some of it is also for clients...
2017-08-30 14:11:47 -05:00
Youngbok Shin 2b9a2692e8 evas font: do floating point division for calculating more accurately
Summary:
Assigning a result of integral division to a double type variable is
not useful for next division calculation. For more accurate calculation,
it needs to be casted to double before doing division.
It does not fix some bugs. It was reported by a code quality advisor.

Test Plan: N/A

Reviewers: raster, cedric, jpeg, herdsman, eunue

Reviewed By: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2017-08-30 12:06:01 -07:00
Daniel Kolesa 67d1c0e51c elua: load regular file if bytecode cache fails
If bytecode is requested and fails to load, load original file
instead. Force re-write of bytecode if that succeeds.

This is useful if there is bytecode newer than the source file that
the current Lua version can't load, for example when migrating from
LuaJIT 2.0 to 2.1, which changed bytecode format.

Fixes confusing cases such as in T2728.
2017-08-30 20:21:23 +02:00
Daniel Kolesa 8b5d555cf5 elua: update eolian bindings and make docgen work again 2017-08-30 19:46:41 +02:00
Daniel Kolesa 10fd3c32e8 eolian: remove c_only
Unused and of questionable value.
2017-08-30 19:46:41 +02:00
Cedric Bail 4406d7098c evas: we always do use the common backend, so always init. 2017-08-30 10:01:17 -07:00
Marcel Hollerbach 245a04cc44 efl_ui_focus_manager: reset focus stack once we are changing redirect
ref T5923
2017-08-30 17:55:51 +02:00
Daniel Kolesa 4a16e1d862 eolian: @extern for function pointers 2017-08-30 16:02:30 +02:00
Daniel Kolesa 2071bbe8fb eolian: clean up and fix function pointer generation
Out/inout params are now correctly handled.
2017-08-30 15:45:20 +02:00
Daniel Kolesa af6713ebb4 efl interfaces: fix incorrect enum val 2017-08-30 15:34:49 +02:00
Daniel Kolesa 93c93328ac eolian gen: clean up param gen 2017-08-30 15:34:49 +02:00
Daniel Kolesa fd93caf4b2 eolian: remove unused variable 2017-08-30 15:34:49 +02:00
Chris Michael 2ed81b0948 ecore-wl2: Formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-30 09:10:55 -04:00
Jean-Philippe Andre f90d0d1501 widget: Simplify & document "translate"
This is a protected function. It doesn't need to return anything, as all
implementation just returned true, always. Also, the legacy API was just
a wrapper doing nothing special (except verify that we have a widget,
which the recursive code already does).

Tested with fr_FR :)

Ref T5363
2017-08-30 18:54:59 +09:00
Jean-Philippe Andre a2729d119d widget: Remove part_text from EO
It should be implemented as a efl_part() API.

For now I've only done a quick hack, as the only overrides were:

 - notify: already a Part implementation. Also it turns out the default
   theme does not even have any text part in the notify group.

 - combobox: not a Part implementation, but also very badly defined wrt.
   parts in general. efl_part() is handled by the parent class (button)
   which makes it tricky to override just for one function.

With this patch I'm trying to keep the same behaviour as earlier (where
efl_part() is used for layouts and there is a special path for
combobox).

Ref T5363
2017-08-30 18:33:15 +09:00
Jean-Philippe Andre c9fcdbc68c 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre 692282e67a 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre a82ab33bed 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre 4a6b52465d eina: Add convenience eina_rectangle_equal
@feature
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre 6bb9f4fd16 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre ffa041fe58 scroll: Rename elm enum to efl.ui
This scroll block enum should also be used in widget itself.

Ref T5363
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre c690469fcc 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre ac215dba0f 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
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre 00862c3c9c 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
2017-08-30 17:29:52 +09:00
Stefan Schmidt ed68159d34 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.
2017-08-30 09:59:57 +02:00
Carsten Haitzler a5c8e883d8 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
2017-08-30 12:03:41 +09:00
Carsten Haitzler 15cdd9b71b 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
2017-08-30 11:31:02 +09:00
Reynaldo H. Verdejo Pinochet 2cf1fd3be9 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>
2017-08-29 17:08:05 -07:00
Reynaldo H. Verdejo Pinochet 835fd7a485 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>
2017-08-29 17:03:11 -07:00
Bryce Harrington d5346d4e24 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>
2017-08-29 16:24:23 -07:00
Bryce Harrington dcc2654673 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>
2017-08-29 16:23:34 -07:00
Cedric BAIL 84cfde45f6 evas: fix color set on Efl.Canvas.Group. 2017-08-29 16:01:41 -07:00
Davide Andreoli 11efbdd7b4 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
2017-08-29 21:34:47 +02:00
Jean Guyomarc'h 9e3a344454 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
2017-08-29 20:56:31 +02:00
Jean Guyomarc'h 232e193673 eina: fix typo in documentation 2017-08-29 20:56:31 +02:00
Jean Guyomarc'h 172cf67d16 elm: fix uninitialized variables 2017-08-29 20:41:40 +02:00
Daniel Hirt 048dcc3263 Canvas text: fix non-dirty paragraph width calculation
Follow-up fix for 1624417d91.
Changed for a max comparison, rather than just assigning the line's
width.
Also, added a test case.

Fixes T5939

@fix
2017-08-29 17:07:15 +03:00
Daniel Zaoui 4337e77669 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
2017-08-29 15:21:12 +03:00