diff --git a/configure.in b/configure.in index 1c1e3c888..c4ee8ce4d 100644 --- a/configure.in +++ b/configure.in @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(configure.in) -AM_INIT_AUTOMAKE(enlightenment, 0.17.0) +AM_INIT_AUTOMAKE(enlightenment, 0.17.pre_0) AM_CONFIG_HEADER(config.h) AC_ISC_POSIX diff --git a/e.spec b/e.spec index 2af9c5987..0e2641648 100644 --- a/e.spec +++ b/e.spec @@ -1,5 +1,5 @@ # Note that this is NOT a relocatable package -%define ver 0.17.0 +%define ver 0.17.pre_0 %define rel 1 %define prefix /usr/local diff --git a/src/actions.c b/src/actions.c index 5a7e91138..7ddaed9b3 100644 --- a/src/actions.c +++ b/src/actions.c @@ -1059,6 +1059,42 @@ e_act_max_start (void *o, E_Action *a, void *data, int x, int y, int rx, int ry) E_Border *b; b = o; + if (b->current.shaded > 0) return; + if ((b->mode.move) || (b->mode.resize)) return; + b->mode.move = 0; + b->mode.resize = 0; + if (b->max.is) + { + b->current.requested.x = b->max.x; + b->current.requested.y = b->max.y; + b->current.requested.w = b->max.w; + b->current.requested.h = b->max.h; + b->changed = 1; + b->max.is = 0; + e_border_adjust_limits(b); + b->current.requested.x = b->current.x; + b->current.requested.y = b->current.y; + b->current.requested.w = b->current.w; + b->current.requested.h = b->current.h; + } + else + { + b->max.x = b->current.x; + b->max.y = b->current.y; + b->max.w = b->current.w; + b->max.h = b->current.h; + b->current.requested.x = 0; + b->current.requested.y = 0; + b->current.requested.w = b->desk->real.w; + b->current.requested.h = b->desk->real.h; + b->changed = 1; + b->max.is = 1; + e_border_adjust_limits(b); + b->current.requested.x = b->current.x; + b->current.requested.y = b->current.y; + b->current.requested.w = b->current.w; + b->current.requested.h = b->current.h; + } return; UN(a); UN(data); diff --git a/src/e.h b/src/e.h index ddff0f0ac..dcfa66d19 100644 --- a/src/e.h +++ b/src/e.h @@ -213,6 +213,10 @@ struct _E_Border int move, resize; } mode; + struct { + int x, y, w, h; + int is; + } max; int ignore_unmap; int shape_changed; @@ -338,8 +342,31 @@ struct _E_Icon { OBJ_PROPERTIES; + char *file; + char *dir; + E_View *view; - int changed; + int x, y, w, h; + struct { + int text_location; + int show_text; + int show_icon; + } options; + struct { + Evas_Object icon; + Evas_Object filename; + Evas_Object sel1, sel2; + Ebits_Object sel_icon; + Ebits_Object sel_text; + Ebits_Object base_icon; + Ebits_Object base_text; + } obj; + struct { + int clicked; + int selected; + int hilited; + } state; + int changed; }; struct _E_Menu diff --git a/src/icons.c b/src/icons.c index 139681297..49a4aec02 100644 --- a/src/icons.c +++ b/src/icons.c @@ -3,6 +3,7 @@ void e_icon_free(E_Icon *icon) { + FREE(icon); } E_Icon * @@ -15,3 +16,8 @@ e_icon_new(void) OBJ_INIT(icon, e_icon_free); return icon; } + +void +e_icon_calulcate_geometry(E_Icon *icon) +{ +}