Commit Graph

65960 Commits

Author SHA1 Message Date
Bad Sector
5ecce8dc19 LCL-GTK2: Fix double free due to wrong refcount during SaveDC/RestoreDC
CopyDataFrom copies the FPixmap field directly without updating
reference counts for the objects, which in some cases ends up attempting
to unref (in the TGtkDeviceContext destructor) an already freed object
(this can happen when, e.g., SaveDC/RestoreDC is called twice with the
same DC - in the first SaveDC/RestoreDC "pass", RestoreDC deletes the
FPixmap object during the saved context destruction and in the second
"pass" the object is already destroyed and the program crashes).

This patch fixes this by adding calls to ref/unref during CopyDataFrom
for the FPixmap.
2023-08-28 15:35:44 +00:00
Bart
ca9f504a0d LCLIntf: small optimizations to LParamExtractLoHiWord and LParamHiWord as suggested by Maxim. 2023-08-27 22:23:12 +02:00
Bart
b7d3481248 TaskDialog: TLCLTaskDialog:start implementing message TDM_UPDATE_ELEMENT_TEXT.
For now the new text must not bi higher than the old text, otherwise the text will be cut off.
2023-08-27 13:43:23 +02:00
Bart
39c979d5b9 TaskDialog: TLCLTaskDialog: implement message handlers for:
- TDM_CLICK_BUTTON
- TDM_CLICK_RADIO_BUTTON
- TDM_CLICK_VERIFICATION
- TDM_ENABLE_BUTTON
- TDM_ENABLE_RADIO_BUTTON
2023-08-27 12:43:38 +02:00
Željan Rikalo
36a99bdd26 Qt6: reduced string conversions. 2023-08-27 11:30:15 +02:00
Željan Rikalo
c630749f27 Qt6: reduced num of string conversions, cleanup 2023-08-27 11:29:15 +02:00
Bart
c70e6b3297 LCLIntf: add helper functions to extract Lo and Hi words of LPARAM type. 2023-08-27 10:26:24 +02:00
rich2014
935e7edaff Merge branch 'lcl/cocoa/leak' 2023-08-27 01:20:57 +08:00
Bart
42bcacac19 TTaskDialog: fix compilation on non-Windows 64-bit targets (lParamlo and lParamhi not defined there). 2023-08-26 18:58:49 +02:00
rich2014
762c5a45f0 Cocoa: set Window Level to normal in DestroyHandle
avoid still appearing on the screen before the top window is actually destroyed
2023-08-27 00:01:49 +08:00
rich2014
b65ca17223 Cocoa: MainPool is divided into two stages, covering the whole cycle, fix resources leak 2023-08-26 23:56:18 +08:00
rich2014
7f00662152 Cocoa: BeginMessageProcess/EndMessageProcess implemented, fix resources leak 2023-08-26 23:55:51 +08:00
rich2014
2d1027253f LCL: WidgetSet.BeginMessageProcess/EndMessageProcess added 2023-08-26 23:48:04 +08:00
Bart
5aab1a7b18 TTaskDialog: Start implement TTaskDialog.ProgressBar for emulated dialog: Range, Position and Style. 2023-08-26 13:20:42 +02:00
Željan Rikalo
12e313d41b Qt5: Fixed compiling qt56.pas with -Sy option. 2023-08-26 10:35:06 +02:00
dsiders
6c177bc5b2 Docs: LCL/forms. Modifies content in the TApplication.GetControlAtPos topic. 2023-08-26 02:44:42 +01:00
Maxim Ganetsky
895c80c4ea LCL: optimized TApplication.GetControlAtMouse (no functional changes), patch by Rika, issue #40465 2023-08-26 02:50:48 +03:00
Željan Rikalo
f27a50f74e Qt5: improve string conversions by removing unneeded GetUtf8Str internal function. 2023-08-25 19:49:26 +02:00
Bart
a397741a99 TTaskDialog: Start implementing TTaskDialog.ProgressBar for emulated dialog. 2023-08-25 19:12:26 +02:00
Bart
f8ee1f55bb TTaskDialog: remove commented out code. 2023-08-25 18:49:11 +02:00
Bart
9e2aabba9d TTaskDialog: TTaskDialog.ProgressBar:
- FMin and FMax must be in range 0.High(Word).
- Adjust FPosition when setting range.
- Define const for default min/max instead of using magic numbers.
- Simplify SetMin/SetMax.
2023-08-25 18:47:43 +02:00
Željan Rikalo
d06d98e830 Gtk3: fixed TGtk3WidgetSet.GetWindowRect() bounds, patch by Anton Kavalenka.Part of issue #40461 2023-08-25 17:21:44 +02:00
dsiders
67fd5eb194 Docs: DateTimeCtrls/datetimepicker. Updates external referenences for changes in f83b8b4c. 2023-08-25 15:16:09 +01:00
mattias
f83b8b4cc3 datetimectrls: simplified unit dependencies 2023-08-25 12:49:44 +02:00
mattias
53db93de09 lcl: gtk2: simplified unit dependencies 2023-08-25 12:30:53 +02:00
mattias
58ed236c84 lcl: gtk2: simplified unit dependencies 2023-08-25 12:20:35 +02:00
mattias
4cd036d871 lcl: gtk2: simplified unit dependencies 2023-08-25 12:09:09 +02:00
Bart
f596f54321 TTaskDialog: progress on TTaskDialog.ProgressBar: setting type, range, position, range and marqueespeed, now work for native Vista+ dialog. 2023-08-24 23:41:26 +02:00
Bart
679e55e191 TTaskDialog: fix unintentionally left over writelln() statements. 2023-08-24 20:01:58 +02:00
Juha
dfbe6ad23d LCL-GTK3: Support TFrame as a MenuItem's owner. Issue #40446, patch by haword. 2023-08-24 11:00:19 +03:00
zeljan1
805a8817ed Qt6: fixed crash while processing wheelscroll event inside mdiarea window. 2023-08-23 19:51:33 +02:00
Bart
8a60ec04de TTaskDialog: partially implemented TTaskDialogProgressBar.Initialize. 2023-08-23 15:23:43 +02:00
Ondrej Pokorny
d556038c01 TaskDialog: do not write to console (fix) 2023-08-23 14:55:05 +02:00
Ondrej Pokorny
e6fc6dca77 TaskDialog: do not write to console 2023-08-23 14:49:10 +02:00
Bart
fe0ed266ce TTaskDialog: start implementing TTaskDialogProgressBar: skeleton only, does not communicate with the dialog yet. 2023-08-23 13:10:52 +02:00
Željan Rikalo
2885935b2d Qt,Qt5,Qt6: do not create dummy widget if wm name is empty or we are running under wayland. issue #40413 2023-08-23 09:18:10 +02:00
Željan Rikalo
e2f0b349f4 Gtk2: do not create dummy widget if WM name is empty, also reduce looping on slow systems. issue #40413 2023-08-23 09:09:06 +02:00
dsiders
10f65ee4fd Docs: LCL/controls. Fixes typos in See Also links. 2023-08-23 02:01:32 +01:00
dsiders
60b8ad9d52 Docs: LCL/controls. Updates content in TWinControl.SetChildZPosition to reflect changes in 853461fe. 2023-08-23 01:28:16 +01:00
Bart
7c055798ef Revert "Win32: Vista dialogs: reverse the logic of applying FOS_STRICTFILETYPES to IFileDialog."
It causes a regression in the IDE.
The old logic is still wrong, but must be fixed in a different way, yet to be discussed.
This reverts commit ed3e261065.
2023-08-22 23:51:06 +02:00
Željan Rikalo
853461fed6 LCL: fixed TWinControl.SetChildZPosition, WS must be informed about change of order in any case. issue #40450 2023-08-22 19:50:19 +02:00
Željan Rikalo
2a339f8cb1 Qt,Qt5,Qt6: fixed borderless popup over parent form with FormStyle = fsStayOnTop. issue #40440 2023-08-22 19:28:56 +02:00
wp_xyz
24e996ddef fpvectorial: Add new pdf writer to package. Modify fpvTextWriteTest demo to support pdfwriter. 2023-08-22 18:49:35 +02:00
Werner Pamler
4a653549e1 Merge branch 'fpvectorial_pdfwriter' into 'main'
fpVectorial PDF writer for text documents

See merge request freepascal.org/lazarus/lazarus!230
2023-08-22 16:47:16 +00:00
wp_xyz
e32f823789 LHelp: Fix duplicate hint windows, issue #40456 2023-08-22 18:16:28 +02:00
Moritz Lamprecht
0fafee823a added pdf document writer 2023-08-22 15:10:38 +00:00
mattias
b59196e223 ide: fixed search ancestor lfm for lfm with unitnames 2023-08-22 16:25:59 +02:00
mattias
5763fb14c6 codetools: added AnsiChar 2023-08-22 16:25:59 +02:00
Martin
2234c02716 IdeDebugger: Watches, fix updating array-nav-bar while scrolling 2023-08-22 12:45:34 +02:00
Michaël Van Canneyt
a3566d0f8e * Remove actions for which there is no tag 2023-08-22 08:41:47 +02:00