[Qgis-developer] Map canvas flickers

Marco Hugentobler marco.hugentobler at sourcepole.ch
Tue Aug 7 08:56:32 PDT 2012


>I'll disable this option and remove it from the dialog on any other than
>Q_WS_X11 or do you think this can be useful for Mac as well?

Disabling is fine for Mac as well (Qt::WA_PaintOnScreen has no effect on 
Mac).

Am 07.08.2012 17:45, schrieb Matthias Kuhn:
> Thanks for the review and good point.
>
> I'll disable this option and remove it from the dialog on any other than
> Q_WS_X11 or do you think this can be useful for Mac as well? (You
> diabled some code and mentioned resizing as cause for this)
>
> Regards
>
> On Die, 2012-08-07 at 17:37 +0200, Marco Hugentobler wrote:
>> Hi Matthias
>>
>> I didn't try it yet, but from a first look at the patch source, it seems
>> to me backbuffering is enabled by default:
>>
>> settings.value( "/Map/enableBackbuffer", 1 ).toBool();
>>
>> That would be ok on X11. But the windows users (who are not affected by
>> the flickering) would loose the paint update / esc key interrupt without
>> having an advantage. So either always execute processEvents() in vector
>> layer for windows or disable backbuffer by default.
>>
>> Apart from that, the patch looks fine and I'm happy to apply it.
>>
>> Regards,
>> Marco
>>
>> Am 07.08.2012 11:02, schrieb Matthias Kuhn:
>>> Hi all,
>>>
>>> There is now a config option to turn this fix on and off
>>> ( Setting=>Options=>Rendering: Enable backbuffer )
>>>
>>> The more people that test it, the better are the chances to get this
>>> into the main code.
>>>
>>> Thanks to everybody who is participating in this discussion and testing!
>>>
>>> On Fre, 2012-07-27 at 13:08 +0200, Matthias Kuhn wrote:
>>>> Hi all,
>>>>
>>>> there is this issue report #4011 "Map canvas flickers when content is
>>>> dragged" which is actually pretty annoying and doesn't get much
>>>> attention. ( http://hub.qgis.org/issues/4011 ) I think the solution
>>>> would be pretty simple. Please read on.
>>>>
>>>> It was introduced by f4d26d6211830a866030a333236dcfbf15e077aa "Fix for
>>>> resize crash, ticket #2714".
>>>> This bugfix disables backbuffering, what fixes the crash but leads to
>>>> the beforementioned flickering.
>>>>
>>>> The crash seems to be related to Qt versions (probably 4.6 and 4.7
>>>> affected). When I tried to reproduce the crash in 4.8.1 (by reverting
>>>> abovementioned patch) I couldn't reproduce the crash. So it is well
>>>> possible that this problem has been fixed in Qt upstreams.
>>>>
>>>> But: I myself never could reproduce this crash (due to the lack of a
>>>> system with old Qt libs). So, I would be happy if someone familiar with
>>>> this problem could confirm that this is fixed with Qt 4.8.
>>>>
>>>> Then there are two possibilities (unless you come up with a third one):
>>>>
>>>> 1. Check for qVersion upon every repaint as suggested by Martin Dobias
>>>> and then enable/disable the workaround accordingly.
>>>>
>>>> 2. Switch the workaround on/off by a pre-compiler constant. This way,
>>>> any new distro with Qt>=4.8 could be shipped without the workaround-code
>>>> being compiled into the binaries.
>>>>
>>>> Any comments on this issue are very welcome, as it makes QGIS look a lot
>>>> sweeter :)
>>>>
>>>> Regards
>>>>
>>>> _______________________________________________
>>>> Qgis-developer mailing list
>>>> Qgis-developer at lists.osgeo.org
>>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>>> _______________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer


-- 
Dr. Marco Hugentobler
Sourcepole -  Linux & Open Source Solutions
Weberstrasse 5, CH-8004 Zürich, Switzerland
marco.hugentobler at sourcepole.ch http://www.sourcepole.ch
Technical Advisor QGIS Project Steering Committee



More information about the Qgis-developer mailing list