View Issue Details

IDProjectCategoryView StatusLast Update
0019914LazarusWidgetsetpublic2017-10-21 19:33
ReporterMartin Friebe Assigned ToZeljan Rikalo  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version0.9.31 (SVN) 
Fixed in Version0.9.31 (SVN) 
Summary0019914: GTK2 Notebook: Tab switching stops working, after BeginDrag
DescriptionThis can be observed with ExtendedNoteBook. Currently there is a workaround in MouseUp (ifNdef LCLWin32), which selects the tab on mouse up. (normally selection happens on MouseDown.

The need for a workaround, shows an underlying issue of the widgetset.

In gtk2 the following events are normally triggered (in this order), if a tab is clicked:

MouseDown
Changind (canChange) via CNNotify
Changed (optional) via CNNotify
MouseMove (if necessary)
MouseUp

If at any time during this (tested with in MouseMove and in MouseDown) BeginDrag is called, then the sequence of events will finish, BUT the next time a user clicks a tab, only Mouse events occur. CNNotify is not triggered.
It will be triggered again the 2nd next time.
TagsNo tags attached.
Fixed in Revision35184,35213
LazTarget1.0
WidgetsetGTK 2
Attached Files

Relationships

related to 0032591 resolvedJuha Manninen Anchor docking fall with AV and hang IDE after moving Code Explorer to another place 

Activities

Zeljan Rikalo

2012-02-06 15:58

developer   ~0056582

Please test and close if ok.

Martin Friebe

2012-02-06 20:47

manager   ~0056600

Removing the workaround in EktendedNotebook, there is still an issue left (tested with XFCE)

Drag a tab (OK)

TExtendedNotebook.MouseDown
TExtendedNotebook.MouseMove: BeginDragTab Idx=2
TExtendedNotebook.DoStartDrag FDraggingTabIndex=2
TExtendedNotebook.DoEndDrag FDraggingTabIndex=2
TExtendedNotebook.MouseUp

Click another tab (first time ignored / bug)

TExtendedNotebook.MouseDown
TExtendedNotebook.MouseUp

Click another tab again (now works)

TExtendedNotebook.MouseDown
TExtendedNotebook.CNNotify: FMouseWaitForDrag=True Idx=5
TExtendedNotebook.MouseUp

Zeljan Rikalo

2012-02-07 07:48

developer   ~0056608

Last edited: 2012-02-07 11:28

What's TExtendedNotebook ? Where is it ? example ?
UPDATE: hmm.... I cannot reproduce it .... fedora 14 gtk2-2.24 KDE , XFCE, GNOME ... works fine with all of them.

Zeljan Rikalo

2012-02-07 11:33

developer   ~0056613

Ok, found problem. Next time please attach example.
Normal TPageControl with dmAutomatic works fine, but extended notebooks properties for Tab dragging must be dmAutomatic to reproduce ... so wasting of time without clean explanation or example project.

Zeljan Rikalo

2012-02-07 11:46

developer   ~0056614

Please test and close if ok. (I've tested with and without workaround and both works fine now).

Martin Friebe

2012-02-07 20:28

manager   ~0056635

Thanks.

Sorry for the unclear description

Removed workaround in rev 35226

Issue History

Date Modified Username Field Change
2011-08-06 18:06 Martin Friebe New Issue
2011-08-06 18:06 Martin Friebe LazTarget => -
2011-08-06 18:06 Martin Friebe Widgetset => GTK 2
2011-10-06 13:42 Vincent Snijders Status new => acknowledged
2012-01-07 11:31 Zeljan Rikalo Relationship added related to 0018754
2012-02-04 11:18 Zeljan Rikalo LazTarget - => 1.2
2012-02-04 11:19 Zeljan Rikalo LazTarget 1.2 => 1.0
2012-02-04 14:05 Zeljan Rikalo Status acknowledged => assigned
2012-02-04 14:05 Zeljan Rikalo Assigned To => Zeljan Rikalo
2012-02-04 17:25 Zeljan Rikalo Relationship added related to 0018417
2012-02-04 17:25 Zeljan Rikalo Relationship deleted related to 0018754
2012-02-06 10:47 Zeljan Rikalo Relationship deleted related to 0018417
2012-02-06 15:58 Zeljan Rikalo Fixed in Revision => 35184
2012-02-06 15:58 Zeljan Rikalo Status assigned => resolved
2012-02-06 15:58 Zeljan Rikalo Resolution open => fixed
2012-02-06 15:58 Zeljan Rikalo Note Added: 0056582
2012-02-06 20:47 Martin Friebe Status resolved => assigned
2012-02-06 20:47 Martin Friebe Resolution fixed => reopened
2012-02-06 20:47 Martin Friebe Note Added: 0056600
2012-02-07 07:48 Zeljan Rikalo Note Added: 0056608
2012-02-07 07:48 Zeljan Rikalo Status assigned => feedback
2012-02-07 11:28 Zeljan Rikalo Note Edited: 0056608
2012-02-07 11:33 Zeljan Rikalo Note Added: 0056613
2012-02-07 11:46 Zeljan Rikalo Fixed in Revision 35184 => 35184,35213
2012-02-07 11:46 Zeljan Rikalo Status feedback => resolved
2012-02-07 11:46 Zeljan Rikalo Resolution reopened => fixed
2012-02-07 11:46 Zeljan Rikalo Note Added: 0056614
2012-02-07 20:28 Martin Friebe Status resolved => closed
2012-02-07 20:28 Martin Friebe Note Added: 0056635
2012-02-07 20:28 Martin Friebe Fixed in Version => 0.9.31 (SVN)
2017-10-21 19:33 Michl Relationship added related to 0032591