bugGNUstep - Bugs: bug #25505, cairo backend scrolling broken...

Group
 
 

bug #25505: cairo backend scrolling broken with recent cairo

Submitter:  Fred Kiefer <FredKiefer>
Submitted:  Fri 06 Feb 2009 10:18:52 AM UTC
   
 
Category:  Backend Severity:  3 - Normal
Item Group:  Bug Status:  Fixed
Privacy:  Public Assigned to:  FredKiefer
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Sun 19 Jul 2009 02:59:25 PM UTC, comment #17: 

Works perfectly for me too. I tested scrolling and resizing on open panel, text view, table view and a custom view which lets you scroll through a collection of images.

I also use Ubuntu 9.04 with cairo "1.8.6-1ubuntu2".

Thanks for the fix :-)

Quentin Mathé <qmathe>
Group Member
Sat 11 Jul 2009 12:28:41 AM UTC, comment #16: 

Fantastic, I just updated my gnustep svn and tested and the problem seems to be fixed for me as well.
This is on Ubuntu 9.04 with cairo "1.8.6-1ubuntu2". I will test with the latest cairo from SVN as well.

Nice work :)

Eric Wasylishen <ericw>
Group Member
Fri 10 Jul 2009 08:13:04 AM UTC, comment #15: 

After this great help I was able to write a fix for this issue. I tested it with different settings on my machine and it works there, but more testing with different versions of cairo and different GNUstep applications will be needed.

Fred Kiefer <FredKiefer>
Group Member
Fri 10 Jul 2009 07:32:34 AM UTC, comment #14: 

Thank you! This really helps, maybe it isn't cairo that is broken but the way we compute the offset?

I will add a bit of output to [CairoGState setOffset:] and perhaps get a better understanding of what is going on here. I also remember the cairo bug we had with cairo < 1.6, where the clipping rectangles did not correctly handle the offset. Perhaps something similar applies here?

BTW we no longer use GSX11HandlesWindowDecorations, although it is still supported, the new name is GSBackHandlesWindowDecorations. Setting this to NO really turns off the problem.

Fred Kiefer <FredKiefer>
Group Member
Fri 10 Jul 2009 01:40:57 AM UTC, comment #13: 

I just installed from SVN again yesterday and was still getting bug.  Just now I played around with some defaults (NSMenuInterfaceStyle, GSX11HandlesWindowDecorations, GSFileBrowserHideDotFiles) as well as set the color scheme to "lighter" in SystemPreferences, and now I no longer have this issue... nothing changed except those defaults and the colors.  No more scrolling issues what so ever.

The only default that would make sense there is GSX11HandlesWindowDecorations???

Stef <stefanbidi>
Group Member
Tue 19 May 2009 07:40:01 AM UTC, comment #12: 

It feels great to no longer be alone with this problem :-)

As we are all using completely different environments and have different hardware I suspect that cairo >= 1.8.0 is the common point that causes the problem. Is anybody using such a version of cairo without the scrolling issue?

Fred Kiefer <FredKiefer>
Group Member
Sat 09 May 2009 01:47:02 AM UTC, comment #11: 

OK, I finally got the same problem.  Just installed GNUstep from SVN tonight under a Debian Testing install.  Xorg is 7.3, cairo is 1.8.6 and I'm using the nv free driver.

Stef <stefanbidi>
Group Member
Sat 02 May 2009 04:12:25 AM UTC, comment #10: 

Hi Fred,
I apologize for not reporting this sooner - I've been meaning to but haven't had time - but I've been having this problem for several months on various machines. (Ubuntu 8.10 and 9.04 on VirtualBox, Ubuntu 8.10 on a laptop with old Intel i815 graphics, Debian testing on an iBook G4 with ATI graphics and the latest cairo release)

So, it seems to not be specific to any particular operating system or graphics card.

When I use any scrolling areas, 'trails' are left behind - I attached a screenshot, but I assume it's the same problem. Let me know if you need me to do any tests :)


Eric Wasylishen <ericw>
Group Member
Sun 08 Mar 2009 01:33:43 AM UTC, comment #9: 

Oops, I had forgotten I had this planned!  Anyway, I ran a test with the latest SVN (r28049) and nvidia driver version 180.29.  Still works on my side.  Still using Slackware 12.2, which I think comes with Xorg 7.3 (not sure about that, Xorg server is version 1.4.2).

Stef <stefanbidi>
Group Member
Mon 16 Feb 2009 07:31:18 PM UTC, comment #8: 

I'll upgrade my nvidia driver and see what I can do with cairo.  However, due to some limitation on the Slackware side it's too much of a pain to upgrade Xorg.  At least we'll be able to narrow it down some.

Stef <stefanbidi>
Group Member
Mon 16 Feb 2009 05:52:05 PM UTC, comment #7: 

My nvidia driver is version 180.22 and my cairo 1.8.0. This could be enought to explain the difference. Or it may even be the X server (Suse 11.1 comes with 7.4).

At least we can now rule out the missing SHM as the only reason for my problem.

Fred Kiefer <FredKiefer>
Group Member
Mon 16 Feb 2009 12:33:18 AM UTC, comment #6: 

Oops, forgot that!  It's version 1.6.4.

Stef <stefanbidi>
Group Member
Sun 15 Feb 2009 11:45:18 PM UTC, comment #5: 

And what is your cairo release? Maybe I just need to change that.

Fred Kiefer <FredKiefer>
Group Member
Sun 15 Feb 2009 02:38:46 AM UTC, comment #4: 

Nop, everything still works correctly!  I'm also using the nvidia driver (version 177.82), so I don't think that's it either.

Stef <stefanbidi>
Group Member
Sat 14 Feb 2009 09:36:01 PM UTC, comment #3: 

Thank you for testimng this! The way I noticed the difference was by starting up that memory debugging panel (open the About panel and click on the icon there) and scrolling in that.

If it isn't the SHM setting then it has to do with the cairo version I am using or the graphic driver (nvidia). Looks like this problem is even worse and I am alone with it.

Fred Kiefer <FredKiefer>
Group Member
Sat 14 Feb 2009 02:58:02 AM UTC, comment #2: 

Works on my end, with both XWindowBufferUseXShm set to NO or YES... I really couldn't tell the difference of apps started after I set the default and the ones from before.

Stef <stefanbidi>
Group Member
Sat 07 Feb 2009 12:39:08 PM UTC, comment #1: 

I just found another potential cause of this problem. My X server doesn't support shared memory pixmaps.
GNUstep reports:
XShm pixmaps not supported by X server.

Could it be that scrolling in our cairo backend never worked without XShm pixmaps? Could somebody with a working cairo backend please test this by switching of Xshm and then use scrolling?

(You switch Xshm off by setting XWindowBufferUseXShm to NO)

Fred Kiefer <FredKiefer>
Group Member
Fri 06 Feb 2009 10:18:52 AM UTC, original submission:  

I just updated to a new cairo release and there the scrolling operation seems to be broken. It gives the old result of mangled up pixels we worked so hard to avoid. Not sure what cairo changed this time, but it looks like we have to rework the whole copy onto self mechanism again.

From the header files this looks like cairo 1.8.0, which isn't that recent :-(

All this is on Suse 11.1.

Fred Kiefer <FredKiefer>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #18072:  cairo_garbled.png added by ericw (33KiB - image/png - An example of the symptoms I see.)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by qmathe (Posted a comment)
  • -email is unavailable- added by ericw (Updated the item)
  • -email is unavailable- added by stefanbidi (Posted a comment)
  • -email is unavailable- added by FredKiefer (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2009-07-20 FredKiefer StatusReady For Test Fixed
        Open/ClosedIn Test Closed
    2009-07-10 FredKiefer StatusIn Progress Ready For Test
        Open/ClosedOpen In Test
    2009-07-10 FredKiefer StatusNone In Progress
    2009-05-02 ericw Attached File- Added cairo_garbled.png, #18072

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code