-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
8017 lines (6846 loc) · 282 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Overview of Changes in GTK+ 3.94.0
==================================
* GdkPaintable is a new, powerful abstraction for drawable content.
gtk4-demo has a new "Paint" demo to show some of its capabilities.
* There is support for displaying media, with
GtkVideo
GtkMediaFile
GtkMediaStream
GtkMediaControls
* GtkFontChooser now supports OpenType font variations and features.
* The Ctrl-Shift-E support in the simple IM context has been replaced
by an optional completion popup for Emoji alpha codes. This can be
enabled with the GtkEntry::enable-emoji-completion property.
* Wayland has an input method based on the text protocol now
* Input methods, print backends and media backends have been converted
to GIOModules and extension points, and support for generic loadable
modules has been dropped. Platform im modules are always included.
* GdkWindow has been renamed to GdkSurface.
* Applications can now create their own GtkSnapshot objects for
intermediate rendering.
* Widget event signals have been replaced by event controllers,
and some new event controllers have been introduced for this:
GtkEventControllerMotion
GtkEventControllerKey
GtkGestureStylus
* Event controllers can now be created in .ui files.
* Invalidation tracking has been changed, only gtk_widget_queue_draw is left.
* Observing widget contents and size is now done by using the
GtkWidgetPaintable object instead of connecting to widget signals.
* The GtkWidget::draw signal has been removed, widgets need
to implement GtkWidget::snapshot.
* GdkTexture now has GdkMemoryTexture and GdkGLTexture subclasses.
* The Vulkan support in GDK can now use a particular device that is
specified by the GDK_VULKAN_DEVICE environment variable. use
GDK_VULKAN_DEVICE=list to see them all.
* GTK+ Inspector
- has logging support, and the logging settings have been cleaned up
- has an fps overlay
* Removed APIs and features:
Individual event signals such as ::proximity-in-event
The ::draw signal
threading support
non-platform IM modules
papi and test print backends
GtkPlacesSidebar
GtkRecentChooser
GtkToolPalette
GdkStatus
gtk_true, gtk_false
gtk_widget_show_now
gtk_widget_draw
gtk_render_icon_surface
* Incomplete transitions:
The ::event signal is not still there, but it will be removed
The DND apis are not finalized yet
* Translation updates:
Croatian
Esperanto
Estonian
French
Friulian
Icelandic
Latvian
Polish
Russian
Scottish Gaelic
Spanish
Overview of Changes in GTK+ 3.93.0
==================================
Major changes:
* GdkScreen has been removed. All screen-related APIs have equivalents
in GdkDisplay. This affects APIs in both GDK and GTK, for example,
the GtkWidget::screen-changed signal has been replaced by a new
::display-changed signal. As part of this change, there is no longer
a GdkWindow representing the root window. The X11 backend has APIs
to get X screens and root windows.
* GdkVisual has been removed.
* GdkDeviceManager has been replaced by GdkSeat.
* Clipboard handling has been moved from GTK to GDK, and has been
modernized to provide an extensible, asynchronous, stream-based API.
This affects APIs in both GDK and GTK. GdkSelection has been replaced
by GdkContentFormats, GdkContentProvider, GdkContentSerializer and
GdkContentDeserializer. Selection-related events and APIs have
been removed.
This conversion is complete for copy-paste, the drag-and-drop APIs
are still in flux.
* The GdkCursor API has been modernized. We no longer have the
GdkCursorType enumeration. Instead, can be created from names
or from GdkTextures. In GTK, we now have gtk_widget_set_cursor().
* Settings and window-state changes have been converted from events
to signals on GdkDisplay and GdkWindow, respectively.
* GdkEvent has been converted to an opaque GObject.
* The GL renderer in GSK has been substantially completed, and is now
on par with the Vulkan renderer.
* The use of GdkPixbuf in APIs has been reduced, and the GskTexture
object has been moved to GDK as GdkTexture, to take its place. This
change affects both GDK and GTK, for example the GtkAboutDialog::logo
property now accepts a GdkTexture. As part of these changes,
support for GdkPixbufAnimation has been dropped.
* The handling of icon sizes has been changed. The GtkIconSize
enumeration allows selection normal or large icons now, and the
actual icon size is determined by the theme, using the -gtk-icon-size
CSS property. Among other things, this allows animating icon size changes.
Smaller changes:
* Build system:
- Meson can now be used to build GTK+ on Windows
- We install print backends again
- libepoxy 1.4 is required
- libcloudproviders 0.2.5 is required
* GDK:
- gdk_keymap_get_for_display has been renamed to gdk_display_get_keymap
- We are no longer reading the GDK_DPI_SCALE environment variable
- The GdkX11Display::xevent signal has been added (to eventually replace event filters)
- gdk_pango_context_get_for_screen and gdk_pango_context_get have been dropped
- Default-display wrappers like gdk_set_double_click_time, gdk_beep, gdk_flush or
gdk_notify_startup_complete have been dropped
- gdk_display_set_program_class has been moved to the X11 backend
- The gdk_error_trap_push/pop APIs have been dropped, the X11 backend still has them
* Wayland:
- The Wayland backend now implements the KDE server-side decoration protocol
* Broadway:
- Broadway has been ported to GSK
- Only Unix domain sockets are supported now (we are passing fds to upload textures)
* GSK:
- We use cached textures for icons now
- We also use cached textures for symbolic icons, and recolor using a shader
- The glyph cache supports hi-dpi
- Some render node APIs have been tweaked: cairo, text, transform nodes
- GskRenderer::scale-factor and GskRenderer::viewport have been dropped
- gsk_render_node_set_scaling_filters has been dropped
* GTK:
- A new event controller, GtkEventControllerMotion, is intended to replace
most remaining uses of ::motion-notify-event
- New APIS: gtk_widget_contains and gtk_widget_pick
- gtk_widget_get_content_size has been replaced by gtk_widget_get_width/height
- The GtkWidget:parent-set signal has been dropped
- GtkHeaderBar::show-close-button has been renamed to ::show-title-buttons
- GtkFontButton::font-name has been replaced by GtkFontChooser::font
- The GtkTextTag::event signal has been dropped
- The text buffer serialization API has been removed
- We longer install 'semi-private' headers like gtktextlayout.h or gtktextdisplay.h
- gtk_application_is_inhibited has been dropped
* Theming:
- Focus rendering has been changed. Outlines are always rendered now, and
we set the :focus and :focus(visible) pseudo-classes on elements to allow
the theme control over where to render focus rectangles
- The font-feature-settings CSS property is supported
- The -gtk-icon-size custom CSS property allows theme control of icon sizes
* Emoji:
- We support Ctrl-. and Ctrl-; to pop up the Emoji chooser
- The Emoji chooser is also available in GtkTextView
- We avoid overly wide fallback rendering with some EmojiOne fonts
* GtkInspector:
- The inspector shows more render node details
- The UI has been slightly reorganized
* Bugs fixed:
668590 Need to check result of g_bus_get()
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
775279 early calls to libepoxy cause all gtk3 programs to abort when ther...
777072 window shrinks when restored from maximized
779009 Missing property-change::accessible-description events when the to...
779862 Deprecate/rename gtk_header_bar_set_show_close_button() et. al.
783995 Monitor API inconsistencies across X11 & Wayland
784314 entry completion regression on wayland
785176 Add an item for favorite files in the GtkPlacesSidebar
785210 meson: Support build on Windows (using Visual Studio at least)
786123 GtkPlacesSidebar: Add support for libcloudproviders
787089 win32: GtkWindow of type GTK_WINDOW_POPUP/GDK_WINDOW_TEMP leaks me...
787128 Re-add FUSE network mounts in local-only mode
787142 Avoid assertion failed warnings from pango_layout_get_cursor_pos()...
787665 gdk_frame_clock_get_frame_time is irregular and causing stuttering
788841 Fix gtk_actionable_set_detailed_action_name API inconsistency
788898 Inspector: Default paned split position/ratio between tree and pro...
789054 Firefox crashes @gdk_window_begin_move_drag() on WM without _NET_W...
789134 gtk3-icon-browser: the copy button is not centred on the dialog
789149 GtkGestureZoom leaks the list of sequences while calculating the d...
789160 Add Windows compatible emoji shortcuts
789163 Fitzpatrick modifier selection requires lifting mouse button
789198 gdk: add accessor for GdkEventOwnerChange::reason
789213 Two Windows with GLAreas go horribly wrong
789327 appchooserwidget: Don't limit application list unconditionally
789357 Regression in 3.22.23: GDK_WINDOW_STATE_TILED flag is never set
789678 [GtkAboutDialog] GTK_LICENSE_AGPL_3_0 does not work
789733 Adwaita/HC: Fix entry.flat not being flat
789777 Resolving undefined reference to gdk_get_default_root_window
789870 gtk+4, GtkWindow: Several bugs when icon became a cairo_surface_t
790029 GtkTextView: Support gtk 3.22.19's emoji chooser
790031 GtkClipboardClearFunc is not being called
790171 gtk+4, GtkCssImageIconTheme: Don't unref a NULL pointer
790201 Settings in ~/.config/gtk-3.0/settings.ini ignored with GDK_BACKEN...
790287 gtk+4, GtkWindow: icon_from_list() does not scale down large icons
790489 broadway: Add missing dependency to build
790920 Add GdkSeat convenience API
790963 Thread safety issue in gtk_application_impl_dbus_startup
791062 Fix mapping window with complete xdg-foreign state
791176 GtkFileChooser: gtk4 defaults local_only to FALSE so docs need to ...
791281 Backport size allocation optimization from master to 3.22
791363 Shadow vertical offset is wrong when scaling is > 2
791549 gtklistbox: Crash on page-up on GtkListBox
791650 Do not warn about missing colord systemd service unit
791926 Cannot build gtk4 with documentation enabled
791927 Using '#!/usr/bin/perl' in scripts is not portable
* Updated translations:
Arabic
Czech
Polish
Russian
Serbian
Overview of Changes in GTK+ 3.92.1, 重庆市
==========================================
The bulk of the preparation for this release was done during
and after the fantastic GNOME.Asia Summit 2017 in Chongqing, China.
* Drop autotools support. Meson 0.42.1 is now required
* Implement most of CSS3 font-variant
* Add an Emoji chooser to GtkEntry
* Add new input hints for Emoji input
* Remaining widgets have been ported to GtkSnapshot
* GtkLabel and GtkEntry have been ported to use GSK
* Add a way for GtkOverlay to blur behind children. This is has a
demo in gtk4-demo
* Add support for native file choosers on older OS X versions
* Add support for libcloudproviders in GtkPlacesSidebar
* Non-windowed widgets are now allowed to have a size of 0x0
* Allow tiled windows to be resized. Under wayland, this uses version 2
of the gtk-shell protocol. Under X, it uses the _GTK_EDGE_CONSTRAINTS
property
* Input handling changes
- GdkEvent has new accessors for fields
- Traditional event signals (eg ::key-press-event) are now emitted from
an event controller
- Most widgets inside gtk have stopped using traditional event signals
- GDK_SEAT_CAPABILITY_ALL_POINTING now includes touch events
* Scrollbars allow middle-click to jump to a position again
* GSK changes:
- Add gsk_text_node_new
- Add a glyph cache for the Vulkan backend
- Add gsk_blur_node_new
- Add gsk_cross_fade_node_new
- Implement blur for Vulkan
- Implement repeat nodes for Vulkan
- Add gsk_blend_mode_new
- the vulkan backend now uses multiple render passes, avoiding many
fallbacks to cairo rendering
- The profiling output for vulkan is now more useful, showing how many
pixels of fallback rendering and intermediate textures we consume
* Inspector:
- The recorder shows more useful information about render nodes
- The general tab shows gsk and vulkan information
* Removed apis
- gdk_window_new_input
- gtk_widget_set_redraw_on_alloc
- gtk_widget_get_{border,content,margin}_allocation
- gtk_container_propagate_draw
- deprecated CSS properties and syntaxes
* Bugs fixed:
639931 gtk_application_add_window() docs should mention window destruction
644248 stylecontext: add a raised style class
705640 GtkWindow incorrectly requires a default screen
766909 Tooltip of the eject button is a bit confusing - or just missing
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
775074 GtkScrolledWindow does not disconnect all GtkAdjustment signal handl...
775126 memory leak in gdk_wayland_window_ensure_cairo_surface
778382 gtk_css_static_style_get_default doesn't check for a null setting
778811 Enter submenus when activating their parent item
780750 Shift + click in GtkEntry doesn't select
780758 flowbox: bind_model passes wrong reference to create_widget_func in...
781757 gdk_seat_grab() not working for touchscreen events
782981 meson fixes
783649 negative content width warning in GtkLevelbar
783669 Allow resizing tiled windows
784016 Crash in gnome-terminal due to calling a GdkDisplayClass vfunc on a...
784421 Tooltips: Fix docs/theming for custom tooltip windows
785210 meson: Support build on Windows (using Visual Studio at least)
785306 FileChooserNativeQuartz: two fixes
785736 textview: fix bug on DnD displaced limits of selection
786144 GtkInfoBar Example - Wrong at developer.gnome.org (looks like typo/...
786209 X11: GtkPopover positioning doesn't "avoid" CSD window shadows
786400 "Art pen" named "Grip pen" in the Gnome Control Center
786469 gdkwindow: Avoid re-setting the opaque region if it doesn't change
786485 Image upload broken on vulkan
786492 Incorrect scaling factor with Vulkan on Wayland
786553 Wrong example number in Gtk Tutorial
786613 Adwaita: provide a generic sidebar icon and label styling
786673 Wayland: Crash in GtkEntryCompletion
786885 Add explanatory tooltip to emoji icon
786931 rnc/rng files specify "class" as mandatory for objects, but the par...
786932 Let the "type-func" override the object's "class" attribute when ge...
786938 Emoji picker wrongly opens when clicking on primary icon too
786940 ::icon-pressed handler stays connected when setting :show-emoji-ico...
786956 EmojiChooser: Fix theming on Adwaita:dark, HighContrast, etc.
786960 Emoji chooser: don't show 'insert Emoji' item in emoji chooser cont...
786964 Emoji Chooser: Can't scroll clicking on the scroll bar
786966 Emoji chooser: unnecessary spacing b/w some rows in search result
787021 GtkFlowBox: the orthogonal orientation always requests the most siz...
787103 gtk3-widget-factory crashes on exit after inserting an emote on page3
787172 EmojiChooser: Improve selection of section buttons
787279 EmojiChooser: Hovered emoji become impossible to see in HighContras...
787302 gtk+-3.22.20/gtk/gtkmountoperation-x11.c:669:sanity check after use ?
787303 gtk+-3.22.20/gtk/gtknotebook.c: 2 * redundant conditions ?
787410 entry: fix memory leak
787416 build: Improve subproject support for builds
787444 The color-selection dialog which is opened by a GtkColorButton shou...
787531 The tick button is not/barely visible on light colors with Dark theme
787600 PlacesSidebar/SidebarRow: CloudProvider singleton/accounts are neve...
787757 Focus outline easily disappears around color chooser swatches
788230 Bump GLib version to 2.53.7
788458 (style) Array index 'i' is used before limits check.
701296 gtkfixed accepts toplevel windows into its children list after gtk_...
728452 gtk_tree_view_column_create_button creates button which is leaked
763517 Selected then unselected Label in ListBox gets wrong colour until h...
786794 Print dialogue has a printer called "printer"
787669 Middle mouse click on scrollbar is ignored
787866 Untranslated key labels in the Keyboard panel of Settings
788534 cairo-node-serialization: Adjust bytes when width bytes != stride
788573 HighContrast: titlebar separator is too wide and joined to buttons,...
788614 Trying to reuse a TreeViewColumn causes criticals and a segfault (e...
788787 gtktextview: Add a missing g_assert_not_reached() for switch defaul...
788905 GtkRange horizontal scrolling causes movement in the wrong direction
* Translation updates:
Basque
Brazilian Portuguese
Catalan
Chinese (Taiwan)
Croatian
Czech
Danish
French
Friulian
Galician
German
Hungarian
Indonesian
Italian
Kazakh
Korean
Latvian
Lithuanian
Malayalam
Nepali
Persian
Polish
Romanian
Russian
Serbian
Serbian Latin
Slovak
Slovenian
Spanish
Swedish
Turkish
Overview of Changes in GTK+ 3.91.2
==================================
* All widgets are drawing CSS backgrounds and borders
* All gadgets have been replaced by widgets
* GtkSpinButton no longer derives from GtkEntry
* GtkScrollbar no longer derives from GtkRange
* GtkAccelLabel no longer derives from GtkLabel
* All remaining style properties have been removed
* A new 'widget bowl' demo has been added in gtk4-demo
* GtkEventBox has been removed. It is no longer needed
* Add support for entering emoji by name using Ctrl-Shift-e
* Wayland:
- Support Wacom tablet wheel scrolling
- Support the shortcut inhibitor protocol
* Bugs fixed:
776903 Label with hyperlinks cannot be opened with touch on wayland
776909 gtk_adjustment_clamp_page: Conditional jump or move depends on unin...
777333 In a GNOME Wayland session, gnome-terminal windows cannot be moved ...
777515 gtk3-icon-browser doesn't list document-edit-symbolic icon
778188 TE crashes on multiple repeated BELL chars
780938 No icon tooltip shown in GtkEntry
781246 Return value of gtk_widget_get_parent_window should be marked (nullable)
783343 wayland: RFC - add shortcut inhibitor support
783906 gtk_accelerator_get_label broken
784016 Crash in gnome-terminal due to calling a GdkDisplayClass vfunc on a ...
784624 process-stop-symbolic hardcoded as app menu fallback
785280 GtkCenterBox: No G_BEGIN_DECLS and G_END_DECLS in gtkcenterbox.h
785318 GtkActionBar: g_object_class_install_properties() is not called
785375 Cursors for Wacom tablets are not always updated correctly under Wayland
785423 Missing nullable annotation for gtk_bin_get_child
785672 Entry: Setting icon tooltip to empty disables tooltip on whole widget
785793 gsk_color_matrix_node_draw leaking cairo_pattern_t
* Translation updates:
Croatian
Czech
Friulian
Indonesian
Punjabi
Slovenian
Spanish
Overview of Changes in GTK+ 3.91.1
==================================
* Redo event delivery and focus handling and grabs, and stop using
subwindows for widgets. API changes due to this include:
- a new GtkWidget::pick vfunc
- drop event mask apis
- drop windows from gestures
* The prelight state is now automatically set on widgets
* New widget: GtkCenterBox. This widget provides the center child
functionality that used to be part of GtkBox
* Wayland
- Improve the key repeat implementation
- Set vid/pid on tablet devices
* OS X:
- Add native file chooser support
* Bugs fixed:
745289 wayland: do not use g_error() on connection errors
759308 Instant apply in printing dialog (number of copies)
766517 GtkAboutDialog should use https:// license URLs
770513 MainToolbar in full-screen mode has rounded corners, which show video pix...
772281 Quartz backend: gtk_clipboard_get_selection not implemented
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
775636 "New folder" creation popover warnings about trailing spaces flashes in...
781285 Key repeat cancel under Wayland should depend on which key is repeating
781583 gtk_image_new_from_resource does not work
781935 Add nullable return annotation to gtk_notebook_get_tab_label
781945 SIGSEGV dragging window on Wayland when toplevel window set_transient_for...
782040 Wacom pen calibration application responds to mouse input
782283 Wayland: Crash when dismissing a menu when a tooltip is visible
783047 Many apps crash in gdk_event_source_prepare when logging out of GNOME
783347 gtkfilechoosernativewin32: Fix support for non-ASCII paths
783397 Remove unused code in gtktextdisplay.c
783445 Incomplete documentation of gtk_widget_insert_after/before()
783587 Crash when NULL is passed to GtkActionHelper to unset action-name
784323 Quartz backend: gtk_clipboard_get_default not implemented
784723 macOS: native file chooser dialog
784888 gtkapplication: Mark gtk_application_get_active_window() as nullable
* Translation updates:
Catalan
Czech
Friulian
Hebrew
Kazakh
Norwegian bokmål
Spanish
Overview of Changes in GTK+ 3.91.0
==================================
* Initial support for OS X has been merged
* Initial support for building with meson has been added
* New API:
- gtk_widget_insert_before/after
* Removed API:
- GtkBox has lost its expand and fill child properties, use
the general align property for it
- GtkLabel has lost its angle property, it will be replaced by general
widget transformation support in the future
- GtkWindow has lost its hide-titlebar-when-maximized property
- GtkBox has lost its center child support
- The compat keysym definitions have been removed
* Bugs fixed:
769881 Preliminary Meson build files
771269 Open in new tab / window doesn't work on unmounted file systems
778301 GtkTooltip doesn't clear source ID in all circumstances
778853 propagate-natural-width/height request too much with !overlay-scrolling...
779078 Adwaita: last treeview header button adds border on hover
779184 Gtk+4 (3.89.4) with Quartz backend: all apps segfault
780041 Optionally depend on sassc to generate the theme CSS
780301 wayland: Fix harmless clang warnings
780734 flowbox: don’t try to focus or draw NULL widgets
780878 docs: Point links to correct versions
780944 Please add a specific CSS class for appmenu button in GtkHeaderBar
781162 Make GtkPlacesView monitor network
781195 Fix testsuite for GtkPlacesView
781214 define entry-tag in Adwaita.
781422 translate_wm_button_layout_to_gtk() is licensed under the GPL
781622 gtkplacesview.ui: Update helper label to include IPv6 addresses
781737 Drag icon is always postioned in the top left corner
781767 Wayland: increase key delivery verbosity
781992 GtkMenuButton with no popover retains prelight state when no longer sel...
782109 wayland: memory leak when exporting handle
782202 linkbutton: Fix memory leak
* Translation updates:
Croatian
Greek
Hungarian
Indonesian
Polish
Russian
Slovenian
Overview of Changes in GTK+ 3.90.0
==================================
* Allow a custom renderer for the inspector, by setting GTK_INSPECTOR_RENDERER
* Move more container functionality, such as focus handling, to GtkWidget
* Bugs fixed:
686838 gtk_enumerate_printers() hangs
778853 propagate-natural-width/height request too much with !overlay-scrolling...
779081 GtkTextView: expose API to get Pango line direction
780019 gtk+3 3.22.10 does not compile on macOS Yosemite
780234 gtk_print_job_set_page_ranges() has unclear ownership transfer
734946 Implement GContentType on OSX
773228 third parameter of gtk_widget_intersect not listed as 'out'
774148 Gtk.Popover misplacement in Wayland
780735 flowbox: don’t select when rubberbanding over nothing
fix flicker caused by buffer age
fix hi-dpi fallback rendering
force window titles to be valid UTF8
* Translation updates:
Friulian
German
Indonesian
Latvian
Polish
Russian
Overview of Changes in GTK+ 3.89.5
==================================
* Convert many more widgets to use gtk_widget_measure for size allocation
* gtk3-demo: Add an example for touchpad swipe handling
* Theme: Improve styling for flow boxes
* Quartz:
- Support fullscreen CSD windows
- Implement backdrop
- Implement gdk_window_set_functions
* Bugs fixed:
136059 Ctrl-navigation works in opposite direction in right-to-left text
734946 Implement GContentType on OSX
772505 Wayland: menu does not resize after disabling an action
776821 Scale factor not properly propagated upon reparent
778019 Key repeat under wayland behaves differently, making keyboard navigation...
778203 icon shown at top left corner when dnd begins
778534 Widget: Document signal mnemonic-activate
778678 gtkshow: Prefer gtk_show_uri_on_window() which works for sandboxed apps
778726 Use gtk_show_uri_on_window()
778746 Rename popover is sometimes misplaced
779073 style flowbox tiles
779074 style selectionmode checkboxes for flowbox
779147 Inspector: Use Title Case for labels & menu items
779317 gtk_pad_controllerpad_set_action issue with incorrect assert
779374 Unprovoked key repeat in gnome-terminal after in 3.22.9
779383 quartz: Let CSD windows be fullscreen
779392 Implement backdrop for Quartz
* Translation updates:
Basque
Brazilian Portuguese
Catalan
Chinese
Chinese (Taiwan)
Czech
Danish
Finnish
French
Friulian
Galician
German
Hungarian
Icelandic
Indonesian
Italian
Kazakh
Korean
Lithuanian
Norwegian bokmål
Polish
Scottish Gaelic
Serbian
Slovak
Spanish
Swedish
Overview of Changes in GTK+ 3.89.4
==================================
* API changes
- gtk_init and other init functions no longer take commandline arguments
- Functions that are only useful with commandline arguments have been dropped
- Widgets, except for toplevels, are now visible by default
- Style properties are no longer supported
* Vulkan rendrerer
- Implement more clipping
* CSS
- Specifying px for pixels is now required
* Bugs fixed:
358970 gtk_scale_set_digits does not cause value to be rounded if draw-value...
770112 The documented <alt>left shortcut doesn’t work on Wayland
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
773686 Software when launched shows in dash with wrong icon, name and menu
775864 getting-started: typo tie->the
776225 [wayland] dropdown placed somewhere in the screen
777363 wayland: avoid an unnecessary g_list_length call
777547 Notebook arrow icon wrong color after closing final tab
778009 menu drawn on top of menubar in Fedora
* Translation updates:
Finnish
Galician
German
Icelandic
Kazakh
Polish
Simplified Chinese
Slovak
Spanish
Overview of Changes in GTK+ 3.89.3
==================================
* GtkWidget now has API to navigate child widgets:
- gtk_widget_get_{first,last}_child and gtk_widget_get_{prev,next}_sibling
- A number of non-container widgets have been converted to use
child widgets internally: GtkSwitch, GtkSpinButton, GtkActionBar
* GtkAboutDialog can show a 'System' tab
* GTK+ CSS now supports the filter: property and a -gtk-icon-filter
function that replaces and generalizes -gtk-icon-effect
* GtkInspector can now save render nodes for testing and debugging
* More tests for render nodes have been added
* GtkTreeView and cell renderers have been more completely converted to
the snapshot() api
* More widgets have been converted to snapshot(): GtkCalendar, GtkColorPlane
* Vulkan renderer:
- Combine draw calls when possible
- Handle (some) clipping on the GPU
- Handle linear gradients
- Handle opacity
- Support color transformations
- Handle borders
* Wayland
- Support the Vulkan renderer
* X11
- Call XInitThreads(), since this is needed with Mesa Vulkan drivers
* Mir
- Implement window properties
- Track the focus window
- Connect to content-hub and use it for copy/paste
- Support modal windows
* Bug fixes:
775732 mir: clipboard support missing
775846 gdk/wayland: Add support for the gtk-enable-primary-paste gsetting
776524 GtkAboutDialog: Fix formatting of example email address in html documentation
776560 icon-browser: window opens at very narrow size, only showing 1 column of icons
776604 about dialog: Add a "system" tab
776627 Correct PostScript capitalization
776807 GtkInspector doesn't show up when Gtk is initialized through option group
776868 Improve the documentation of GtkEntry:attributes
777176 [wayland] gedit killed by protocol error "Invalid anchor rectangle size"
* Translation updates:
Brazilian Portuguese
Catalan
Czech
German
Hungarian
Norwegian bokmål
Russian
Spanish
Overview of Changes in GTK+ 3.89.2
==================================
* gtk4-icon-browser works again
* gtk-encode symbolic works for icons with names containing dots
* GtkFlowBox and GtkListBox have been changed to no longer emit
the ::selected-children-changed signal during destruction
* gtk-demo has gained an example for using PangoTabArray with GtkTextView
* We now support CSS border-spacing in GtkGrid, GtkBox and in gadgets
* The rendering in GDK and GSK has been further refactored. We now
only draw toplevel windows, and we always redraw the whole window.
* A Vulkan implementation has been added in parallel to the GL one
* Dropped APIs:
gdk_window_process_updates
gdk_window_process_all_updates
gdk_window_reparent
support for native and foreign subwindows
gsk_render_node_{append/prepend/insert} variations
gsk_render_node_make_immutable
gtk_cairo_should_draw_window
gtk_snapshot_append
GtkJunctionSides
* New APIs:
gdk_rgba_is_clear
gdk_rgba_is_opaque
GdkDrawContext: A base class for vulkan and gl contexts
Render node subclasses
GskRoundedRect
gtk_container_snapshot_child
* The GSK_USE_SOFTWARE environment variable has been generalized as GSK_RENDERER.
Use GSK_RENDERER=help to learn about possible values. Other environment variables
that have gained new possible values in clude GSK_DEBUG=vulkan and GTK_DEBUG=snapshot.
* Bugs fixed
749012 GtkStack: Don't emit notify::visible-child during destruction
771242 opening menu for certain types of GtkComboBox causes Gdk-CRITICAL assertion...
772371 Take advantage of Unicode
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
774265 No tilt for wintab devices
774534 input shape and opaque region not applied without begin_paint()/end_paint()
774686 GtkMenu does not unref all GtkCheckMenuItem it creates
774695 GtkProgressbar needs full and empty classes
774743 GtkNotebook does not unref all GtkBuiltinIcon it creates
774760 inspector: ensure controller is a GtkGesture
774784 Failed to get desktop session proxy is not an error!
774790 GtkTextHandle does not unref all GtkAdjustment it references
774893 Application font sizes scaling gets clamped to 1.00 when starting GtkInspector
774915 Destroying the parent of a subsurface causes _gdk_window_destroy_hierarchy: ...
774917 child subsurfaces need to be placed relative to their parent
774939 GtkLabelAccessible: Initialize link before setting parent
775038 Build: Add wayland to GSKs dependencies
775212 GtkScaleButton does not unref all GtkAdjustment it references
775316 gtk_drag_source_set_icon_pixbuf references the pixbuf received once too much
775319 gdk_window_get_toplevel() fails to return the toplevel of a child subsurface
775410 gsk/Makefile.am runs g-ir-scanner before libgsk-4.la is linked
775525 gtk_flow_box_get_child_at_index shouldn't crash with an invalid index
775651 GdkX11-4.0.gir, GdkWin32-4.0.gir, and Gsk-4.0.gir are generated before Gdk-4...
776132 Mention the difference between gdk_window_create_similar_image_surface and c...
776187 flowbox: Add gtk_flow_box_get_child_at_pos to gtk3
776306 flowbox: Sometimes emits child-activated during rubberband selection
* Translation updates
Czech
German
Hungarian
Italian
Kazakh
Russian
Spanish
Overview of Changes in GTK+ 3.89.1
==================================
This release marks the first snapshot of development leading to GTK+ 4,
it is unstable and expected to change drastically.
Do not use it in production.
GTK+ 3.89 is parallel-installable with the stable GTK+ 3.22.x releases.
The API documentation contains an initial migration guide for porting
from GTK+ 3 to GTK+ 4.
Detailed changes:
* GSK has been integrated. Widgets are now rendered into
GskRenderNodes, which then get drawn using GL
* GTK+ now installs a single shared library, libgtk.so, which includes
GDK and GSK as well
* All installed binaries now use a consistent gtk4- prefix to avoid conflicts
* Dropped APIs:
- all APIs that have been deprecated in GTK+ 3
- (almost) all widget style properties
- offscreen windows
- -gtk-gradient in CSS
- gdk_pixbuf_get_from_window and gdk_cairo_set_source_window
* Changed APIs:
- GtkCssProvider load functions lost their GError argument
* New APIs:
- GMenu items can now have a text-direction attribute
- GtkShortcutsShortcut supports single-finger swipe gestures
- gdk_display_is_rgba and gdk_display_is_composited
- New GtkButton API to construct image buttons:
gtk_button_new_from_icon_name
gtk_button_set_icon_name
- New GdkWindow constructors replacing gdk_window_new:
gdk_window_new_toplevel
gdk_window_new_popup
gdk_window_new_temp
gdk_window_new_child
gdk_window_new_input
gdk_wayland_window_new_subsurface
- gtk_widget_measure replaces gtk_widget_get_preferred_...
- gtk_widget_snapshot replaces gtk_widget_render
- gtk_drawing_area_set_draw_func replaces the ::draw signal
* New examples in gtk4-demo:
- Gestures
- Fishbowl
* GtkInspector now has a frame recorder which shows detailed information
about the widget to render node conversion
* Hi-DPI is now supported with the Windows backend
* gtk-builder-tool can now replace the input file
* Bugs fixed:
756570 gtkplacesview no longer provides guidance on address formats
767713 Fullscreen in wayland is buggy
768531 wayland: Startup notification doesn't work on some apps (eg. gnome-terminal)...
771205 Buttons with circular style class have a suddenly clipped shadow at the bottom
771320 [Wayland] Maps widget is displayed at wrong position inside gnome-contacts
771694 GtkSourceView completion popup window not shown, no grabbed seat found
772075 GTK+ uses a lot more CPU under Wayland than under X11
772345 placesviewrow: busy_spinner when visible offsets the rest of the widgets on the row
772348 placesviewrow: busy_spinner when visible offsets the rest of the widgets on the row
772683 Usage of FALSE instead of gint in glarea demo
772695 Show the keyboard shortcuts from left to right even in RTL
772770 [GtkShortcutsWindow] Support for single-finger swipe gestures
772859 Fix memory leaks in implementations of common widgets
772922 GtkMenu: Try using gdk_window_move_to_rect() more often
772926 shortcutswindow: working version of set_section_name()
773007 GtkFilechooser gives completion for non-matching extensions
773082 overlay: Document availability of properties
773113 tests: fix clipboard test by loading correct icon
773180 Don't second-guess whether our GDK GL context is GLES
773246 Typo in css color definitions documentation
773299 Ensure GTK+-4.x builds and works on Windows (MSVC in particular)
773474 Color chooser dialog opened with show-editor=TRUE has black header bar
773587 recent-manager: Add a limit to the list's size
773799 GtkLevelBar doesn't update blocks on discrete mode
773857 gdkwindow-x11: Add support for gdk_window_fullscreen_on_monitor
773885 pop down GtkPopover on pressing escape
773903 Gtk+4: gtk.h and gtktextiter.h include private gtktextattributes.h
773916 GtkComposeTable caches broken: using a same ~/.XCompose does not work twice in a row
773954 gtkstylecontext: Clarify memory allocation behaviour of getters
773979 GdkGLContext does not chain finalize handler
774046 GtkSpinButton does not always unref priv->{up,down}_button
774066 GtkHeaderBar does not unref all GtkBox and GtkSeparator it creates
774097 GtkPrintOperation should not truncate job names
774114 Window shadows are repainted even if only the contents of the window change
774185 GtkPlacesSidebar does not unref itsel as many times as it references
774347 Fails to build: unknown type name GdkColor
774352 GtkAppChooserWidget does not unref all GAppInfo it references
774475 wayland: gtk+ prevents using subsurfaces if the parent is not root
774476 surfaces with no outputs get scale factor reset
774490 Deprecated example for modify color or font
774609 small fix to foreign drawing spinbutton demo
774614 Wrong #include in Print docs
774634 GtkPlacesView does not unref all GDaemonFileEnumerator it references
774695 GtkProgressbar needs full and empty classes
774699 wintab: list iteration regression causes odd-indexed devices to be ignored during...
* Translation updates
Brazilian Portuguese
Catalan
Czech
Danish
French
German
Greek
Hungarian
Kazakh
Lithuanian
Polish
=======================================================================
Overview of Changes in GTK+ 3.22.1
==================================
* Reduce runtime warnings
* Bug fixes:
765649 icons missing in file chooser (errors on console)
769500 adwaita: GtkWidget:sensitive animation should not cause "On" ...
769554 [Mir] Touchpad scrolling not as smooth as it should be
770388 GtkTreeView: attempt to underallocate GtkTreeView's child Gtk...
771516 wayland: Only 'moved-to-rect' if move_to_rect() was used
771553 Shrinking window generates a black patch when gl is used
771666 sftp:// property not set for translation in 3.21.92
771812 Crash when reparenting a popover with a non-null parent_scrol...
771826 Some missing nullable annotation
771915 [Wayland]: Totem window misplaced after a state change
771959 gtk_init_with_args fails when no display is found / does not ...
771963 GtkPaned warning in gtk_paned_realize
772057 Fix wrong URL copy/paste (patch)
772215 icon-theme: Fix leaks on error
* Translation updates:
Arabic