Commit graph

1053 commits

Author SHA1 Message Date
gambas
08048012e0 When opening a modal dialog or a popup while a mouse button is pressed, generate a fake MouseUp event because the true one is eaten by the modal dialog or the popup.
[GB.GTK]
* BUG: When opening a modal dialog or a popup while a mouse button is pressed, generate a fake MouseUp event because the true one is eaten by the modal dialog or the popup.

[GB.GTK3]
* BUG: When opening a modal dialog or a popup while a mouse button is pressed, generate a fake MouseUp event because the true one is eaten by the modal dialog or the popup.

[GB.QT4]
* BUG: When opening a modal dialog or a popup while a mouse button is pressed, generate a fake MouseUp event because the true one is eaten by the modal dialog or the popup.

[GB.QT5]
* BUG: When opening a modal dialog or a popup while a mouse button is pressed, generate a fake MouseUp event because the true one is eaten by the modal dialog or the popup.
2021-03-14 22:26:13 +01:00
gambas
ab9148414b Recompute font height when the Bold or Italic properties change too.
[GB.GTK]
* BUG: Recompute font height when the Bold or Italic properties change too.

[GB.GTK3]
* BUG: Recompute font height when the Bold or Italic properties change too.
2021-03-12 03:47:12 +01:00
gambas
91996df3fc Showing or hiding a control does not trigger a parent arrangement if the Ignore property was set.
[GB.GTK]
* BUG: Showing or hiding a control does not trigger a parent arrangement if the Ignore property was set.

[GB.GTK3]
* BUG: Showing or hiding a control does not trigger a parent arrangement if the Ignore property was set.
2021-03-10 15:50:17 +01:00
gambas
e13afca718 Control.NoTabFocus now correctly handle proxies.
[GB.GTK]
* BUG: Control.NoTabFocus now correctly handle proxies.

[GB.GTK3]
* BUG: Control.NoTabFocus now correctly handle proxies.
2021-03-09 14:14:42 +01:00
gambas
e8dd753abc DragLeave event is now always raised before entering another drop target.
[GB.GTK]
* BUG: DragLeave event is now always raised before entering another drop target.

[GB.GTK3]
* BUG: DragLeave event is now always raised before entering another drop target.
2021-03-09 01:38:04 +01:00
gambas
dafc24b435 Support for fonts whose name is made of digits only.
[GB.GTK]
* BUG: Support for fonts whose name is made of digits only. In that case, the family name in Font string representation must be enclosed with double quotes.

[GB.GTK3]
* BUG: Support for fonts whose name is made of digits only. In that case, the family name in Font string representation must be enclosed with double quotes.

[GB.QT4]
* BUG: Support for fonts whose name is made of digits only. In that case, the family name in Font string representation must be enclosed with double quotes.

[GB.QT5]
* BUG: Support for fonts whose name is made of digits only. In that case, the family name in Font string representation must be enclosed with double quotes.
2021-03-08 20:12:59 +01:00
gambas
768a928dd3 UserControl: Support for the 'Change' pseudo event. Use the new GB_FUNCTION structure to optimize support of UserControl_* pseudo event handlers.
[GB.GTK]
* NEW: UserControl: Support for the 'Change' pseudo event.
* OPT: UserControl: Use the new GB_FUNCTION structure to optimize support of UserControl_* pseudo event handlers.

[GB.GTK3]
* NEW: UserControl: Support for the 'Change' pseudo event.
* OPT: UserControl: Use the new GB_FUNCTION structure to optimize support of UserControl_* pseudo event handlers.

[GB.QT4]
* NEW: UserControl: Support for the 'Change' pseudo event.
* OPT: UserControl: Use the new GB_FUNCTION structure to optimize support of UserControl_* pseudo event handlers.

[GB.QT5]
* NEW: UserControl: Support for the 'Change' pseudo event.
* OPT: UserControl: Use the new GB_FUNCTION structure to optimize support of UserControl_* pseudo event handlers.
2021-03-08 00:02:32 +01:00
gambas
12e5d9a79d Don't use a recent GLib API that is actually not needed.
[GB.GTK]
* BUG: Don't use a recent GLib API that is actually not needed.

[GB.GTK3]
* BUG: Don't use a recent GLib API that is actually not needed.
2021-03-07 21:12:11 +01:00
gambas
87ed822b2b Fix deferred control deletion.
[GB.GTK]
* BUG: Fix deferred control deletion.

[GB.GTK3]
* BUG: Fix deferred control deletion.
2021-03-06 23:42:49 +01:00
gambas
f0094e7f68 Fix DrawingArea and UserControl painting on 'gb.gtk'.
[GB.GTK]
* BUG: Fix DrainwgArea and UserControl painting again.

[GB.GTK3]
* OPT: Don't use css stylesheets on containers having no child that draw nothing by themselves.
2021-03-06 13:17:35 +01:00
gambas
aefee813e2 Add CheckBox and RadioButton Invert property. Fix resize against arrangement and GTK painting on DrawingArea and UserControl.
[GB.GTK]
* BUG: Fix DrawingArea and UserControl painting.
* NEW: CheckBox.Invert is a new property that put the check mark on the other side.
* NEW: RadioButton.Invert is a new property that put the radio button on the other side.
* NEW: Font.TextSize() is a new method that returns the text width and height as a rectangle.
* NEW: Font.RichTextSize() is a new method that returns the rich text width and height as a rectangle.
* BUG: Font.RichTextWidth() now takes a width optional argument like RichTextHeight().
* OPT: Control resize now ignores new width or height if its container constraints it.

[GB.GTK3]
* NEW: CheckBox.Invert is a new property that put the check mark on the other side.
* NEW: RadioButton.Invert is a new property that put the radio button on the other side.
* NEW: Font.TextSize() is a new method that returns the text width and height as a rectangle.
* NEW: Font.RichTextSize() is a new method that returns the rich text width and height as a rectangle.
* BUG: Font.RichTextWidth() now takes a width optional argument like RichTextHeight().
* OPT: Control resize now ignores new width or height if its container constraints it.

[GB.QT4]
* NEW: CheckBox.Invert is a new property that put the check mark on the other side.
* NEW: RadioButton.Invert is a new property that put the radio button on the other side.
* NEW: Font.TextSize() is a new method that returns the text width and height as a rectangle.
* NEW: Font.RichTextSize() is a new method that returns the rich text width and height as a rectangle.
* BUG: Font.RichTextWidth() now takes a width optional argument like RichTextHeight().
* OPT: Control resize now ignores new width or height if its container constraints it.

[GB.QT5]
* NEW: CheckBox.Invert is a new property that put the check mark on the other side.
* NEW: RadioButton.Invert is a new property that put the radio button on the other side.
* NEW: Font.TextSize() is a new method that returns the text width and height as a rectangle.
* NEW: Font.RichTextSize() is a new method that returns the rich text width and height as a rectangle.
* BUG: Font.RichTextWidth() now takes a width optional argument like RichTextHeight().
* OPT: Control resize now ignores new width or height if its container constraints it.
2021-03-06 13:17:35 +01:00
gambas
250d91a7a8 Fix a crash in UserControl_Font() management.
[GB.GTK]
* BUG: Fix a crash in UserControl_Font() management.

[GB.GTK3]
* BUG: Fix a crash in UserControl_Font() management.
2021-03-06 13:17:35 +01:00
gambas
d65bd209d3 Remove Label and TextLabel controls. Support for UserControl_Font() handler. Some text size computation fixes.
[GB.GTK]
* NEW: Remove Label and TextLabel controls.
* NEW: Call UserControl_Font() handler when the UserControl font changes.
* BUG: Font size computation takes into account Pango ink rectangle.

[GB.GTK3]
* NEW: Remove Label and TextLabel controls.
* NEW: Call UserControl_Font() handler when the UserControl font changes.
* BUG: Font size computation takes into account Pango ink rectangle.

[GB.QT4]
* NEW: Remove Label and TextLabel controls.
* NEW: Call UserControl_Font() handler when the UserControl font changes.
* BUG: Border drawing routine now preserves paint color.
* BUG: All Paint text routines now workaround the font assignment bug.

[GB.QT5]
* NEW: Remove Label and TextLabel controls.
* NEW: Call UserControl_Font() handler when the UserControl font changes.
* BUG: Border drawing routine now preserves paint color.
* BUG: All Paint text routines now workaround the font assignment bug.
2021-03-06 13:17:35 +01:00
gambas
cd4d969024 Fix Label and TextLabel size computation when AutoResize is set.
[GB.GTK]
* BUG: Fix Label and TextLabel size computation when AutoResize is set.

[GB.GTK3]
* BUG: Fix Label and TextLabel size computation when AutoResize is set.
2021-03-06 13:17:35 +01:00
gambas
e0132ab1f2 Fix control enumerations.
[GB.GTK]
* BUG: Fix enumeration of all application controls.
* BUG: Fix enumeration of the controls of a specific window.

[GB.GTK3]
* BUG: Fix enumeration of all application controls.
* BUG: Fix enumeration of the controls of a specific window.
2021-03-06 13:17:35 +01:00
gambas
fcb0799e34 Window layout management now should work both on X11 and Wayland.
[GB.GTK]
* BUG: Window layout management now should work both on X11 and Wayland.

[GB.GTK3]
* BUG: Window layout management now should work both on X11 and Wayland.
2021-03-06 13:17:35 +01:00
gambas
3d3fff17f7 Start to rework top-level window layout management.
[GB.GTK]
* BUG: Start to rework top-level window layout management.

[GB.GTK3]
* BUG: Start to rework top-level window layout management.
2021-03-06 13:17:35 +01:00
gambas
e08783e6b9 Remove some specific support for client-side decoration. It broke window arrangement.
[GB.GTK3]
* BUG: Remove some specific support for client-side decoration. It broke window arrangement.
2021-03-06 13:17:35 +01:00
gambas
693854a8d5 Fix management of default minimum size of modal and utility windows.
[GB.GTK]
* BUG: Fix management of default minimum size of modal and utility windows.

[GB.GTK3]
* BUG: Fix management of default minimum size of modal and utility windows.

[GB.QT4]
* BUG: Fix management of default minimum size of modal and utility windows.

[GB.QT5]
* BUG: Fix management of default minimum size of modal and utility windows.
2021-02-24 16:21:41 +01:00
gambas
d900937949 Add an Orientation property to ScrollBar and Sldider that allows to define the orientation explicitly.
[GB.FORM]
* NEW: SliderBox: Use the new Slider.Orientation property.

[GB.GUI.BASE]
* NEW: ScrollArea: Use the new ScrollBar.Orientation property.

[GB.GTK]
* NEW: ScrollBar: Add orientation constants.
* NEW: ScrollBar: Orientation is a new property that allows to define the orientation explicitly.
* NEW: Slider: Orientation is a new property that allows to define the orientation explicitly.

[GB.GTK3]
* NEW: ScrollBar: Add orientation constants.
* NEW: ScrollBar: Orientation is a new property that allows to define the orientation explicitly.
* NEW: Slider: Orientation is a new property that allows to define the orientation explicitly.

[GB.QT4]
* NEW: ScrollBar: Add orientation constants.
* NEW: ScrollBar: Orientation is a new property that allows to define the orientation explicitly.
* NEW: Slider: Orientation is a new property that allows to define the orientation explicitly.

[GB.QT5]
* NEW: ScrollBar: Add orientation constants.
* NEW: ScrollBar: Orientation is a new property that allows to define the orientation explicitly.
* NEW: Slider: Orientation is a new property that allows to define the orientation explicitly.
2021-02-22 14:54:52 +01:00
gambas
473f392e65 Compute font height in a way compatible with older versions of Pango.
[GB.GTK]
* BUG: Compute font height in a way compatible with older versions of Pango.

[GB.GTK3]
* BUG: Compute font height in a way compatible with older versions of Pango.
2021-02-15 23:55:13 +01:00
gambas
0bf1ba17a6 Don't hide TextBox or TextArea internal window if the control has the focus.
[GB.GTK]
* BUG: Font.TextHeight() now works the same way as in Qt components.

[GB.GTK3]
* BUG: Font.TextHeight() now works the same way as in Qt components.
* BUG: Don't hide TextBox or TextArea internal window if the control has the focus.
2021-02-15 22:01:10 +01:00
gambas
858f9f7509 TextLabel: Setting a custom font does not erase markups anymore.
[GB.GTK]
* BUG: TextLabel: Setting a custom font does not erase markups anymore.

[GB.GTK3]
* BUG: TextLabel: Setting a custom font does not erase markups anymore.
2021-02-15 19:48:29 +01:00
gambas
076fa9d027 Fix Design property management for controls inserted inside UserContainer.
[GB.GTK]
* BUG: Fix Design property management for controls inserted inside UserContainer.

[GB.GTK3]
* BUG: Fix Design property management for controls inserted inside UserContainer.

[GB.QT4]
* BUG: Fix Design property management for controls inserted inside UserContainer.

[GB.QT5]
* BUG: Fix Design property management for controls inserted inside UserContainer.
2021-02-07 23:28:13 +01:00
gambas
b011b976f3 Container: Fix ClientWidth and ClientHeight computation.
[GB.GTK3]
* BUG: Container: Fix ClientWidth and ClientHeight computation.
2021-02-05 22:56:17 +01:00
gambas
2980bef452 Window: MinWidth and MinHeight are two new properties that allow to define the minimum size of a resizable window.
[GB.GTK]
* NEW: Window: MinWidth and MinHeight are two new properties that allow to define the minimum size of a resizable window.

[GB.GTK3]
* NEW: Window: MinWidth and MinHeight are two new properties that allow to define the minimum size of a resizable window.

[GB.QT4]
* NEW: Window: MinWidth and MinHeight are two new properties that allow to define the minimum size of a resizable window.

[GB.QT5]
* NEW: Window: MinWidth and MinHeight are two new properties that allow to define the minimum size of a resizable window.
2021-02-03 23:21:54 +01:00
gambas
ad6b4f158b Radio menu are correctly managed now.
[GB.GTK]
* BUG: Radio menu are correctly managed now.

[GB.GTK3]
* BUG: Radio menu are correctly managed now.
2021-02-03 18:54:43 +01:00
gambas
3bbb6154c4 Closing a window during the Open event now works like in Qt. Do not post window resize events, because the window can be destroyed in the meantime.
[GB.GTK]
* BUG: Do not post window resize events, because the window can be destroyed in the meantime.
* BUG: Closing a window during the Open event now works like in Qt.

[GB.GTK3]
* BUG: Do not post window resize events, because the window can be destroyed in the meantime.
* BUG: Closing a window during the Open event now works like in Qt.
2021-02-02 00:33:40 +01:00
gambas
856a15a7a9 Fix a crash occuring if a container loses one of its children while arranging them.
[GB.GTK]
* BUG: Fix a crash occuring if a container loses one of its children while arranging them.

[GB.GTK3]
* BUG: Fix a crash occuring if a container loses one of its children while arranging them.
2021-02-01 21:46:22 +01:00
gambas
6156d141bd TextArea: Fix minimum size when scrollbars are disabled.
[GB.GTK]
* BUG: TextArea: Fix minimum size when scrollbars are disabled.

[GB.GTK3]
* BUG: TextArea: Fix minimum size when scrollbars are disabled.
2021-02-01 20:03:42 +01:00
gambas
14816c68c1 Fix management of Enter and Leave events.
[GB.GTK]
* BUG: Fix management of Enter and Leave events.

[GB.GTK3]
* BUG: Fix management of Enter and Leave events.
2021-01-31 19:28:07 +01:00
gambas
16f7a0cb8b Centered is a new container property that centered its contents. Many GTK fixes.
[GB.GTK]
* NEW: Centered is a new container property that centered its contents. It works for horizontal, vertical and fill arrangement only.
* BUG: Setting Application.Font to NULL now resets the default font.
* BUG: Resizable utility windows now have a minimum size like QT components.

[GB.GTK3]
* NEW: Centered is a new container property that centered its contents. It works for horizontal, vertical and fill arrangement only.
* BUG: Setting Application.Font to NULL now resets the default font.
* OPT: Setting Application.Font now is almost instantaneous.
* BUG: Editable combo-boxes having a small width now behave correctly.
* BUG: Resizable utility windows now have a minimum size like QT components.
* BUG: Read-only combo-boxes do not have inner vertical padding anymore.

[GB.QT4]
* NEW: Centered is a new container property that centered its contents. It works for horizontal, vertical and fill arrangement only.

[GB.QT5]
* NEW: Centered is a new container property that centered its contents. It works for horizontal, vertical and fill arrangement only.
* BUG: Fix TextArea background.
2021-01-28 02:46:00 +01:00
gambas
91b7a446d0 TextBox minimum size is correctly updated when its Border property changes.
[GB.GTK3]
* BUG: TextBox minimum size is correctly updated when its Border property changes.
2021-01-27 03:26:32 +01:00
gambas
4e13955aff Fixes in stylesheet management.
[GB.GTK3]
* BUG: Make stylesheet global, so that styling sub-node work everytime.
* BUG: Don't unref null style contexts on theme change.
* NEW: Don't hide background of borderless TextBox and ComboBox.
2021-01-27 00:27:26 +01:00
gambas
85b963e304 DrawingArea: drawing is clipped by the control border now.
[GB.GTK3]
* BUG: DrawingArea: drawing is clipped by the control border now.
2021-01-26 22:31:56 +01:00
gambas
be333d5cf3 TextArea.Background works again.
[GB.GTK3]
* BUG: TextArea.Background works again.
2021-01-26 07:06:32 +01:00
gambas
764e748147 Fix control stylesheet management.
[GB.GTK3]
* BUG: Fix control stylesheet management.
2021-01-24 00:55:00 +01:00
gambas
f588c83fda PictureBox now uses the new UserControl Draw pseudo-event and Frame container in now implemented in Gambas.
[GB.DRAW]
* NEW: Add PaintExtents W and H properties as synonymous of Width and Height.

[GB.GUI.BASE]
* NEW: PictureBox now uses the new UserControl Draw pseudo-event.
* NEW: Frame container in now implemented in Gambas.

[GB.GTK]
* NEW: Frame container in now implemented in Gambas.
* BUG: Style drawing routines now work correctly on UserControl.

[GB.GTK3]
* NEW: Frame container in now implemented in Gambas.

[GB.QT4]
* NEW: Frame container in now implemented in Gambas.

[GB.QT5]
* NEW: Frame container in now implemented in Gambas.
* BUG: Do not activate windows on Wayland, this is not supported.
2021-01-23 23:30:36 +01:00
gambas
bc170a2317 UserControl now can paint itself through a UserControl_Draw method.
[GB.GTK]
* NEW: UserControl now can paint itself through a UserControl_Draw method.

[GB.GTK3]
* NEW: UserControl now can paint itself through a UserControl_Draw method.
* BUG: Remove debugging message.

[GB.GUI.BASE]
* NEW: Separator: Use the new painting pseudo-event of UserControl.

[GB.QT4]
* NEW: UserControl now can paint itself through a UserControl_Draw method.

[GB.QT5]
* NEW: UserControl now can paint itself through a UserControl_Draw method.
2021-01-23 02:44:46 +01:00
gambas
b4ab1027d8 Separator is now a Gambas-made control.
[GB.GTK]
* NEW: Remove Separator control.
* BUG: Fix minimum size computation.

[GB.GTK3]
* NEW: Remove Separator control.
* BUG: Fix minimum size computation.

[GB.GUI.BASE]
* NEW: Separator is now a Gambas-made control.

[GB.QT4]
* NEW: Remove Separator control.

[GB.QT5]
* NEW: Remove Separator control.
2021-01-22 23:53:27 +01:00
gambas
19822c4923 Fix initial window size for windows having menus.
[GB.GTK3]
* BUG: Fix initial window size for windows having menus.
2021-01-22 15:39:57 +01:00
gambas
f3e882681c Fix Control ScreenX and ScreenY properties again.
[GB.GTK]
* BUG: Fix Control ScreenX and ScreenY properties again.

[GB.GTK3]
* BUG: Fix Control ScreenX and ScreenY properties again.
2021-01-22 15:20:55 +01:00
gambas
6669ab0011 Remove stylesheet debugging message.
[GB.GTK3]
* BUG: Remove stylesheet debugging message.
2021-01-22 09:24:49 +01:00
gambas
548eb8498e Many fixes related to Wayland support.
[GB.GTK]
* BUG: Fix Window.Background property behavior.
* BUG: Fix Control ScreenX and ScreenY properties.
* BUG: Fix Slider and ScrollBar resize behavior.

[GB.GTK3]
* BUG: Fix Window.Background property behavior.
* BUG: Remove useless control variables.
* BUG: Fix Control ScreenX and ScreenY properties.
* BUG: Don't use CSS for the background color of controls that do not need it.
* BUG: Fix Slider and ScrollBar resize behavior.
2021-01-22 08:58:45 +01:00
gambas
6d87ae2df8 Merge branch 'master' of https://gitlab.com/gambas/gambas 2021-01-21 02:41:26 +01:00
gambas
ead0304aa7 Update control style sheet only if the control is visible.
[GB.GTK]
* BUG: Resizing a control now take the minimum size into account.

[GB.GTK3]
* OPT: Update control style sheet only if the control is visible.
* BUG: Resizing a control now take the minimum size into account.
2021-01-21 02:39:10 +01:00
gambas
85f750dfca Screen.ResolutionX and Screen.ResolutionY are two new properties that return the resolution of a screen.
[GB.GTK]
* NEW: Screen.ResolutionX and Screen.ResolutionY are two new properties that return the resolution of a screen.

[GB.GTK3]
* NEW: Screen.ResolutionX and Screen.ResolutionY are two new properties that return the resolution of a screen.

[GB.QT4]
* NEW: Screen.ResolutionX and Screen.ResolutionY are two new properties that return the resolution of a screen.

[GB.QT5]
* NEW: Screen.ResolutionX and Screen.ResolutionY are two new properties that return the resolution of a screen.
2021-01-21 02:35:08 +01:00
gambas
aead895e74 Rich text with attribute values containing spaces does not crash anymore.
[GB.GTK]
* BUG: Rich text with attribute values containing spaces does not crash anymore.

[GB.GTK3]
* BUG: Rich text with attribute values containing spaces does not crash anymore.
2021-01-21 02:33:06 +01:00
gambas
1c3e02257c Signal handlers are now checked only if requested explicitly by a component.
[INTERPRETER]
* OPT: Signal handlers are now checked only if requested explicitly by a component.

[GB.GTK]
* NEW: Request SIGCHLD handler check.

[GB.GTK3]
* NEW: Request SIGCHLD handler check.
2021-01-21 01:49:38 +01:00
gambas
8ba841d150 Fix Control.ScreenY.
[GB.GTK]
* BUG: Fix Control.ScreenY.

[GB.GTK3]
* BUG: Fix Control.ScreenY.
2021-01-20 02:53:39 +01:00
gambas
4586106357 Merge branch 'master' of https://gitlab.com/gambas/gambas 2021-01-19 16:03:30 +01:00
gambas
503e467c78 BUG: Compute control screen coordinates differently because of Wayland.
[GB.GTK]
* BUG: Compute control screen coordinates differently because of Wayland.

[GB.GTK3]
* BUG: Compute control screen coordinates differently because of Wayland.
2021-01-19 16:02:44 +01:00
gambas
479197db31 BUG: Fix keyboard event management.
[GB.GTK]
* BUG: Fix keyboard event management.

[GB.GTK3]
* BUG: Fix keyboard event management.
2021-01-19 16:01:12 +01:00
gambas
e93a455f48 Define the minimum size of controls better, so that less GTK+ spurious warnings are emitted.
[GB.GTK3]
* BUG: Define the minimum size of controls better, so that less GTK+ spurious warnings are emitted.
2021-01-19 02:02:46 +01:00
gambas
ab307322bf Do not crash if expanded widgets change during arrangement. Fix GTK+ window centering method.
[GB.GTK]
* BUG: Do not crash if expanded widgets change during arrangement.

[GB.GTK3]
* BUG: Remove platform-specific window centering method.
* BUG: Do not crash if expanded widgets change during arrangement.

[GB.QT4]
* BUG: Do not crash if expanded widgets change during arrangement.

[GB.QT5]
* BUG: Do not crash if expanded widgets change during arrangement.
2021-01-18 22:27:33 +01:00
gambas
cf8abc4639 Make 'gb.gtk' compile again.
[GB.GTK]
* BUG: Make 'gb.gtk' compile again.
2021-01-18 22:03:21 +01:00
gambas
8d652ed193 GTK+ fixes, especially for Wayland.
[GB.GTK]
* NEW: Add minimum size to buttons, TextBox and Slider controls.
* BUG: Handle key events before global shortcuts only for GtkEntry and GtkTextView widgets.
* BUG: Fix client decoration size computation.
* BUG: The size of a window is now always the size of its contents, without the decorations.

[GB.GTK3]
* NEW: Add minimum size to buttons, TextBox and Slider controls.
* BUG: Handle key events before global shortcuts only for GtkEntry and GtkTextView widgets.
* BUG: Fix client decoration size computation.
* BUG: The size of a window is now always the size of its contents, without the decorations.
* NEW: Centering a window is a now platform-specific.
2021-01-18 21:55:07 +01:00
gambas
cfc6de5e08 Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.
[GB.GTK]
* BUG: Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.

[GB.GTK3]
* BUG: Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.
2021-01-17 20:35:13 +01:00
gambas
c211efd0c8 Creating a control with a NULL container now raises an error instead of crashing.
[GB.GTK]
* BUG: Creating a control with a NULL container now raises an error instead of crashing.

[GB.GTK3]
* BUG: Creating a control with a NULL container now raises an error instead of crashing.
2021-01-16 16:53:36 +01:00
gambas
feeb175c46 Fix Mouse.StartX and Mouse.StartY. Fix underline and strikeout text in Label and TextLabel.
[GB.GTK]
* BUG: Mouse.StartX and Mouse.StartY are now always available during mouse events.
* BUG: Label and TextLabel now correctly display underline or strikeout text.

[GB.GTK3]
* BUG: Mouse.StartX and Mouse.StartY are now always available during mouse events.
* BUG: Label and TextLabel now correctly display underline or strikeout text.
2021-01-16 04:32:04 +01:00
gambas
ce379dadb0 Fix mouse cursor handling of TextBox, ComboBox and TextArea.
[GB.GTK3]
* BUG: Fix mouse cursor handling of TextBox, ComboBox and TextArea.
2021-01-15 00:51:27 +01:00
gambas
1d270de336 Do not crash anymore when loading an Animation fails.
[DEVELOPMENT ENVIRONMENT]
* BUG: Don't use the deprecated MovieBox.Path property anymore.

[GB.GTK]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.GTK3]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.QT4]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.QT5]
* BUG: Do not crash anymore when loading an Animation fails.
2021-01-11 01:24:20 +01:00
gambas
bfb6cce882 Remove include of the deleted 'gmoviebox.h' file.
[GB.GTK]
* BUG: Remove include of the deleted 'gmoviebox.h' file.

[GB.GTK3]
* BUG: Remove include of the deleted 'gmoviebox.h' file.
2021-01-09 10:52:12 +01:00
gambas
a0a2d0379c MovieBox is now implemented in Gambas, through a new Animation class.
[DEVELOPMENT ENVIRONMENT]
* NEW: Support for the MovieBox Animation property.

[GB.GTK]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.GTK3]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.GUI.BASE]
* NEW: MovieBox is now implemented in Gambas.

[GB.QT4]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.QT5]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.
2021-01-09 10:24:56 +01:00
gambas
0d076a7b7c Fix arrangement of containers having the AutoResize property set and get rid of many deprecated GTK+ API on GTK+3.
[GB.GTK]
* BUG: Fix arrangement of containers having the AutoResize property set.
* BUG: TabStrip: Fix the client area computing routine.

[GB.GTK3]
* BUG: Fix arrangement of containers having the AutoResize property set.
* BUG: Get rid of many deprecated GTK+ API (not all yet).
* BUG: TabStrip: Fix the client area computing routine.
2021-01-08 18:36:02 +01:00
gambas
756b051160 Fixes in keyboard management and default / cancel buttons.
[GB.GTK]
* BUG: Button: Fix button click animation.
* BUG: Button: The default and cancel buttons of all embedded forms of the current window are now taken into account.
* BUG: Button: Unmapped default or cancel buttons are now ignored.
* BUG: Keyboard events are now propagated to the parent containers.

[GB.GTK3]
* BUG: Button: Fix button click animation.
* BUG: Button: The default and cancel buttons of all embedded forms of the current window are now taken into account.
* BUG: Button: Unmapped default or cancel buttons are now ignored.
* BUG: Keyboard events are now propagated to the parent containers.
2021-01-06 23:48:24 +01:00
gambas
647ef86ad2 Fix TabStrip client area size computation and Menu shortcut management.
[GB.GTK]
* BUG: TabStrip: Fix client area size computation.
* BUG: Menu: Fix shortcut management.

[GB.GTK3]
* BUG: TabStrip: Fix client area size computation.
* BUG: Menu: Fix shortcut management.
2021-01-06 20:31:53 +01:00
gambas
26dc727b78 Fix 'gb.gtk' crash when setting the accelerator management workaround, and implement Desktop.Platform.
[GB.GTK]
* BUG: Do not crash anymore when setting the accelerator management workaround.
* NEW: Desktop.Platform is a new property that returns the current platform in use.

[GB.GTK3]
* NEW: Desktop.Platform is a new property that returns the current platform in use.
2020-12-26 22:53:25 +01:00
gambas
93c9cbbe5c Some wayland fixes on menus.
[GB.GTK]
* BUG: Hidden menu bar is now moved in the negative horizontal coordinates so that a click on the CSD title bar does not see it.

[GB.GTK3]
* BUG: Fix Menu.Popup() on Wayland.
* BUG: Hidden menu bar is now moved in the negative horizontal coordinates so that a click on the CSD title bar does not see it.
2020-12-22 03:37:19 +01:00
gambas
10abab3811 Merge branch 'master' into wayland 2020-12-21 17:35:15 +01:00
gambas
7716f08584 Fix how menus are destroyed.
[GB.GTK]
* BUG: Fix how menus are destroyed.

[GB.GTK3]
* BUG: Fix how menus are destroyed.
2020-12-21 17:32:41 +01:00
gambas
5fac3c81a0 Printer: Setting OutputFile property to a void string does not toggle printing to file.
[GB.GTK]
* BUG: Printer: Setting OutputFile property to a void string does not toggle printing to file.

[GB.GTK3]
* BUG: Printer: Setting OutputFile property to a void string does not toggle printing to file.
2020-12-21 17:31:05 +01:00
Benoît Minisini
7d81756ead Some fixes in merge with master.
[GB.GTK3]
* BUG: Some fixes in merge with master.
2020-12-21 06:35:40 +01:00
Benoît Minisini
eefb03c5ba Merge branch 'wayland' of https://gitlab.com/gambas/gambas into wayland 2020-12-21 05:19:07 +01:00
Benoît Minisini
a6311c6b63 Continue working on Wayland support.
[GB.GTK3]
* NEW: Support for specific platforms: X11 & Wayland.

[GB.GTK3.X11]
* NEW: This is the GTK+3 X11 platform component.

[GB.GTK3.WAYLAND]
* NEW: This is the GTK+3 Wayland platform component.
2020-12-21 04:54:14 +01:00
gambas
2387e8c549 Emit keyboard events from the top-level window when no control has the focus.
[GB.GTK]
* BUG: Emit keyboard events from the top-level window when no control has the focus.

[GB.GTK3]
* BUG: Emit keyboard events from the top-level window when no control has the focus.
2020-12-19 22:26:09 +01:00
gambas
50e51284ae Fix popup menus that didn't pop up with some widget themes like 'Yaru'.
[GB.GTK3]
* BUG: Fix popup menus that didn't pop up with some widget themes like 'Yaru'.
2020-12-19 21:55:13 +01:00
gambas
e1fc63ba15 Fixes in Label autoresize, Panel arrangement, and Slider Max property.
[GB.GTK]
* BUG: Panel: Arrangement is now correctly triggered when the background color is set.
* BUG: Label: Fix autoresize behavior when the parent has an automatic arrangement.
* BUG: Slider: Max property works correctly again.

[GB.GTK3]
* BUG: Label: Fix autoresize behavior when the parent has an automatic arrangement.
* BUG: Slider: Max property works correctly again.
2020-12-19 00:26:01 +01:00
gambas
be18f431c7 Fixes in rich text to pango markup conversion.
[GB.GTK]
* NEW: Replace '<code>' by '<tt>' in rich text.
* BUG: '<p>' in rich text is replaced by a single line break.

[GB.GTK3]
* NEW: Replace '<code>' by '<tt>' in rich text.
* BUG: '<p>' in rich text is replaced by a single line break.
2020-12-18 02:57:12 +01:00
gambas
6b4b954cfa Get rid of unused code of native message boxes.
[GB.GTK]
* BUG: Get rid of unused code of native message boxes.

[GB.GTK3]
* BUG: Get rid of unused code of native message boxes.
2020-12-18 02:09:04 +01:00
gambas
c3e07f4a33 Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.
[GB.GTK]
* BUG: Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.

[GB.GTK3]
* BUG: Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.
2020-12-17 04:03:40 +01:00
gambas
e61e7583bc Fix a buffer overflow that makes the component crash on aarch64.
[GB.GTK3]
* BUG: Fix a buffer overflow that makes the component crash on aarch64.
2020-12-12 22:44:57 +01:00
gambas
c2242f5d59 Fix compilation on GTK+ < 3.22.
[GB.GTK]
* BUG: Fix some deprecation warning messages.

[GB.GTK3]
* BUG: Fix compilation on GTK+ < 3.22.
2020-12-11 17:31:44 +01:00
gambas
6593b75980 Remove debugging message.
[GB.GTK]
* BUG: Remove debugging message.

[GB.GTK3]
* BUG: Remove debugging message.
2020-12-10 12:39:35 +01:00
gambas
c0061c86da Window: Lower() and Raise() methods now work as expected.
[GB.GTK]
* BUG: Window: Lower() and Raise() methods now work as expected.

[GB.GTK3]
* BUG: Window: Lower() and Raise() methods now work as expected.
* BUG: Fix use of deprecated functions.
2020-12-09 22:42:05 +01:00
gambas
21b6007e8a Fix TabStrip control.
[GB.GTK]
* BUG: Fix TabStrip control.

[GB.GTK3]
* BUG: Fix TabStrip control.
2020-11-28 20:20:32 +01:00
gambas
dd40941136 Fix menu icons that were sometimes too small.
[GB.GTK]
* BUG: Fix menu icons that were sometimes too small.

[GB.GTK3]
* BUG: Fix menu icons that were sometimes too small.
2020-11-27 20:32:33 +01:00
gambas
03c5e93c7d Default and cancel buttons now work again.
[GB.GTK]
* BUG: Default and cancel buttons now work again.

[GB.GTK3]
* BUG: Default and cancel buttons now work again.
2020-11-24 21:57:57 +01:00
gambas
9c3fc87265 Keyboard management fixes.
[GB.GTK]
* BUG: Fix management of default and cancel buttons shortcuts.
* BUG: Workaround the default accelerator management of GTK, so that they are triggered only if no other widget handle the keyboard event.

[GB.GTK3]
* BUG: Fix management of default and cancel buttons shortcuts.
* BUG: Workaround the default accelerator management of GTK, so that they are triggered only if no other widget handle the keyboard event.
2020-11-24 21:37:55 +01:00
gambas
3906550902 Fix ComboBox and TextBox Border property, and possible problems with minimum size of buttons.
[GB.GTK3]
* BUG: Globally override minimum size of buttons in CSS stylesheet.
* BUG: Fix ComboBox and TextBox Border property.
2020-11-24 00:23:30 +01:00
gambas
0caed621e3 No padding in borderless combobox.
[GB.GTK3]
* NEW: No padding in borderless combobox.
2020-11-23 21:26:42 +01:00
gambas
778feecff6 Use GTK+ internals to make ComboBox Border, Foreground and Background properties work as expected.
[GB.GTK3]
* BUG: Use GTK+ internals to make ComboBox Border, Foreground and Background properties work as expected.
2020-11-23 03:55:46 +01:00
gambas
6e26b524e5 Fix Container.FindChild(), theme change management, and Menu.Popup() warnings on GTK+3.
[GB.GTK]
* BUG: Container.FindChild() now takes UserContainer into account.
* BUG: A few fixes on theme change management.

[GB.GTK3]
* BUG: Menu.Popup() does not print GTK+ warnings anymore when run outside of an event handler.
* BUG: A few fixes on theme change management.
2020-11-19 15:57:25 +01:00
gambas
3352bb6d9d Fixes in menu management and focus navigation.
[GB.GTK]
* BUG: Fix menu layouting routine.
* BUG: Focus navigation now ignore unmapped controls.
* BUG: Window.Resize() now works on non-resizable windows.
* BUG: Menu Click event is now delayed, like in Qt components.

[GB.GTK3]
* BUG: Fix menu layouting routine.
* BUG: Focus navigation now ignore unmapped controls.
* BUG: Menu Click event is now delayed, like in Qt components.
2020-11-17 16:44:02 +01:00
gambas
5c92dbd30f Remove deprecated Stock class.
[GB.GTK]
* BUG: Remove deprecated Stock class.

[GB.GTK3]
* BUG: Remove deprecated Stock class.
2020-11-17 09:32:53 +01:00
gambas
2a849671a5 Fix compilation on GTK+3 version < 3.12.
[GB.GTK3]
* BUG: Fix compilation on GTK+3 version < 3.12.
2020-11-16 22:40:45 +01:00
gambas
71190a534e Fix detection of system colors and react to widget theme change.
[GB.GTK]
* NEW: React to widget theme change.

[GB.GTK3]
* BUG: Fix detection of system colors.
* NEW: React to widget theme change.
2020-11-16 22:02:13 +01:00
gambas
45cfc32a24 Setting the ComboBox.Index property to -1 does not raise the Click event anymore.
[GB.GTK]
* BUG: Setting the ComboBox.Index property to -1 does not raise the Click event anymore.

[GB.GTK3]
* BUG: Setting the ComboBox.Index property to -1 does not raise the Click event anymore.
2020-11-16 01:20:59 +01:00
gambas
b2a55d6bc1 Fix TabStrip Design property behaviour.
[GB.GTK]
* BUG: Fix TabStrip Design property behaviour.

[GB.GTK3]
* BUG: Fix TabStrip Design property behaviour.

[GB.QT4]
* BUG: Fix TabStrip Design property behaviour.

[GB.QT5]
* BUG: Fix TabStrip Design property behaviour.
2020-11-15 23:27:08 +01:00
gambas
faa5f659c3 Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.
[GB.GTK]
* BUG: Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.

[GB.GTK3]
* BUG: Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.
2020-11-14 22:53:50 +01:00