View Issue Details

IDProjectCategoryView StatusLast Update
0037194LazarusWidgetsetpublic2021-01-12 23:03
ReporterCudaText man Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Product Version2.1 (SVN) 
Summary0037194: Gtk2 TCanvas.Polygon bug
DescriptionTo see this bug, you must download ATFlatCOntrols from
https://github.com/Alexey-T/ATFlatControls
and run its demo app/demo_tabs.
in demo, make bigger scale (trackbar makes it) to see big tabs. eg 250%.
in demo, press "stress" button which will add 1K tabs.
during adding tabs, tabs will paint bad after some seconds.

Polygon func in gtk2 has 2 parts: a) paint filling, b) paint outline. guess that part-2 is bad.
TagsNo tags attached.
Fixed in Revision
LazTarget
WidgetsetGTK 2
Attached Files

Activities

CudaText man

2020-06-09 21:55

reporter  

bad-tabs-look.png (53,996 bytes)   
bad-tabs-look.png (53,996 bytes)   

Anton Kavalenka

2020-06-10 08:24

reporter   ~0123363

If a problem with this long lines stroked through tabs?

CudaText man

2020-06-10 10:19

reporter   ~0123368

@Anton
I see 2 artifacts
a) long horiz lines- they appear sometimes, rarely
b) X marks are painted with ghosts (not filled, shifted)

Anton Kavalenka

2020-06-10 14:02

reporter   ~0123377

Last edited: 2020-06-10 14:04

View 2 revisions

Long lines appeared sometimes is not LCLGTK2 but GTK2 bug with coordinate wrap.
Try to limit in your code X-coordinate going to polygon function to 4095

I guess X-s are also painted by Polygon, so the problem is the same.

CudaText man

2021-01-09 22:43

reporter   ~0128226

Anton,
but all coordinates are below 4096 already, the amount of tabs is huge but all visible tabs are anyway in the small X coordinates.

Anton Kavalenka

2021-01-12 14:04

reporter   ~0128283

Last edited: 2021-01-12 14:34

View 2 revisions

If disabling outline painting fixes the problem (this may be array issue)?
If x86_64 and i386 behaves the same way?

>but all coordinates are below 4096 already
With over 1000 tabs?
Scrolling is handmade or native using TScrollWindow?

CudaText man

2021-01-12 23:03

reporter   ~0128291

Anton,
- I cannot get what do you mean: 'disable outline', it is usual painting of ATTabs
- x64 / x32: I can test only on x64 because Linux is x64, don't know how to run x32
- yes, with over 1000 tabs, only 10-16 tabs are visible so others are not painted
- scrolling is handmade

Issue History

Date Modified Username Field Change
2020-06-09 21:55 CudaText man New Issue
2020-06-09 21:55 CudaText man File Added: bad-tabs-look.png
2020-06-10 08:24 Anton Kavalenka Note Added: 0123363
2020-06-10 10:19 CudaText man Note Added: 0123368
2020-06-10 14:02 Anton Kavalenka Note Added: 0123377
2020-06-10 14:04 Anton Kavalenka Note Edited: 0123377 View Revisions
2021-01-09 22:43 CudaText man Note Added: 0128226
2021-01-12 14:04 Anton Kavalenka Note Added: 0128283
2021-01-12 14:34 Anton Kavalenka Note Edited: 0128283 View Revisions
2021-01-12 23:03 CudaText man Note Added: 0128291