Re: [PATCH 12/16] Add drawers to wmaker!
Hi, we want Drawers? Is only a question, I don't know if NeXT has Drawers. On Fri, 22 Mar 2013, yo@free.fr escribió: > From: Daniel Déchelotte > [snip] -- ||// //\\// Rodolfo "kix" Garcia ||\\// //\\ http://www.kix.es/ -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
A LOT. Very practical - there is a dockapp for it but it has some problems: the theme only matches the default wm theme. Having Drawers inside WM would be a really nice addition. On Sat, Mar 23, 2013 at 1:08 PM, Rodolfo García Peñas wrote: > Hi, > > we want Drawers? Is only a question, I don't know if NeXT has Drawers. > > > On Fri, 22 Mar 2013, yo@free.fr escribió: > > > From: Daniel Déchelotte > > > [snip] > > -- > ||// //\\// Rodolfo "kix" Garcia > ||\\// //\\ http://www.kix.es/ > > > -- > To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org. > -- = Haroldo Gambini Santos Computing Department Universidade Federal de Ouro Preto - UFOP email: haroldo [at ] iceb.ufop.br home/research page: www.decom.ufop.br/haroldo
Re: [PATCH 12/16] Add drawers to wmaker!
On Sat, 23 Mar 2013 at 14:24:12 -0300, Haroldo Santos wrote: > A LOT. Very practical - there is a dockapp for it but it has some > problems: the theme only matches the default wm theme. If that is a problem, why not "fix" the dockapp instead? > Having Drawers inside WM would be a really nice addition. There is already a dockapp providing most of the functionality and I'm using it for a long time. So far I'm not convinced why adding hundreds(?) lines of code in wmaker is necessary. But also the way the patches were presented made things a bit difficult to separate. I'd rather accept all the non-wmdrawer patches first after their issues are worked out and then look at "this patch series adds the wmdrawer functionality and nothing more" and see how it really looks. More opinions on this are welcome. -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Sat, 23 Mar 2013, Haroldo Santos escribió: > A LOT. Very practical - there is a dockapp for it but it has some > problems: the theme only matches the default wm theme. > > Having Drawers inside WM would be a really nice addition. Nice :-) I saw the code. It has a lot of very good things, but is a very big patch. Perhaps, we should do multiple patches for this new code: 1. Add new icons. 2. Old code style clean (spaces, tabs, ...). 3. Prepare old code for new code. Example: - if (type == WM_CLIP) { + switch(type) { + case WM_CLIP: if (scr->clip_icon) return scr->clip_icon; btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMClip", TILE_CLIP); btn->icon->core->descriptor.handle_expose = clipIconExpose; - btn->icon->core->descriptor.handle_enternotify = clipEnterNotify; - btn->icon->core->descriptor.handle_leavenotify = clipLeaveNotify; x_pos = 0; - } else { + break; + case WM_DOCK: + default: /* to avoid a warning about btn and x_pos, basically */ btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMDock", TILE_NORMAL); x_pos = scr->scr_width - ICON_SIZE - DOCK_EXTRA_SPACE; + break; + case WM_DRAWER: + if (name == NULL) + name = findUniqueName(scr, "Drawer"); + btn = wAppIconCreateForDock(scr, NULL, name, "WMDrawer", TILE_DRAWER); + btn->icon->core->descriptor.handle_expose = drawerIconExpose; + x_pos = 0; } can be only: - if (type == WM_CLIP) { + switch(type) { + case WM_CLIP: if (scr->clip_icon) return scr->clip_icon; btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMClip", TILE_CLIP); btn->icon->core->descriptor.handle_expose = clipIconExpose; - btn->icon->core->descriptor.handle_enternotify = clipEnterNotify; - btn->icon->core->descriptor.handle_leavenotify = clipLeaveNotify; x_pos = 0; - } else { + break; + case WM_DOCK: + default: /* to avoid a warning about btn and x_pos, basically */ btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMDock", TILE_NORMAL); x_pos = scr->scr_width - ICON_SIZE - DOCK_EXTRA_SPACE; } About the default: probably we can set x_pos before the switch and btn to NULL. The x_pos = 0 is a problem about icon creation and icon position (as I said in my pts.tgz patch). I will think again about it after these patches. 4. Add new code (probably multiple patches). 5. Remove old icons. ... Now is too hard check this patch. Cheers. kix. PS. But very nice patch. -- ||// //\\// Rodolfo "kix" Garcia ||\\// //\\ http://www.kix.es/ -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Sat, 23 Mar 2013, Carlos R. Mafra escribió: > On Sat, 23 Mar 2013 at 14:24:12 -0300, Haroldo Santos wrote: > > A LOT. Very practical - there is a dockapp for it but it has some > > problems: the theme only matches the default wm theme. > > If that is a problem, why not "fix" the dockapp instead? > > > Having Drawers inside WM would be a really nice addition. > > There is already a dockapp providing most of the functionality and > I'm using it for a long time. So far I'm not convinced why adding > hundreds(?) lines of code in wmaker is necessary. IMO, the Dock is a sub-type of Clip, and Drawers is a sub-type of Clip. Again, I think we should work in this way. The Drawer needs know if the applications inside are launched, closed,... as the clip/dock, therefore should be included in wmaker. In that way we can think about remove Clip and Dock from wmaker, and add them as independent applications. Perhaps these applications could receive notifications about application/window actions (open, close, minimize,...). -- ||// //\\// Rodolfo "kix" Garcia ||\\// //\\ http://www.kix.es/ -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Sat, 23 Mar 2013, Rodolfo García Peñas wrote: we want Drawers? Is only a question, I don't know if NeXT has Drawers. NeXT didn't have drawers AFAIK. It only had the dock which did what the dock is doing in Window Maker. Multiple desktops was added by a third party app called Fiend,app which also functions as an extended dock. There are some screenshots showing it here: http://www.shawcomputing.net/resources/next/software/openstep_screenshots/index.html (Fiend is the one with green < \ > buttons and Clip like workspace name and number in it's app icon) This is the history and the root of the difference between the Dock and Clip in Window Maker. Despite that drawers might be a good addition but as Carlos has pointed out there's already a dockapp which provides this functionality so it's questionable if it needs to be included in Window Maker. On Sat, 23 Mar 2013, Rodolfo García Peñas wrote: IMO, the Dock is a sub-type of Clip, and Drawers is a sub-type of Clip. This makes sense. If the code impelementing the Clip could be modified to support restrictions to behave like the Dock or Drawers it could be used in place of them. In that way we can think about remove Clip and Dock from wmaker, and add them as independent applications. Perhaps these applications could receive notifications about application/window actions (open, close, minimize,...). This might be a good idea but potentially difficult to implement. There might be issues with running multiple instances of this external Clip. Nevertheless it is an interesting idea. Regards, BALATON Zoltan
Re: [PATCH 12/16] Add drawers to wmaker!
On Fri, 22 Mar 2013 at 23:23:44 +0100, yo@free.fr wrote: > From: Daniel Déchelotte > > Drawers are horizontal docks, and they can themselves only live in the dock > > Let WMPrefs.app disable drawers (in recent Dock panel) > --- > WPrefs.app/Docks.c | 108 ++- > WPrefs.app/tiff/dockclipdrawersection.tiff | Bin 0 -> 4188 bytes > WPrefs.app/tiff/dockclipsection.tiff | Bin 7248 -> 0 bytes There is a problem here, dockclipsection.tiff has 0 bytes. > WPrefs.app/tiff/drawer.tiff| Bin 0 -> 9556 bytes > WPrefs.app/xpm/dockclipdrawersection.xpm | 307 ++ > WPrefs.app/xpm/dockclipsection.xpm | 946 -- and here you are removing it? And please make sure to update the file Makefile.am in xpm/ and tiff/ to include the new icons. I put some random icons there in order to test the WPrefs changes but I'm getting a segfault. I need to understand what's going on here but that does not invalidate the fact that the patch is broken wrt the icons. -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Sun, 24 Mar 2013 at 19:34:55 +, Carlos R. Mafra wrote: > > I put some random icons there in order to test the WPrefs changes but > I'm getting a segfault. I need to understand what's going on here but > that does not invalidate the fact that the patch is broken wrt the icons. Oh, I see. You already have values defined for ClipAutoexpandDelay ClipAutocollapseDelay ClipAutoraiseDelay ClipAutolowerDelay in your own configuration file, right? But if don't you get a segfault, because of this in showData() from Docks.c value = GetStringForKey(autoDelayKeys[i]); WMSetTextFieldText(panel->autoDelayT[i], value); adjustButtonSelectionBasedOnValue(panel, i, value); if value is NULL, adjustButtonSelectionBasedOnValue(panel, i, value) will crash. One should better make that function more robust (hint!), but you should have default values for those options to avoid this too. With the patch below, which sets default values "0", I can at least start testing your patch, but now I run out of time already :-( diff --git a/WPrefs.app/Docks.c b/WPrefs.app/Docks.c index 92f76eb..a28134b 100644 --- a/WPrefs.app/Docks.c +++ b/WPrefs.app/Docks.c @@ -273,6 +273,8 @@ static void showData(_Panel *panel) for (i = 0; i < 4; i++) { value = GetStringForKey(autoDelayKeys[i]); + if (!value) + value = "0"; WMSetTextFieldText(panel->autoDelayT[i], value); adjustButtonSelectionBasedOnValue(panel, i, value); } -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Sun, 24 Mar 2013 at 19:34:55 +, Carlos R. Mafra wrote: > On Fri, 22 Mar 2013 at 23:23:44 +0100, yo@free.fr wrote: > > From: Daniel Déchelotte > > > > Drawers are horizontal docks, and they can themselves only live in the dock > > > > Let WMPrefs.app disable drawers (in recent Dock panel) > > --- > > WPrefs.app/Docks.c | 108 ++- > > WPrefs.app/tiff/dockclipdrawersection.tiff | Bin 0 -> 4188 bytes > > WPrefs.app/tiff/dockclipsection.tiff | Bin 7248 -> 0 bytes > > There is a problem here, dockclipsection.tiff has 0 bytes. > > > WPrefs.app/tiff/drawer.tiff| Bin 0 -> 9556 bytes > > WPrefs.app/xpm/dockclipdrawersection.xpm | 307 ++ > > WPrefs.app/xpm/dockclipsection.xpm | 946 -- > > and here you are removing it? Forget about this, I got confused when the new icons were not installed, and WPrefs had no icons. > And please make sure to update the file Makefile.am in xpm/ and tiff/ to > include the new icons. But this one is the root cause, please update Makefile.am in order to install the icons correctly. -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
does this drawer accept dockapps ? the wmdrawer only simulate a new dock, I do prefer a "true" drawer, that accepts dockapps, 2013/3/25 Carlos R. Mafra > On Sun, 24 Mar 2013 at 19:34:55 +, Carlos R. Mafra wrote: > > On Fri, 22 Mar 2013 at 23:23:44 +0100, yo@free.fr wrote: > > > From: Daniel Déchelotte > > > > > > Drawers are horizontal docks, and they can themselves only live in the > dock > > > > > > Let WMPrefs.app disable drawers (in recent Dock panel) > > > --- > > > WPrefs.app/Docks.c | 108 ++- > > > WPrefs.app/tiff/dockclipdrawersection.tiff | Bin 0 -> 4188 bytes > > > WPrefs.app/tiff/dockclipsection.tiff | Bin 7248 -> 0 bytes > > > > There is a problem here, dockclipsection.tiff has 0 bytes. > > > > > WPrefs.app/tiff/drawer.tiff| Bin 0 -> 9556 bytes > > > WPrefs.app/xpm/dockclipdrawersection.xpm | 307 ++ > > > WPrefs.app/xpm/dockclipsection.xpm | 946 -- > > > > and here you are removing it? > > Forget about this, I got confused when the new icons were not installed, > and WPrefs had no icons. > > > And please make sure to update the file Makefile.am in xpm/ and tiff/ to > > include the new icons. > > But this one is the root cause, please update Makefile.am in order to > install the icons correctly. > > > -- > To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org. > -- Renan Vedovato Traba Aluno de Bacharelado em Ciência da Computação pela Universidade Federal do Paraná Linux Register n°: 525911
Re: [PATCH 12/16] Add drawers to wmaker!
Yes, any appicon can be dragged into a drawer, including running dockapps. For instance, the screenshot I sent with my first email shows that I have a drawer to collect all "system monitoring" dockapps. [I take this opportunity to confirm I'm taking any free time opportunity to update the patchset, addressing the comments received so far. Thanks!] -- Daniel - Mail original - > > does this drawer accept dockapps ? > > > the wmdrawer only simulate a new dock, I do prefer a "true" drawer, > that accepts dockapps, > > > > 2013/3/25 Carlos R. Mafra < crma...@gmail.com > > > > > On Sun, 24 Mar 2013 at 19:34:55 +, Carlos R. Mafra wrote: > > > On Fri, 22 Mar 2013 at 23:23:44 +0100, yo@free.fr wrote: > > > From: Daniel Déchelotte < yo@free.fr > > > > > > > Drawers are horizontal docks, and they can themselves only live > > > in the dock > > > > > > Let WMPrefs.app disable drawers (in recent Dock panel) > > > --- > > > WPrefs.app/Docks.c | 108 ++- > > > WPrefs.app/tiff/dockclipdrawersection.tiff | Bin 0 -> 4188 bytes > > > WPrefs.app/tiff/dockclipsection.tiff | Bin 7248 -> 0 bytes > > > > There is a problem here, dockclipsection.tiff has 0 bytes. > > > > > WPrefs.app/tiff/drawer.tiff | Bin 0 -> 9556 bytes > > > WPrefs.app/xpm/dockclipdrawersection.xpm | 307 ++ > > > WPrefs.app/xpm/dockclipsection.xpm | 946 -- > > > > and here you are removing it? > > Forget about this, I got confused when the new icons were not > installed, > and WPrefs had no icons. > > > > And please make sure to update the file Makefile.am in xpm/ and > > tiff/ to > > include the new icons. > > But this one is the root cause, please update Makefile.am in order to > install the icons correctly. > > > > > -- > To unsubscribe, send mail to > wmaker-dev-unsubscr...@lists.windowmaker.org . > > > > > -- > > > > Renan Vedovato Traba > Aluno de Bacharelado em Ciência da Computação > pela Universidade Federal do Paraná > > Linux Register n°: 525911 -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
On Mon, 1 Apr 2013 at 15:46:18 +0200, Daniel Déchelotte wrote: > > [I take this opportunity to confirm I'm taking any free time > opportunity to update the patchset, addressing the comments received so > far. Thanks!] Great, thanks a lot! After testing your previous patch set and reading some feedback from others I think it's fair to say that wmdrawer will make a good enhancement of the WM experience. -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
do you guys still need a fixed patch for this ?, i managed to apply it on next branch I am using the complete set of 16 patchs and I loved it :) 2013/4/1 Carlos R. Mafra > On Mon, 1 Apr 2013 at 15:46:18 +0200, Daniel Déchelotte wrote: > > > > [I take this opportunity to confirm I'm taking any free time > > opportunity to update the patchset, addressing the comments received so > > far. Thanks!] > > Great, thanks a lot! > > After testing your previous patch set and reading some feedback from > others I think it's fair to say that wmdrawer will make a good enhancement > of the WM experience. > > > -- > To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org. > -- Renan Vedovato Traba Aluno de Bacharelado em Ciência da Computação pela Universidade Federal do Paraná Linux Register n°: 525911
Re: [PATCH 12/16] Add drawers to wmaker!
Renan wrote: > do you guys still need a fixed patch for this ?, i managed to apply > it on next branch Still working on it. I hope to be able to share something tomorrow [wow, that's a bold claim] > I am using the complete set of 16 patchs and I loved it :) Wonderful, thanks! :) -- Daniel > > 2013/4/1 Carlos R. Mafra < crma...@gmail.com > > > > > On Mon, 1 Apr 2013 at 15:46:18 +0200, Daniel Déchelotte wrote: > > > > [I take this opportunity to confirm I'm taking any free time > > opportunity to update the patchset, addressing the comments > > received so > > far. Thanks!] > > Great, thanks a lot! > > After testing your previous patch set and reading some feedback from > others I think it's fair to say that wmdrawer will make a good > enhancement > of the WM experience. > > > > > -- > To unsubscribe, send mail to > wmaker-dev-unsubscr...@lists.windowmaker.org . > > > > > -- > > > > Renan Vedovato Traba > Aluno de Bacharelado em Ciência da Computação > pela Universidade Federal do Paraná > > Linux Register n°: 525911 -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
2013/4/8 Daniel Déchelotte > Still working on it. I hope to be able to share something tomorrow [wow, > that's a bold claim] > I could not hold myself and I am fixing the patch :) but I got stuck at this: this is in the patch file and does not apply: diff --git a/src/icon.h b/src/icon.h index 4e030a8..fcb8ebf 100644 --- a/src/icon.h +++ b/src/icon.h @@ -28,6 +28,7 @@ #define TILE_NORMAL 0 #define TILE_CLIP 1 +#define TILE_DRAWER 2 typedef struct WIcon { WCoreWindow *core; and this is what I got if I do it by hand and do git diff: diff --git a/src/icon.h b/src/icon.h index 2c81ae7..368696f 100644 --- a/src/icon.h +++ b/src/icon.h @@ -28,6 +28,7 @@ #define TILE_NORMAL0 #define TILE_CLIP 1 +#define TILE_DRAWER2 typedef struct WIcon { WCoreWindow *core; so why the patch does not apply -- Renan Vedovato Traba Aluno de Bacharelado em Ciência da Computação pela Universidade Federal do Paraná Linux Register n°: 525911
Re: [PATCH 12/16] Add drawers to wmaker!
Save the patches as files and run diff. Perhaps spaces? Renan Traba escribió: >2013/4/8 Daniel Déchelotte > >> Still working on it. I hope to be able to share something tomorrow >[wow, >> that's a bold claim] >> > >I could not hold myself and I am fixing the patch :) >but I got stuck at this: > >this is in the patch file and does not apply: > >diff --git a/src/icon.h b/src/icon.h >index 4e030a8..fcb8ebf 100644 >--- a/src/icon.h >+++ b/src/icon.h >@@ -28,6 +28,7 @@ > > #define TILE_NORMAL 0 > #define TILE_CLIP 1 >+#define TILE_DRAWER 2 > > typedef struct WIcon { >WCoreWindow *core; > >and this is what I got if I do it by hand and do git diff: >diff --git a/src/icon.h b/src/icon.h >index 2c81ae7..368696f 100644 >--- a/src/icon.h >+++ b/src/icon.h >@@ -28,6 +28,7 @@ > > #define TILE_NORMAL0 > #define TILE_CLIP 1 >+#define TILE_DRAWER2 > > typedef struct WIcon { >WCoreWindow *core; > >so why the patch does not apply > > >-- > > >Renan Vedovato Traba >Aluno de Bacharelado em Ciência da Computação >pela Universidade Federal do Paraná > >Linux Register n°: 525911 -- Enviado desde mi teléfono con K-9 Mail.
Re: [PATCH 12/16] Add drawers to wmaker!
Renan wrote: > this is in the patch file and does not apply: > > diff --git a/src/icon.h b/src/icon.h > index 4e030a8..fcb8ebf 100644 > --- a/src/icon.h > +++ b/src/icon.h > @@ -28,6 +28,7 @@ > > #define TILE_NORMAL 0 > #define TILE_CLIP 1 > +#define TILE_DRAWER 2 > > typedef struct WIcon { > WCoreWindow *core; It fails because the context changed too much. I add the line "#define TILE_DRAWER 2" after line "#define TILE_CLIP 1" and before line "#define NORMAL_DOCK WM_DOCK". Git (or patch, really) doesn't see that line anymore as it got deleted in next, so it doesn't take any chance and interrupts the merge/cherry-pick operation. I hope you enjoy the improved and rebased version I've just sent :) -- Daniel -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.
Re: [PATCH 12/16] Add drawers to wmaker!
I was about the test my patch,.. well I will try yours now :) 2013/4/11 Daniel Déchelotte > Renan wrote: > > this is in the patch file and does not apply: > > > > diff --git a/src/icon.h b/src/icon.h > > index 4e030a8..fcb8ebf 100644 > > --- a/src/icon.h > > +++ b/src/icon.h > > @@ -28,6 +28,7 @@ > > > > #define TILE_NORMAL 0 > > #define TILE_CLIP 1 > > +#define TILE_DRAWER 2 > > > > typedef struct WIcon { > > WCoreWindow *core; > > It fails because the context changed too much. I add the line "#define > TILE_DRAWER 2" after line "#define TILE_CLIP 1" and before line "#define > NORMAL_DOCK WM_DOCK". Git (or patch, really) doesn't see that line anymore > as it got deleted in next, so it doesn't take any chance and interrupts the > merge/cherry-pick operation. > > I hope you enjoy the improved and rebased version I've just sent :) > > -- Daniel > -- Renan Vedovato Traba Aluno de Bacharelado em Ciência da Computação pela Universidade Federal do Paraná Linux Register n°: 525911