Jean-Philippe Andre [Fri, 21 Apr 2017 05:52:30 +0000 (14:52 +0900)]
focus: Fix shadow variable warning
Jean-Philippe Andre [Fri, 21 Apr 2017 01:08:52 +0000 (10:08 +0900)]
ecore wl2: Fix compilation
Jean-Philippe Andre [Thu, 20 Apr 2017 09:59:02 +0000 (18:59 +0900)]
elm_image: Improve test case from previous patch
This refers to
331bf9f74683aad72415e007af14c3d4713f112b
See also, for 1.19:
4eda12b5e1d6e968fb0b057f11c280a87916e93f
Derek Foreman [Thu, 20 Apr 2017 19:40:29 +0000 (14:40 -0500)]
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.
Daniel Kolesa [Thu, 20 Apr 2017 16:24:38 +0000 (18:24 +0200)]
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.
Daniel Kolesa [Thu, 20 Apr 2017 14:14:18 +0000 (16:14 +0200)]
eo: move Efl_Event definition back to C
It's not used anywhere in eo files and has a void pointer.
Marcel Hollerbach [Thu, 20 Apr 2017 08:15:53 +0000 (10:15 +0200)]
efl_ui_focus_manager: select the widget with the smallest distance
this improves the correctness-feeling when moving focus through a
elementary application.
Marcel Hollerbach [Wed, 19 Apr 2017 12:11:02 +0000 (14:11 +0200)]
elm_interface_scrollable: add focus override
it seems this override got lost somewhere
Marcel Hollerbach [Wed, 19 Apr 2017 12:10:43 +0000 (14:10 +0200)]
elementary: fix focus tests
Marcel Hollerbach [Wed, 11 Jan 2017 15:17:05 +0000 (16:17 +0100)]
elm_list: migrate to new focus system
Marcel Hollerbach [Mon, 2 Jan 2017 10:42:35 +0000 (11:42 +0100)]
fix .eo file breaks
Marcel Hollerbach [Fri, 23 Dec 2016 19:11:12 +0000 (20:11 +0100)]
focus_tests: fix the test suite
this brings back the working testsuite and fixes a bug in the
submanager.
Marcel Hollerbach [Fri, 23 Dec 2016 12:49:12 +0000 (13:49 +0100)]
efl_ui_focus_manager: the order contains nodes not focusables
Marcel Hollerbach [Fri, 23 Dec 2016 12:48:46 +0000 (13:48 +0100)]
elementary: introduce helper functions for the redirects
Marcel Hollerbach [Fri, 23 Dec 2016 12:48:00 +0000 (13:48 +0100)]
update according to cedrics review comments
Marcel Hollerbach [Wed, 21 Dec 2016 23:28:24 +0000 (00:28 +0100)]
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
Marcel Hollerbach [Wed, 21 Dec 2016 20:40:52 +0000 (21:40 +0100)]
elm_widget: add unfocusable to debug informations
Marcel Hollerbach [Wed, 21 Dec 2016 19:23:55 +0000 (20:23 +0100)]
efl_ui_focus_manager: make setting a order easier
Marcel Hollerbach [Wed, 21 Dec 2016 18:30:21 +0000 (19:30 +0100)]
elm_box,grid,table: take the resize object as evas object
Marcel Hollerbach [Wed, 21 Dec 2016 12:19:47 +0000 (13:19 +0100)]
efl_ui_focus_manager: if there is no normal item then just do nothing
Marcel Hollerbach [Wed, 21 Dec 2016 12:06:54 +0000 (13:06 +0100)]
efl_ui_flip: migrate to new focus system
Marcel Hollerbach [Wed, 21 Dec 2016 11:29:06 +0000 (12:29 +0100)]
elm_grid: migrate to new focus system
Marcel Hollerbach [Wed, 21 Dec 2016 11:28:44 +0000 (12:28 +0100)]
efl_ui_focus_manager: there is the case that n can be NULL
Marcel Hollerbach [Wed, 21 Dec 2016 10:42:41 +0000 (11:42 +0100)]
efl_ui_focus_manager_sub: do not update if parent is NULL
is is actually a dangerous case, and should NEVER happen
Marcel Hollerbach [Wed, 21 Dec 2016 10:41:55 +0000 (11:41 +0100)]
efl_ui_frame: migrate to new focus system
when collapsed the subtree is unfocusable
Marcel Hollerbach [Wed, 21 Dec 2016 10:05:49 +0000 (11:05 +0100)]
elm_table: migrate to new focus system
Marcel Hollerbach [Tue, 20 Dec 2016 17:21:58 +0000 (18:21 +0100)]
elm_interface_scrollable: fix bringing in of items
Marcel Hollerbach [Tue, 20 Dec 2016 16:34:08 +0000 (17:34 +0100)]
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.
Marcel Hollerbach [Tue, 20 Dec 2016 16:31:33 +0000 (17:31 +0100)]
elm_widget: evalulate show flag and call focus on super
Marcel Hollerbach [Tue, 20 Dec 2016 16:29:26 +0000 (17:29 +0100)]
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.
Marcel Hollerbach [Tue, 20 Dec 2016 16:28:36 +0000 (17:28 +0100)]
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.
Marcel Hollerbach [Tue, 20 Dec 2016 16:27:45 +0000 (17:27 +0100)]
efl_ui_win: migrate to the new focus system
this means, focus requests are redirected to the new focus manager.
Marcel Hollerbach [Tue, 20 Dec 2016 16:25:57 +0000 (17:25 +0100)]
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
Marcel Hollerbach [Tue, 20 Dec 2016 16:25:31 +0000 (17:25 +0100)]
elm_box: set the correct order
Marcel Hollerbach [Tue, 20 Dec 2016 16:24:09 +0000 (17:24 +0100)]
efl_ui_focus_manager: allow settings of subsets
those subsets will just be prepended.
Marcel Hollerbach [Mon, 19 Dec 2016 20:18:42 +0000 (21:18 +0100)]
efl_ui_focus_manager: handle logical end correctly.
Marcel Hollerbach [Mon, 19 Dec 2016 18:56:06 +0000 (19:56 +0100)]
efl_ui_focus_manager: fix error message
Marcel Hollerbach [Mon, 19 Dec 2016 18:53:01 +0000 (19:53 +0100)]
efl_ui_focus_manager: return the new candidate
Marcel Hollerbach [Mon, 19 Dec 2016 18:26:33 +0000 (19:26 +0100)]
efl_ui_focus_manager: handle redirect objects in logical better
Marcel Hollerbach [Mon, 19 Dec 2016 18:24:45 +0000 (19:24 +0100)]
efl_ui_focus_manager: be more secure
Marcel Hollerbach [Mon, 19 Dec 2016 18:23:12 +0000 (19:23 +0100)]
efl_ui_focus_manager: fix sub manager logical handling
Marcel Hollerbach [Mon, 19 Dec 2016 18:21:04 +0000 (19:21 +0100)]
efl_ui_focus_manager: better error messages
Marcel Hollerbach [Sat, 17 Dec 2016 18:45:56 +0000 (19:45 +0100)]
efl_ui_focus_manager_sub: focus the item in sub and main manager
Marcel Hollerbach [Sat, 17 Dec 2016 10:55:59 +0000 (11:55 +0100)]
efl_ui_focus_manager: add log domain for focus movements
Marcel Hollerbach [Mon, 12 Dec 2016 18:23:42 +0000 (19:23 +0100)]
efl_ui_focus_manager: restructure node struct
a redirect can happen for logical OR normal
Marcel Hollerbach [Mon, 12 Dec 2016 18:10:19 +0000 (19:10 +0100)]
efl_ui_focus_manager: more debug information
Marcel Hollerbach [Mon, 12 Dec 2016 19:03:53 +0000 (20:03 +0100)]
efl_ui_focus_manager: do not depend on elm widget events
Marcel Hollerbach [Mon, 12 Dec 2016 20:01:18 +0000 (21:01 +0100)]
efl_ui_focus_manager: unset redirect when focusing new item
Marcel Hollerbach [Mon, 12 Dec 2016 18:09:34 +0000 (19:09 +0100)]
efl_ui_focus_manager: make next and prev searching deadlock prove
Marcel Hollerbach [Mon, 12 Dec 2016 18:09:03 +0000 (19:09 +0100)]
efl_ui_focus_manager: unset redirect when destroyed
Marcel Hollerbach [Mon, 12 Dec 2016 12:56:52 +0000 (13:56 +0100)]
efl_ui_focus_manager: allow flushing of one single node
this gives a massive performance boost
Marcel Hollerbach [Wed, 7 Dec 2016 21:27:36 +0000 (22:27 +0100)]
efl_ui_focus_manager_sub: register the forwared itself
Marcel Hollerbach [Wed, 7 Dec 2016 19:12:11 +0000 (20:12 +0100)]
efl_ui_focus_manager: handle redirect managers in a better way
Marcel Hollerbach [Wed, 7 Dec 2016 15:59:13 +0000 (16:59 +0100)]
elm_widget: update focus register work
now it trackes changes of the parent manager. And registers more
reliable.
Marcel Hollerbach [Wed, 7 Dec 2016 15:48:00 +0000 (16:48 +0100)]
efl_ui_focus_manager: fix up tracking and returning of data
a logical parent should not be in the border elements. The child should
also be not deleted itself. If we do so correct deletion could fail.
Marcel Hollerbach [Sat, 17 Dec 2016 18:51:35 +0000 (19:51 +0100)]
tests: update to recent changes
Marcel Hollerbach [Tue, 6 Dec 2016 13:36:37 +0000 (14:36 +0100)]
efl_ui_focus_manager_sub: update to recenent changes
Marcel Hollerbach [Sun, 4 Dec 2016 20:37:07 +0000 (21:37 +0100)]
efl_ui_focus_manager_sub: register children correctly
Marcel Hollerbach [Sat, 19 Nov 2016 11:46:21 +0000 (12:46 +0100)]
elm_widget: add logical parent to interface
and evaluate all values correctly and emit the correct events
Marcel Hollerbach [Fri, 18 Nov 2016 12:28:11 +0000 (13:28 +0100)]
elm_widget: make sure we dont have a destructed logical parent
Marcel Hollerbach [Fri, 18 Nov 2016 12:26:24 +0000 (13:26 +0100)]
efl_ui_focus_manager_sub: register the root as logical
Marcel Hollerbach [Thu, 17 Nov 2016 13:55:43 +0000 (14:55 +0100)]
efl_ui_focus_manager: a logical item should never get focus.
Marcel Hollerbach [Wed, 16 Nov 2016 19:50:20 +0000 (20:50 +0100)]
efl_ui_focus_manager: use data iterator not key iterator
this saves one call to node_get
Marcel Hollerbach [Wed, 16 Nov 2016 18:01:30 +0000 (19:01 +0100)]
elm_widget: enhance focus handling of the widget
widgets will now use there widget parent as logical parent.
Marcel Hollerbach [Wed, 16 Nov 2016 17:58:57 +0000 (18:58 +0100)]
elm_widget: add debugging informations for a manager in a widget
Marcel Hollerbach [Wed, 16 Nov 2016 17:54:26 +0000 (18:54 +0100)]
efl_ui_focus_manager: new api for adding a logical widget
a widget which is registered logically will not be used for right left
top or down relations.
Marcel Hollerbach [Fri, 4 Nov 2016 16:44:37 +0000 (17:44 +0100)]
efl_ui_win: make it a focus manager
Added a focusmanager with the window itself as the root.
Marcel Hollerbach [Fri, 4 Nov 2016 16:43:40 +0000 (17:43 +0100)]
elm_widget: make it a efl_ui_focus_object
it will register based on it can_focus flag
Marcel Hollerbach [Fri, 4 Nov 2016 16:42:26 +0000 (17:42 +0100)]
efl_ui_focus_manager: add new api to receive child configuration
Marcel Hollerbach [Thu, 27 Oct 2016 17:06:17 +0000 (19:06 +0200)]
focus: fix compilation
it seems like eolian changed, so i need to import the eina_types
Marcel Hollerbach [Mon, 24 Oct 2016 15:16:34 +0000 (17:16 +0200)]
managersub: remove the select_set call
this can be done directly be inheriting border_elements and cutting down
the set.
Marcel Hollerbach [Mon, 24 Oct 2016 10:59:59 +0000 (12:59 +0200)]
focus: update documentation on all eo files
we should now have a complete documentation of those eo files
Marcel Hollerbach [Mon, 24 Oct 2016 10:58:30 +0000 (12:58 +0200)]
focus: update object definition
the event is now a bit better, since you only need to subscribe to one
event instead of two, the new state is passed in the event.
Marcel Hollerbach [Thu, 20 Oct 2016 20:59:05 +0000 (22:59 +0200)]
efl_ui: introduce a focus manager and sub manager object
The Efl.Ui.Focus.Manager abstracts the creation of a localization graph
and a logical tree. The localization graph is used to find a object
right left up or down of a given object. The logical tree is used to
iterate throuw the containers which are used to build a ui.
Those managers can be used bound to some layer in the ui, so for
example the window is a layer, the content of a scroller is a layer.
With those layers, we can make sure that movements of a scroller for
example just means that this graph of objects in the scroller needs to
be recalculated, and not the complete ui.
The advantage of having this to layer bound datastructures is that you
can easily debug those graphs, since the complete layer of this
managerobject can be calculated completly.
Jeeyong Um [Thu, 20 Apr 2017 11:26:17 +0000 (20:26 +0900)]
edje_cc: Keep script block during group inheritance
Currently, script block is removed when an edje group inherits from other group
after defining its own script block.
group { "somegroup";
script {
...
}
parts {
...
}
inherit: "othergroup"; // <= previous script block is removed here.
}
If parent group doesn't have script block, it doesn't need to overwrite previous
one. This will keep script block and print warning when script block is overwritten.
Jean-Philippe Andre [Thu, 20 Apr 2017 09:29:26 +0000 (18:29 +0900)]
elm_image: Fix file_set when preload is disabled
If we disable preload, then the second file set on an elm_image
object would not trigger a deletion of the first image. As a
consequence, both images would be visible... really bad if there's
alpha or different dimensions!
Thanks Anand Kumar for the report!
@fix
Jean-Philippe Andre [Thu, 20 Apr 2017 06:33:59 +0000 (15:33 +0900)]
examples: Fix most trivial warnings
This fixes all warnings for "make examples" for:
-Wunused-parameter
-Wshadow
-Wformat-security
-Wenum-conversion
Some remaining warnings include:
-Wdeprecated-delcarations
Bryce Harrington [Thu, 20 Apr 2017 05:21:21 +0000 (14:21 +0900)]
examples/evas: Use printf instead of fprintf(stdout, ...)
Summary:
Applies the correction purely mechanically using the following shell
command-line:
src/examples/evas$ grep -sr 'fprintf(stdout' . | cut -d: -f1 | uniq | \
xargs sed -i "s/fprintf(stdout/printf(/"
This fixes a few warnings about lack of a format string:
warning: format not a string literal and no format arguments [-Wformat-security]
fprintf(stdout, commands);
Reviewers: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4691
Derek Foreman [Wed, 19 Apr 2017 21:45:34 +0000 (16:45 -0500)]
ecore_wl2: destroy dmabuf global at shutdown
Fixes a small memory leak.
Derek Foreman [Wed, 19 Apr 2017 21:35:36 +0000 (16:35 -0500)]
ecore_wl2: refactor global cleanup in shutdown paths
Both session recovery and regular disconnect do this, so make
it a function to ensure they stay in sync.
Chris Michael [Wed, 19 Apr 2017 18:56:27 +0000 (14:56 -0400)]
ecore-drm2: Iterate plane formats properly
This patch addresses an issue where plane formats were not being
properly copied into our Plane State structure and causing any usage
of our atomic code paths to crash and burn
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 19 Apr 2017 18:13:29 +0000 (14:13 -0400)]
elput: Remove specific case for pointer wheel tilt
Since efl-jenkins does not have libinput >= 1.7.0, this commit broke
the jenkins build due to missing
LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT value. We should be able to
get by with letting 'default' case handle it....
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Jeeyong Um [Wed, 19 Apr 2017 17:41:08 +0000 (10:41 -0700)]
elm.hoversel: highlight selected item when auto update is enabled
Summary:
When auto update is enabled, the label of the hoversel will be that of selected
item. This feature is usually used when changing state of something.
Highlighting item previous selected will show what is current state more
explicitly especailly hoversel has many items.
Test Plan: elementary_test -to hoversel
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4799
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Wed, 19 Apr 2017 17:40:37 +0000 (10:40 -0700)]
edje_pick: fix a couple spelling errors
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4801
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Wed, 19 Apr 2017 17:40:03 +0000 (10:40 -0700)]
ecore_evas: fix some incorrect words
Summary:
+ whichever -> whatever
+ hyphenate pre-* and post-*
+ flowed -> followed
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4802
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Wed, 19 Apr 2017 17:39:22 +0000 (10:39 -0700)]
evas: fix several incorrect words
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4803
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Wed, 19 Apr 2017 17:38:39 +0000 (10:38 -0700)]
evas: fix spelling for "ptimitive"
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4804
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Chris Michael [Wed, 19 Apr 2017 17:16:57 +0000 (13:16 -0400)]
elput: Add case for wheel tilt when getting pointer axis value
libinput >= 1.7.0 added support for
LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT, however we do not yet support
that in elput, thus gcc was spilling a warning about an unhandled
enumeration value here. We'll add a case for the above, plus a default
to cover any future additions.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 19 Apr 2017 17:15:02 +0000 (13:15 -0400)]
elput: Remove unused variable
Gcc reports 'flags' as unused here, so remove it
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 19 Apr 2017 14:57:43 +0000 (10:57 -0400)]
ecore-con: Remove unused variable
Gcc complains that 'flags' here may be used uninitialized. In looking
at the code, 'flags' does not seem to be needed in the debug prints
here. If we keep and initialize the variable to 0 during declaration,
it would only ever print out 0 anyway as 'flags' is never changed in the
code.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Wed, 19 Apr 2017 11:24:38 +0000 (13:24 +0200)]
eolian: fix buggy generation of auto/empty on properties
We only want to generate auto/empty function bodies on what is
specified inside the braces for properties, not for the whole
property.
Jeeyong Um [Wed, 19 Apr 2017 07:47:39 +0000 (16:47 +0900)]
Evas.Table: Apply mirrored correctly when align is set
Summary:
When table items are left aligned and mirrored is set, items should be placed
from the right side, but align is not changed. (still left-aligned)
@fix
Test Plan: make and run attached example
Reviewers: cedric, jpeg
Subscribers: thiepha, woohyun
Differential Revision: https://phab.enlightenment.org/D4758
se.osadchy [Wed, 19 Apr 2017 05:45:04 +0000 (14:45 +0900)]
elm_map: Fix elm_map_overlay_color_get
Summary:
Add all supports types for overlay color (such as in Doc.)
@fix
Reviewers: cedric, Hermet, raster, NikaWhite, jpeg
Reviewed By: jpeg
Subscribers: jpeg, artem.popov
Differential Revision: https://phab.enlightenment.org/D4800
Jean-Philippe Andre [Wed, 19 Apr 2017 04:51:27 +0000 (13:51 +0900)]
eo: Micro-optimize function calls
This is related to the previous changes to efl_super.
Jean-Philippe Andre [Wed, 19 Apr 2017 02:41:15 +0000 (11:41 +0900)]
eo: Remove super bit from eo id
It is not required anymore as the super class and super bit can
be stored inside the object data. See the previous patches.
Jean-Philippe Andre [Wed, 19 Apr 2017 02:32:28 +0000 (11:32 +0900)]
eo: Add docs for efl_super and efl_cast (doxygen)
Jean-Philippe Andre [Tue, 18 Apr 2017 11:41:11 +0000 (20:41 +0900)]
eo: Add new API efl_cast
This is similar to efl_super but the specified class is the one
we want to call the function on. This is similar to dynamic_cast<>
in C++.
Note: both efl_super() and efl_cast() need documentation!
This is an experimental feature.
Fixes T5311
@feature
Maniphest Tasks: T5311
Differential Revision: https://phab.enlightenment.org/D4797
Jean-Philippe Andre [Tue, 18 Apr 2017 10:57:53 +0000 (19:57 +0900)]
eo: Remove lock from efl_super
I've always really disliked this lock. If someone calls a non-eo
function by accident with efl_super() then you'll most likely end
up in a deadlock.
This adds the cur_klass pointer to the object itself, exploiting
the fact that we have 8 bytes of padding (on 64 bits, at least).
Also, this opens the door to efl_cast() which would be similar to
efl_super() except that only a dynamic cast is done, not a call
to the parent function.
make benchmark shows a performance improvement, surprisingly.
This is a bit experimental. See also the following commit (efl_cast)
Ivan Furs [Wed, 19 Apr 2017 01:29:27 +0000 (10:29 +0900)]
ecore_pipe: Fixed dead lock with epoll
See
a76ebea2d840ecc575efb025574c15503225b83f and the following
commits on this file.
The following test scenario let to easily reproducible
application hangs:
elementary_test -to "Icon Desktops"
# then scroll vigorously with the mouse wheel up/down
This patch was applied as a new revision on the below diff:
Differential Revision: https://phab.enlightenment.org/D4754
Cedric BAIL [Tue, 18 Apr 2017 23:57:36 +0000 (16:57 -0700)]
ecore: use new API eina_file_close_on_exec in example too.