Timm Bäder
e8fefd92c5
container: Remove SPECIAL_CONTAINER hack
...
As discussed in !129
Closes !129
2018-06-20 20:47:18 +02:00
Timm Bäder
22390adf11
stackswitcher: Remove icon-size property
...
This ought to be controlled via css these days.
2018-06-20 20:47:18 +02:00
Timm Bäder
cf9121977f
infobar: Remove priv pointer
2018-06-20 20:47:18 +02:00
Timm Bäder
99099a1053
Remove some unnecessary snapshot implementations
2018-06-20 20:47:18 +02:00
Timm Bäder
daba1a7eff
fixed: Remove priv pointer
2018-06-20 20:47:17 +02:00
Timm Bäder
f26359db13
listbox: Use widget insert API instead of fiddling with CSS nodes
2018-06-20 20:47:17 +02:00
Timm Bäder
945b844b7c
button: Remove ICON_SIZE_BUTTON mention in docs
...
The icon will have the size given by css, not whatever
GTK_ICON_SIZE_BUTTON was.
2018-06-20 20:47:17 +02:00
Timm Bäder
f33655fa4e
adjustment: Only emit ::changed from dispatch_properties_changed
2018-06-20 20:47:17 +02:00
Timm Bäder
ee8ee313c8
adjustment: Remove adjustment_changed_stamp
2018-06-20 20:47:17 +02:00
Timm Bäder
a12d26155f
adjustment: Use public setters in set_property
2018-06-20 20:47:17 +02:00
Daniel Boles
cae382c829
themes: Regenerate CSS for recent commits
...
e.g. the box.linked one, which didn't update the compiled CSS.
2018-06-20 19:26:46 +01:00
Daniel Boles
0a5086d94f
HC: Avoid excessive selectors from prev commit
...
The new rule does not need to affect all those other pseudoclasses. I
just put it in the wrong scope.
2018-06-20 19:26:41 +01:00
Daniel Boles
b103650cb0
HC: Avoid same BG/FG colors in flat treeview entry
...
Selected rows in tree views in HighContrast have a background colour the
same or nearly as the normal text colour, so we cannot let entries in
such rows have transparent backgrounds, or the text inside the entry
becomes nearly or totally impossible to see.
Dodge this by giving entry.flat inside treeview and with :focus the
$base_color, which is different from the text & so lets that be seen.
https://gitlab.gnome.org/GNOME/gtk/merge_requests/125
2018-06-20 19:13:26 +01:00
Daniel Boles
337e602143
searchenginetracker: Don't leak the hits' GFiles
...
https://gitlab.gnome.org/GNOME/gtk/merge_requests/206
2018-06-20 17:20:31 +01:00
Matthias Clasen
cd99f82e0c
Merge branch 'master' into 'issue1084'
...
# Conflicts:
# gdk/gdk.c
2018-06-20 14:21:24 +00:00
Timm Bäder
29fee2e808
window: Remove priv pointer
2018-06-20 07:49:04 +02:00
Timm Bäder
417b1d8335
pathbar: Remove unused define
2018-06-20 07:48:54 +02:00
Daniel Boles
ec096b417c
Merge branch '1160-crash-clearing-gtkentry-icon-tooltip-master' into 'master'
...
Resolve "Crash clearing GtkEntry icon tooltip"
Closes #1160
See merge request GNOME/gtk!205
2018-06-19 20:22:38 +00:00
Benjamin Otte
0b1f0984f5
Revert "Use aligned allocators for GtkSnapshot"
...
This reverts commit c02bc22cc5
.
This code is not necessary.
The bug causing this problem ws prsent in the graphene library.
2018-06-19 19:52:52 +02:00
Benjamin Otte
6918fb2e4e
rendernodepaintable: Fix rendering position
...
When the given size had an offset, we were moving that offset in the
wrong direction.
2018-06-19 19:44:17 +02:00
Benjamin Otte
3caf8c86c9
dnd: Use a GtkPicture in gtk_dnd_set_icon_paintable()
...
We don't want to get the paintable scaled down to icon size.
Also set can-shrink = FALSE to replicate GTK3 behavior with size
requests.
2018-06-19 19:44:17 +02:00
Benjamin Otte
8c8dc3aeab
snapshot: Compute correct size in gtk_snapshot_to_paintable()
...
Also, do actually respect the passed in size argument if it isn't NULL.
Fixes text being cut off inside DND icons.
2018-06-19 19:44:17 +02:00
Daniel Boles
4f979469f1
a11y/entry: Fix copy-pasteo re 2ndary icon tooltip
...
The else case was wrongly resetting the accessible description on the
primary icon, which might not exist and can therefore cause a crash.
https://gitlab.gnome.org/GNOME/gtk/issues/1160
2018-06-19 18:37:25 +01:00
Matthias Clasen
87532f0ac3
Merge branch 'wip/carlosg/issue-1159' into 'master'
...
Fix issue 1159
Closes #1159
See merge request GNOME/gtk!202
2018-06-19 16:40:39 +00:00
Carlos Garnacho
8e3bf65b3b
gtkgesture: Check claimed status after event delivery
...
The claimed status check should happen after ::end is emitted,
as the gesture may deny the sequence that much late. In this
case the event should keep propagating.
https://gitlab.gnome.org/GNOME/gtk/issues/1159
Closes : #1159
2018-06-19 13:47:38 +02:00
Carlos Garnacho
de30a74cdf
gtkwidget: Avoid doubly coordinate conversion when emulating press
...
We are poking again into the event propagation machinery, which
expects events in toplevel coordinates. Since we can't fetch the
original event back at this point, translate the coordinates
back to the toplevel so the emulated press ends up in the right
place.
https://gitlab.gnome.org/GNOME/gtk/issues/1159
Closes : #1159
2018-06-19 13:47:26 +02:00
Benjamin Otte
9a91d3739d
widget: Remove time argument from drag_data_get() vfunc
2018-06-18 23:49:53 +02:00
Benjamin Otte
a2839d157f
dnd: Remove unused time arguments
2018-06-18 23:49:53 +02:00
Benjamin Otte
a1cee7fa65
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.
2018-06-18 23:49:52 +02:00
Benjamin Otte
8a08a325be
dnd: Implement gtk_drag_get_source_widget() differently
...
Instead of keeping a list of source contexts, just use the current
drag's info.
2018-06-18 23:49:52 +02:00
Benjamin Otte
d02b185a87
dnd: Add gdk_event_get_drop()
...
And remove gdk_event_get_drag_context().
All GTK code now only uses GdkDrop for dropping.
2018-06-18 23:49:52 +02:00
Benjamin Otte
b00609c21c
dnd: Make drag-motion and drag-drop signals use GdkDrop
2018-06-18 23:49:52 +02:00
Benjamin Otte
6d7cb2b781
dnd: Make drag-data-received use a GdkDrop
2018-06-18 23:49:52 +02:00
Benjamin Otte
314eaf7d10
widget: Make GtkWidgetClass::drag_leave() take a GdkDrop
...
Drag Contexts are on their way out!
2018-06-18 23:49:20 +02:00
Benjamin Otte
5b0a6a52c1
dnd: Get rid of gtk_drag_finish()
...
It's just a wrapper around gdk_drag_finish(), so use that one instead.
2018-06-18 23:49:20 +02:00
Benjamin Otte
13ae11ee01
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.
2018-06-18 23:49:19 +02:00
Benjamin Otte
6919d8c532
drop: Move gdk_drop_read_async() to GdkDrop class
2018-06-18 23:49:19 +02:00
Matthias Clasen
841a29837e
Merge branch 'lrn/misc-gtk4-fixes' into 'master'
...
Misc GTK4 fixes
See merge request GNOME/gtk!195
2018-06-18 21:37:42 +00:00
Matthias Clasen
7554384b2d
Merge branch 'win32-filechooser-fix-file-list-order' into 'master'
...
win32 file chooser: add missing g_slist_reverse
See merge request GNOME/gtk!199
2018-06-18 20:09:47 +00:00
Timm Bäder
64313f4a4b
themes: Don't handle box.linked special
...
We don't reverse the css nodes anymore in RTL layouts.
2018-06-18 19:39:32 +02:00
Timm Bäder
34f556fc3e
filechooserbutton: Remove priv pointer
2018-06-18 17:35:03 +02:00
Timm Bäder
218b39fe01
GtkStyleContext: Remove the frame clock
...
It's unused within GtkStyleContext.
2018-06-18 17:35:03 +02:00
Timm Bäder
70c8cfa480
dnd: Fix up a comment
...
The below function does not take a GtkIconHelper anymore.
2018-06-18 17:35:03 +02:00
Timm Bäder
501efeb6b9
colorscale: Remove priv pointer
2018-06-18 17:35:03 +02:00
Timm Bäder
a7d8127d59
fontbutton: Remove priv pointer
2018-06-18 17:35:03 +02:00
Timm Bäder
beb4cb0e37
radiobutton: remove priv pointer
2018-06-18 17:35:03 +02:00
Timm Bäder
346ec706f7
picture: Fix up some docs
...
Use nullable instead of allow-none consistently, remove trailing
whitespace and fix some c&p problems.
2018-06-18 17:35:03 +02:00
Timm Bäder
d8274856de
drawingarea: Clarify some comments
2018-06-18 17:35:03 +02:00
Timm Bäder
3756234708
messagedialog: Remove priv pointer
2018-06-18 17:35:03 +02:00
Timm Bäder
2d6955285c
paned: Allocation x/y are always 0
...
The allocation position we get passed to size_allocate is always 0/0
these days.
2018-06-18 17:35:03 +02:00
Timm Bäder
10a0d6252e
paned: Remove handle_pos member
...
Query the handle bounds on demand instead.
2018-06-18 17:35:03 +02:00
Timm Bäder
f8ddc42638
paned: Chain up in snapshot
...
No need to snapshot all child widgets ourselves, the implementation in
GtkWidget can just do it for us.
2018-06-18 17:35:02 +02:00
Timm Bäder
e9a9bb069f
paned: Remove unnecessary local variable
...
We can just pass the given allocation on.
2018-06-18 17:35:02 +02:00
Timm Bäder
df79f02310
paned: Don't unnecessarily redraw handle in size_allocate
...
We size_allocate it after all, which will redraw it.
2018-06-18 17:35:02 +02:00
Timm Bäder
bd99ca2f04
paned: Store GParamSpecs
...
So we can use the more efficient g_object_notify_by_pspec everywhere.
2018-06-18 17:35:02 +02:00
Timm Bäder
889fcf64b6
Remove gtk_css_node_reverse_children
...
Not needed anymore.
2018-06-18 17:35:02 +02:00
Timm Bäder
3fadb536d9
toolbar: Stop reordering css nodes based on text direction
2018-06-18 17:35:02 +02:00
Timm Bäder
fb0d8eacc3
headerbar: Stop reordering css nodes depending on text direction
2018-06-18 17:35:02 +02:00
Timm Bäder
fffb3161bc
notebook: Stop reversing tabs based on text direction
2018-06-18 17:35:02 +02:00
Timm Bäder
3be2cb8f63
builder: Fix g-i annotations of _get_translation_domain
...
The return value can be null and is (transfer none).
2018-06-18 17:35:02 +02:00
Timm Bäder
8267605ba2
builder: Use TRUE/FALSE for error return values
...
Instead of guint and 0/1.
2018-06-18 17:35:02 +02:00
Timm Bäder
da4d8b7d94
builder: Remove priv pointer
2018-06-18 17:35:02 +02:00
Timm Bäder
01d4538223
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.
2018-06-18 17:35:02 +02:00
Timm Bäder
da27627696
paned: Don't reorder css nodes based on text direction
2018-06-18 17:35:02 +02:00
Timm Bäder
85e49a1051
center box: Don't reorder css nodes in RTL
...
So widget order matches css order. We will do the same thing with GtkBox
eventually.
2018-06-18 17:35:02 +02:00
Timm Bäder
798944cb26
scrolledwindow: Remove priv pointer
2018-06-18 17:35:02 +02:00
Nicolai Syvertsen
2d7cfdd7ed
win32 file chooser: add missing g_slist_reverse
...
the list is prepended to so we need to reverse the list
before returning
2018-06-18 09:44:46 +00:00
Руслан Ижбулатов
6bf88d90f3
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.
2018-06-16 18:22:12 +00:00
Руслан Ижбулатов
fb4d76d380
Add forward declaration for DllMain() in gtkwin32.c
2018-06-16 18:21:42 +00:00
Руслан Ижбулатов
dedc1ee1e5
Use const for media type in devmode_to_settings()
2018-06-16 18:20:49 +00:00
Руслан Ижбулатов
fe76984e89
Add foward declarations to gtk_print_operation_run_without_dialog
2018-06-16 18:20:22 +00:00
Timm Bäder
0b12fd9c1b
center box: Remove snapshot implementation
2018-06-16 10:09:12 +02:00
Timm Bäder
d3ffaa0236
button: Remove measure implementation
...
This is already done by GtkBin.
2018-06-16 10:09:12 +02:00
Timm Bäder
1b208eb457
combobox: Remove priv pointer
2018-06-16 10:09:12 +02:00
Jakub Steiner
c5fa657631
aboutbox: use a more fitting 'design by" role
...
- in most cases, authors listed under "artwork by" are actually responsible for
the design of the app as a whole
Fixes issue #1153
2018-06-14 16:36:38 +02:00
Mohammed Sadiq
bdf3b6f64d
Revert "imcontext: Make size arguments be gsize and not int"
...
This was committed accidently.
This reverts commit eefd2d6f10
.
2018-06-14 11:15:14 +05:30
Benjamin Otte
eefd2d6f10
imcontext: Make size arguments be gsize and not int
...
Otherwise gcc complains when we use these as arguments to g_new() on
32bit architectures with:
../gtk/gtkcomposetable.c: In function ‘gtk_compose_table_list_add_array’:
/usr/include/glib-2.0/glib/gmem.h:217:10: warning: argument 1 range [2147483648, 4294967295] exceeds maximum object size 2147483647 [-Walloc-size-larger-than=]
__p = g_##func##_n (__n, __s); \
~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gmem.h:279:42: note: in expansion of macro ‘_G_NEW’
#define g_new0(struct_type, n_structs) _G_NEW (struct_type, n_structs, malloc0)
^~~~~~
../gtk/gtkcomposetable.c:851:22: note: in expansion of macro ‘g_new0’
gtk_compose_seqs = g_new0 (guint16, length);
^~~~~~
/usr/include/glib-2.0/glib/gmem.h:96:10: note: in a call to allocation function ‘g_malloc0_n’ declared here
gpointer g_malloc0_n (gsize n_blocks,
^~~~~~~~~~~
2018-06-14 06:37:00 +05:30
Mohammed Sadiq
d4693b2dc8
snapshot: Trivial typo fix in comment
2018-06-13 19:58:01 +05:30
Rico Tzschichholz
b1f934d3b0
picture: Fix g-i annotation warning
2018-06-13 13:08:28 +02:00
Mario Sanchez Prada
07d6c53346
application: Complete startup notification sequence for remote invocations
...
When a remote instance of a GTK application implementing the Startup
Notification protocol gets spawned it will pass the startup sequence
ID as "platform data" to the main instance. Thus, we need to make sure
that the startup sequence gets completed in that case, since the remote
instance won't do it by itself, since it won't map any top level window.
Checking for this "platform data" in the implementation of the after_emit()
virtual method in the primary instance should be a good place to do so, since
the existence of such data proves that a remote instance has been spawned.
https://gitlab.gnome.org/GNOME/gtk/issues/1084
2018-06-11 16:28:24 +01:00
Mario Sanchez Prada
479c341545
application: Use the new API to get the startup notification ID
...
The DESKTOP_STARTUP_ID gets cleared early after the process is spawned,
meaning that it's too late at add_platform_data() to pick it up and send
it over to the primary instance, as it will be always unset at that point.
To solve this, we use the new gdk_display_get_startup_notification_id()
method to pull the startup notification ID for the application, if present,
out of the display and pass it over to that primary instance.
https://gitlab.gnome.org/GNOME/gtk/issues/1084
2018-06-11 16:28:24 +01:00
Mohammed Sadiq
0c57e3131f
overlay: Use the right property variable name
2018-06-11 17:43:16 +05:30
Mohammed Sadiq
0d46081645
overlay: Add support for clipping overlay widgets
...
Sometimes users may want to restrict the growth of child
widgets in a GtkOverlay to grow atmost the size of the overlay.
Let's add a support for that.
2018-06-11 16:24:29 +05:30
Matthias Clasen
4f632296a5
Merge branch 'lrn/gtk4warnings' into 'master'
...
Fix a lot of warnings in GTK4
See merge request GNOME/gtk!188
2018-06-10 23:14:42 +00:00
Matthias Clasen
c047e97cfa
Merge branch 'master' into 'master'
...
gtk: Add gtk_is_initialized() and gtk_get_main_thread()
See merge request GNOME/gtk!186
2018-06-10 23:05:50 +00:00
Matthias Clasen
bc13a58f3c
Merge branch 'lrn/aligned-alloc' into 'master'
...
Aligned allocators for GTK4
Closes #856
See merge request GNOME/gtk!187
2018-06-10 22:05:12 +00:00
Руслан Ижбулатов
43f37894b0
Use correct stat struct for ftw()
...
check_dir_mtime() is called by ftw() and is given
the real stat struct, not its glib version (which may
or may not be the same as "struct stat").
This is irrelevant for MSVC (it has no ftw()) and
works correctly for MinGW-w64 (which declares stat
structures correctly). If mingw.org complains, add
a special ifdef for it later.
2018-06-10 21:21:27 +00:00
Руслан Ижбулатов
0365dadad9
See if _MSC_VER is defined before checking its value
2018-06-10 21:21:25 +00:00
Руслан Ижбулатов
9330be8cf9
Fix missing default switch case in DllMain
2018-06-10 21:21:24 +00:00
Руслан Ижбулатов
43d6fe2583
Fix missing default switch cases in gtkimcontextsimple
2018-06-10 21:21:22 +00:00
Руслан Ижбулатов
411c535956
Fix some warnings in W32 part of gtkmain
...
* Add missing default cases
* Cast string literals as non-const
2018-06-10 21:21:20 +00:00
Руслан Ижбулатов
58fc1229c1
Remove unused variables (mostly in W32 code)
2018-06-10 21:21:01 +00:00
Руслан Ижбулатов
c02bc22cc5
Use aligned allocators for GtkSnapshot
...
Any data that is later fed to graphene must be
allocated with proper alignment, if graphene
uses SSE2 or GCC vector instructions.
This adds custom array code (a streamlined copy
of GArray with all unnecessary bells and whistles removed),
which is then used for the state_stack instead of GArray.
There's also a runtime check for the size of GtkSnapshotState
itself being a multiple of 16. If that is not so, any array
elements past the 0th element will lose alignment.
There are probably struct attributes that can
make GtkSnapshotState always have size that is a multiple
of 16, but we'll burn that bridge if we cross it.
2018-06-10 20:35:54 +00:00
Benjamin Otte
a34a5df674
picture: Don't use g_str_equal() with potential NULLs
2018-06-10 02:56:18 +02:00
Benjamin Otte
4c961349ab
dnd: Ref the GdkDrop during the DND operation
...
It might go away if the DND takes too long otherwise...
2018-06-10 02:35:30 +02:00
Benjamin Otte
b7ecfbce21
quartz: Remove gtkdnd-quartz.c
...
It shows up in my git diff calls and is completely broken.
2018-06-10 02:33:53 +02:00
Benjamin Otte
884aaa2193
iconhelper: Always size contents to icon size
...
No more special casing for paintables. If you want the special case for
paintables, you should use GtkPicture.
2018-06-10 02:25:28 +02:00
Benjamin Otte
f58c556adb
image: Remove gtk_image_set_keep_aspect_ratio()
...
and gtk_image_set_can_shrink().
Images are meant to always be icon-sized, they can never shrink below
that.
And images are icons, so they are meant to be square. If they are
not, we pretned that's by accident and keep aspect ratio.
2018-06-10 02:25:28 +02:00
Benjamin Otte
45d78f360f
video: Use a Picture instead of an Image
2018-06-10 02:23:02 +02:00
Benjamin Otte
6546ef3459
picture: Introduce
...
This commit introduces GtkPicture, which is supposed to complement
GtkImage.
GtkImage will be adapted to always display an icon, while
GtkPicture displays regular imagery.
2018-06-10 02:23:02 +02:00
Timm Bäder
cfbba2c710
widget: Use priv pointer less
...
Instead declare a priv local. We should do this even if we don't remove
the priv pointer from GtkWidget entirely, just to stay consistent with
new code we introduce.
2018-06-09 21:25:15 +02:00
Philippe Normand
2f181df1cf
gtkmain: Add gtk_get_main_thread()
...
This utility function can be useful to know which thread was initialized for
GTK+.
2018-06-08 18:41:54 +01:00
Philippe Normand
542ad4fdc5
gtkmain: Add gtk_is_initialized()
...
This utility function can be useful to check whether GTK+ was already
initialized or not.
2018-06-08 18:39:38 +01:00
Matthias Clasen
46d8c84049
Merge branch 'master' into 'master'
...
Fix reference to user styles in gtkstyleprovider.h
See merge request GNOME/gtk!184
2018-06-07 18:27:25 +00:00
Mohammed Sadiq
59c8fdff29
font-button: Suggest non deprecated function in docs
...
gtk_font_button_get_font_name() has been deprecated in 3.22 and
its public API is removed from GTK4.
2018-06-07 15:45:32 +05:30
Matijs van Zuijlen
932e5ea34e
Fix reference to user styles in gtkstyleprovider.h
2018-06-07 08:54:23 +00:00
Daniel Boles
3396c5e983
SizeRequest: Round px values up for min CSS sizes
...
Otherwise, requesting a min size in em where the equivalent in px had a
fractional part would lead to the widget getting allocated 1 too few px.
You could see this in the CSS property vs. allocation in the Inspector.
Note that margin/border/padding are left alone: the rationale is that we
do as browsers do, and Benjamin said we already do that for those,
whereas his tests on min-(width|height) showed otherwise. My subsequent
analysis indicated it to be far less clear-cut than that, but he remains
unconvinced that we should ceil() all the things! So just do these ones.
https://gitlab.gnome.org/GNOME/gtk/issues/1088
2018-06-05 18:49:52 +01:00
Timm Bäder
5c24bbf00c
popover: Add missing close paren in docs
2018-06-04 21:58:44 +02:00
Timm Bäder
a1e3e9dd17
colorbutton: Remove priv pointer
2018-06-04 21:58:44 +02:00
Timm Bäder
d53c28b07a
aspectframe: Remove unused member
2018-06-04 21:58:44 +02:00
Timm Bäder
a3987f3386
bin: Remove public GtkBinPrivate typedef
2018-06-04 21:58:44 +02:00
Timm Bäder
4e9a879de0
statusbar: Remove garbage from header file
...
Nobody will ever read those comments; documentation belongs into the
soruce file so gtk-doc actually picks it up.
2018-06-04 21:58:44 +02:00
Timm Bäder
9109b0c3f2
statusbar: Remove priv pointer
2018-06-04 21:58:44 +02:00
Timm Bäder
758137b5d9
widget: Add docs for {get,set}_focus_child
...
With get_ being still private.
2018-06-04 21:58:44 +02:00
Matthias Clasen
7a5567bf41
Merge branch 'patch-1' into 'master'
...
GtkWindow: Handle non-square icons with height > width correctly
Closes #657
See merge request GNOME/gtk!170
2018-06-03 18:10:03 +00:00
Christian Stadelmann
a70f0356e9
GtkWindow: Handle non-square icons with height > width correctly
2018-05-31 17:26:17 +02:00
Mohammed Sadiq
f4c1a40446
widget: Fix example code in doc
2018-05-31 16:24:00 +05:30
Matthias Clasen
8b24d59cde
Merge branch 'gesture-docs' into 'master'
...
Gesture stuff
See merge request GNOME/gtk!169
2018-05-30 02:13:04 +00:00
Benjamin Otte
7e574fa98c
gdk: Get rid of gdk_event_free()
...
Events are objects, so use g_object_unref().
2018-05-29 21:53:44 +02:00
Ernestas Kulik
4d2b39d98c
gesturemultipress: Don’t fire ::released after ::cancel
...
Causing a grab in the handler for ::pressed by, e.g., popping up a
context menu will cause the gesture to be canceled and, subsequently,
::end and ::released to be fired, all while the button is still
physically pressed. That results in no event being available to the
::released handler and garbage coordinates, given that
gtk_gesture_get_point() returns FALSE.
Emitting ::released can be avoided by checking the return value
gtk_gesture_get_point().
2018-05-29 19:09:28 +03:00
Ernestas Kulik
e9765c0405
gesture: Fix code snippet
...
GTK_EVENT_SEQUENCE_ACCEPTED seems to never have been a valid enumeration
value. GTK_EVENT_SEQUENCE_CLAIMED is the closest in meaning.
2018-05-29 18:27:59 +03:00
Ernestas Kulik
334c7911c1
gesture: Fix get_last_event() docs
...
Querying the event sequence of a gesture will always yield NULL for
non-touch events, but passing NULL in to calls to
gtk_gesture_get_last_event() is a perfectly valid use case.
2018-05-29 18:15:20 +03:00
Carlos Garnacho
694d9aa9f9
gtkpopover: Fix thinko in key press event type check
...
That code branch is meant to check for key events, seems obvious we want
GDK_KEY_PRESS, not GDK_BUTTON_PRESS (which also broke the branch right
below).
Makes us all able to dismiss popovers again.
2018-05-29 14:05:14 +02:00
Carlos Garnacho
317abed78e
Revert "popover: Fix setting priv->button_pressed in ::event handler"
...
This reverts commit d638ff3afa
.
Doesn't look like the right fix. Another one coming that fixes dismissing
through both pointer and keyboard.
2018-05-29 14:03:27 +02:00
Matthias Clasen
979a7e8afa
Remove an unused struct
...
Positive side-effect: visual c no longer has an empty struct
to complain about.
2018-05-27 11:57:49 -04:00
Timm Bäder
d638ff3afa
popover: Fix setting priv->button_pressed in ::event handler
...
There were two cases in that if/else cascade handling the
event_type == GDK_BUTTON_PRESS case, so priv->button_pressed never got
set.
2018-05-27 17:51:51 +02:00
Matthias Clasen
f9875040c6
Merge branch 'master' into 'master'
...
icontheme: Keep dir_mtimes in order
Closes #1115
See merge request GNOME/gtk!161
2018-05-27 15:50:17 +00:00
Timm Bäder
7f9cd9f9d9
filechooserwidget: Don't chain up in ::event
...
GtkWidgetClass.event is NULL.
2018-05-27 16:20:55 +02:00
Matthias Clasen
d561e52cde
a11y: Stop using ::event
...
We can just as well use notify::has-focus for the purpose of
focus tracking, and we can at the same time avoid emitting the
deprecated AtkObject::focus-event signal.
2018-05-26 08:46:06 -04:00
Daniel Boles
e7809f43ec
SpinButton: Fix an obviously wrong arg description
...
:climb-rate is not about what you get when you single-click on a button,
as this implied: it's what happens if you hold down a button or a key.
Fix the description of @climb_rate to new(), and while here, mention the
key in the blurb of :climb-rate itself.
2018-05-26 01:06:00 +01:00
Jan Alexander Steffens (heftig)
1e06838c1c
icontheme: Keep dir_mtimes in order
...
Don't reverse the order each time we insert a theme. Reverse it only
once, after all themes have been loaded.
Fixes https://gitlab.gnome.org/GNOME/gtk/issues/1115
2018-05-23 20:06:01 +02:00
Matthias Clasen
4bb3ac3e81
Merge branch 'kill-key-events' into 'master'
...
Kill key events
See merge request GNOME/gtk!160
2018-05-23 01:55:05 +00:00
Matthias Clasen
8746322d53
Drop the ::key-press/release-event signals
...
These are the last event-type specific signals,
we are just relying on the generic ::event signal now.
2018-05-21 20:20:55 -04:00
Matthias Clasen
85922f6090
treeview: Stop using ::key-press-event
...
Use a generic ::event handler instead.
2018-05-21 20:20:49 -04:00
Matthias Clasen
ec2d0edd79
spin button: Stop using ::key-release-event
...
Just use the generic ::event signal.
2018-05-21 20:20:43 -04:00
Matthias Clasen
b63def0865
font chooser dialog: Stop using ::key-press-event
...
Use the generic ::event instead.
2018-05-21 20:20:33 -04:00
Matthias Clasen
6084a7ea89
button: Stop using ::key-release-event
...
Use the generic ::event signal instead.
2018-05-21 20:20:24 -04:00
Matthias Clasen
c78166e190
file chooser widget: Stop using ::key-press-event
...
Use a generic ::event handler instead.
2018-05-21 20:20:18 -04:00
Matthias Clasen
576dcf65b3
file chooser entry: Stop using key-press-event
...
Just use the generic ::event signal for now.
2018-05-21 20:20:12 -04:00
Matthias Clasen
7644a9cd72
entry: Stop using ::key-press-event
...
Use a generic ::event handler instead.
2018-05-21 20:20:06 -04:00
Daniel Boles
acd05d09aa
StyleContext: Don't advise using invalidate()
...
It doesn't exist anymore! Also, set_display() is not needed/used in the
demo cited, and we were still referring to gtk3-demo, not gtk4-demo.
2018-05-21 23:39:47 +01:00
Daniel Boles
19ed1b92b0
Range: Up should only mean ++ if we are a GtkScale
...
The last round of patches to get the desired direction of value move in
response to scrolls/keypresses on scales had the inadvertent side effect
of giving the opposite direction on scrollbars. Seeing as gtkrange.c is
already a collection of hacks, add another so that fix only holds if the
instance is a GtkScale, since that is what those patches were aimed at.
Close https://gitlab.gnome.org/GNOME/gtk/issues/1065
2018-05-21 20:21:25 +01:00
Matthias Clasen
33b8f087a3
emoji completion: Stop using key-press-event
...
The generic ::event signal will do.
2018-05-19 23:36:10 -04:00
Matthias Clasen
287c900bdb
Remove key-press-event from more docs
...
This signal will be going away, so stop mentioning it so much.
2018-05-19 23:36:01 -04:00
Matthias Clasen
824bbf3117
popover: Drop key_press_event handler
...
We can do the same in the generic ::event handler.
2018-05-19 23:20:53 -04:00
Matthias Clasen
7928532bc5
emoji: Hide recent section when empty
...
This is part of https://gitlab.gnome.org/GNOME/gtk/merge_requests/143
by Julian Sperber.
2018-05-19 22:53:24 -04:00
Timm Bäder
3edd24fb01
widget: Properly remove event controllers in finalize
...
We were mutating the list while iterating over it. This was not a
problem before since remove_controller just set the controller pointer
to NULL instead of actually removing it from the list of controllers.
2018-05-19 23:03:32 +02:00
Timm Bäder
0aad5da1b3
widget: Remove controller sequence-state-changed signal connection
...
We can avoid a signal connection per event controller (and the
EventControllerData struct) since every event controller knows the
widget it's attached to.
2018-05-19 10:18:50 +02:00
Timm Bäder
8f289227aa
searchbar: Add missing GDK_AVAILABLE_IN_ALL marker
2018-05-19 10:18:50 +02:00
Timm Bäder
662e2b1641
snapshot: Remove superfluous typedef
...
We're already doing this in gtktypes.h
Fixes #214
2018-05-19 10:18:50 +02:00
Timm Bäder
5ff4ef14e6
widget: Directly notify gestures of grab
...
Since each widget has a list of event controllers now, we don't need to
connect to ::grab-notify of the widget for every controller.
2018-05-19 10:18:50 +02:00
Timm Bäder
f13cccd042
widget: Fix measure docs
...
Fix a typo and don't ever pass NULL to a ::measure() implementation.
2018-05-19 10:18:50 +02:00
Timm Bäder
a0d0b52034
scrollbar: Remove get_wheel_delta
...
Unused and undocumented.
2018-05-19 10:18:50 +02:00
Timm Bäder
caaa3f8200
cssvalue: Remove typechecks
...
This path is more than hot and those type checks ruin any kind of real
life profiling.
2018-05-19 10:18:50 +02:00
Matthias Clasen
84364a7ef4
emoji: Improve section scrolling
...
Leave some space above the section heading when scrolling.
This is a part of https://gitlab.gnome.org/GNOME/gtk/merge_requests/143
by Julian Sperber.
2018-05-17 16:42:00 +01:00
Matthias Clasen
1d368b0cd8
Merge branch 'paste-scrolling' into 'master'
...
textview: Don't scroll for pastes in another view
See merge request GNOME/gtk!152
2018-05-17 09:48:36 +00:00
Chun-wei Fan
9332237bd4
gtkemojicompletion.c: Don't use g_autoptr()
...
This code is also built with non-GCC/non-CLang compilers, so don't use a
GCCism here.
2018-05-15 13:49:45 +08:00
Matthias Clasen
71718b9cd1
textview: Don't scroll for pastes in another view
...
GtkTextView scrolls to the insertion point when the text
buffer signals a paste is done. This is wrong when there
are multiple views on the same buffer, and the paste
happened in another view.
To fix this, flip the handling of the scroll_after_paste
boolean to only be TRUE if we know that we want to scroll.
2018-05-14 13:03:34 +01:00
Mohammed Sadiq
9a79b090df
appchooserdialog: Fix memory leak
2018-05-13 14:57:04 +05:30
Mohammed Sadiq
b59a8c2911
appchooserdialog: Don't fire notify::heading twice
...
The gtk_app_chooser_dialog_set_heading() function do emit
notify::heading. Since the setter simply calls the function,
the setter itself shouldn't emit a notify signal by itself.
2018-05-13 14:56:49 +05:30
Mohammed Sadiq
0cd9ef8bcf
aboutdialog: Fix memory leak
2018-05-13 14:56:34 +05:30
Mohammed Sadiq
1f82697e99
video: Fix memory leak
2018-05-13 14:56:22 +05:30
Mohammed Sadiq
14e5218753
snapshot: Fix typo in documentation comment
2018-05-12 09:31:32 +05:30
Mohammed Sadiq
8410d87eb5
label: Rearrange struct members
...
Rearranging so can save us 8 bytes per GtkLabel
on 32/64 bit aligned memory.
Not a big count, but we get it for free.
2018-05-11 16:10:03 +05:30
Mohammed Sadiq
3c7ea78d68
textview: Always show select-all button in touch popup
...
"Select all" action is possible regardless of the text selection state
or if the text is editable or not.
2018-05-11 16:09:57 +05:30
Mohammed Sadiq
b73857faa9
textview: Reset bubble source id once run
...
The bubble_timeout_id was reset only on some special case.
And so warnings were shown when the source is being tried
to be removed with the already removed id.
Fix this by unconditionally resetting the id on start of the function.
2018-05-11 16:09:50 +05:30
Mohammed Sadiq
8e0cc8169e
textview: Simplify creating bubble action buttons
...
Buttons can be created simply with gtk_button_new_from_icon_name().
2018-05-11 16:09:44 +05:30
Mohammed Sadiq
33bacb4150
widget: Avoid an unnecessary check
...
The preceding loop terminates when either the widget is NULL,
or if their type matches. There is no reason to check that again
2018-05-11 16:09:38 +05:30
Robert Ancell
e95eeaeef1
Fix comment typo introduced in a32725bc9a
2018-05-09 11:28:53 +12:00
Matthias Clasen
f5a2ab38f3
Miscellaneous docs improvements
...
Just the usual pre-release doc fixups.
2018-05-07 07:47:18 -04:00
Daniel Boles
e1f1fe9ba6
MediaStream: Fix capitalisation of two new %TRUEs
2018-05-06 21:46:30 +01:00
Matthias Clasen
79e54929a2
Add more media docs
2018-05-06 15:57:10 -04:00
Matthias Clasen
7fdf3d1769
Fixes to the gtk docs
2018-05-05 18:03:31 -04:00
Daniel Boles
901aa59b5b
GesturePan: Remove widget parameter from docs, too
...
71991270b0 (note_112519)
2018-05-05 10:51:24 +01:00
Timm Bäder
f6a79559e9
inspector: Don't add controllers to non-window toplevels
...
That doesn't make sense in this context and breaks grabs.
2018-05-05 09:06:22 +02:00
Timm Bäder
64849426ae
inspector: Use unique names for g_object_set_data calls
...
Otherwise the calls of the different inspector pages might end up
clashing.
2018-05-05 09:05:02 +02:00
Timm Bäder
d1cdb9b5cf
widget: Clarify add_tick_callback docs
...
You don't pass the callback to remove_tick_callback, but the id returned
from add_tick_callback.
2018-05-05 07:39:55 +02:00
Timm Bäder
e379ea617a
stylecontext: Draw arrow-less insertion cursors as color nodes
...
This lets us avoid an often used cairo node.
2018-05-05 07:25:10 +02:00
Timm Bäder
f44959fa59
stylecontext: Remove outdated comment
...
gtktextview:invalidate_cursor_windwo is no more.
2018-05-05 07:25:10 +02:00
Timm Bäder
af27199102
widget: Directly access priv pointer in even controller API
...
Spares us a few lines.
2018-05-05 07:25:10 +02:00
Christian Hergert
613f7609c2
build: fix meson.build when quartz is used
...
We need access to the variable earlier in the file when the quartz
backend is being setup.
2018-05-04 17:46:08 -07:00
Matthias Clasen
0069de7e75
Merge branch 'altBackspaceEmacs' into 'master'
...
Add binding for <alt>BackSpace to emacs keys
See merge request GNOME/gtk!96
2018-05-04 00:39:39 +00:00
Matthias Clasen
be2853e5de
emoji chooser: Match search terms better
...
Use g_str_match_string for better results.
2018-05-03 20:36:19 -04:00
Benjamin Otte
8366ef71c0
dnd: Remove gdk_drop_reply()
...
It was only necessary for Motif DND, and we don't support that anymore.
2018-05-03 01:31:40 +02:00
Timm Bäder
622a150bb4
snapshot: merge container nodes
...
A container node inside another container node doesn't make a lot of
sense, we can instead just use the parent container node and add the
child container node's children to it directly.
2018-05-02 19:48:34 +02:00
Timm Bäder
2815054820
recorder: Fix cairo node display
...
We can only upload image surfaces as a texture but cairo nodes use
recording surfaces now.
2018-05-02 19:48:34 +02:00
Timm Bäder
e0205eb27c
widget: add shortcut to gtk_widget_set_child_visible
...
So we don't do unnecessary work when just setting priv->child_visible to
the same value again.
2018-05-01 15:13:11 +02:00
Timm Bäder
a54e5844b6
widget: Don't mention gtk_widget_snapshot() in the docs
...
It's not public so people can't know about it.
2018-05-01 15:13:11 +02:00
Matthias Clasen
1dcb76bc26
Merge branch 'wip/carlosg/controller' into 'master'
...
carlosg/controller
See merge request GNOME/gtk!131
2018-05-01 12:35:53 +00:00
Rico Tzschichholz
2cf55c1686
Fix some g-i annotation warnings
2018-05-01 12:35:32 +02:00
Benjamin Otte
995b29d8db
Merge branch 'lrn/meson-intl' into 'master'
...
Link libgtk to libintl
See merge request GNOME/gtk!113
2018-04-30 12:25:43 +00:00
Benjamin Otte
5166767e8b
Merge branch '169-gtktextview-accesses-already-disposed-object' into 'master'
...
Resolve "GtkTextView accesses already disposed object"
Closes #169
See merge request GNOME/gtk!109
2018-04-30 11:56:36 +00:00
Benjamin Otte
56cc470663
dragsource: Use capture phase for gesture
...
Otherwise buttons don't work as drag sources, and we like to do that.
2018-04-27 14:32:28 +02:00
Руслан Ижбулатов
76855e8999
imcontextsimple: ensure W32 code only runs on W32 displays
...
gdk_win32_keymap_check_compose() shouldn't be called for
non-W32 displays (i.e. when using broadway or other backends
that could be made to run on Windows).
2018-04-26 17:50:55 +00:00
Carlos Garnacho
3675f9ccb2
gesturestylus: Port to new API model
2018-04-26 17:59:42 +02:00
Carlos Garnacho
15e00759c7
eventcontrollerkey: Port to new API model
2018-04-26 17:59:42 +02:00
Benjamin Otte
ba7849960e
eventcontroller: Make widget no longer a construct-only property
...
The new API model is now complete. To set a widget on a controller, it
is now necessary to call gtk_widget_add_controller().
2018-04-26 17:59:42 +02:00
Benjamin Otte
c5f12a7326
padcontroller: Port to new API model
2018-04-26 17:59:42 +02:00
Benjamin Otte
4f3058f195
eventcontrollermotion: Port to new API model
2018-04-26 17:59:42 +02:00
Benjamin Otte
74dbb057ed
eventcontrollerscroll: Port to new API model
2018-04-26 17:59:42 +02:00