Matthias Clasen
b3ff4154ec
Drop the public profiler api
...
I meant to do this before merging the profiler
support. Somehow the commit got lost.
2019-05-08 17:00:26 +00:00
Matthias Clasen
ef446de92d
Add docs
...
Document the various ways to start profiling.
2019-05-07 09:37:59 -07:00
Matthias Clasen
032bb45ce3
gdk: Add a profiler
...
This is writing data in the capture format of sysprof,
using the SpCaptureWriter. For now, this is using a
vendored copy of libsysprof. Eventually, we want to
use the static library that sysprof provides.
2019-05-07 09:37:59 -07:00
Benjamin Otte
3f24ad741a
gsk: Export gsk_vulkan_renderer_new()
2019-05-05 07:18:39 +02:00
Benjamin Otte
cc5f2f8995
gsk: Export gsk_broadway_renderer_new()
...
... when broadway is enabled.
2019-05-05 07:18:39 +02:00
Benjamin Otte
6594ccf716
gsk: Export gsk_gl_renderer_new()
2019-05-05 07:18:39 +02:00
Benjamin Otte
559ae8b326
gsk: Export Cairo renderer
2019-05-05 07:18:39 +02:00
Mohammed Sadiq
d936a9ae89
docs: fix typo in function name
2019-05-04 15:09:35 +05:30
Matthias Clasen
29bafd1e15
docs: Add an actions overview
...
Add an introduction chapter explaining actions
in detail. Most of this content is taken from
the GAction HowDoI page.
2019-05-04 01:26:45 +00:00
Matthias Clasen
65697e3324
docs: Some additions to the overview
...
Mention graphene and gsk.
2019-05-04 01:26:45 +00:00
Matthias Clasen
bceca277ea
docs: Some updates to the input overview
...
Remove references to no longer existing apis,
and reword some things. Say surface instead of
window. Start filling out the keyboard section.
2019-05-04 01:26:45 +00:00
Matthias Clasen
eb9284e9ca
migration guide: Updates
...
Add recent changes here.
2019-05-02 23:44:57 +00:00
Matthias Clasen
3f940715e4
gsk: Documentation tweaks
...
Add some missing symbols.
2019-05-01 23:24:14 -04:00
Matthias Clasen
f6225901e8
gdk: Documentation improvements
...
Document some new x11 symbols.
2019-05-02 02:39:36 +00:00
Matthias Clasen
62b7ea7611
Remove gtk_menu_set_display
...
Menus should always be attached to a toplevel,
in which case they get their display that way.
2019-05-01 21:54:57 +00:00
Matthias Clasen
92e21c3f1c
Drop the can-default property
...
It was added at a time when default buttons
had a very large external border that would disrupt
aligment. Not a problem nowadays.
2019-04-28 23:28:39 +00:00
Matthias Clasen
59d50be737
widget: Drop gtk_widget_grab_default
...
The default widget is mostly a dialog concept,
and does not really need this generic api.
If you need to mark a widget as default,
use gtk_window_set_default() directly.
2019-04-28 23:23:11 +00:00
Matthias Clasen
0ae958d45b
Drop gtk_window_activate_default
...
This api has been replaced by an action that
can be activated with gtk_widget_activate_action.
2019-04-28 23:21:50 +00:00
Matthias Clasen
f4880f5df5
Add gtk_widget_activate_default
...
This is a convenience wrapper for
activating the "default.activate" action.
2019-04-28 23:20:13 +00:00
Matthias Clasen
65052a5d6c
Rename gtk_window_set_default
...
Call it gtk_window_set_default_widget, to match
the getter, and the property name. Update all
callers.
2019-04-28 23:20:13 +00:00
Matthias Clasen
aa8ada3fed
widget: Add a convenience api to activate actions
...
Since actions are used increasingly, we should
have a convenient way to trigger an action in
the context of a widget.
2019-04-28 23:19:05 +00:00
Matthias Clasen
3b62d9c027
Drop gtk_window_activate_focus
...
This api wasn't used anywhere in GTK. And since
we've dropped the variant for the default widget,
this one should go too. If it is needed, it should
become and action too.
2019-04-28 22:21:09 +00:00
Matthias Clasen
b9770fa752
widget: Drop gtk_widget_set_parent_surface
...
And the getter, too. Widgets no longer have
extra surfaces that could serve as parent surfaces.
2019-04-24 20:57:09 -04:00
Benjamin Otte
6e59c5c843
gdk: Remove gdk_surface_invalidate_rect() from public API
...
It's still available for backends, but public API (read: GTK) is
meant to only call gdk_surface_queue_expose() and track its
invalid region itself.
2019-04-21 20:08:05 +02:00
Matthias Clasen
51b2759eb1
surface: Drop group api
...
This was only ever implemented on X11, and
GTK is not using it at all. Relegate it to
x11-specific api.
2019-04-20 02:28:46 +00:00
Matthias Clasen
fed2db1493
window: Drop some x11-specific apis
...
The skip-taskbar, skip-pager and urgency hints were
only ever implemented for X11, and are not very useful
with modern desktops. Relegate the functionality to
x11 backend api, and drop the GtkWindow api.
2019-04-20 02:28:46 +00:00
Benjamin Otte
1aa1610611
cssprovider: Export correct API
...
gtk_css_provider_get_named() is the old GTK3 style API to load themes.
Instead, export the function we currently use,
gtk_css_provider_load_named().
As a side effect we allow people to load a theme as often as they want
without conflicting with GTK's theme.
2019-04-18 02:26:04 +02:00
Benjamin Otte
44ce36bef5
menubar: Remove pack direction
2019-04-15 14:38:23 +02:00
Matthias Clasen
0249bd4f8a
listbox: Add a ::show-separators property
...
This is getting translated into a .separators style
class on the list box css node.
2019-04-12 20:24:40 -04:00
Benjamin Otte
8001c7d972
transform: Add gsk_transform_parse()
...
It uses the new CSS parser.
2019-04-12 19:34:29 +02:00
Benjamin Otte
04d24b7cd2
csssection: Make printing functions public
2019-04-12 19:34:28 +02:00
Benjamin Otte
46143492a2
cssprovider: Change section handling
...
Instead of building a full tree of sections that then nobody cares
about, just create sections as necessary for when we use it in the
inspector.
2019-04-12 19:34:28 +02:00
Benjamin Otte
a8f712b09a
cssection: Return locations, not numbers
...
Now that we have GtkCssLocation, actually use it.
2019-04-12 19:34:28 +02:00
Benjamin Otte
2fb202187c
css: Remove GtkCssSectionType
...
It's unused.
2019-04-12 19:34:28 +02:00
Benjamin Otte
32e256e5ab
css: Split GtkCssLocation into its own file
...
And make the struct public, so we can use it in signal handlers.
2019-04-12 19:34:28 +02:00
Benjamin Otte
a938c14d11
build: Add gtk-css static library
...
This library is meant to be the new CSS library that gets used from GDK,
GSK and GTK for string printing and parsing.
As a first step, move GtkCssProviderError into it.
While doing so, split it into GtkCssParserError (for critical problems)
and GtkCssParserWarning (for non-critical problems).
2019-04-12 19:34:28 +02:00
Matthias Clasen
ef982b7d46
Rename things
...
Rename the can-pick property to can-target,
and redo the pick flags with more descriptive names.
2019-04-08 08:42:25 -04:00
Matthias Clasen
7ce968f297
Document GtkPickFlags
2019-04-07 17:27:58 +00:00
Matthias Clasen
70bf6d4b97
Drop child property related apis
...
We no longer have any child properties in
our containers, so drop the infrastructure for it.
2019-04-05 12:01:43 +00:00
Matthias Clasen
69d4081ff8
Merge branch 'wip/ebassi/grid-layout' into 'master'
...
Implement GtkGridLayout
See merge request GNOME/gtk!714
2019-04-05 02:42:55 +00:00
Emmanuele Bassi
89c1a66403
docs: Add missing layout managers to the API reference
2019-04-04 16:43:06 +01:00
Matthias Clasen
624c30ecd2
Drop gdk_wayland_surface_set_use_custom_surface
...
This is unused in GTK, and it does not seem useful
enough to keep around.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1806
2019-04-03 23:23:24 +00:00
Emmanuele Bassi
6e0f1800c8
Add GtkGridLayout
...
Layout manager for grid-like widgets.
2019-04-03 19:03:58 +01:00
Carlos Garnacho
b842bf7bf5
gtk: Drop gtk_search_[entry|bar]_handle_event()
...
This is now unused, and unrecommended.
2019-04-03 13:23:34 +02:00
Emmanuele Bassi
f559de112b
docs: Fix typo in the migration guide
2019-04-03 11:27:18 +01:00
Emmanuele Bassi
df19224b20
Update gtk-doc types file for GTK 4
...
We're missing newly added types, and listing removed ones.
2019-04-02 21:43:34 +01:00
Emmanuele Bassi
167f49caf7
docs: Mention GtkLayout's removal in the migration guide
2019-04-02 16:00:05 +01:00
Emmanuele Bassi
447dfc029f
Remove GtkLayout
...
The need of a specialised fixed layout container that can be placed into
a GtkScrolledWindow ceased to exist once GtkScrolledWindow gained the
ability to automatically interpose a GtkViewport when adding a child
that does not implement GtkScrollable.
All the other justifications that led to the existence of GtkLayout as a
separate widget from GtkFixed have been largely made irrelevant in the
20 years since its inception.
2019-04-02 15:29:20 +01:00
Matthias Clasen
0eb837e4ca
docs: Remove mention of passwords from broadwayd(1)
...
This functionality does not exist.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1697
2019-04-01 00:11:31 -04:00
Matthias Clasen
0230cc55bc
Drop deprecated style context api
2019-03-31 15:35:20 -04:00
Matthias Clasen
04dfbf7513
Remove gdk_device_grab/ungrab from public api
...
They are still used internally in gdk, but we no
longer offer them as public api.
2019-03-29 11:31:13 -04:00
Matthias Clasen
94533495aa
gtk: Some documentation cleanups
2019-03-28 18:36:15 -04:00
Matthias Clasen
c9e08efcbf
gsk: Fix up docs a bit
...
Some apis that were either removed or have never
existed were listed for the docs.
2019-03-28 18:36:15 -04:00
Matthias Clasen
e0f9c98e44
gsk: Add GskRoundedRect to the docs
2019-03-28 18:36:15 -04:00
Matthias Clasen
dec2cf49dd
Merge branch 'child-properties' into 'master'
...
Remove some more child properties
See merge request GNOME/gtk!675
2019-03-28 02:04:42 +00:00
Matthias Clasen
4a1019bed0
popover menu: Add an api for adding submenus
...
This is a step towards removing the submenu
child property.
2019-03-27 17:53:48 -04:00
Matthias Clasen
0d43d11387
gdk: Drop gdk_surface_set_role
...
This is a very old X session management thing, and you
will be hard-pressed to find a session manager that can
make use of it, and even harder-pressed to find apps
using it to their advantage.
2019-03-27 17:29:17 -04:00
Matthias Clasen
2f358469af
Remove GtkWindow::role
...
...and the setter/getter for it.
This is a very old X session management thing, and you
will be hard-pressed to find a session manager that can
make use of it, and even harder-pressed to find apps
using it to their advantage.
2019-03-27 17:29:17 -04:00
Matthias Clasen
733271e09a
migration guide: Improve warp-pointer entry
...
Mention platform APIs.
2019-03-27 14:21:26 -04:00
Matthias Clasen
4a15b16198
Mention pack-type in the migration guide
2019-03-27 13:52:47 -04:00
Matthias Clasen
141f758c5c
Migration guide: Updates
2019-03-27 02:18:36 -04:00
Matthias Clasen
c0aaa43122
Rename gdk_device_get_surface_at_position_double
...
We can drop the double suffix now.
2019-03-26 18:12:55 -04:00
Matthias Clasen
5935f26a1d
Drop gdk_device_get_surface_at_position
...
It is no longer used.
2019-03-26 18:12:55 -04:00
Matthias Clasen
03eb455c93
Rename gdk_device_get_position_double
...
We can drop the double suffix now.
2019-03-26 18:12:55 -04:00
Matthias Clasen
6288043ec2
Drop gdk_device_get_position
...
It is no longer used.
2019-03-26 18:12:55 -04:00
Matthias Clasen
21580309d3
Rename gdk_surface_get_device_position_double
...
Drop the _double suffix, now that the int version is gone.
2019-03-26 18:12:54 -04:00
Matthias Clasen
f1d61d5515
Drop gdk_surface_get_device_position
...
Not used anymore.
2019-03-26 18:08:39 -04:00
Matthias Clasen
eb4e7b9172
Remove GtkWindow::gravity
...
This was used to interpret the position passed
to gtk_window_move. Since that is gone, gravity
is no longer useful.
2019-03-26 17:55:29 -04:00
Matthias Clasen
0481f123ea
Drop gtk_window_move and gtk_window_get_position
...
These functions operate with global coordinates,
which are not available on Wayland.
2019-03-26 17:55:29 -04:00
Emmanuele Bassi
0285919f4a
docs: Add chapter on layout managers
2019-03-26 00:11:27 +00:00
Emmanuele Bassi
ef9863ab63
Add GtkBoxLayout
...
The same layout policy of GtkBox, without all the GtkContainer calories.
2019-03-26 00:11:27 +00:00
Emmanuele Bassi
5cbf6f5fbd
Add GtkLayoutChild
...
Layout managers needs a way to store properties that control the layout
policy of a widget; typically, we used to store these in GtkContainer's
child properties, but since GtkLayoutManager is decoupled from the
actual container widget, we need a separate storage. Additionally, child
properties have their own downsides, like requiring a separate, global
GParamSpecPool storage, and additional lookup API.
GtkLayoutChild is a simple GObject class, which means you can introspect
and document it as you would any other type.
2019-03-26 00:11:27 +00:00
Emmanuele Bassi
1b8595b5f2
Hook GtkLayoutManager into GtkWidget
...
We delegate the size request mode, the measuring, and the allocation of
a widget through a GtkLayoutManager instance, if one has been attached
to the widget; otherwise, we fall back to the widget's own implementation.
2019-03-26 00:11:27 +00:00
Emmanuele Bassi
24754c3259
Add GtkLayoutManager
...
A base abstract class for layout manager delegate objects.
Layout managers are associated to a single widget, like event
controllers, and are responsible for measuring and allocating the
children of the widget they are bound to.
2019-03-26 00:11:27 +00:00
Matthias Clasen
3d37f08f38
Remove gdk_device_warp
...
This was only ever implemented on X11, and is
not something we want to encourage apps to do, ever.
2019-03-24 20:49:08 -04:00
Benjamin Otte
799cb39e08
Remove win32 themeing support
...
It was unused through all of GTK 3, so it is not worth supporting.
The best Windows themes do not make use of it at all.
2019-03-22 22:30:01 +01:00
Benjamin Otte
658588dfe7
renderer: Make gsk_renderer_is_realized() public
...
... and add a property for it.
2019-03-19 08:47:54 +01:00
Benjamin Otte
480d8aec06
renderer: Remove display property
...
Renderers don't need a display until they get realized. And once they
get realized, they can look up the display from the surface.
2019-03-19 08:47:54 +01:00
Matthias Clasen
17f4211e4f
motion controller: Add getters for crossing event targets
...
This information can be needed in signal handlers,
so make it available.
2019-03-16 23:52:58 -04:00
Matthias Clasen
181a4bce25
Add key controller API to the docs
...
A bunch of API was missing here.
2019-03-16 21:24:45 -04:00
Matthias Clasen
a3b73a416e
password entry: Add a way to see the content
...
Add a ::show-peek-icon property and show a clickable
icon when it is set. Clicking it toggles the visibility
of the content. The same functionality is also accessible
via a context menu item.
This is a common feature of password entries.
2019-03-14 20:31:45 -04:00
Benjamin Otte
3a3b325f8e
transform: Add perspective()
...
This commit adds gsk_transform_perspective(), gtk_snapshot_perspective()
and support for perspective() in the CSS syntax.
2019-03-05 20:46:00 +01:00
Benjamin Otte
3545abc7a1
transform: Implement gsk_transform_invert()
...
And use it.
And test it.
2019-03-04 23:41:51 +01:00
Benjamin Otte
70b341139b
transform: Remove gsk_transform_identity()
...
This used to be a good idea back when GskTransform was intended to be
used for transitions, but without it, it's not anymore.
2019-03-04 23:41:51 +01:00
Benjamin Otte
3cc84d2860
transform: Make category public API
...
Also rename it from GskMatrixCategory to GskTransformCategory.
2019-03-04 23:15:24 +01:00
Benjamin Otte
791bf0c2eb
transform: Remove API to poke internals
...
It is not interesting to users of GskTransform how it is made up
internally. Users should just use the gsk_transform_to_*() APIs.
2019-03-04 23:15:24 +01:00
Benjamin Otte
4916280883
transform: Add more API
...
In particular, add a per-category querying API for the matrix:
- gsk_transform_to_translate()
- gsk_transform_to_affine()
- gsk_transform_to_2d()
- gsk_transform_to_matrix()
This way, code can use the relevant one for the given category.
2019-03-04 23:15:06 +01:00
Benjamin Otte
0e1a50366a
transform: Move to GSK
...
The renaming of the prefix makes this a large patch.
2019-03-04 23:09:02 +01:00
Matthias Clasen
9e0c471b03
entry, spin button: Drop redundant API
...
Avoid duplicating GtkEditable APIs. Port existing users.
2019-02-28 16:34:00 -05:00
Matthias Clasen
d3c45cb979
docs: Miscellaneous doc fixes
...
Additions and correction all over the place,
in GDK and GTK docs.
2019-02-24 16:53:12 -05:00
Matthias Clasen
df27cb7240
docs: Remove some no-longer-existing api
2019-02-24 13:56:09 -05:00
Matthias Clasen
8a0182e401
docs: Some cosmetic fixups
...
Some leftover comments from the drawing model rewrite.
2019-02-24 10:37:33 -05:00
Matthias Clasen
cc216c9e84
Remove gdk_surface_set_user_data
...
Change gdk_surface_get/set_user_data to private
API and rename them to get/set_widget.
Also remove an unused associated function.
The last two places where the surface API is used
are in gtkroot.c and gtkwidget.c. Make them
use the private api.
2019-02-23 22:24:50 -05:00
Matthias Clasen
4001e7645b
docs: Refresh the "Q & A" part
...
Remove references to long-gone API, add some pointers
to more modern alternatives, etc.
2019-02-23 16:08:05 -05:00
Matthias Clasen
fad9468e77
Merge branch 'drawing-model-refresh' into 'master'
...
doc: Rewrite the drawing model overview
See merge request GNOME/gtk!603
2019-02-23 21:05:35 +00:00
Matthias Clasen
222d310370
doc: Rewrite the drawing model overview
...
This is a first cut at updating the drawing model chapter
for the way we do things now. It introduces the scene graph and
render nodes, explains node caching and tree diffing, and removes
sections about subwindows.
2019-02-23 15:24:07 -05:00
Matthias Clasen
e16cdb141c
Drop gdk_event_handler_set
...
This is no longer used by GTK.
2019-02-23 14:13:57 -05:00
Matthias Clasen
4e97417efa
Update migration guide for pass-through
2019-02-21 22:07:39 -05:00
Matthias Clasen
beb8d362ff
overlay: Remove gtk_overlay_set_overlay_pass_through
...
gtk_overlay_set_overlay_pass_through has been made
redundant by gtk_widget_set_can_pick. Remove it.
2019-02-21 21:57:43 -05:00
Matthias Clasen
2e5ccce088
Make gtk_widget_set/get_can_pick public
...
This is a generally useful property to make widgets
'transparent' for input purposes.
2019-02-21 21:53:34 -05:00
Matthias Clasen
f57e66cf37
overlay: Drop the index child property
...
And don't allow reordering children.
2019-02-21 19:43:33 -05:00
Benjamin Otte
14444826c1
docs: Fix typo
...
:(
2019-02-21 23:00:36 +01:00
Benjamin Otte
dfc1673653
docs: Use the same name in different files
...
Otherwise gtk-doc gets confused.
2019-02-21 20:44:17 +01:00
Matthias Clasen
b64f852d60
Remove docs for css keybindings
...
This functionality has been removed.
2019-02-21 13:56:56 -05:00
Timm Bäder
e2b9f3258e
css: Add transform style property
2019-02-21 19:47:28 +01:00
Benjamin Otte
4052bb2535
snapshot: Remove the old APIs
...
It's all using transforms now.
2019-02-21 19:47:28 +01:00
Benjamin Otte
51fac44ba5
snapshot: Introduce transform APIs
...
Instead of gtk_snapshot_offset(), provide a full set of functions
kept in sync with GtkTransform APIs.
On top of that, add gtk_snapshot_save() and gtk_snapshot_restore()
mirroring cairo_save()/restore() that allow saving a snapshot's
transform state.
2019-02-21 19:47:28 +01:00
Benjamin Otte
2bdc0748e5
snapshot: Remove gtk_snapshot_get_offset()
...
We use append() functions for everything now, thank you very much.
2019-02-21 19:47:28 +01:00
Benjamin Otte
1ef250f44a
snapshot: Add functions to append shadows
2019-02-21 19:47:28 +01:00
Benjamin Otte
e1570e9ebc
snapshot: Add gtk_snapshot_append_border()
...
This is adding functions for the remaining render nodes.
2019-02-21 19:47:28 +01:00
Benjamin Otte
49d83820a2
gtk: Add GtkTransform
...
This is a new object (well, boxed type, but I'm calling it object) for
dealing with transform in a more constructive way than graphene_matrix_t
by keeping track of how the transform was created.
This way, reasoning about the transform becomes easier, and we can create
better ways to print it or transition from one transform to another one.
An example of this is that while a 0 degree and a 360degree rotation are
both the identity matrix, doing a transition between the two would cause
a rotation.
2019-02-21 19:47:27 +01:00
Matthias Clasen
eea651d5f9
Add new notebook apis to the docs
2019-02-21 01:11:50 -05:00
Matthias Clasen
888b967d6b
Add more info to the migration guide
...
Mention child metas of GtkAssistant and GtkNotebook.
2019-02-21 01:09:09 -05:00
Matthias Clasen
82bde1e10a
text: Remove the ::has-frame property
...
This is purely GtkEntry functionality and should
remain there.
2019-02-20 10:34:42 -05:00
Benjamin Otte
e223f16aa9
widget: Add gtk_widget_compute_point()
...
It's the replacement for gtk_widget_translate_coordinates()
2019-02-19 19:22:10 +01:00
Timm Bäder
dbf0654e5b
widget: Add gtk_widget_compute_transform
2019-02-19 19:22:09 +01:00
Matthias Clasen
a417956054
Mention GtkEditable and entries in the migration guide
...
Not a very exhaustive treatment, but at least it gives
some hints.
2019-02-19 00:25:59 -05:00
Matthias Clasen
b299ac8dfa
Add editable delegate api to docs
...
And add a section that explains how to use these
functions when setting up a GtkEditable delegate.
2019-02-19 00:25:59 -05:00
Matthias Clasen
c6e6fb19e7
Add GtkPasswordEntry
...
This is a simple editable which hides the entered
text and shows a caps-lock warning.
2019-02-19 00:25:59 -05:00
Matthias Clasen
45fb1d06e3
entry: Delegate to GtkText
...
Use a GtkText child, and delegate the editable functionality
to it. Also forward all the properties that are provided by
GtkText.
Some of the more internal APIs, such as layout and im context
access and caps-lock warning, are removed here, but we preserve
most of the plain GtkEntry API by forwarding it to the GtkText
child.
2019-02-19 00:25:59 -05:00
Matthias Clasen
1801bf6d83
Add a GtkText widget
...
This is a GtkEntry without any of the extras, such as
icons, completion, progress, caps-lock warning, emoji icon.
2019-02-18 14:24:21 -05:00
Matthias Clasen
7325f8e204
editable: Add more to interface
...
Add all the things to the GtkEditable interface that
make sense for most implementations.
2019-02-17 23:07:17 -05:00
Timm Bäder
10e5856583
widget: Save transform as matrix
...
The transform matrix is a translation matrix from the parent's origin to
the widget origin. We will later allow more transformations than just
translations.
2019-02-16 15:44:37 +01:00
Matthias Clasen
bea1a02edd
Merge branch 'wip/otte/boxes' into 'master'
...
GtkCssBoxes
See merge request GNOME/gtk!584
2019-02-15 16:12:26 +00:00
Matthias Clasen
e5e2bd3187
Drop GtkAssistantPage::has-padding
...
This is causing us some internal complications, and
it is very easy to just add padding to the pages
yourself.
2019-02-15 10:23:48 -05:00
Benjamin Otte
e0ec5caaf8
container: Drop gtk_container_check_resize()
...
Instead, hardcode GtkWindow for now.
The code for non-windows was entirely broken.
2019-02-15 06:53:17 +01:00
Benjamin Otte
30386bbaca
gtk: Add GtkSingleSelection
...
GtkSingleSelection is a GtkSelectionModel that allows selecting a single
item.
2019-02-10 18:43:59 -05:00
Benjamin Otte
16024fba7c
gtk: Add GtkSelectionModel
...
The selection model is a list model interface that takes care of
selections and is to be used by the list model widgets to manage their
selections.
2019-02-10 18:43:59 -05:00
John Zhang
6959e8c6a6
typo correction
2019-02-09 14:43:21 +08:00
Benjamin Otte
49cbf2a16b
widget: Add gtk_widget_set_overflow()
...
This adds a simple abilities for widget implementations to clip their
content. See future commits for users of this.
2019-02-08 18:26:42 +01:00
Matthias Clasen
ce60089f46
assistant: Convert child properties to a child meta object
...
Turn GtkAssistantPage into a public object holding the
former child properties.
2019-02-08 00:09:44 -05:00
Matthias Clasen
edd3f28a1d
migration guide: Mention --3to4
2019-02-08 00:09:44 -05:00
Matthias Clasen
e31f7356e9
Some small additions to the migration guide
...
Mention some of the recent changes, such as GtkButtonBox,
GtkBox, child properties.
2019-02-08 00:09:44 -05:00
Matthias Clasen
1fb3febacc
Document --3to4
2019-02-08 00:09:44 -05:00
Matthias Clasen
ad9c2a624f
stack: Convert child properties to a child meta object
...
Create a GtkStackPage public object which holds the former
child properties of GtkStack.
Adjust all callers.
2019-02-08 00:09:44 -05:00
Matthias Clasen
e91144f6c9
Make GtkInvisible private
...
We can't quite get rid of its use in the inspector,
but we can make it private.
2019-02-06 02:06:19 -05:00
Timm Bäder
51268f53d8
docs: Remove reference to deleted file
2019-02-05 15:15:38 +01:00
Matthias Clasen
f60ca91d2b
A few forgotten button box functions
2019-02-05 08:44:45 -05:00
Matthias Clasen
3489ed087d
Merge branch 'kill-buttonbox' into 'master'
...
Drop GtkButtonBox
See merge request GNOME/gtk!554
2019-02-05 13:06:09 +00:00
Matthias Clasen
32e61b955a
Drop gtkboxprivate.h
...
Not needed anymore.
2019-02-05 07:54:35 -05:00
Emmanuele Bassi
0f24fddaf7
docs: Drop the '+' from GTK
...
We need to adapt to both the change in the name of the project, and to
the name change in the pkg-config file.
2019-02-05 10:14:31 +01:00
Matthias Clasen
f3f5a896de
box: Avoid position in the reorder api
...
Change the reorder api to insert after a sibling,
so that moving to first place becomes reorder (... NULL).
And add a insert_after api that can replace the common
container_add / reorder_after (... NULL) combination.
Update all callers.
2019-01-23 19:30:47 -05:00
Timm Bäder
c7b1df1ebd
migration guide: Add a paragraph about GtkBox's pack-type
2019-01-23 19:30:46 -05:00
Timm Bäder
e9e40ddb42
box: Remove gtk_box_pack_start
2019-01-23 19:30:46 -05:00
Timm Bäder
a543ed84f6
box: Remove gtk_box_pack_end
2019-01-23 19:30:46 -05:00
Timm Bäder
28c51175d8
box: Remove pack-type child property
2019-01-23 19:30:46 -05:00
Timm Bäder
bd71e744d2
Stop using gtk_box_pack_end
...
It might soon go away!
2019-01-23 19:30:46 -05:00
Timm Bäder
3d40f003b2
Merge branch 'no-more-bgo' into 'master'
...
docs: Point people at the right place for bugs
Closes #1559
See merge request GNOME/gtk!498
2019-01-21 07:05:26 +00:00
Emmanuele Bassi
3543a54545
Specify the C include for Unix printing API
...
Instead of using the INCLUDE directive inside the sections file, we can
specify the default C include in the gtkdoc-mkdb arguments, and override
it inside the C sources that need it.
2019-01-19 00:00:34 +00:00
Timm Bäder
11f9ae8202
tooltip: Remove gtk_tooltip_trigger_tooltip_query
...
As stated by the documentation, this should be called when a widget gets
updated, but in that case, one can equally use
gtk_widget_trigger_tooltip_query.
2019-01-18 19:43:51 +01:00
Emmanuele Bassi
a5fcdca935
docs: Point people at the right place for bugs
...
We don't use Bugzilla for GTK any more, so our documentation should
reflect that change.
Closes #1559
2019-01-18 14:34:10 +00:00
Timm Bäder
904fd5f1fc
Remove gtk_widget_intersect
...
It's been broken for quite a while now and doesn't make sense anymore
these days.
2018-11-29 11:14:26 +01:00
Timm Bäder
1f1306a53b
docs: Add GtkEventControllerLegacy
2018-11-13 15:40:42 +01:00
Benjamin Otte
eecd5823d0
docs: Put subsection into right section
...
The widget observer APIs belong into the widget docs, not the window
docs. Oops.
2018-10-06 00:29:31 +02:00
Matthias Clasen
a28c7e8839
Merge branch 'wip/sadiq/fixes' into 'master'
...
docs: Fix inclusion of source files in tutorial
See merge request GNOME/gtk!341
2018-09-26 18:28:23 +00:00
Benjamin Otte
2c84049769
treelistmodel: Improve naming a bit
...
The complexity with model items vs row items is really confusing. Add to
that treelistmodel position vs child model position vs parent position,
and you're so confused, even the best naming can't help.
And once you're there, consider passthrough vs non-passthrough...
2018-09-18 08:03:03 +02:00
Mohammed Sadiq
6971e2923d
docs: Fix inclusion of source files in tutorial
2018-09-17 13:39:22 +05:30
Benjamin Otte
9ffd88012d
docs: Add missing TreeListModel docs
2018-09-16 19:39:39 +02:00
Benjamin Otte
f3834138f7
GtkSortListModel: Add
2018-09-16 18:50:17 +02:00
Benjamin Otte
64d97b233b
GtkSliceListModel: add
2018-09-16 18:50:17 +02:00
Benjamin Otte
b6acc31d44
GtkMapListModel: add
2018-09-16 18:50:17 +02:00
Benjamin Otte
867042f88f
widget: Add gtk_widget_observe_controllers()
...
This mirrors gtk_widget_observe_children() - just that it observes the
controllers, not the children.
2018-09-16 18:50:17 +02:00
Benjamin Otte
32ec7dec61
gtk: Add GtkFlattenListModel
...
We can flatten lists of lists into lists now!
2018-09-16 18:50:17 +02:00
Benjamin Otte
4f70f72349
gtk: Add GtkFilterListModel
...
This is a GListModel implementation that filters the given source model.
2018-09-16 18:50:17 +02:00
Benjamin Otte
dd94129e27
widget: Add gtk_widget_observe_children()
...
This creates a listmodel that tracks a widget's children. Doing so turns
adding/removing children from O(1) to O(N) though, so use with caution.
2018-09-16 18:50:17 +02:00
Benjamin Otte
63e5b827ed
window: Add gtk_window_get_toplevels()
...
This one returns a list of all toplevel windows.
2018-09-16 18:50:17 +02:00
Benjamin Otte
573c63973a
gtk: Add GtkTreeListModel
...
This is a GListModel implementation with a neat API that can be used to
implement trees inside GtkListBox.
2018-09-16 18:50:17 +02:00
Matthias Clasen
59077e4843
migration guide: Mention GtkEventBox
...
Its gone.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1243
2018-08-05 19:53:02 -04:00
Guido Günther
06e4c3c991
examples: Use appliction id as desktop file base name
2018-08-02 11:10:21 +02:00
Guido Günther
f25f3b3c47
docs: Explain desktop file id == application_id in migration guide
2018-08-02 11:10:21 +02:00
Benjamin Otte
50d5666db0
container: Remove focus chains
...
They're prectically unused.
Widgets who want to influcence the focus chain behavior should implement
GtkWidgetClass::focus and deal with focus there.
2018-07-31 22:34:27 +02:00
Matthias Clasen
0ba307995d
Mention gtk_widget_show_all in the migration guide
...
This function is gone.
Closes https://gitlab.gnome.org/GNOME/gtk/issues/1242
2018-07-31 13:38:10 -04:00
Benjamin Otte
813957a92f
gdk: Remove gdk_event_get_string()
...
You want to use an IM module to get strings out of keypresses, not some
crude hack that only works on X11 and Wayland anyway.
2018-07-30 19:32:38 +02:00
Matthias Clasen
73b45ec77e
Migration guide: mention size-allocate
...
Document the new argument here.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1245
2018-07-29 09:11:39 -04:00
Jonas Ådahl
4497ac7d75
menu: Remove legacy popup APIs
...
Remove gtk_menu_popup_for_device() and gtk_menu_popup(), as they cannot
be implemented in a portable manner by all backends. They have been
deprecated for proper alternative APIs for some time, so lets remove
them now before its too late.
While at it, fix the example documentation for mapping a menu.
2018-07-27 17:16:44 +02:00
Benjamin Otte
76d0e1e398
API: Remove gtk_render_frame_gap()
...
That function does not make sense at all in a CSS world. So better don't
support it anymore.
2018-07-24 20:55:45 +02:00
Benjamin Otte
0f70e6d70a
docs: Remove remains of Mir backend
2018-07-24 20:55:45 +02:00
Benjamin Otte
447b166ed3
Merge branch 'wip/muktupavels/remove-gtk-css-provider-get-default' into 'master'
...
gtkcssprovider: remove gtk_css_provider_get_default
See merge request GNOME/gtk!256
2018-07-20 14:03:51 +00:00
Ernestas Kulik
40019517cf
docs: Fix GdkContentProvider documentation
...
Currently it’s lacking properties, signals and class vfuncs.
2018-07-19 20:05:19 +03:00
Alberts Muktupāvels
7a8f5ca970
gtkcssprovider: remove gtk_css_provider_get_default
...
This function is unused since cdc6e82720
commit and does not
contain fallback style.
https://gitlab.gnome.org/GNOME/gtk/issues/1226
2018-07-19 19:25:17 +03:00
Matthias Clasen
1030d9e5b1
docs: Small updates to the migration guide
...
Mention that event controllers are available in 3.x, amongst others.
2018-07-18 20:22:18 -04:00
Timm Bäder
17b1e7bae9
docs: Fix scroll and motion controller titles
...
Controller, not Controler.
2018-07-17 17:33:46 +02:00
Matthias Clasen
d148f26658
Drop gdk_surface_withdraw
...
'withdrawn' is an X11-centric concept, and the function
can just as well be replaced by gdk_surface_hide.
2018-07-15 15:29:58 -04:00
Matthias Clasen
b94c3166bf
dnd: Rename gtk_drag_begin_with_coordinates
...
Now that the coordiate-less variant is gone,
rename this back to the shorter gtk_drag_begin.
2018-07-12 13:02:42 +02:00
Timm Bäder
33166b7357
render: Remove gtk_render_slider
...
The only thing it was doing is render background and frame, which you
get from using a widget for your slider anyway.
2018-07-08 09:41:15 +02:00
Thomas Bechtold
e42373df89
docs: Add GtkPicture to types list
...
We want signals, arguments/parameters and position in the hierarchy to
be shown in the documentation for GtkPicture. So fix the types list.
See
https://developer.gnome.org/gtk-doc-manual/unstable/metafiles_types.html.en
2018-07-06 22:14:26 +02:00
Ernestas Kulik
3137d326c5
docs: Add new DnD types
...
7733f646d6
renamed GdkDragContext to
GdkDrag, which broke the docs, as a reference to
gdk_drag_context_get_type() still exists. This commit renames the type
accordingly and adds GdkDrop.
2018-07-03 12:32:41 +03:00
Matthias Clasen
fb98f939a5
docs: Update dnd section
...
Add the separate drag and drop apis.
2018-07-02 15:00:50 +02:00
Matthias Clasen
36396093e6
docs: Document GtkEventControllerKey
...
The long description was missing.
2018-06-26 12:20:47 -04:00
Matthias Clasen
443a64a38e
docs: Remove a duplicate line in gdk4-sections.txt
...
This was causing another docs build break.
2018-06-19 17:16:31 -04:00
Matthias Clasen
74455ae75c
docs: fix a typo
...
Invalid syntax in gdk4-sections.txt was causing docs builds to fail.
2018-06-19 17:16:31 -04:00
Benjamin Otte
45a6146ca6
x11: Remove gdk_x11_surface_foreign_new_for_display()
...
People who want to use foreign windows should use X directly.
2018-06-18 23:49:53 +02:00
Benjamin Otte
f982c9c8f8
dnd: Remove gdk_drag_status() and gdk_drag_finish()
...
Those functions are unused and have been replaced by their equivalents
gdk_drop_status() and gdk_drop_finish().
2018-06-18 23:49:52 +02:00
Benjamin Otte
a1cee7fa65
surface: Kill event masks
...
In particular, this patch removes:
gdk_surface_get_events()
gdk_surface_set_events()
gdk_surface_get_device_events()
gdk_surface_set_device_events()
Event masks so far still exist for grabs.
2018-06-18 23:49:52 +02:00
Benjamin Otte
e1206763a8
dnd: Remove gdk_drag_context_get_dest_surface()
...
... and gdk_drag_context_get_source_surface().
In the backends, use direct access to the variables instead.
2018-06-18 23:49:52 +02:00
Benjamin Otte
d02b185a87
dnd: Add gdk_event_get_drop()
...
And remove gdk_event_get_drag_context().
All GTK code now only uses GdkDrop for dropping.
2018-06-18 23:49:52 +02:00
Benjamin Otte
5b0a6a52c1
dnd: Get rid of gtk_drag_finish()
...
It's just a wrapper around gdk_drag_finish(), so use that one instead.
2018-06-18 23:49:20 +02:00
Benjamin Otte
13ae11ee01
dnd: Rename gdk_drop_finish() => gdk_drag_finish()
...
This is a simple rename, so that we can reintroduce gdk_drop_finish()
with the GdkDrop object.
2018-06-18 23:49:19 +02:00
Benjamin Otte
b2dc303e5e
dnd: Add gdk_drop_get_actions()
...
This uses the new method without GDK_ACTION_ASK:
Either it is a single action (queryable via gdk_drag_action_is_unique())
or it is not and then the drop target has to make a decision
(potentially by asking someone).
2018-06-18 23:49:19 +02:00
Benjamin Otte
74a8ffc4a8
dnd: Add gdk_drag_action_is_unique()
...
This will be necessary once we remove the ASK action.
2018-06-18 23:49:19 +02:00
Timm Bäder
218b39fe01
GtkStyleContext: Remove the frame clock
...
It's unused within GtkStyleContext.
2018-06-18 17:35:03 +02:00
Ting-Wei Lan
751c1877b1
docs: Fix gtk-doc build when wayland is disabled
...
Unconditionally putting 'gdkwayland_inc' in src_dir argument of gtkdoc
call tells gtkdoc-scan to scan source files in a non-existent build
directory, gdk/wayland. To avoid causing build failure when a specific
backend is disabled, we should include directories conditionally.
2018-06-15 23:51:15 +08:00
Mohammed Sadiq
daf72e2e96
docs: Update getting started docs
...
We have removed references to private members in our examples.
Let the docs be updated to reflect that.
2018-06-14 05:30:21 +05:30
Mohammed Sadiq
7e98741793
docs: Use gtk_widget_show() to show window
...
gtk_window_show_all() is no longer available (and no longer needed)
2018-06-13 20:15:20 +05:30
Mohammed Sadiq
0d46081645
overlay: Add support for clipping overlay widgets
...
Sometimes users may want to restrict the growth of child
widgets in a GtkOverlay to grow atmost the size of the overlay.
Let's add a support for that.
2018-06-11 16:24:29 +05:30
Benjamin Otte
299e2ed44c
docs: Add GtkEventControllerKey to index
2018-06-10 02:35:30 +02:00
Benjamin Otte
f58c556adb
image: Remove gtk_image_set_keep_aspect_ratio()
...
and gtk_image_set_can_shrink().
Images are meant to always be icon-sized, they can never shrink below
that.
And images are icons, so they are meant to be square. If they are
not, we pretned that's by accident and keep aspect ratio.
2018-06-10 02:25:28 +02:00
Benjamin Otte
6546ef3459
picture: Introduce
...
This commit introduces GtkPicture, which is supposed to complement
GtkImage.
GtkImage will be adapted to always display an icon, while
GtkPicture displays regular imagery.
2018-06-10 02:23:02 +02:00
Timm Bäder
758137b5d9
widget: Add docs for {get,set}_focus_child
...
With get_ being still private.
2018-06-04 21:58:44 +02:00
Benjamin Otte
7e574fa98c
gdk: Get rid of gdk_event_free()
...
Events are objects, so use g_object_unref().
2018-05-29 21:53:44 +02:00
Timm Bäder
3a8607190f
Add GtkEventControllerKey to the docs
2018-05-19 12:38:44 +02:00
Emmanuele Bassi
b702618ed9
docs: List private headers for gtk-doc to ignore
...
We have a lot of private headers that should not be used by gtk-doc when
scanning for symbols.
2018-05-08 14:20:00 +01:00
Emmanuele Bassi
1262d0c6e5
Avoid absolute paths when building the API reference
...
We should always use relative paths, or include_directories objects, to
allow using GTK as a subproject.
2018-05-08 14:20:00 +01:00
Mohammed Sadiq
555c6d7ac7
reference: Replace reference to gtk3 with gtk4
2018-05-08 06:05:41 +05:30
Mohammed Sadiq
5242073547
reference: Use gtk+-4 for compilation in examples
2018-05-08 06:05:04 +05:30
Benjamin Otte
69644993f6
gsk: Improve GSK_RENDERER behavior
...
1. Include the broadway renderer (so we can test it properly fails on
Wayland or X11)
2. List all potential renderers, print useful information when Vulkan
is not compiled in instea dof omitting it
3. Improve docs
2018-05-07 16:45:32 +02:00
Matthias Clasen
3c05a6662b
Update docs for debug environment variables
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Matthias Clasen
5469bf0773
Document the GSK_RENDERER environment variable
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Matthias Clasen
335a8aa843
Update build docs
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Matthias Clasen
766185bce5
Add GtkWidgetPaintable to the docs
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Matthias Clasen
c7fd3ebbaf
Add GdkPaintable to the docs
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Matthias Clasen
79e54929a2
Add more media docs
2018-05-06 15:57:10 -04:00
Matthias Clasen
f569717a03
Add media support to docs
2018-05-05 18:28:19 -04:00
Matthias Clasen
7fdf3d1769
Fixes to the gtk docs
2018-05-05 18:03:31 -04:00
Matthias Clasen
702deee799
Add some more content to the migration guide
2018-05-05 13:33:36 -04:00
Matthias Clasen
e191015aa0
The legacy event controller is still private
2018-05-03 20:45:36 -04:00
Benjamin Otte
8366ef71c0
dnd: Remove gdk_drop_reply()
...
It was only necessary for Motif DND, and we don't support that anymore.
2018-05-03 01:31:40 +02:00
Benjamin Otte
fb53568c04
gdk: Remove gdk_drag_grop_succeeded()
...
It's unused and most backends don't implement it.
2018-05-03 01:31:39 +02:00
Matthias Clasen
0f4084946a
Add missing types to gtk docs
2018-05-01 23:26:28 -04:00
Matthias Clasen
1185b0b447
Add missing types to gdk docs
2018-05-01 23:22:13 -04:00
Matthias Clasen
1dcb76bc26
Merge branch 'wip/carlosg/controller' into 'master'
...
carlosg/controller
See merge request GNOME/gtk!131
2018-05-01 12:35:53 +00:00
Matthias Clasen
3684b72121
Misc documentation fixes
...
Close some gaps in gdk docs.
2018-04-28 22:34:14 -04:00
Matthias Clasen
059a181f7d
Document GdkMemoryTexture
2018-04-28 16:22:29 -04:00
Matthias Clasen
a0f591297a
More doc build fixes
...
If only the errors would make it back to stderr.
2018-04-28 16:02:34 -04:00
Matthias Clasen
b20e68cc91
More doc build fixes
2018-04-28 15:07:35 -04:00
Matthias Clasen
6b7be6643a
Add offset nodes to the docs
2018-04-28 15:07:35 -04:00
Matthias Clasen
5e2103f7f0
Fix the gdk doc build
...
GdkDrawingContext no longer exists.
2018-04-28 15:07:35 -04:00
Benjamin Otte
9af03fa602
widget: Expose gtk_widget_add_controller()
...
.. and gtk_widget_remove_controller().
2018-04-26 17:59:41 +02:00
Adrian Johnson
b0bb7f3da4
Add gtk_printer_get_hard_margins_for_paper_size
...
to retreive paper size specific hard margins and use this
to set the hard margins in the print context.
(modified by Marek Kasik <mkasik@redhat.com>)
https://bugzilla.gnome.org/show_bug.cgi?id=686109
2018-04-26 14:19:55 +02:00
Benjamin Otte
fd686afeb2
drawcontext: Add gdk_draw_context_in_frame() API
...
This makes the previous gdk_draw_context_is_drawing() function public
under a new name.
I decided against the old name because we use the term "frame" for a
drawing operation, so I wanted to have this boolean flag reuse the term.
2018-04-24 23:16:58 +02:00
Benjamin Otte
a865621519
gdk: Move begin/end_frame() functions
...
As they require a draw context and the draw context is already bound to
the surface, it makes much more sense and reduces abiguity by moving
these APIs to the draw context.
As a side effect, we simplify GdkSurface APIs to a point where
GdkSurface now does not concern itself with drawing anymore at all,
apart from being the object that creates draw contexts.
2018-04-24 23:16:58 +02:00
Benjamin Otte
48fc18c37b
gdk: Get rid of GdkDrawingContext
...
All information is kept in GdkDrawContext these days, so use that one.
2018-04-24 23:16:58 +02:00
Benjamin Otte
c6ae0ff2d1
gdk: Get rid of gdk_drawing_context_get_clip()
...
Use the identical gdk_draw_context_get_frame_region() instead.
2018-04-24 23:16:58 +02:00
Benjamin Otte
dbe4f1d766
gdk: Add gdk_draw_context_get_frame_region()
...
This does the same as gdk_drawing_context_get_clip().
2018-04-24 23:16:58 +02:00
Benjamin Otte
e7d6648f46
gdk: Remove gdk_gl_context_get_damage()
...
Remove it only form public API, because we still use the vfunc to figure
out the damage area in begin_frame().
2018-04-24 23:16:58 +02:00
Benjamin Otte
a83487a0c4
cairocontext: Move a function
...
A function of GdkDrawingContext is only used when drawing with Cairo, so
move it to GdkCairoContext.
2018-04-24 23:16:12 +02:00
Benjamin Otte
f396786051
gdk: Add GdkCairoContext
...
This does nothing but disallow passing NULL to gdk_surface_begin_paint()
and instead require this context.
The ultimate goal is to split out Cairo drawing into its own source file
so it doesn't clutter up the generic rendering path.
2018-04-24 23:16:12 +02:00
Benjamin Otte
b49dccb86d
rendernode: Remove gsk_render_node_set_name()
...
And of course, gsk_render_node_get_name() is gone, too.
The replacement is of course debug nodes.
As a side effect, GskRenderNode is now *really* immutable.
2018-04-24 04:06:58 +02:00
Benjamin Otte
49f9d2108d
gsk: Add GskDebugNode
2018-04-24 04:06:58 +02:00
Emmanuele Bassi
0b4bfd5c93
docs: Start defining the owners of code sections
...
When filing a new merge request it's often hard to know who to ask for a
review; using the Git log doesn't always help — the person that touched
a file last may just be fixing the build or a compiler warning.
The `CODE-OWNERS` file format is something that GitHub uses in order to
pre-fill the list of reviewers:
https://help.github.com/articles/about-codeowners/
Ideally, in the future, we'll be able to use this file with a bot like
homu to automatically go through newly filed merge requests and
automatically ask the relevant people for reviews, instead of doing this
manually.
2018-04-16 16:06:33 +01:00