Commit graph

97 commits

Author SHA1 Message Date
Benoît Minisini
2eeae0aea6 Make window activation specific to the GUI platform, in the hope of finding a workaround to the fact that window activation request is impossible in Wayland.
[GB.QT5]
* BUG: Make window activation specific to the GUI platform, in the hope of finding a workaround to the fact that window activation request is impossible in Wayland.
2022-12-09 18:16:01 +01:00
Benoît Minisini
30d5a5d604 WebView: Settings property is now actually specific to the view.
[GB.QT5.WEBVIEW]
* BUG: WebView: Settings property is now actually specific to the view.
2022-10-27 15:05:24 +02:00
Benoît Minisini
cff3487f96 WebView: 'Language' is a new property that allows to define the HTTP 'Accept-Language' headers. By default the current language is used.
[GB.GTK3.WEBVIEW]
* NEW: WebView: 'Language' is a new property that allows to define the HTTP 'Accept-Language' headers. By default the current language is used.

[GB.QT4.WEBVIEW]
* NEW: WebView: Add the 'Language' property, but it has no effect on Qt4.

[GB.QT5.WEBVIEW]
* NEW: WebView: 'Language' is a new property that allows to define the HTTP 'Accept-Language' headers. By default the current language is used.
2022-10-18 22:43:37 +02:00
Benoît Minisini
6a793ddeb7 Replace my old depracted gmail mail by the new one.
[CONFIGURATION]
* NEW: Replace my old depracted gmail mail by the new one.
2022-09-12 15:13:13 +02:00
Benoît Minisini
415de7b257 Update configuration files to autoconf 2.71.
[CONFIGURATION]
* NEW: Update configuration files to autoconf 2.71.
2022-09-03 13:24:51 +02:00
Benoît Minisini
72d23a24f2 WebView: GetHtml() is a new method that retrieve the HTML contents of the view.
[GB.GTK3.WEBVIEW]
* NEW: WebView: GetHtml() is a new method that retrieve the HTML contents of the view.

[GB.QT4.WEBVIEW]
* NEW: WebView: GetHtml() is a new method that retrieve the HTML contents of the view.

[GB.QT5.WEBVIEW]
* NEW: WebView: GetHtml() is a new method that retrieve the HTML contents of the view.
2022-07-23 15:40:37 +02:00
Benoît Minisini
2acba6caf9 WebView.Cookies.Clear() is a new method that removes all cookies.
[GB.GTK3.WEBVIEW]
* NEW: WebView.Cookies.Clear() is a new method that removes all cookies.

[GB.QT4.WEBVIEW]
* NEW: WebView.Cookies.Clear() is a new method that removes all cookies.

[GB.QT5.WEBVIEW]
* NEW: WebView.Cookies.Clear() is a new method that removes all cookies.
2022-06-18 23:47:15 +02:00
Benoît Minisini
78f28738e0 Add a message to warn that 'Window.Stacking' property does not work with Wayland and Qt5.
[GB.QT5.WAYLAND]
* NEW: Add a message to warn that 'Window.Stacking' property does not work with Wayland and Qt5.
2022-05-11 16:29:00 +02:00
Benoît Minisini
d4d12bda2b Implement the SetTransientFor() API by using a Qt 5.13 non-documented public method.
[GB.QT5.WAYLAND]
* NEW: Implement the SetTransientFor() API by using a Qt 5.13 non-documented public method.
2022-05-11 16:24:51 +02:00
Benoît Minisini
e43cbd6672 Remove an unused class public slot.
[GB.QT5.WEBVIEW]
* BUG: Remove an unused class public slot.
2022-05-02 00:55:05 +02:00
gambas
34846dbe31 Fix use of GB.Wait().
[GB.GTK3.WEBVIEW]
* BUG: Fix use of GB.Wait().

[GB.QT5.WEBVIEW]
* BUG: Fix use of GB.Wait().
2022-04-13 11:38:01 +02:00
gambas
97d862a2d0 Allow calling 'WAIT' alone during a keyboard event handler.
[GB.QT4]
* BUG: Allow calling 'WAIT' alone during a keyboard event handler.

[GB.QT5]
* BUG: Allow calling 'WAIT' alone during a keyboard event handler.
2022-04-12 19:58:15 +02:00
gambas
4b6c6e2d0f Remove the native ComboBox.
[GB.GTK]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* BUG: UserControl_Draw() event handler is called before drawing the control children.
* NEW: Remove the native ComboBox.

[GB.GTK3]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* BUG: UserControl_Draw() event handler is called before drawing the control children.
* NEW: Remove the native ComboBox.

[GB.QT4]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* NEW: Style methods draw focus and tab focus.
* NEW: Remove the native ComboBox.

[GB.QT5]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* NEW: Style methods draw focus and tab focus.
* NEW: Remove the native ComboBox.
2022-04-12 13:06:38 +02:00
gambas
2742b48afa Support for "Wait 0" syntax. Fix support of "Wait" alone syntax in GTK+ components.
[GB.GTK]
* NEW: Support for "Wait 0" syntax.
* BUG: Fix support of "Wait" alone syntax.

[GB.GTK3]
* NEW: Support for "Wait 0" syntax.
* BUG: Fix support of "Wait" alone syntax.

[GB.SDL2]
* NEW: Support for "Wait 0" syntax.

[GB.QT4]
* NEW: Support for "Wait 0" syntax.

[GB.QT5]
* NEW: Support for "Wait 0" syntax.
2022-04-09 19:11:56 +02:00
Helmut Grohne
cc50a31fbd Use the host architecture pkg-config
gambas3 fails to cross build from source, because it hard codes the
build architecture pkg-config in various places and thus fails finding
required components that are only installed for the host architecture.

Employ PKG_PROG_PKG_CONFIG to discover the host architecture pkg-config
and let the build proceed quite a bit further.

[GB.NCURSES]
* Use the host architecture pkg-config

[GB.PDF]
* Use the host architecture pkg-config

[GB.QT4]
* Use the host architecture pkg-config

[GB.QT5]
* Use the host architecture pkg-config
2022-03-31 22:40:31 +02:00
gambas
e63004b65b WebView: Try to prevent a possible crash when clearing the view.
[GB.QT5.WEBVIEW]
* BUG: WebView: Try to prevent a possible crash when clearing the view.
2022-03-11 03:18:43 +01:00
gambas
13df084748 Text direction can now be specified at control level.
[GB.GTK]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.GTK3]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.QT4]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.QT5]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.
2022-01-22 16:27:17 +01:00
gambas
0b3d48b698 Check if the event loop must be stopped each time a timer is disabled.
[GB.GTK]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.GTK3]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.QT4]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.QT5]
* BUG: Check if the event loop must be stopped each time a timer is disabled.
2022-01-14 19:17:09 +01:00
gambas
4ba0b9ad3c Don't quit if there is still one active timer.
[GB.GTK]
* NEW: Don't quit if there is still one active timer.

[GB.GTK3]
* NEW: Don't quit if there is still one active timer.

[GB.QT4]
* NEW: Don't quit if there is still one active timer.

[GB.QT5]
* NEW: Don't quit if there is still one active timer.
2022-01-14 12:34:40 +01:00
gambas
423b02fcd6 Don't use 'qApp->sync()', it calls the event loop.
[GB.QT5.X11]
* BUG: Don't use 'qApp->sync()', it calls the event loop.
2021-09-01 21:16:51 +02:00
gambas
ddc985ce08 Use 'qApp->sync()' instead of 'X11_flush()' to synchronize with the X11 server.
[GB.QT5.X11]
* NEW: Use 'qApp->sync()' instead of 'X11_flush()' to synchronize with the X11 server.
2021-08-30 13:24:48 +02:00
gambas
f7cd9542c8 'Desktop.Type' property is now implemented in 'gb.gui.base'.
[GB.GTK]
* NEW: 'Desktop.Type' property is now implemented in 'gb.gui.base'.

[GB.GTK3]
* NEW: 'Desktop.Type' property is now implemented in 'gb.gui.base'.

[GB.QT4]
* NEW: 'Desktop.Type' property is now implemented in 'gb.gui.base'.

[GB.QT5]
* NEW: 'Desktop.Type' property is now implemented in 'gb.gui.base'.
2021-08-18 21:53:06 +02:00
gambas
08a24c7927 Delete global QThreadPool object on fork only if QT version is at least 5.15.0.
[GB.QT5]
* BUG: Delete global QThreadPool object on fork only if QT version is at least 5.15.0.
2021-06-13 22:53:27 +02:00
gambas
b4a13cb831 Reset the internal Qt5 thread pool before forking.
[GB.QT5]
* BUG: Reset the internal Qt5 thread pool before forking.
2021-06-05 03:13:39 +02:00
gambas
0c837ba9f1 Fix new gcc compiler warning.
[GB.QT4]
* BUG: Fix new gcc compiler warning.

[GB.QT5]
* BUG: Fix new gcc compiler warning.
2021-06-04 20:16:02 +02:00
gambas
866b512e0e Try to make Qt5 and GTK+3 webview raise their events the same way when loading pages.
[GB.GTK3.WEBVIEW]
* BUG: Try to make Qt5 and GTK+3 webview raise their events the same way when loading pages.

[GB.QT5.WEBVIEW]
* BUG: Try to make Qt5 and GTK+3 webview raise their events the same way when loading pages.
2021-05-24 21:33:57 +02:00
gambas
151da73415 WebView: Clear the internal 'cancel' flag if the 'Finish' event is raised before the 'acceptationRequest' method is called.
[GB.QT5.WEBVIEW]
* BUG: WebView: Clear the internal 'cancel' flag if the 'Finish' event is raised before the 'acceptationRequest' method is called.
2021-05-23 23:50:54 +02:00
gambas
b01f603a4c Display the warning about calling the event loop during a keyboard event once.
[GB.GTK]
* NEW: Display the warning about calling the event loop during a keyboard event once.

[GB.GTK3]
* NEW: Display the warning about calling the event loop during a keyboard event once.

[GB.QT4]
* NEW: Display the warning about calling the event loop during a keyboard event once.

[GB.QT5]
* NEW: Display the warning about calling the event loop during a keyboard event once.
2021-05-14 01:19:29 +02:00
gambas
1dd3ff609d Really don't leak a control if we quit between a MouseDown and a MouseUp event.
[GB.QT5]
* BUG: Really don't leak a control if we quit between a MouseDown and a MouseUp event.
2021-03-15 20:59:42 +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
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
b87c249aba Forgot to commit some TextArea changes.
[GB.QT5]
* BUG: Forgot to commit some TextArea changes.
2021-03-06 13:17:35 +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
f200e4c0a2 Do not use a deprecated API to grab the screen.
[GB.QT5.X11]
* BUG: Do not use a deprecated API to grab the screen.
2021-02-22 00:38:49 +01:00
gambas
29689f0251 Fix a function declaration.
[GB.QT5.WEBVIEW]
* BUG: Fix a function declaration.
2021-02-20 17:37:41 +01:00
gambas
618baf9dea WebView.Clear() does not accumulate QtWebEngine processes anymore.
[GB.QT5.WEBVIEW]
* BUG: WebView.Clear() does not accumulate QtWebEngine processes anymore.
2021-02-17 20:51:33 +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
f94a927e9c WebView: Implementing the Menu event automatically disables the default popup menu.
[GB.GTK3.WEBVIEW]
* NEW: WebView: Implementing the Menu event automatically disables the default popup menu.

[GB.QT4.WEBVIEW]
* NEW: WebView: Implementing the Menu event automatically disables the default popup menu.

[GB.QT5.WEBVIEW]
* NEW: WebView: Implementing the Menu event automatically disables the default popup menu.
2021-01-26 16:28:47 +01:00
gambas
b39e26a059 WebView: ExecJavascript() is a new method to run some javascript code in the browser and get the result.
[GB.GTK3.WEBVIEW]
* NEW: WebView: ExecJavascript() is a new method to run some javascript code in the browser and get the result.

[GB.QT4.WEBVIEW]
* NEW: WebView: ExecJavascript() is a new method to run some javascript code in the browser and get the result.

[GB.QT5]
* BUG: Forgot to implement the QT.GetDesktopScale() API.

[GB.QT5.WEBVIEW]
* NEW: WebView: ExecJavascript() is a new method to run some javascript code in the browser and get the result.
2021-01-25 08:05:25 +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
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
01a666387f WebView: Finish event is correctly raised when the loaded URI is in the current page.
[GB.GTK3.WEBVIEW]
* BUG: WebView: Finish event is correctly raised when the loaded URI is in the current page.

[GB.QT4.WEBVIEW]
* BUG: WebView: Finish event is correctly raised when the loaded URI is in the current page.
* BUG: WebView: Start event is correctly raised.
* BUG: WebView: Cancelling the Start event now should cancel the load.

[GB.QT5.WEBVIEW]
* BUG: WebView: Finish event is correctly raised when the loaded URI is in the current page.
2021-01-22 21:04:56 +01:00
gambas
4113f6f7df Fix compilation on Qt < 5.7.
[GB.QT5]
* BUG: Fix compilation on Qt < 5.7.
2021-01-20 21:59:52 +01:00
gambas
2539929e4e Fix modal dialogs and default resolution on Wayland.
[GB.QT4]
* BUG: Don't set the QDialog flag on modal dialogs. It makes Qt dizzy, and can even freeze Gnome on Wayland.

[GB.QT5]
* BUG: Don't set the QDialog flag on modal dialogs. It makes Qt dizzy, and can even freeze Gnome on Wayland.
* BUG: The default resolution on Wayland is 96 DPI instead of 72 DPI.
2021-01-20 21:51:25 +01:00
gambas
8327e7f9bf Set application desktop file name and fix window properties on Wayland.
[GB.QT4]
* NEW: Set application desktop file name to the application name.

[GB.QT5]
* NEW: Set application desktop file name to the application name.
* BUG: Window properties are correctly set on Wayland now.
2021-01-19 16:13:41 +01:00
gambas
c369ca1c62 Do not crash when quitting if the GUI has not been initialized.
[GB.QT5]
* BUG: Do not crash when quitting if the GUI has not been initialized.
2021-01-17 20:36:28 +01:00
gambas
15bba0dfe2 Avoid a possible crash when raising the Link event.
[GB.QT4]
* BUG: Avoid a possible crash when raising the Link event.

[GB.QT5]
* BUG: Avoid a possible crash when raising the Link event.
2021-01-11 03:36:28 +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
c6b20765fa Support for the Window Stacking and Border properties in wayland.
[GB.QT5]
* NEW: Support for some window properties in wayland.

[GB.QT5.WAYLAND]
* NEW: Support for the Window Stacking and Border properties.
2021-01-06 03:04:25 +01:00
gambas
2a26a5d8b0 The 'GB_GUI_PLATFORM' environment variable allows to override the default platform.
[GB.GTK3]
* NEW: The 'GB_GUI_PLATFORM' environment variable allows to override the default platform.

[GB.QT5]
* NEW: The 'GB_GUI_PLATFORM' environment variable allows to override the default platform.
2020-12-22 01:36:13 +01:00