diff options
Diffstat (limited to 'recordmydesktop/src/poll_damage.c')
| -rw-r--r-- | recordmydesktop/src/poll_damage.c | 74 | 
1 files changed, 39 insertions, 35 deletions
| diff --git a/recordmydesktop/src/poll_damage.c b/recordmydesktop/src/poll_damage.c index a5b384d..4763fa0 100644 --- a/recordmydesktop/src/poll_damage.c +++ b/recordmydesktop/src/poll_damage.c @@ -1,28 +1,28 @@ -/********************************************************************************* -*                             recordMyDesktop                                    * -********************************************************************************** -*                                                                                * -*             Copyright (C) 2006  John Varouhakis                                * -*                                                                                * -*                                                                                * -*    This program is free software; you can redistribute it and/or modify        * -*    it under the terms of the GNU General Public License as published by        * -*    the Free Software Foundation; either version 2 of the License, or           * -*    (at your option) any later version.                                         * -*                                                                                * -*    This program is distributed in the hope that it will be useful,             * -*    but WITHOUT ANY WARRANTY; without even the implied warranty of              * -*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               * -*    GNU General Public License for more details.                                * -*                                                                                * -*    You should have received a copy of the GNU General Public License           * -*    along with this program; if not, write to the Free Software                 * -*    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA   * -*                                                                                * -*                                                                                * -*                                                                                * -*    For further information contact me at johnvarouhakis@gmail.com              * -**********************************************************************************/ +/****************************************************************************** +*                            recordMyDesktop                                  * +******************************************************************************* +*                                                                             * +*            Copyright (C) 2006,2007 John Varouhakis                          * +*                                                                             * +*                                                                             * +*   This program is free software; you can redistribute it and/or modify      * +*   it under the terms of the GNU General Public License as published by      * +*   the Free Software Foundation; either version 2 of the License, or         * +*   (at your option) any later version.                                       * +*                                                                             * +*   This program is distributed in the hope that it will be useful,           * +*   but WITHOUT ANY WARRANTY; without even the implied warranty of            * +*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the             * +*   GNU General Public License for more details.                              * +*                                                                             * +*   You should have received a copy of the GNU General Public License         * +*   along with this program; if not, write to the Free Software               * +*   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA  * +*                                                                             * +*                                                                             * +*                                                                             * +*   For further information contact me at johnvarouhakis@gmail.com            * +******************************************************************************/  #include <recordmydesktop.h> @@ -65,25 +65,29 @@ void *PollDamage(ProgData *pdata){      for (i = 0; i < nchildren; i++){          XWindowAttributes attribs;          if (XGetWindowAttributes (pdata->dpy,children[i],&attribs)){ -            if (!attribs.override_redirect && attribs.depth==pdata->specs.depth) -                XDamageCreate (pdata->dpy, children[i],XDamageReportRawRectangles); +            if(!attribs.override_redirect && attribs.depth==pdata->specs.depth) +                XDamageCreate(pdata->dpy, +                              children[i], +                              XDamageReportRawRectangles);          }      }      XFree(children); -    XDamageCreate( pdata->dpy, pdata->brwin.windowid, XDamageReportRawRectangles); +    XDamageCreate(pdata->dpy,pdata->brwin.windowid,XDamageReportRawRectangles);      while(pdata->running){ -        //damage polling doesn't stop,eventually full image may be needed -        //30/10/2006 : when and why did I write the above line? what did I mean?          XNextEvent(pdata->dpy,&event);          if (event.type == MapNotify ){              XWindowAttributes attribs; -            if (!((XMapEvent *)(&event))->override_redirect && XGetWindowAttributes (pdata->dpy, -                                        event.xcreatewindow.window, -                                        &attribs)){ -                if (!attribs.override_redirect && attribs.depth==pdata->specs.depth) -                    XDamageCreate (pdata->dpy,event.xcreatewindow.window,XDamageReportRawRectangles); +            if (!((XMapEvent *)(&event))->override_redirect&& +                XGetWindowAttributes(pdata->dpy, +                                     event.xcreatewindow.window, +                                     &attribs)){ +                if(!attribs.override_redirect&& +                   attribs.depth==pdata->specs.depth) +                    XDamageCreate(pdata->dpy, +                                  event.xcreatewindow.window, +                                  XDamageReportRawRectangles);              }          }          else if(event.type == pdata->damage_event + XDamageNotify ){ | 
