View Issue Details

IDProjectCategoryView StatusLast Update
0018755LazarusIDEpublic2020-07-19 04:19
ReporterJohn Stoneham Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status acknowledgedResolutionopen 
Product Version0.9.31 (SVN) 
Summary0018755: Single-clicking on a property in the Object Inspector unintentionally increments its value.
DescriptionThis behavior recently happened in the svn branch, using the Carbon widget set. It does not happen in 0.9.28.2, nor does it happen under Ubuntu (gtk2). It does not happen with TComboBoxes implemented in my own code, only within the Object Inspector in Lazarus. Below are links to two very short screencast captures of the behavior, one on ubuntu, and one with carbon.
http://dl.dropbox.com/u/5640903/carbon.mov
http://dl.dropbox.com/u/5640903/ubuntu.mov
TagsCarbon, IDE
Fixed in Revision
LazTarget-
WidgetsetCarbon
Attached Files

Relationships

has duplicate 0018442 resolvedBart Broersma Lazarus Object Inspector combo property editors change the value on their own 
has duplicate 0022578 resolvedJuha Manninen Lazarus Single-Clicking a Property on Mac OS X in the Object Inspector Changes the Value 
has duplicate 0025356 resolvedBart Broersma Lazarus Object Inspector: Selecting A Value (Single Click) is treated like Double Click (and Changing the value) 
child of 0015956 closedMattias Gaertner Patches Patch for object inspector double click handling (12021) 

Activities

John Stoneham

2011-02-24 05:07

reporter   ~0046224

This bug was introduced in revision 26493, as part of a patch to fix a bug involving double-clicking in the Object Inspector when mouse focus was elsewhere, e.g. the editor. The problem code for the current bug is in the TOICustomPropertyGrid.ValueComboBoxMouseUp procedure located in ideintf/objectinspector.pp at line 1469 (as of revision 29616).

Since it only happens on Carbon (possibly because of the way Carbon handles mouse clicks), there is a simple fix using conditional compilation:

procedure TOICustomPropertyGrid.ValueComboBoxMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then begin
    if (Shift=[ssCtrl,ssLeft]) then
      DoCallEdit(oiqeShowValue)
    {$IFNDEF LCLCarbon}
    else if (FFirstClickTime<>0) and (Now-FFirstClickTime<(1/86400*0.4)) then
      ValueEditDblClick(Sender);
    {$ENDIF}
  end;
end;

Dmitry Boyarintsev

2011-02-26 04:36

developer   ~0046269

thank you for your research.

Bart Broersma

2012-09-01 23:45

developer   ~0062031

Target 1.0.2 since it's a regression.

Juha Manninen

2020-07-11 12:25

developer   ~0123884

Dmitry, I guess old Carbon bugs are not fixed any more. This should be resolved as "won't fix".

Issue History

Date Modified Username Field Change
2011-02-15 00:15 John Stoneham New Issue
2011-02-15 00:15 John Stoneham Widgetset => Carbon
2011-02-15 00:16 John Stoneham Tag Attached: IDE
2011-02-15 00:17 John Stoneham Tag Attached: Carbon
2011-02-15 02:14 Dmitry Boyarintsev Status new => assigned
2011-02-15 02:14 Dmitry Boyarintsev Assigned To => Dmitry Boyarintsev
2011-02-20 22:53 Dmitry Boyarintsev Relationship added has duplicate 0018442
2011-02-24 05:07 John Stoneham Note Added: 0046224
2011-02-26 04:35 Dmitry Boyarintsev Relationship added child of 0015956
2011-02-26 04:36 Dmitry Boyarintsev Note Added: 0046269
2012-09-01 23:45 Bart Broersma LazTarget => 1.0.2
2012-09-01 23:45 Bart Broersma Note Added: 0062031
2012-09-01 23:45 Bart Broersma Target Version => 1.0.2
2012-10-09 13:42 Martin Friebe LazTarget 1.0.2 => 1.0.4
2012-10-09 13:46 Martin Friebe Target Version 1.0.2 => 1.0.4
2013-05-06 11:28 Juha Manninen Relationship added has duplicate 0022578
2013-09-14 00:41 Martin Friebe LazTarget 1.0.4 => 1.2
2013-09-14 00:42 Martin Friebe Target Version 1.0.4 => 1.2.0
2013-11-23 15:05 Bart Broersma Relationship added has duplicate 0025356
2014-02-15 20:51 Martin Friebe LazTarget 1.2 => 1.4
2014-02-15 20:52 Martin Friebe Target Version 1.2.0 => 1.4
2014-09-09 23:40 Juha Manninen LazTarget 1.4 => -
2014-09-09 23:40 Juha Manninen Target Version 1.4 =>
2020-07-11 12:25 Juha Manninen Note Added: 0123884
2020-07-19 04:19 Dmitry Boyarintsev Assigned To Dmitry Boyarintsev =>
2020-07-19 04:19 Dmitry Boyarintsev Status assigned => acknowledged