Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
Tag: branch-exp
E.h Makefile.am desktops.c evhandlers.c main.c mod-misc.c
settings.c x.c
Log Message:
Shuffle some desktop handling code around.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.314.2.15
retrieving revision 1.314.2.16
diff -u -3 -r1.314.2.15 -r1.314.2.16
--- E.h 15 Aug 2004 10:00:18 -0000 1.314.2.15
+++ E.h 15 Aug 2004 12:16:38 -0000 1.314.2.16
@@ -1608,6 +1608,7 @@
void ECsrApply(int which, Window win);
/* desktops.c */
+void DesktopsInit(void);
void ChangeNumberOfDesktops(int quantity);
void ShowDesktopControls(void);
void ShowDesktopTabs(void);
@@ -1620,7 +1621,6 @@
void RefreshCurrentDesktop(void);
void RefreshDesktop(int num);
void DesktopsRefresh(void);
-void InitDesktopBgs(void);
void InitDesktopControls(void);
void DesktopSetBg(int desk, Background * bg, int refresh);
void ConformEwinToDesktop(EWin * ewin);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Makefile.am,v
retrieving revision 1.43.2.5
retrieving revision 1.43.2.6
diff -u -3 -r1.43.2.5 -r1.43.2.6
--- Makefile.am 8 Aug 2004 22:31:40 -0000 1.43.2.5
+++ Makefile.am 15 Aug 2004 12:16:38 -0000 1.43.2.6
@@ -64,6 +64,7 @@
misc.c \
mod-bg.c \
mod-btn.c \
+ mod-desks.c \
mod-ibox.c \
mod-menus.c \
mod-misc.c \
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v
retrieving revision 1.95.2.8
retrieving revision 1.95.2.9
diff -u -3 -r1.95.2.8 -r1.95.2.9
--- desktops.c 15 Aug 2004 10:00:20 -0000 1.95.2.8
+++ desktops.c 15 Aug 2004 12:16:38 -0000 1.95.2.9
@@ -29,6 +29,52 @@
EnterWindowMask | LeaveWindowMask | PointerMotionMask | ButtonMotionMask | \
SubstructureNotifyMask | SubstructureRedirectMask | PropertyChangeMask)
+static void DesktopHandleEvents(XEvent * ev, void *prm);
+
+static void
+DesktopInit(unsigned int dsk)
+{
+ Desk *d;
+
+ if (dsk >= ENLIGHTENMENT_CONF_NUM_DESKTOPS)
+ return;
+
+ d = &desks.desk[dsk];
+ d->bg = NULL;
+ desks.order[dsk] = dsk;
+ d->tag = NULL;
+ d->x = 0;
+ d->y = 0;
+ d->current_area_x = 0;
+ d->current_area_y = 0;
+ d->viewable = 0;
+
+ if (dsk == 0)
+ {
+ d->win = VRoot.win;
+ }
+ else
+ {
+ d->win =
+ ECreateWindow(VRoot.win, -VRoot.w, -VRoot.h, VRoot.w, VRoot.h, 0);
+#if 0 /* FIXME - TBD */
+ XSelectInput(disp, d->win, EDESK_EVENT_MASK);
+#endif
+ }
+ EventCallbackRegister(d->win, 0, DesktopHandleEvents, d);
+}
+
+void
+DesktopsInit(void)
+{
+ int i;
+
+ for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
+ {
+ DesktopInit(i);
+ }
+}
+
void
ChangeNumberOfDesktops(int quantity)
{
@@ -264,52 +310,6 @@
}
void
-InitDesktopBgs(void)
-{
- int i;
- Desk *d;
- Atom at;
-
- EDBUG(6, "InitDesktopBgs");
- for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
- {
- d = &desks.desk[i];
- d->bg = NULL;
- desks.order[i] = i;
- d->tag = NULL;
- d->x = 0;
- d->y = 0;
- d->current_area_x = 0;
- d->current_area_y = 0;
- d->viewable = 0;
- if (i == 0)
- {
- d->win = VRoot.win;
- }
- else
- {
- d->win =
- ECreateWindow(VRoot.win, -VRoot.w, -VRoot.h, VRoot.w, VRoot.h,
- 0);
- XSelectInput(disp, d->win, EDESK_EVENT_MASK);
- }
- at = XInternAtom(disp, "ENLIGHTENMENT_DESKTOP", False);
- XChangeProperty(disp, d->win, at, XA_CARDINAL, 32, PropModeReplace,
- (unsigned char *)&i, 1);
-/* I don't believe it.. this property causes xv and Xscreensaver to barf
- * stupid bloody clients - I cant' believe peope write such shitty code
- */
-/*
- * at = XInternAtom(disp, "__SWM_VROOT", False);
- * XChangeProperty(disp, d->win, at, XA_CARDINAL, 32, PropModeReplace,
- * (unsigned char *)&i, 1);
- */
- }
-
- EDBUG_RETURN_;
-}
-
-void
InitDesktopControls(void)
{
int i;
@@ -1258,3 +1258,55 @@
for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
XSelectInput(disp, desks.desk[i].win, event_mask);
}
+
+static char sentpress = 0;
+
+static void
+ButtonProxySendEvent(XEvent * ev)
+{
+ if (Mode.button_proxy_win)
+ XSendEvent(disp, Mode.button_proxy_win, False, SubstructureNotifyMask,
+ ev);
+}
+
+static void
+DesktopEventButtonPress(Desk * d __UNUSED__, XEvent * ev)
+{
+ ActionClass *ac;
+
+ XUngrabPointer(disp, CurrentTime);
+
+ ac = FindItem("DESKBINDINGS", 0, LIST_FINDBY_NAME, LIST_TYPE_ACLASS);
+ if (ac)
+ {
+ if (!EventAclass(ev, NULL, ac))
+ ButtonProxySendEvent(ev);
+ }
+}
+
+static void
+DesktopEventButtonRelease(Desk * d __UNUSED__, XEvent * ev)
+{
+ if (sentpress)
+ {
+ /* We never get here? */
+ sentpress = 0;
+ ButtonProxySendEvent(ev);
+ }
+}
+
+static void
+DesktopHandleEvents(XEvent * ev, void *prm)
+{
+ Desk *d = (Desk *) prm;
+
+ switch (ev->type)
+ {
+ case ButtonPress:
+ DesktopEventButtonPress(d, ev);
+ break;
+ case ButtonRelease:
+ DesktopEventButtonRelease(d, ev);
+ break;
+ }
+}
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/evhandlers.c,v
retrieving revision 1.173.2.9
retrieving revision 1.173.2.10
diff -u -3 -r1.173.2.9 -r1.173.2.10
--- evhandlers.c 15 Aug 2004 10:00:20 -0000 1.173.2.9
+++ evhandlers.c 15 Aug 2004 12:16:39 -0000 1.173.2.10
@@ -22,8 +22,6 @@
*/
#include "E.h"
-static char sentpress = 0;
-
static void
ModeGetXY(Window rwin, int rx, int ry)
{
@@ -41,21 +39,11 @@
}
}
-static void
-ButtonProxySendEvent(XEvent * ev)
-{
- if (Mode.button_proxy_win)
- XSendEvent(disp, Mode.button_proxy_win, False, SubstructureNotifyMask,
- ev);
-}
-
void
HandleMouseDown(XEvent * ev)
{
Window win = ev->xbutton.window;
EWin *ewin;
- int i;
- int desk_click;
char double_click = 0;
float mode_double_click_time = 0.25;
@@ -76,30 +64,6 @@
ModeGetXY(ev->xbutton.root, ev->xbutton.x_root, ev->xbutton.y_root);
- desk_click = -1;
- for (i = 0; i < Conf.desks.num; i++)
- {
- if (win == desks.desk[i].win)
- {
- desk_click = i;
- break;
- }
- }
- if (desk_click >= 0)
- {
- ActionClass *ac;
-
- XUngrabPointer(disp, CurrentTime);
-
- ac = FindItem("DESKBINDINGS", 0, LIST_FINDBY_NAME, LIST_TYPE_ACLASS);
- if (ac)
- {
- if (!EventAclass(ev, NULL, ac))
- ButtonProxySendEvent(ev);
- }
- EDBUG_RETURN_;
- }
-
FocusHandleClick(win);
if (double_click)
@@ -168,13 +132,6 @@
goto done;
}
- if (sentpress)
- {
- /* We never get here? */
- sentpress = 0;
- ButtonProxySendEvent(ev);
- }
-
Mode.context_win = Mode.last_bpress;
if ( /*!Mode.menus.clicked && */ BordersEventMouseUp(ev))
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/main.c,v
retrieving revision 1.99.2.6
retrieving revision 1.99.2.7
diff -u -3 -r1.99.2.6 -r1.99.2.7
--- main.c 15 Aug 2004 10:00:21 -0000 1.99.2.6
+++ main.c 15 Aug 2004 12:16:39 -0000 1.99.2.7
@@ -233,7 +233,6 @@
BlumFlimFrub();
ZoomInit();
SetupDirs();
- InitDesktopBgs();
CommsSetup();
CommsFindCommsWindow();
LoadGroups();
@@ -243,6 +242,8 @@
MapUnmap(0);
UngrabX();
+ ModulesSignal(ESIGNAL_INIT);
+
/* make all of our fallback classes */
SetupFallbackClasses();
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-misc.c,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -3 -r1.1.2.5 -r1.1.2.6
--- mod-misc.c 8 Aug 2004 22:31:42 -0000 1.1.2.5
+++ mod-misc.c 15 Aug 2004 12:16:39 -0000 1.1.2.6
@@ -65,11 +65,6 @@
int n_modules = sizeof(p_modules) / sizeof(EModule *);
static const CfgItem cfg_items[] = {
- CFG_ITEM_BOOL(Conf, areas.nx, 2),
- CFG_ITEM_BOOL(Conf, areas.ny, 1),
- CFG_ITEM_BOOL(Conf, areas.wraparound, 0),
- CFG_ITEM_BOOL(Conf, areas.wraparound, 0),
-
CFG_ITEM_BOOL(Conf, autoraise.enable, 0),
CFG_ITEM_INT(Conf, autoraise.delay, 500),
@@ -77,15 +72,6 @@
CFG_ITEM_INT(Conf, backgrounds.timeout, 240),
CFG_ITEM_BOOL(Conf, backgrounds.user, 1),
- CFG_ITEM_INT(Conf, desks.num, 2),
- CFG_ITEM_BOOL(Conf, desks.wraparound, 0),
- CFG_ITEM_INT(Conf, desks.dragdir, 2),
- CFG_ITEM_INT(Conf, desks.dragbar_width, 16),
- CFG_ITEM_INT(Conf, desks.dragbar_ordering, 1),
- CFG_ITEM_INT(Conf, desks.dragbar_length, 0),
- CFG_ITEM_BOOL(Conf, desks.slidein, 1),
- CFG_ITEM_INT(Conf, desks.slidespeed, 6000),
-
CFG_ITEM_BOOL(Conf, dialogs.headers, 0),
CFG_ITEM_INT(Conf, dock.dirmode, DOCK_DOWN),
@@ -160,15 +146,6 @@
#define N_CFG_ITEMS ((int)(sizeof(cfg_items)/sizeof(CfgItem)))
static void
-DesktopsConfigure(const char *params)
-{
- if (!strcmp(params, "area"))
- SettingsArea();
- else
- SettingsDesktops();
-}
-
-static void
FocusConfigure(const char *params)
{
if (!strcmp(params, "autoraise"))
@@ -249,7 +226,6 @@
#define EM_DECLARE(mod, name, nick, conf) \
EModule mod = { name, nick, NULL, NULL, NULL, conf, { 0, NULL}, { 0, NULL} }
-EM_DECLARE(ModDesktops, "Desktops", "desk", DesktopsConfigure);
EM_DECLARE(ModFocus, "Focus", "foc", FocusConfigure);
EM_DECLARE(ModFX, "FX", "fx", FxConfigure);
EM_DECLARE(ModGroups, "Groups", "gr", GroupsConfigure);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/settings.c,v
retrieving revision 1.120.2.4
retrieving revision 1.120.2.5
diff -u -3 -r1.120.2.4 -r1.120.2.5
--- settings.c 8 Aug 2004 00:02:19 -0000 1.120.2.4
+++ settings.c 15 Aug 2004 12:16:39 -0000 1.120.2.5
@@ -1002,438 +1002,6 @@
/* ShowDialog(dexp); */
}
-static int tmp_desktops;
-static DItem *tmp_desk_text;
-static Dialog *tmp_desk_dialog;
-static char tmp_desktop_wraparound;
-
-static void
-CB_ConfigureDesktops(int val, void *data)
-{
- if (val < 2)
- {
- ChangeNumberOfDesktops(tmp_desktops);
- Conf.desks.wraparound = tmp_desktop_wraparound;
- }
- autosave();
- data = NULL;
-}
-
-static void
-CB_DesktopDisplayRedraw(int val, void *data)
-{
- static char called = 0;
- DItem *di;
- static Window win, wins[ENLIGHTENMENT_CONF_NUM_DESKTOPS];
- int i;
- int w, h;
- static int prev_desktops = -1;
- char s[64];
-
- if (val == 1)
- called = 0;
-
- if ((val != 1) && (prev_desktops == tmp_desktops))
- return;
- prev_desktops = tmp_desktops;
- di = (DItem *) data;
- win = DialogItemAreaGetWindow(di);
- DialogItemAreaGetSize(di, &w, &h);
- if (!called)
- {
- ImageClass *ic;
-
- ic = FindItem("SETTINGS_DESKTOP_AREA", 0, LIST_FINDBY_NAME,
- LIST_TYPE_ICLASS);
- if (ic)
- IclassApply(ic, win, w, h, 0, 0, STATE_NORMAL, 0, ST_UNKNWN);
- for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
- wins[i] = 0;
- called = 1;
- }
- for (i = 0; i < tmp_desktops; i++)
- {
- if (!wins[i])
- {
- wins[i] = ECreateWindow(win, 0, 0, 64, 48, 0);
- XSetWindowBorderWidth(disp, wins[i], 1);
- if (desks.desk[i].bg)
- {
- Pixmap pmap;
-
- pmap = ECreatePixmap(disp, wins[i], 64, 48, VRoot.depth);
- ESetWindowBackgroundPixmap(disp, wins[i], pmap);
- BackgroundApply(desks.desk[i].bg, pmap, 0);
- EFreePixmap(disp, pmap);
- }
- }
- }
- for (i = (tmp_desktops - 1); i >= 0; i--)
- {
- int num;
-
- num = tmp_desktops - 1;
- if (num < 1)
- num = 1;
- XRaiseWindow(disp, wins[i]);
- EMoveWindow(disp, wins[i], (i * (w - 64 - 2)) / num,
- (i * (h - 48 - 2)) / num);
- EMapWindow(disp, wins[i]);
- }
- for (i = tmp_desktops; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
- EUnmapWindow(disp, wins[i]);
- if (tmp_desktops > 1)
- Esnprintf(s, sizeof(s), _("%i Desktops"), tmp_desktops);
- else
- Esnprintf(s, sizeof(s), _("%i Desktop"), tmp_desktops);
- DialogItemTextSetText(tmp_desk_text, s);
- DialogDrawItems(tmp_desk_dialog, tmp_desk_text, 0, 0, 99999, 99999);
-}
-
-void
-SettingsDesktops(void)
-{
- Dialog *d;
- DItem *table, *di, *area, *slider;
- char s[64];
-
- if ((d =
- FindItem("CONFIGURE_DESKTOPS", 0, LIST_FINDBY_NAME, LIST_TYPE_DIALOG)))
- {
- SoundPlay("SOUND_SETTINGS_ACTIVE");
- ShowDialog(d);
- return;
- }
- SoundPlay("SOUND_SETTINGS_DESKTOPS");
-
- tmp_desktops = Conf.desks.num;
- tmp_desktop_wraparound = Conf.desks.wraparound;
-
- d = tmp_desk_dialog = DialogCreate("CONFIGURE_DESKTOPS");
- DialogSetTitle(d, _("Multiple Desktop Settings"));
-
- table = DialogInitItem(d);
- DialogItemTableSetOptions(table, 2, 0, 0, 0);
-
- if (Conf.dialogs.headers)
- {
- di = DialogAddItem(table, DITEM_IMAGE);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemImageSetFile(di, "pix/desktops.png");
-
- di = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemTextSetText(di,
- _("Enlightenment Multiple Desktop\n"
- "Settings Dialog\n"));
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetColSpan(di, 2);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
- }
-
- di = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSetColSpan(di, 2);
- DialogItemTextSetText(di, _("Number of virtual desktops:\n"));
-
- di = tmp_desk_text = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSetColSpan(di, 2);
- if (tmp_desktops > 1)
- Esnprintf(s, sizeof(s), _("%i Desktops"), tmp_desktops);
- else
- Esnprintf(s, sizeof(s), _("%i Desktop"), tmp_desktops);
- DialogItemTextSetText(di, s);
-
- di = slider = DialogAddItem(table, DITEM_SLIDER);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSliderSetBounds(di, 1, 32);
- DialogItemSliderSetUnits(di, 1);
- DialogItemSliderSetJump(di, 1);
- DialogItemSetColSpan(di, 2);
- DialogItemSliderSetVal(di, tmp_desktops);
- DialogItemSliderSetValPtr(di, &tmp_desktops);
-
- di = area = DialogAddItem(table, DITEM_AREA);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSetColSpan(di, 2);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemAreaSetSize(di, 128, 96);
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetColSpan(di, 2);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
-
- di = DialogAddItem(table, DITEM_CHECKBUTTON);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSetColSpan(di, 2);
- DialogItemCheckButtonSetText(di, _("Wrap desktops around"));
- DialogItemCheckButtonSetState(di, tmp_desktop_wraparound);
- DialogItemCheckButtonSetPtr(di, &tmp_desktop_wraparound);
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetColSpan(di, 2);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
-
- DialogAddButton(d, _("OK"), CB_ConfigureDesktops, 1);
- DialogAddButton(d, _("Apply"), CB_ConfigureDesktops, 0);
- DialogAddButton(d, _("Close"), CB_ConfigureDesktops, 1);
- DialogSetExitFunction(d, CB_ConfigureDesktops, 2, d);
- DialogBindKey(d, "Escape", DialogCallbackClose, 0, d);
- DialogBindKey(d, "Return", CB_ConfigureDesktops, 0, d);
- ShowDialog(d);
- DialogItemSetCallback(slider, CB_DesktopDisplayRedraw, 0, (void *)area);
- CB_DesktopDisplayRedraw(1, area);
-}
-
-static int tmp_area_x;
-static int tmp_area_y;
-static int tmp_edge_resist;
-static char tmp_edge_flip;
-static DItem *tmp_area_text;
-static Dialog *tmp_area_dialog;
-static char tmp_area_wraparound;
-
-static void
-CB_ConfigureAreas(int val, void *data)
-{
- if (val < 2)
- {
- SetNewAreaSize(tmp_area_x, 9 - tmp_area_y);
- Conf.areas.wraparound = tmp_area_wraparound;
- if (tmp_edge_flip)
- {
- if (tmp_edge_resist < 1)
- tmp_edge_resist = 1;
- Conf.edge_flip_resistance = tmp_edge_resist;
- }
- else
- Conf.edge_flip_resistance = 0;
- EdgeWindowsShow();
- }
- autosave();
- data = NULL;
-}
-
-static void
-CB_AreaDisplayRedraw(int val, void *data)
-{
- char s[64];
- static char called = 0;
- DItem *di;
- static Window win, awin;
- int w, h;
- static int prev_ax = 0, prev_ay = 0;
-
- if (val == 1)
- called = 0;
-
- if ((val != 1) && ((prev_ax == tmp_area_x) && (prev_ay == tmp_area_y)))
- return;
- prev_ax = tmp_area_x;
- prev_ay = tmp_area_y;
- di = (DItem *) data;
- win = DialogItemAreaGetWindow(di);
- DialogItemAreaGetSize(di, &w, &h);
- if (!called)
- {
- ImageClass *ic;
- PmapMask pmm;
-
- ic = FindItem("SETTINGS_AREA_AREA", 0, LIST_FINDBY_NAME,
- LIST_TYPE_ICLASS);
- if (ic)
- IclassApply(ic, win, w, h, 0, 0, STATE_NORMAL, 0, ST_UNKNWN);
- awin = ECreateWindow(win, 0, 0, 18, 14, 0);
- ic = FindItem("SETTINGS_AREADESK_AREA", 0, LIST_FINDBY_NAME,
- LIST_TYPE_ICLASS);
- if (ic)
- {
- IclassApplyCopy(ic, awin, 18, 14, 0, 0, STATE_NORMAL, &pmm, 0,
- ST_UNKNWN);
- ESetWindowBackgroundPixmap(disp, awin, pmm.pmap);
- FreePmapMask(&pmm);
- }
- XClearWindow(disp, awin);
- called = 1;
- }
- EMoveResizeWindow(disp, awin, ((w / 2) - (9 * tmp_area_x)),
- ((h / 2) - (7 * (9 - tmp_area_y))), 18 * tmp_area_x,
- 14 * (9 - tmp_area_y));
- EMapWindow(disp, awin);
-
- if ((tmp_area_x > 1) || ((9 - tmp_area_y) > 1))
- Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"), tmp_area_x,
- 9 - tmp_area_y);
- else
- Esnprintf(s, sizeof(s), _("1\nScreen in size"));
- DialogItemTextSetText(tmp_area_text, s);
- DialogDrawItems(tmp_area_dialog, tmp_area_text, 0, 0, 99999, 99999);
-}
-
-void
-SettingsArea(void)
-{
- Dialog *d;
- DItem *table, *di, *area, *slider, *slider2, *table2;
- char s[64];
-
- if ((d = FindItem("CONFIGURE_AREA", 0, LIST_FINDBY_NAME, LIST_TYPE_DIALOG)))
- {
- SoundPlay("SOUND_SETTINGS_ACTIVE");
- ShowDialog(d);
- return;
- }
- SoundPlay("SOUND_SETTINGS_AREA");
-
- tmp_area_wraparound = Conf.areas.wraparound;
- tmp_edge_resist = Conf.edge_flip_resistance;
- if (tmp_edge_resist == 0)
- tmp_edge_flip = 0;
- else
- tmp_edge_flip = 1;
- GetAreaSize(&tmp_area_x, &tmp_area_y);
- tmp_area_y = 9 - tmp_area_y;
-
- d = tmp_area_dialog = DialogCreate("CONFIGURE_AREA");
- DialogSetTitle(d, _("Virtual Desktop Settings"));
-
- table = DialogInitItem(d);
- DialogItemTableSetOptions(table, 1, 0, 0, 0);
-
- if (Conf.dialogs.headers)
- {
- table2 = DialogAddItem(table, DITEM_TABLE);
- DialogItemTableSetOptions(table2, 2, 0, 0, 0);
-
- di = DialogAddItem(table2, DITEM_IMAGE);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemImageSetFile(di, "pix/areas.png");
-
- di = DialogAddItem(table2, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemTextSetText(di,
- _("Enlightenment Virtual Desktop\n"
- "Settings Dialog\n"));
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
- }
-
- di = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemTextSetText(di, _("Virtual Desktop size:\n"));
-
- di = tmp_area_text = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- if ((tmp_area_x > 1) || (tmp_area_y > 1))
- Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"), tmp_area_x,
- 9 - tmp_area_y);
- else
- Esnprintf(s, sizeof(s), _("1\nScreen in size"));
- DialogItemTextSetText(di, s);
-
- table2 = DialogAddItem(table, DITEM_TABLE);
- DialogItemTableSetOptions(table2, 2, 0, 0, 0);
-
- di = DialogAddItem(table2, DITEM_NONE);
-
- di = slider = DialogAddItem(table2, DITEM_SLIDER);
- DialogItemSliderSetMinLength(di, 10);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSliderSetBounds(di, 1, 8);
- DialogItemSliderSetUnits(di, 1);
- DialogItemSliderSetJump(di, 1);
- DialogItemSliderSetVal(di, tmp_area_x);
- DialogItemSliderSetValPtr(di, &tmp_area_x);
-
- di = slider2 = DialogAddItem(table2, DITEM_SLIDER);
- DialogItemSliderSetMinLength(di, 10);
- DialogItemSliderSetOrientation(di, 0);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 0, 1);
- DialogItemSliderSetBounds(di, 1, 8);
- DialogItemSliderSetUnits(di, 1);
- DialogItemSliderSetJump(di, 1);
- DialogItemSliderSetVal(di, tmp_area_y);
- DialogItemSliderSetValPtr(di, &tmp_area_y);
-
- di = area = DialogAddItem(table2, DITEM_AREA);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemAreaSetSize(di, 160, 120);
-
- DialogItemSetCallback(slider, CB_AreaDisplayRedraw, 0, (void *)area);
- DialogItemSetCallback(slider2, CB_AreaDisplayRedraw, 0, (void *)area);
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
-
- di = DialogAddItem(table, DITEM_CHECKBUTTON);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemCheckButtonSetText(di, _("Wrap virtual desktops around"));
- DialogItemCheckButtonSetState(di, tmp_area_wraparound);
- DialogItemCheckButtonSetPtr(di, &tmp_area_wraparound);
-
- di = DialogAddItem(table, DITEM_CHECKBUTTON);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemCheckButtonSetText(di, _("Enable edge flip"));
- DialogItemCheckButtonSetState(di, tmp_edge_flip);
- DialogItemCheckButtonSetPtr(di, &tmp_edge_flip);
-
- di = DialogAddItem(table, DITEM_TEXT);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemTextSetText(di, _("Resistance at edge of screen:\n"));
-
- di = slider = DialogAddItem(table, DITEM_SLIDER);
- DialogItemSliderSetMinLength(di, 10);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSliderSetBounds(di, 1, 100);
- DialogItemSliderSetUnits(di, 1);
- DialogItemSliderSetJump(di, 10);
- DialogItemSliderSetVal(di, tmp_edge_resist);
- DialogItemSliderSetValPtr(di, &tmp_edge_resist);
-
- di = DialogAddItem(table, DITEM_SEPARATOR);
- DialogItemSetPadding(di, 2, 2, 2, 2);
- DialogItemSetFill(di, 1, 0);
- DialogItemSeparatorSetOrientation(di, 0);
-
- DialogAddButton(d, _("OK"), CB_ConfigureAreas, 1);
- DialogAddButton(d, _("Apply"), CB_ConfigureAreas, 0);
- DialogAddButton(d, _("Close"), CB_ConfigureAreas, 1);
- DialogSetExitFunction(d, CB_ConfigureAreas, 2, d);
- DialogBindKey(d, "Escape", DialogCallbackClose, 0, d);
- DialogBindKey(d, "Return", CB_ConfigureAreas, 0, d);
- ShowDialog(d);
- CB_AreaDisplayRedraw(1, area);
-}
-
static char tmp_with_leader;
static char tmp_switch_popup;
static char tmp_manual_placement;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/x.c,v
retrieving revision 1.71.2.3
retrieving revision 1.71.2.4
diff -u -3 -r1.71.2.3 -r1.71.2.4
--- x.c 9 Aug 2004 22:35:20 -0000 1.71.2.3
+++ x.c 15 Aug 2004 12:16:39 -0000 1.71.2.4
@@ -134,15 +134,24 @@
EventCallbackRegister(Window win, int type __UNUSED__, EventCallbackFunc * func,
void *prm)
{
+ static char first = 1;
EXID *xid;
EventCallbackItem *eci;
+ if (first)
+ {
+ SetXID(VRoot.win, None, 0, 0, VRoot.w, VRoot.h, VRoot.depth);
+ first = 0;
+ }
xid = FindXID(win);
#if 0
Eprintf("EventCallbackRegister: %p %#lx\n", xid, win);
#endif
if (xid == NULL)
- return;
+ {
+ Eprintf("EventCallbackRegister win=%#lx ???\n", win);
+ return;
+ }
xid->cbl.num++;
xid->cbl.lst =
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs