Benjamin Otte
97f605f811
demos: Add a simple demo filling a path
2023-08-06 21:01:11 -04:00
Matthias Clasen
8e57818a52
Merge branch 'wip/otte/scroll-to' into 'main'
...
a scroll_to() for list widgets
See merge request GNOME/gtk!6227
2023-08-05 02:20:38 +00:00
Benjamin Otte
c278c78378
gtk-demo: Make arrowing in suggestionentry scroll the dropdown
2023-08-05 03:51:53 +02:00
Matthias Clasen
3e066a0a15
gtk-demo: Deprecation cleanup
...
Remove many uses of deprecated api in gtk4-demo.
Remaining uses are demos of wholly deprecated objects
that will just be dropped in GTK5.
2023-08-03 22:15:27 -04:00
Matthias Clasen
40d3b30770
gtk-demo: Use GtkBuilderScope more
...
Under circumstances I haven't fully tracked down,
these demos refuse to run, failing to locate their
callbacks. So use the machinery we have, and set up
a GtkBuilderCScope for each of the problematic cases.
2023-08-02 19:49:03 +00:00
Christian Hergert
7cc29ce236
demo: use --set-section-alignment when using objcopy
...
If we don't set the alignment then there is a chance that it ends up
commonly on a 4-byte boundary and GResources will have to malloc/memcpy
the static data.
With --set-section-alignment (which takes a byte offset not ^2) available
in objcopy >= 2.33 we ensure that expectation is met.
2023-07-27 17:09:43 -07:00
Matthias Clasen
bad2324318
Merge branch 'dboles/gtk-demo_dnd_dark' into 'main'
...
gtk-demo/dnd: Fix, generalise detecting dark theme
See merge request GNOME/gtk!6157
2023-06-29 10:26:41 +00:00
Daniel Boles
15458b5af3
gtk-demo/dnd: Fix, generalise detecting dark theme
...
Our default theme is now Default, not Adwaita, & HighContrastInverse was
renamed to Default-hc. So these checks did not work anymore. Rather than
hard-coding the new names, & possibly running into the same issue again,
we can just look for the convention of appending -dark to the theme name
and/or the Settings:prefer-dark-theme prop. The latter, we can & likely
SHOULD also apply to all themes - not just ours as before. We also check
for the :dark suffix as that means the theme variant - & before checking
GtkSettings check the GTK_THEME env var, just as GtkSettings itself does
2023-06-28 14:40:06 +01:00
Matthias Clasen
70edacc68d
build: Move objcopy checks to one place
...
We were doing the same thing in three places.
Move it to the toplevel meson.build, so we
can change it in one place.
2023-06-28 07:11:51 -04:00
Matthias Clasen
a3e98558d3
gtk-demo: Some a11y improvements
...
Add missing labels to the applauncher demo
and the clocks demo.
2023-06-19 22:19:54 -04:00
Matthias Clasen
a2fdeb99e0
gtk-demo: Improve a11y for applauncher
...
Use the new listitem properties to make
orca read the selected item in the applauncher
demo.
2023-06-19 21:21:55 -04:00
Matthias Clasen
8d9a59f698
gtk-demo: Miscellaneous a11y improvements
2023-06-19 08:09:48 -04:00
Matthias Clasen
de622c592d
gtk-demo: a11y improvements
...
Make the clipboard demo come up clean in the
a11y checker.
2023-06-17 22:39:56 -04:00
Emmanuele Bassi
6bf4ad866f
Apply suggestions from review
2023-06-17 21:26:53 -04:00
Matthias Clasen
a9f8ec71a4
gtk-demo: Misc a11y improvements
2023-06-17 19:29:53 -04:00
Matthias Clasen
caa8fb4fac
gtk-demo: Fix a crash
...
This was broken in 6b2c088a29
.
2023-06-17 17:56:41 -04:00
Matthias Clasen
e251e7583f
gtk-demo: Misc a11y fixes
...
Add some missing labels.
2023-06-17 16:50:36 -04:00
Matthias Clasen
115f60796f
gtk-demo: Cosmetics
2023-06-17 11:52:37 -04:00
Matthias Clasen
0652e05e0b
gtk-demo: Add an example for dropdown sections
...
Make one of the dropdowns in the Selections
demo have sections.
2023-06-16 21:13:26 -04:00
Matthias Clasen
deac44962a
Fix a crash in gtk-demo
...
Fixes #5889
2023-06-12 12:12:49 -04:00
Matthias Clasen
1b829c7d01
gtk4-demo: Some a11y improvements
...
Add some labels in the pickers demo.
2023-06-11 20:29:25 -04:00
Matthias Clasen
e606313ad1
gtk-demo: Change sidebar tab behavior
...
Change the sidebar to use the 'item' tab
behavior.
Fixes : #3543
2023-06-10 00:02:29 -04:00
Benjamin Otte
ac6f18da12
gtk-demo: make the sidebar request proper width
...
- 25 chars sounds about right for the texts we use
- don't use min width so we allow shrinking the widget (large text or
small mobile devices)
- ellipsize the text instead of clipping it.
2023-06-07 16:00:44 +02:00
Benjamin Otte
0d7069452b
gtk-demo: Remove random numbers
...
There were 3 different random numbers set to determine the sidebar width
and all of them were wrong. Remove them.
Instead, propagate the natural width of the listitems.
2023-06-07 16:00:44 +02:00
Matthias Clasen
6b2c088a29
demos: Stop using deprecated api
...
Use texture apis instead of pixbuf ones.
2023-05-16 16:25:59 -04:00
Matthias Clasen
f2a297f56d
Stop using gtk_css_provider_load_from_data
2023-05-13 19:59:17 -04:00
Matthias Clasen
59343e4efb
gtk-demo: Rename the new Settings demo
...
"v2" does not look great in the sidebar.
Lets call this "Alternative Settings".
2023-05-11 20:14:58 -04:00
Matthias Clasen
41219ae489
gtk-demo: Fix a typo
2023-05-11 19:53:42 -04:00
Matthias Clasen
ff920d98ec
Use GTK_ALIGN_BASELINE_FILL
...
Replace GTK_ALIGN_BASELINE with its new name
everywhere.
2023-05-09 14:28:26 -04:00
Matthias Clasen
91ca6d0851
Merge branch 'wip/ebassi/gen-version-macros' into 'main'
...
Generate version and deprecation macros at build time
See merge request GNOME/gtk!5945
2023-05-09 18:23:40 +00:00
Matthias Clasen
526ddfa866
Merge branch 'wip/otte/sections' into 'main'
...
Add GtkSectionModel
See merge request GNOME/gtk!5818
2023-05-09 16:36:55 +00:00
Emmanuele Bassi
33d0cfd4f8
demos: Drop symbol visibility macros from demo types
...
Since the corresponding source files do not include "config.h", and are
not compiled with `GTK_COMPILATION`, they will generate the wrong symbol
exporting under Windows.
2023-05-09 16:43:35 +01:00
Emmanuele Bassi
265bc90524
build: Use Meson's gnu_symbol_visibility
...
Instead of injecting `-fvisibility=hidden` depending on a compiler check
ourselves, let Meson do it for us.
This also avoids us having to filter `-fvisibility=hidden` when reusing
the common compiler flags.
2023-05-09 16:43:25 +01:00
Benjamin Otte
a959fba18a
Merge branch 'wip/otte/no-vsync' into 'main'
...
Add GDK_DEBUG=no-vsync
See merge request GNOME/gtk!5944
2023-05-09 15:16:43 +00:00
Benjamin Otte
ddefbfa8b5
gtk-demo: Add alternative settings demo
...
This one displays a long list of all settings with sections and allows
filtering the list to quickly search for keys.
2023-05-09 17:03:35 +02:00
Benjamin Otte
435a405c55
gtk-demo: Split out code from the settings demo
...
I want to add another demo using settings and share relevant code.
2023-05-09 17:01:20 +02:00
Benjamin Otte
30acf00bf8
gtk-demo: Update fps with higher priority
...
We want to make sure to always update it, so make sure it has a higher
priority than redraws.
2023-05-09 16:29:41 +02:00
Matthias Clasen
082ba6d7c8
Introduce GTK_ALIGN_BASELINE_FILL/CENTER
...
It turns out that the old behavior of GTK_ALIGN_BASELINE
was actually used in libadwaita, so bring it back, and
introduce a new GtkAlign value for the new behavior.
2023-05-07 21:26:09 -04:00
Daniel Boles
2c15d563e2
gtk-demo/listbox: Fix 0 space between nick & date,
...
by restoring the right-alignment that gtk-3-24 has here, but we had lost
– I guess because we dropped the default child expand and pack-end props
2023-04-30 16:39:16 +01:00
Matthias Clasen
5b6f8d7002
gtk4-demo: Stop using gtk_widget_get_allocated_size
2023-04-29 14:30:21 -04:00
Matthias Clasen
d8b46c16cc
Merge branch 'stylus-fixes' into 'main'
...
gtk-demo: Test stylus-only mode
See merge request GNOME/gtk!5804
2023-04-12 10:10:11 +00:00
Matthias Clasen
d4a34b1a0b
gtk-demo: Stop using gtk_widget_get_allocation
2023-04-09 08:38:14 -04:00
Matthias Clasen
b7f48b7763
gtk-demo: Add a keyword
...
Make the demo using the 'bluroverlay' come up when you type 'blur'.
2023-04-09 08:38:14 -04:00
Matthias Clasen
7f906bef06
gtk-demo: Work without stylus
...
In the paint demo, don't assume that the event
backlog contains pressure. It won't, if we are
working with a plain old mouse.
2023-04-09 08:35:03 -04:00
Matthias Clasen
5970a14217
gtk-demo: Test stylus-only mode
...
Add a checkbutton to toggle the stylus-only
mode of GtkGestureStylus, so we can test this.
2023-04-09 08:35:03 -04:00
Matthias Clasen
b1f0ca7dc4
gtk-demo: Update the GLArea examples
2023-04-03 23:05:38 -04:00
Benjamin Otte
4086913795
gtk-demo: Port to GtkColumnViewCell
2023-04-01 20:49:40 +02:00
Benjamin Otte
ce531ce280
listview: Add GtkListItem::focusable property
...
This makes the question if a listitem can be focused or not an explicit
decision by application developers.
Previously an item could be focused if it was selectable and no child or
grandchild was focusable - so if you put a label and icon into it, the
item was focusable, but if you put a GtkTreeExpander or a GtkButton into
it, the item wasn't. This needs to be decided explicitly now.
Technically this is an API break, because the previous behavior does not
exist anymore.
But I really don't want to make this a tristate (focusable, not
focusable, automatic), because then binding it to other things gets
hard, and because all the other focusable proeprties are booleans, too,
and working with them gets a lot harder.
Related: #3910
2023-04-01 20:49:40 +02:00
Benjamin Otte
924fd195ab
gtk-demo: Set tab behavior for settings demo
2023-03-27 07:08:44 +02:00
Benjamin Otte
5973df22aa
gtk-demo: Rename dropdown demo
...
It's the listview selections demo, so use that name.
2023-03-26 01:06:18 +01:00
Benjamin Otte
32ff37f070
gtk-demo: Rename image scaling demo to image_scaling
...
This just means renaming the C file, but it makes --run=image_scaling
actually do what I'd expect.
2023-03-26 01:02:17 +01:00
Matthias Clasen
b23ac5c8da
Deprecate gtk_widget_translate_coordinates
...
Update all (non-deprecated) callers to use
gtk_widget_compute_point instead.
Fixes : #5697
2023-03-25 10:14:35 -04:00
Matthias Clasen
060ab606a2
gtk-demo: Reset properties when the image changes
2023-03-17 11:49:57 -04:00
Alexander Mikhaylenko
b4dc7f29d4
theme: Port .boxed-list style from libadwaita
...
Consistently use it for boxed lists in inspector and gtk-demo.
Fixes issues like https://gitlab.gnome.org/GNOME/gtk/-/issues/3145
2023-03-14 20:16:51 +04:00
Matthias Clasen
0c1ec82a74
gtk4-demo: Add a tooltip to image scaling
...
Show some information about the values.
2023-03-14 05:36:08 +01:00
Matthias Clasen
3eb9afb0ca
gtk4-demo: Polish the image scaling demo
...
Make the scale binding bidirectional again, fix up
the ranges and the sensitivity of the actions, and
add a mark for the unscaled position.
2023-03-14 05:36:08 +01:00
Matthias Clasen
413abef01d
Merge branch 'more-scaled-texture-fixes' into 'main'
...
Fix gtk_snapshot_append_scaled_texture
See merge request GNOME/gtk!5638
2023-03-13 08:58:58 +00:00
Matthias Clasen
e24d4ba5db
gtk4-demo: Use gtk_snapshot_append_scaled_texture
2023-03-13 08:54:13 +01:00
Matthias Clasen
517b4d584c
gtk4-demo: Scale logarithmically in image scaling
2023-03-13 08:21:10 +01:00
Matthias Clasen
88d9244b98
gtk4-demo: Fix rotation handling in image scaling
...
We weren't sizing the widget correctly in rotated
cases.
2023-03-13 08:11:29 +01:00
Matthias Clasen
dc50c790c5
gtk-demo: Add rotation to the scaling demo
...
Closing in on eog :)
2023-03-12 08:25:58 +01:00
Matthias Clasen
89d131de56
gtk4-demo: Add tooltips to the menu demo
...
Not great UI, but better than nothing.
2023-03-11 00:07:07 +01:00
Matthias Clasen
a35dc8dda6
Rename the menu demo
...
At this point, the Menu demo is more about scaling images
than about menus, so rename it to Image Scaling.
2023-03-11 00:03:05 +01:00
Matthias Clasen
f00659d97f
gtk-demo: Add a file chooser to the menu demo
...
So we can try this with bigger images.
2023-03-10 23:51:17 +01:00
William Roy
aaeec84d75
Fix compile_resources present source directory
...
In certain scenarios, address the issue where gnome.compile_resources
fails to transmit the present source directory. This is most notably
visible with MSBuild.
2023-03-07 21:59:50 +00:00
Matthias Clasen
495ca72232
gtk4-demo: Accept file dnd in the pickers demo
...
Easy to add and expected of a file picker.
2023-02-26 08:28:38 -05:00
Matthias Clasen
1eae87621d
gtk-demo: Fix the shortcuts-window demo
...
Presenting the shortcutswindow got lost
in fb8e52f0c9
. Oops.
2023-02-22 14:57:47 -05:00
Matthias Clasen
6cb612ac15
gtk-demo: Fix build without sincos
...
We are getting into trouble here if
sincos isn't detected but still present
in headers. Avoid that.
Also fix the other copy of gtkgears.c.
2023-02-18 10:41:02 -05:00
Benjamin Otte
662c251cd0
demo: Spice up the mask demo
...
Also use all the mask modes, weeeee!
2023-02-14 19:07:01 -05:00
Matthias Clasen
0eb791eaaa
Make mask nodes more versatile
...
Add a GskMaskMode enumeration and implement it
in the GL and cairo renderers.
2023-02-14 19:07:01 -05:00
Matthias Clasen
e6dfb8732a
gtk-demo: Fix hotspot handling in dnd
...
We were not remembering the pointer coordinates.
2023-02-13 18:39:45 -05:00
Matthias Clasen
348803af7d
Add a mask node demo
2023-02-12 08:35:25 -05:00
Matthias Clasen
625ffa2d96
gtk-demo: Add filtering to the zoom demo
2023-02-11 15:09:38 -05:00
Matthias Clasen
dd3eedd510
gtk-demo: Rewrite the zoom demo slightly
...
Use a texture directly instead of a paintable.
This will be used in the following commit to
introduce filters.
2023-02-11 15:09:38 -05:00
Carlos Garnacho
d228bae365
Merge branch 'drag-button-issue' into 'main'
...
Fix button mask calculation for Wayland
Closes #5561
See merge request GNOME/gtk!5468
2023-02-03 09:28:01 +00:00
Arjan Molenaar
aef4c50155
Allow all mouse buttons to be used for the drawingarea demo
...
So we can test if the drag gesture works with all mouse buttons.
2023-02-02 21:29:45 +01:00
Matthias Clasen
3858c5282c
Deprecate GtkAssistant
...
It is a dialog-like toplevel, and libadwaita has
replacement parts (like AdwCarousel).
2023-02-02 08:39:25 +01:00
Matthias Clasen
d8cb11ec4a
Deprecate GtkStatusbar
...
The design patterns using statusbar are no longer popular,
and it is pretty easy to make a statusbar yourself with boxes
and labels, if you need one. The only thing special about
GtkStatusbar was its window resize handle, but that has
been gone for a long time.
2023-02-02 08:39:24 +01:00
Matthias Clasen
ad549cbded
gtk-demo: Add a uri launcher demo
2023-01-15 11:58:43 -05:00
Benjamin Otte
1b9c45b660
filedialog: Rename :current-filter to :default-filter
...
The last "current" removed from properties. None of these are current.
2022-12-24 07:56:57 -05:00
Benjamin Otte
e2f730c0bf
filedialog: Add gtk_file_dialog_set_initial_file()
...
A shortcut for setting initial-folder and initial-name at the same time.
We can remove all arguments from the actual async calls this way.
2022-12-24 07:56:57 -05:00
Matthias Clasen
a471a8b57c
Merge branch 'ebassi/gidocgen-update' into 'main'
...
ci: Update the gi-docgen dependencies
See merge request GNOME/gtk!5263
2022-12-14 16:24:48 +00:00
Matthias Clasen
eba9c4e4c3
gtk-demo: Update the pickers demo
2022-12-13 07:49:10 -05:00
Matthias Clasen
7a50e31b8d
gtk-demo: Add a GtkFileLauncher demo
...
Replace the deprecated app chooser button by a
button that calls gtk_file_launcher_launch.
2022-12-09 13:25:02 -05:00
Matthias Clasen
fb8e52f0c9
gtk-demo: Stop using gtk_widget_show/hide
2022-11-28 14:34:55 -05:00
Corey Berla
586c3c3cbd
gtk-demo: Application demo use open_finish()
2022-11-26 18:11:40 +00:00
Emmanuele Bassi
cc546d7af1
build: Add a check argument to run_command()
...
Silence a Meson warning.
2022-11-26 15:18:42 +00:00
Matthias Clasen
e5cf55bdb4
gtk-demo: Cosmetics
2022-11-26 06:40:47 -05:00
Matthias Clasen
4fa53bd041
gtk-demo: Test cancellation support for file dialog
...
Add a timeout that closes the file dialog after
20 seconds, to test programmatic cancellation.
2022-11-24 10:26:43 -05:00
Matthias Clasen
942f8d4b4b
Deprecate GtkInfoBar
...
This widget has a dialog-like API, which is something
we want to get rid of in GTK 5, and libadwaita has
a replacement with AdwBanner incoming.
2022-11-23 13:00:09 -05:00
Matthias Clasen
ea3c58f0ec
gtk-demo: Add folders to the clipboard demo
...
This is handy for testing a case where folder
dnd does not work with the file transfer portal.
See #5348
2022-11-17 06:31:09 -05:00
Matthias Clasen
af8ad1efe8
gtk-demo: Add some keywords
...
Make sure that dnd and drag-and-drop yield the right
(and the same) set of demos.
2022-11-17 05:50:34 -05:00
Matthias Clasen
2c6ac137a3
gtk-demo: Improve language handlng
...
In the font features demo, don't add a
item for the default language to the dropdown,
that does not make sense.
2022-11-07 15:42:38 +01:00
Matthias Clasen
5bd264d532
gtk-demo: Add a few mssing language names
2022-11-07 15:42:38 +01:00
Matthias Clasen
e908a117a9
gtk4-demo: Tweak the pickers demo
...
Redo the file picker a bit.
2022-11-07 15:42:38 +01:00
Matthias Clasen
9948053cd7
Deprecate GtkDialog
...
GtkDialog is too flexible in terms of UI (headerbars vs action bar,
etc), and has archaic APIs. It is time to retire it.
2022-10-29 15:27:53 -04:00
Matthias Clasen
66b062a976
Deprecate GtkMessageDialog
...
It is getting replaced by GtkAlertDialog
This commit only moves the header to deprecated/,
and keeps the implementation in gtk/, since it will
eventually be salvaged into a private, dialog-free
widget.
2022-10-29 13:31:41 -04:00
Matthias Clasen
15572b0183
Deprecate GtkFontChooser and implementations
...
These are being replaced by GtkFontDialog
and GtkFontDialogButton
This commit only moves the headers for GtkFontChooserWidget and
GtkFontChooserDialog to deprecated/, and keeps the implementations
in gtk/, since they will eventually be salvaged into a private
GtkFontChooserWindow.
2022-10-29 13:31:41 -04:00
Matthias Clasen
a51a6a3ee2
Deprecate GtkColorChooser and implementations
...
These are being replaced by GtkColorDialog
and GtkColorDialogButton.
This commit only moves the headers for GtkColorChooserWidget
and GtkColorChooserDialog to deprecated/, and keeps the
implementations in gtk/, since they will eventually be
salvaged into a private GtkColorChooserWindow.
2022-10-29 13:31:41 -04:00
Matthias Clasen
756888a53d
gtk-demo: Port to async dialog API
2022-10-29 13:31:41 -04:00