Commit Graph

240 Commits

Author SHA1 Message Date
Carsten Haitzler 17ffbd6448 elm - focus feature - add config option to automatically show/hide focus
this adds logic in elm widget and elm win to figure out how to
automatically show a focus hilight when switching focus, or to hide
it. this really should be the default mode, thus in all default
profiles (default, standard, mobile) it's turned on. this means if you
tab or shif+tab or use arrow keys to switch focus, the focus hilight
will magicallly appear. click with a mouse to change focus and it'll
disappear assuming you want to use the mouse to do things. If focus is
explicitly turned on in config or in the window by api, then this has
no effect and focus will remain on all the time. this adds apis to
change these config values and options in the default elm config tool
to swizzle them as well as config upgrade handling for existing configs.

@feature
2015-03-04 17:47:54 +09:00
Jaehwan Kim 4629240ad2 datetime module: include elm_widget_datetime.h instead of elm_priv.h
The external module can't include elm_priv.h.
So Elm_Datetime_Module_Data moves in elm_widget_datetime.h
2015-02-04 18:56:18 +09:00
Anil Kumar Nahak 6d1d6dec7c Slider: Added APIs to set/get slider's indicator visibility mode.
Summary:
elm_config_slider_indicator_visible_mode_set
elm_config_slider_indicator_visible_mode_get

The patch will enable the slider's indicator to get

visible always
visible on focus
visible never
visible on slider value change

Reviewers: raster, seoz

Subscribers: sachin.dev

Differential Revision: https://phab.enlightenment.org/D1558
2014-11-29 15:56:45 +09:00
Lukasz Stanislawski d390ddf08d elm config: add key bindings for elm_actionslider
Allow changing value of actionslider with keyboard. Make actionslider
focusable widget.

@feature

Conflicts:
	config/default/base.src.in
	config/mobile/base.src.in
	config/standard/base.src.in
2014-11-29 15:34:08 +09:00
Carsten Haitzler b37c6ed68d elm win engines - make code only include engines efl compiled for
this means on windows etc. - it wont vene try x11, wayland etc.
engines before trying the win ones. same for osx.
2014-08-26 20:12:00 +09:00
Carsten Haitzler f934291859 elm engine choice and logic rationalize
now that we have ELM_DISPLAY and ELM_ACCEL we have little need for a
lot of the elm engine stuff and frankly a lot was broken if you used
multiple engines etc. so this fixes a lot of it nd removes a lot of
cruft. i think i got it all right, but i may have oppsied. this also
remo9ves engine support for engines long gone from evas.
2014-08-22 14:48:13 +09:00
Carsten Haitzler f54afe89cc elm - add apis to deal with accel perference
this deals with an issue brought up today on irc - seemingly rage
asking for accel is causing segvs in vbox with its gl accel subsystem
- the only way to disable this is an env var, and this is unfriendly,
so make config gui and stuff to mess with accel preference to fix this.
2014-08-06 00:04:11 +09:00
Anil Kumar Nahak 76e3372531 Focus: first item should be focused when there is no focused/selected item
Summary: First item of widget should be focused when focus comes to the widget for first time.

Test Plan:
elementary_test -to "Genlist Focus"
elementary_test -to "Gengrid Focus"
elementary_test -to "List Focus"
elementary_test -to "toolbar Focus"

Reviewers: seoz

Differential Revision: https://phab.enlightenment.org/D1135
2014-07-21 18:55:55 +09:00
Lukasz Stanislawski de9d24e09d atspi: unify atspi initialization
commit removes internal elm_atspi_init function and moves atspi_app_object
creation to atspi_bridge.
2014-07-02 14:14:49 +02:00
Lukasz Stanislawski f56f430abd atspi: simplify key event handling
Keyboard events are now directly handled by atspi_bridge instead of
elm_widget.
2014-07-01 15:38:53 +02:00
Lukasz Stanislawski 0975fd37e0 atspi: notify registry daemon about keyboard events.
Test Plan: elemeentary_test with Orca Screen reader 3.10.1

Reviewers: raster, z.kosinski

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D1025
2014-06-16 15:16:39 +09:00
Vincent Torri 0d6cacb743 backend: remove Windows CE support Windows CE is dead and buried and its gcc port is even more dead and I don't believe in zombies 2014-06-12 03:12:15 +02:00
Daniel Juyung Seo 45e8b4c82e focus: Change new API names related to focus auto scrolling.
elm_config_focus_auto_scroll_bring_in_enabled_get/set()
 ->
elm_config_focus_autoscroll_mode_get/set()

The main reason is that bring_in_enabled_get/set() APIs are too restricted
and thus not flexible. I got more requirements for the focus autoscrolling
such as none, wholely visible not just bring_in and show. So it is correct
to add mode_set/get() APIs for the focus auto scrolling.

Thanks god, we've found this before the release :)

@feature
2014-05-11 22:46:16 +09:00
Amitesh Singh 8e0ffb8332 config: Added two APIs to enable/disable focus auto scroll bring in feature.
Summary:
 Summary:
    - APIs
      - elm_config_focus_auto_scroll_bring_in_enabled_set
      - elm_config_focus_auto_scroll_bring_in_enabled_get
    - list/genlist/toolbar/gengrid: Using this feature for scrolling for focus movement.
    - Added test case in "List Focus", "Genlist Focus", "Toolbar Focus" and "Gengrid Focus"

    @feature

Test Plan: elementary_test->"List Focus", "Genlist Focus", "Toolbar Focus" & "Gengrid Focus".

Reviewers: raster, seoz

CC: seoz

Differential Revision: https://phab.enlightenment.org/D799
2014-04-27 04:15:26 +09:00
Jaeun Choi 3c82b3c174 config: ELM_CONFIG_VERSION update
Summary: This patch updates ELM_CONFIG_VERSION according to elementary key binding.

Test Plan: None

Reviewers: raster, Hermet

CC: seoz

Differential Revision: https://phab.enlightenment.org/D768
2014-04-24 17:54:45 +09:00
Lukasz Stanislawski 85c5216205 atspi: separate atspi mode from access mode.
Since elm_access provides its own support for screen reader, access mode
and atspi mode must be separated.

https://phab.enlightenment.org/D726
2014-04-21 15:01:11 +09:00
Lukasz Stanislawski c3b541bcda atspi: refactor atspi_object class into mixins.
Summary:
Allow to create ATSPI aware objects only by attaching Atspi interface to
Eo object. Apply protected rule to all methods, properties which should
not be available to app developer. Remove public atspi header from Elementary.h.
Make Elm_Widget inherit from Atspi interfaces, Elm_Win inherits additional
Atspi_Window interface.
Unified file names - all atspi related objects/interfaces can be found under
elm_atspi_*
and elm_interface_atspi_*.

Test Plan:
build&install, out-off tree example compilation with gcc and g++,
Orca screen reader tests on Ubuntu 12.04.

Reviewers: raster, seoz, tasn, JackDanielZ

Differential Revision: https://phab.enlightenment.org/D718
2014-04-21 12:46:12 +09:00
Jaeun Choi 872a1de3c9 key binding infra change for modifiers
Summary: This patch makes key binding support multiple and inverse modifier set.

Test Plan: None

Reviewers: raster, Hermet

Differential Revision: https://phab.enlightenment.org/D717
2014-04-14 19:47:52 +09:00
Jaeun Choi bf7db13385 removed unnecessary field in key binding
Summary: No need to check ev->string if use ev->key instead of ev->keyname.

Test Plan: None

Reviewers: raster

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D714
2014-04-10 19:29:37 +09:00
Amitesh Singh 68b3bc3583 focus: Renamed the config APIs _item_focus_on_selection_get/set to _item_select_on_focus_disabled_set/get()
Summary: - List: On Enter/Space/KP_Enter key press, focused item gets selected.

Test Plan: elementary_test->List Focus

Reviewers: seoz, raster

Reviewed By: seoz

CC: seoz

Differential Revision: https://phab.enlightenment.org/D704
2014-04-06 00:10:55 +09:00
Amitesh Singh 73b16ef210 focus: Added optional focus feature - item focus on selection.
Summary:
Currenly focus and selection happens together. This patch makes item focus
on selection optional by configuration and API.

- configuration: "item_focus_on_selection".
- API: elm_config_item_focus_on_selection_get/set.
- Implemented item_focus_on_selection feature in elm list.
@feature

Test Plan: elementary_test->List focus

Reviewers: raster, seoz, woohyun

CC: seoz

Differential Revision: https://phab.enlightenment.org/D676
2014-04-03 19:11:57 +09:00
Chris Michael 2338b5ad74 elementary: Add ecore-drm header and ELM_DRM engine define
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-04-01 07:10:51 +01:00
Carsten Haitzler 75d9be3b0a fix config to upgrade bindings from system config if not there 2014-03-25 15:33:08 +09:00
Daniel Juyung Seo 46506cf22e focus: Added optional focus feature - focus movement by mouse_in.
Focus is moved by mouse click by default. This patch makes moving focus
by mouse_in optionally by configuration and API. Widget item focus
movement is not applied yet. Need to do that as well.

- configuration: "focus_move_policy"
- API: elm_config_focus_move_policy_set/get
- enum
  ELM_FOCUS_MOVE_POLICY_CLICK
  ELM_FOCUS_MOVE_POLICY_IN

@feature
2014-03-23 02:04:16 +09:00
Jaeun Choi ad17bb42fe config: add a field in key binding data structure
Summary:
This patch adds a field "no_string" in key binding data structure.
It is necessary for checking "string" field in evas key down event.

Test Plan: None

Reviewers: Hermet, raster

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D641
2014-03-20 18:42:20 +09:00
Subhransu Sekhar Mohanty 576984c0ca elm_theme: Added a cache in elm_theme for styles that are failed to load.
Summary:
Currenlty loading a style that is not present in the system hits the worst case path in elm_theme as it searches through all hirarchy before
reporting that the style is not there. if those styles requested frequently it will be a overhead as it will goes through all the theme files again.
To avoid that I have added a cache which will keep track of the styles whose loading were not sucessfull so that for future request we can simply check the
cache before looking into the hirarchy of theme files.

Reviewers: seoz, raster

Reviewed By: raster

CC: raster

Differential Revision: https://phab.enlightenment.org/D601
2014-03-18 17:34:30 +09:00
Daniel Juyung Seo 7e35760942 focus: Added focus highlight clip disable feature.
focus highlight is clipped by the clipper of focus target object.
But many of the times, this clipping looks weird so I made this
configurable.

This fixes T1056 but as this fix was done by adding a new feature, this
patch would not be backported.

@feature
2014-03-09 03:39:23 +09:00
Carsten Haitzler 1fbdf7cae0 win - add accel preference option to elm windows
@feature - this adds the ability to hint what engine acceleration to
use that is specific per display system.
2014-03-09 01:22:33 +09:00
Jaeun Choi 78accca4db elementary key binding feature implementation
Summary: This patch implements elementary key binding feature.

Test Plan: None

Reviewers: Hermet, raster

CC: seoz

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

Conflicts:

	src/lib/elm_config.c
2014-02-28 10:47:03 +09:00
Sohyun Kim d1e7e15601 [elm_config] support color classes
Summary:
support color classes for runtime color changes.
It works like text classes and is also added in configuration files.

Reviewers: seoz, Hermet, cedric, raster

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D541
2014-02-28 07:16:45 +09:00
Carsten Haitzler 1f0567af98 config - feature add - audio muting config and controls 2014-02-09 19:17:01 +09:00
Jaehwan Kim db23689614 access: Add smart signal "access,changed"
It occurs that access mode is changed.
Application can add this callback for each widget.
2014-02-08 14:05:14 +09:00
WooHyun Jung 0a1179dde4 elm_layout now supports focused/unfocused smart callback
by itself for widgets that inherit layout class.
If it uses elm_widget's, smart callback will be called at the
beginning or smart_on_focus function.
2014-02-06 16:18:57 +09:00
Daniel Juyung Seo 98a08addc4 elm: Defined the same macro, MAX and MIN, in elm_priv.h
MAX and MIN are defined in a couple of places and they was already
defined in elm_priv.h. So use elm_priv.h's one.
I also moved CEIL to elm_priv.h that can be used in another places.
2014-01-23 23:15:39 +09:00
ChunEon Park dbacb2fef9 elementary - send signal "language,changed" with one way in the widget.
Call the smart callback in the widget infra so that each widget don't need to hook the smart_translate only for the smart call.

This makes reducing duplicated code and supporting language,chagned from all widgets.
2014-01-23 19:30:34 +09:00
ChunEon Park aebdcff513 elementary - use the focused/unfocused string in widget defined.
Now, it will share the strings so that reduce the binary size also user uses it in one way.
2014-01-23 17:27:17 +09:00
Daniel Juyung Seo 68eca6d62e url: Added underscore(_) to elm internal functions, elm_url_xxx.
- _elm_url_download, _elm_url_cancel, _elm_url_get
- other internal functions in elm_priv.h also have same prefix.
2014-01-21 23:23:37 +09:00
Daniel Juyung Seo fec8441c71 elm: Fixed formatting about EINA_LOG stuff. 2014-01-21 19:58:09 +09:00
Daniel Juyung Seo ef6f264e75 elm_priv.h: Removed null check from ELM_SAFE_FREE because all efl
free/del func + free func get null as valid parameter.

Now ELM_SAFE_FREE is less useful than before. It reduced 5 lines to 1
but now it reduces 2 lines to 1.
2014-01-07 00:14:35 +09:00
Daniel Juyung Seo e63dd3110a elm: Unified eina critical manro to CRI.
Being annoyed by different types of eina critical macros - CRI, CRIT,
 CRITICAL -, I concluded to unify them to one. Discussed on IRC and
 finally, CRI was chosen to meet the consistency with other macros -
 ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 13:03:55 +09:00
Lukasz Stanislawski 4b81deaa8c accessibility: ATSPI2 support.
Summary:
Hello guys,

Below You can find a proof o concept for ATSPI2 support for elementary applications. Currently application can only be listed on bus by clients such as 'accersiser'. I am strongly looking for comments to this design.

Here are my comment regarding following code:
* This pach requires https://phab.enlightenment.org/D327 patch to compile
* I have decided to include whole atspi-constants header, because in fact i will need one-to-one copy of all its enums and defines. Qt has something like 3rdparty folder from which they include this header and don't require atspi dev packages at compilation time. Maybe efl needs the same solution or should just require next package in compilation? I agree that putting atspi-constant.h in main source tree is bad idea, but where? src/utils ??

Reviewers: cedric, raster, kimcinoo

Reviewed By: raster

CC: pkaczmarek-samsung, seoz, jaehwan, kimcinoo

Differential Revision: https://phab.enlightenment.org/D328
2013-12-03 17:07:05 +09:00
Andrii Kroitor cf2ae7397e Elm_menu: fixed item disable hook for elm_dbus_menu
Summary:
Menu items in dbus-mode (in Ubunut/Unity) were not updated on
disabled/enabled state changes. They were applied only after
adding/removing an item.

Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: reutskiy.v.v

Differential Revision: https://phab.enlightenment.org/D333
2013-11-16 09:50:32 +09:00
Carsten Haitzler 9d4a9900cc option build deps that efl guarantees... now just are assumed and not ifdef'd 2013-11-12 22:56:05 +09:00
Cedric Bail eaeda2ecdd elm_theme: use Eina_File all over the place in an attempt to reduce race condition. 2013-11-04 12:19:04 +09:00
Ryuan Choi 9368d61549 elc_fileselector: Add fileselector_double_tap_navigation_enable configuration
elm_filechooser used single tap not only for selection of file but also for
navigation of directory.
So it did not provide a way to select directory without navigation.

With fileselector_double_tap_navigation_enable option, single tap will be used
only for selection and double tap will be used for navigation of file or
directory.
2013-10-01 01:46:39 +09:00
José Roberto de Souza 99cb5548f4 Make _elm_user_dir_snprintf() visible to other elm modules 2013-09-19 15:48:25 -03:00
Cedric Bail 1baaa321a7 elm_image: add support for url. 2013-08-09 21:13:15 +09:00
Ryuan Choi 477c38cdd8 elm, genlist: Introduce ELM_PRIV_STATIC_VARIABLE_DECLARE and ELM_PRIV_SMART_CALLBACKS_DESC
This can reduce human mistakes when adding new signals (and typing).

This is not all, I will work on adopting these macros for oter widgets.
2013-07-15 11:28:18 +09:00
Jaehwan Kim 504f59f174 Change the method to calculate a distance which be scrolled from linear to sine curve.
And add the configuration thumbscroll_flick_distance_tolerance. It's the max flick distance.
2013-07-03 18:43:19 +09:00
Carsten Haitzler 0c13ec5ced part of the entry magnifier feature set from thiep. still more to go. 2013-06-07 17:17:30 +09:00