Commit Graph

24411 Commits

Author SHA1 Message Date
zeljan1
6f3d1328a7 Gtk3: implemented TCustomForm.AllowDropFiles & TCustomForm.OnDropFiles. 2025-02-23 18:38:37 +01:00
zeljan1
52ce6cd071 Gtk3: stop mouse press/release for wtPanel type, so dragging of TCustomPanel works now. 2025-02-23 18:15:22 +01:00
zeljan1
75d96cf0ea Gtk3: uncomment GtkLayout^.set_has_window(), it must have it's own window. 2025-02-23 15:39:42 +01:00
zeljan1
a9736f3470 Gtk3: implemented dragimageList. 2025-02-23 14:21:07 +01:00
zeljan1
1e2aa7dbdd Gtk3: formatting. 2025-02-23 13:57:45 +01:00
zeljan1
57cba016bb Gtk3: There's no need to calculate borders around image, when item width is set gtk calculates borders and spacings. 2025-02-23 13:31:18 +01:00
zeljan1
11ddd17c1b Gtk3: fixed crash in TGtk3ListView selection_changed signal. 2025-02-23 13:25:37 +01:00
zeljan1
96d378e919 Gtk3: proper calculate item width of listview vsIcon and vsSmallIcon 2025-02-23 13:16:50 +01:00
zeljan1
f6ceb6980a Gtk3: capture must be set to control, so make TCustomControls happy 2025-02-23 12:26:19 +01:00
zeljan1
247765dd5d Gtk3: fixed mouse press/release and unatended mouse grab from toplevel GdkWindow. 2025-02-23 11:56:28 +01:00
Juha
049fedf34a LCL-GTK2&3: Improve handling of font stretch and weight in font name. Issue #29596, patch by Juliette. 2025-02-23 12:42:07 +02:00
zeljan1
945b69cf99 Gtk3: improved mouse enter/leave events, cleanup. 2025-02-23 10:50:52 +01:00
zeljan1
1e1a309aa7 Gtk3: fixed mouse offsets when we are inside scrolled control, eg TCustomControl 2025-02-23 09:54:22 +01:00
zeljan1
5a868ae35b Gtk3: cleanup. 2025-02-23 09:53:34 +01:00
wp_xyz
6d54f9ad91 Set HideSelection of all Treeviews to false. 2025-02-23 01:48:42 +01:00
zeljan1
2bfc714264 Gtk3: Stop asserts from GtkEntry, we must say what is the minimum size. 2025-02-23 01:08:16 +01:00
zeljan1
0d8cbc0145 Gtk3: use while loop in appProcessMessages. 2025-02-23 00:18:24 +01:00
zeljan1
6ab7bd1d7c Gtk3: we'll use g_main_context_iteration(), better fits our needs. 2025-02-22 23:50:29 +01:00
zeljan1
27bd792656 Gtk3: TGtk3GroupBox does not need overriden SetBounds(). 2025-02-22 23:49:10 +01:00
zeljan1
25900905ef Gtk3: from now on we use GtkLayout instead of GtkFixed for container in TCustomPanel and TCustomGroupBox. Reason: beter sizing control and behaviour. 2025-02-22 23:11:08 +01:00
zeljan1
c3a7f80706 Gtk3: implemented color property for TCustomGroupBox. 2025-02-22 21:07:52 +01:00
zeljan1
a19c10092a Gtk3: fix for sporadic crash, removed unneeded LM_CLICKED. issue #41449 2025-02-22 20:39:10 +01:00
zeljan1
ccd49bd9a3 Gtk3: possible fix for gtk asserts. issue #41456 2025-02-22 20:36:23 +01:00
zeljan1
657ec3b852 Gtk3: Make GtkNotebook widget, removed GtkEventBox, fixes issue #41458 2025-02-22 20:35:06 +01:00
wp_xyz
b8d68ac49e LCL/TreeView: Rename HideSelectionMode options from (hsmLaz, hsmDelphi) to (hsmGray, hsmHide) and deprecate them. Update the customdrawing demo. 2025-02-22 19:27:36 +01:00
zeljan1
20d22eae2a Qt: make arrow keys work at design time. issue #41453 2025-02-22 19:12:34 +01:00
zeljan1
9ad5559338 Qt5, Qt6: allow arrow keys at design time. issue #41453 2025-02-22 18:56:17 +01:00
zeljan1
17407a1e4d Qt5,Qt6: map unicode chars to lcl keys where possible. issue #41452 2025-02-22 18:18:03 +01:00
zeljan1
0ba6e1faaa Gtk3: surpress asertions in gtk when window have parent. 2025-02-22 10:03:26 +01:00
zeljan1
2df92eabfa Gtk3: do not ask for scrollbars if policy is never or external. 2025-02-22 09:57:06 +01:00
zeljan1
3d4c31ed33 Gtk3: fixed crash in TGtkListStoreStringList. Patch by Anton Kavalenka. 2025-02-22 09:49:56 +01:00
zeljan1
f03ffdbbd9 Gtk3: make combobox autocomplete work. 2025-02-22 09:28:30 +01:00
zeljan1
30fb2bbc22 Gtk3: implemented text selection options for GtkComboBox. 2025-02-22 08:46:32 +01:00
zeljan1
1923d653dc Gtk3: use gdk_window_get_device_position() when is_hint = 1 inside mouse move event. 2025-02-21 22:51:16 +01:00
zeljan1
c2689cb231 Gtk3: disable scrollbars of scrollingWindow during design time. 2025-02-21 20:14:41 +01:00
zeljan1
dc40fbaf65 Gtk3: better fix for crash. issue #41449 2025-02-21 20:13:59 +01:00
zeljan1
87877c4fda DBGrids: fixed dgThumbTracking usage on dbgrid. issue #41451 2025-02-21 20:02:23 +01:00
zeljan1
b4bb6f4b64 Gtk3: do not trigger accidental visibilty of scrollbars. 2025-02-21 18:53:21 +01:00
zeljan1
8032aa76d3 Gtk3: hint window should not take focus in any case. ScrolledWindow must be cheated for scrollbar policy since many TCustomControl components does not use scrollbars at all. Edited in gtk3 IDE :) 2025-02-21 18:25:55 +01:00
zeljan1
d8cd947b55 Gtk3: fixed crash if handle vanish during input event.issue #41449 2025-02-21 17:52:46 +01:00
zeljan1
5710c5537a Gtk3: fixed Application.IntfActivate, Application.IntfDeactivate. 2025-02-21 17:46:26 +01:00
zeljan1
455f367bd1 Gtk3: recreatewnd when form borderstyle is changed. 2025-02-21 17:45:16 +01:00
zeljan1
3218b3dcdd Gtk3: proper initialization of variable. 2025-02-21 14:02:27 +01:00
zeljan1
2877b3ee27 Gtk3: we must resize GtkNotebook, not GtkEventBox actually. 2025-02-21 13:32:47 +01:00
zeljan1
c3c4a8132b Gtk3: check if control has caret before destroying caret. 2025-02-21 12:40:19 +01:00
zeljan1
01d0c7d35c Gtk3: cleanup 2025-02-21 10:27:02 +01:00
zeljan1
b119620f45 Gtk3: do not try to draw caret at design time widget. 2025-02-21 10:24:54 +01:00
zeljan1
e4db21c499 Gtk3: make LM_CONTEXTMENU msg work. 2025-02-21 10:22:51 +01:00
zeljan1
20d4d59a0b Gtk3: finally useable caret without workaround widget for wayland. 2025-02-21 10:10:24 +01:00
zeljan1
c3c9ede5c4 Gtk3: ScrollWindowEx() cleanup. 2025-02-21 08:32:08 +01:00
zeljan1
5aa6b16f09 Gtk3: Client area of TGtk3CustomControl is PGtkLayout now, fixed sizing of controls like TEditBtn etc. 2025-02-20 17:13:13 +01:00
Bart
3cc3475c2b TFileListBox: fix not adding filenames wich only differ in case, when the control doesn't have a handle yet (i.e. with Directry set in OI). Issue #41441 2025-02-19 20:29:52 +01:00
wp_xyz
e4396f44b8 LCL/TreeView: Make property HideSelection (optionally) Delphi-compatible. Update sample project. 2025-02-18 19:09:58 +01:00
Massimo Magnano
5adcd2c308 LCL-GTK2: Fix ListView with vsIcon and Arrangement=iaLeft. Issue #41426, merge request !437. 2025-02-16 12:42:28 +02:00
zeljan1
df31c25382 Qt5,Qt6: Seem that QEventDestroy does not work anymore for qt5 and qt6. issue #41433 2025-02-15 17:36:19 +01:00
zeljan1
740f63fe4c Qt5, Qt6: fixed showing and destroying popup window with popup parent modal form. issue #41433 2025-02-15 12:54:05 +01:00
zeljan1
5df0a8f05a Qt5,Qt6: must check if handle is valid. 2025-02-15 09:29:17 +01:00
zeljan1
0a6df5f238 Qt6: disable Qt lib autocomplete of QComboBox, LCL does autocomplete. issue #41432 2025-02-14 23:18:06 +01:00
zeljan1
7bfc63d9ed Qt5, Qt6: must use MenuVisibleIndex to be in order. issue #41429 2025-02-14 23:06:14 +01:00
zeljan1
05ca3c6d83 Gtk3: fix for scrollbars not showing sometimes in SetScrollInfo() when overlay is enabled, cleanup. 2025-02-14 21:55:11 +01:00
zeljan1
4f835ede52 Qt5,Qt6: fixed order of menu items when hiding/destroying handle/adding again. issue #41429 2025-02-14 09:03:11 +01:00
zeljan1
2e4bce1533 Gtk3: fixed regression, forgot TGtk3Widget.EndUpdate. issue #41427 2025-02-13 15:08:43 +01:00
zeljan1
790e387825 Gtk3: do not invalidate whole area if rect is empty. 2025-02-13 09:03:23 +01:00
mattias
fb03756b41 replaced url http://wiki.freepascal.org with https 2025-02-13 08:49:48 +01:00
Martin
be89c477d9 LCL: fix TControlScrollBar needs update if owner's handle changes. Issue #40794 introduced in 4891f1f0e1 2025-02-13 01:49:57 +01:00
zeljan1
ac5f2c1c49 Gtk3: updated README. 2025-02-12 19:59:59 +01:00
zeljan1
93de351d2f Gtk3: implemented TGtk3Widgetset.SetWindowPos() 2025-02-12 17:32:00 +01:00
zeljan1
3ac22c5abe Gtk3: fixed transient window for borderless windows with popupparent. 2025-02-12 16:21:39 +01:00
zeljan1
bf7f5c51ee Gtk3: make fsStayOnTop work with LCL expectations. issue #41253 2025-02-12 11:23:32 +01:00
zeljan1
014ceebd7b Gtk3: forgot commit. 2025-02-12 11:22:14 +01:00
zeljan1
d33c56d5d4 Gtk3: implemented shaped window (toplevel). 2025-02-12 11:15:37 +01:00
zeljan1
c82b207c96 Gtk3: implemented SetAlphaBlend(). 2025-02-12 09:47:42 +01:00
zeljan1
5731b3c4cf Gtk3: Make TGtk3WidgetSet.GetKeyState() work for mouse buttons.Example at issue #41340 2025-02-12 09:22:14 +01:00
zeljan1
597fe6af9d Gtk3: debug for keypresses. 2025-02-11 21:39:14 +01:00
zeljan1
2feb873d51 Gtk3: more keys implemented, fixed square brackets keys.issue #41425 2025-02-11 21:11:34 +01:00
zeljan1
18d03966ff Gtk3: make keys work with synedit. 2025-02-11 19:51:01 +01:00
zeljan1
f83078ff61 Qt5,Qt6: do not set QGuiApplication_applicationDisplayName(), since Qt have another meaning about it. issue #41417 2025-02-11 15:53:22 +01:00
zeljan1
8605e5252d Qt5,Qt6: fixed layout of ListView vsIcon and vsSmallIcon. 2025-02-11 15:38:57 +01:00
zeljan1
683afd5cbb Qt5,Qt6: use floating point functions for primitives drawing on scaled displays. issue #41422 2025-02-11 14:44:05 +01:00
zeljan1
82f47a7b6f Gtk3: fixed loading smallimages in TistView.ViewStyle = vsSmallIcon 2025-02-11 09:58:54 +01:00
zeljan1
291a9fd3dd Qt5,Qt6: fixed distorted image creation from device (screenshoot) on HiDpi screens. 2025-02-11 09:40:54 +01:00
zeljan1
32c1370c50 Gtk3: fixed TGtk3DeviceContext.GetPixel() so it works on wayland too. Patch by Anton Kavalenka. issue #41413 2025-02-10 19:59:52 +01:00
n7800
bbb52ae727 LCL: Additional key constant aliases VK_LCL_* 2025-02-10 16:15:07 +00:00
zeljan1
04f57de851 Qt5,Qt6: proper set of application title.issue #41417. 2025-02-10 15:28:43 +01:00
zeljan1
c50ceb5e64 Gtk3: removed unnecessary check. 2025-02-09 23:09:44 +01:00
zeljan1
9d7bd8fdd8 Gtk3: give some more time to window to configure itself. Sometimes, some forms stay invisible because it need more time to refresh and configure. Related to the issue #41412 2025-02-09 22:48:22 +01:00
wp_xyz
8f5c0d7288 LCL/TreeView: Improved custom drawing. 2025-02-09 15:56:16 +01:00
zeljan1
19ed12106d Gtk3: fixed loading bitmap from device. 2025-02-09 15:45:25 +01:00
zeljan1
03b43038f3 Gtk3: rewritten TGtk3DeviceContext.getPixel() to return correct pixel e, especially when our surface is not an image. issue #41413 2025-02-09 13:16:21 +01:00
zeljan1
07d34d83e4 Gtk3: fixed TGtk3DeviceContext.getPixel(). Patch by Anton Kavalenka. issue #41413 2025-02-08 17:44:49 +01:00
zeljan1
8e5b458e0b Gtk3: fixed case when window geometry isn't updated yet, so form is malformed or completely block showing. issue #41412 2025-02-08 16:54:54 +01:00
zeljan1
07f655053d Gtk3: hide toplevels by default when handle is created , only LCL should show it. issue #41412 2025-02-07 21:41:12 +01:00
zeljan1
fd83de7f2a Gtk3: fixed rectangle draw. Patch by Anton Kavalenka. issue #41397 2025-02-07 20:42:02 +01:00
zeljan1
f14ddd7eea Gtk3: fixed ClientHeight does not equal to Height on wayland.Patch by Anton Kavalenka. issue #41345 2025-02-07 15:52:07 +01:00
zeljan1
eba745ba63 Qt5: set mouse capture automatically. Qt4 and Qt6 works correct without such patch. issue #41341 2025-02-07 14:47:57 +01:00
zeljan1
b0d17dbe66 Gtk3: cleanup, fixed memleaks. 2025-02-06 23:32:56 +01:00
zeljan1
8cece17ba8 Gtk3: Encapsulated PGdkCursor, fixed CreateCompatibleDC(). 2025-02-06 23:06:19 +01:00
zeljan1
42a3ff44e7 Gtk3: cleanup. 2025-02-06 20:56:33 +01:00
Juha
4a8f31afdb LCL-GTK2: Filter the messages in function PeekMessage. Issue #41407, patch by Artem Izmaylov. 2025-02-06 18:15:24 +02:00
Juha Manninen
14c4d4a030 Merge branch 'LCL/SelectInFolder/Windows' into 'main'
LCL: Improving SelectInFolder implementation on Windows

See merge request freepascal.org/lazarus/lazarus!432
2025-02-06 09:54:45 +00:00
zeljan1
aec061aae2 Gtk3: fixed memleak in TGtk3DeviceContext.GetPixel() 2025-02-06 10:33:02 +01:00
n7800
90b91071fb LCL: Improving SelectInFolder implementation on Windows 2025-02-06 09:23:52 +00:00
Juha
4ce84e7af4 LCL: Improve a comment for function SelectInFolder. Directories are shown in different ways in different systems. 2025-02-06 10:05:36 +02:00
zeljan1
78085ec24c Gtk3: fixed mem leak. 2025-02-05 22:15:11 +01:00
zeljan1
670719349b Gtk3: fixed few memleaks found by valgrind. 2025-02-05 21:56:45 +01:00
zeljan1
76147c8a4e Gtk3: implemented LargeImages in TCustomListView.ViewStyle = vsIcon, fixed memleak. 2025-02-05 19:41:43 +01:00
zeljan1
d88398cd3a Gtk3: better handling of TCustomListView.ShowColumnHeader when ViewStyle=vsReport. 2025-02-05 16:06:16 +01:00
zeljan1
8a902339bf Gtk3: fixed TCustomListView setting clDefault color, fixed ItemDisplayRect. 2025-02-05 14:05:17 +01:00
zeljan1
0a2ec46c51 Gtk3: implemented checkable TCustomListView. 2025-02-05 13:20:08 +01:00
zeljan1
01058cca8d Gtk3: removed TGtk3WSCustomListView.GetFocused, it isn't used by LCL at all anymore. 2025-02-05 11:30:57 +01:00
zeljan1
cd67b9603c Gtk3: implemented TGtk3ListView.ShowRow(), partially implemented TGtk3WSComCtrls.ItemShow 2025-02-05 10:25:34 +01:00
zeljan1
26a8fe1765 Gtk3: fixed TGtk3ListView.setColor, implemented ItemGetPosition, recreate handle when ViewStyle of list is changed. 2025-02-05 10:01:09 +01:00
zeljan1
8839d5656a Gtk3: make TListView setFont() and setColor() work. 2025-02-04 19:38:24 +01:00
zeljan1
1a2bdc04d9 Gtk3: fixed moveTo() when handling pen with width > 1. issue #41405 2025-02-04 13:55:21 +01:00
zeljan1
548f2b0657 Gtk3: rewritten TGtk3Caret so it works under wayland too. issue #41395 2025-02-04 08:28:10 +01:00
JuhaManninen
498fd13c98 LCL-Win32: Simplify function SelectInFolder. 2025-02-03 20:49:50 +02:00
zeljan1
d931804a51 Qt6: do not allow THintWindow to grab focus under wayland. 2025-02-03 18:40:18 +01:00
zeljan1
8077d8dae0 Gtk3: fixed GetWindowRect() so it return proper values on x11 and wayland. 2025-02-03 16:56:46 +01:00
wp_xyz
654245a39e LCL/ImageList: Fix update of images after reloading. Issue #41386, based on patch by Massimo Magnano. 2025-02-03 12:45:20 +01:00
zeljan1
3a07a26d47 Gtk3: improved caret. issue #41395 2025-02-02 17:19:01 +01:00
wp_xyz
4e939b31dd Replace locally implement operator overload for method comparison by already available SameMethod. Proposed by n7800 in MR !431 2025-02-02 12:09:48 +01:00
Juha
d8227cc4c4 LCL: Eliminate a variable in function DoOpen for Mac. 2025-02-02 10:23:41 +02:00
Juha
4164e5b669 LCL: Fix quote char in OpenDocument and SelectInFolder for Linux. 2025-02-02 10:08:30 +02:00
rich2014
94951a82fd Cocoa: #41309 fix the issue in TCocoaWSCustomForm for TCustomForm.PaintTo() 2025-02-02 10:48:37 +08:00
rich2014
b855e211b6 LCL/Cocoa: Implement SelectInFolder for macOS. 2025-02-02 10:44:51 +08:00
zeljan1
0d5e804de9 Gtk3: hopefully fixed color swapped images (r & b channels). 2025-02-02 01:02:06 +01:00
Juha
efa53c774a LCL: Implement SelectInFolder for Windows. 2025-02-02 01:27:39 +02:00
Juha
28ba5306c3 LCL: Add a new function SelectInFolder in LclIntf. Use it in source editor's StatusBar. 2025-02-01 18:28:44 +02:00
zeljan1
6d7ce926a7 Gtk3: Make dock header button appear. Patch by Anton Kavalenka, issue #40346 2025-02-01 14:29:24 +01:00
zeljan1
b5a0144feb Gtk3: Removed usage of cairo_save() and cairo_restore() inside TGtk3DeviceContext, it can be called only via TGtk3WidgetSet.SaveDC() and RestoreDC(), so we have now significant speed improvement by this commit, also it fixes various problems with masked bitmaps. Issue #41393, issue #41344, issue #41383 2025-02-01 14:22:51 +01:00
zeljan1
941419e8a9 Gtk3: fix button autosized width, must use LCL size. issue #41390 2025-02-01 13:56:24 +01:00
zeljan1
c0b1b7c5bc Gtk3: avoid pango asserts with invalid utf8 strings in TGtk3WidgetSet.GetTextExtentPoint() 2025-02-01 13:53:41 +01:00
wp_xyz
d11d9793b2 LCL/ShellTreeView: Fix error when clicking a non-default root node in sorted ShellTreeView. Issue #41373. 2025-02-01 12:46:38 +01:00
zeljan1
3cc1bc02fb Qt4: fixed build after removing of deprecated stuff 2025-02-01 11:45:12 +01:00
Juha
28578a1e6a LCL-Win32: Keep TTrayIcon helper window hidden. Issue #41279, patch by Red_prig (Pavel). 2025-02-01 02:37:46 +02:00
Maxim Ganetsky
e62036a5be Revert "LCL-GTK3: Make fsStayOntop work, Issue #41253, patch by Anton Kavalenka."
This reverts commit 46fad95a74
2025-01-31 21:35:41 +00:00
zeljan1
c6868517d5 Gtk3: fixed memleak in drawText() 2025-01-31 21:29:26 +01:00
zeljan1
37dd466b00 Gtk3: fixed drawing pixmap with mask.issue #41383 2025-01-31 21:10:02 +01:00
zeljan1
aae76e11e3 Gtk3: we actually must paint LCLObject.Color on GtkFixed, or use css. issue #41391 2025-01-31 20:05:58 +01:00
zeljan1
0bb0a0625a Gtk3: fixed StretchMaskBlt(). issue #41384 2025-01-31 18:56:15 +01:00
zeljan1
1d5796a663 Gtk3: do not use set_no_show_all() for windows and notebooks. 2025-01-31 18:34:34 +01:00
zeljan1
95786ee691 Gtk3: fixed issue when hide mapped container. issue #41387 2025-01-31 18:26:07 +01:00
Juha
46fad95a74 LCL-GTK3: Make fsStayOntop work, Issue #41253, patch by Anton Kavalenka. 2025-01-31 19:10:36 +02:00
Juha
5bcc39179c LCL: Fix TTreeNode.GetTextPath. Issue #41356, patch by Don Siders. 2025-01-31 15:39:25 +02:00
Juha
b3833f5594 LCL: Fix a comment about a deprecated variable, remove deprecated enum. Issue #41366. 2025-01-31 14:28:12 +02:00
Juha
476da882fa Delete some deprecated functions. Inspired by issue #41363. 2025-01-31 13:50:35 +02:00
zeljan1
0cde3a5c07 Gtk3: fixed TGtk3DeviceContext.drawText(), param for fill background.issue #41381 2025-01-31 10:18:20 +01:00
Juha
9f5be67e36 LCL: Update TCombobox.ItemIndex when AutoCompleteing. Issue #41358, patch by Iluha Companets. 2025-01-31 02:20:42 +02:00
Juha
82bf2bb2fa LCL-GTK3: Improve drawing graph primitives. Issue #41382, patch by Alexey Torgashin. 2025-01-31 01:23:46 +02:00
Juha
bc8578231c LCL: Use OwnerForm.Monitor when Position = poOwnerFormCenter. Issue #41377, patch by Artem Izmaylov. 2025-01-31 00:19:31 +02:00