diff --git a/data/backgrounds/default.bg.db b/data/backgrounds/default.bg.db index 7261cf4ac..3bf096f17 100644 Binary files a/data/backgrounds/default.bg.db and b/data/backgrounds/default.bg.db differ diff --git a/data/backgrounds/view.bg.db b/data/backgrounds/view.bg.db new file mode 100644 index 000000000..1eb059de4 Binary files /dev/null and b/data/backgrounds/view.bg.db differ diff --git a/src/desktops.c b/src/desktops.c index f4d330e33..e4594e1fb 100644 --- a/src/desktops.c +++ b/src/desktops.c @@ -178,7 +178,6 @@ e_desktops_init_file_display(E_Desktop *desk) sprintf(buf, "%s/default.bg.db", e_config_get("backgrounds")); desk->view->bg = e_background_load(buf); - printf("**** load %s = %p\n", buf, desk->view->bg); } /* fixme: later */ @@ -207,6 +206,7 @@ e_desktops_new(void) desk->win.main = e_window_override_new(e_base_win, 0, 0, screen_w, screen_h); desk->win.container = e_window_override_new(desk->win.main, 0, 0, screen_w, screen_h); + e_window_lower(desk->win.container); e_window_show(desk->win.container); diff --git a/src/view.c b/src/view.c index de7cb74ba..29d778b07 100644 --- a/src/view.c +++ b/src/view.c @@ -2,6 +2,7 @@ #include "view.h" #include "background.h" +#include "desktops.h" #include "config.h" #include "border.h" #include "menu.h" @@ -552,7 +553,7 @@ e_view_icon_exec(E_Icon *ic) { char buf[4096]; - sprintf(buf, "%s/default.bg.db", e_config_get("backgrounds")); + sprintf(buf, "%s/view.bg.db", e_config_get("backgrounds")); v->bg = e_background_load(buf); } sprintf(buf, "%s/%s", ic->view->dir, ic->file); @@ -2308,8 +2309,10 @@ e_view_handle_fs(EfsdEvent *ev) ok = 0; v = l->data; + if (v->is_desktop) continue; if (v->geom_get.x == cmd) { + printf("Got X\n"); v->geom_get.x = 0; if (efsd_metadata_get_type(ev) == EFSD_INT) { @@ -2317,18 +2320,22 @@ e_view_handle_fs(EfsdEvent *ev) { if (efsd_metadata_get_int(ev, &(v->location.x))) - e_window_move(v->win.base, - v->location.x, - v->location.y); - e_window_set_xy_hints(v->win.base, - v->location.x, - v->location.y); + { + printf("mov x\n"); + e_window_move(v->win.base, + v->location.x, + v->location.y); + e_window_set_xy_hints(v->win.base, + v->location.x, + v->location.y); + } } } ok = 1; } else if (v->geom_get.y == cmd) { + printf("Got Y\n"); v->geom_get.y = 0; if (efsd_metadata_get_type(ev) == EFSD_INT) { @@ -2336,18 +2343,22 @@ e_view_handle_fs(EfsdEvent *ev) { if (efsd_metadata_get_int(ev, &(v->location.y))) - e_window_move(v->win.base, - v->location.x, - v->location.y); - e_window_set_xy_hints(v->win.base, - v->location.x, - v->location.y); + { + printf("mov y\n"); + e_window_move(v->win.base, + v->location.x, + v->location.y); + e_window_set_xy_hints(v->win.base, + v->location.x, + v->location.y); + } } } ok = 1; } else if (v->geom_get.w == cmd) { + printf("Got W\n"); v->geom_get.w = 0; if (efsd_metadata_get_type(ev) == EFSD_INT) { @@ -2364,6 +2375,7 @@ e_view_handle_fs(EfsdEvent *ev) } else if (v->geom_get.h == cmd) { + printf("Got H\n"); v->geom_get.h = 0; if (efsd_metadata_get_type(ev) == EFSD_INT) { @@ -2389,6 +2401,10 @@ e_view_handle_fs(EfsdEvent *ev) E_Border *b; v->geom_get.busy = 0; + printf("ok.. adopt!\n"); + printf("at %i %i, %ix%i\n", + v->location.x, v->location.y, + v->size.w, v->size.h); if (v->options.back_pixmap) e_view_update(v); b = e_border_adopt(v->win.base, 1); }