Matthias Clasen
6ebd2d384b
fix the build
2017-11-07 19:56:11 -05:00
Matthias Clasen
284fd36e5d
Fix symbolic.svg rendering
...
With the shader approach to symbolic recoloring, we must
not recolor the svgs anymore as we're loading them. Instead,
load them the same way that gtk-encode-symbolic-svg does.
This fixes the rendering of large symbolic icons e.g. the
'no search results found' page in the file chooser.
2017-11-07 18:56:32 -05:00
Benjamin Otte
f80a90d39a
widget: Don't leak the cursor on destruction
2017-11-06 03:28:34 +01:00
Piotr Drąg
08d5ed5875
placessidebar: correct quotation marks in a new string
2017-11-05 21:18:53 +01:00
Alexandru Pandelea
2421e745b9
placessidebar: add starred location item
...
Add an item for showing all files marked as favorite. This item will
open all files that have the nao:predefined-tag-favorite tag
https://bugzilla.gnome.org/show_bug.cgi?id=785176
2017-11-05 21:02:04 +01:00
Benjamin Otte
1cee71049a
emojichooser: animate the adjustment
...
... instead of doing a dance with the scrolled window to get it to scroll
the adjustment.
2017-11-05 16:12:35 +01:00
Benjamin Otte
c4ecc0993a
flowbox: Don't call get_allocation()
...
That's wome outdated workaround code from the last version of GTK3.
2017-11-05 14:46:01 +01:00
Benjamin Otte
73077c4e90
viewport: Implement clipping for picking
...
This is necessary because picking is no longer automatically constrained
to a widget's box. So all clipping widgets need to constrain their
clipping, too.
This patch does that for GtkViewport only.
2017-11-05 07:19:22 +01:00
Benjamin Otte
e8b2493680
aboutdialog: Clean up for logo being a texture
2017-11-05 06:50:28 +01:00
Benjamin Otte
22472c1924
entry: Remove surface icons
...
We have texture icons.
2017-11-05 06:45:01 +01:00
Benjamin Otte
0f5d807cae
iconhelper: Don't render to surface anymore
...
Just go directly to texture.
2017-11-05 06:30:45 +01:00
Benjamin Otte
bc552e74d8
menubutton: Don't fiddle with prelight state
2017-11-05 05:13:17 +01:00
Benjamin Otte
4ee02725b4
themes: Do expander arrow :hover properly
...
We want to prelight the arrow even when the label is hovered.
2017-11-05 05:13:17 +01:00
Benjamin Otte
e3effc8df2
expander: Don't do :hover yourself
...
GTK does it for you.
2017-11-05 05:13:17 +01:00
Benjamin Otte
c4a9fa9865
range: Stop trying to be smarter than GTK
...
GTK deals with PRELIGHT properly itself now, so there's no need to try
do it manually.
2017-11-05 05:13:17 +01:00
Benjamin Otte
4bb9a6360f
range: Use gtk_widget_pick() to pick the mouse location
...
That's rather unsuccessful so far because it requires skipping a bunch
of irrelevant widgets, but oh well...
2017-11-05 05:13:17 +01:00
Benjamin Otte
994287b71f
widget: Make gtk_widget_pick() really slow
...
We cannot fast-track picking by using gtk_widget_contains(). Child
widgets may extend their parent using ie negative margins.
This is not just a theoretical concern, this is what's happening right
now with GtkScale's sliders relative to the trough.
The problem is that we now iterate through all widgets, even when they
aren't anywhere near the mouse pointer. So essentially every pick
operation is now guaranteed O(N_WIDGETS) which used to be the worst case
that pretty much never happened.
2017-11-05 05:13:17 +01:00
Benjamin Otte
cf1cd19b61
range: Stack widgets properly
...
The trough widgets have the slider on top of the fill level and the
hilight widget. Make sure the widget stacking respects that.
This is particularly relevant because picking event targets should pick
the slider and not the hilight widget.
2017-11-05 05:13:17 +01:00
Benjamin Otte
897fdaf1c0
entry: Texture properties are objects
...
Carelessly copy/pasting made them boxeds. Oops.
2017-11-05 05:13:17 +01:00
Benjamin Otte
cf2d549e92
widget: Implement gtk_widget_pick()
...
... and use it.
2017-11-05 05:13:17 +01:00
Benjamin Otte
8d849458ac
docs: You can't modify textures
...
So there's no need to tell people they must not do that.
2017-11-05 00:07:17 +01:00
Benjamin Otte
70846c85b3
window: Make icons GdkTextures
...
Cairo surfaces are bad, mkay?
2017-11-05 00:07:17 +01:00
Benjamin Otte
b4b7c27274
aboutdialog: Make logo a texture property
...
Get rid of cairo surfaces!
2017-11-05 00:07:17 +01:00
Benjamin Otte
b12a53406d
builder: Mirror GdkPixbuf abilities for GdkTexture
...
In particular, allow specifying a filename for a GDK_TYPE_TEXTURE
property. This makes it easy to transition properties from Pixbuf type
to Texture type without having to touch resource files.
2017-11-05 00:07:17 +01:00
Benjamin Otte
2d959553e9
image: Add the ability to set textures
...
This also adds it to all other places that use the same infrastructure:
GtkEntry and GtkCellRendererPixbuf
2017-11-05 00:07:17 +01:00
Emmanuele Bassi
481b5d1b89
Partially revert GskTexture → GdkTexture rename
...
Excessive use of sed when moving GskTexture to GDK; the GskTextureNode
should still live under the GSK namespace.
2017-11-04 15:06:00 +00:00
Benjamin Otte
c5a631b999
inspector: Unrealize renderer before unreffing
...
See previous patch for a description on why that is necessary.
`
2017-11-04 15:22:25 +01:00
Benjamin Otte
a0ff63e162
iconhelper: Compute surface size without icon helper
...
This is so we can do the next batch of changes
2017-11-04 15:22:25 +01:00
Benjamin Otte
197eeade74
textview: Use gtk_widget_set_cursor()
...
This currently breaks because we still use GdkWindows. Soon...
2017-11-04 15:22:25 +01:00
Benjamin Otte
f7646cf541
textview: Remove GdkWindow usage from the public API
...
A sideeffect is that we don't set the correct parent window on child
widgets anymore, but that is hopefully going to be fixed once we get rid
of child windows completely.
2017-11-04 15:22:25 +01:00
Benjamin Otte
a409320cda
gtk: Use gtk_widget_set_cursor()
...
... and gtk_widget_set_cursor_from_name() instead of setting cursors on
GdkWindows.
2017-11-04 01:37:03 +01:00
Benjamin Otte
b38a4cb824
widget: Export gtk_widget_set_cursor()
...
Widgets can now set their favorite cursor using public API.
This is very necessary because all cursor-setting APIs are still
setting it on their GdkWindow, which by now is the toplevel - oops.
2017-11-04 01:00:27 +01:00
Benjamin Otte
9323d098a6
gdk: Cursors no longer have a display
...
Change constructors to reflect that.
While doing so, also add a fallback argument to the cursor constructors,
so it is now possible to create cursors with fallback.
2017-11-04 00:07:13 +01:00
Benjamin Otte
ca3c23662c
GskTexture => GdkTexture
...
We want this thing to replace GdkPixbuf, so it has to live in GDK.
2017-11-04 00:07:13 +01:00
Carlos Garnacho
b8d3f88ddb
gtkwindow: Use event target widget for WM handling special paths
...
The check used to achieve discarding events not meant for the window
widget itself (because they are handled in the regular paths). Using
the target widget is the equivalent now.
2017-11-03 22:19:13 +01:00
Kjell Ahlstedt
23014438d6
GtkWindow: Tidy up after icon became a cairo surface
...
Use g_value_set/get_boxed() in gtk_window_get/set_property(), case PROP_ICON.
icon_from_list() shall always add a reference to the returned icon.
gtk_window_set_icon() must accept icon != NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=789870
2017-11-03 20:05:28 +01:00
Timm Bäder
11b8f27b76
notebook: Fix setting show-tabs
...
show-tabs=FALS means the notebook is not supposed to show tabs,
regardless of whether it has a current page or not.
2017-11-03 11:22:44 +01:00
Timm Bäder
2603fa0cc3
notebook: Remove useless call to gtk_widget_reset_style
2017-11-03 11:22:44 +01:00
Timm Bäder
4f4ac29cd2
glarea: Use content size of the widget
...
For buffer sizes, etc. We only draw in the content area after all.
2017-11-03 10:47:02 +01:00
Timm Bäder
018daaeea8
rendernodeview: Use content size instead of allocated size
2017-11-03 10:47:02 +01:00
Timm Bäder
2283cbad92
colorplane: Use content size everywhere
2017-11-03 10:47:02 +01:00
Timm Bäder
34f3c6bd52
revealer: Create clip node for right widget size
...
It should use gtk_widget_get_width/height here to get the correct
content size of the revealer.
2017-11-03 10:47:02 +01:00
Benjamin Otte
f33c20920b
x11: Add API to query root window and screen from GdkDisplay
2017-11-02 12:42:16 +01:00
Timm Bäder
8f55647fbb
widget: Add get_width() and get_height()
2017-11-02 11:54:06 +01:00
Timm Bäder
dea8233663
widget: Remove stray prototype
...
gtk_cairo_transform_to_window is gone.
2017-11-02 11:25:41 +01:00
Matthias Clasen
fa5e3ee54e
label: Stop using gdk_cursor_new_for_display
...
We prefer to use the name-based api for cursors nowadays.
2017-11-01 21:19:31 -04:00
Matthias Clasen
81cda3dcf7
Use x11-specific api to get at the screen
...
gdk_display_get_default_screen is going away.
2017-11-01 19:44:28 -04:00
Matthias Clasen
e41936c19c
Fix a typo
...
A display is not of type GDK_TYPE_SCREEN.
2017-11-01 19:44:28 -04:00
Benjamin Otte
bd6b6ed93c
gdk: Remove VisibilityNotify events
2017-11-01 22:00:34 +01:00
Benjamin Otte
c0ccad56f9
widget: Don't tell people to wait for nonexisting events
2017-11-01 22:00:34 +01:00
Daniel Boles
f24b286417
Adwaita: Fix Entry:has-frame if backdrop/disabled
...
by explicitly including these in the selector removing the border, to
avoid other rules on these pseudoclasses overriding the .flat class.
https://bugzilla.gnome.org/show_bug.cgi?id=789733
2017-11-01 20:24:56 +00:00
Daniel Boles
a58a5219b9
HighContrast: Fix GtkEntry:has-frame not working
...
• Remove the box-shadow at the top when the entry is in the foreground
• Bump precedence so that :disabled entries do not have .flat overridden
• Also add :backdrop to stop HCInverse getting a lighter BG in :backdrop
https://bugzilla.gnome.org/show_bug.cgi?id=789733
2017-11-01 20:24:55 +00:00
Daniel Boles
ff66de366c
Inspector: better default split of CSS nodes/props
...
Move the default pos of the Paned handle to 400px from the left, i.e.
50% of the default width of the window. The previous position at 300px
from left meant the node treeview was too narrow & could easily result
in the (useful) State column not being visible in the case of many
apps. The properties pane doesn't need to be as big as it was anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=788898
2017-11-01 20:24:55 +00:00
Benjamin Otte
9d51134459
entry: Remove unused variable
2017-11-01 20:55:41 +01:00
Benjamin Otte
801d69017a
switch: Use gtk_widget_contains()
2017-11-01 20:52:57 +01:00
Benjamin Otte
b6e0c9392a
button: Use gtk_widget_contains()
2017-11-01 20:50:33 +01:00
Benjamin Otte
9b0d9aa7a6
wayland: Remove unused variable
2017-11-01 20:09:06 +01:00
Benjamin Otte
d88c441764
widget: Add gtk_widget_contains()
2017-11-01 19:46:59 +01:00
Matthias Clasen
606345cbaa
Change the fullscreen-on-monitor api
...
Use GdkMonitor here, since that is our primary monitor
object now, and GdkScreen is going away.
2017-11-01 14:17:20 -04:00
Benjamin Otte
2d31a5499a
gdk: Remove gdk_get_display_arg_name()
...
Since we're no longer allowing arguments, this is always NULL now.
2017-11-01 18:26:34 +01:00
Benjamin Otte
b880296354
window: Unset transient parent in set_display()
...
If somebody changes a window's display, the transient parent cannot
stay if it's on a different display.
2017-11-01 18:17:11 +01:00
Benjamin Otte
8059f9bb3a
window: Clear the renderer un unrealize
...
We disconnect from the GDK window, so the renderer can't keep any useful
state.
Plus, we might be using an entirely different window next time we
realize (after a call to gtk_window_set_display() for example) that should
use a completely different renderer anyway.
2017-11-01 15:48:00 +01:00
Matthias Clasen
31b7555b7b
Stop using screen resolution
...
This api is going away.
2017-10-31 18:53:29 -04:00
Matthias Clasen
a27bfaa0a3
Drop the GDK_DPI_SCALE variable
...
It complicates the dpi handling, and was really just a workaround
for non-dpi aware applications when hidpi support was first introduced.
2017-10-31 18:37:54 -04:00
Matthias Clasen
0cd88cd6b7
Stop using gdk_pango_get_context_for_display
...
The function does nothing useful for us.
2017-10-31 17:52:24 -04:00
Matthias Clasen
85e209a9c3
dnd: Remove remnants of screen tracking
...
There is only one screen nowadays, no need to track it.
2017-10-31 17:25:01 -04:00
Julian Sparber
2c42d8d6ed
AboutDialog: Fix accepting GTK_LICENSE_AGPL_3_0
...
Add the ‘new’ GTK_LICENSE_AGPL_3_0 to the allowed enum range checked in
gtk_about_dialog_set_license_type(), so this value can actually be used.
https://bugzilla.gnome.org/show_bug.cgi?id=789678
2017-10-31 18:56:26 +00:00
Benjamin Otte
2740f5eeee
inspector: Fix property being "display" now
2017-10-31 18:37:48 +01:00
Matthias Clasen
a3cffa5072
Drop GdkScreen from GdkDevice apis
...
Returning the screen does not add anything here and
GdkScreen is going away.
2017-10-31 12:30:38 -04:00
Matthias Clasen
f8cad19829
dnd: Drop GdkScreen from apis
...
Drop the screen argument from gdk_dnd_find_window_for_screen
and rename the function to gdk_dnd_find_window. The screen
argument does not add anything here since the drag context
is already tied to the display. Update all backends, and
update all callers.
2017-10-31 10:18:10 -04:00
Timm Bäder
c97e2af23b
widget: Make invalidation coordinates widget-relative
...
Consider the coordinates passed to gtk_widget_queue_draw_region to be
relative to @widget's origin, not its parent. That implies passing
priv->allocation or priv->clip to _queue_draw_region of a widget means
using its parent as @widget.
This fixes GtkScrolledWindow overshoot invalidation, which assumed the
coordinates to be widget-relative and not parent-relative.
2017-10-31 10:10:53 +01:00
Timm Bäder
3dca25b6e4
textview: Remove {top,bottom,left,right}_border
...
These are now the same as the equivalent _margin values.
2017-10-31 10:10:53 +01:00
Timm Bäder
3c0657f0fd
textview: Stop fiddling with CSS padding
...
This is done automatically now and doing it again here means we apply
the padding twice.
2017-10-31 10:10:53 +01:00
Timm Bäder
45c03a9263
widget: Rename color variable to match the color
2017-10-31 10:10:53 +01:00
Timm Bäder
23a1328fda
viewport: Simplify child allocation
...
allocation->x and allocation->y are always 0
2017-10-31 10:10:53 +01:00
Timm Bäder
f576002e9e
widget: Improve get_request_mode vfunc docs
2017-10-31 10:10:53 +01:00
Timm Bäder
099990fcbe
gskpango: Remove GDK api macros
...
They only belong on public functions.
2017-10-31 10:10:53 +01:00
Benjamin Otte
3967072c66
docs: Fix up some places that still said screen instead of display
2017-10-31 08:25:37 +01:00
Benjamin Otte
ccd52a410e
settings: Remove gtk_settings_get_for_screen()
...
All users of it are gone now.
2017-10-31 08:25:37 +01:00
Benjamin Otte
648d040395
widget: Remove gtk_widget_get_screen()
...
Replace the remaining users with "correct" code that does not need that
function anymore.
2017-10-31 08:25:37 +01:00
Benjamin Otte
4a43229d0b
invisible: Make it use display, not screen
2017-10-31 08:25:37 +01:00
Benjamin Otte
b9504a547a
mountoperation: Move from screen to display
2017-10-31 08:25:37 +01:00
Benjamin Otte
07164e098a
window: Turn gtk_window_set_screen() into gtk_window_set_display()
...
And have a priv->display instead of a priv->screen.
Includes turning gtk_menu_set_screen() into gtk_menu_set_display(),
because that function just forwards to its window.
2017-10-31 08:25:37 +01:00
Benjamin Otte
941a621ea9
styleprovider: Fix fallout from merge
...
StyleProvider should inherit from GObject, not from itself.
2017-10-31 06:17:40 +01:00
Benjamin Otte
e8053622eb
gtk: Fix debug build
...
It seems I didn't have debug builds enabled and forgot some
return_if_fail()s when doing the last patch.
2017-10-31 06:10:26 +01:00
Benjamin Otte
83fb7a649f
css: Merge GtkStyleProviderPrivate into GtkStyleProvider
...
This is just lots of renaming.
The interface remains private, so the public API does not change, apart
from removing the definition of the Interface object to avoid
subclassing.
2017-10-31 04:33:54 +01:00
Benjamin Otte
c8986e66ce
window: Remove gtk_window_get_screen()
...
It's identical to gtk_widget_get_screen(), just use that one.
2017-10-31 04:33:54 +01:00
Benjamin Otte
1c36c6ed4d
widget: Remove gtk_widget_has_screen()
...
All widgets always have a screen (or display).
2017-10-31 04:33:11 +01:00
Matthias Clasen
c20d217d8f
printoperation: Stop using gdk_app_launch_context_set_screen
...
It is not necessary.
2017-10-30 23:01:01 -04:00
Matthias Clasen
f63d01b782
gtk: Stop using gdk_event_get_screen
...
Use gdk_event_get_display instead.
2017-10-30 22:22:00 -04:00
Benjamin Otte
ecd5b399a4
icontheme: Use GdkDisplay instead of GdkScreen
2017-10-31 03:05:55 +01:00
Benjamin Otte
9151e0b9f5
stylecontext: Port to use display instead of screen
2017-10-31 03:05:54 +01:00
Benjamin Otte
cb0c7d6cf3
immulticontext: Remove unused variable
2017-10-31 00:44:35 +01:00
Benjamin Otte
44614394e6
widget: Turn screen-changed signal into display-changed
2017-10-31 00:43:11 +01:00
Benjamin Otte
59cfd56365
settings: Don't store the screen in the settings object
...
Screens are going away.
Code that still needs the screen just gets it from the display.
2017-10-31 00:42:32 +01:00
Matthias Clasen
9e5f4f94b3
immulticontext: Avoid GdkScreen api
...
No need for it here either.
2017-10-30 19:30:29 -04:00
Matthias Clasen
297889e080
immodule: Avoid GdkScreen api
...
Another place where it is not needed.
2017-10-30 19:27:36 -04:00
Matthias Clasen
24903e3fab
modules: Avoid GdkScreen api
...
No need for this here either.
2017-10-30 19:19:38 -04:00
Matthias Clasen
0cd864283f
assistant: Avoid GdkScreen api
...
There is no need at all here to use gtk_settings_get_for_screen.
2017-10-30 19:19:38 -04:00
Matthias Clasen
a1a5f556cb
Some documentation updates
...
Document gtk_settings_get_for_display instead of for_screen.
2017-10-30 18:59:41 -04:00