On Sat, May 23, 2009 at 09:06:17PM +0400, Pavel Gorshkov wrote:
> On Sat, May 23, 2009 at 02:12:59PM +0200, Samir SAADA wrote:
> > Thanks for this patch Pavel,
> > I enjoy using it, but I am a bit confused when hiding the app and find
> > myself
> > on another workspace, the app's one; just different from the menu's hide
> > behavior.
>
> You're right Samir, thanks for reporting that. The original patch
> was somewhat sloppy and I should have reviewed it before sending.
>
> I'm attaching the new patch, its behavior should now be identical
> to that of Menu->Hide.
Ok that works. Appears another problem;
The "hide other" behavior seems counter instinctive now.
I think we should keep the mod+wheelDown. Like it was.
Samir.
> diff -ru WindowMaker-0.92.0.orig/src/appicon.c
> WindowMaker-0.92.0/src/appicon.c
> --- WindowMaker-0.92.0.orig/src/appicon.c 2004-10-14 21:31:49.000000000
> +0400
> +++ WindowMaker-0.92.0/src/appicon.c 2009-05-23 20:45:41.000000000 +0400
> @@ -554,16 +554,21 @@
> }
> #endif
>
> - unhideHere = (event->xbutton.state & ShiftMask);
> + if (event->xbutton.button == Button5) {
> + if (!wapp->flags.hidden)
> + wHideApplication(wapp);
> + } else {
> + unhideHere = (event->xbutton.state & ShiftMask);
> +
> + /* go to the last workspace that the user worked on the app */
> + if (!unhideHere && wapp->last_workspace != scr->current_workspace)
> + wWorkspaceChange(scr, wapp->last_workspace);
>
> - /* go to the last workspace that the user worked on the app */
> - if (!unhideHere && wapp->last_workspace != scr->current_workspace)
> - wWorkspaceChange(scr, wapp->last_workspace);
> + wUnhideApplication(wapp, event->xbutton.button==Button2, unhideHere);
>
> - wUnhideApplication(wapp, event->xbutton.button==Button2, unhideHere);
> -
> - if (event->xbutton.state & MOD_MASK) {
> - wHideOtherApplications(aicon->icon->owner);
> + if (event->xbutton.state & MOD_MASK) {
> + wHideOtherApplications(aicon->icon->owner);
> + }
> }
> }
>
> diff -ru WindowMaker-0.92.0.orig/src/dock.c WindowMaker-0.92.0/src/dock.c
> --- WindowMaker-0.92.0.orig/src/dock.c 2004-10-23 07:10:40.000000000
> +0400
> +++ WindowMaker-0.92.0/src/dock.c 2009-05-23 20:45:42.000000000 +0400
> @@ -3564,18 +3564,23 @@
>
> assert(wapp!=NULL);
>
> - unhideHere = (event->xbutton.state & ShiftMask);
> + if (event->xbutton.button == Button5) {
> + if (!wapp->flags.hidden)
> + wHideApplication(wapp);
> + } else {
> + unhideHere = (event->xbutton.state & ShiftMask);
>
> - /* go to the last workspace that the user worked on the app */
> - if (wapp->last_workspace != dock->screen_ptr->current_workspace
> - && !unhideHere) {
> - wWorkspaceChange(dock->screen_ptr, wapp->last_workspace);
> - }
> + /* go to the last workspace that the user worked on the app */
> + if (wapp->last_workspace != dock->screen_ptr->current_workspace
> + && !unhideHere) {
> + wWorkspaceChange(dock->screen_ptr, wapp->last_workspace);
> + }
>
> - wUnhideApplication(wapp, event->xbutton.button==Button2, unhideHere);
> + wUnhideApplication(wapp, event->xbutton.button==Button2,
> unhideHere);
>
> - if (event->xbutton.state & MOD_MASK) {
> - wHideOtherApplications(btn->icon->owner);
> + if (event->xbutton.state & MOD_MASK) {
> + wHideOtherApplications(btn->icon->owner);
> + }
> }
> } else {
> if (event->xbutton.button==Button1) {
--
To unsubscribe, send mail to [email protected].