gtk4.git
7 years agodnd: Remove gdk_drag_status() and gdk_drag_finish()
Benjamin Otte [Thu, 14 Jun 2018 02:57:10 +0000 (04:57 +0200)]
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().

7 years agosurface: Kill event masks
Benjamin Otte [Thu, 14 Jun 2018 02:13:59 +0000 (04:13 +0200)]
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.

7 years agox11: Store the source surface as an XID
Benjamin Otte [Thu, 14 Jun 2018 01:41:57 +0000 (03:41 +0200)]
x11: Store the source surface as an XID

Don't create a foreign GDK surface, just store the XID.

With this, we can avoid GDK APIs that we want to get rid of and just
use the X counterpart.

7 years agox11: Split drag and drop contexts
Benjamin Otte [Thu, 14 Jun 2018 00:47:56 +0000 (02:47 +0200)]
x11: Split drag and drop contexts

While doing so, turn the drop context into a GdkDrop subclass and no
longer pretend to be a GdkDragContext.

7 years agox11: Handle events on drag side differently
Benjamin Otte [Wed, 13 Jun 2018 19:36:23 +0000 (21:36 +0200)]
x11: Handle events on drag side differently

Instead of using the filters that the drop side uses, handle events in
the event filter installed by the DragContext.

7 years agox11: Change the way local Drop => Drag is shortcut
Benjamin Otte [Wed, 13 Jun 2018 13:30:43 +0000 (15:30 +0200)]
x11: Change the way local Drop => Drag is shortcut

This is one step further towards untangling drag and drop parts of X11
DND.

7 years agox11: Remove unused argument
Benjamin Otte [Wed, 13 Jun 2018 03:41:39 +0000 (05:41 +0200)]
x11: Remove unused argument

The propagate argument is always FALSE, so just use FALSE everywhere.

7 years agox11: switch a bunch of variable types
Benjamin Otte [Wed, 13 Jun 2018 03:32:08 +0000 (05:32 +0200)]
x11: switch a bunch of variable types

GdkDragContext => GdkDrop

This is all in preparation of separation of the drag and drop.

Also, don't check for GDK_DRAG_PROTO_XDND anymore - it's the only
possible value for the protocol on the target side.

7 years agobroadway: Remove unused variable
Benjamin Otte [Wed, 13 Jun 2018 02:54:27 +0000 (04:54 +0200)]
broadway: Remove unused variable

7 years agodnd: Remove gdk_drag_context_get_dest_surface()
Benjamin Otte [Wed, 6 Jun 2018 05:43:58 +0000 (07:43 +0200)]
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.

7 years agodnd: Implement gtk_drag_get_source_widget() differently
Benjamin Otte [Thu, 7 Jun 2018 03:18:52 +0000 (05:18 +0200)]
dnd: Implement gtk_drag_get_source_widget() differently

Instead of keeping a list of source contexts, just use the current
drag's info.

7 years agox11: Replace the hardcoded DND filter
Benjamin Otte [Wed, 6 Jun 2018 02:55:55 +0000 (04:55 +0200)]
x11: Replace the hardcoded DND filter

Use the new method of connecting to the xevent signal instead.

Also, don't consume the xevent, there might be other code listening for
it. And we don't use PropertyNotify in the generic code path anymore, so
it'll just be ignored there.

7 years agoGDK W32: Remove unused files
Руслан Ижбулатов [Tue, 5 Jun 2018 23:37:10 +0000 (23:37 +0000)]
GDK W32: Remove unused files

7 years agoGDK W32: Adapt to GdkDrop and GdkDragContext changes
Руслан Ижбулатов [Tue, 5 Jun 2018 23:03:51 +0000 (23:03 +0000)]
GDK W32: Adapt to GdkDrop and GdkDragContext changes

* Remove clipdrop->dnd_target_state, it's not used anymore
* Remove non-functioning _gdk_dropfiles_store(), store dropfiles
  list in GdkWin32Drop instead
* Fix multiple comment typos
* Fix _gdk_win32_get_clipboard_format_name_as_interned_mimetype() to
  leave names that look like mime/types alone
* Refactor _gdk_win32_add_w32format_to_pairs() to populate
  GdkContentFormatsBuilder directly, instead of making a GList
* Rename context -> drag (still using GdkDragContext type,
  but [almost?] all variables and comments say "drag" now)
* Rename GdkDropContext -> GdkDrop
* Rename some parameter names for clarity
* Rewrite local protocol to look more like OLE2 protocol
  instead of mirroring the structure of the X11 API.
* Add handle_events field to GdkWin32DragContext,
  to shut off event handling (temporary fix until GTK is patched up)
* Remove _gdk_win32_drag_context_find() - the drag object is stored
  in GdkDrop instead. Use _gdk_win32_find_drag_for_dest_surface()
  to get it initially.
* Remove target_ctx_for_window, droptarget context is stored
  in the surface instead.
* Call gdk_drag_context_set_cursor() just like wayland backend does
  (slightly broken for now)
* Clean up the action choosing code (filter source actions by using
  keyboard state, pass that to GTK, get all actions supported by GTK in
  response, match them up with filtered source actions, return the
  result, falling back to COPY in case of multiple actions)
* Check drag_win32->protocol instead of the use_ole2_dnd variable where
  possible
* Remove protocol checks from functions that are only used by the local
  protocol
* Use event state to manufacture the keyboard state for WM_MOUSEMOVE
* Change function names printed by GDK_NOTE to name the actual
  functions, not their theoretical generic GDK stack ancestors
* Consistently use drag_win32 and drop_win32 variables instead of a mix
  of that and win32_drag/win32_drop
* Return FALSE from button handler to ensure that GTK gets the button
  event to break implicit grab
* Emit leave event on failed idroptarget_drop() calls

7 years agodnd: Add read_value() and read_text() functions to GdkDrop
Benjamin Otte [Sat, 2 Jun 2018 04:24:23 +0000 (06:24 +0200)]
dnd: Add read_value() and read_text() functions to GdkDrop

These just copy what GdkClipboard does.

7 years agodrop: Implement shortcut for local DND
Benjamin Otte [Thu, 31 May 2018 19:45:22 +0000 (21:45 +0200)]
drop: Implement shortcut for local DND

Now that we have the drop->drag, we can use the same shortcut we use in
the clipboard code to shortcut DND operations.

7 years agox11: Pass the drag source when creating a drop context
Benjamin Otte [Thu, 31 May 2018 19:24:08 +0000 (21:24 +0200)]
x11: Pass the drag source when creating a drop context

7 years agox11: Find dest drops differently
Benjamin Otte [Thu, 31 May 2018 19:18:04 +0000 (21:18 +0200)]
x11: Find dest drops differently

Instead of looking at the list of contexts, just look at the current
drop context. There is only one, after all.

Then remove the is_source argument from gdk_drag_context_find().

7 years agowayland: Store the current drag operation
Benjamin Otte [Thu, 31 May 2018 19:15:59 +0000 (21:15 +0200)]
wayland: Store the current drag operation

Use it to detect local drags when creating drop objects.

7 years agodnd: Move GdkDragAction to gdktypes.h
Benjamin Otte [Wed, 30 May 2018 19:12:43 +0000 (21:12 +0200)]
dnd: Move GdkDragAction to gdktypes.h

That way, both gdkdrag.h and gdkdrop.h can use it without one having to
include the other.

7 years agogdk: Remove leftover type from autocleanup
Benjamin Otte [Wed, 30 May 2018 19:04:05 +0000 (21:04 +0200)]
gdk: Remove leftover type from autocleanup

7 years agowayland: Get rid of GdkWaylandSelection
Benjamin Otte [Wed, 30 May 2018 02:37:47 +0000 (04:37 +0200)]
wayland: Get rid of GdkWaylandSelection

Move data source handling into the DND code instead.

7 years agowayland: Split drop context into GdkWaylandDrop
Benjamin Otte [Wed, 30 May 2018 02:04:51 +0000 (04:04 +0200)]
wayland: Split drop context into GdkWaylandDrop

GdkWaylandDrop no longer inherits from GdkDragContext now.

7 years agowayland: Remove a bunch of unused functions
Benjamin Otte [Wed, 30 May 2018 02:04:39 +0000 (04:04 +0200)]
wayland: Remove a bunch of unused functions

7 years agoevents: Make GdkEventDND have a GdkDrop member
Benjamin Otte [Tue, 29 May 2018 18:49:41 +0000 (20:49 +0200)]
events: Make GdkEventDND have a GdkDrop member

... instead of a GdkDragContext.

7 years agox11: Refactor DND filter
Benjamin Otte [Tue, 29 May 2018 18:44:32 +0000 (20:44 +0200)]
x11: Refactor DND filter

The filters now return TRUE/FALSE and no longer a GdkFilterReturn. They
also don't conform to the GdkFilterFunc typedef anymore but instead take
the arguments that they need.

7 years agox11: Use new DND event emitters
Benjamin Otte [Tue, 29 May 2018 17:13:24 +0000 (19:13 +0200)]
x11: Use new DND event emitters

7 years agowin32: Use new DND event emitters
Benjamin Otte [Tue, 29 May 2018 17:00:10 +0000 (19:00 +0200)]
win32: Use new DND event emitters

7 years agowayland: Use new DND event emitters
Benjamin Otte [Wed, 23 May 2018 18:11:28 +0000 (20:11 +0200)]
wayland: Use new DND event emitters

7 years agodrop: Add private API for event emission
Benjamin Otte [Wed, 23 May 2018 17:41:54 +0000 (19:41 +0200)]
drop: Add private API for event emission

7 years agodrop: Add GdkDrop:surface property
Benjamin Otte [Wed, 23 May 2018 16:30:14 +0000 (18:30 +0200)]
drop: Add GdkDrop:surface property

This replaces gdk_drag_context_get_dest_surface().

7 years agodisplay: Don't wake up the main loop anymore
Benjamin Otte [Tue, 22 May 2018 17:43:43 +0000 (19:43 +0200)]
display: Don't wake up the main loop anymore

This is not needed because GTK must be run in the main thread these days,
which is the same one that runs the main loop. So when this function is
called, the main loop is awake.

https://bugzilla.gnome.org/show_bug.cgi?id=550989

7 years agox11: Don't sneakily allocate memory in initializers
Benjamin Otte [Tue, 22 May 2018 13:48:50 +0000 (15:48 +0200)]
x11: Don't sneakily allocate memory in initializers

7 years agodnd: Add gdk_event_get_drop()
Benjamin Otte [Tue, 22 May 2018 13:32:27 +0000 (15:32 +0200)]
dnd: Add gdk_event_get_drop()

And remove gdk_event_get_drag_context().

All GTK code now only uses GdkDrop for dropping.

7 years agowayland: Fix drop operations for new semantics
Benjamin Otte [Sun, 20 May 2018 18:22:02 +0000 (20:22 +0200)]
wayland: Fix drop operations for new semantics

7 years agodnd: Remove GdkDragContext::commit_drag_status() vfunc
Benjamin Otte [Sun, 20 May 2018 18:15:39 +0000 (20:15 +0200)]
dnd: Remove GdkDragContext::commit_drag_status() vfunc

The idea behind the vfunc doesn't work as status updates can happen
asynchronously.

A better solution needs to be found.

7 years agodnd: Make drag-motion and drag-drop signals use GdkDrop
Benjamin Otte [Thu, 17 May 2018 02:51:18 +0000 (04:51 +0200)]
dnd: Make drag-motion and drag-drop signals use GdkDrop

7 years agodnd: Make drag-data-received use a GdkDrop
Benjamin Otte [Wed, 16 May 2018 02:50:24 +0000 (04:50 +0200)]
dnd: Make drag-data-received use a GdkDrop

7 years agodrop: Add gdk_drop_get_drag()
Benjamin Otte [Wed, 16 May 2018 02:49:58 +0000 (04:49 +0200)]
drop: Add gdk_drop_get_drag()

For now, it'll always return NULL. We'll fix that later.

7 years agowidget: Make GtkWidgetClass::drag_leave() take a GdkDrop
Benjamin Otte [Tue, 15 May 2018 22:59:01 +0000 (00:59 +0200)]
widget: Make GtkWidgetClass::drag_leave() take a GdkDrop

Drag Contexts are on their way out!

7 years agodnd: Add gdk_drop_finish()
Benjamin Otte [Tue, 15 May 2018 03:45:06 +0000 (05:45 +0200)]
dnd: Add gdk_drop_finish()

and move the vfunc into GdkDrop.

7 years agodnd: Get rid of gtk_drag_finish()
Benjamin Otte [Mon, 14 May 2018 14:44:43 +0000 (16:44 +0200)]
dnd: Get rid of gtk_drag_finish()

It's just a wrapper around gdk_drag_finish(), so use that one instead.

7 years agodnd: Rename gdk_drop_finish() => gdk_drag_finish()
Benjamin Otte [Mon, 14 May 2018 13:09:42 +0000 (15:09 +0200)]
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.

7 years agodnd: Move the gdk_drag_status() function
Benjamin Otte [Mon, 14 May 2018 02:16:25 +0000 (04:16 +0200)]
dnd: Move the gdk_drag_status() function

It's now gdk_drop_status().

Also clarify the intended semantics.

7 years agodnd: Add gdk_drop_get_actions()
Benjamin Otte [Mon, 14 May 2018 00:49:33 +0000 (02:49 +0200)]
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).

7 years agodnd: Make actions a private member variable
Benjamin Otte [Sun, 13 May 2018 15:03:57 +0000 (17:03 +0200)]
dnd: Make actions a private member variable

Use a setter in the backends.

7 years agox11: Remove unused variables
Benjamin Otte [Sun, 13 May 2018 00:38:31 +0000 (02:38 +0200)]
x11: Remove unused variables

7 years agowayland: Set correct variable
Benjamin Otte [Sat, 12 May 2018 21:43:01 +0000 (23:43 +0200)]
wayland: Set correct variable

This got messed up in commit 7f8a8f221d60bc5da23602e5e024eb91f8b0f758.

7 years agodnd: Add gdk_drag_action_is_unique()
Benjamin Otte [Fri, 11 May 2018 22:13:11 +0000 (00:13 +0200)]
dnd: Add gdk_drag_action_is_unique()

This will be necessary once we remove the ASK action.

7 years agodnd: Remove GDK_ACTION_DEFAULT and GDK_ACTION_PRIVATE
Benjamin Otte [Tue, 8 May 2018 11:56:08 +0000 (13:56 +0200)]
dnd: Remove GDK_ACTION_DEFAULT and GDK_ACTION_PRIVATE

They're unused and nobody knows what they're supposed to men anyway.

7 years agodrop: Move gdk_drop_read_async() to GdkDrop class
Benjamin Otte [Mon, 7 May 2018 22:47:26 +0000 (00:47 +0200)]
drop: Move gdk_drop_read_async() to GdkDrop class

7 years agodnd: Add GdkDrop base class for GdkDragContext
Benjamin Otte [Mon, 30 Apr 2018 12:10:44 +0000 (14:10 +0200)]
dnd: Add GdkDrop base class for GdkDragContext

The ultimate goal of this patch series is to split GdkDragContext into
GdkDrop + GdkDrag classes for the destination and source side of a dnd
operation.

The refactoring is meant to work something like this:
1. Introduce GdkDrop as a base class
2. Make all drop related code (like GdkEvent) use GdkDrop instead of
   GdkDragContext. Move/duplicate APIs to allow that.
3. Port all drop contexts in the backends from GdkDragContext to GdkDrop
4. Delete all APIs in GdkDragContext that aren't needed anymore.
5. Make GdkDragContext no longer a GdkDrop subclass
6. Rename GdkDragContext to GdkDrag

7 years agoMerge branch 'lrn/misc-gtk4-fixes' into 'master'
Matthias Clasen [Mon, 18 Jun 2018 21:37:42 +0000 (21:37 +0000)]
Merge branch 'lrn/misc-gtk4-fixes' into 'master'

Misc GTK4 fixes

See merge request GNOME/gtk!195

7 years agoMerge branch 'win32-filechooser-fix-file-list-order' into 'master'
Matthias Clasen [Mon, 18 Jun 2018 20:09:47 +0000 (20:09 +0000)]
Merge branch 'win32-filechooser-fix-file-list-order' into 'master'

win32 file chooser: add missing g_slist_reverse

See merge request GNOME/gtk!199

7 years agothemes: Don't handle box.linked special
Timm Bäder [Mon, 18 Jun 2018 17:39:32 +0000 (19:39 +0200)]
themes: Don't handle box.linked special

We don't reverse the css nodes anymore in RTL layouts.

7 years agofilechooserbutton: Remove priv pointer
Timm Bäder [Mon, 18 Jun 2018 15:24:57 +0000 (17:24 +0200)]
filechooserbutton: Remove priv pointer

7 years agoGtkStyleContext: Remove the frame clock
Timm Bäder [Mon, 18 Jun 2018 13:25:25 +0000 (15:25 +0200)]
GtkStyleContext: Remove the frame clock

It's unused within GtkStyleContext.

7 years agodnd: Fix up a comment
Timm Bäder [Mon, 18 Jun 2018 13:04:00 +0000 (15:04 +0200)]
dnd: Fix up a comment

The below function does not take a GtkIconHelper anymore.

7 years agocolorscale: Remove priv pointer
Timm Bäder [Mon, 18 Jun 2018 12:28:19 +0000 (14:28 +0200)]
colorscale: Remove priv pointer

7 years agofontbutton: Remove priv pointer
Timm Bäder [Mon, 18 Jun 2018 11:11:06 +0000 (13:11 +0200)]
fontbutton: Remove priv pointer

7 years agoradiobutton: remove priv pointer
Timm Bäder [Mon, 18 Jun 2018 10:33:37 +0000 (12:33 +0200)]
radiobutton: remove priv pointer

7 years agopicture: Fix up some docs
Timm Bäder [Mon, 18 Jun 2018 10:23:56 +0000 (12:23 +0200)]
picture: Fix up some docs

Use nullable instead of allow-none consistently, remove trailing
whitespace and fix some c&p problems.

7 years agodrawingarea: Clarify some comments
Timm Bäder [Mon, 18 Jun 2018 09:17:41 +0000 (11:17 +0200)]
drawingarea: Clarify some comments

7 years agomessagedialog: Remove priv pointer
Timm Bäder [Mon, 18 Jun 2018 09:14:36 +0000 (11:14 +0200)]
messagedialog: Remove priv pointer

7 years agopaned: Allocation x/y are always 0
Timm Bäder [Sat, 16 Jun 2018 18:58:50 +0000 (20:58 +0200)]
paned: Allocation x/y are always 0

The allocation position we get passed to size_allocate is always 0/0
these days.

7 years agopaned: Remove handle_pos member
Timm Bäder [Sat, 16 Jun 2018 18:58:17 +0000 (20:58 +0200)]
paned: Remove handle_pos member

Query the handle bounds on demand instead.

7 years agopaned: Chain up in snapshot
Timm Bäder [Sat, 16 Jun 2018 18:31:48 +0000 (20:31 +0200)]
paned: Chain up in snapshot

No need to snapshot all child widgets ourselves, the implementation in
GtkWidget can just do it for us.

7 years agopaned: Remove unnecessary local variable
Timm Bäder [Sat, 16 Jun 2018 18:15:18 +0000 (20:15 +0200)]
paned: Remove unnecessary local variable

We can just pass the given allocation on.

7 years agopaned: Don't unnecessarily redraw handle in size_allocate
Timm Bäder [Sat, 16 Jun 2018 18:13:07 +0000 (20:13 +0200)]
paned: Don't unnecessarily redraw handle in size_allocate

We size_allocate it after all, which will redraw it.

7 years agopaned: Store GParamSpecs
Timm Bäder [Sat, 16 Jun 2018 15:19:30 +0000 (17:19 +0200)]
paned: Store GParamSpecs

So we can use the more efficient g_object_notify_by_pspec everywhere.

7 years agoRemove gtk_css_node_reverse_children
Timm Bäder [Sat, 16 Jun 2018 14:10:00 +0000 (16:10 +0200)]
Remove gtk_css_node_reverse_children

Not needed anymore.

7 years agotoolbar: Stop reordering css nodes based on text direction
Timm Bäder [Sat, 16 Jun 2018 14:09:14 +0000 (16:09 +0200)]
toolbar: Stop reordering css nodes based on text direction

7 years agoheaderbar: Stop reordering css nodes depending on text direction
Timm Bäder [Sat, 16 Jun 2018 14:05:05 +0000 (16:05 +0200)]
headerbar: Stop reordering css nodes depending on text direction

7 years agonotebook: Stop reversing tabs based on text direction
Timm Bäder [Sat, 16 Jun 2018 13:56:55 +0000 (15:56 +0200)]
notebook: Stop reversing tabs based on text direction

7 years agobuilder: Fix g-i annotations of _get_translation_domain
Timm Bäder [Sat, 16 Jun 2018 13:25:14 +0000 (15:25 +0200)]
builder: Fix g-i annotations of _get_translation_domain

The return value can be null and is (transfer none).

7 years agobuilder: Use TRUE/FALSE for error return values
Timm Bäder [Sat, 16 Jun 2018 12:59:49 +0000 (14:59 +0200)]
builder: Use TRUE/FALSE for error return values

Instead of guint and 0/1.

7 years agobuilder: Remove priv pointer
Timm Bäder [Sat, 16 Jun 2018 12:51:12 +0000 (14:51 +0200)]
builder: Remove priv pointer

7 years agobox: Don't reorder children based on text direction
Timm Bäder [Sun, 10 Jun 2018 19:54:25 +0000 (21:54 +0200)]
box: Don't reorder children based on text direction

Make :first-child always be the first child, i.e. the leftest one in LTR
and the rightest one in RTL.

7 years agopaned: Don't reorder css nodes based on text direction
Timm Bäder [Sun, 10 Jun 2018 19:47:35 +0000 (21:47 +0200)]
paned: Don't reorder css nodes based on text direction

7 years agocenter box: Don't reorder css nodes in RTL
Timm Bäder [Sun, 10 Jun 2018 19:35:19 +0000 (21:35 +0200)]
center box: Don't reorder css nodes in RTL

So widget order matches css order. We will do the same thing with GtkBox
eventually.

7 years agoscrolledwindow: Remove priv pointer
Timm Bäder [Sat, 16 Jun 2018 09:47:06 +0000 (11:47 +0200)]
scrolledwindow: Remove priv pointer

7 years agoMerge branch 'window-activate-grab-4-again' into 'master'
Matthias Clasen [Mon, 18 Jun 2018 11:36:09 +0000 (11:36 +0000)]
Merge branch 'window-activate-grab-4-again' into 'master'

gdk: activate surface on keyboard grabs

Closes #85

See merge request GNOME/gtk!174

7 years agowin32 file chooser: add missing g_slist_reverse
Nicolai Syvertsen [Mon, 18 Jun 2018 09:44:46 +0000 (09:44 +0000)]
win32 file chooser: add missing g_slist_reverse

the list is prepended to so we need to reverse the list
before returning

7 years agogdk: activate surface on keyboard grabs
Samuel Thibault [Fri, 1 Jun 2018 14:43:01 +0000 (16:43 +0200)]
gdk: activate surface on keyboard grabs

In 01455399e83a ("gdk: do not deactivate surface on keyboard grabs"), we
made gdk avoid deactivating surfaces when another application takes a
keyboard grab, by using has_focus_window instead of has_focus. That however
broke activating surfaces when the gdk application acquired a grab itself,
in which case has_focus_window is false but has_focus is true.

We thus actually need to use both: surfaces should be activated either
because we have normal keyboard focus, or because we grabbed the keyboard.

This also renames HAS_FOCUS to APPEARS_FOCUSED to better reflect its
role.

Fixes #85

7 years agoUpdate Polish translation
Piotr Drąg [Sun, 17 Jun 2018 15:24:07 +0000 (17:24 +0200)]
Update Polish translation

7 years agoGDK W32: don't unref window iconlist textures
Руслан Ижбулатов [Sat, 16 Jun 2018 18:26:29 +0000 (18:26 +0000)]
GDK W32: don't unref window iconlist textures

We do not own these textures, nor do we ref them, so it's inappropriate
to unref them.

7 years agoW32: Use correct hinstance values
Руслан Ижбулатов [Sat, 16 Jun 2018 18:24:56 +0000 (18:24 +0000)]
W32: Use correct hinstance values

According to the old new thing[0], we should use the instance handle
of the GDK/GTK DLL when registering GDK-specific types in the system.
Using the instance handle for the whole application in these circumstances
is not an error, but can potentially clash with the types registered
by the application itself.

Also, extract window class icons from the GDK/GTK DLL, not from the
application executable.

[0]: https://blogs.msdn.microsoft.com/oldnewthing/20050418-59/?p=35873

7 years agoPass the correct data to gdk_content_register_serializer()
Руслан Ижбулатов [Sat, 16 Jun 2018 18:23:56 +0000 (18:23 +0000)]
Pass the correct data to gdk_content_register_serializer()

The argument is eventually passed to g_conv(), so it should
be the charset, not the mime/type. Without this change the
contentype converter will fail to convert UTF-8 strings to, say,
CP-1251 later on.

7 years agoW32: don't put a string literal into gtk_libdir
Руслан Ижбулатов [Sat, 16 Jun 2018 18:22:12 +0000 (18:22 +0000)]
W32: don't put a string literal into gtk_libdir

In all other instances gtk_libdir is a dynamically-allocated string,
so dup the literal in this case as well.

7 years agoAdd forward declaration for DllMain() in gtkwin32.c
Руслан Ижбулатов [Sat, 16 Jun 2018 18:21:42 +0000 (18:21 +0000)]
Add forward declaration for DllMain() in gtkwin32.c

7 years agoUse const for media type in devmode_to_settings()
Руслан Ижбулатов [Sat, 16 Jun 2018 18:20:49 +0000 (18:20 +0000)]
Use const for media type in devmode_to_settings()

7 years agoAdd foward declarations to gtk_print_operation_run_without_dialog
Руслан Ижбулатов [Sat, 16 Jun 2018 18:20:22 +0000 (18:20 +0000)]
Add foward declarations to gtk_print_operation_run_without_dialog

7 years agosearch bar example: remove unused function
Timm Bäder [Sat, 16 Jun 2018 08:15:57 +0000 (10:15 +0200)]
search bar example: remove unused function

7 years agocenter box: Remove snapshot implementation
Timm Bäder [Sun, 10 Jun 2018 19:30:23 +0000 (21:30 +0200)]
center box: Remove snapshot implementation

7 years agogl renderer: call glViewport directly
Timm Bäder [Sun, 10 Jun 2018 12:41:43 +0000 (14:41 +0200)]
gl renderer: call glViewport directly

7 years agobutton: Remove measure implementation
Timm Bäder [Sun, 10 Jun 2018 11:39:30 +0000 (13:39 +0200)]
button: Remove measure implementation

This is already done by GtkBin.

7 years agocombobox: Remove priv pointer
Timm Bäder [Sun, 10 Jun 2018 10:25:44 +0000 (12:25 +0200)]
combobox: Remove priv pointer

7 years agoMerge branch 'wip/lantw/fix-gtkdoc-build-without-wayland' into 'master'
Matthias Clasen [Fri, 15 Jun 2018 16:27:44 +0000 (16:27 +0000)]
Merge branch 'wip/lantw/fix-gtkdoc-build-without-wayland' into 'master'

docs: Fix gtk-doc build when wayland is disabled

See merge request GNOME/gtk!193

7 years agodocs: Fix gtk-doc build when wayland is disabled
Ting-Wei Lan [Fri, 15 Jun 2018 15:51:15 +0000 (23:51 +0800)]
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.

7 years agoMerge branch 'design_by' into 'master'
Matthias Clasen [Fri, 15 Jun 2018 02:00:57 +0000 (02:00 +0000)]
Merge branch 'design_by' into 'master'

aboutbox: use a more fitting 'design by" role

Closes #1153

See merge request GNOME/gtk!192