Commit Graph

586 Commits

Author SHA1 Message Date
Jaehwan Kim 1bc01460c4 focus: item focus moves by geometry.
In the widget code, focus origin is added. It can know
the focus movement is originated by which action.
The widgets can choose the item focus moves to last focused item
or geometrically nearby item by focus origin.
In gengrid, focus moves to last focused item if focus origin is
ELM_FOCUS_REVERT. It moves to nearby item if focus origin is from
ELM_FOCUS_UP to ELM_FOCUS_LEFT.

TODO: widgets have items should add the direction feature if it
want the focus to move to nearby item.

@feature
2015-08-13 13:58:04 +09:00
ChunEon Park 89709482b2 win: remove usage of deprecated api. 2015-08-07 15:30:49 +09:00
ChunEon Park 30a3a152b1 win: code refactoring.
simplify code.
2015-08-07 15:29:49 +09:00
jiin.moon de3fa2c676 elm_win: add new condition about engine set when generate the elm_win object
Summary:
Calling the elm_config_accel_preference_get api with "none" as parameter,
it means user does not want to use acceleration.

Reviewers: Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2920
2015-08-07 15:10:03 +09:00
Youngbok Shin 3fb443df95 focus/list/genlist/gengrid: fix focus highlight issues on list widgets when auto focus enable is on.
Summary:
elm_list, elm_genlist widgets are handle focus highlight
relying on only elm_widget_focus_highlight_enabled_get() API.
The API is not considered about auto focus highlight feature.
So, we need to check a flag for auto focus from _elm_config.
It resolves T2555.
@fix

Test Plan: elementary_test -> List Focus or Genlist Focus

Reviewers: raster, cedric, SanghyeonLee, singh.amitesh

Reviewed By: SanghyeonLee, singh.amitesh

Maniphest Tasks: T2555

Differential Revision: https://phab.enlightenment.org/D2914
2015-08-05 12:27:11 +05:30
Jaehwan Kim aee3de2306 focus: add del callback always.
When the window treats focused object, it should always check
that it is deleted.

@fix
2015-08-05 14:48:20 +09:00
Nicolas Aguirre da2ecb5fff Revert "Adds eglfs support"
This reverts commit de52ee0192b5b6d8ad542fb2fd9e4185b39b6518.
2015-08-03 14:39:54 +02:00
Nicolas Aguirre 3ef8e44493 Revert "Removes ELM_CHECK_BACKEND[EGLFS] which searches for an ecore-eglfs"
This reverts commit aff92d581ed052413aa36785a9291e47315eb518.
2015-08-03 14:39:38 +02:00
Florent Revest 2ac6f86eb2 Removes ELM_CHECK_BACKEND[EGLFS] which searches for an ecore-eglfs 2015-08-03 14:20:41 +02:00
Florent Revest 91095b93f3 Adds eglfs support 2015-08-03 14:20:40 +02:00
Chris Michael fd28ad3824 elementary: Fix calls to ecore_wl_window_update_location
Summary: This fixes a build break from previous commit

NB: Note to self: COMPILE FIRST !!

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-30 15:32:37 -04:00
Chris Michael 8631845083 elementary: Call ecore_wl_window_update_location function when opaque region gets updated
Summary: This fixes T2624 where ecore_wl_window_update_location was
being called inside the Ecore_Evas too often. It is now only called
from the Elementary window whenever we update the opaque region. This
should help to fix the resize issue that we are seeing in wl.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-30 15:26:39 -04:00
Derek Foreman 5022b2fe90 win: correct setting of wayland opaque region
Summary: Opaque region calculation was incorrect.

Reviewers: zmike, devilhorns

Differential Revision: https://phab.enlightenment.org/D2878
2015-07-28 15:39:46 -04:00
Chris Michael aef335cf4b elementary: Remove debug comment
Summary: No real functional changes, just removing a debug printout

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-21 10:24:57 -04:00
Mike Blumenkrantz 79014251a2 win: redo wayland opaque region setting
* convert opaque region theme part to SPACER
  - add rels for shaded/maximized state
* namespace opaque region theme part
* update opaque region only on pre-render
  - fixes race condition between render size and opaque size

ref T2575
2015-07-20 17:35:00 -04:00
Chris Michael f9f9ae02a8 elementary: Properly fix wayland opaque region setting
Summary: This patch fixes opaque region setting under wayland in a
more proper/accurate way. This now sets the opaque region to be Just
what is visible (ie: only the dialog).

NB: This does not actually fix T2575 as that problem is inside E itself.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-17 13:28:31 -04:00
Chris Michael 8961a0f246 elementary: Fix elementary wayland border opaque region calculations
Summary: This fixes T2575 more accurately (combined with previous
theme adjustments). Previous code would use a spacer object to help
calculate window opaque region. This is no longer necessary due to the
previous theme changes, and now calculates window opaque region to
coincide with what Enlightenment is expecting.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-16 13:10:13 -04:00
Jean-Philippe Andre da46a44064 Window: Set urgent flag only when not already set
cat <binary_file_with_lots_of_BEL> in terminology would slow down
everything because of the urgent flag (and talking to X).
2015-07-10 14:34:55 +09:00
Daniel Zaoui 5eea00ffb6 Win: fix ABI issue
Even if focus,in/out is deprecated and should be replaced with
focused/unfocused, the event has to be triggered.
2015-07-06 14:47:31 +03:00
Daniel Zaoui 95910aed72 Focus: concentrate focused events in widget
The focused/unfocused events should be only defined in a common widget,
which is Elm.Widget.
2015-07-06 14:47:31 +03:00
Avi Levin d0c9703bd7 elm_list, elm_win: porting evas smart callbacks to eo 2015-07-05 13:05:38 +03:00
Lukasz Stanislawski 1c0f7b822d win: do not emit atspi children-changed event twice 2015-07-02 13:54:02 +02:00
Lukasz Stanislawski 2b7d454154 win: return nice atspi name 2015-07-02 13:53:20 +02:00
Vitor Sousa 5a737f7187 win: Add autohide and ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN
Summary:
Add the "autohide" property to elm_win. This property, when set to
EINA_TRUE, automatically hides the window upon a "delete,request" signal.

Create ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN, a new quit policy that
automatically exit from the elm_run loop when all windows are hidden.
It is an alternative to autodel to conciliates the memory management
framework of Eo with any other memory management model the program may
be using (e.g. RAII principles of C++).

Create the auxiliary function "_elm_win_policy_quit_triggered" to check
triggering of quit policies.
The check in "smart_hide" is now necessary, since
ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN can be triggered when a window
is hidden.

Create the auxiliary function "_elm_win_flush_cache_and_exit" to avoid
code repetition for exiting the elm_run loop.

Make a small update on documentation in elm_win.h to mention the new
autohide property.

@feature

Reviewers: raster, felipealmeida, cedric, tasn

Reviewed By: felipealmeida

Differential Revision: https://phab.enlightenment.org/D2751
2015-07-01 15:40:57 +01:00
Lukasz Stanislawski 2254bf710c atspi: fix missing Window signals on AT-SPI2 initialization
Patch adds connected/disconnected elm_atspi_bridge events to avoid
races between window getting focus and AT-SPI2 bus initialization.
When  bridge gets connected windows will reemit all "Created",
"Activated" and "Deactivated" events with regard to window focus.
2015-06-29 16:43:33 +02:00
Lukasz Stanislawski f75acf75c8 atspi: refactor atspi_bridge to eo object
This will allow to reuse eo events infrastructure
in next patches.
2015-06-29 11:30:26 +02:00
Daniel Juyung Seo 8908a3df23 elm: Add missing const for getters. 2015-06-26 10:30:21 +09:00
Chris Michael 48fd252c94 elementary: Add rudimentary support for Elm Wayland apps to set border icon
Summary: This is a patch to fix T2453 where elm apps in weston/E did
not display the icon on the border. This is just preliminary support
because it only tries to find the efreet desktop file based on
_elm_appname. This support Could be extended to allow efreet to search
based on window title, etc, etc.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 13:36:07 -04:00
Amitesh Singh f10b4eb8d0 genlist/list/win: Revert focus highlight animation when looping is enable
Summary:
  -
  Revert "focus: Added internal widget APIs of focus highlight object of elm window."

    This reverts commit 3f98d71830163a154762f2d16301d720c781b7c5.

  - Revert "List: Focus highlight when loop is enable"
This reverts commit 57ad32a900e71f83441bf7246671b8f16a8ec909.

  - Revert "genlist: Focus highlight when loop is enable"

    This reverts commit 91282a22cba66ee5e7799018d3abe8957fb1b1fa.

Reviewers: seoz, raster, jpeg, SanghyeonLee

Subscribers: anand.km, seoz

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:24:08 +02:00
ChunEon Park 50aceb5a89 win: fix bug about engine value.
When application does not have any value of engine,
this app should be launched with elm_config's value.

Signed-Off-By: Wonsik Jung <sidein@samsung.com>
2015-06-17 13:54:42 +09:00
Mike Blumenkrantz 21f0103397 win: do not use deferred ecore evas deletion for FAKE wins
these ees will be deleted externally anyway

@fix
2015-06-16 17:01:49 -04:00
Mike Blumenkrantz cb37de01f6 win: only trigger del trap if win type is not FAKE
@fix
2015-06-16 17:01:43 -04:00
Ji-Youn Park bda0ccfb60 elm_win: fix keygrab bug to use wrong keygrab mode
The code set worng ecore_x_keygrab mode according keygrab mode.
and changed some codes for readablity.
2015-06-12 11:16:25 +09:00
Carsten Haitzler da67a05a1c elm - fix profile handling if ELM_PROFILE is set - dont listen to x msg
@fix

don't listen to x profile set msg if ELM_PROFILE env var is used -
this overrides.
2015-05-28 14:58:47 +09:00
Carsten Haitzler 3ad9ee1cc7 elm = fix window norender handling
this delays norender and throttle handling to allow for quick
show/hide etc. changes an app may make so to not jump state so often.
this also fixes an issue wqhere config may change leaving all windows
in norender mode.
2015-05-28 12:27:59 +09:00
Tom Hacohen c56d494f2f Fix usage of the now removed eo_error_set().
This API has been removed from Eo.
2015-05-20 16:31:42 +01:00
Tom Hacohen 27b72840c8 Adjust usage of eo_constructor() according to recent changes. 2015-05-20 13:03:28 +01:00
Jaehyun Cho 1a08a10f11 elm_win: Set initial withdrawn state from win's ecore_evas property.
Summary:
For instance, ecore_evas sets initial withdrawn state EINA_FALSE if elm_engine is "buffer".
Therefore, the initial withdrawn state is derived from ecore_evas property.
@fix

Reviewers: raster, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2435
2015-05-19 21:32:11 +09:00
Lukasz Stanislawski 927d78d095 atspi: add ACTIVE state to elm_win 2015-05-13 15:39:24 +02:00
Ji-Youn Park 8d1a238d1c elm_win: Add elm win key grab. If keyrouter support several keygrab mode, apps can use it. 2015-05-13 20:57:36 +09:00
Lukasz Stanislawski 7abf897ac0 atspi: more org.a11y.atspi.Window signals is broadcasted. 2015-05-11 15:48:49 +02:00
Vitor Sousa 7d21b7beb1 elm_win: Replace elm_win_constructor by constructing properties
Removed the constructing method elm_obj_win_constructor.
Now "name" and "type" are properties that must be set at creation, like this:

  eo_add(ELM_WIN_CLASS, NULL,
         elm_obj_win_name_set("example"),
         elm_obj_win_type_set(ELM_WIN_BASIC));

Also, the "title" property can be set at creation now.
2015-05-07 13:55:27 -03:00
Tom Hacohen 9639418c59 Win: Make animator,tick signal actually work.
This commit also updated one of the elementary test to show
the new one of doing it.

This lets users of the API just add a callback and automatically
get animation ticks. It's done per window, because update rate
may be different for different windows (think different screens).
2015-05-06 15:46:46 +01:00
Cedric BAIL 3ffb541827 win: remove dead code.
pointer.ee was never set. This lead to some useless ERR discovered by klasyc, thanks.
2015-04-29 10:30:18 +02:00
Chris Michael 7e54ec6ca1 Revert "elementary: Fix elm_win_window_id_get for wayland"
This reverts commit 257452f46d344b64d611aa555a8aacdd509a492e.

Have to revert this as it breaks E compositor functionality wrt pixmap id.
2015-04-16 11:49:41 -04:00
Chris Michael 22a8c71877 elementary: Fix elm_win_window_id_get for wayland
Summary: This fixed the elm_win_window_id_get function when running in
wayland to return the ecore_wl_window_id rather than the surface id.
This change is necessary so that anyone calling this function can use
the return value in ecore_wayland function calls.

NB: Thanks to Hermet for pointing this out ! :)

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-16 11:09:25 -04:00
SangHyeon Lee 4f5f6a9651 Elm_Win: Fix _elm_win_focus_prev_target_del callback added repeatly without callback del.
Summary:
When object in elm_win lose their focus, elm_win save it on focus_highlight.prev structure,
and add **EVAS_CALLBACK_DEL** event callback. But after changed focus object also lose their focus from other,
**EVAS_CALLBACK_DEL** on prev object is not deleted if their in_theme is not **EINA_TRUE**.
This could be cause **'Memory Leak' **until previous focused objects are deleting.
checking in_theme of prev focus_highlight is for send signal on prev focused view(edje),
so 'if' sentence for checking previous existance and in_theme need to be separated.

@fix

Test Plan:
You can easily check this on elementary_test. launch radio sample and make focus by keyboard and
change focus repeatly, callback is added as per focus movement, but callback del is not called.

Reviewers: seoz, woohyun, raster, Hermet

Reviewed By: Hermet

Subscribers: jaehwan

Differential Revision: https://phab.enlightenment.org/D2276
2015-04-06 10:54:15 +09:00
Mike Blumenkrantz 97912ed487 elm_win fullscreen setting on FAKE wins should just toggle the flag
@fix
2015-03-18 10:53:56 -04:00
Mike Blumenkrantz 39a3a9a827 elm_win fullscreen getter does not need a third case for an inclusive if/else 2015-03-18 10:51:29 -04:00
Wonsik Jung c27ab30fae elm_config: Add feature to set depth/stencil/msaa bit to window surface
Summary:
When evas gl/elm glview runs with direct rendering, it can not set these bits to window surface.
Because of no interface and method.This patch can do that.

This patch just uses current interface as a elm_config_accel_preference_set instead of new API.
Also, it is related D2144 patch.

Test Plan: ElmGL View test menu in elementary_test app JP's test app.

Reviewers: spacegrapher, cedric, raster, jpeg

Reviewed By: jpeg

Subscribers: mer.kim

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

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-03-16 14:26:41 +09:00