Timm Bäder
19871cfd68
snapshot: Add & use API for linear gradient nodes
...
This way, we can also clip the created node bounds to the current clip
of the GtkSnapshot. This works as long as we don't modify the start and
end points, and happens all the time while rendering.
2017-12-21 18:25:52 +01:00
Timm Bäder
d9f1620b2f
snapshot: Directly clip color nodes
...
Clipping a color node is trivial so we do it here directly since that
might later save the entire clip node as well as freeing the fragment
shaders from coloring lots of pixels that will be clipped away.
2017-12-21 18:25:52 +01:00
Timm Bäder
8107b1a2dd
snapshot: Fix typo
2017-12-21 18:25:51 +01:00
Timm Bäder
964c6f7d58
x11: Fix wrong condition when unsetting transient-for
...
Setting a new transient-for parent is only possible if the given parent
window is valid, not when it is NULL or valid.
2017-12-21 18:25:51 +01:00
Matthias Clasen
1c3f343baf
Remove font-name leftovers
...
There were still a few places where the font-name
property was used internally.
2017-12-21 12:18:53 -05:00
Matthias Clasen
559a2bf033
Add a missing include
2017-12-21 12:18:10 -05:00
Matthias Clasen
6ff3222cbd
font button: Drop the font-name property
...
We already have the GtkFontChooser::font property
which serves the same purpose, so get rid of the
duplication.
2017-12-21 11:10:44 -05:00
Matthias Clasen
9620e1e97f
tests: Stop using gtk_font_button_get_font_name
...
It is going away.
2017-12-21 11:10:13 -05:00
Matthias Clasen
8581345acc
Remove debug spew
2017-12-21 08:04:26 -05:00
Matthias Clasen
495d00e925
Fix a mis-merge
2017-12-20 10:36:25 -05:00
Matthias Clasen
22f9562928
Implement font-feature-settings
...
This is a missing part of the CSS font level 3 module.
2017-12-20 10:31:30 -05:00
Matthias Clasen
6042b82964
Update the docs for GtkCssChange
...
The docs were out of sync with the flags we actually have.
2017-12-20 08:46:03 -05:00
Carlos Garnacho
f93837ceb2
gdk: Remove leftover variable
...
This is unused and leaked.
2017-12-19 22:58:51 +01:00
Matthias Clasen
5478bd59bf
Fix a crash introduced in the previous commit
...
The signatures of row-inserted and row-deleted are not
identical, so we need to be a bit more careful here.
2017-12-19 14:17:55 -05:00
Matthias Clasen
1b05474979
font chooser: Simplify some code
...
Instead of separate handlers, just keep a single
handler for both row-inserted and row-deleted.
Slightly less work that way.
2017-12-19 12:10:47 -05:00
Matthias Clasen
e5154547f8
font chooser: Stop listening to style-updated
...
The only time a style-updated indicates we need
to reload fonts is when it is synthesized by GtkSettings
in response to a fontconfig timestamp change, but
we are listening to those already, anyway.
2017-12-19 11:45:56 -05:00
Timm Bäder
827d04c482
gtk4-demo: Fix font-features UI file
2017-12-19 09:46:27 +01:00
Timm Bäder
f393552fec
x11: Guard against NULL window
...
Otherwise, the NULL parent window causes a crash in the
GDK_WINDOW_IS_DESTROYED call.
2017-12-19 07:39:37 +01:00
Timm Bäder
fcbbaae63c
window: Make sure an event has a display
...
This fixes a crash happening later on when something tries to access the
event's display.
2017-12-19 07:39:29 +01:00
Matthias Clasen
675a4111e9
emoji: Skip overly wide fallback rendering
...
Some emoji fonts (such as Emoji One), render Emoji sequences
such as some of the family variations using multiple individual
glyphs. This rendering is too wide and breaks our grid layout.
Therefore, we will just skip any sequence whose rendering is
more than twice as wide as a simple smiley.
2017-12-17 22:11:24 -05:00
Matthias Clasen
22269902ed
Avoid calling unsetenv too late
...
Stash the DESKTOP_AUTOSTART_ID env var in a constructor,
before any threads have been created.
https://bugzilla.gnome.org/show_bug.cgi?id=790963
2017-12-17 17:32:05 -05:00
Matthias Clasen
845f2657db
cups: Warn only once if colord is not available
...
No need to keep complaining about this.
https://bugzilla.gnome.org/show_bug.cgi?id=791650
2017-12-17 17:09:55 -05:00
Matthias Clasen
08c699c745
wayland: Handle scale 3 for cursors
...
This is just a bandaid solution to make scale 3 work.
If people seriously want to go for scales larger than
that, we need a better solution.
2017-12-17 16:41:54 -05:00
Matthias Clasen
9a7624b47a
inspector: Allow to bump scale to 3
...
Might as well allow this, for 'large scale testing'.
2017-12-17 16:40:10 -05:00
Matthias Clasen
21064a41b5
Remove unneeded deprecation guards
...
No deprecated api used in here, it seems.
2017-12-17 13:15:18 -05:00
Matthias Clasen
1293209d23
Don't place dnd cursor in placeholder text
...
That is just misleading - the entire placeholder text is going
to be replaced by the drop.
2017-12-17 10:52:33 -05:00
Benjamin Otte
f824439137
dnd: Get rid of IPC widgets
...
Instead, pass the source window to gdk_drag_begin().
Also make Wayland use this window instead of the one under the pointer
(though those 2 Windows are most likely the same anyway).
2017-12-16 02:48:12 +01:00
Benjamin Otte
3438dcdd4e
x11: Add necessary NULL check
2017-12-16 02:48:12 +01:00
Benjamin Otte
8f6194a883
dnd: Remove unused function
...
The function was referencing itself in ways that bamboozled gcc:
static void
foo (void)
{
g_signal_handlers_disconnect_by_func (NULL, foo, NULL);
}
Well done, function, you get your own commit!
2017-12-16 02:48:12 +01:00
Benjamin Otte
aab86f8b98
x11: Try getting ipc_window vs source_window right
...
This is in preparation for splitting these. Unfortunately, source_window
== ipc_window, so this isn't very debuggable yet.
2017-12-16 02:48:12 +01:00
Benjamin Otte
510581e0ef
x11: Use gdk_drag_context_get_display()
2017-12-16 02:48:12 +01:00
Benjamin Otte
5f326d7ec6
x11: Create IPC window outselves
...
Ignore the passed in IPC window.
2017-12-16 02:48:12 +01:00
Matthias Clasen
4573d2d19b
listbox: Fix a crash during keynav
...
The code was asserting something that was not always holding
true. We can hit row == NULL here on page-up too. Handle that
case by moving to the first row.
https://bugzilla.gnome.org/show_bug.cgi?id=791549
2017-12-15 18:48:50 -05:00
Benjamin Otte
cb9867cb48
dnd: Remove handler for nonexisting signal
...
The signal has been gone since e3e9bf4bea
2017-12-15 23:57:33 +01:00
Benjamin Otte
31119c89df
gtk: Remove unused include
2017-12-15 23:53:18 +01:00
Benjamin Otte
a04afde35c
gdk: Remove DRAG_STATUS and DROP_FINISHED events
...
Those are source-side events that are handled by signals of the
Dragontext these days.
2017-12-15 23:48:36 +01:00
Matthias Clasen
61843d60b2
x11: Avoid crash in fallback move emulation
...
Quietly do nothing when there is already an ongoing operation.
This matches the behavior of the ewmh code, and is much nicer
than a crash.
https://bugzilla.gnome.org/show_bug.cgi?id=789054
2017-12-15 16:19:09 -05:00
Juan Pablo Ugarte
e0ce028c88
css: Fix segfault when GtkCssStyleChange is NULL on gtk_widget_real_style_updated()
...
https://bugzilla.gnome.org/show_bug.cgi?id=791281
2017-12-15 10:28:21 -03:00
Matthias Clasen
a326884df8
Mention keymaps in the migration guide
...
Just another bullet point.
2017-12-15 07:48:36 -05:00
Matthias Clasen
fa27d171d0
Drop gdk_keymap_get_for_display
...
It has been replaced by gdk_display_get_keymap.
2017-12-15 07:46:35 -05:00
Matthias Clasen
e92c0e85ec
Replace gdk_keymap_get_for_display by gdk_display_get_keymap
...
Replace all uses of the old function by the new one.
No functional change.
2017-12-15 07:44:58 -05:00
Matthias Clasen
1012bbeecf
Add gdk_display_get_keymap
...
This is just a better name for gdk_keymap_get_for_display.
2017-12-15 06:53:13 -05:00
Matthias Clasen
fd85ff0c7a
Drop gdk_keymap_get_default()
...
It is better to use the explicit keymap getter - the
default display may not even use the current gdk backend.
2017-12-14 23:57:54 -05:00
Matthias Clasen
9194ee4973
gdk: Drop GDK_DAMAGE
...
We haven't been generating events of this type
since we dropped offscreen windows.
2017-12-14 23:35:08 -05:00
Matthias Clasen
65fc43a1f3
Drop GDK_CLIENT_EVENT
...
We never generate events of this type, so no need
to carry it around.
2017-12-14 22:55:03 -05:00
Matthias Clasen
8d42ab6b91
gdk: Remove explicit event type numbering
...
The numeric values of event types are irrelevant,
so we don't need to declare them explicitly.
2017-12-14 22:43:53 -05:00
Matthias Clasen
bcf570cc16
Move code around
...
gdk_window_set_state is now an ordinary (private) setter,
so it should live in gdkwindow.c.
2017-12-14 22:35:27 -05:00
Matthias Clasen
11a946df39
gdk: Drop GdkEventWindowState
...
No longer generate this event. Instead, emit change
notification for GdkWindow::state.
2017-12-14 22:24:06 -05:00
Matthias Clasen
a4a2ecb21a
widget: Remove the ::window-state-event signal
...
We no longer use this signal, so remove it.
2017-12-14 22:24:06 -05:00
Matthias Clasen
0313b8f0bc
gtk: Stop handling GdkEventWindowState
...
These events have been superseded by GdkWindow::state.
2017-12-14 22:24:06 -05:00