View Issue Details

IDProjectCategoryView StatusLast Update
0008043LazarusIDEpublic2011-12-01 11:22
ReporterFlorianAssigned ToVincent Snijders 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
PlatformWin32OSWindows x64OS Version
Product Version0.9.20Product Build 
Target VersionFixed in Version0.9.29 (SVN) 
Summary0008043: Update check of editor files
DescriptionUsual windows editors check if there are files to reload when they get the focus. Would be nice if lazarus could do the same.
TagsNo tags attached.
Fixed in Revision22062
LazTarget-
WidgetsetWin32/Win64
Attached Files

Activities

Mattias Gaertner

2009-08-07 14:03

manager   ~0029612

The fix now checks on every focus. This is far too much when the files are on slow filesystems (network shares).

Formerly it checked when you switch from another application back to lazarus. For example when you edit a file via the explorer or another editor and the switch to lazarus the IDE will check the editor files and ask if it should revert the file.

Please give an example why the IDE should check more often.

Mattias Gaertner

2009-08-07 14:06

manager   ~0029613

Maybe ApplicationActivate does not work under Windows any more?

Vincent Snijders

2009-08-08 09:51

manager   ~0029641

AppActive is always in FFlags, so TApplication.Activate exits immediately. AppActive
is always in FFlags because TApplication.Deactivate doesn't remove it. I think it is
because it assumes that if the application doesn't have the focus anymore, that
GetFocus returns a null handle. This is not true, it returns "The handle to the
window with the keyboard focus indicates success. NULL indicates that the calling
thread's message queue does not have an associated window with the keyboard focus."
See: http://msdn.microsoft.com/en-us/library/aa931337.aspx

So at least for windows that check should be removed from from TApplication.Deactivate.

Dmitry Boyarintsev

2009-08-10 12:46

developer   ~0029708

GetFocus test.
It tests how GetFocus behaves on form's Activation, Deactivation and during Active or Inactive state (using TTimer)

2009-08-10 12:46

 

GetFocusTest.zip (99,522 bytes)

Issue History

Date Modified Username Field Change
2006-12-31 11:06 Florian New Issue
2006-12-31 11:06 Florian LazTarget => -
2006-12-31 11:06 Florian Widgetset => Win32
2007-01-02 15:35 Vincent Snijders LazTarget - => post 1.0
2007-01-02 15:35 Vincent Snijders Status new => acknowledged
2009-08-07 12:13 Vincent Snijders Fixed in Revision => 21130
2009-08-07 12:13 Vincent Snijders LazTarget post 1.0 => -
2009-08-07 12:13 Vincent Snijders Status acknowledged => resolved
2009-08-07 12:13 Vincent Snijders Fixed in Version => 0.9.27 (SVN)
2009-08-07 12:13 Vincent Snijders Resolution open => fixed
2009-08-07 12:13 Vincent Snijders Assigned To => Vincent Snijders
2009-08-07 14:03 Mattias Gaertner Note Added: 0029612
2009-08-07 14:03 Mattias Gaertner Status resolved => feedback
2009-08-07 14:03 Mattias Gaertner Resolution fixed => reopened
2009-08-07 14:06 Mattias Gaertner Note Added: 0029613
2009-08-08 09:51 Vincent Snijders Note Added: 0029641
2009-08-10 12:46 Dmitry Boyarintsev Note Added: 0029708
2009-08-10 12:46 Dmitry Boyarintsev File Added: GetFocusTest.zip
2009-09-04 16:26 Vincent Snijders Status feedback => confirmed
2009-10-07 14:12 Vincent Snijders Fixed in Revision 21130 => 22062
2009-10-07 14:12 Vincent Snijders Status confirmed => resolved
2009-10-07 14:12 Vincent Snijders Fixed in Version 0.9.27 (SVN) => 0.9.29 (SVN)
2009-10-07 14:12 Vincent Snijders Resolution reopened => fixed
2011-12-01 11:22 Marc Weustink Status resolved => closed