Lazarus 1.4 fixes branch

From Free Pascal wiki
Jump to: navigation, search

This page contains the revisions to be merged from trunk to the Lazarus 1.4 fixes branch.

This are only fixes made after the branch was created. For other fixes made since the previous release (1.2) see SVN and Lazarus_1.2_fixes_branch

Release notes can be found here

Notes

Warning-icon.png

Warning: FPC 2.6.4 has a bug when assigning data to TStringfield types (e.g. VARCHAR) of larger than 8192 bytes. Please see Issue #26068 for a fix you can apply to your projects.

Fixes for 1.4.6

Merge requests

Submitted by developer / committer

Submitted by others

Merged revisions for 1.4.6

  • r49674 LCL: Get ComboBox.ItemIndex from Widgetset also when csDestroying. Needed by TIniPropStorage. Issue #28514.
  • r50023 fpvectorial: Fix svg reader crashing with some "malformed" files which Firefox can open. Issue #28659.
  • r50061 LCL: Publish TRadioButton.Alignment (Issue #0028853).
  • r47569 IDE: improve layout anchors in 2 forms.
  • r49977 IDE: Editor-Macro window, layout and tab order. Issue 0028793
  • r50068 Qt: fixed ShowInTaskbar after first show. Issue #28856
  • r50037 Gtk2: fixed programatically resizing of TCustomForm when borderstyle is bsSingle or bsDialog. Issue #28837,Issue #25035
  • r50124 Qt: fix focus policy. Issue #28880
  • r50125 Qt: set proper focus policy for TCustomForm handle. Fixed stalled capture on hidden abstractscrollarea viewport. Issue #28880
  • r50130 TurboPower_IPro: more general way to copy text to the clipboard Issue #21935. Add CTRL+A to "select all". Improved rendering of table, p and header nodes.
  • r50139 Qt: better handling of forms with borderstyle = bsNone. Issue #26018, related to Issue #28863
  • r50195 Qt: fixed csNoFocus on form under X11. Issue #28922
  • r50135 TurboPower_ipro: Avoid insertion of empty line into word-wrapped long text copied to clipboard. Replace literal "#13#10" by "LineEnding"
  • r50145 TurboPower_iPro: Remove occasional empty line at top of document. Fix horizontal text alignment in table cells.
  • r50154 Turbopower_IPro: Rename TIpHtmlRectListEntry.Node to .Element
  • r50155 TurboPower_IPro: New selection method SHIFT+Click
  • r50163 TurboPower_IPro: Fix selection of text within tables. Note this fix breaks correct copying of text from tables to the clipboard!
  • r50166 Turbopower_ipro: Fix copying of table cells to clipboard.
  • r50167 Turbopower_ipro: Improved copying to clipboard if selection endpoint is beyond line end.
  • r50175 TurboPower_ipro: reactivate blank lines around header lines copied to clipboard
  • r50189 Turbopower_iPro: Avoid opening hyperlinks if a special key is pressed while clicking.
  • r50190 TurboPower_iPro: Improved selection behavior if first selection click is left of line start.
  • r50201 TAChart: Make sure that legend does not overlap axes if UseSidebar is false.
  • r50333 TAChart: Make TPieSeries.Radius public
  • r50352 TAChart: Add new property T(Generic)ChartMarks.LinkDistance to prevent painting the series pointer symbol over the marker arrow.
  • r50467 Docs: fix typo in grids.xml (Issue #0029062)
  • r50519 LazUtils: fix crash in ExpandFilenameUtf8 (Issue #0029098).
  • r50556 Translations: Hungarian translation update by Péter Gábor, bug 29118

Fixes for 1.4.4 (Merged)

Important note for OS X: OS X 10.10 Yosemite no longer supports the default debugging format of FPC 2.6.4 (-g stabs). The IDE uses -gw (dwarf) instead on darwin.

  • r47800 TDateEdit: refactor GetDate/SetDate; reduce the need for parsing Text for GetDate; force valid text in control when DirectInput = False
  • r49078 ToDo List: Fix column widths, was wrong in OSX. Issue #27866.
  • r49543 LazFileUtils: FileIsReadable on Windows should only return True if the file actually exists.
  • r49559 Examples: fix memoryleak in ResExplorer
  • r49560 Examples: ResExplorer: clear contents of the pagecontrol if ther is nothing to be shown or when opening another file.
  • r49321 LCL: Fix wrong ListBox painting in WinXP. Issue #28275.
  • r49561 LCL-Win32: Take care of standard style painting when reducing flicker in TListbox. Issue #28146.
  • r49587 IDE: Include compatibility information for compatibility with W8/W81/W10. Issue #0028435.
  • r49589 TAChart: Fix missing minor ticks #28466 Issue #issue #28466.
  • r49595 LCL: in TMaskEdit.RestoreMask only clear the control if it is actually masked. Issue #0028477.
  • r49599 IDE: In "Needs building" dialog prevent a crash when text was typed in Combobox. Layout improvements. Issue #28456.
  • r49686 TShellTreeView: publish properties StateImages, OnGetImageIndex and OnGetSelectedIndex. Patch by wp. Issue #0028539
  • r49695, r49849 Translations: Hungarian translation updates by Péter Gábor
  • r49703 IdeIntf: Use ShortCompareText in both compare functions for Clasnames. Issue #28546.
  • r49711 LCL: Prevent "Abstract method called" also with FPC 3.0.0. Issue #27754.
  • r48689 LazUtils: Implement abstract methods for classes TXMLObjectWriter / TXMLObjectReader. Issue #27817, patch from Vojtech Cihak.
  • r49712 LazUtils: Prevent "Abstract method called" for TXMLObjectWriter / TXMLObjectReader also with FPC 3.0.0. Issue #27817.
  • r49480,r49489 OI: Update text value also when the control is changed but property remains the same. Issue #23918.
  • r49726 LCL: Make TUpDown.ArrowKeys work. Issue #28537
  • r49730 Qt: fixed font assignment when parentFont=false and font is default one. Issue #28437.
  • r49731 Qt: fixed IndexOfTabAt() when bidiMode of TPageControl is RTL. Issue #28591.
  • r49741 TShellTreeView: fix populating the tree when FileSortType at designtime is not fstNone. Issue #0028565.
  • r49750 IDEIntf: fixed DBGrid column deletion prompt, Issue #28611
  • r49751 LCL: Publish TEditButton.ParentShowHint (Issue #0028492).
  • r49733 TAChart: Publish OnResize event.
  • r49760 LazReport: lrCodeReport RunReport procedure now takes an argument for optionally showing the report after run
  • r49763 LazReport, lrCodeReport: add missing layout text property, from Frans van Leeuwen. Issue #28609.
  • r49764 LazReport, lrCodeReport: sample for testing text layout.
  • r49766 TFloatSpinEdit: don't "eat" Copy/Cut/Paste keyboard shortcuts (Issue #0028626).
  • r49768 Qt: avoid Qt assertions when setting minimum width of statusbar panels.
  • r49769 Qt: fixed clientrect sync between lcl and qt for TCustomControls. Issue #28596
  • r49839 LCL: do not call DoCallKeyEventHandler() inside TWinControl.KeyDown() if Key = 0, since it might be that our control is destroyed inside OnKeyDown event. Fixes regression of Issue #28537
  • r49856 LCL, fix crash on inserting record in multiselect dbgrid, from Luiz Americo. Issue #28688.
  • r49860 LCL: TFileNameEdit - use TOpenPictureDialog if kind of dialog is dkPicture.
  • r49889 SynEdit, Highlighter: more html5 tags. Issue 28547 patch by Janusz
  • r49890 SynEdit, Highlighter: more css3 tags. Issue 28548 patch by Janusz
  • r49891 SynEdit: invalidate if Markup.enable changes. Issue 0028729
  • r49892 SynEdit: fix drag and drop selection-text, drop (move) after multi-byte chars. Issue 0028724
  • r49893 IDE: Fix 2 stage key-combos issue 0027992
  • r49896 LCL, grids: fix range check error on pasting empty cells, fix by wp, Issue #28747.
  • r49885 LCL, grids: make ClearSelections public, from wp, Issue #27437
  • r49904 tools: updatemakefiles: using only lazutils instead of lclbase
  • r49905 tools: updatemakefiles: fixed calling it from inside tools
  • r49906 IDE+lazbuild+makefiles: on darwin use -gw instead of -g

Fixes for 1.4.2 (Merged)

  • r48777 Qt: unset taskbar button only when showintaskbar=stNever.
  • r48782, r48812, r48819, r48834, r48838, r48883, r48901, r48945, r49035, r49144 Translations: updated French translation by Gilles Vasseur
  • r48784 IDEIntf: regenerated translations
  • r48785 IDEIntf: deleted file, which was committed by accident
  • r48786 SynEdit: regenerated translations
  • r48787, r49272 Translations: Hungarian translation updates by Péter Gábor
  • r48796 IDE: In BuildMode config dialog, prevent hiding Name in the grid when InSession is not shown. Issue #27881.
  • r48809 IDE: Update project inspector after renaming a unit. Issue #27909.
  • r48795, r48811 translations: German: updates from Swen Heinig
  • r48824 TAChart: Fix ParentColor not being stored in lfm file. Patch by Balázs Székely (Issue #0027787).
  • r48840 Qt: do not report stalled focus changes if widget is invisible. Issue #27960
  • r48842 Qt: cleanup unused local variables, removed one warning. Issue #27951
  • r48843 Gtk2: fixed menu item separator. Issue #27905
  • r48847 EditorToolBar: regenerated translations
  • r48848 LazReport, AddFunction addon: regenerated translations
  • r48849 SynEdit: regenerated translations
  • r48850 LCL: regenerated translations
  • r48851, r48866, r48877, r48881, r48896, r48897 Translations: Spanish translation update by José Martínez with some help of Jesus Reyes, bug 27803
  • r48854 LazUtils: TFileSearcher.Search: if SearchPath is empty, search current directory.
  • r48858 LazUtils: TFileSearcher.Search: do not remove directories that are subdirectories of another directory from ASearchPath, when ASearchSubDirs is False. Issue #0027965.
  • r48885 LHelp: i18n-ed Open Dialog (bug 27977) and updated Russian translation
  • r48892 lazbuild: save lpk list after compiling an lpk, bug 27991
  • r48868 IDE: fix alt-modifier in dutch translation for main menu. Issue #0027967.
  • r48870 Dialogs: Add another overloaded version of MessageDlg (Delphi compatibility). Issue #0027964
  • r48874 Packager: Don't hide selection in the ListView of Open Installed Package dialog.
  • r48875 Qt: fixed regression with focus of controls on mdichild forms. Issue #0027982
  • r48878 Packager: When adding a new component, update palette page only if there is one. Issue #27985
  • r48879 Qt: do not assume that parent of TQtPage is TQtTabWidget.
  • r48768 IDE, fieldsEditor: show a message if a field cannot be created, Issue #26867.
  • r48871, 48872 LCL, grids: make sure the grid is notified about text is changed on pressing the first char, Issue #27955.
  • r48887 Printers, win: check for PDev.DevModeSize that prevents error 204, from DaLiv, Issue #27970.
  • r48888 LazReport, fix image exporter filename, from willians cleyton, Issue #27986.
  • r48889 IDEIntf, dbpropedits: check when retrieving fields definitions, Issue #27962.
  • r48899 IDEIntf: fixed typo
  • r48900 IDEIntf: regenerated translations and updated Russian translation
  • r48941 Win32: fixed range check error.Patch by Petr-K. Issue #28039.
  • r48956 Packager: improved i18n, bug 28021
  • r48957 IDE: regenerated translations and updated Russian translation
  • r48963 IDE: improved layout and i18n by replacing separate buttons with ButtonPanel, bug 27966
  • r48964 IDE: improved wording in several dialogs ('Where' -> 'Search scope' etc.), bug 27966
  • r48965 IDE: Improved layout and i18n of Conditional Defines dialog, bug 27966
  • r48966 Packager: improved Package Links dialog i18n, bug 27652
  • r48967 IDE: regenerated translations and updated Russian translation
  • r48988 Qt: implemented TMemo.Caret.Y position.
  • r49001 IDE: improved external tool editor dialog layout, bug 28067
  • r49002 IDEIntf: improved i18n, regenerated translations and updated Russian translation, bug 28067
  • r49003 IDE: improved component palette pages list i18n, bug 28061
  • r49004 IDE: regenerated translations and updated Russian translation
  • r49007 LCL: Fix a ChangeBoundLoop-Detected-Error with TControlBar. Issue #27855
  • r49019 TAChart: Fix crash of IDE if TPieSeries is linked to a TUserDefinedChartSource
  • r49020 TAChart: Fix crash of IDE if TFitSeries is linked to a TUserDefinedChartSource
  • r49026 Qt: change kind of focuspolicy when controlstyle contains csNoFocus. Issue #28090
  • r49091 SynEdit: Highlight colon in lfm. Issue 0028112
  • r49069 MaskEdit: fix RestoreMask.
  • r49081 Qt: create properly sized device context in GetDC(). Issue #28106
  • r49121 LazReport, when formatting numbers check that value is really numeric Issue #28114
  • r49154 LazReport, fix loading of old binary reports (older than version 28), modified patch from Tsvetoslav, Issue #27179
  • r49165 EditButton: fix responding to Shift-Tab (Issue #0028161).
  • r49167 MaskEdit: implement FormatMaskText function (Issue #0028167).
  • r49170 LCL-Win: Prevent flicker in TListbox. Issue #28146
  • r49171 IDE: Ask 'Continue search from the beginning?' only when not already in beginning. Issue #28177.
  • r49172 Menueditor: Fix error when moving menu items. Issue #27849.
  • r49187 Win32: handle ofDontAddToRecent option in TOpen/SaveDialog (Issue #0027682).
  • r49192 SynEdit: Fixed Option for MouseLink (when not using MouseActions)
  • r49197 MaskEdit: fix FormatMaskText.
  • r49217 IDE: improved Code Browser i18n, bug 28204
  • r49218 IDE: regenerated translations and updated Russian translation
  • r49211 Qt: better check if variant is really valid handle.
  • r49214 LCL: fix TDBRadioGroup value not set when not in editmode, from Erwin van den Bosch, Issue #25754.
  • r49222, r49210 SynEdit: Fixed Option for MouseLink (when not using MouseActions) / ssMeta on MAc
  • r49283 SynEdit: Fixed overflow error
  • r49289 IDE: Don't select the first component in ComponentList at startup. Issue #28260
  • r49295 IDE: fixed Version Info dialog stringgrid title i18n and made some fixes/improvements to Russian translation, Issue #28251
  • r49299 Qt: more safe delete of viewport. Issue #28264
  • r49302 IDE: improved 'Show files to be deleted' dialog i18n, bug 28251
  • r49303 IDE: regenerated translations and updated Russian translation
  • r49312 Debugger, CallStack window: localized initial 'Max 10' button caption, shortened 'Goto' button caption and changed source column caption ('Source' -> 'Location')
  • r49313 IDE: regenerated translations and updated Russian translation
  • r49310 TabOrder dialog: Prevent an extra item under EditButton. Issue #28191
  • r49317 IDE: Respond to Enter in SearchResultsView when focus on FilterEdit. Issue #28277
  • r49361 Qt: proper clear of message in QStatusBar. Patch by David Jenkins. Issue #28307
  • r49362 Qt: fixed items sizing in TListView.Also, added center alignment of text for vsIcon viewstyle.Patch by David Jenkins, modified by me. Issue #28212
  • r49368 MaskEdit: Fix loading text. Issue #0028328.
  • r48606, r49401 Prevent "Abstract method called" with FPC 3.0. Issue #27754.
  • r49420 Gtk2: fixed show/hide of TListBox. Issue #28341
  • r49398 LazDataDesktop: improved 'Connect to database' form layout
  • r49399 LazDataDesktop: cleanup
  • r49400 LazDataDesktop: only show submenu for 'New connection' menu item, do not show dialog with rougly the same content, bug 28337
  • r49413 LazDataDesktop: fixed 'New connection' main menu item i18n, also made sure that 'New connection' dialog is accesible with Ctrl+Alt+N shortcut, bug 28337
  • r49422 LazDataDesktop: disabled 'New connection' dialog also in context menu, bug 28337
  • r49476 Debugger, GDBMI: leave idle, if dbg is stopped, errored or destroyed. Issue #0028335
  • r49301 LCL: TCustomMaskEdit, do not set selection if control isn't focused. Issue #17942
  • r49512 LCL: fixed TMaskEdit left arrow does not move cursor. Issue #28385
  • r49513 TAChart: Fix incorrect usage of infinity values, patch by Vít Ondruch Issue #0028386

Not Merged

  • r47918, r47929: THintWindow; fixes problem with backward compatibility Won't be merged. Reason: not a bug fix, but rather a new feature.
    • For me it is regression. It has breaking my application, which has working in 1.2 version
      • Please write to mailing list about this issue. It is better to discuss it there.
  • r48938: LCL: Add OnPaint and OnPaintButton for TToolBar. Issue #28029, patch from "007". Won't be merged. Reason: not a bug fix, but rather a new feature.

Fixes for 1.4.0 Final

Merged revisions for 1.4.0 Final

  • r48705 IDE: Polish translation update by Darek Mazur, Issue #0027822
  • r48617 Qt: hide widget before deleteLater, so if our event loop is blocked for some reason, widget will go away. Issue #0027781
  • r48618 Qt: Reveal a wrong typecast in QtObjectFromWidgetH.
  • r48620 IDE fix crash in TDiffDlg.SaveSettings when fFile = nil. Issue #0027780.
  • r48621 Qt: fixed compilation with define VerboseQtResize.
  • r48628 LCL: Publish TToggleBox.Align. Issue #0027785.
  • r48634 Qt: do not raise exception if obj is nil (related to r48618).
  • r48635 ShellCtrls: make TShellListView.Columns public (Delphi compatibility). Issue #0027786.
  • r48643 Gtk2: fixed crash when GtkDeviceContext widget isn't mapped yet. Use default root win as drawable. Issue #0027795
  • r48677 Finnish translations for chmhelp from Seppo Suutarla.
  • r48679 Qt: fixed build with -dQT_NATIVE_DIALOGS.
  • r48690 Gtk2: fixed triggering of OnMouseUp event when mouse moved out of component. Issue #0021982
  • r48692 Qt: fixed popupParent behaviour when mode is pmExplicit. Issue #0025589
  • r48693 Gtk2: fixed popupParent behaviour when mode is pmExplicit. Issue #0025589
  • r48696 Qt: fixed TPageControl ignores nboKeyboardTabSwitch. Issue #0022853
  • r48697 Gtk2: create FDrawable on demand, only when FDrawable is nil and widget unmapped yet (usually happens only for TCustomForm). Issue #0027821
  • r48735 SynEdit: regenerated Hebrew translation
  • r48725 Qt: qt does not support TMenuItem.RightJustify. Issue #0027828
  • r48728 TAChart: Fix misaligned data in stacked area series (http://forum.lazarus.freepascal.org/index.php/topic,28025.msg174184)
  • r48726, r48730-r48732 New PNG icons for PascalScript with transparency defined, from Sandro Cumerlato. + Use them.
  • r48736, r48749, r48761, r48765 Translations: updated French translation by Gilles Vasseur

Fixes for 1.4 RC3

Merged revisions for 1.4 RC3

  • r47911 LCL, dbgrid, call SelectEditor manually in DatasetScrolled in case row index do not change, based on patch by Luca Olivetti. Issue #0027232
  • r47990 was undo, as it broke many other functions: codetools: method jumping, class completion: support having an overload that differ only in class keyword, issue 25130
  • r48041 Gtk2: fixed crash with TSplitter with resizestyle = rsNone. Issue #0027559
  • r48042 Qt: fixed crash with TSplitter with resizestyle = rsNone. Issue #0027559
  • r48047 LCL: TCustomSplitter, fixed bug with dangling pointer of rubber band.Issue #0027559
  • r48048 Themes: fixed memleak with dotted brush bitmap.Part of Issue #0027559
  • r48051 tests: fixed TestFilenameIsMatching on Windows, bug 27567
  • r48054 IDE: fixed resolving macros of external tools before switching back from IDE to project
  • r48056 TShellTreeView: fix not displaying files in connected ShellListView. Issue #0027571.
  • r48057 CairoCanvas: cairo is not supported on Win64, but the package needs to be compiled for printers4lazarus
  • r48060 IDE: fixed updating highlighters after changing project options, bug 27554
  • r48063 TShellTreeView: better fix not displaying files in connected ShellListView. Issue #0027571.
  • r48070 lazutils: TFileStreamUTF8: fixed string type
  • r48072 TShellTreeView: when a TShellListView is attached, handle selecting items that do not exist anymore on disk.
  • r48082 IDE: codetools error: scroll in Messages window
  • r48090 LCL: regenerated translations and updated Russian translation
  • r48093 Carbon: fixed range check error when setting column width in TListView. Patch by C Western. Issue #0027581
  • r48096 IDE: source editor command: fixed check focus in sourcenotebook or mainidebar, issue 27165
  • r48100 r48102 r48105: removed obsolete SrcPath and OtherUnitFiles
  • r48106 LHelp: i18n and initial Hungarian translation, based on patch by Péter Gábor, bug 27576; also added Russian translation
  • r48107 Translations: French translation update by Gilles Vasseur, bugs 27585, 27587
  • r48108 IDE: fixed minor typo, bug 27583
  • r48109 IDE: regenerated translations and updated Russian translation (also solves bug 27583)
  • r48114 sqldb: fixed license mentioning GPL-2 of unit registersqldb
  • r48120 LazFileUtils: fix error in TryCreateRelativePath (it failed e.g with Dest=C:\ and Source=C:\foo). Issue #0027601.
  • r48121 TShellTreeView: setpath: only check for hidden dirs in folders below the root. Fixes Issue #0027591.
  • r48125 TShellTreeView: setpath: adjust for the fact that some Windows versions report faHidden on drive roots (e.g. C:\). Second attempt to fix Issue #0027591.
  • r48128 IDE: project: if target file is set and apply conventions is off then always pas -o
  • r48132 IDE: FindProgram: resolve leading ~ under Unix
  • r48134 ShellCtrls: don't raise unspecified exceptions for errors specific to shellctrls. (Not Delphi compatible, but won't break anything, and ShellCtrls isn't very Delphi compatible.)
  • r48135 TShellTreeView: don't call SetObjectType in constructor. Part of Issue #0027591.
  • r48136 Gtk2: fixed av with modal forms. Issue #0026752 , Issue #0027577
  • r48139 IDE, field property editor: make sure FieldDefs are updated before gathering the field list, by Tony Whyman, Issue #26492
  • r48177 Qt: keep QPen in sync when setting it out of device context. Issue #0027620
  • r48179 TAChart: Fix incorrect brush color of SVGDrawer. Issue #0027633
  • r48180 TAChart: Fix incorrect conversion of TColor to TFPColor in the SVG and FPVectorial drawers.
  • r48187 IdeIntf: Prevent a crash when Action is deleted in ActionsEditor. Issue #27624
  • r48254 IDE: Update component list state also with keyboard arrows.
  • r48257 TShellTreeView: publish OnCollapsed, OnCollapsing, OnDblClick, OnEdited, OnEditing, OnEnter, OnExit, OnExpanded, OnExpanding. Patch by ocean. Issue #0027640.
  • r48265 Win32: Use Vista dialogs independant from status of ThemesEnabled. Issue #0026940.
  • r48298 Qt: fixed text drawing when NO_CLIP flag is present. Issue #0027631
  • r48299 Gtk2: drawtext with rotated font. Issue #0027547
  • r48300 Qt: drawtext with rotated font. Issue #0027547
  • r48301 Win32: Use Vista dialogs independant from status of ThemesEnabled also for Open/SavePicturDialog. Issue #0026940.
  • r48302 TShellTreeView: deprecate function GetSelectedNodePath, since it's redundant.
  • r48303 Qt: fixed returning empty rect for TListView.ItemDisplayRect when using drIcon. Issue #0027659
  • r48347 Docs: document that TCustomMemo.Lines cannot store Objects. Issue #0009366.
  • r48467 IDE: improved i18n
  • r48468 IDE: regenerated translations and updated Russian translation
  • r48469 EditorToolBar: improved i18n, regenerated translations and updated Russian translation
  • r48377 Use TaskDialogIndirect on Vista and up, independantly from status of ThemeServices. Issue #0027664.
  • r48393 Qt: fixed TListView drLabel size with checkable listView. Issue #0027673.
  • r48394 Qt: do not send mousewheel event to lcl when combobox is dropped down. Issue #0027675.
  • r48398, r48400 New icon for TDbDateEdit. Issue #27672.
  • r48425 Revert r46068 "Designer: remove a duplicate call to DoDeletePersistent." Issue #27689.
  • r48426 IDE: Fix crash in procedurelist when no file is open in editor. Issue #0027694.
  • r48435 Gtk2: do not set TStatusBar panel text if panel is ownerdrawn. Issue #27695.
  • r48433,r48434,r48439,r48440 Object Inspector: Improve scrolling, reduce flicker using ScrollWindowEx. Issue #27667.
  • r48473 TAChart: Fix axis labels reaching beyond data limits in paned charts
  • r48475 Qt: implemented minimum column size for TListView. Fixed TListView.Columns.AutoSize. Issue #27696
  • r48449 translations: German: updates from Swen Heinig
  • r48496 TAChart: Fix arrows at axes and constant line series with respect to rtl bidi mode and line flips
  • r48501 TAChart: Fix centering of axis title for chart panes
  • r48503,r48505 Packager: Use filter "*.lpk" in save dialog for a new package. Issue #27726
  • r48504 LCL: Prevent TDBDateEdit interfering with other Data Aware Controls. Issue #27702
  • r48506 IdeIntf: Prevent invalid shortcut entries in TCustomShortCutGrabBox. Issue #27705
  • r48508 Qt: do not set sizehint of QTreeWidgetItem in autosized column if iconsize = 0 (regression).related to Issue #27696
  • r48509 Qt: fixed index out of bounds when setting item text. Issue #27740
  • r48510 TAChart: Fix paned charts to draw axis lines only in data range.
  • r48511 TAChart: Add extended demo for paned charts (demo/panes-2)
  • r48527 Carbon: trigger assigned action from trayicon popupmenu.Patch by Anton Kavalenka. Issue #23399
  • r48531 TAChart: Fix TFuncSeries hanging in case of inverted x axis
  • r48534 TAChart: Fix panes to work with TFuncSeries. Update panes-2 demo.
  • r48562 EditorToolbar: Use owner drawing in config ListView, does not work with QT otherwise.
  • r48580 EditorToolbar: Make the ListView work with both QT and OSX. Requires IFDEFs.
  • r48594 TAChart: Fix ColorMapSeries painting failure in case of StepY=1
  • r48554 IDE: Finnish translation fix. Issue #27758, patch from Ocean.
  • r48557 IDE: one more tweak for Finnish translation.

Fixes for 1.4 RC2

Merged revisions for 1.4 RC2

  • r47793 LCL: TShellCtrl: fixed slow checking for duplicates, bug 27473
  • r47782 TDateEdit: fix GetDate when DateOrder is doNone and Text has literal day- or monthnames. Issue Issue #0027454.
  • r47794 TDateEdit: Remove method DateFormatChanged: it exposes a private field that is only meant for internal use, and should not be changed by user.
  • r47790 Qt: fixed segfault when setting image list on TListView with OwnerData:=True. part of (Issue #0027469)
  • r47804 Qt: dramatically improved OnData event of TListView. (Issue #0027475)
  • r47805 Gtk2: fixed drawing images when TListView.OwnerData := true. (Issue #0027469)
  • r47812, r47817, r47818 IDE: append -dWIN9XPLATFORM when building IDE on win9x for win32
  • r47814 LCL: added a listener for CM_CURSORCHANGED in TGraphicControl (Issue #0014257)
  • r47841 LCL: fix to *r47814 for the control being in a scrolled window.
  • r47815 TShellTreeView: if Selected is a file then set the associated ShellListView.Root to the parentfolder (instead of to the file itself).
  • r47820 Qt: fixed regression with design time forms from r47674.
  • r47827 Converter: Fix converting DFM form files. Last char was left out. Issue #27446.
  • r47839 LCL: regenerated Russian translation
  • r47840 LCL: French translation update by Gilles Vasseur, bug 27478
  • r47842 LCL, ShellTreeView: improved i18n, patch by Péter Gábor with some changes, bug 27474; regenerated translations and updated Russian translationLCL: regenerated Russian translation
  • r47850 IdeIntf: Show Meta- menuitem shortcuts in Object Inspector only for Mac. Issue #27456
  • r47861 IDE: compare compiled file: ignore spaces between options
  • r47863 IDE: checking Makefile.compiled: ignore -Cg on Linux
  • r47866 TAChart: Less compilation hints and notes Issue #274884
  • r47869 LCL: gtk2: GetPreferredSize: subtract client area
  • r47871 IDE: project options: version: disable unneeded AutoSize
  • r47873 LCL: TScrollingWincontrol: GetLogicalClientRect: independent of AutoScroll to avoid cycle, GetPreferredSize: independent of AutoScroll, added extra checks if LCL clientrect is not in sync with widgetset, improved debugging preferredsize
  • r47875 LCL: TCustomGrid: disable default preferred size, because grid moves controls and change scrollbars, bug 27095
  • r47879 lazutils: fixed compilation on win64
  • r47877 IDE: Workaround for a missing DirectoryEdit event in Carbon. Issue #23063
  • r47886 LCL: win32: do not start timer when application terminated
  • r47887 IDE: editor color option: fixed layout, bug 27434
  • r47890 lazutf8: GetFormatSettingsUTF8: map common multibyte chars to ASCII
  • r47895 LCL: TTreeView: mousedown: fixed select on click on state icon
  • r47897 LCL: gtk2: GetGTKDefaultWidgetSize: ignore client area with child controls
  • r47898 IDE: designer: initialize FIsNonVisualComponent, bug 27502
  • r47900 IDE: designer: resize multiple controls: round mathematically instead of always down, needed for increase size by 1
  • r47905 IDE: Change default mouse settings for left gutter clicks
  • r47908 lcl: TCustomListView: show editor on dblclick via QueueAsyncCalls, bug 27505
  • r47913 LCL: carbon: do not use GetBestControlRect if there are child controls
  • r47920 IDE: auto create application bundle for IDE on darwin for all widgetsets
  • r47922 IDE: build laz: when clean option is on, clean up fallback directories too
  • r47924 LCL: MessageBox: default parameter Flags = MB_OK, bug 27510
  • r47928 Package editor: Prevent collapsing all tree nodes when changing file type. Issue #26188
  • r47930 codetools: fixed directive WriteableConst, bug 27512
  • r47932 codetools: identifier completion: updated list of directives
  • r47950 IDE: messages: fixed showing commandline
  • r47952 IDE: messages: about: use wordwrap
  • r47954 IDE: messages: linker errors: fixed finding them even without info message (9015) Linking
  • r47956 IDE: external tools: added TAbstractExternalTool.ReadStdOutBeforeErr, changed default to read stderr before out, needed by FPC linker errors
  • r47958 IDE: always pass -vi to FPC, needed to resolve file names without path
  • r47960 IDE: compiler options: verbosity: one column
  • r47964 IDE: compiler options: verbosity: removed -ve, IDE needs this to jump to errors
  • r47965 IDE: compiler options: removed obsolete option show summary, summary are now always shown in header
  • r47973 IDE: added TargetCPU a64
  • r47990 codetools: method jumping, class completion: support having an overload that differ only in class keyword, issue 25130
  • r47881 TShellTreeView: SetPath: take value of ObjectTypes into account.
  • r47889 Gtk2: new function Gtk2_PixBufFromBitmap(), simplified usage. patch by theo. Issue #27477
  • r47906 Qt: fixed TListView.OnData when we use TQtListWidget (vsList).
  • r47907 Qt: fixed selection behaviour of TListView.vsList when OwnerData = true.
  • r47923 Qt: fixed getting displaysize of TListView.Item drIcon. part of Issue #27509
  • r47939 Qt: do not send resize event on restore of minimized mdichild form. Issue #27518
  • r47941 LCL: TCustomListView: use drLabel instead of drBounds for listview editor bounds. Issue #27509
  • r47942 Qt: fixed TListItem DisplayRect for drLabel & drIcon. part of Issue #27509
  • r47944 Gtk2: fixed TListView displayRect for drLabel.Issue #27509
  • r47946 Qt: return correct displayrect(drLabel, drIcon) for TListView.vsList. Issue #27509
  • r47959 LHelp: Speedup communication between Lazarus and LHelp and speedup the chm search. LHelp is rebuilt if BeginUpdate is not supported.
  • r47970 IDE: Fix "All Options" parser for FPC 3.x output.
  • r47975 LHelp: Lazarus tries to save the old LHelp executable if compilation fails.
  • r47979 IDE: Take care of component palette page names that differ only by character case. Issue #27516.
  • r47982 LCL: Horizontal and Vertical Spacing for TCoolBar. Issue #27523
  • r47987 Help/LHelp: Don't scan directories in search path recursively to look for chm files
  • r47992 TCheckListBox: when user presses spacebar: if ItemIndex = -1: set it to 0 and fire OnClick; fire OnClickCheck. Issue #0024695.
  • r47993 TCheckListBox: fix possible crash introduced in r47992.
  • r47983, r47994 TI Grid: Fix and publish CheckboxForBoolean. Issue #27521.
  • r47971, r47995 IDE: Improve ComponentList window. Issues #27527, #27539
  • r48017 lcl: TWinControl: apply framewidth/height only to preferred clientarea, not to widget, bug 27538
  • r48024 LazReport: Polish translation update by Paweł Dmitruk, bug 27548. While at this, regenerated all other translations.
  • r48025 IDE: French translation update by Gilles Vasseur, bug 27546
  • r48013 Fixed Finnish translation.
  • r48014 IdeIntf: Use CheckBox as boolean editor also for Set elements.
  • r48022 Add Balazs Szekely to contributors list.
  • r48023 IdeIntf: Support restoring default value in Object Inspector for Set types. Issue #18734.
  • r48039 IDE: fpc msg parser, use console or system codepage depending on compiler version, bug 26623

Fixes for 1.4 RC1

Merged revisions for 1.4 RC1

  • r47339 Qt: fixed LM_CONTEXTMENU event in case of TQtCustomControl, when eg. form.PopupMenu is assigned, and control.PopupMenu=nil.
  • r47340 IDE Fix possible crash in TInitialSetupDialog.Init
  • r47345 IDE: Updated Italian translation languages/lazarusid.it.po
  • r47343 TAChart: Modify TBoxAndWhiskerSeries.AddXY to use correct YCount value.
  • r47346 SynEdit: TSynPluginSyncroEdit: Add a "CaseSensitive" property (Issue #0027258)
  • r47348 TAChart: Improvements of Box-Whisker series (no crash on NaN, new prop WidthStyle, respect data point color)
  • r47352 IDE: Assign event handler in better place, designer will be focused when component is selected in palette.
  • r47353 Comp. Education: fix compilation after component palette changes.
  • r47354 IDE: build file: clean messages
  • r47356 IDE: fixed typo
  • r47358 IDE: corrected message after r47319
  • r47359 IDE: regenerated translations; updated Russian translation
  • r47360, r47369 Translations: committed regenerated files
  • r47367 TAChart: Avoid TBubbleSeries crashing if X/Y/R is NaN
  • r47375 lcl: TWinControl.InsertControl fixed position in Controls, widgetsets do not support that yet, issue 25405
  • r47374 Qt: fixed infinite loop with when double click item inside QTreeWidget (TListView.vsReport).(Issue #0027298)
  • r47379 IDE: Messages window: fixed autoscroll to new message
  • r47393 IDE: fix button anchors in UnusedUnitsDialog.
  • r47394 GDBMI debugger: updated Russian translation
  • r47399 IDE: Hid "Cancel Scanning" button in "Compare Files" dialog. It is always disabled and its functionality was never implemented.
  • r47401 OI: Update Boolean value from a Checkbox also when the control is changed but property remains the same.
  • r47402 TAChart: Fix font color/style/rotation in TADrawerSVG
  • r47403 H2Pas: fixed typos, patch by Péter Gábor, bug 27316; also regenerated translations and updated Russian translation.
  • r47404 Debugger: minor message improvements
  • r47405 Debugger: regenerated translations; updated Russian translation
  • r47420 translations: German: updates from Swen Heinig
  • r47421 IDE: options: identifier completion: dividers for groups
  • r47423 IDE: resourcestring
  • r47426 IDE: project options: FPC resources above old lrs resources
  • r47428 translations: German: updates from Swen Heinig
  • r47411 EditButton: implement property ButtonCursor (Issue #0027277).
  • r47412 EditButton: publish some more properties in TCustomEditButton derived components (for consistency).
  • r47413 Qt: proper paint of selected item in TListView.OnAdvancedDrawItem. (Issue #0027315)
  • r47414 Qt: added cdPostPaint for TListView when ViewStyle <> vsReport. part of (Issue #0027315)
  • r47415 Qt: added QtAlignVCenter, so text is properly aligned in TListItem. (Issue #0027043)
  • r47416 Qt: fixed paint of empty items when we use OnCustomDraw or OnAdvancedDraw in TListView.
  • r47418 Gtk2: fixed item height. (Issue #0027043)
  • r47419 EditButton: replace property ButtonAlign: TButtonAlign with Layout: TLeftRight.
  • r47435 IDE, Identifier Completion dialog: allow some captions to be translated independently
  • r47436 IDE: regenerated translations; updated Russian translation
  • r47410 OI: show '(Mixed)' for Checkbox caption when multiselect and values are mixed.
  • r47441 Object Inspector: i18nalize '(Mixed)' value
  • r47474 LCL: Fix a grammar error in a resource string.
  • r47475 Improvements for Finnish translation.
  • r47476 LCL: regenerated translations; updated Russian translation
  • r47479 Fix errors in Finnish translation.
  • r47481 LCL: Revert a workaround for FPC bug that causes Arithmetic overflow in TControlbar. Fixed in FPC trunk. Issue #27167.
  • r47482 IDE: regenerated Finnish translation
  • r47484 LazReport: i18n-ed editor options and function editor, based on patch by Péter Gábor, bugs 27339, 27340; regenerated translations and updated Russian translation.
  • r47485 LazReport: fixed typo in function description, patch by Péter Gábor, bug 27338; regenerated translations and updated Russian translation.
  • r47490 IDE: Improve TPathEditorButton class, handle Templates better.
  • r47491 IDE: Refactor TPathEditorButton more. Copy values between dialog and edit here instead of clients' code.
  • r47492 IDE: in Compiler_path_options, turn method CheckSearchPath into a function. Harmonize.
  • r47493 IDE: Let TPathEditorButton show the list of paths in edit control's hint.
  • r47494 IDE: Fix a layout error in TPathEditorDialog where TemplateGroupBox went under ButtonPanel.
  • r47499 Fix some Finnish translations.
  • r47500 LazReport: correctly clear combobox in editor options and fix typo in class method name, based on patch by Péter Gábor, bugs 27347
  • r47524 IDE: messages: fixed scanning filenames with brackets
  • r47530 lcl: grids: docs, issue 27325, from Simon Ameis
  • r47532 ideintf: resourcestring, issue 27317, from Gábor
  • r47542 LCL: TCustomSpeedButton: do not store Glyph in lfm when Action provides the Glyph, issue 27357, from BBaz
  • r47521 TAChart: Move declaration of TDrawEvent event out of the context of TChart and rename it to TChartDrawEvent to fix event OnAfterDraw
  • r47523 LCL: TCustomBitBtn: do not store Glyph when set by Action, issue 27358, from BBaz
  • r47553 IDEIntf: updated Russian translation
  • r47554 Translations: Hungarian translation update by Péter Gábor, bug 27365
  • r47556 * Phillipe Levi mentioned seeing "Stringrid" on the ml, a grep turned up two occurances -> fixed.
  • r47557 LCL: Prevent calling TListView OnMouseUp twice on Windows 7. Issue #27189, patch from Michl.
  • r47563 IDE: drop files: invalidate file state cache
  • r47562 Revert r47557 "LCL: Prevent calling TListView OnMouseUp twice on Windows 7. Issue #27189."
  • r47578 Qt: fixed themed drawing of disabled combobox.Issue #0027381
  • r47583 ColorListBox: use same logic for Style as TColorBox. Issue Issue #0027397.
  • r47590 IDE: added parameters --verbose, --quiet, when building IDE or project and when quit, give message when already building
  • r47616 IDE: package links dialog: fixed delete after sort
  • r47618 IDE: package links dialog: fixed sort after refilling grid
  • r47623 codetools: DateToCfgStr extended for time
  • r47625 printers: fixed combining date+time
  • r47627 turbopower_ipro: fixed combining date+time
  • r47629 lazsvnpkg: fixed combining date+time
  • r47631 examples: fixed combining date+time
  • r47633 tests: fixed combining date+time
  • r47635 LCL: tiff: fixed combining date+time
  • r47637 datetimectrls: fixed decodetime
  • r47639 codetools: fixed decodetime
  • r47641 fixed wrong Frac/Trunc in DecodeDate/Time
  • r47645 lazutils: TAvgLvlTree.FindLeftMostKey/FindRightMostKey fixed
  • r47647 IDE: package links: remove old links to same lpk files, fixed using the recently used lpk of two packages with same name
  • r47677 LCL: carbon: TMemo.Lines.Assign: fixed empty strings at start, bug 27438
  • r47679 IDE: invalidate file cache before building, after save
  • r47585 Components, sqlite: i18n and layout improvement, patch by Péter Gábor, bug 27390 with string corrections. Also added Russian translation.
  • r47602 Translation example: Fix compilation, DefaultTranslator -> LCLTranslator.
  • r47606 IPro, TIpHtmlPreview: make printers print always. Issue #27409
  • r47652 IPro, TIpHtmlPanel: Support color printers. Issue #27420.
  • r47650 ShellTreeView: when fObjectTypes = [otFolders] only show expandsign if node has subdirs. Modified patch from theo. Issue #0027415.
  • r47686 ShellTreeView: change the logic of showing an expandsign so that the same logic of r47650 is applied wether or not [otHidden] is specified.
  • r47687 ShellTreeView: comment out some redundant code.
  • r47690 ShellTreeView: respect the designtime settings of ObjectTypes; add DbgS() for TObjectTypes
  • r47651 LCL/interfaces/qt: remove wrong offsets from Ellipse and RadialPie
  • r47662 fpvectorial: Add font name, color and styles, text rotation, text anchors to svgvectorialwriter. Issue #0027321
  • r47663 TAChart: Improved output of fpvectorial writer (related to Issue #0027321)
  • r47700 LCL: French translation update by gilles58, bug 27423
  • r47649 translations: German: updates from Swen Heinig
  • r47672 GDBMI debugger, check result of SetFileName. Issue 0027431 po files
  • r47689 LazDebuggerGdbmi: updated Russian translation
  • r47706 Components, sqlite: Hungarian translation by Péter Gábor
  • r47721 Docs: added Gilles Vasseur to contributors list
  • r47584 IDE: regenerated translations and updated Russian translation
  • r47691 IDE: regenerated translations and updated Russian translation
  • r47600 Qt: added define TQTMESSAGEBOXUSEPARENT to fix showing dialogs behind application on MacOSX.
  • r47673 Qt: improved TQtGroupBox, added ability to show/hide checkbox in title of TQtGroupBox, needed by 3rd party components.
  • r47674 Qt: properly handle designed forms. Now IDE minimizing also minimize designed forms.
  • r47730 Qt: implemented TPreviewFileDialog.
  • r47731 Qt: check if GlobalCaret is assigned before setting respond to focus, or using getter. fixes crash.
  • r47732 Qt: qtwsdialogs: check if directory or filename exists in TOpenDialog.
  • r47733 Qt: change to mswin path delimiters if qt returned slash.Try to find $HOME if it's added as InitialDir.
  • r47734 Qt: make ALT modifier work under MacOSX. (Issue #0027411)
  • r47742 Qt: fixed bug when setting filename of TSaveDialog.
  • r47743 ShellTreeView: refresh the tree when ObjectTypes is changed. Based upon a patch by theo.
  • r47744 Qt: finally fixed AppMinimize for designed forms.
  • r47747 Qt: unset elide mode on tabs under macosx because we have unreadable tabs when control contains a lot of tabs.

Older versions

Roadmap to 1.4

The release process will consist of the following steps.

  • Creation of the SVN 1.4 fixes branch. (Done 11 Jan 2015)

This is the start of the stabilization process before a new Lazarus release.

  • Release of 1.4 RC 1 (Done 16 Fev 2015)

This will be the first Release Candidate. We would like to urge all users to test this version. The testing period is scheduled to last 2 weeks.

  • Release of 1.4 RC 2 (Done 02 Mar 2015)

The testing period is scheduled to last 2 weeks.

  • Release of 1.4 RC 3 (Done 06 Apr 2015)

The testing period is scheduled to last 2 weeks.

  • Release of Lazarus 1.4 (Done 19 Apr 2015)

Users can download the new stable version.


Tests

  • Menu item exists
  • Clear pcp directory and start IDE, a new project application with a form should be visible
  • Double click on form - a FormCreate event should be created
  • Check View / IDE internals / What needs building - no package should need building, only the project
  • Restart the IDE - there should be no warning about upgrading
  • Install the package cody, after restart the component palette should show the component TCodyTreeView

Tagging release

  • Set version to 1.4 in fixes_1_4 branch
    • open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog 1.4.0.1 for RC1, 1.4.0.2 for RC2, 1.4.0.3 for RC3, 1.4.0.4 for final
    • lazarus/ide/version.inc 1.4RC1 for RC1, no spaces! (1.4.0 for final release)
    • lazarus/lcl/lclversion.pas 1.4.0.1 for RC1, 1.4.0.2 for RC2, ... 1.4.0.4 for final
    • lclbase.lpk
    • lcl.lpk
    • lazarus/debian/changelog 1.4.0-1 for RC1, 1.4.0-2 for RC2, ... 1.4.0-4 for final
    • lazarus/lazarus.app/Contents/Info.plist "v1.4 RC1" or (v1.4.0 final release)
    • tools/install/linux/environmentoptions.xml same as version.inc
    • tools/install/win/environmentoptions.xml same as version.inc
    • tools/install/macos/environmentoptions.xml same as version.inc
    • check if lpl files needs updating by running ./tools/lplupdate -c
    • run ./tools/updatemakefiles
  • Tag fixes_1_4 branch to tags/release_1_4_RC1 (or tags/lazarus_1_4 for final release)
svn copy svn+ssh://svn.freepascal.org/FPC/svn/lazarus/branches/fixes_1_4 svn+ssh://svn.freepascal.org/FPC/svn/lazarus/tags/lazarus_1_4_RC1 -m 'tagged 1.4RC1 as tags/lazarus_1_4_RC1'
  • Set version to next version in svn

How to merge

See Lazarus_1.0_fixes_branch#How_to_merge

Other branches