devs/princeamd/enlightenment-0.17-elive
			
			
		
Carsten Haitzler 15 years ago
parent b17822ffd7
commit b70f5a0ecc
  1. 18
      configure.in
  2. 14
      data/themes/default_pager.edc
  3. 4
      src/bin/Makefile.am
  4. 59
      src/bin/e_border.c
  5. 2
      src/bin/e_border.h
  6. 34
      src/bin/e_canvas.c
  7. 1
      src/bin/e_canvas.h
  8. 46
      src/bin/e_config.c
  9. 7
      src/bin/e_config.h
  10. 14
      src/bin/e_desklock.c
  11. 46
      src/bin/e_exehist.c
  12. 30
      src/bin/e_fm_custom.c
  13. 20
      src/bin/e_fm_main.c
  14. 3
      src/bin/e_gadcon.c
  15. 1
      src/bin/e_includes.h
  16. 5
      src/bin/e_int_menus.c
  17. 81
      src/bin/e_ipc_handlers.h
  18. 15
      src/bin/e_main.c
  19. 14
      src/bin/e_menu.c
  20. 2
      src/bin/e_place.c
  21. 28
      src/bin/e_pointer.c
  22. 1
      src/bin/e_pointer.h
  23. 2
      src/bin/e_popup.c
  24. 175
      src/bin/e_powersave.c
  25. 48
      src/bin/e_powersave.h
  26. 2
      src/bin/e_utils.c
  27. 8
      src/modules/battery/e_mod_config.c
  28. 46
      src/modules/battery/e_mod_main.c
  29. 4
      src/modules/battery/e_mod_main.h
  30. 12
      src/modules/conf_performance/e_int_config_performance.c
  31. 76
      src/modules/cpufreq/e_mod_main.c
  32. 24
      src/modules/cpufreq/e_mod_main.h
  33. 1
      src/modules/cpufreq/freqset.c
  34. 33
      src/modules/pager/e_mod_config.c
  35. 158
      src/modules/pager/e_mod_main.c
  36. 1
      src/modules/pager/e_mod_main.h
  37. 12
      src/modules/temperature/Makefile.am
  38. 37
      src/modules/temperature/e_mod_config.c
  39. 462
      src/modules/temperature/e_mod_main.c
  40. 11
      src/modules/temperature/e_mod_main.h

@ -109,15 +109,27 @@ AC_SUBST(PACKAGE_DATA_DIR)
AC_SUBST(LOCALE_DIR)
AC_SUBST(PACKAGE_SYSCONF_DIR)
#######################################
## Simple X11 build/link
AC_ARG_ENABLE(simple-x11,
AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
[ want_evas_simple_x11=$enableval ]
)
x_dir=""
x_cflags=""
x_libs=""
AC_PATH_XTRA
AC_CHECK_HEADER(X11/X.h,
[
x_dir=${x_dir:-/usr/X11R6}
x_cflags=${x_cflags:--I${x_includes:-$x_dir/include}}
x_libs="${x_libs:--L${x_libraries:-$x_dir/lib}} -lX11 -lXext"
if test "x$want_evas_simple_x11" = "xyes"; then
x_libs="${x_libs} -lX11 -lXext"
else
x_dir=${x_dir:-/usr/X11R6}
x_cflags=${x_cflags:--I${x_includes:-$x_dir/include}}
x_libs="${x_libs:--L${x_libraries:-$x_dir/lib}} -lX11 -lXext"
fi
],[
AC_MSG_ERROR([Cannot find X headers and libraries.])
]

@ -10,7 +10,7 @@ images {
}
group {
name: "e/widgets/pager/popup";
name: "e/modules/pager/popup";
parts {
part {
name: "base";
@ -96,7 +96,7 @@ group {
}
}
part {
name: "text";
name: "e.text.label";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
@ -134,12 +134,12 @@ group {
rel1 {
relative: 0.0 0.0;
offset: 16 -7;
to_y: "text";
to_y: "e.text.label";
}
rel2 {
relative: 1.0 1.0;
offset: -17 6;
to_y: "text";
to_y: "e.text.label";
}
image {
normal: "e17_ibar_over_h.png";
@ -189,7 +189,7 @@ group {
}
}
part {
name: "pager";
name: "e.swallow.content";
type: SWALLOW;
clip_to: "items_clip";
description {
@ -316,7 +316,7 @@ group {
}
}
part {
name: "items";
name: "e.swallow.content";
type: SWALLOW;
clip_to: "clip";
description {
@ -647,7 +647,7 @@ group {
}
}
part {
name: "icon";
name: "e.swallow.icon";
type: SWALLOW;
description {
state: "default" 0.0;

@ -158,7 +158,8 @@ e_fm_shared.h \
e_config_data.h \
e_intl_data.h \
e_toolbar.h \
e_int_toolbar_config.h
e_int_toolbar_config.h \
e_powersave.h
enlightenment_src = \
e_user.c \
@ -290,6 +291,7 @@ e_widget_font_preview.c \
e_fm_custom.c \
e_toolbar.c \
e_int_toolbar_config.c \
e_powersave.c \
$(ENLIGHTENMENTHEADERS)
enlightenment_SOURCES = \

@ -93,7 +93,7 @@ static int _e_border_move_begin(E_Border *bd);
static int _e_border_move_end(E_Border *bd);
static void _e_border_move_update(E_Border *bd);
static int _e_border_cb_ping_timer(void *data);
static int _e_border_cb_ping_poller(void *data);
static int _e_border_cb_kill_timer(void *data);
static void _e_border_pointer_resize_begin(E_Border *bd);
@ -2887,9 +2887,10 @@ e_border_ping(E_Border *bd)
bd->ping_ok = 0;
ecore_x_netwm_ping_send(bd->client.win);
bd->ping = ecore_time_get();
if (bd->ping_timer) ecore_timer_del(bd->ping_timer);
bd->ping_timer = ecore_timer_add(e_config->ping_clients_wait,
_e_border_cb_ping_timer, bd);
if (bd->ping_poller) ecore_poller_del(bd->ping_poller);
bd->ping_poller = ecore_poller_add(ECORE_POLLER_CORE,
e_config->ping_clients_interval,
_e_border_cb_ping_poller, bd);
}
EAPI void
@ -3213,10 +3214,10 @@ _e_border_free(E_Border *bd)
ecore_timer_del(bd->kill_timer);
bd->kill_timer = NULL;
}
if (bd->ping_timer)
if (bd->ping_poller)
{
ecore_timer_del(bd->ping_timer);
bd->ping_timer = NULL;
ecore_poller_del(bd->ping_poller);
bd->ping_poller = NULL;
}
while (bd->pending_move_resize)
{
@ -5352,8 +5353,8 @@ _e_border_eval(E_Border *bd)
e_border_ping(bd);
else
{
if (bd->ping_timer) ecore_timer_del(bd->ping_timer);
bd->ping_timer = NULL;
if (bd->ping_poller) ecore_timer_del(bd->ping_poller);
bd->ping_poller = NULL;
}
bd->client.icccm.fetch.protocol = 0;
}
@ -6285,15 +6286,15 @@ _e_border_eval(E_Border *bd)
if ((bd->shaded) && (!bd->shading))
{
evas_obscured_clear(bd->bg_evas);
if (0)
{
if (bd->post_job) ecore_idle_enterer_del(bd->post_job);
bd->post_job = ecore_idle_enterer_add(_e_border_post_move_resize_job,
bd);
bd->post_move = 1;
bd->post_resize = 1;
}
else
// if (0)
// {
// if (bd->post_job) ecore_idle_enterer_del(bd->post_job);
// bd->post_job = ecore_idle_enterer_add(_e_border_post_move_resize_job,
// bd);
// bd->post_move = 1;
// bd->post_resize = 1;
// }
// else
{
ecore_x_window_move_resize(bd->win,
bd->x + bd->fx.x,
@ -6319,15 +6320,15 @@ _e_border_eval(E_Border *bd)
bd->client_inset.l, bd->client_inset.t,
bd->w - (bd->client_inset.l + bd->client_inset.r),
bd->h - (bd->client_inset.t + bd->client_inset.b));
if (0)
{
if (bd->post_job) ecore_idle_enterer_del(bd->post_job);
bd->post_job = ecore_idle_enterer_add(_e_border_post_move_resize_job,
bd);
bd->post_move = 1;
bd->post_resize = 1;
}
else
// if (0)
// {
// if (bd->post_job) ecore_idle_enterer_del(bd->post_job);
// bd->post_job = ecore_idle_enterer_add(_e_border_post_move_resize_job,
// bd);
// bd->post_move = 1;
// bd->post_resize = 1;
// }
// else
{
ecore_x_window_move_resize(bd->win,
bd->x + bd->fx.x,
@ -7467,7 +7468,7 @@ _e_border_move_update(E_Border *bd)
}
static int
_e_border_cb_ping_timer(void *data)
_e_border_cb_ping_poller(void *data)
{
E_Border *bd;
@ -7499,7 +7500,7 @@ _e_border_cb_ping_timer(void *data)
e_border_act_kill_begin(bd);
}
}
bd->ping_timer = NULL;
bd->ping_poller = NULL;
e_border_ping(bd);
return 0;
}

@ -460,7 +460,7 @@ struct _E_Border
unsigned int layer;
E_Action *cur_mouse_action;
Ecore_Timer *raise_timer;
Ecore_Timer *ping_timer;
Ecore_Timer *ping_poller;
Ecore_Timer *kill_timer;
int shape_rects_num;
Ecore_X_Rectangle *shape_rects;

@ -8,7 +8,7 @@ static int _e_canvas_cb_flush(void *data);
/* local subsystem globals */
static Evas_List *_e_canvases = NULL;
static Ecore_Timer *_e_canvas_cache_flush_timer = NULL;
static Ecore_Poller *_e_canvas_cache_flush_poller = NULL;
/* externally accessible functions */
EAPI void
@ -86,16 +86,17 @@ e_canvas_recache(void)
}
edje_file_cache_set(e_config->edje_cache);
edje_collection_cache_set(e_config->edje_collection_cache);
if (_e_canvas_cache_flush_timer)
if (_e_canvas_cache_flush_poller)
{
ecore_timer_del(_e_canvas_cache_flush_timer);
_e_canvas_cache_flush_timer = NULL;
ecore_poller_del(_e_canvas_cache_flush_poller);
_e_canvas_cache_flush_poller = NULL;
}
if (e_config->cache_flush_interval > 0.0)
if (e_config->cache_flush_poll_interval > 0)
{
_e_canvas_cache_flush_timer =
ecore_timer_add(e_config->cache_flush_interval, _e_canvas_cb_flush,
NULL);
_e_canvas_cache_flush_poller =
ecore_poller_add(ECORE_POLLER_CORE,
e_config->cache_flush_poll_interval,
_e_canvas_cb_flush, NULL);
}
}
@ -116,6 +117,7 @@ e_canvas_cache_flush(void)
}
edje_file_cache_flush();
edje_collection_cache_flush();
printf("...caches flushed.\n");
}
EAPI void
@ -134,6 +136,22 @@ e_canvas_cache_reload(void)
}
}
EAPI void
e_canvas_idle_flush(void)
{
Evas_List *l;
for (l = _e_canvases; l; l = l->next)
{
Ecore_Evas *ee;
Evas *e;
ee = l->data;
e = ecore_evas_get(ee);
evas_render_idle_flush(e);
}
}
EAPI void
e_canvas_rehint(void)
{

@ -12,6 +12,7 @@ EAPI int e_canvas_engine_decide(int engine);
EAPI void e_canvas_recache(void);
EAPI void e_canvas_cache_flush(void);
EAPI void e_canvas_cache_reload(void);
EAPI void e_canvas_idle_flush(void);
EAPI void e_canvas_rehint(void);
EAPI Ecore_Evas *e_canvas_new(int engine_hint, Ecore_X_Window win, int x, int y, int w, int h, int direct_resize, int override, Ecore_X_Window *win_ret, Ecore_X_Window *subwin_ret);

@ -12,14 +12,14 @@
EAPI E_Config *e_config = NULL;
/* local subsystem functions */
static int _e_config_save_cb(void *data);
static void _e_config_save_cb(void *data);
static void _e_config_free(void);
static int _e_config_cb_timer(void *data);
static int _e_config_eet_close_handle(Eet_File *ef, char *file);
/* local subsystem globals */
static int _e_config_save_block = 0;
static Ecore_Timer *_e_config_save_timer = NULL;
static E_Powersave_Deferred_Action *_e_config_save_defer = NULL;
static char *_e_config_profile = NULL;
static E_Config_DD *_e_config_edd = NULL;
@ -81,6 +81,7 @@ e_config_init(void)
}
else
_e_config_profile = strdup("default");
e_util_env_set("E_CONF_PROFILE", _e_config_profile);
}
else
_e_config_profile = strdup(_e_config_profile);
@ -370,7 +371,6 @@ e_config_init(void)
E_CONFIG_VAL(D, T, font_cache, INT); /**/
E_CONFIG_VAL(D, T, edje_cache, INT); /**/
E_CONFIG_VAL(D, T, edje_collection_cache, INT); /**/
E_CONFIG_VAL(D, T, cache_flush_interval, DOUBLE); /**/
E_CONFIG_VAL(D, T, zone_desks_x_count, INT); /**/
E_CONFIG_VAL(D, T, zone_desks_y_count, INT); /**/
E_CONFIG_VAL(D, T, use_virtual_roots, INT); /* should not make this a config option (for now) */
@ -449,7 +449,6 @@ e_config_init(void)
E_CONFIG_VAL(D, T, kill_process, INT); /**/
E_CONFIG_VAL(D, T, kill_timer_wait, DOUBLE); /**/
E_CONFIG_VAL(D, T, ping_clients, INT); /**/
E_CONFIG_VAL(D, T, ping_clients_wait, DOUBLE); /**/
E_CONFIG_VAL(D, T, transition_start, STR); /**/
E_CONFIG_VAL(D, T, transition_desk, STR); /**/
E_CONFIG_VAL(D, T, transition_change, STR); /**/
@ -575,6 +574,9 @@ e_config_init(void)
E_CONFIG_VAL(D, T, menu_favorites_show, INT);
E_CONFIG_VAL(D, T, menu_apps_show, INT);
E_CONFIG_VAL(D, T, ping_clients_interval, INT);
E_CONFIG_VAL(D, T, cache_flush_poll_interval, INT);
e_config = e_config_domain_load("e", _e_config_edd);
if (e_config)
{
@ -631,7 +633,6 @@ e_config_init(void)
e_config->font_cache = 512;
e_config->edje_cache = 32;
e_config->edje_collection_cache = 64;
e_config->cache_flush_interval = 60.0;
e_config->zone_desks_x_count = 4;
e_config->zone_desks_y_count = 1;
e_config->use_virtual_roots = 0;
@ -689,7 +690,6 @@ e_config_init(void)
e_config->kill_process = 1;
e_config->kill_timer_wait = 10.0;
e_config->ping_clients = 1;
e_config->ping_clients_wait = 10.0;
e_config->transition_start = NULL;
e_config->transition_desk = evas_stringshare_add("vswipe");
e_config->transition_change = evas_stringshare_add("crossfade");
@ -1477,6 +1477,11 @@ e_config_init(void)
e_config->show_desktop_icons = 1;
IFCFGEND;
IFCFG(0x0123);
e_config->ping_clients_interval = 128;
e_config->cache_flush_poll_interval = 512;
IFCFGEND;
e_config->config_version = E_CONFIG_FILE_VERSION;
#if 0 /* example of new config */
@ -1497,7 +1502,7 @@ e_config_init(void)
E_CONFIG_LIMIT(e_config->font_cache, 0, 32 * 1024);
E_CONFIG_LIMIT(e_config->edje_cache, 0, 256);
E_CONFIG_LIMIT(e_config->edje_collection_cache, 0, 512);
E_CONFIG_LIMIT(e_config->cache_flush_interval, 0.0, 600.0);
E_CONFIG_LIMIT(e_config->cache_flush_poll_interval, 8, 32768);
E_CONFIG_LIMIT(e_config->zone_desks_x_count, 1, 64);
E_CONFIG_LIMIT(e_config->zone_desks_y_count, 1, 64);
E_CONFIG_LIMIT(e_config->show_desktop_icons, 0, 1);
@ -1545,7 +1550,6 @@ e_config_init(void)
E_CONFIG_LIMIT(e_config->kill_process, 0, 1);
E_CONFIG_LIMIT(e_config->kill_timer_wait, 0.0, 120.0);
E_CONFIG_LIMIT(e_config->ping_clients, 0, 1);
E_CONFIG_LIMIT(e_config->ping_clients_wait, 0.0, 120.0);
E_CONFIG_LIMIT(e_config->move_info_follows, 0, 1);
E_CONFIG_LIMIT(e_config->resize_info_follows, 0, 1);
E_CONFIG_LIMIT(e_config->move_info_visible, 0, 1);
@ -1609,6 +1613,8 @@ e_config_init(void)
E_CONFIG_LIMIT(e_config->menu_favorites_show, 0, 1);
E_CONFIG_LIMIT(e_config->menu_apps_show, 0, 1);
E_CONFIG_LIMIT(e_config->ping_clients_interval, 4, 1024);
/* FIXME: disabled auto apply because it causes problems */
e_config->cfgdlg_auto_apply = 0;
@ -1649,10 +1655,10 @@ e_config_shutdown(void)
EAPI int
e_config_save(void)
{
if (_e_config_save_timer)
if (_e_config_save_defer)
{
ecore_timer_del(_e_config_save_timer);
_e_config_save_timer = NULL;
e_powersave_deferred_action_del(_e_config_save_defer);
_e_config_save_defer = NULL;
}
_e_config_save_cb(NULL);
return e_config_domain_save("e", _e_config_edd, e_config);
@ -1661,10 +1667,10 @@ e_config_save(void)
EAPI void
e_config_save_flush(void)
{
if (_e_config_save_timer)
if (_e_config_save_defer)
{
ecore_timer_del(_e_config_save_timer);
_e_config_save_timer = NULL;
e_powersave_deferred_action_del(_e_config_save_defer);
_e_config_save_defer = NULL;
_e_config_save_cb(NULL);
}
}
@ -1672,8 +1678,10 @@ e_config_save_flush(void)
EAPI void
e_config_save_queue(void)
{
if (_e_config_save_timer) ecore_timer_del(_e_config_save_timer);
_e_config_save_timer = ecore_timer_add(0.25, _e_config_save_cb, NULL);
if (_e_config_save_defer)
e_powersave_deferred_action_del(_e_config_save_defer);
_e_config_save_defer = e_powersave_deferred_action_add(_e_config_save_cb,
NULL);
}
EAPI char *
@ -1687,6 +1695,7 @@ e_config_profile_set(char *prof)
{
E_FREE(_e_config_profile);
_e_config_profile = strdup(prof);
e_util_env_set("E_CONF_PROFILE", _e_config_profile);
}
EAPI Evas_List *
@ -1970,14 +1979,13 @@ e_config_binding_wheel_match(E_Config_Binding_Wheel *eb_in)
}
/* local subsystem functions */
static int
static void
_e_config_save_cb(void *data)
{
e_config_profile_save();
e_module_save_all();
e_config_domain_save("e", _e_config_edd, e_config);
_e_config_save_timer = NULL;
return 0;
_e_config_save_defer = NULL;
}
static void

@ -33,7 +33,7 @@ typedef struct _E_Event_Config_Icon_Theme E_Event_Config_Icon_Theme;
/* increment this whenever a new set of config values are added but the users
* config doesn't need to be wiped - simply new values need to be put in
*/
#define E_CONFIG_FILE_GENERATION 0x0122
#define E_CONFIG_FILE_GENERATION 0x0123
#define E_CONFIG_FILE_VERSION ((E_CONFIG_FILE_EPOCH << 16) | E_CONFIG_FILE_GENERATION)
#define E_EVAS_ENGINE_DEFAULT 0
@ -74,7 +74,6 @@ struct _E_Config
int font_cache; // GUI
int edje_cache; // GUI
int edje_collection_cache; // GUI
double cache_flush_interval; // GUI
int zone_desks_x_count; // GUI
int zone_desks_y_count; // GUI
int use_virtual_roots; // NO GUI - maybe remove?
@ -154,7 +153,6 @@ struct _E_Config
int kill_process;
double kill_timer_wait;
int ping_clients;
double ping_clients_wait;
const char *transition_start; // GUI
const char *transition_desk; // GUI
const char *transition_change; // GUI
@ -279,6 +277,9 @@ struct _E_Config
int desk_auto_switch; // GUI;
int thumb_nice;
int ping_clients_interval;
int cache_flush_poll_interval; // GUI
};
struct _E_Config_Module

@ -59,7 +59,7 @@ static pid_t _e_desklock_child_pid = -1;
#endif
static Ecore_Exe *_e_custom_desklock_exe = NULL;
static Ecore_Event_Handler *_e_custom_desklock_exe_handler = NULL;
static Ecore_Timer *_e_desklock_idle_timer = NULL;
static Ecore_Poller *_e_desklock_idle_poller = NULL;
static int _e_desklock_user_idle = 0;
/***********************************************************************/
@ -70,7 +70,7 @@ static int _e_desklock_cb_mouse_up(void *data, int type, void *event);
static int _e_desklock_cb_mouse_wheel(void *data, int type, void *event);
static int _e_desklock_cb_mouse_move(void *data, int type, void *event);
static int _e_desklock_cb_custom_desklock_exit(void *data, int type, void *event);
static int _e_desklock_cb_idle_timer(void *data);
static int _e_desklock_cb_idle_poller(void *data);
static void _e_desklock_passwd_update(void);
static void _e_desklock_backspace(void);
@ -93,9 +93,9 @@ EAPI int E_EVENT_DESKLOCK = 0;
EAPI int
e_desklock_init(void)
{
/* A timer to tick every second, watching for an idle user */
_e_desklock_idle_timer = ecore_timer_add(1.0,
_e_desklock_cb_idle_timer, NULL);
/* A poller to tick every 256 ticks, watching for an idle user */
_e_desklock_idle_poller = ecore_poller_add(ECORE_POLLER_CORE, 256,
_e_desklock_cb_idle_poller, NULL);
if (e_config->desklock_background)
e_filereg_register(e_config->desklock_background);
@ -841,7 +841,7 @@ _e_desklock_cb_custom_desklock_exit(void *data, int type, void *event)
}
static int
_e_desklock_cb_idle_timer(void *data)
_e_desklock_cb_idle_poller(void *data)
{
if (e_config->desklock_autolock_idle)
{
@ -870,6 +870,6 @@ _e_desklock_cb_idle_timer(void *data)
_e_desklock_user_idle = 0;
}
/* Make sure our timer persists. */
/* Make sure our poller persists. */
return 1;
}

@ -3,8 +3,6 @@
*/
#include "e.h"
/* currently default bind is alt+` buf alt+space has been suggested */
/* local subsystem functions */
typedef struct _E_Exehist E_Exehist;
typedef struct _E_Exehist_Item E_Exehist_Item;
@ -27,13 +25,14 @@ static void _e_exehist_load(void);
static void _e_exehist_clear(void);
static void _e_exehist_unload(void);
static void _e_exehist_limit(void);
static int _e_exehist_cb_unload(void *data);
static void _e_exehist_cb_unload(void *data);
/* local subsystem globals */
static E_Config_DD *_e_exehist_config_edd = NULL;
static E_Config_DD *_e_exehist_config_item_edd = NULL;
static E_Exehist *_e_exehist = NULL;
static Ecore_Timer *_e_exehist_unload_timer = NULL;
static E_Powersave_Deferred_Action *_e_exehist_unload_defer = NULL;
static int _e_exehist_changes = 0;
/* externally accessible functions */
EAPI int
@ -61,7 +60,12 @@ e_exehist_init(void)
EAPI int
e_exehist_shutdown(void)
{
_e_exehist_unload();
if (_e_exehist_unload_defer)
{
e_powersave_deferred_action_del(_e_exehist_unload_defer);
_e_exehist_unload_defer = NULL;
}
_e_exehist_cb_unload(NULL);
E_CONFIG_DD_FREE(_e_exehist_config_item_edd);
E_CONFIG_DD_FREE(_e_exehist_config_edd);
return 1;
@ -85,7 +89,7 @@ e_exehist_add(const char *launch_method, const char *exe)
ei->exetime = ecore_time_get();
_e_exehist->history = evas_list_append(_e_exehist->history, ei);
_e_exehist_limit();
e_config_domain_save("exehist", _e_exehist_config_edd, _e_exehist);
_e_exehist_changes++;
_e_exehist_unload_queue();
}
@ -95,7 +99,7 @@ e_exehist_clear(void)
_e_exehist_load();
if (!_e_exehist) return;
_e_exehist_clear();
e_config_domain_save("exehist", _e_exehist_config_edd, _e_exehist);
_e_exehist_changes++;
_e_exehist_unload_queue();
}
@ -114,6 +118,7 @@ e_exehist_popularity_get(const char *exe)
ei = l->data;
if ((ei->exe) && (!strcmp(exe, ei->exe))) count++;
}
_e_exehist_unload_queue();
return count;
}
@ -129,8 +134,13 @@ e_exehist_newest_run_get(const char *exe)
E_Exehist_Item *ei;
ei = l->data;
if ((ei->exe) && (!strcmp(exe, ei->exe))) return ei->exetime;
if ((ei->exe) && (!strcmp(exe, ei->exe)))
{
_e_exehist_unload_queue();
}
return ei->exetime;
}
_e_exehist_unload_queue();
return 0.0;
}
@ -169,6 +179,7 @@ e_exehist_list_get(void)
}
if (count > max) break;
}
_e_exehist_unload_queue();
return list;
}
@ -200,6 +211,7 @@ e_exehist_mime_desktop_add(const char *mime, Efreet_Desktop *desktop)
if (ei->launch_method) evas_stringshare_del(ei->launch_method);
free(ei);
_e_exehist->mimes = evas_list_remove_list(_e_exehist->mimes, l);
_e_exehist_changes++;
break;
}
}
@ -214,7 +226,7 @@ e_exehist_mime_desktop_add(const char *mime, Efreet_Desktop *desktop)
ei->exetime = ecore_time_get();
_e_exehist->mimes = evas_list_append(_e_exehist->mimes, ei);
_e_exehist_limit();
e_config_domain_save("exehist", _e_exehist_config_edd, _e_exehist);
_e_exehist_changes++;
_e_exehist_unload_queue();
}
@ -250,8 +262,10 @@ e_exehist_mime_desktop_get(const char *mime)
static void
_e_exehist_unload_queue(void)
{
if (_e_exehist_unload_timer) ecore_timer_del(_e_exehist_unload_timer);
_e_exehist_unload_timer = ecore_timer_add(2.0, _e_exehist_cb_unload, NULL);
if (_e_exehist_unload_defer)
e_powersave_deferred_action_del(_e_exehist_unload_defer);
_e_exehist_unload_defer =
e_powersave_deferred_action_add(_e_exehist_cb_unload, NULL);
}
static void
@ -331,10 +345,14 @@ _e_exehist_limit(void)
}
}
static int
static void
_e_exehist_cb_unload(void *data)
{
if (_e_exehist_changes)
{
e_config_domain_save("exehist", _e_exehist_config_edd, _e_exehist);
_e_exehist_changes = 0;
}
_e_exehist_unload();
_e_exehist_unload_timer = NULL;
return 0;
_e_exehist_unload_defer = NULL;
}

@ -12,9 +12,9 @@ static Evas_Bool _e_fm2_custom_file_hash_foreach_save(Evas_Hash *hash, const cha
static void _e_fm2_custom_file_info_load(void);
static void _e_fm2_custom_file_info_save(void);
static void _e_fm2_custom_file_info_free(void);
static int _e_fm2_custom_file_cb_timer_save(void *data);
static void _e_fm2_custom_file_cb_defer_save(void *data);
static Ecore_Timer *_e_fm2_flush_timer = NULL;
static E_Powersave_Deferred_Action*_e_fm2_flush_defer = NULL;
static Eet_File *_e_fm2_custom_file = NULL;
static Eet_Data_Descriptor *_e_fm2_custom_file_edd = NULL;
static Evas_Hash *_e_fm2_custom_hash = NULL;
@ -75,8 +75,8 @@ e_fm2_custom_file_shutdown(void)
{
_e_fm2_custom_file_info_save();
_e_fm2_custom_file_info_free();
if (_e_fm2_flush_timer) ecore_timer_del(_e_fm2_flush_timer);
_e_fm2_flush_timer = NULL;
if (_e_fm2_flush_defer) e_powersave_deferred_action_del(_e_fm2_flush_defer);
_e_fm2_flush_defer = NULL;
eet_data_descriptor_free(_e_fm2_custom_file_edd);
_e_fm2_custom_file_edd = NULL;
}
@ -88,7 +88,7 @@ e_fm2_custom_file_get(const char *path)
_e_fm2_custom_file_info_load();
if (!_e_fm2_custom_file) return NULL;
if (_e_fm2_flush_timer) e_fm2_custom_file_flush();
if (_e_fm2_flush_defer) e_fm2_custom_file_flush();
cf = evas_hash_find(_e_fm2_custom_hash, path);
return cf;
}
@ -98,7 +98,7 @@ e_fm2_custom_file_set(const char *path, E_Fm2_Custom_File *cf)
{
_e_fm2_custom_file_info_load();
if (!_e_fm2_custom_file) return;
if (_e_fm2_flush_timer) e_fm2_custom_file_flush();
if (_e_fm2_flush_defer) e_fm2_custom_file_flush();
if (evas_hash_find(_e_fm2_custom_hash, path) != cf)
{
E_Fm2_Custom_File *cf2;
@ -125,7 +125,7 @@ e_fm2_custom_file_del(const char *path)
_e_fm2_custom_file_info_load();
if (!_e_fm2_custom_file) return;
if (_e_fm2_flush_timer) e_fm2_custom_file_flush();
if (_e_fm2_flush_defer) e_fm2_custom_file_flush();
list = _e_fm2_custom_hash_key_base_list(_e_fm2_custom_hash, path);
if (list)
@ -155,7 +155,7 @@ e_fm2_custom_file_rename(const char *path, const char *new_path)
_e_fm2_custom_file_info_load();
if (!_e_fm2_custom_file) return;
if (_e_fm2_flush_timer) e_fm2_custom_file_flush();
if (_e_fm2_flush_defer) e_fm2_custom_file_flush();
cf2 = evas_hash_find(_e_fm2_custom_hash, path);
if (cf2)
{
@ -203,8 +203,11 @@ EAPI void
e_fm2_custom_file_flush(void)
{
if (!_e_fm2_custom_file) return;
if (_e_fm2_flush_timer) ecore_timer_del(_e_fm2_flush_timer);
_e_fm2_flush_timer = ecore_timer_add(1.0, _e_fm2_custom_file_cb_timer_save, NULL);
if (_e_fm2_flush_defer)
e_powersave_deferred_action_del(_e_fm2_flush_defer);
_e_fm2_flush_defer =
e_powersave_deferred_action_add(_e_fm2_custom_file_cb_defer_save, NULL);
}
/**/
@ -372,11 +375,10 @@ _e_fm2_custom_file_info_free(void)
}
}
static int
_e_fm2_custom_file_cb_timer_save(void *data)
static void
_e_fm2_custom_file_cb_defer_save(void *data)
{
_e_fm2_custom_file_info_save();
_e_fm2_custom_file_info_free();
_e_fm2_flush_timer = NULL;
return 0;
_e_fm2_flush_defer = NULL;
}

@ -280,7 +280,7 @@ _e_dbus_cb_dev_all(void *user_data, void *reply_data, DBusError *error)
ecore_list_first_goto(ret->strings);
while ((device = ecore_list_next(ret->strings)))
{
// printf("DB INIT DEV+: %s\n", device);
printf("DB INIT DEV+: %s\n", device);
char *udi;
udi = device;
@ -308,7 +308,7 @@ _e_dbus_cb_dev_store(void *user_data, void *reply_data, DBusError *error)
ecore_list_first_goto(ret->strings);
while ((device = ecore_list_next(ret->strings)))
{
// printf("DB STORE+: %s\n", device);
printf("DB STORE+: %s\n", device);
e_storage_add(device);
}
}
@ -330,7 +330,7 @@ _e_dbus_cb_dev_vol(void *user_data, void *reply_data, DBusError *error)
ecore_list_first_goto(ret->strings);
while ((device = ecore_list_next(ret->strings)))
{
// printf("DB VOL+: %s\n", device);
printf("DB VOL+: %s\n", device);
e_volume_add(device);
}
}
@ -349,7 +349,7 @@ _e_dbus_cb_store_is(void *user_data, void *reply_data, DBusError *error)
if (ret && ret->boolean)
{
// printf("DB STORE IS+: %s\n", udi);
printf("DB STORE IS+: %s\n", udi);
e_storage_add(udi);
}
@ -362,7 +362,7 @@ _e_dbus_cb_vol_is(void *user_data, void *reply_data, DBusError *error)
{
char *udi = user_data;
E_Hal_Device_Query_Capability_Return *ret = reply_data;
if (dbus_error_is_set(error))
{
dbus_error_free(error);
@ -371,7 +371,7 @@ _e_dbus_cb_vol_is(void *user_data, void *reply_data, DBusError *error)
if (ret && ret->boolean)
{
// printf("DB VOL IS+: %s\n", udi);
printf("DB VOL IS+: %s\n", udi);
e_volume_add(udi);
}
@ -389,7 +389,7 @@ _e_dbus_cb_dev_add(void *data, DBusMessage *msg)
dbus_error_init(&err);
dbus_message_get_args(msg, &err, DBUS_TYPE_STRING, &udi, DBUS_TYPE_INVALID);
udi = strdup(udi);
// printf("DB DEV+: %s\n", udi);
printf("DB DEV+: %s\n", udi);
ret = e_hal_device_query_capability(_e_dbus_conn, udi, "storage",
_e_dbus_cb_store_is, strdup(udi));
e_hal_device_query_capability(_e_dbus_conn, udi, "volume",
@ -407,7 +407,7 @@ _e_dbus_cb_dev_del(void *data, DBusMessage *msg)
dbus_message_get_args(msg,
&err, DBUS_TYPE_STRING,
&udi, DBUS_TYPE_INVALID);
// printf("DB DEV-: %s\n", udi);
printf("DB DEV-: %s\n", udi);
e_storage_del(udi);
e_volume_del(udi);
}
@ -426,7 +426,7 @@ _e_dbus_cb_cap_add(void *data, DBusMessage *msg)
&capability, DBUS_TYPE_INVALID);
if (!strcmp(capability, "storage"))
{
// printf("DB STORE CAP+: %s\n", udi);
printf("DB STORE CAP+: %s\n", udi);
e_storage_add(udi);
}
}
@ -1485,6 +1485,7 @@ _e_file_add_mod(E_Dir *ed, const char *path, int op, int listing)
}
// printf("MOD %s %3.3f\n", path, ecore_time_get());
lnk = ecore_file_readlink(path);
memset(&st, 0, sizeof(struct stat));
if (stat(path, &st) == -1)
{
if ((path[0] == 0) || (lnk)) broken_lnk = 1;
@ -1848,6 +1849,7 @@ _e_cb_fop_cp_idler(void *data)
char buf[PATH_MAX], buf2[PATH_MAX], *lnk;
fop = (E_Fop *)data;
memset(&st, 0, sizeof(struct stat));
if (!fop->data)
{
fd = calloc(1, sizeof(struct Fop_Data));

@ -453,7 +453,8 @@ e_gadcon_populate_class(E_Gadcon *gc, const E_Gadcon_Client_Class *cc)
cf_gcc = l->data;
if ((cf_gcc->name) && (cc->name) &&
(!strcmp(cf_gcc->name, cc->name)))
(!strcmp(cf_gcc->name, cc->name)) &&
(cf_gcc->id) && (cf_gcc->style))
{
E_Gadcon_Client *gcc;

@ -131,3 +131,4 @@
#include "e_msgbus.h"
#include "e_toolbar.h"
#include "e_int_toolbar_config.h"
#include "e_powersave.h"

@ -12,6 +12,7 @@ struct _Main_Data
E_Menu *all_apps;
E_Menu *desktops;
E_Menu *clients;
E_Menu *enlightenment;
E_Menu *config;
E_Menu *lost_clients;
E_Menu *sys;
@ -162,6 +163,7 @@ e_int_menus_main_new(void)
if (l) _e_int_menus_augmentation_add(m, l);
subm = e_menu_new();
dat->enlightenment = subm;
mi = e_menu_item_new(m);
e_menu_item_label_set(mi, _("Enlightenment"));
e_util_menu_item_edje_icon_set(mi, "enlightenment/e");
@ -415,6 +417,7 @@ _e_int_menus_main_del_hook(void *obj)
if (dat->all_apps) e_object_del(E_OBJECT(dat->all_apps));
e_object_del(E_OBJECT(dat->desktops));
e_object_del(E_OBJECT(dat->clients));
e_object_del(E_OBJECT(dat->enlightenment));
e_object_del(E_OBJECT(dat->config));
if (dat->lost_clients) e_object_del(E_OBJECT(dat->lost_clients));
e_object_del(E_OBJECT(dat->sys));
@ -473,6 +476,8 @@ _e_int_menus_main_lock_defer_cb(void *data)
static void
_e_int_menus_main_lock(void *data, E_Menu *m, E_Menu_Item *mi)
{
/* this is correct - should be after other idle enteres have run - i.e.
* after e_menu's idler_enterer has been run */
ecore_idle_enterer_add(_e_int_menus_main_lock_defer_cb, m->zone);
}

@ -2079,47 +2079,6 @@ break;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_CACHE_FLUSH_INTERVAL_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-cache-flush-interval-set", 1, "Set the cache flush interval (sec) (0.0 = off)", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_DOUBLE(atof(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_DOUBLE(dbl, HDL);
e_config->cache_flush_interval = dbl;
E_CONFIG_LIMIT(e_config->cache_flush_interval, 0.0, 600.0);
e_canvas_recache();
SAVE;
END_DOUBLE;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_CACHE_FLUSH_INTERVAL_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-cache-flush-interval-get", 0, "Get the interval between cache flushed (sec)", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_DOUBLE(e_config->cache_flush_interval, E_IPC_OP_CACHE_FLUSH_INTERVAL_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_CACHE_FLUSH_INTERVAL_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_DOUBLE(fint, HDL);
printf("REPLY: %3.3f\n", fint);
END_DOUBLE;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_MENUS_FAST_MOVE_THRESHOLD_SET
#if (TYPE == E_REMOTE_OPTIONS)
@ -4559,46 +4518,6 @@ break;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_PING_CLIENTS_WAIT_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-ping-clients-wait-set", 1, "Set client ping interval (0.0-120.0)", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_DOUBLE(atof(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_DOUBLE(val, HDL);
e_config->ping_clients_wait = val;
E_CONFIG_LIMIT(e_config->ping_clients_wait, 0.0, 120.0);
SAVE;
END_DOUBLE;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_PING_CLIENTS_WAIT_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-ping-clients-wait-get", 0, "Get client ping interval", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_DOUBLE(e_config->ping_clients_wait, E_IPC_OP_PING_CLIENTS_WAIT_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_PING_CLIENTS_WAIT_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_DOUBLE(val, HDL);
printf("REPLY: %3.3f\n", val);
END_DOUBLE;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSITION_START_SET
#if (TYPE == E_REMOTE_OPTIONS)

@ -357,7 +357,7 @@ main(int argc, char **argv)
}
/* an idle enterer to be called before all others */
_e_main_idle_enterer_before = ecore_idle_enterer_add(_e_main_cb_idler_before, NULL);
_e_main_idle_enterer_before = ecore_idle_enterer_before_add(_e_main_cb_idler_before, NULL);
TS("x connect");
/* init x */
@ -862,8 +862,17 @@ main(int argc, char **argv)
}
_e_main_shutdown_push(e_order_shutdown);
e_init_status_set(_("Set Up Powersave modes"));
TS("powersave");
if (!e_powersave_init())
{
e_error_message_show(_("Enlightenment cannot set up its powersave modes."));
_e_main_shutdown(-1);
}
_e_main_shutdown_push(e_powersave_shutdown);
TS("add idle enterers");
/* add in a handler that just before we go idle we flush x */
/* add in a handler that just before we go idle we flush x - will happen after ecore_evas's idle rendering as it's after ecore_evas_init() */
_e_main_idle_enterer_flusher = ecore_idle_enterer_add(_e_main_cb_x_flusher, NULL);
e_managers_keys_grab();
@ -926,6 +935,8 @@ main(int argc, char **argv)
starting = 0;
/* start our main loop */
ecore_main_loop_begin();
e_canvas_idle_flush();
stopping = 1;
/* ask all modules to save their config and then shutdown */

@ -82,7 +82,7 @@ static int _e_menu_cb_mouse_down (void *data, int type, void *e
static int _e_menu_cb_mouse_up (void *data, int type, void *event);
static int _e_menu_cb_mouse_move (void *data, int type, void *event);
static int _e_menu_cb_mouse_wheel (void *data, int type, void *event);
static int _e_menu_cb_scroll_timer (void *data);
static int _e_menu_cb_scroll_animator (void *data);
static int _e_menu_cb_window_shape (void *data, int ev_type, void *ev);
static void _e_menu_cb_item_submenu_post_default (void *data, E_Menu *m, E_Menu_Item *mi);
@ -98,7 +98,7 @@ static Ecore_X_Time _e_menu_activate_time = 0;
static int _e_menu_activate_floating = 0;
static int _e_menu_activate_maybe_drag = 0;
static int _e_menu_activate_dragging = 0;
static Ecore_Timer *_e_menu_scroll_timer = NULL;
static Ecore_Animator *_e_menu_scroll_animator = NULL;
static double _e_menu_scroll_start = 0.0;
static int _e_menu_x = 0;
static int _e_menu_y = 0;
@ -2394,9 +2394,9 @@ _e_menu_mouse_autoscroll_check(void)
_e_menu_autoscroll_x = autoscroll_x;
_e_menu_autoscroll_y = autoscroll_y;
if ((!autoscroll_x) && (!autoscroll_y)) return;
if (_e_menu_scroll_timer) return;
_e_menu_scroll_timer = ecore_timer_add(1.0 / 60.0,
_e_menu_cb_scroll_timer, NULL);
if (_e_menu_scroll_animator) return;
_e_menu_scroll_animator = ecore_animator_add(_e_menu_cb_scroll_animator,
NULL);
_e_menu_scroll_start = ecore_time_get();
}
@ -2786,7 +2786,7 @@ _e_menu_cb_mouse_wheel(void *data, int type, void *event)
}
static int
_e_menu_cb_scroll_timer(void *data)
_e_menu_cb_scroll_animator(void *data)
{
double t, dt;
double dx, dy;
@ -2829,7 +2829,7 @@ _e_menu_cb_scroll_timer(void *data)
_e_menu_mouse_autoscroll_check();
if ((_e_menu_autoscroll_x == 0) && (_e_menu_autoscroll_y == 0))
{
_e_menu_scroll_timer = NULL;
_e_menu_scroll_animator = NULL;
return 0;
}
return 1;

@ -442,7 +442,7 @@ e_place_zone_region_smart(E_Zone *zone, Evas_List *skiplist, int x, int y, int w
if ((*ry + h) > zone->h) *ry = zone->h - h;
if (*ry < 0) *ry = 0;
printf("0 - PLACE %i %i | %ix%i\n", *rx, *ry, w, h);
// printf("0 - PLACE %i %i | %ix%i\n", *rx, *ry, w, h);