From: Enlightenment C. <no...@cv...> - 2008-08-07 23:22:48
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: iclass.c Log Message: Fix ImageclassApplySimple for imageclasses without image. =================================================================== RCS file: /cvs/e/e16/e/src/iclass.c,v retrieving revision 1.142 retrieving revision 1.143 diff -u -3 -r1.142 -r1.143 --- iclass.c 7 Aug 2008 23:21:51 -0000 1.142 +++ iclass.c 7 Aug 2008 23:22:47 -0000 1.143 @@ -896,8 +896,14 @@ } } +#define LINE(x1, y1, x2, y2) \ + XDrawLine(disp, win, gc, x + x1, y + y1, x + x2, y + y2) +#define RECT(x, y, w, h) \ + XDrawRectangle(disp, win, gc, x, y, w, h); + static void -ImagestateDrawBevel(ImageState * is, Drawable win, GC gc, int w, int h) +ImagestateDrawBevel(ImageState * is, Drawable win, GC gc, + int x, int y, int w, int h) { ImagestateColorsAlloc(is); @@ -905,93 +911,109 @@ { case BEVEL_AMIGA: XSetForeground(disp, gc, is->hihi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 2, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 2); + LINE(0, 0, w - 2, 0); + LINE(0, 0, 0, h - 2); XSetForeground(disp, gc, is->lolo.pixel); - XDrawLine(disp, win, gc, 1, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); + LINE(1, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); break; case BEVEL_MOTIF: XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 1, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 1); - XDrawLine(disp, win, gc, 1, 1, w - 2, 1); - XDrawLine(disp, win, gc, 1, 1, 1, h - 2); + LINE(0, 0, w - 1, 0); + LINE(0, 0, 0, h - 1); + LINE(1, 1, w - 2, 1); + LINE(1, 1, 1, h - 2); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 0, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); - XDrawLine(disp, win, gc, 1, h - 2, w - 2, h - 2); - XDrawLine(disp, win, gc, w - 2, 2, w - 2, h - 2); + LINE(0, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); + LINE(1, h - 2, w - 2, h - 2); + LINE(w - 2, 2, w - 2, h - 2); break; case BEVEL_NEXT: XSetForeground(disp, gc, is->hihi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 1, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 1); + LINE(0, 0, w - 1, 0); + LINE(0, 0, 0, h - 1); XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 1, 1, w - 2, 1); - XDrawLine(disp, win, gc, 1, 1, 1, h - 2); + LINE(1, 1, w - 2, 1); + LINE(1, 1, 1, h - 2); XSetForeground(disp, gc, is->lolo.pixel); - XDrawLine(disp, win, gc, 1, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); + LINE(1, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 2, h - 2, w - 2, h - 2); - XDrawLine(disp, win, gc, w - 2, 2, w - 2, h - 2); + LINE(2, h - 2, w - 2, h - 2); + LINE(w - 2, 2, w - 2, h - 2); break; case BEVEL_DOUBLE: XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 2, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 2); + LINE(0, 0, w - 2, 0); + LINE(0, 0, 0, h - 2); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 1, 1, w - 3, 1); - XDrawLine(disp, win, gc, 1, 1, 1, h - 3); + LINE(1, 1, w - 3, 1); + LINE(1, 1, 1, h - 3); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 1, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); + LINE(1, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 2, h - 2, w - 2, h - 2); - XDrawLine(disp, win, gc, w - 2, 2, w - 2, h - 2); + LINE(2, h - 2, w - 2, h - 2); + LINE(w - 2, 2, w - 2, h - 2); break; case BEVEL_WIDEDOUBLE: XSetForeground(disp, gc, is->hihi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 1, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 1); + LINE(0, 0, w - 1, 0); + LINE(0, 0, 0, h - 1); XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 1, 1, w - 2, 1); - XDrawLine(disp, win, gc, 1, 1, 1, h - 2); - XDrawLine(disp, win, gc, 3, h - 4, w - 4, h - 4); - XDrawLine(disp, win, gc, w - 4, 3, w - 4, h - 4); + LINE(1, 1, w - 2, 1); + LINE(1, 1, 1, h - 2); + LINE(3, h - 4, w - 4, h - 4); + LINE(w - 4, 3, w - 4, h - 4); XSetForeground(disp, gc, is->lolo.pixel); - XDrawLine(disp, win, gc, 1, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); + LINE(1, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 2, h - 2, w - 2, h - 2); - XDrawLine(disp, win, gc, w - 2, 2, w - 2, h - 2); - XDrawLine(disp, win, gc, 3, 3, w - 4, 3); - XDrawLine(disp, win, gc, 3, 3, 3, h - 4); + LINE(2, h - 2, w - 2, h - 2); + LINE(w - 2, 2, w - 2, h - 2); + LINE(3, 3, w - 4, 3); + LINE(3, 3, 3, h - 4); break; case BEVEL_THINPOINT: XSetForeground(disp, gc, is->hi.pixel); - XDrawLine(disp, win, gc, 0, 0, w - 2, 0); - XDrawLine(disp, win, gc, 0, 0, 0, h - 2); + LINE(0, 0, w - 2, 0); + LINE(0, 0, 0, h - 2); XSetForeground(disp, gc, is->lo.pixel); - XDrawLine(disp, win, gc, 1, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, 1, w - 1, h - 1); + LINE(1, h - 1, w - 1, h - 1); + LINE(w - 1, 1, w - 1, h - 1); XSetForeground(disp, gc, is->hihi.pixel); - XDrawLine(disp, win, gc, 0, 0, 1, 0); - XDrawLine(disp, win, gc, 0, 0, 0, 1); + LINE(0, 0, 1, 0); + LINE(0, 0, 0, 1); XSetForeground(disp, gc, is->lolo.pixel); - XDrawLine(disp, win, gc, w - 2, h - 1, w - 1, h - 1); - XDrawLine(disp, win, gc, w - 1, h - 2, w - 1, h - 1); + LINE(w - 2, h - 1, w - 1, h - 1); + LINE(w - 1, h - 2, w - 1, h - 1); break; case BEVEL_THICKPOINT: XSetForeground(disp, gc, is->hi.pixel); - XDrawRectangle(disp, win, gc, 0, 0, w - 1, h - 1); + RECT(x, y, w - 1, h - 1); break; default: break; } } +static void +ImagestateDrawNoImg(ImageState * is, Drawable draw, int x, int y, int w, int h) +{ + GC gc; + + ImagestateColorsAlloc(is); + + gc = EXCreateGC(draw, 0, NULL); + XSetFillStyle(disp, gc, FillSolid); + XSetForeground(disp, gc, is->bg.pixel); + XFillRectangle(disp, draw, gc, x, y, w, h); + if (is->bevelstyle != BEVEL_NONE) + ImagestateDrawBevel(is, draw, gc, x, y, w, h); + EXFreeGC(gc); +} + void ITApply(Win win, ImageClass * ic, ImageState * is, int state, int active, int sticky, int image_type, @@ -1086,7 +1108,7 @@ XSetForeground(disp, gc, is->bg.pixel); XFillRectangle(disp, pmap, gc, 0, 0, w, h); if (is->bevelstyle != BEVEL_NONE) - ImagestateDrawBevel(is, pmap, gc, w, h); + ImagestateDrawBevel(is, pmap, gc, 0, 0, w, h); if (ts && text) TextstateTextDraw(ts, win, pmap, text, 0, 0, w, h, &(ic->padding), 0, @@ -1173,27 +1195,14 @@ } else { - GC gc; - Pixmap pmap; - - ImagestateColorsAlloc(is); - if (pmm->pmap) Eprintf("ImageclassApplyCopy: Hmm... pmm->pmap already set\n"); - pmap = ECreatePixmap(win, w, h, 0); pmm->type = 0; - pmm->pmap = pmap; + pmm->pmap = ECreatePixmap(win, w, h, 0); pmm->mask = 0; - gc = EXCreateGC(pmap, 0, NULL); - /* bg color */ - XSetForeground(disp, gc, is->bg.pixel); - XFillRectangle(disp, pmap, gc, 0, 0, w, h); - /* if there is a bevel to draw, draw it */ - if (is->bevelstyle != BEVEL_NONE) - ImagestateDrawBevel(is, pmap, gc, w, h); - EXFreeGC(gc); + ImagestateDrawNoImg(is, pmm->pmap, 0, 0, w, h); /* FIXME - No text */ } } @@ -1204,12 +1213,25 @@ { EImage *im; - im = ImageclassGetImage(ic, 0, 0, state); - if (!im) + if (!ic) return; - EImageRenderOnDrawable(im, win, draw, 0, x, y, w, h); - EImageFree(im); + im = ImageclassGetImage(ic, 0, 0, state); + if (im) + { + EImageRenderOnDrawable(im, win, draw, 0, x, y, w, h); + EImageFree(im); + } + else + { + ImageState *is; + + is = ImageclassGetImageState(ic, state, 0, 0); + if (!is) + return; + + ImagestateDrawNoImg(is, draw, x, y, w, h); + } } static ImageClass * |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:23:41
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: focus.c Log Message: Fix focusing new windows when using click-to-focus and all_new_windows_get_focus = 0. =================================================================== RCS file: /cvs/e/e16/e/src/focus.c,v retrieving revision 1.176 retrieving revision 1.177 diff -u -3 -r1.176 -r1.177 --- focus.c 24 May 2008 18:13:17 -0000 1.176 +++ focus.c 7 Aug 2008 23:23:39 -0000 1.177 @@ -219,7 +219,7 @@ int set = 0; if ((Conf.focus.clickraises && !EwinListStackIsRaised(ewin)) || - (!ewin->state.active && FocusEwinValid(ewin, 0, 1, 0))) + (!ewin->state.active && !ewin->state.inhibit_focus)) set = 1; if (set) |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:25:54
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/scripts Modified Files: e_cache_clean e_cache_query Log Message: Make cache_clear/query all actually clear/query all caches (img was missing). =================================================================== RCS file: /cvs/e/e16/e/scripts/e_cache_clean,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- e_cache_clean 13 Jan 2007 19:14:26 -0000 1.17 +++ e_cache_clean 7 Aug 2008 23:25:53 -0000 1.18 @@ -3,6 +3,7 @@ # cleans up parts of your enlightenment cache # # # Copyright (C) 1999-2007 Carsten Haitzler, Geoff Harrison and various contributors +# Copyright (C) 2008 Kim Woelders # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to @@ -24,39 +25,36 @@ # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ############################################################################## -PATH=$PATH:$EBIN:$EROOT/scripts +PATH=$PATH:$EBIN export PATH -if [ $# -lt 1 ]; then - echo "usage:" - echo " "$0" [ all | pager | bgsel | config ]" - exit -fi - -if [ $1 = "all" ]; then - rm -rf $ECACHEDIR/cached/*/* >/dev/null 2>&1 - rm -rf $ECACHEDIR/cached/*/.* >/dev/null 2>&1 - eesh -e "dialog_ok All caches purged." - exit -fi +case "x$1" in +xall) + dir="*" + txt="All caches" + ;; + +xbgsel) + dir=bgsel + txt="Background selector cache" + ;; + +xconfig) + dir=cfg + txt="Config file cache" + ;; + +xpager) + dir=pager + txt="Pager background cache" + ;; -if [ $1 = "pager" ]; then - rm -rf $ECACHEDIR/cached/pager/* >/dev/null 2>&1 - rm -rf $ECACHEDIR/cached/pager/.* >/dev/null 2>&1 - eesh -e "dialog_ok Pager background cache purged." - exit -fi - -if [ $1 = "config" ]; then - rm -rf $ECACHEDIR/cached/cfg/* >/dev/null 2>&1 - rm -rf $ECACHEDIR/cached/cfg/.* >/dev/null 2>&1 - eesh -e "dialog_ok Config file cache purged." +*) + echo "usage:" + echo " "$0" [ all | bgsel | config | pager ]" exit -fi + ;; +esac -if [ $1 = "bgsel" ]; then - rm -rf $ECACHEDIR/cached/bgsel/* >/dev/null 2>&1 - rm -rf $ECACHEDIR/cached/bgsel/.* >/dev/null 2>&1 - eesh -e "dialog_ok Background selector cache purged." - exit -fi +rm -rf $ECACHEDIR/cached/$dir/* $ECACHEDIR/cached/$dir/.* >/dev/null 2>&1 +eesh -e "dialog_ok $txt purged." =================================================================== RCS file: /cvs/e/e16/e/scripts/e_cache_query,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- e_cache_query 13 Jan 2007 19:14:26 -0000 1.13 +++ e_cache_query 7 Aug 2008 23:25:53 -0000 1.14 @@ -3,6 +3,7 @@ # queries sizes of your enlightenment cache # # # Copyright (C) 1999-2007 Carsten Haitzler, Geoff Harrison and various contributors +# Copyright (C) 2008 Kim Woelders # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to @@ -24,39 +25,36 @@ # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ############################################################################## -PATH=$PATH:$EBIN:$EROOT/scripts +PATH=$PATH:$EBIN export PATH -if [ $# -lt 1 ]; then - echo "usage:" - echo " "$0" [ all | pager | bgsel | config ]" - exit -fi - -if [ $1 = "all" ]; then - VAL=`du -s $ECACHEDIR/cached/pager $ECACHEDIR/cached/bgsel $ECACHEDIR/cached/cfg | awk '{printf("%s ", $1);}'` - TOT=0 - for I in $VAL; do - let TOT=$(($TOT + $I)); - done - eesh -e "dialog_ok Your caches are using $TOT Kb of disk space." - exit -fi +case "x$1" in +xall) + dir="" + txt="Your caches are using" + ;; + +xbgsel) + dir=bgsel + txt="Your background selector cache is using" + ;; + +xconfig) + dir=cfg + txt="Your config file cache is using" + ;; + +xpager) + dir=pager + txt="Your pager background cache is using" + ;; -if [ $1 = "pager" ]; then - VAL=`du -s $ECACHEDIR/cached/pager | awk '{printf("%s", $1);}'` - eesh -e "dialog_ok Your pager background cache is using $VAL Kb of disk space." - exit -fi - -if [ $1 = "config" ]; then - VAL=`du -s $ECACHEDIR/cached/cfg | awk '{printf("%s", $1);}'` - eesh -e "dialog_ok Your config file cache is using $VAL Kb of disk space." +*) + echo "usage:" + echo " "$0" [ all | bgsel | config | pager ]" exit -fi + ;; +esac -if [ $1 = "bgsel" ]; then - VAL=`du -s $ECACHEDIR/cached/bgsel | awk '{printf("%s", $1);}'` - eesh -e "dialog_ok Your background selector cache is using $VAL Kb of disk space." - exit -fi +val=`du -s $ECACHEDIR/cached/$dir | awk '{printf("%s", $1);}'` +eesh -e "dialog_ok $txt $val Kb of disk space." |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:27:53
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/misc Modified Files: Makefile.am e16-gnome.desktop.in e16-kde.desktop.in e16.desktop.in starte16 Log Message: Attempt to fix session stuff on various distros. =================================================================== RCS file: /cvs/e/e16/e/misc/Makefile.am,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- Makefile.am 8 Dec 2007 17:54:38 -0000 1.11 +++ Makefile.am 7 Aug 2008 23:27:52 -0000 1.12 @@ -1,31 +1,39 @@ DESKTOPS = e16.desktop e16-gnome.desktop e16-kde.desktop DESKTOPS_IN = e16.desktop.in e16-gnome.desktop.in e16-kde.desktop.in XCLIENTS = Xclients.e16.sh Xclients.e16-gnome.sh Xclients.e16-kde.sh -STARTUP = starte16 +STARTUPS = starte16-gnome starte16-kde ICONS = e16.png -bin_SCRIPTS = starte16 - miscdir = $(pkgdatadir)/misc misc_DATA = $(ICONS) $(DESKTOPS) -misc_SCRIPTS = $(XCLIENTS) +misc_SCRIPTS = $(XCLIENTS) starte16 e16-dbus-cmd xsessiondir = $(datadir)/xsessions -xsession_DATA = $(DESKTOPS) +#xsession_DATA = $(DESKTOPS) # Is this Fedora only stuff? #xclientsdir = $(sysconfdir)/X11/xinit/Xclients.d #xclients_SCRIPTS = $(XCLIENTS) -EXTRA_DIST = $(DESKTOPS_IN) $(SCRIPTS) $(ICONS) e16-dbus-cmd +EXTRA_DIST = $(DESKTOPS_IN) $(XCLIENTS) $(SCRIPTS) $(ICONS) e16.desktop: $(top_srcdir)/misc/e16.desktop.in Makefile e16-gnome.desktop: $(top_srcdir)/misc/e16-gnome.desktop.in Makefile e16-kde.desktop: $(top_srcdir)/misc/e16-kde.desktop.in Makefile $(DESKTOPS): - sed -e "s=@pkgdatadir@=${pkgdatadir}=" $(top_srcdir)/misc/$@.in >$@ + sed -e "s=@pkgdatadir@=${pkgdatadir}=" $(top_srcdir)/misc/$@.in > $@ + +install-data-hook: + cd $(DESTDIR)$(bindir); rm -f starte16; $(LN_S) $(miscdir)/starte16 . + $(mkinstalldirs) $(DESTDIR)$(xsessiondir) + cd $(DESTDIR)$(xsessiondir); rm -f $(DESKTOPS); \ + for f in $(DESKTOPS); do $(LN_S) $(miscdir)/$$f .; done + cd $(DESTDIR)$(miscdir); rm -f $(STARTUPS); \ + for f in $(STARTUPS); do $(LN_S) starte16 $$f; done uninstall-local: rm -f $(DESKTOPS) - + cd $(DESTDIR)$(bindir); rm -f starte16 + cd $(DESTDIR)$(xsessiondir); rm -f $(DESKTOPS) + cd $(DESTDIR)$(miscdir); rm -f $(STARTUPS) =================================================================== RCS file: /cvs/e/e16/e/misc/e16-gnome.desktop.in,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e16-gnome.desktop.in 21 Dec 2007 21:15:23 -0000 1.4 +++ e16-gnome.desktop.in 7 Aug 2008 23:27:52 -0000 1.5 @@ -3,5 +3,5 @@ Type=XSession Name=E16-GNOME Comment=This session starts GNOME using enlightenment (e16) as window manager -Exec=e16-gnome +Exec=@pkgdatadir@/misc/starte16-gnome Icon=@pkgdatadir@/misc/e16.png =================================================================== RCS file: /cvs/e/e16/e/misc/e16-kde.desktop.in,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e16-kde.desktop.in 21 Dec 2007 21:15:23 -0000 1.4 +++ e16-kde.desktop.in 7 Aug 2008 23:27:52 -0000 1.5 @@ -3,5 +3,5 @@ Type=XSession Name=E16-KDE Comment=This session starts KDE using enlightenment (e16) as window manager -Exec=e16-kde +Exec=@pkgdatadir@/misc/starte16-kde Icon=@pkgdatadir@/misc/e16.png =================================================================== RCS file: /cvs/e/e16/e/misc/e16.desktop.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e16.desktop.in 18 Nov 2007 09:54:49 -0000 1.3 +++ e16.desktop.in 7 Aug 2008 23:27:52 -0000 1.4 @@ -3,5 +3,5 @@ Type=XSession Name=E16 Comment=This session starts the Enlightenment (e16) window manager -Exec=e16 +Exec=@pkgdatadir@/misc/starte16 Icon=@pkgdatadir@/misc/e16.png =================================================================== RCS file: /cvs/e/e16/e/misc/starte16,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- starte16 5 Jun 2007 16:50:30 -0000 1.3 +++ starte16 7 Aug 2008 23:27:52 -0000 1.4 @@ -1,10 +1,14 @@ #!/bin/sh -case "$1" in -gnome|GNOME) + +s=$1 +test -z "$s" && s=$0 + +case "$s" in +*gnome|GNOME) export WINDOW_MANAGER=e16 exec gnome-session ;; -kde|KDE) +*kde|KDE) export KDEWM=e16 exec startkde ;; |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:30:48
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: stacking.c Log Message: Debug stuff. =================================================================== RCS file: /cvs/e/e16/e/src/stacking.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -3 -r1.40 -r1.41 --- stacking.c 23 Mar 2008 11:54:24 -0000 1.40 +++ stacking.c 7 Aug 2008 23:30:46 -0000 1.41 @@ -1,5 +1,5 @@ /* - * Copyright (C) 2004-2007 Kim Woelders + * Copyright (C) 2004-2008 Kim Woelders * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -38,6 +38,7 @@ int nwins; EObj **list; char layered; + char type; }; static int EobjListRaise(EobjList * ewl, EObj * eo, int test); @@ -271,9 +272,9 @@ /* * The global object/client lists */ -static EobjList EwinListStack = { "Stack", 0, 0, NULL, 1 }; -static EobjList EwinListFocus = { "Focus", 0, 0, NULL, 0 }; -static EobjList EwinListOrder = { "Order", 0, 0, NULL, 0 }; +static EobjList EwinListStack = { "Stack", 0, 0, NULL, 1, 0 }; +static EobjList EwinListFocus = { "Focus", 0, 0, NULL, 0, 1 }; +static EobjList EwinListOrder = { "Order", 0, 0, NULL, 0, 2 }; static EObj *const * EobjListGet(EobjList * ewl, int *num) |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:31:38
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: focus.c Log Message: Attempt to improve focus switching when not using focus list. =================================================================== RCS file: /cvs/e/e16/e/src/focus.c,v retrieving revision 1.177 retrieving revision 1.178 diff -u -3 -r1.177 -r1.178 --- focus.c 7 Aug 2008 23:23:39 -0000 1.177 +++ focus.c 7 Aug 2008 23:31:36 -0000 1.178 @@ -42,8 +42,8 @@ static int focus_pending_why = 0; static EWin *focus_pending_ewin = NULL; static EWin *focus_pending_new = NULL; +static EWin *focus_pending_raise = NULL; static Timer *focus_timer_autoraise = NULL; -static Timer *focus_timer_reverse = NULL; void FocusEnable(int on) @@ -153,64 +153,50 @@ return 0; } -static int -ReverseTimeout(void *data) +static void +FocusRaisePending(void) { - EWin *ewin = (EWin *) data; + EWin *ewin = focus_pending_raise; + unsigned int mask; + + /* The focusing cycle ends when no more modifiers are depressed */ + mask = 0; + EQueryPointer(NULL, NULL, NULL, NULL, &mask); + if ((mask & Mode.masks.mod_key_mask) != 0) + return; if (EwinFindByPtr(ewin)) /* May be gone */ EwinListFocusRaise(ewin); - focus_timer_reverse = NULL; - return 0; + GrabKeyboardRelease(); + + focus_pending_raise = NULL; } static void -FocusGetNextEwin(void) +FocusPrevEwin(void) { EWin *const *lst; EWin *ewin; - int i, num; + int i, j, num; lst = EwinListFocusGet(&num); if (num <= 1) return; - ewin = NULL; - for (i = num - 1; i >= 0; i--) + for (j = 0; j < num; j++) { - if (!FocusEwinValid(lst[i], 1, 0, 0) || lst[i]->props.skip_focuslist) - continue; - ewin = lst[i]; - break; + if (lst[j] == Mode.focuswin) + break; } - - if (ewin) - FocusToEWin(ewin, FOCUS_NEXT); -} - -static void -FocusGetPrevEwin(void) -{ - EWin *const *lst; - EWin *ewin; - int i, num; - - lst = EwinListFocusGet(&num); - if (num <= 1) - return; - - ewin = NULL; for (i = 1; i < num; i++) { - if (!FocusEwinValid(lst[i], 1, 0, 0) || lst[i]->props.skip_focuslist) + ewin = lst[(j + i) % num]; + if (!FocusEwinValid(ewin, 1, 0, 0) || ewin->props.skip_focuslist) continue; - ewin = lst[i]; + FocusToEWin(ewin, FOCUS_PREV); break; } - - if (ewin) - FocusToEWin(ewin, FOCUS_PREV); } static void @@ -408,18 +394,18 @@ if (do_warp) EwinWarpTo(ewin); - TIMER_DEL(focus_timer_reverse); switch (why) { case FOCUS_PREV: - TIMER_ADD(focus_timer_reverse, 0.5, ReverseTimeout, ewin); + case FOCUS_NEXT: + GrabKeyboardSet(VROOT); /* Causes idler to be called on KeyRelease */ + focus_pending_raise = ewin; break; case FOCUS_DESK_ENTER: if (Conf.focus.mode == MODE_FOCUS_CLICK) break; default: case FOCUS_INIT: - case FOCUS_NEXT: EwinListFocusRaise(ewin); break; } @@ -531,8 +517,6 @@ /* Start focusing windows */ FocusEnable(1); - focus_pending_why = 0; - focus_pending_ewin = focus_pending_new = NULL; FocusToEWin(NULL, FOCUS_INIT); FocusSet(); @@ -873,6 +857,8 @@ FocusSet(); if (click_pending_update_grabs) doClickGrabsUpdate(); + if (focus_pending_raise) + FocusRaisePending(); } static void @@ -979,14 +965,14 @@ if (Conf.warplist.enable) WarpFocus(1); else - FocusGetNextEwin(); + FocusPrevEwin(); } else if (!strncmp(cmd, "prev", 2)) { if (Conf.warplist.enable) WarpFocus(-1); else - FocusGetPrevEwin(); + FocusPrevEwin(); } } |
From: Enlightenment C. <no...@cv...> - 2008-08-07 23:38:17
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/po Modified Files: bg.po bs.po da.po de.po en_US.po es.po fr.po hu.po ja.po ko.po nl.po no.po pl.po pt.po pt_BR.po ru.po sv.po tr.po Log Message: Update po. |
From: Enlightenment C. <no...@cv...> - 2008-08-09 13:06:22
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e Modified Files: configure.in ChangeLog timestamp.h Log Message: Sat Aug 9 14:51:26 CEST 2008 (Kim) --- 0.16.8.14 --- Call move/resize function only if moving/resizing. Move config options to config.h. Cleanups around closing internal windows. Limit alert box size to screen size. Fix button stacking bug when char is unsigned. Use fallback imageclass a couple of places. Fix ImageclassApplySimple for imageclasses without image. Fix focusing new windows when using click-to-focus and all_new_windows_get_focus = 0. Make cache_clear/query all actually clear/query all caches (img was missing). Attempt to fix session (.desktop) stuff on various distros. Attempt to improve focus switching when not using focus list. =================================================================== RCS file: /cvs/e/e16/e/configure.in,v retrieving revision 1.267 retrieving revision 1.268 diff -u -3 -r1.267 -r1.268 --- configure.in 7 Aug 2008 23:14:54 -0000 1.267 +++ configure.in 9 Aug 2008 13:06:21 -0000 1.268 @@ -1,5 +1,5 @@ m4_define([pkg_version], [0.16.8.14]) -m4_define([pkg_revision], [0.04]) +dnl m4_define([pkg_revision], [0.04]) m4_define([pkg_ver_rev], m4_ifdef([pkg_revision], [pkg_version-pkg_revision], [pkg_version])) m4_define([rpm_revision], m4_ifdef([pkg_revision], [pkg_revision], [1])) =================================================================== RCS file: /cvs/e/e16/e/ChangeLog,v retrieving revision 1.260 retrieving revision 1.261 diff -u -3 -r1.260 -r1.261 --- ChangeLog 11 Jul 2008 20:13:44 -0000 1.260 +++ ChangeLog 9 Aug 2008 13:06:21 -0000 1.261 @@ -4803,3 +4803,22 @@ Don't show iconbox animation if app is initially iconified. Play iconify sound only for selected iconbox. Fix various gravity issues. + +------------------------------------------------------------------------------- + +Sat Aug 9 14:51:26 CEST 2008 +(Kim) + +--- 0.16.8.14 --- +Call move/resize function only if moving/resizing. +Move config options to config.h. +Cleanups around closing internal windows. +Limit alert box size to screen size. +Fix button stacking bug when char is unsigned. +Use fallback imageclass a couple of places. +Fix ImageclassApplySimple for imageclasses without image. +Fix focusing new windows when using click-to-focus and all_new_windows_get_focus = 0. +Make cache_clear/query all actually clear/query all caches (img was missing). +Attempt to fix session (.desktop) stuff on various distros. +Attempt to improve focus switching when not using focus list. + =================================================================== RCS file: /cvs/e/e16/e/timestamp.h,v retrieving revision 1.56 retrieving revision 1.57 diff -u -3 -r1.56 -r1.57 --- timestamp.h 11 Jul 2008 20:13:44 -0000 1.56 +++ timestamp.h 9 Aug 2008 13:06:21 -0000 1.57 @@ -1 +1 @@ -#define E_CHECKOUT_DATE "$Date: 2008/07/11 20:13:44 $" +#define E_CHECKOUT_DATE "$Date: 2008/08/09 13:06:21 $" |
From: Enlightenment C. <no...@cv...> - 2008-08-09 13:12:46
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: mod-misc.c Log Message: Fix config item size. =================================================================== RCS file: /cvs/e/e16/e/src/mod-misc.c,v retrieving revision 1.67 retrieving revision 1.68 diff -u -3 -r1.67 -r1.68 --- mod-misc.c 24 May 2008 18:13:17 -0000 1.67 +++ mod-misc.c 9 Aug 2008 13:12:44 -0000 1.68 @@ -155,7 +155,7 @@ CFG_ITEM_INT(Conf, movres.mode_info, 1), CFG_ITEM_INT(Conf, movres.mode_maximize_default, 1), CFG_ITEM_HEX(Conf, movres.color, 0x00ff0000), - CFG_ITEM_INT(Conf, movres.avoid_server_grab, 1), + CFG_ITEM_BOOL(Conf, movres.avoid_server_grab, 1), CFG_ITEM_BOOL(Conf, movres.update_while_moving, 0), CFG_ITEM_BOOL(Conf, movres.enable_sync_request, 0), |
From: Enlightenment C. <no...@cv...> - 2008-08-09 13:18:57
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e Modified Files: ChangeLog timestamp.h Log Message: Sat Aug 9 15:17:44 CEST 2008 (Kim) --- 0.16.8.14 --- Fix config item size. =================================================================== RCS file: /cvs/e/e16/e/ChangeLog,v retrieving revision 1.261 retrieving revision 1.262 diff -u -3 -r1.261 -r1.262 --- ChangeLog 9 Aug 2008 13:06:21 -0000 1.261 +++ ChangeLog 9 Aug 2008 13:18:56 -0000 1.262 @@ -4822,3 +4822,12 @@ Attempt to fix session (.desktop) stuff on various distros. Attempt to improve focus switching when not using focus list. + +------------------------------------------------------------------------------- + +Sat Aug 9 15:17:44 CEST 2008 +(Kim) + +--- 0.16.8.14 --- +Fix config item size. + =================================================================== RCS file: /cvs/e/e16/e/timestamp.h,v retrieving revision 1.57 retrieving revision 1.58 diff -u -3 -r1.57 -r1.58 --- timestamp.h 9 Aug 2008 13:06:21 -0000 1.57 +++ timestamp.h 9 Aug 2008 13:18:56 -0000 1.58 @@ -1 +1 @@ -#define E_CHECKOUT_DATE "$Date: 2008/08/09 13:06:21 $" +#define E_CHECKOUT_DATE "$Date: 2008/08/09 13:18:56 $" |
From: Enlightenment C. <no...@cv...> - 2008-08-14 18:41:57
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e Modified Files: configure.in Log Message: Bump version. =================================================================== RCS file: /cvs/e/e16/e/configure.in,v retrieving revision 1.268 retrieving revision 1.269 diff -u -3 -r1.268 -r1.269 --- configure.in 9 Aug 2008 13:06:21 -0000 1.268 +++ configure.in 14 Aug 2008 18:41:55 -0000 1.269 @@ -1,5 +1,5 @@ -m4_define([pkg_version], [0.16.8.14]) -dnl m4_define([pkg_revision], [0.04]) +m4_define([pkg_version], [0.16.8.15]) +m4_define([pkg_revision], [0.00]) m4_define([pkg_ver_rev], m4_ifdef([pkg_revision], [pkg_version-pkg_revision], [pkg_version])) m4_define([rpm_revision], m4_ifdef([pkg_revision], [pkg_revision], [1])) |
From: Enlightenment C. <no...@cv...> - 2008-08-14 18:44:25
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: Makefile.am emodule.c finders.c lang.c menus-misc.c util.h Added Files: string.c Log Message: Provide strcase functions if not available. =================================================================== RCS file: /cvs/e/e16/e/src/Makefile.am,v retrieving revision 1.103 retrieving revision 1.104 diff -u -3 -r1.103 -r1.104 --- Makefile.am 28 Jun 2008 19:08:35 -0000 1.103 +++ Makefile.am 14 Aug 2008 18:44:23 -0000 1.104 @@ -94,6 +94,7 @@ sound.c sound.h \ stacking.c \ startup.c \ + string.c \ systray.c \ tclass.c tclass.h \ text.c \ =================================================================== RCS file: /cvs/e/e16/e/src/emodule.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- emodule.c 22 Mar 2008 15:00:07 -0000 1.10 +++ emodule.c 14 Aug 2008 18:44:23 -0000 1.11 @@ -53,7 +53,7 @@ for (i = 0; i < n_modules; i++) { pm = p_modules[i]; - if (!strncasecmp(name, pm->name, 4) || + if (!strncmp(name, pm->name, 4) || (pm->nick && !strcmp(name, pm->nick))) return pm; } =================================================================== RCS file: /cvs/e/e16/e/src/finders.c,v retrieving revision 1.57 retrieving revision 1.58 diff -u -3 -r1.57 -r1.58 --- finders.c 10 May 2008 23:22:31 -0000 1.57 +++ finders.c 14 Aug 2008 18:44:23 -0000 1.58 @@ -25,6 +25,7 @@ #include "borders.h" #include "ewins.h" #include "groups.h" +#include "util.h" #include <ctype.h> #include <string.h> @@ -173,7 +174,7 @@ name = EwinGetIcccmName(ewin); if (!name) continue; - if (!strcasestr(name, match)) + if (!Estrcasestr(name, match)) continue; } nfound++; =================================================================== RCS file: /cvs/e/e16/e/src/lang.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -3 -r1.27 -r1.28 --- lang.c 26 Jun 2008 21:59:23 -0000 1.27 +++ lang.c 14 Aug 2008 18:44:23 -0000 1.28 @@ -386,9 +386,9 @@ enc_loc, enc_int, MB_CUR_MAX); } - if (!strcasecmp(enc_loc, "utf8") || !strcasecmp(enc_loc, "utf-8")) + if (!Estrcasecmp(enc_loc, "utf8") || !Estrcasecmp(enc_loc, "utf-8")) Mode.locale.utf8_loc = 1; - if (!strcasecmp(enc_int, "utf8") || !strcasecmp(enc_int, "utf-8")) + if (!Estrcasecmp(enc_int, "utf8") || !Estrcasecmp(enc_int, "utf-8")) Mode.locale.utf8_int = 1; #if HAVE_ICONV =================================================================== RCS file: /cvs/e/e16/e/src/menus-misc.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -3 -r1.49 -r1.50 --- menus-misc.c 16 Jun 2008 21:24:02 -0000 1.49 +++ menus-misc.c 14 Aug 2008 18:44:23 -0000 1.50 @@ -851,7 +851,7 @@ int i; for (i = 0; exts[i]; i++) - if (!strcasecmp(exts[i], ext)) + if (!Estrcasecmp(exts[i], ext)) return 1; return 0; =================================================================== RCS file: /cvs/e/e16/e/src/util.h,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- util.h 7 Aug 2008 23:14:54 -0000 1.18 +++ util.h 14 Aug 2008 18:44:23 -0000 1.19 @@ -59,11 +59,15 @@ #define USE_LIBC_STRNDUP 1 /* Use libc strndup if present */ #endif -#ifndef HAVE_STRCASESTR -#define strcasestr(haystack, needle) strstr(haystack, needle) +#ifdef HAVE_STRCASECMP +#define Estrcasecmp(s1, s2) strcasecmp(s1, s2) +#else +int Estrcasecmp(const char *s1, const char *s2); #endif -#ifndef HAVE_STRCASECMP -#define strcasecmp(s1, s2) strcmp(s1, s2) +#ifdef HAVE_STRCASESTR +#define Estrcasestr(haystack, needle) strcasestr(haystack, needle) +#else +const char *Estrcasestr(const char *haystack, const char *needle); #endif /* memory.c */ |