Commit Graph

29872 Commits

Author SHA1 Message Date
Timm Bäder
846a6e8157 tooltip: Fold a function into its only caller 2018-01-12 22:34:22 +01:00
Timm Bäder
abc0f67cf6 main: Set event user data earlier
event_widget is not modified anymore after the assignment from
handle_pointing event and we need the event's user data set for the
_gtk_window_check_handle_wm_event call.
2018-01-12 22:34:22 +01:00
Matthias Clasen
0f76228c15 docs: Mention textures in the GtkImage docs
This is now the preferred way to load images.
2018-01-10 16:43:17 -05:00
Timm Bäder
185525a58d scrolledwindow: Remove workarounds
Instead of making sure here that the scrollbars are the last children,
just add the bin child as first one and keep the scrollbars last.
2018-01-10 16:36:59 +01:00
Timm Bäder
6652beae65 magnifier: gtk_snapshot_finish may return NULL 2018-01-10 16:36:59 +01:00
Timm Bäder
60d3378dd1 entry: Fix text clipping
Clipping the text to the entire widget allocation is wrong if there are
icons involved.
2018-01-10 11:02:10 +01:00
Timm Bäder
6235b12ca4 entry: Fix get_text_allocation
These should be reported in GtkEntry coordinates, so relative to the
entry's origin. This fixes entrys with top/bottom padding applied.
2018-01-10 10:49:13 +01:00
Timm Bäder
77769a52b3 adwaita: Add some spacing to the scale value
So the slider does not overlap the value label. Since the value label is
allocated at the widget edge in gtk3, the correct fix here would
probably be to remove the 12px padding we apply to the entire scale and
instead apply it only to the trough.
2018-01-10 10:11:31 +01:00
Timm Bäder
15b3f33965 adwaita: Fix scale styling for latest changes 2018-01-10 09:29:45 +01:00
Timm Bäder
b9531e3a7c scale: Allocate marks widget along the trough 2018-01-10 09:29:05 +01:00
Timm Bäder
31974e02ca renderbackground: Avoid excess css value lookups
We iterate over all background layers twice, so only lookup blend mode
vlaues once.
2018-01-10 08:46:22 +01:00
Timm Bäder
5e39f3c23b renderbackground: Add some constness 2018-01-10 08:46:22 +01:00
Timm Bäder
c9e6fcd5fa renderbackground: Pull out a gdk_rgba_is_clear check
We only call snapshot_color once, and this way it's clearer that nothing
will happen for a clear color from the caller side.
2018-01-10 08:46:22 +01:00
Timm Bäder
1a8b9e9180 widget: Refine docs a bit 2018-01-10 08:46:22 +01:00
Matthias Clasen
4dbae1d4bf Drop unused GDK_GL values
And document the existing ones.
2018-01-10 00:02:23 -05:00
Matthias Clasen
124a7969eb Drop another unused debug value
GTK_DEBUG_MULTIHEAD is unused as well.
2018-01-09 23:07:08 -05:00
Matthias Clasen
92e6557015 Remove an unused debug value
GTK_DEBUG_MISC is not used at all. Drop it.
2018-01-09 22:56:40 -05:00
Matthias Clasen
0fe6d76ab6 Make size request warnings more useful
Print the css name of the widget in question, so we have
a chance of knowing that this is caused by the marks, not
by the slider.
2018-01-09 17:48:51 -05:00
Matthias Clasen
4908b5ef54 Fix file chooser
Now that the places sidebar is private, we need to
ensure the type is known.
2018-01-09 17:20:23 -05:00
Matthias Clasen
9a3b61ec9d Drop GtkPlacesSidebar from public API
This is a bit of filechooser internals that gets shared with
nautilus, which is fine, but it shouldn't be part of our
public API. There are no other users than nautilus.
2018-01-08 14:38:55 -05:00
Timm Bäder
8f3cb2658a inspector: Stop adding event controllers to the object tree
There's a dedicated "Gesture" page for all the gestures.
2018-01-08 19:23:06 +01:00
Timm Bäder
0aca394a96 adwaita: Uncomment accidentally commented lines
The result looks wrong but the css looks right.
2018-01-08 17:44:37 +01:00
Timm Bäder
9a68c068a8 treeview: Stop rendering focus outline
This is done on a widget-level via css these days.
2018-01-08 17:44:37 +01:00
Timm Bäder
16cf4637e9 widget: Fix css padding debug drawing 2018-01-08 17:44:37 +01:00
Matthias Clasen
5ce2d77691 toolbutton: Fix off-center icons
When the toolbar style is both-horiz, and the item
is not important, we were not centering the icon in the
same way as in gtk3. The reason is that we overlooked
the expand child property being set to TRUE in this case.
2018-01-07 12:44:35 -05:00
Daniel Boles
b89bf98731 ScrolledWindow: add() before remove() in snippet
We can't remove() a child widget that wasn't already add()ed, of course.
2018-01-07 16:47:24 +00:00
Ting-Wei Lan
14b181ebd4 build: Use pkg-config to find iso-codes
Instead of hard-coding the path of iso-codes, we can get the prefix with
pkg-config. We still fallback to /usr when it is not available.

https://bugzilla.gnome.org/show_bug.cgi?id=792282
2018-01-07 14:53:41 +08:00
Rico Tzschichholz
3c38ebb906 filechooser: Add missing array annotations to add_choice() 2018-01-06 09:34:44 +01:00
Rico Tzschichholz
6e6e6d774f iconview: Prevent ownership transfer of cell out-param in get_item_at_pos() 2018-01-06 09:27:44 +01:00
Matthias Clasen
258e504c6a Implement equal for GtkCssImageUrl
This should in theory speed some things up if the same
image is used in multiple places.
2018-01-05 17:15:44 -05:00
Matthias Clasen
36e09f3ad9 label: Properly handle multi-line selections
They were rendered as a single rectangle, which is not
what is expected. Same for multi-line links.
2018-01-05 15:54:49 -05:00
Matthias Clasen
c8770b3c63 file button: Don't leak rows
The file chooser button manually manages the memory of
data in its model, so it needs to explicitly free the
rows.
2018-01-05 11:50:22 -05:00
Matthias Clasen
98da7730ea label: Plug a memory leak
We were sometimes leaking the content serializer object.
2018-01-04 22:24:43 -05:00
Matthias Clasen
3dd3ae1b9d font chooser: Plug a memory leak
We were leaking the hb_font object.
2018-01-04 22:24:21 -05:00
Matthias Clasen
e41e8c4c53 font chooser: Fix a memory leak
We were leaking the delayed font descriptions.
2018-01-04 21:19:28 -05:00
Timm Bäder
7479e6cb50 notebook: Fix wrong tab widgets allocation
Since we allocate the tab widgets on demand, we have to queue an extra
resize here.
2018-01-04 21:41:35 +01:00
Timm Bäder
85fa396176 widget: Avoid casting event coordinates to int in contains() 2018-01-04 21:41:35 +01:00
Matthias Clasen
8a5b6d422f fontchooser: fix feature formatting
There was a " missing, causing some features to be missed.
2018-01-04 08:39:18 -05:00
Timm Bäder
33162eee1a window: Fix an event widget/target mixup
This makes dragging inside a GtkEntry in the window decoration work
again.
2018-01-04 13:16:24 +01:00
Timm Bäder
a89e88fc3e widget: Ignore non-gestures in _gtk_widget_consumes_motion
priv->event_controllers is a list of all event controllers, which aren't
all GtkGesture subclasses.
2018-01-04 13:15:15 +01:00
Timm Bäder
62ccf8743a filechooser: Manage spinner state
So we don't get an allocate every frame.
2018-01-04 12:20:27 +01:00
Timm Bäder
f55be762e2 recorder: Fix a button tooltip
This button will save the selected node to a file, not all recorded
frames.
2018-01-04 12:20:27 +01:00
Matthias Clasen
a79f950dfe font chooser: Manage tweak button sensitivity
When we don't have any font features or variation axes,
there is no point in going to the tweak page, so disable
the action in this case.
2018-01-03 14:06:00 -05:00
Matthias Clasen
34b4de09fc font chooser dialog: Improve sensitivity handling
We should not tie the sensitivity of the select button
to the tweak action, since there may be fonts which are
selectable, but not tweakable.

Instead, enable the select button when a font is selected,
as it should be.
2018-01-03 14:05:33 -05:00
Matthias Clasen
7687393583 font chooser: Don't set hardcoded default features
We should rely on harfbuzz to select the right defaults.
2018-01-03 13:41:20 -05:00
Matthias Clasen
4cc68a97a8 font chooser: Support font variations
Add sliders for the available axes to the tweak page.
2018-01-03 13:28:33 -05:00
Matthias Clasen
379970082a font button: Take variations into account
We need to apply variations too, when we are using
the font to render the button label.
2018-01-03 13:07:55 -05:00
Matthias Clasen
fb51e438e9 Implement font-variation-settings
This is a CSS font level 4 property that lets us
use font variation settings from css.
2018-01-03 13:07:55 -05:00
Matthias Clasen
894a0c0ff4 font chooser: Add properties for features and language
These can't be returned as part of the font description,
so we need new api for them. For now, this is just readonly
properties. Maybe these should be writable too, eventually.
2018-01-03 12:18:18 -05:00
Matthias Clasen
ade33c6e14 Add font features on the tweak page 2018-01-03 12:18:18 -05:00
Matthias Clasen
15f8b2d0ae font chooser: Add a tweak page
Add a button the dialog's header bar that lets us
switch to a second page where we can customize
the selected font.

Make the font chooser widget export an action that the
dialog can use for the button. This has some advantages:
- we can export not just the toggle state, but also enabled
- we can reuse the same enabled state to make the select
  button insensitive when no font is selected

To determine whether a font is selected, listen to changes
of the list selection. And ensure that the font chooser is
in an initial state when mapped, even if we close the dialog
from the tweak page.
2018-01-03 12:18:18 -05:00
Matthias Clasen
70bae02612 font button: Remove show-font and show-size
These are now handled in a more systematic fashion
using GtkFontChooserLevel.
2018-01-03 12:18:18 -05:00
Matthias Clasen
f0526359d1 font chooser: introduce font chooser levels
This is a more systematic approach to reducing the
level of detail in the font chooser.
2018-01-03 12:18:18 -05:00
Matthias Clasen
78f9193d7e font chooser: Small revision of the UI
Show only the font names in the list, in their own
font, in order to make the list less noisy.
2018-01-03 12:18:18 -05:00
Timm Bäder
3f68475b6f Make a few more code samples compile 2018-01-03 17:11:32 +01:00
Timm Bäder
5cd138f0f2 entry: Remove some questionable code examples 2018-01-03 17:11:32 +01:00
Timm Bäder
614bcefa21 widget: Make all code snippets compile 2018-01-03 17:11:32 +01:00
Timm Bäder
cba24360b1 Move geometry management docs do GtkWidget
Both GtkWidget and GtkContainer had similar docs regarding hfw/wfh
geometry management. Move these just to GtkWidget. Also make sure the
examples compile, port everything from gtk_preferred_* to measure and
replace some occurrences of "container" with "widget" where container
was just used to refer to a widget with child widgets.
2018-01-03 17:11:32 +01:00
Timm Bäder
e8376f5c01 liststore: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
3744bbdc27 searchbar: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
cf9942e3cc menuitem: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
3d9421509c expander: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
9f86cb2b4e treeviewcolumn: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
1c267398ef notebook: Make a code snippet compile 2018-01-03 17:11:32 +01:00
Timm Bäder
4a999cbd1f scrolledwindow: Fix code sample compilation 2018-01-03 17:11:32 +01:00
Matthias Clasen
a25357007e Fix pointer obscuring in text view
The code for hiding the mouse cursor until the next motion
event was not working, probably due to a typo here.
2018-01-02 21:52:43 -05:00
Arnaud Bonatti
f1e3b503de Make GtkListBoxRow GtkActionable.
https://bugzilla.gnome.org/show_bug.cgi?id=741633
2018-01-02 17:56:10 -08:00
Matthias Clasen
9f94736c92 Remove selection-handling leftovers
The selection_get and selection_received vfuncs are
no longer used, remove them.
2018-01-02 18:14:14 -05:00
Matthias Clasen
12e4f4256d Drop an unused enum value
We haven't had a GtkWindow::frame-event since the
linux-fb backends demise.
2018-01-02 18:14:13 -05:00
Matthias Clasen
5f608a1d07 Revert "inspector: Stop using GtkWidget::event"
This reverts commit 1268440c35.

Turns out we'll keep ::event, so this was misguided.
2018-01-02 18:14:08 -05:00
Matthias Clasen
750341414d Revert "treeviewcolumn: Stop using GtkWidget::event"
This reverts commit da74314779.

Turns out we'll keep ::event, so this was misguided.
2018-01-02 18:14:04 -05:00
Matthias Clasen
506b436f09 Revert "text handler: Stop using GtkWidget::event"
This reverts commit 74f563b501.

Turns out we'll keep ::event, so this was misguided.
2018-01-02 18:13:34 -05:00
Matthias Clasen
361a3885b5 spinner cell: Avoid a crash
The icon helper is not used, so no point in crashing
while trying to destroy it.
2018-01-02 18:05:30 -05:00
Matthias Clasen
d072201b12 docs: Don't mention non-longer-existing signals
The ::window-state-event signal no longer exists.
2018-01-02 18:05:19 -05:00
Timm Bäder
355b883f32 stack-allocate GtkCssLookup instances 2018-01-02 08:36:10 +01:00
Timm Bäder
9ef700b161 css parser: Reuse one GString
Instead of creating a new one for every ident, name and string, just
create one GString and reuse it. This means the GString we keep around
will grow to the maximum size of any ident, name or string we parse,
which is still not terribly large.
2018-01-02 08:10:06 +01:00
Daniel Boles
ab0edd1091 themes: missing specificity bump on expander arrow
Commit 4ee02725b4 made the :hover apply to
the title node, not the arrow node, but the selectors it added were not
caught by the recent commits fixing the specificity of title > arrow.
2018-01-01 21:22:23 +00:00
Daniel Boles
3bcbf4cf4e themes: Regenerate CSS to reflect recent commits
a lot of them, in this case
2018-01-01 19:53:43 +00:00
Daniel Boles
4878eea06b HighContrast: Avoid expander↔combobox interference
as per commit 4241c4bdbd
2018-01-01 18:54:13 +00:00
Matthias Clasen
17bad98084 emoji: Accept unpaired releases for variations
This enables a single long-press-move-release gesture
for picking a variation. This is not perfect yet: We
don't get hover in this case.
2017-12-30 23:24:22 -05:00
Matthias Clasen
72c9853999 list, flow box: Make unpaired releases opt-in
We don't want a pointer that is moved off a scrollbar
to trigger a row when it gets released. To avoid this,
require an explicit opt-in to handling unpaired-releases.
2017-12-30 23:23:16 -05:00
Matthias Clasen
1be0b6d2d5 dnd: Drop docs that are no longer relevant
We no longer take an event as argument, so no
need to explain how to obtain a suitable event.
2017-12-30 22:46:28 -05:00
Matthias Clasen
74f563b501 text handler: Stop using GtkWidget::event
This signal is going away.
2017-12-30 22:38:14 -05:00
Matthias Clasen
da74314779 treeviewcolumn: Stop using GtkWidget::event
This signal is going away.
2017-12-30 22:27:54 -05:00
Matthias Clasen
1268440c35 inspector: Stop using GtkWidget::event
This signal is going away.
2017-12-30 22:13:45 -05:00
Matthias Clasen
7d659b21e6 Drop deprecated text view layers
These have been marked as deprecated, so lets drop them.
2017-12-29 13:13:36 -05:00
Arnaud Rebillout
25523e60c3 gtk: remove non-breaking space, probably there by mistake
Signed-off-by: Arnaud Rebillout <elboulangero@gmail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=791710
2017-12-29 12:51:31 -05:00
Timm Bäder
c1573a1fda window: Avoid a set-but-not-used warning 2017-12-29 08:59:53 +01:00
Timm Bäder
a61eecc22e snapshot: Don't create clip nodes with 0 width or height 2017-12-28 16:48:35 +01:00
Matthias Clasen
4241c4bdbd Adwaita: Avoid expander<>combobox interference
Putting a combobox in an expander was causing the combo arrow
to go sideways. Increase the specificity with which we address
the expander arrow to avoid that.
2017-12-28 08:40:39 -05:00
Matthias Clasen
e90787d975 fontchooser: Add global keynav
Starting to type should focus the search entry and start
a search.
2017-12-27 17:29:24 -05:00
Matthias Clasen
06ad134876 Add an unrealize function to GtkLabel
We need to drpo the primary clipboard when the label
is getting unrealized while holding it. This fixes
a crash in the accessibility-dump test.
2017-12-26 23:33:39 -05:00
Matthias Clasen
c176d0c3d8 Simplify ui files
Run gtk3-builder-tool simplify over all our ui files.
2017-12-26 23:12:37 -05:00
Matthias Clasen
8c10849094 Avoid excess notification for GdkEventControllerScroll::flags
We have a test that checks this, and it is the right thing to do.
2017-12-26 20:06:06 -05:00
Matthias Clasen
8d9414c228 Avoid excess notification for GdkCellRendererPixbuf::icon-size
We have a test that checks this, and it is right thing to do.
2017-12-26 20:06:06 -05:00
Matthias Clasen
f307fa99a5 Drop gratitious use of GdkPoint
This is the only use of this undocumented struct,
and it does not make this code any better. Just drop it.
2017-12-26 13:00:27 -05:00
Matthias Clasen
d04f66eb52 Add GtkIconSize back to the docs
And document how it works now.
2017-12-26 08:40:43 -05:00
Matthias Clasen
b379ca3e02 check button: Fix inconsistent state
This has been broken since the inconsistent state
was moved here in 2aea8dfee9.
2017-12-25 11:36:39 -05:00
Emmanuele Bassi
f27dd8834b docs: Add missing signal parameter
The `flags` parameter is missing, and the introspection scanner is
complaining about it.
2017-12-21 19:00:28 +00:00
Emmanuele Bassi
18a56cd795 build: Ensure we introspect the print operation sources
The documentation and annotations for some of the print API is defined
in platform-specific source files, so we need to ensure we're passing
those files to the introspection scanner in order to avoid warnings, and
to get the appropriate introspected API.
2017-12-21 18:57:25 +00:00