Matthias Clasen
5dddec4dd9
Add GtkBookmarkList
...
This is a listmodel similar to GtkDirectoryList,
for tracking recent files.
2020-06-11 16:14:47 -04:00
Matthias Clasen
059c45a85b
propertyselection: Add getters
...
These were missing.
2020-06-11 07:35:20 -04:00
Matthias Clasen
4b241f8da2
Merge branch 'scroll-compression' into 'master'
...
gdk: Compress scroll events
Closes #2800
See merge request GNOME/gtk!2066
2020-06-10 14:35:01 +00:00
Matthias Clasen
54c098761f
gdk: Drop gdk_device_set_axis_use
...
If you need some axes changed, you can just flip
the values when you receive them.
2020-06-09 15:27:34 -04:00
Matthias Clasen
2f98400b80
gdk: Drop gdk_device_get/set_keys
...
This functionality was only ever half-implemented
on X11, and is not useful enough to keep around.
2020-06-09 15:27:33 -04:00
Matthias Clasen
c9fad25131
gdk: Rename gdk_motion_event_get_history
...
Scroll events can have history too, so make a
getter that works for both. This drops the
gdk_scroll_event_get_history getter that was
added a few commits earlier, since we now
store scroll history in the same way as
motion history.
Update the docs, and all callers.
2020-06-09 13:43:12 -04:00
Matthias Clasen
805ddc3c3a
gdk: Drop gdk_device_get_history
...
This function is not implemented anywhere.
2020-06-08 18:24:20 -04:00
Matthias Clasen
9f335d3ee6
docs: Regroup the tree support parts
...
Give the chapter a title, and put some things in sections.
2020-06-06 13:54:58 -04:00
Matthias Clasen
856c8950ff
docs: Put selection models into a section
...
This makes the documentation structure a bit clearer.
2020-06-06 13:54:58 -04:00
Matthias Clasen
61ccf4e719
docs: Fix up the GtkNativeDialog section
...
Without GtkNativeDialog in the section list,
links are not generated from the object hierarchy.
2020-06-06 13:54:58 -04:00
Matthias Clasen
1567db1f02
Merge branch 'misc-multiselection' into 'master'
...
Misc multiselection
See merge request GNOME/gtk!2055
2020-06-06 17:54:42 +00:00
Matthias Clasen
d1509971d8
Add GtkPropertySelection
...
This is a selection model that stores the selection
state in a boolean property of the items, and thus
persists across reordering and similar changes.
Fixes : #2826
2020-06-06 11:41:51 -04:00
Matthias Clasen
fd7f19c934
selectionmodel: Document the callback apis
2020-06-06 10:36:57 -04:00
Matthias Clasen
3412f0554f
gtk: Documentation fixups
...
Document missing symbols, and other cleanups.
2020-06-05 22:50:30 -04:00
Matthias Clasen
61c83f9ffe
gdk: Documentation fixups
...
Document some missing symbols.
2020-06-05 20:59:51 -04:00
Matthias Clasen
3d7c1f8950
gsk: Documentation fixups
...
Document a few missing symbols.
2020-06-05 20:19:45 -04:00
Emmanuele Bassi
6e52ef96a4
Move orientable style classes into GtkWidget
...
It feels slightly wrong to have GtkOrientable operate on widgets, but at
least what happens when an orientable widget changes orientation should
be part of GtkWidget.
This will allow to add more state changes without accessing widget state
from the outside of gtkwidget.c.
2020-06-05 20:35:09 +01:00
Matthias Clasen
ed985640e8
docs: Expand list widget docs
...
Begin to flesh out the long descriptions for GtkListView,
GtkGridView and GtkColumnView.
2020-06-04 15:33:53 -04:00
Santosh Mahto
ef32df77be
docs: Fix spelling of GDK_VERSION_MIN_REQUIRED.
2020-06-04 12:12:36 +05:30
Matthias Clasen
4b68362981
columnview: Add a property for column separators
...
Rename the show-separators property to show-row-separators,
and add a matching show-column-separators property. It is
implemented by setting the .column-separators style class
on the column view.
2020-06-03 17:57:23 -04:00
Matthias Clasen
03c2202942
Add rubberband api
...
Add an ::enable-rubberband property to GtkListView,
GtkGridView and GtkColumnView.
2020-06-03 13:34:27 -04:00
Matthias Clasen
28f6e27276
Add GtkMultiSelection
...
This is implemented using a private GtkSet helper.
Includes tests.
2020-06-03 13:32:57 -04:00
Matthias Clasen
2ab1b13092
columnview: Add a GtkColumnViewColumn:expand property
...
This will be used to determine how to distribute
available extra space in a column view.
2020-06-03 13:32:15 -04:00
Matthias Clasen
11b4e0d4c0
columnview: Add a GtkColumnView:reorderable property
...
This property controls if users can reorder columns
by drag-and-drop. It defaults to TRUE.
2020-06-03 13:31:39 -04:00
Matthias Clasen
66e5027756
columnview: Add a GtkColumnViewColumn:resizable property
...
This will be used for interactive column resizing
in the future.
2020-06-03 12:49:38 -04:00
Matthias Clasen
d43aacefc9
columnview: Add GtkColumnViewColumn:fixed-width
...
Add a fixed-width property similar to the same property
of GtkTreeViewColumn.
2020-06-03 12:48:39 -04:00
Matthias Clasen
f27bd061fb
columnviewcolumn: Add a menu property
...
Add a ::header-menu property that will be used
to create a context menu for the header of the
column.
2020-06-01 22:10:53 -04:00
Matthias Clasen
c6c8263704
columnview: Add column reordering
...
Add an API to allow reordering columns.
2020-05-31 21:56:30 -04:00
Matthias Clasen
4877bb5b5c
columnviewcolumn: Add a visible property
...
This lets us hide columns, which is an expected
feature of columned lists.
2020-05-31 10:47:48 -04:00
Matthias Clasen
9c849d2084
docs: Update the list widget overview
...
Fill in the GtkComboBox and GtkCellView replacements
in the quick reference table.
2020-05-30 19:31:38 -04:00
Matthias Clasen
371dab51bb
Add GtkDropDown
...
This is a simple drop down control using list models.
2020-05-30 19:31:38 -04:00
Matthias Clasen
f611d55f16
Spread single-click-activate api
...
This makes sense to have in all the views,
not just GtkListView.
2020-05-30 19:30:14 -04:00
Matthias Clasen
12b1007046
docs: Add a listview overview section
...
Add a conceptual overview for all the listmodel-based
widgets.
Fixes : #2214
2020-05-30 19:30:14 -04:00
Matthias Clasen
e3ce99988f
Add GtkTreeListRowSorter
...
This is a special-purpose sorter that can
apply the sorting of another sorter to the
levels of a GtkTreeListModel.
2020-05-30 19:30:14 -04:00
Matthias Clasen
2945430ad7
columnview: Add a sort-by api
2020-05-30 19:28:28 -04:00
Matthias Clasen
66500a6882
columnview: Add sorting
...
This is a somewhat large commit that:
- Adds GtkColumnViewSorter
This is a special-purpose, private sorter implementation which sorts
according to multiple sorters, allowing each individual sorter to be
inverted. This will be used with clickable column view headers.
- Adds a read-only GtkColumnView::sorter property
The GtkColumnView creates a GtkColumnViewSorter at startup that it uses
for this property.
- Adds a writable GtkColumnViewColumn::sorter property
This allows defining per-column sorters. Whenever an application sets a
sorter for a column, the header becomes clickable and whenever
a header is clicked, that column's sorter is prepended to the list of
sorters, unless it is already the first sorter, in which case we invert
its order. No column can be in the list more than once.
2020-05-30 19:26:46 -04:00
Matthias Clasen
2c4c07c96d
listview: Add single-click-activate
...
Add a single-click-activate property to GtkListView.
2020-05-30 19:26:46 -04:00
Matthias Clasen
2f21003064
docs: Reorganize list widgets in their own chapter
2020-05-30 19:26:46 -04:00
Benjamin Otte
efcb3a9d67
columnview: Add header
...
This uses a custom GtkColumnViewTitle widget. So far that widget is
pretty boring, but that will change once we added
resizing, reordering, dnd, sorting, hiding/showing of columns or
whatever UIs we want.
2020-05-30 19:26:46 -04:00
Benjamin Otte
326cb1148b
columnview: Add a custom LayoutManager
...
The ColumnView now allocates column widths first and then the individual
rows use the new layout manager which looks at the column allocations to
allocate their children.
2020-05-30 19:26:46 -04:00
Benjamin Otte
9927d9bda2
columnview: Add GtkColumnViewCell
...
It's a GtkListItemWidget subclass that tracks the column it belongs to
and allows the column to track it.
We also use this subclass to implement sizing support so columns share
the same size and get resized in sync.
2020-05-30 19:26:46 -04:00
Benjamin Otte
8736343544
columnview: Add listitems for the columns
...
They are not aligned in columns yet, but they do exist.
2020-05-30 19:26:46 -04:00
Benjamin Otte
30f09ea10b
listitem: Make this a GObject
...
This splits GtkListItem into 2 parts:
1. GtkListItem
This is purely a GObject with public API for developers who want to
populate lists. There is no chance to cause conflict with GtkWidget
properties that the list implementation assumed control over and
defines a clear boundary.
2. GtkListItemWidget
The widget part of the listitem. This is not only fully in control of
the list machinery, the machinery can also use different widget
implementations for different list widgets like I inted to for
GtkColumnView.
2020-05-30 19:26:46 -04:00
Benjamin Otte
f5f9f70dd0
Add GtkSignalListItemFactory
...
So the poor Rust users can actually use this.
I would totally not use this ever!
2020-05-30 19:26:46 -04:00
Benjamin Otte
03e5c6e32d
columnview: Allow adding/removing columns
...
... and make that work in UI files via <child>, too.
2020-05-30 19:26:46 -04:00
Benjamin Otte
0e1632d002
Add GtkColumnView skeleton
...
It's just a copy/paste of the listview code with all the internals
gutted. The code doesn't do anything.
2020-05-30 19:26:46 -04:00
Benjamin Otte
dd5e6d47db
Remove gtk_selection_model_user_select_item() again
...
This reverts commit 6a164ab306dad9096bde736c907494c71086d3c4.
The function was awkward and we now have only one caller again, so we
can fold it back into it.
2020-05-30 19:26:46 -04:00
Benjamin Otte
cc987b31ae
Add GtkListBase
...
This is a base item for GTK's list widgets so they can share some (read:
hopefully a lot of) code.
2020-05-30 19:26:46 -04:00
Benjamin Otte
cb2948eda6
selectionmodel: Add gtk_selection_model_user_select_item()
...
I'm not sure this should be public API because it's incredibly awkward.
But it should definitely be shared between list widget implementations.
2020-05-30 19:26:46 -04:00
Benjamin Otte
7451e51619
Add GtkTreeExpander
...
This is a container widget that takes over all the duties of tree
expanding and collapsing.
It has to be a container so it can capture keybindings while focus is
inside the listitem.
So far, this widget does not allow interacting with it, but it shows the
expander arrow in its correct state.
Also, testlistview uses this widget now instead of implementing
expanding itself.
2020-05-30 19:26:45 -04:00
Benjamin Otte
626c525706
listview: Expose GtkListItemFactory APIs
...
Due to the many different ways to set factories, it makes sense to
expose them as custom objects.
This makes the actual APIs for the list widgets simpler, because they
can just have a regular "factory" property.
As a convenience function, gtk_list_view_new_with_factory() was added
to make this whole approach easy to use from C.
2020-05-30 19:26:45 -04:00
Benjamin Otte
0174bf4345
listview: Add gtk_list_view_set_show_separators()
...
Do the same thing that GtkListBox does in commit
0249bd4f8a
2020-05-30 19:26:45 -04:00
Benjamin Otte
86a75abe51
gridview: Add API for setting number of columns
...
The API isn't used yet.
2020-05-30 19:26:45 -04:00
Benjamin Otte
70aaecc937
gtk: Add a GtkGridView skeleton
2020-05-30 19:26:45 -04:00
Benjamin Otte
b3fb80c608
listview: Add selection properties to ListItem
...
This just brings the infrastructure into place, we're not using the
properties yet.
2020-05-30 19:26:45 -04:00
Benjamin Otte
fe14181d4e
listitem: Add gtk_list_item_get_position()
...
Also refactor the whole list item management yet again.
Now, list item APIs doesn't have bind/unbind functions anymore, but only
property setters.
The item factory is the only one doing the binding.
As before, the item manager manages when items need to be bound.
2020-05-30 19:26:45 -04:00
Benjamin Otte
e1fa627158
listview: Add GtkListItem
...
GtkListItem is a generic row widget that is supposed to replace
GtkListBoxRow and GtkFlowBoxChild.
2020-05-30 19:26:45 -04:00
Benjamin Otte
9d5bb875b1
listview: Add GtkListItemManager
...
It's all stubs for now, but here's the basic ideas about what
this object is supposed to do:
(1) It's supposed to be handling all the child GtkWidgets that are
used by the listview, so that the listview can concern
itself with how many items it needs and where to put them.
(2) It's meant to do the caching of widgets that are not (currently)
used.
(3) It's meant to track items that remain in the model across
items-changed emissions and just change position.
(2) It's code that can be shared between listview and potential
other widgets like a GridView.
It's also free to assume that the number of items it's supposed to
manage doesn't grow too much, so it's free to use O(N) algorithms.
2020-05-30 19:26:44 -04:00
Benjamin Otte
e20c207a22
listview: Introduce GtkListItemFactory
...
Thisis the abstraction I intend to use for creating widgets and binding
them to the item out of the listview.
For now this is a very dumb wrapper around the functions that exist in
the API.
But it leaves the freedom to turn this into public API, make an
interface out of it and most of all write different implementations, in
particular one that uses GtkBuilder.
2020-05-30 19:26:44 -04:00
Benjamin Otte
e19c4a3372
gtk: Add a GtkListView skeleton
2020-05-30 19:26:44 -04:00
Matthias Clasen
11a1f8f36a
Redo sort list model with GtkSorter
...
Reshuffle the api to take full advantage
of GtkSorter. Update all callers.
2020-05-30 19:26:44 -04:00
Matthias Clasen
1eda9884a0
Add GtkNumericSorter
...
This sorter compares numbers obtained from items
by evaluating an expression.
2020-05-30 19:26:44 -04:00
Matthias Clasen
ae4bb2d914
Add GtkMultiSorter
...
This is a sorter that tries multiple sorters in turn.
2020-05-30 19:26:44 -04:00
Matthias Clasen
6d68c536f3
Add GtkStringSorter
...
This is a GtkSorter implementation collating strings
2020-05-30 19:26:44 -04:00
Matthias Clasen
e74a9d09e6
Add GtkCustomSorter
...
This is a GtkSorter implementation which uses a GCompareDataFunc.
2020-05-30 17:48:44 -04:00
Matthias Clasen
b2b847f365
Add GtkSorter
...
This is a helper object for sorting, similar to GtkFilter.
2020-05-30 17:48:44 -04:00
Benjamin Otte
cb15ec0257
Add GtkOrdering
...
This is an enum that we're gonna use soon and it's worth introducing as a
separate commit.
The intention is to have meaningful names for return values in
comparison functions.
2020-05-30 17:48:44 -04:00
Benjamin Otte
22659afd00
Add GtkMultiFilter, GtkAnyFilter, GtkEveryFilter
...
GtkMultiFilter is the abstract base class for managing multiple child
filter.
GtkAnyFilter and GtkEveryFilter are the actual implementations.
2020-05-30 17:42:09 -04:00
Benjamin Otte
410e7dcf5d
filter: Add GtkStringFilter
...
Users provide a search filter and an expression that evaluates the items
to a string and then the filter goes and matches those strings to the
search term.
2020-05-30 17:42:09 -04:00
Benjamin Otte
bd8655fdee
expression: Add GtkObjectExpression
...
Weak refs break cycles...
2020-05-30 17:42:09 -04:00
Benjamin Otte
e9f1ee5aab
Add GtkExpression
...
GtkExpressions allow looking up values from objects.
There are a few simple expressions, but the main one is the closure
expression that just calls a user-provided closure.
2020-05-30 17:42:08 -04:00
Benjamin Otte
4abdf695e3
filterlistmodel: Rewrite to use GtkFilter
2020-05-30 12:30:23 -04:00
Benjamin Otte
1ab081b584
Add GtkCustomFilter
2020-05-30 12:30:23 -04:00
Benjamin Otte
1df17f2fea
Add GtkFilter
2020-05-30 12:30:23 -04:00
Benjamin Otte
682e97826c
Add GtkDirectoryList
...
Adds a new listmodel called GtkDirectoryList that lists the children of
a GFile as GFileInfos.
This is supposed to be used by the filechooser.
2020-05-30 12:30:23 -04:00
Benjamin Otte
f1d6a0a4ed
widget: Add gtk_widget_get_size()
...
A little bit of convenience.
2020-05-30 10:48:02 -04:00
Matthias Clasen
346bba6592
Bring back gdk_display_put_event
...
It is still needed in WebKit.
2020-05-29 09:26:50 -04:00
Matthias Clasen
c7a9d7b56b
Merge branch 'im-context-key-forward' into 'master'
...
Add back keyboard related apis
See merge request GNOME/gtk!1977
2020-05-29 00:10:39 +00:00
Matthias Clasen
506d73cf32
Add gtk_im_context_filter_key
...
An event-less variant of the filtering api.
2020-05-28 17:08:33 -04:00
Matthias Clasen
266a3a5267
Export keymap translation again
...
This is needed in WebKit webdriver test environment.
2020-05-28 15:15:53 -04:00
Matthias Clasen
48f8affb2c
gdk: Make event-related apis private
...
Without a way to create events, there is no point
in allowing gdk_display_put_event to be used from
the outside. And little good can come out of using
the other apis, so just make them all private.
2020-05-28 14:53:08 -04:00
Yuri Chornoivan
01bd4cc4e1
Fix minor typos
2020-05-28 11:00:03 +03:00
Matthias Clasen
c42219cd5b
Add to the docs README
...
Mention markdown syntax and gtk-doc additions.
2020-05-27 11:11:30 -04:00
Emmanuele Bassi
347cb94c43
docs: Link the documentation guidelines
...
From the coding style.
2020-05-27 13:44:50 +01:00
Emmanuele Bassi
c5485cd6b1
Add the beginnings of a docs contribution guide
...
We have one for the whole project, but the documentation should have a
proper introduction and a proper style guide.
2020-05-27 13:44:50 +01:00
Emmanuele Bassi
e30c974646
Add myself to more sections
2020-05-27 13:44:50 +01:00
Emmanuele Bassi
6b6c76e3a2
docs: Remove last two steps from the release howto
...
Drop the GTK list announcements, as we don't have lists any more.
The GTK website updates itself automatically, these days.
2020-05-27 13:44:50 +01:00
Emmanuele Bassi
25a8fa73f8
docs: Turn coding style into a markdown document
...
It was mostly one already, just needed some minor fixes.
2020-05-27 13:44:50 +01:00
Matthias Clasen
f27d855c68
gdk: Drop the GdkEventMask enum
...
This is not used in public api anymore.
Some of the backends still use it internally,
so keep it in gdkinternals.h for now.
2020-05-26 19:39:31 -04:00
Matthias Clasen
0553b10214
gdk: Drop the GdkSurfaceTypeHint enum
...
This is not used in public api anymore.
Some of the backends still use it internally,
so keep it in gdkinternals.h for now.
2020-05-26 19:34:59 -04:00
Matthias Clasen
8c6bbcdc2e
docs: Mention shortcuts in the migration guide
...
Add a few paragraphs about GtkAccelGroup, GtkBindingSet
and GtkAccelMap to the migration guide.
Fixes : #2778
2020-05-25 21:27:58 -04:00
Matthias Clasen
17b5cfc924
docs: Mention pandoc as build dependency
2020-05-25 20:56:09 -04:00
Matthias Clasen
5590e2f6f2
Merge branch 'doc-chapters-markdown' into 'master'
...
Include markdown content, via pandoc
See merge request GNOME/gtk!1961
2020-05-26 00:55:10 +00:00
Matthias Clasen
ae2e548b4b
docs: Use the right python
2020-05-25 18:40:09 -04:00
Matthias Clasen
aca8090a09
docs: Convert question index to markdown
...
With this, the expand_content_files list has been
completely converted to markdown files. Whats left
in content_files is man pages, and a few special
cases.
2020-05-25 16:11:18 -04:00
Matthias Clasen
84437ee0e0
docs: Allow interrupted lists
...
We use such an interrupted, numbered list in the
q&a section, so tell pandoc to pay attention to
start numbers.
2020-05-25 16:11:18 -04:00
Matthias Clasen
dc858c9686
docs: Convert treeview and textview overview to markdown
2020-05-25 16:11:18 -04:00
Matthias Clasen
581b39a38d
docs: Allow influencing pandoc divisons
...
Arrange for files named section-foo.md to be turned
into docbook sections, while others get turned into
chapters. This is necessary to allow including such
content in chapters, since chapters in docbook don't
nest.
2020-05-25 16:11:18 -04:00
Matthias Clasen
a37b9d7578
docs: Drop the glossary
...
It is very incomplete, somewhat outdated, and
we lack the resources to maintain it properly.
2020-05-25 16:11:18 -04:00
Matthias Clasen
5a3fe9e5f5
docs: Convert resources section to markdown
2020-05-25 16:11:18 -04:00
Matthias Clasen
f44d611f77
docs: Drop a long-stale file
...
The other_software.xml section has not been included in
the docs since 2.x, as far as I can tell. It was clearly
written before GIO existed.
2020-05-25 16:11:18 -04:00
Matthias Clasen
29fb9ae2d6
docs: Convert platform sections to markdown
2020-05-25 16:11:18 -04:00
Matthias Clasen
2595cd5a93
docs: Convert getting_started to markdown
...
As part of the conversion, give up on including
sources files from the examples directory, and
instead include the content directly. All include
mechanisms add complications. They were already
complicated with xml, and markdown is not making
things easier.
We already did that for fragments, and if you
make changes to these example sources, you
probably need to revise the surrounding text
anyway.
2020-05-25 16:11:18 -04:00
Matthias Clasen
bf14d75cad
docs: Refresh the inspector screenshot
2020-05-25 16:11:18 -04:00
Matthias Clasen
b99511ee55
docs: Convert building, compiling, running to markdown
2020-05-25 16:11:18 -04:00
Matthias Clasen
3bf90b4218
doc: Check for pandoc
...
Add an explicit check for pandoc, so we get a clear
error message if it is missing.
2020-05-25 16:11:18 -04:00
Matthias Clasen
9873d983ed
docs: Convert css overview to markdown
2020-05-25 16:11:18 -04:00
Matthias Clasen
3338d24da4
docs: Be more careful when expanding abbreviations
...
We must not expand #symbol in the middle of a url,
where it is probably a fragment identifier. Restrict
problem.
2020-05-25 16:11:18 -04:00
Matthias Clasen
10cd539104
wip: Include markdown content, via pandoc
...
Use pandoc to convert freestanding markdown files to docbook for
inclusion in the generated docs, and use bits and pieces of
gtk-doc code to continue expanding typical gtk-doc abbreviations.
The new tool for markdown -> docbook is a python script called
gtk-markdown-to-docbook.
The markdown dialect is specified via a list of pandoc extension
in gtk-markdown-to-docbook. It includes header annocations,
definition lists and tables, among other things.
This commit converts the 3 overview chapters (drawing, input
handling and actions) and the migration guide to markdown
syntax. Other files that are still listed in content_files
can be converted later.
This commit adds a pandoc dependency.
2020-05-25 16:11:18 -04:00
Matthias Clasen
e4623fd0c4
Add GtkOverlayLayout to the docs
2020-05-25 15:18:14 -04:00
Matthias Clasen
5e25ba6c5a
Merge branch 'no-app-menu' into 'master'
...
Drop the app menu
Closes #2731
See merge request GNOME/gtk!1951
2020-05-22 23:46:56 +00:00
Matthias Clasen
1038b9b8a1
docs: Mention app menus in the migration guide
2020-05-22 18:46:51 -04:00
Matthias Clasen
79d6a77d58
gtkapplication: Drop app menu support
...
Drop apis and code related to appmenus from
both GtkApplication and GtkApplicationWindow.
We still keep the menubar support, since it
is needed for system integration on OS X.
Fixes : #2731
2020-05-22 17:31:05 -04:00
Matthias Clasen
33b836af7f
fixed: Change coordinate apis to doubles
...
We are using floating point for coordinates
everywhere now, so be consistent here.
This commit also changes the implementation of
gtk_fixed_get_child_position to work with
non-translation child transforms.
2020-05-22 17:26:08 -04:00
Matthias Clasen
edf85cb1b3
docs: Refresh the build and backend sections
...
Remove some outdated information from the sections
about building and about particular backends.
2020-05-19 15:19:53 -04:00
Matthias Clasen
287c40276a
gdk: Drop gdk_display_supports_shapes
...
The apis to set shapes on surfaces are gone,
so there is no point in providing this information
on GdkDisplay.
2020-05-17 21:52:15 -04:00
Matthias Clasen
93d4253c93
native: Make gtk_native_get_surface_transform public
...
This api is needed to translate between surface
and widget coordinates.
2020-05-17 16:01:08 -04:00
Matthias Clasen
c0faf0c6b6
Merge branch 'toplevel-move-resize' into 'master'
...
Toplevel move resize
See merge request GNOME/gtk!1923
2020-05-17 19:15:46 +00:00
Matthias Clasen
b63690aa6b
docs: Mention begin_resize_drag in the migration guide
2020-05-17 14:38:10 -04:00
Benjamin Otte
b353221185
Merge branch 'wip/otte/monitors' into 'master'
...
various GDK cleanups
See merge request GNOME/gtk!1920
2020-05-17 16:57:52 +00:00
Matthias Clasen
eb6edac4bd
gdk: Drop gdk_surface_begin_move/resize_drag
...
These have been replaced by GdkToplevel api.
2020-05-17 12:49:29 -04:00
Matthias Clasen
309a7aa253
gdk: Add gdk_toplevel_begin_move/resize
...
For now, these are wrappers around the surface apis,
but they are going to replace them, since this operation
is only available on toplevels.
2020-05-17 12:41:16 -04:00
Benjamin Otte
363c88cef7
migration guide: Update paragraph about monitors
...
Clarify the new handling of monitors via a listmodel of GdkMonitor
instead of int monitor_num.
2020-05-17 18:05:07 +02:00
Benjamin Otte
4c7914dc49
display: Remove unneeded getters
...
Applications can use the listmodel instead.
2020-05-17 07:32:37 +02:00
Benjamin Otte
d4731a4ab4
x11: Remove gdk_x11_register_standard_event_type()
...
It's not used anymore since GdkX11Display::xevent exists.
2020-05-17 01:02:17 +02:00
Benjamin Otte
0c6266fd1a
surface: Remove gdk_surface_is_viewable()
...
It returns the same value as gdk_surface_get_mapped(), so use that
instead.
2020-05-17 00:41:44 +02:00
Alexander Mikhaylenko
9f761feb93
docs: Mention GtkHeaderBar title and subtitle changes in migration guide
2020-05-14 19:51:19 +05:00
Benjamin Otte
dd7d76f389
gdk: Add gdk_display_get_monitors()
...
Returns a GListModel of GDK_TYPE_MONITOR.
This will replace the current andling of monitors in GdkDisplay.
2020-05-13 07:00:35 +02:00
Matthias Clasen
450879b1da
Merge branch 'matthiasc/for-master' into 'master'
...
Documentation work
See merge request GNOME/gtk!1880
2020-05-12 14:52:01 +00:00
Emmanuele Bassi
e8c4b8338f
docs: Mention blocking functions in the migration guide
...
Link to how to make a dialog modal, and to the response signal.
2020-05-12 13:45:15 +01:00
Emmanuele Bassi
d54b7dec94
Remove gtk_dialog_run()
...
Nested main loops are bad, as they introduce layers of complexity caused
by the potential re-entrancy in the case of multiple event sources, like
IPC, threads, etc. Additionally, the programming model they provide—stop
the world while spinning a new loop—does not conform to the event-driven
model employed by GTK.
2020-05-12 13:45:15 +01:00
Emmanuele Bassi
5d272a12cb
Remove gtk_native_dialog_run()
...
Nested main loops are bad, as they introduce layers of complexity caused
by the potential re-entrancy in the case of multiple event sources, like
IPC, threads, etc. Additionally, the programming model they provide—stop
the world while spinning a new loop—does not conform to the event-driven
model employed by GTK.
2020-05-12 13:15:19 +01:00
Matthias Clasen
6df8bf7dde
docs: Updates to the migration guide
...
Remove some duplicated content, reorder things
to make more sense, and tweak the wording.
2020-05-12 07:50:17 -04:00
Matthias Clasen
072adbf079
docs: Updates to the common questions
...
Refresh the answers to some common questions.
2020-05-12 01:03:34 -04:00
Matthias Clasen
1ef6a35f3e
docs: Don't point at mailing lists
...
Replace references to the mailing lists by
discourse + irc.
2020-05-12 01:02:49 -04:00
Matthias Clasen
91f0fcde96
docs: Rearrange the introduction some more
...
Fine-tune some wording, and move the Custom Drawing
example earlier.
2020-05-12 01:02:07 -04:00
Matthias Clasen
848a8a792e
docs: Update migration guide
...
Add sections about GtkBin, GtkContainer and gtk_widget_destroy().
2020-05-11 22:38:21 -04:00
Matthias Clasen
5ebd42d402
Drop GtkContainer and its accessible implementation
...
It is no longer used.
2020-05-11 22:38:21 -04:00
Matthias Clasen
2a24b8c653
Replace most remaining uses of container api
...
These are all on GtkBox or enumerating children.
2020-05-11 22:38:21 -04:00
Matthias Clasen
665edcba53
box: Add gtk_box_append/prepend/remove
...
Add replacement api for gtk_container_add/remove.
2020-05-11 22:38:21 -04:00
Matthias Clasen
d59d9d4bd5
headerbar: Add gtk_header_bar_remove
...
This is a replacement for gtk_container_remove.
2020-05-11 22:21:39 -04:00
Matthias Clasen
88141103cd
Don't use container api on GtkListBox
2020-05-11 22:21:39 -04:00
Matthias Clasen
ff91ce9eb4
listbox: Add gtk_list_box_remove
...
This is a gtk_container_remove replacement.
2020-05-11 22:21:39 -04:00
Matthias Clasen
2f7f6e6a37
flowbox: Add gtk_flow_box_remove
...
This is the replacement for gtk_container_remove.
2020-05-11 22:21:39 -04:00
Matthias Clasen
5e0c1e6a86
stack: Add gtk_stack_remove
...
This is a replacement for gtk_container_remove.
2020-05-11 22:21:39 -04:00
Matthias Clasen
96d707444d
fixed: Add gtk_fixed_remove
...
This is the replacement for gtk_container_reomve.
2020-05-11 22:21:39 -04:00
Matthias Clasen
5cda824784
grid: Add gtk_grid_remove
...
This is a replacement for gtk_container_remove.
2020-05-11 22:21:39 -04:00
Matthias Clasen
12ca08c382
infobar: Add gtk_info_bar_add/remove_child
...
This is a replacement for container api that is going away.
2020-05-11 22:21:39 -04:00
Matthias Clasen
78d20b9301
infobar: Add gtk_info_bar_remove_action_widget
...
This is mainly for completeness, since gtk_container_remove
will not work for those anymore.
2020-05-11 22:21:39 -04:00
Matthias Clasen
bc6643f3c2
paned: Redo the api
...
This commit is porting GtkPaned to be derived
from GtkWidget instead of GtkContainer, while adding
start-child and end-child properties. The existing
properties are renamed to follow the start/end naming
scheme, and we add proper getters and setters.
Update all users.
See #2719
2020-05-11 22:21:33 -04:00
Matthias Clasen
6b80d90db5
expander: Add a child property
2020-05-11 22:21:14 -04:00
Matthias Clasen
c0f090627a
actionbar: Add gtk_action_bar_remove
...
This is a replacement for gtk_container_remove.
2020-05-11 20:33:23 -04:00
Matthias Clasen
aeef59fda9
textview: Derive from GtkWidget
...
Drop the GtkContainer vfuncs. As a replacement for
gtk_container_remove, make gtk_text_view_remove public.
2020-05-11 20:33:23 -04:00
Matthias Clasen
cc28a7b0ef
Merge branch 'wip/tintou/doc-fixes' into 'master'
...
docs: Fix several missing references in the documentation
See merge request GNOME/gtk!1874
2020-05-11 18:40:34 +00:00
Corentin Noël
076b2f11d2
docs: Fix several missing references in the documentation
...
This fixes several typos and missing references
2020-05-11 19:26:20 +02:00
Matthias Clasen
6d969d1026
Update the docs
...
Remove various references to gtk_widget_destroy in the docs.
2020-05-11 12:20:59 -04:00
Matthias Clasen
1306727fb1
window: Remove _set_has_user_ref_count
2020-05-11 12:20:59 -04:00
Matthias Clasen
0f10b170f4
widget: Drop gtk_widget_destroy
2020-05-11 12:20:59 -04:00
Matthias Clasen
cd0081d08a
Use gtk_window_destroy
...
Replace calls to gtk_widget_destroy on windows
with gtk_window_destroy.
2020-05-11 12:20:57 -04:00
Matthias Clasen
48821a64d0
window: Add gtk_window_destroy
...
This is a replacement for gtk_widget_destroy for toplevels.
For now, it is just a wrapper.
2020-05-11 12:19:39 -04:00
Matthias Clasen
573b20a8f8
Drop gtk_widget_destroyed
...
Use g_object_add_weak_pointer or a weak reference instead.
2020-05-11 12:19:39 -04:00
Matthias Clasen
9f3fb69dce
Merge branch 'matthiasc/for-master' into 'master'
...
Matthiasc/for master
Closes #2729 and #2730
See merge request GNOME/gtk!1870
2020-05-11 12:51:08 +00:00
Matthias Clasen
d2430c70bd
Refresh the tutorial examples
...
Redo this series of examples from 2013, and adapt it to modern
way of doing things. The biggest differences are that we use
a headerbar right from the start, and don't mention the app
menu.
Fixes : #2730
2020-05-11 08:15:56 -04:00
Matthias Clasen
0fc1a290e2
docs: Cosmetic updates to the tutorial
...
Since the meson conversion, we are no longer expanding
gtk-doc references in this file, so take them out. And
touch up the wording in various places.
2020-05-11 08:15:55 -04:00
Matthias Clasen
edc31a264c
widget: Add a :focusable property
...
Add back a property that determines whether an individual
widget will accept focus or not. :can-focus prevents the
focus from ever entering the entire widget hierarchy
below a widget, and :focusable just determines if grabbing
the focus to the widget itself will succeed.
See #2686
2020-05-10 23:24:48 -04:00
Alexander Mikhaylenko
8bd44cb3eb
Add GtkWindowHandle
...
This will allow to move the titlebar handling logic out from GtkWindow.
2020-05-07 23:57:58 +05:00
Matthias Clasen
8ad49b33ed
gestureclick: Drop the area
...
This is a rarely used api, and our general trend has been
to use widgets whenever we need an area singled out.
2020-05-06 14:19:50 -04:00
Matthias Clasen
b96509c030
Merge branch 'wip/baedert/for-master' into 'master'
...
Wip/baedert/for master
See merge request GNOME/gtk!1828
2020-05-06 03:55:55 +00:00
Timm Bäder
14b27446a3
stylecontext: Remove _list_classes() from public API
...
Applications can use gtk_widget_get_css_classes these days.
2020-05-05 08:20:09 +02:00
Matthias Clasen
4735d38e31
docs: Fixup for an uninitialized variable
2020-05-04 22:53:08 -04:00
Matthias Clasen
3c165b3b77
Drop GtkBin
...
It is no longer used anywhere.
2020-05-04 22:53:08 -04:00
Matthias Clasen
ec394e805b
Use gtk_combo_box_set_child throughout
2020-05-04 22:53:08 -04:00
Matthias Clasen
5d26af06e4
combobox: Add a child property
2020-05-04 22:53:08 -04:00
Matthias Clasen
b96d7b62d1
Add gtk_overlay_remove_overlay
...
Now that GtkOverlay is not a container anymore,
gtk_container_remove can't be used for this anymore,
so add a separate api.
2020-05-04 22:53:08 -04:00
Matthias Clasen
53f9737dcf
overlay: Add a child property
2020-05-04 22:53:08 -04:00
Matthias Clasen
e2abe6dd29
searchbar: Add a child property
2020-05-04 22:53:08 -04:00
Matthias Clasen
b8d1a9eb0d
flowboxchild: Derive from GtkWidget
...
We want to remove GtkBin and GtkContainer as they don't
provide much useful functionality anymore.
See #2681
2020-05-04 22:53:08 -04:00
Matthias Clasen
686be577d5
revealer: Add a child property
2020-05-04 22:53:08 -04:00
Matthias Clasen
f59f355190
Use gtk_window_set_child throughout
...
Replace all uses of gtk_container_add on windows
by gtk_window_set_child.
2020-05-04 22:53:08 -04:00
Matthias Clasen
b9b1bf85e1
window: Add a child property
2020-05-04 22:53:07 -04:00
Matthias Clasen
af6e0ee2b3
Use gtk_button_set_child throughout
...
Replace all uses of gtk_container_add on buttons
by gtk_button_set_child.
2020-05-04 22:53:07 -04:00
Matthias Clasen
04e4a02cd0
button: Add a child property
2020-05-04 22:53:07 -04:00
Matthias Clasen
67759d4c3e
Use gtk_scrolled_window_set_child throughout
...
Replace all uses of gtk_container_add on popovers
by gtk_scrolled_window_set_child.
2020-05-04 22:53:07 -04:00
Matthias Clasen
54b613392b
scrolledwindow: Add a child property
2020-05-04 22:53:07 -04:00
Matthias Clasen
ee284a560a
popover: Add a child property
2020-05-04 17:01:18 -04:00
Matthias Clasen
937c94bab5
viewport: Add a child property
2020-05-04 17:01:18 -04:00
Matthias Clasen
e137152520
aspectframe: Add a child property
2020-05-04 17:01:18 -04:00
Matthias Clasen
1706b80815
Use gtk_frame_set_child throughout
...
Replace all uses of gtk_container_add for
frames with gtk_frame_set_child.
2020-05-04 17:01:18 -04:00
Matthias Clasen
7f975472a7
frame: Add a child property
2020-05-04 17:01:18 -04:00
Matthias Clasen
fd1fe0eed5
Merge branch 'matthiasc/for-master' into 'master'
...
docs: Add more detail to the drawing overview
See merge request GNOME/gtk!1811
2020-05-01 21:09:38 +00:00
Benjamin Otte
fa90747815
Merge branch 'wip/exalm/headerbar-title' into 'master'
...
Headerbar title/subtitle cleanups
See merge request GNOME/gtk!1807
2020-05-01 19:39:27 +00:00
Matthias Clasen
431545877e
docs: Add more detail to the drawing overview
2020-05-01 14:24:21 -04:00
Alexander Mikhaylenko
739f681076
headerbar: Rename custom-title to title-widget
...
Now that all the other title-related properties are gone, custom title can
have a more mundane name.
2020-05-01 20:11:19 +05:00
Alexander Mikhaylenko
c2e4e1af73
headerbar: Remove user-settable title
...
Use window title, or custom title widget if it's set. Remove 'title'
property.
Update demos and tests to set the title on the window instead of
headerbar.
2020-05-01 19:48:05 +05:00
Alexander Mikhaylenko
35d50f88c8
headerbar: Remove subtitle
...
Also remove the box containing title and subtitle, as there's only one
label now.
2020-05-01 19:48:05 +05:00
Alexander Mikhaylenko
43a453e465
headerbar: Remove has-subtitle property
...
Subtitle will go too in the next commit, but has-subtitle goes first as
it's broken right now anyway.
2020-05-01 19:48:05 +05:00
Matthias Clasen
74dcbae1f3
docs: Some revisions of the input overview
...
Remove some less than accurate details, and add
an illustration.
2020-05-01 09:26:06 -04:00
Matthias Clasen
5f01f6f36b
Drop GtkStack:homogeneous
...
We have hhomogeneous and vhomogeneous properties
that can be set individually.
Fixes : #2673
2020-04-28 20:00:12 -04:00
Matthias Clasen
7f1e82d1bc
Merge branch 'wip/exalm/titlebuttons' into 'master'
...
GtkWindowControls + GtkHeaderBar cleanups
See merge request GNOME/gtk!1755
2020-04-26 13:09:35 +00:00
Alexander Mikhaylenko
b5d61eb2c8
docs: Add GtkWindowControls to docs
2020-04-26 15:13:15 +05:00