path: root/src/lib/elementary/elm_config.c (follow)
AgeCommit message (Collapse)Author
2020-02-04efl.ui.textbox: add and use keyboard bindingsAli Alzyod
As other widgets, efl.ui.textbox will use keyboard bindings instead of listen to keyboard events Reviewed-by: Marcel Hollerbach <> Differential Revision:
2020-02-04elm_config: add helper method for copying widget key bindingsMarcel Hollerbach
Reviewed-by: Mike Blumenkrantz <> Differential Revision:
2020-02-04elm_config: fix wrong update codeMarcel Hollerbach
the version here was wrong, probebly a missmatch between hex. & dec and a off by one error. This is fixing that problem and does not just copy all keybindings. Reviewed-by: Mike Blumenkrantz <> Differential Revision:
2019-11-06elm_config: replace ecore_file_cp with ecore_file_mvWonki Kim
ecore_file_cp can cause config data(eet file) invalid, once multiple processes are trying to call elm_config_save. this patch replaces it with ecore_file_mv to prevent the problem. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-10-30efl_ui: remove Efl.Ui.Slider_Indicator_Visible_ModeMike Blumenkrantz
this cannot be used for anything and serves no purpose Reviewed-by: Cedric BAIL <> Differential Revision:
2019-09-24elm: rename _use_build_config variable -> _running_in_treeMike Blumenkrantz
Summary: this makes the meaning of the variable more clear no functional changes Depends on D10092 Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-09-18elm_config: fix to check if eet_open failsWonki Kim
Summary: this patch adds a guard block in case of failure of eet_open(). Reviewers: bu5hm4n, zmike Reviewed By: zmike Subscribers: zmike, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-09-16elm_config: fix a missing of free after usingWonki Kim
Summary: safed_bindings will leak by going out the function without freeing. Reviewers: bu5hm4n, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-29elm config - add config api's to set desktop style entry flag/modeCarsten Haitzler (Rasterman)
2019-08-26efl_ui_item: add keybindings for selecting changesMarcel Hollerbach
This started as a small commit, when pressing enter -> set the item as selected. However, it was a bit more complex, it seems that there was never config update code to copy bindings into the user profile. Which lead to the fact that you are missing a lot of keyboard related features if you havnt wiped your config in the last 1-2 years. For me keybindings for Efl.Ui.Scroller Tab_Bar Image_Zoomable (Item) have been missing and were never inserted. WHich is a problem for a user just constantly updating. For now i created a function that copies over the bindings from the system config, and they are merged into the user config. Intentional leaving our of keybinding structs for a user-config will result in them beeing merged again on the next config update. If you want to get rid of key bindings as a user you can just keep the empty struct, which is the signal for "i know what i am doing, i do not want to have them". The problem that the system config is partly invalidated (due to moving the key bindings struct to the user config), is fixed due to the fact that the config is reloaded after that. This function should be called everytime someone updates the config in regards of the keybindings. Reviewed-by: Mike Blumenkrantz <> Differential Revision:
2019-08-23elm/config: always use default profile with EFL_RUN_IN_TREEMike Blumenkrantz
Summary: if this env var is set, we're probably running unit tests or something and we should ignore ELM_PROFILE Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-22elm/config: avoid unnecessary elm cache flushsubhransu mohanty
Summary: in config_apply() we load the deafult theme and then elm_recache() just throws it away. so just move it before config_apply for time being. We need to revisit to check if we really need that elm_recache() in that function or not. Reviewers: Hermet, raster, cedric, zmike Reviewed By: zmike Subscribers: zmike, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-09elm/config: clear env var hash on shutdownMike Blumenkrantz
env vars should not be retained when this subsystem is not "active" fixes unit test running ref 9149767184bfa9b64102eaea89f6733351de71e9 Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-08getenv - reduce continually calling getenv for the same vars do onceCarsten Haitzler (Rasterman)
do it once and remember the result from the first one. drops overhead for sure by a chunk i actually could see in perf reports like about 1-2% of cpu...
2019-07-29elm/config: fix config usage with EFL_RUN_IN_TREE setMike Blumenkrantz
when running in tree, elm_config should not attempt to access files outside the tree, nor should it attempt to overwrite any existing config files @fix Reviewed-by: Cedric BAIL <> Differential Revision:
2019-07-29elm/config: monitor MODIFIED events on config filesMike Blumenkrantz
eio/inotify now receives these events when the config file is modified, even though the file is copied onto that location. this fixes config updating at runtime @fix Reviewed-by: Cedric BAIL <> Differential Revision:
2019-07-28Evil: remove pwd code in Evil and fix compilation failures after the removalVincent Torri
Summary: remove pwd code in Evil Test Plan: compilation Reviewers: zmike, cedric, raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-07-17eo: use efl_provider_{un,}register infrastructure instead of Efl_Loop one.Cedric BAIL
Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-03-27elementary: embed standard config as fallbackMarcel Hollerbach
Summary: as you can see in T7620, there is quite some critics about how we are handling configs in elm. This patch enables the compile-time standard config to be used instead of some weak-wrong-usage hardcoded structure defines somewhere in elm. This means, that every update to the default theme will be also in the next build embedded, without any config files installed at all, the standard config for desktops will work, and a error will be printed, so the user does have the possibility to interact with elm as he wishes, while he sees this error. fixes T7620 Reviewers: zmike, cedric, segfaultxavi, devilhorns Reviewed By: zmike Subscribers: devilhorns, #reviewers, #committers Tags: #efl Maniphest Tasks: T7620 Differential Revision:
2019-03-13elm_config: Fix unchecked return valueChristopher Michael
Small patch to check the return value of ecore_file_cp. Coverity reports this as an unchecked return value, so let's just add a simple check here. Fixes Coverity CID1399101 Reviewed-by: Stefan Schmidt <> Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-03-09efl_ui_types: rename move_prolicy fieldMarcel Hollerbach
Summary: in was not very descriptiv, move_in was concluded to be more descriptive ref T7726 Reviewers: segfaultxavi, cedric, zmike Reviewed By: segfaultxavi Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7726 Differential Revision:
2019-02-13Revert "elm_config: fix elm_config_save not to wake idle processes up"Marcel Hollerbach
This reverts commit 8b0b9ed2819588fbf81299b784a600c6ac7ccd13. There have been issues with this commit, for further informations, please see for more details.
2019-01-16elm_config: Free data returned from eet_readChristopher Michael
Summary: This patch fixes a memory leak in _elm_config_profile_name_get() where the data returned from eet_read is not being free'd, causing valgrind to spit out: ``` ==11610== 9 bytes in 1 blocks are definitely lost in loss record 16 of 572 ==11610== at 0x483777F: malloc (vg_replace_malloc.c:299) ==11610== by 0x4D9DE5B: eina_strbuf_common_string_steal (eina_strbuf_common.c:828) ==11610== by 0x4D5BC31: eina_binbuf_string_steal (eina_binbuf_template_c.x:187) ==11610== by 0x58646A1: eet_read_cipher (eet_lib.c:1991) ==11610== by 0x5864775: eet_read (eet_lib.c:2022) ==11610== by 0x49CD4D2: _elm_config_profile_name_get (elm_config.c:2207) ==11610== by 0x49CD5F8: _elm_config_profile_save (elm_config.c:2237) ==11610== by 0x49D2F6E: _elm_config_sub_init (elm_config.c:4467) ==11610== by 0x4AC0B7D: elm_quicklaunch_sub_init (elm_main.c:840) ==11610== by 0x4ABFE3A: elm_init (elm_main.c:409) ==11610== by 0x138143: main (test.c:1379) ``` @fix Reviewers: raster, cedric, ManMower Reviewed By: raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-01-15elm config - add back i var to build againCarsten Haitzler (Rasterman)
2019-01-15Revert "elm_config: remove profile name reading logic from data dir"Carsten Haitzler (Rasterman)
This reverts commit 6c4e49d970ca6046780ba1b9fb226f465d14a497. Hell no - this removes loading of system config profile. the entire premise of the patch is wrong. it isn't reading the code at all... how this got through review is rather amazing...
2019-01-08elm win - we forgot to add gl_drm to possible elm win enginesCarsten Haitzler (Rasterman)
this was forgotten it seems, so add it alongside drm engine etc. so we can do accelerated gl in the "fb" via drm too for elm app windows.
2018-12-17elm_config: fix valgrind warningsMarcel Hollerbach
buf is only initializied, if on_flush is true. Reviewed-by: Cedric BAIL <> Differential Revision:
2018-12-04elm config - fix warnings about unused vars and paramsCarsten Haitzler (Rasterman)
2018-11-29elementary: Support using no frame objectChristopher Michael
Summary: Creation of the frame object can lead to significant delays in window creation time on limited-power devices (watches, mobile, tv, etc). This patch allows setting an environment variable and config value in order to completely skip frame object creation. This shaves about 50ms from startup on an i7 8600k, so should be more substantial a saves on limited-power devices. Reviewers: kimcinoo, ManMower Reviewed By: ManMower Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2018-11-28elm_config: fix elm_config_save not to wake idle processes upWonki Kim
there is a eio_monitor which is tracking on config directory. and that is the reason why idle processes get waken up once some process call elm_config_save(). this patch fix the function not to wake idle processes up as it was before. Reviewed-by: Cedric BAIL <> Differential Revision:
2018-11-28elm_config: replace ecore_file_mv with ecore_file_cpWonki Kim
eio_monitor could miss what it is tracking on in case of calling ecore_file_mv on the tracked file. so that this patch replace move with copy. Reviewed-by: Cedric BAIL <> Differential Revision:
2018-11-28elm_config: remove profile name reading logic from data dirWonki Kim
Nothing writes any profile name on profile.cfg inside data dir This patch removes the logic. Reviewed-by: Cedric BAIL <> Differential Revision:
2018-10-11elementary: shutdown cocoa currentlyMarcel Hollerbach
Depends on D7012
2018-08-29scroller: refactory a momentum scroll animatorWonki Kim
Summary: this patch refactories a momentum scroll animator logics. 1. animation duration animating runs within a one second now. and if it needs more time to animate, it decrease intepolation progress by dividing some value. current logic makes sense however, it is not easy to read to know how it works. this patch modify current logic to calculate distance to move, and time to animate. 2. distance to move we can apply simple physics something like mass of pan and friction of scroller itself. but this patch apply just geometric seqeunce to calculate distance to go. it's more easy to customize behavior of scroller than current sine graph based one. 3. accelerate logic scroller sets 'extra_time' to accelerate a scroller for now. but this patch modify logic not to use it. however it uses current momenutum velocity as a bais of next momentum animating. @feature Reviewers: zmike, #reviewers, Hermet Reviewed By: #reviewers, Hermet Subscribers: Hermet, cedric, zmike Tags: #efl, #do_not_merge Differential Revision:
2018-08-24elm/config: use correct function to return audio mute valueMike Blumenkrantz
when setting this config value an elm function is used to store the setting internally, so it's necessary to use the elm getter function in order to correctly (and accurately) return the same state resolves test failures in elm_config Differential Revision:
2018-08-16elm/config: return false when setting audio config if multisense is disabledMike Blumenkrantz
Summary: these operations cannot be completed if the support is not built in, so return false in order to provide the correct state to the caller Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2018-06-15Clouseau: use the config flag only for the old ClouseauDaniel Zaoui
2018-05-27elm config - fix derived save crashCarsten Haitzler (Rasterman)
derived shutdown nuked the edd's and eet still decoded something... that was junk. oddly. this fixes T6879.
2018-05-24elementary: fix configuration destruction by actually calling the proper way ↵Cedric BAIL
of destruction.
2018-05-24elementary: object created with efl_add should be destroyed with efl_del.Cedric Bail
Differential Revision:
2018-05-20efl_ui_tags: Fixed bug when setting format string.Woochan Lee
Summary: efl_ui_format_string_set was not working well. Changed default format text. ("++++ %d" text for test only.) @fix Reviewers: Jaehyun_Cho, cedric, woohyun Reviewed By: Jaehyun_Cho Subscribers: zmike, cedric Tags: #efl Differential Revision:
2018-05-14elm: use build dir data when EFL_RUN_IN_TREE is setMike Blumenkrantz
Summary: this prevents tests from loading user configs and providing inconsistent results or accidentally modifying a user's config fix T6863 Depends on D6013 Reviewers: cedric, stefan_schmidt Reviewed By: stefan_schmidt Subscribers: stefan_schmidt Tags: #efl Maniphest Tasks: T6863 Differential Revision:
2018-05-02Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)Woochan Lee
Summary: Create new concept of adding items and rename widget to tags. Reviewers: Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric Differential Revision:
2018-04-25Intrudoce Efl Ui Date, Time interface and picker.Woochan Lee
Summary: Create datepicker, timepicker with one manager class(efl_datetime). Test Plan: datepicker, timepicker sample. Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee Reviewed By: Jaehyun_Cho Subscribers: cedric Differential Revision:
2018-04-24Efl.Gfx.Entity (from Efl.Gfx)Xavi Artigas
Ref Reviewed-by: Cedric Bail <>
2018-04-17eolian gen: enable constness generation on property getter implsDaniel Kolesa
This changes a lot of things all across the EFL. Previously, methods tagged @const had both their external prototype and internal impl generated with const on object, while property getters only had const on the external API. This is now changed and it all has const everywhere. Ref T6859.
2018-04-09elementary: add new config value to handle tap finger size.Woochan Lee
Summary: The tap_finger_size value of the concept is different from the finger_size value used in the past. We need a minimum value for recognize the gesture as a tap or not. Since the actual screen has different screen sizes, there is a problem that the recognition rate of tap is lowered when using the existing value(finger_size) Test Plan: elementary_test -> gesture sample. Reviewers: cedric, woohyun, Jaehyun_Cho, herb, id213sin Subscribers: cedric Differential Revision: Reviewed-by: Cedric BAIL <> Signed-off-by: Cedric BAIL <>
2018-04-05elm config - dont leak config if re-loading it again later onCarsten Haitzler (Rasterman)
delete config object and so on before the relaod
2018-03-28elm_config: add new infra for reloading config into the widget treeMarcel Hollerbach
fix T6792
2018-03-20efl: use efl_add_ref to create objects which have no parentCedric BAIL
Signed-off-by: Mike Blumenkrantz <>