Commit Graph

1242 Commits

Author SHA1 Message Date
Alexander Larsson
2b194089dd GtkImage: Drop support for storing pixbufs
This drops the pixbuf property and the pixbuf getters. We keep
gtk_image_new/set_from_pixbuf, but these are small helpers that
immediately convert to a surface, and there is no way to later get
back the pixbuf you passed in.

The from file/resource codepaths are also changed to load a surface
instead of a pixbuf.
2017-10-23 15:28:33 +02:00
Matthias Clasen
ff6698cf5f gtk-demo: Use surface apis in the clipboard demo
Stop using gtk_drag_set_icon_pixbuf.
This api is going away.
2017-10-23 05:58:54 +02:00
Carlos Garnacho
ce1cfee48c icon-browser: Remove GtkEventBox from .ui file
The patch adding scalable icons' info was forward ported too much as-is
to master. The event box is both unused and unnecessary here.
2017-10-19 16:13:47 +02:00
Matthias Clasen
0c61095630 gtk4-demo: Stop using pixdata resources
This does not really help, and pixdata is deprecated.
2017-10-18 17:30:20 +02:00
Julian Sparber
6f71e40546 icon-browser: Add scalable icons to icon detail modal window
When making mockups for GNOME apps in Inkscape, looking for symbolic
icons is a common task. Searching for icons in the file system is clumsy,
and icon-browser provides a much better interface for finding them.
However, currently there is no way to insert the symbolic icons as SVG
directly from icon-browser, so right now it is only useful for finding
the name.

This patch adds a sixth column to the modal window that appears when
clicking a symbolic icon. The icon in this column is labeled "scalable",
and dragging it onto another window results in the vector icon URI being
inserted.

This enables a much simpler workflow when designing with symbolic icons.

https://bugzilla.gnome.org/show_bug.cgi?id=778930
2017-10-16 14:26:42 +02:00
Daniel Boles
3a91d36913 icon-browser: Stop repeating folder-documents too 2017-10-13 00:24:41 +01:00
Matthias Clasen
515f5268c2 gtk4-demo: fix a typo
The blend mode is called saturation, not saturate.
2017-10-07 23:26:57 -04:00
Matthias Clasen
e1338e4e12 gtk4-demo: Fix the scrollbar popup menu example
A scrollbar is not a range anymore, so the callback
needs some adjustments (!).
2017-10-07 19:54:47 -04:00
Matthias Clasen
4d3cdfae44 gtk-demo: Deal with big images
We don't want to grow our window to huge size just because
there is a big source image.
2017-10-06 21:59:34 -04:00
Matthias Clasen
481ba13e8e gtk-demo: Add a new overlay demo
Replace the not very impressive transparent demo with
the blur-behind example.
2017-10-06 21:58:56 -04:00
Matthias Clasen
f352a0ec2b gtk-demo: Fix the overlay demo
We must make the label and the entry separate overlays, or
the entry will also be clickthru.
2017-10-06 21:35:21 -04:00
Matthias Clasen
6d75d0966a gtk-demo: Fix up the drawingarea example
This was not working anymore.
2017-10-06 20:42:04 -04:00
Matthias Clasen
0caec25ee0 gtk-demo: Make the color chooser example non-resizable
No need for it.
2017-10-06 20:42:04 -04:00
Daniel Boles
65b6e92c27 iconbrowser: Don’t repeat folder-download-symbolic
It was in both [general] with a description and [other] with none.
Leave it in [other] with the other folder- icons, + the description.

bonus: this makes all of [general] fit in our default window size!
2017-10-07 00:44:24 +01:00
Matthias Clasen
ad9c70537d gtk-demo: Fix the assistant demo
The progress bar was no longer expanding as intended,
due to the demise of GtkBox::expand.
2017-10-06 19:38:16 -04:00
Matthias Clasen
e7b79e2097 gtk-demo: Keep treeviews expanding
This is fallout from GtkBox::expand child property going away.
2017-10-06 14:21:19 -04:00
Timm Bäder
9115291515 widget-factory: Don't leak GPropertyAction instances 2017-10-06 16:30:20 +02:00
Benjamin Otte
defcf17d3d gtk-demo: Remove old build file
The includes are now generated with a Python script, so remvoe the old
perl script.
2017-10-06 16:03:07 +02:00
Daniel Boles
f4ffd261db widget-factory: Demo different Frame border-styles
This shows not all, but the interesting/less predictable styles, and
the ones that correspond to the :shadow-types that were here before.
2017-10-02 20:22:41 +01:00
Daniel Boles
06bf049b1a Revert "widget-factory: Usefully demo Frame shadow types"
This reverts commit 6ee2bf6286.

There is a way to get different kinds of borders: it's CSS. It's better
to keep the 4 Frames and demo the different styles we can do using CSS.
2017-10-02 19:50:02 +01:00
Matthias Clasen
25ab8f7c6b gtk-demo: Use GdkEvent API 2017-09-19 18:39:03 +02:00
Daniel Boles
4cb00d9546 gtk-demo/theming: Don’t mislead about raised class
This class is not added by any widgets nor themed by Adwaita/HC.
However, it is presented here as if it does something. It doesn’t.

But we changed the 2 buttons with the .raised class to use symbolic
icons, unlike their ‘unraised’ counterparts, which is unnecessarily
confusing and might make people think .raised affects icons somehow.

So, make them use the same icons in all cases; that way, if .raised is
ever made to do anything, 6 years later, what it does will be clear.

https://bugzilla.gnome.org/show_bug.cgi?id=644248
2017-09-14 18:35:18 +01:00
Daniel Boles
6ee2bf6286 widget-factory: Usefully demo Frame shadow types
Instead of showing the 4 types except for GTK_SHADOW_NONE, which are all
treated identically and provide no way for themes to differentiate, just
keep 2 Frames, and make one of them GTK_SHADOW_NONE to demo a flat Frame
2017-09-14 18:35:08 +01:00
Matthias Clasen
ff0f5f57f1 gtk4-demo: Fix up the event axes demo
Use a drawing area instead of drawing directly on the
window, which doesn't work well with csd.
2017-09-06 07:05:01 -04:00
Matthias Clasen
b3b6c42e18 gtk4-demo: add a few missing window titles 2017-09-06 07:05:01 -04:00
Emmanuele Bassi
6240082e12 Drop old MSC makefiles 2017-08-14 22:23:09 +01:00
Emmanuele Bassi
391d1a04ec Drop Autotools build
We are officially switching to Meson as the default build system for
GTK+.
2017-08-14 22:23:09 +01:00
Matthias Clasen
f54aca20ee widget-factory: Add a use of show-emoji-icon
This also serves as a testcase for nested popovers
that was missing in widget-factory so far.
2017-08-12 18:50:50 -04:00
Daniel Boles
30eac22974 icon-browser: Add missing document-edit icon
https://bugzilla.gnome.org/show_bug.cgi?id=777515
2017-08-06 03:30:21 +01:00
Daniel Boles
1f1e156007 widget-factory: Add tooltip to Entry icon
just to show we can.
2017-08-03 20:43:03 +01:00
Benjamin Otte
b555638600 iconbrowser: Remove GtkEventBox usage 2017-08-02 14:50:19 +01:00
Benjamin Otte
5be94c1fd7 gtk-demo: Get rid of GtkEventBox 2017-08-02 14:05:02 +01:00
Timm Bäder
4cf39f65b2 widget-factory: fix page 3 widget expand
The treeview/listbox on the left side should not expand.
2017-07-19 21:27:16 -04:00
Timm Bäder
36ab70ddf5 widget: Add baseline and out_clip parameters to size-allocate
Since setting a clip is mandatory for almost all widgets, we can as well
change the size-allocate signature to include a out_clip parameter, just
like GtkCssGadget did. And since we now always propagate baselines, we
might as well pass that one on to size-allocate.

This way we can also make sure to transform the clip returned from
size-allocate to parent-coordinates, i.e. the same coordinate space
priv->allocation is in.
2017-07-19 21:27:16 -04:00
Timm Bäder
a0444b9c42 gtk4-demo: Add widgetbowl demo
Same as fishbowl, but with widgets
2017-07-19 21:27:15 -04:00
Timm Bäder
2d3f57a420 widget-factory: Show the status bar by default
Since the action is also active by default.
2017-07-19 21:27:14 -04:00
Timm Bäder
60e053f52a Remove calls to gtk_widget_set_allocation
gtk_widget_size_allocate_with_baselines does it automatically now.
2017-07-19 21:27:12 -04:00
Timm Bäder
46007df8a5 spinbutton demo: Spinbuttons are no Entries 2017-07-19 21:27:11 -04:00
Timm Bäder
af7781ce0f widget-factory: Remove invisible-char usage for spin buttons 2017-07-19 21:27:11 -04:00
Matthias Clasen
3aef221cc3 dist icon.list
Otherwise things will not work in a release tarball.
2017-06-02 22:30:45 -04:00
Matthias Clasen
ca95adbb4c icon-browser: Add a few icons
These have appeared recently.
2017-06-02 22:30:36 -04:00
Matthias Clasen
cc9feb5a07 icon browser: Make icons a bit larger
Use 48x48 in the list, instead of 32x32. We have the space.
2017-06-02 22:30:05 -04:00
Matthias Clasen
04fbef7f1e icon browser: Add a 'copy to clipboard' button
This makes it more obvious how to use the icon.
2017-06-02 22:29:21 -04:00
Matthias Clasen
7a3984ee62 icon browser: put icons as data
Instead of hardcoding all the add_icon calls,
read the icon list from a keyfile, for easier
extensibility.
2017-06-02 22:29:14 -04:00
Carlos Garnacho
a72404dd5a gtk: Mass delete all GtkWidget event mask API
We now rely on toplevels receiving and forwarding all the events
the windowing should be able to handle. Event masks are no longer a
way to determine whether an event is deliverable ot a widget.

Events will always be delivered in the three captured/target/bubbled
phases, widgets can now just attach GtkEventControllers and let those
handle the events.
2017-05-25 16:25:58 +02:00
Daniel Boles
322d9ca550 widget-factory: Use :relief=none, not class .flat
The rest of the ui file follows that convention.
2017-05-13 21:50:22 +01:00
Daniel Boles
8ddadecb57 gtk-demo: ui: Replace leftover uses of Box:expand
commit 5729ea7744 skipped these
2017-05-13 18:39:28 +01:00
Daniel Boles
9e6b59c5f4 demo/toolpalette: Restore ToolItemGroup child prop
…erties clobbered by commit c92b7d4224.
That and its counterpart were for removing :expand and :fill child props
from GtkBox, but they ended up catching these for GtkToolItemGroup too.

While GtkToolItemGroup still has these, we may as well keep demoing them
2017-05-13 18:39:13 +01:00
Emmanuele Bassi
17518ef89b build: Improve consistency of the "coding" style
We're mixing a lot of styles in the Meson build files. This is an
attempt at making everything slightly more consistent in terms of
whitespace and indentation.
2017-05-03 15:10:57 +01:00
Tim-Philipp Müller
7966ab6001 meson: demos: disable add_install_script() calls that don't work right yet
Errors out. Might really wants a script and not a binary.
2017-05-03 15:10:53 +01:00
Tim-Philipp Müller
b6722b0a36 meson: demos: update and sync up with Makefiles 2017-05-03 15:10:53 +01:00
Tim-Philipp Müller
d6a824476d meson: gtk-demo: update and sync up with Makefile.am 2017-05-03 15:10:53 +01:00
Timm Bäder
4fcca9945f meson: update build files 2017-05-03 15:10:52 +01:00
Timm Bäder
6dd6660c68 meson: Conditionally check for dependencies 2017-05-03 15:10:52 +01:00
Timm Bäder
0748c415da meson: Build gtk utils 2017-05-03 15:10:52 +01:00
Timm Bäder
2144b776b2 meson: Generate demos.h for gtk3-demo 2017-05-03 15:10:51 +01:00
Timm Bäder
fe42d645ad meson: Build gtk3-demo 2017-05-03 15:10:51 +01:00
Timm Bäder
082cf3553d meson: Build gtk marshallers
And fix libgtk_dep/libgdk_dep to link_with the shared lib
2017-05-03 15:10:50 +01:00
Timm Bäder
5475768d32 Meson build v2 2017-05-03 15:10:50 +01:00
Timm Bäder
2c174319ea widget-factory: Fix listbox row alignment 2017-05-01 21:21:40 +02:00
Matthias Clasen
92b0d2e8ea Remove GtkWindow::hide-titlebar-when-maximized
This was only every implemented under X11, and with CSD,
this is clearly in the application realm. We should not
pretend that we can support it on the toolkit level.

https://bugzilla.gnome.org/show_bug.cgi?id=775061
2017-05-01 13:26:46 -04:00
Timm Bäder
db4b1d28f5 label: Remove angle property 2017-04-25 20:30:37 +02:00
Timm Bäder
fb927d1993 box: Remove center child 2017-04-25 20:30:37 +02:00
Timm Bäder
f053a63d74 container: Remove include_internals parameter from forall
with include_internals=TRUE, this is the same as the (still private)
gtk_widget_forall, or just using the children/sibling accessors in a
loop.
2017-04-25 20:30:37 +02:00
Timm Bäder
c92b7d4224 box: Remove fill child property
GtkWidget:halign and GtkWidget:valign are sufficient
2017-04-25 20:30:37 +02:00
Timm Bäder
5729ea7744 box: Remove expand child property
GtkWidget already has hexpand/vexpand properties.
2017-04-25 20:30:37 +02:00
Timm Bäder
4945e28f08 widget-factory: Add dummy listbox placeholder
It doesn't do anything and isn't visible anyway, but it tests that
adding and removing placeholders works
2017-04-25 20:29:02 +02:00
Carlos Garnacho
8c707e29ff gtk-demo: Add 3fg touchpad swipe handling to gestures demo
We can handle those on wayland, so we should show it's possible.
2017-03-02 18:25:04 +01:00
Emmanuele Bassi
51010da740 Use gtk_show_uri_on_window() in GtkLabel
Avoid the deprecated gtk_show_uri(), and allow activating link in
sandboxed applications.

https://bugzilla.gnome.org/show_bug.cgi?id=778726
2017-02-16 16:37:55 +01:00
Timm Bäder
f4341ee9f7 widget: Remove show-all property
Doesn't make sense anymore now that gtk_widget_show_all is gone.
2017-01-20 21:37:07 +01:00
Timm Bäder
ea897c6df4 Remove gtk_widget_show_all 2017-01-20 21:37:04 +01:00
Timm Bäder
020d366ed6 widget-factory: Remove some gtk3-widget-factory leftovers 2017-01-20 21:33:37 +01:00
Timm Bäder
8b3f5ce9a4 widget-factory: Adapt to GtkWidget visibility changes
Make the infobar and the toolbar invisible by default and remove all the
lines showing the other widgets.
2017-01-20 21:33:37 +01:00
Matthias Clasen
b355c80977 widget-factory: Add a system tab to the about dialog
Just for trying it out.
2017-01-12 15:30:11 -05:00
Timm Bäder
58c252d5e6 infobar demo: Adapt to GtkInfoBar changes
Bind GtkToggleButton:active to GtkInfoBar:revealed instead of :visible.
2017-01-12 09:18:52 +01:00
Chun-wei Fan
ea58ebe76d Visual Studio builds: Move project files to win32/
It was suggested that the project files to be moved to win32/, so that we can
have one less layer of directories we need to go down into to reach the project files.
2017-01-09 15:38:48 +08:00
Timm Bäder
1e6fce97a5 gtkfishbowl: Remove gtk_container_snapshot_child call 2017-01-07 18:08:53 +01:00
Benjamin Otte
4fdf880b6e gtk-demo: Make icon counter work from ui file
Gets rid of update always being 1 frame late.
2017-01-07 02:09:40 +01:00
Benjamin Otte
cd8e41e491 gtk-demo: Add GtkFishbowl
Avoids usage of GtkFixed where child properties eat up all the CPU time.
And that's kinda not what I want to benchmark.
2017-01-07 02:09:40 +01:00
Daniel Boles
49c452e4f9 demos/icon-browser: increase default window size
...to get more than 1 row of icons to browse!

https://bugzilla.gnome.org/show_bug.cgi?id=776560

I've bumped the size a bit further, to 1024x768
2017-01-04 13:59:04 -05:00
Benjamin Otte
2f5737cc1c gtk-demo: queue_draw() when the color changes 2017-01-03 23:35:22 +01:00
Matthias Clasen
2cb975ea77 Make gtk4-icon-browser work
It was using no-longer-existing widgets and properties.
2016-12-16 12:18:33 -05:00
Timm Bäder
d45e5ef3dc widget-factory: Use GtkButton:icon-name to construct icon buttons 2016-12-04 12:00:45 +01:00
Emmanuele Bassi
c8b92cb0d2 demos: Remove undefined function call
The gtk_container_set_border_width() function has been removed from
the GTK+ 4.x API.
2016-11-29 23:29:10 +00:00
Matthias Clasen
ee1ae7f9ed gtk-demo: Add a demo for tabs
One of the least-appreciated features in pango.
It deserves a demo.
2016-11-29 16:40:24 -05:00
Matthias Clasen
7625beec50 fishbowl: Fix up initial text
Avoid the text changing from "0 fish" to "0 icons" right
after opening the fishbowl demo.
2016-11-20 06:15:19 -05:00
Benjamin Otte
1912d992d8 gtk-demo: Allow locking of icon count in fishbowl demo
I'm not sure I'm proud of the hack to get the changing icon into the UI
file without having to write code. But it works.
2016-11-20 05:29:03 +01:00
Benjamin Otte
979b56e86f gtk-demo: Update drawing area usage to new APIs
A few demos are broken because they do input on drawing areas.
2016-11-18 06:40:53 +01:00
Matthias Clasen
77aa562415 gtk-demo: Set local-only to FALSE for the file chooser
No good reason for that.
2016-11-17 08:51:16 -05:00
Caolán McNamara
ce36ac93f4 spin entry should be a child of spin context
https://bugzilla.gnome.org/show_bug.cgi?id=774609
2016-11-17 05:55:20 -05:00
Matthias Clasen
23354ff6e7 widget-factory: Better progressbar testing
Hook the two top progressbars up to the scale with marks.
Your turn, Lapo.
2016-11-14 08:21:31 -05:00
Benjamin Otte
2e284451ff gtk-demo: Add fishbowl demo 2016-11-05 03:35:46 +01:00
Chun-wei Fan
21b061b0dd demos/application: Call the right program
We need to update the call to gtk4-application-demo, plus include the
correct icon file for this.
2016-11-02 12:23:41 +08:00
Timm Bäder
5071206d60 widget: Remove app-paintable 2016-10-31 19:28:28 +01:00
Matthias Clasen
50a75b37a9 More gtk-demo spacing fixes 2016-10-26 20:37:23 -04:00
Matthias Clasen
76aeb706ef gtk-demo: Start to fix up the spacing
Replace some cases of lost border-width with margins.
2016-10-26 15:03:04 -04:00
Matthias Clasen
b2284ef48f Fix widget-factory appearance, a bit
Use margins instead of border-width, for now.
2016-10-26 14:42:11 -04:00
Alexander Larsson
723b588b5d Make gdk.la and gsk.la a noninst helper library
This merged gtk, gdk and gsk into one library, making it possible to
have internal private APIs between gtk them, as well as producing more
efficient code.

https://bugzilla.gnome.org/show_bug.cgi?id=773100
2016-10-26 16:34:15 +02:00
Chun-wei Fan
306fd15c34 demos: Fix 'make install'
We need to change gtk-update-icon-cache to gtk4-update-icon-cache, as that tool
has been renamed.
2016-10-26 18:30:09 +08:00
Chun-wei Fan
2ba64e0b62 MSVC builds: Support MSVC 2013 and later
We now need C99 features from the compiler which are only supported by
Visual Studio 2013 and later, so drop the MSVC 2008~2012 projects, and make
the baseline supported Visual Studio version be 2013.  Update the build files
as a result.
2016-10-26 16:46:38 +08:00