1Overview of Changes in 4.4.1 2============================ 3 4* input: 5 - Fix compose data on bigendian systems 6 - Accept long replacement strings for compose sequences 7 8* a11y: 9 - Fix accessible relations for menu buttons 10 - Fix accessible descriptions in some cases 11 - Simplify atspi context a bit 12 13* Theme: 14 - Improve styling for toggle buttons in toolbars 15 16* gsk: 17 - Avoid coordinate overflow with big text selections 18 19* GtkTextView: 20 - Fix applying css properties such as 21 letterspacing, line decoration, font 22 features, etc 23 - Improve grouping for undo 24 - Invalidate Pango contexts when font settings change 25 - Fix a crash 26 27* GtkFileChooser: 28 - Fix handling of choices 29 30* GtkStackSwitcher: 31 - Expand child buttons 32 33* GtkCalendar: 34 - Fix day names for weeks that start on monday 35 36* GtkWindow: 37 - Prefer menubars when handling F10 38 39* GtkFontButton: 40 - Make sure the dialog is on the same display 41 42* X11: 43 - Fix handling of randr events 44 45* Windows: 46 - Fix DND coordinates 47 - Fix build 48 49* macOS: 50 - Fix handling of scale on macOS 12 51 52* build: 53 - Fix detection of pre-compiled css files 54 55* Translation updates 56 Basque 57 Brazilian Portuguese 58 Catalan 59 Chinese (China) 60 Croatian 61 Czech 62 Danish 63 Finnish 64 French 65 Galician 66 German 67 Hebrew 68 Hungarian 69 Icelandic 70 Indonesian 71 Kazakh 72 Korean 73 Latvian 74 Lithuanian 75 Persian 76 Polish 77 Portuguese 78 Romanian 79 Russian 80 Serbian 81 Slovak 82 Slovenian 83 Spanish 84 Swedish 85 Turkish 86 Ukrainian 87 88 89Overview of Changes in 4.4.0 90============================ 91 92* Input: 93 - Match IBus for display of Compose sequences 94 - Match IBus for handling of mismatches 95 - Handle Escape in Compose sequences 96 - Allow multiple dead keys 97 - Support 32bit keysyms 98 99* GtkCheckButton: 100 - Activate when moving focus 101 102* GtkLabel: 103 - Propertly ignore double underscores for mnemonics 104 105* GtkPopoverMenu: 106 - Fix focus cycling 107 108* GtkTextView: 109 - Improve word selection 110 - Fix block cursors on empty lines 111 112* GdkToplevel: 113 - Support the gnome-shell titlebar gesture protocol 114 115* GdkDropTarget: 116 - Allow creating drop targets in ui files 117 118* gsk: 119 - Handle partial color fonts correctly 120 - Use harfbuzz for color font information 121 - Avoid pango for glyph cache rendering 122 - Shrink shadow extents 123 124* Settings: 125 - Change the default for gtk-split-cursor to FALSE 126 127* Demos: 128 - Small improvements to widget-factory 129 - gtk-demo: Improve the hypertext demo 130 - gtk-dem: Improve the clipboard demo 131 132* X11: 133 - Set WM_CLASS on toplevels 134 135* Wayland: 136 - Support wl_seat v7 137 138* Windows: 139 - Drop the local DND protocol 140 - Avoid WGL if shaders don't work 141 - Use WinPointer API 142 143* Translation updates: 144 Belarusian 145 Friulian 146 Hebrew 147 Khmer 148 Persian 149 Polish 150 151 152Overview of Changes in 4.3.2 153============================ 154 155* GtkToggleButton: 156 - Fix the actionable implementation 157 158* GtkCheckButton: 159 - Fix the actionable implementation 160 - Cancel activation on when the pointer leaves 161 162* GtkMenuButton: 163 - Make activatable again 164 - Add a way to have an icon + arrow 165 166* GtkColorButton: 167 - Make activatable again 168 169* GtkFontButton: 170 - Make activatable again 171 172* GtkAppChooserButton: 173 - Make activatable again 174 175* GtkColumnView: 176 - Fix double activation 177 178* GtkLabel: 179 - Fix mnemonics without markup 180 181* GtkTreeView: 182 - Clip header buttons 183 184* GtkTextView: 185 - Add api to get the RTL and LTR contexts 186 - Fix some errors in text history grouping 187 188* GtkText: 189 - Don't show placeholder text on top of entry text 190 - Add api to compute the cursor extents 191 - Fix y coordinates for text selection 192 193* GtkFileChooser: 194 - Don't show Trash in the side bar 195 196* GtkPopoverMenu: 197 - Add scrollbars to long menus 198 199* GtkActionMuxer: 200 - Fix propagation of accel changes 201 202* Introspection: 203 - Annotate all filename arguments 204 - Rename GtkMediaStream apis to avoid name collisions 205 - Rename GtkDropTarget properties to avoid name collisions 206 - Make GtkPasswordEntryBuffer introspectable 207 208* Printing: 209 - Remove the Google Cloud Print backend 210 211* Theme: 212 - Sync included icons with the Adwaita icon theme 213 214* GSK: 215 - Avoid overflowing the vertex counter 216 - Handle negative scales correctly in the ngl renderer 217 218* GDK: 219 - Cleanup and simplify OpenGL setup code 220 - Add a GdkDisplay::init_gl vfunc and gdk_display_prepare_gl() api 221 - Require EGL 1.4 222 - Fix EGL + NVidia 223 224* Build: 225 - Enable gstreamer by default 226 - Disable Vulkan by default 227 - Remove the sassc option 228 - Remove options and checks for X11 extensions 229 230* X11: 231 - Stop using XComposite 232 - Remove the Visual cache 233 234* Wayland: 235 - Fix some DND corner cases 236 - Work with version 2 of pointer-gestures-v1 237 - Look for cursor themes in $HOME/.icons 238 239* Windows: 240 - Fix SIGILL on x64 due to popcnt 241 - Fix popup placement 242 - Fix drag icon placement 243 - Clean up HiDPI and WGL support 244 - Default to WGL 245 246* MacOs: 247 - Fix input method support 248 - Register known clipboard types for drop targets 249 - Add initial DND support 250 251* Translation updates: 252 Brazilian Portuguese 253 Portuguese 254 Romanian 255 Turkish 256 Ukrainian 257 258 259Overview of Changes in 4.3.1 260============================ 261 262* GtkEmojiChooser: 263 - Update data from CLDR 39 264 - Load Emoji data for both language and territory 265 266* GtkCalendar: 267 - Fix an off-by-one error in day numbers 268 269* GtkListView: 270 - Add .activatable style class to activatable items 271 272* GtkCheckButton: 273 - Don't allow unchecking grouped radio buttons 274 275*GtkToggleButton: 276 - Fix mnemonic activation propagation 277 278* GtkLabel: 279 - Make mnemonics work even when invisible 280 - Fix mnemonic activation propagation 281 282* GtkMenuButton: 283 - Add a property to mark primary menus and make F10 work 284 285* GtkApplication: 286 - Fix initial screensaver state async 287 288* GtkEntry: 289 - Apply xalign to placeholder text (as it was in GTK 3) 290 291* GtkSpinButton: 292 - Fix swipe gestures 293 294* GtkStackSwitcher: 295 - Implement GtkOrientable (as it was in GTK 3) 296 - Fix a use-after-free problem with drag timeouts 297 298* GtkFileChooser: 299 - Add support for (case-insensitive) suffix matches in GtkFileFilter 300 301* GtkPasswordEntry: 302 - Make GtkPasswordEntryBuffer public, to make it easier 303 to write your own password entry widget 304 305* Input: 306 - Fix interference between various obscure XKB features 307 (e.g. overlays) and Compose sequences 308 309* Action support: 310 - Fix submenu-action handling 311 312* Theme: 313 - Update icons from the Adwaita icon theme 314 - Fix icon names for GtkSwitch 315 - Fix switch-off icon 316 317* GSK: 318 - Improve transformed offscreen rendering 319 - Add padding between cached glyphs 320 321* Wayland: 322 - Fix monitor sizes in the presence of transforms 323 - Add a getter for the EGLDisplay 324 - Fix click-drag-release sequences for popovers 325 326* X11: 327 - Support EGL for X11. Fall back to GLX if EGL isn't available 328 - Always fall back to GLX on NVidia 329 - Add a getter for the EGLDisplay 330 331* Broadway: 332 - Add a setter for display scale 333 334* Windows: 335 - Add a getter for the EGLDisplay 336 - Make GL work for media playback 337 338* MacOS: 339 - Fix menubar appearance 340 341* Tools: 342 - gtk4-builder-tool: Replace can-focus with focusable in 3-to-4 conversion 343 344* Introspection: 345 - Add missing annotations in a few places (e.g. gtk_free_view_row_activated) 346 347* Build: 348 - Only build one source file with -mf16c 349 - Fix devel styling for ci flatpak builds 350 - Generate appdata for demo flatpaks 351 352* Docs: 353 - Numerous fixes and additions 354 355* Translation updates: 356 Friulian 357 Nepali 358 Norwegian Bokmål 359 Ukrainian 360 361 362Overview of Changes in 4.3.0 363============================ 364 365* GtkVideo: 366 - Detect stream metadata when using gstreamer 367 368* GtkFileChooser: 369 - Fix a crash 370 371* GtkButton: 372 - Add back visual feedback for keynav activation 373 374* GtkFontChooser: 375 - Fix initial font selection 376 377* Text widgets: 378 - Replace squiggly error underlines by dotted lines 379 - Support translucent selections 380 381* GtkTextView: 382 - Various improvements to rendering performance 383 384* GtkScrolledWindow: 385 - Stop using scroll cursors 386 387* GtkMenuButton: 388 - Make focus-on-click work 389 390* GtkToggleButton: 391 - Make grouped buttons mutually exclusive 392 393* GtkPasswordEntry: 394 - Use MADV_DONTDUMP for secure memory 395 396* GtkListBox: 397 - Allow repeated selection extension for MULTIPLE 398 399* Themes: 400 - Reorganize and rename included themes. The theme is now 401 called Default, with dark, hc and hc-dark variants. 402 Visually, the themes are unchanged. 403 - The theme variants are also available as standalone 404 themes called Default-dark, etc. 405 - The theme named Adwaita is moving to libadwaita 406 - Fix resize border sizing 407 - Fix solid-csd window decorations 408 409* Input: 410 - Revert some Compose sequence changes (mainly around dead 411 acute and apostrophe) 412 - Consume all key events during preedit, to avoid unexpected 413 interactions 414 - Ignore more modifiers during preedit, to allow using 3rd and 415 5th level choosers 416 - Fix handling of cursor positions in non-ASCII preedit text 417 - Fix a problem with deferred focus setting 418 419* GdkClipboard: 420 - Ensure strings are nul-terminated 421 422* GSK: 423 - Improvements to the ngl renderer 424 - Fix offscreen rendering with transforms 425 - Fix downscaled textures 426 - Avoid huge intermediate textures 427 - Use fp16 for colors 428 - Optimize handling of underlines in text 429 - Fix corner cases of shadow rendering 430 - Reorganize shader resources 431 - Make shadow rendering match across renderers 432 433* Accessibility: 434 - Various fixes to get Orca to speak (still a work in progress) 435 436* Wayland: 437 - Improve font settings fallback 438 - Avoid unintentional rendering freezes with popovers 439 - Support the xdg_activation_v1 protocol 440 441* X11: 442 - Don't beep on untrusted displays 443 - Don't crash when popovers are outside the workarea 444 445* Windows: 446 - Fix using GL rendering with Mesa drivers 447 448* Tools: 449 - Add support for copy/paste in gtk4-node-editor 450 - Make syntax highlighting work in the gtk4-demo flatpak 451 452* Inspector: 453 - Enable the inspector by default, in all cases 454 - Show keyboard layouts 455 - Improve monitor information 456 457* Translation updates: 458 Catalan 459 Chinese (Taiwan) 460 Dutch 461 Nepali 462 Polish 463 Swedish 464 Ukrainian 465 466 467Overview of Changes in 4.2.0 468============================ 469 470* GtkFileChooser: Make the location entry work again 471 472* GtlLabel: Fix tooltips on links 473 474* GtkTextView: Make scrolling work better with renderers 475 476* X11: 477 - Fix damage handling 478 - Trap errors from the COW 479 480* Windows: 481 - Use a visible scroll cursor 482 - Include more icons for icon-theme-less situations 483 484* Wayland: Fix key event matching with mismatched layouts. 485 This was causing keyboard accelerators to trigger unexpectedly 486 487* Inspector: Allow inspecting Unicode 488 489* Input: 490 - Improve dead key handling 491 - Regenerate compose sequence table 492 493* gsk: 494 - Fix a crash in the ngl renderer 495 - Fix a rounding error in subpixel glyph positioning 496 - ngl: Implement glyph cache eviction 497 - ngl: Improve the glyph cache effectiveness 498 - ngl: Fix uniform key mapping on Windows 499 - Make the ngl renderer the default 500 501* build: 502 - Fix build with cairo as subproject 503 - Disable g_assert in release builds 504 - Include gi-docgen as subproject 505 - Include generated docs 506 507* Translation updates: 508 Hebrew 509 Hungarian 510 Italian 511 Polish 512 Portuguese 513 Swedish 514 Ukrainian 515 516 517Overview of Changes in 4.1.2 518============================ 519 520* Input: 521 - Ensure preedit-start and preedit-end 522 are emitted properly 523 - Support the Wayland text protocol better 524 - Delete the selection when preedit starts 525 526* Label: Fix a small issue with markup parsing 527 and mnemonics 528 529* Spinbutton: Interpret localized digits 530 531* Textview: Fix blinking block cursors 532 533* Tooltips: Don't pop up erroneous on popovers 534 535* Window: Add a way to disable F10 handling 536 537* Theme: 538 - Use a regular focus ring for sidebar rows 539 540* GSK 541 - ngl: Performance improvements 542 - vulkan: Add visible fallback rendering 543 - vukan: Handle simple transforms when clipping 544 545* Wayland: 546 - Don't force a full redraw for every frame 547 - Don't leak buffers when rendering with cairo 548 549* Demos: 550 - iconbrowser: Make search more useful 551 552* Documentation: 553 - Switch to building docs from gir files with gi-docgen 554 555* build: 556 - Allow GTK to be used as meson subproject 557 558* Translation updates 559 Catalan 560 Czech 561 Finnish 562 French 563 Indonesian 564 Kazakh 565 Latvian 566 Norwegian Bokmål 567 Polish 568 Serbian 569 Turkish 570 571 572Overview of Changes in 4.1.1 573============================ 574 575* Popover: 576 - Support shadows on popover > contents 577 578* Input: 579 - Show preedit for compose sequences 580 - Support long compose sequences 581 - Support compose sequences producing multiple characters 582 583* Themes: 584 - Allow suggested and destructive actions in lists 585 - Disable shadows on maximized, fullscreen and tiled windows 586 - Fine-tune scrollbar transitions and size 587 588* CSS: 589 - Support drop-shadow filters 590 - Correct blur filter spread interpretation 591 592* Documentation: 593 - Improvements and updates for dialogs and native dialog 594 595* Printing: 596 - Support Avahi-discovered printers better 597 598* GSK: 599 - Add another OpenGL render. It is not the default yet. 600 To try it, use GSK_RENDERER=ngl 601 602* Build: 603 - Lots of static analysis fixes found by pvs 604 - Add a -Dprofile=devel option for devel styling and 605 use it for nightly flatpaks 606 607* X11: 608 - Fix DND of X11-specific types 609 610* Wayland: 611 - Fix lookup of font settings in flatpaks 612 613* Windows: 614 - Fix window resizing 615 - Avoid UAC for gtk-update-icon-cache 616 617* MacOs: 618 - Use correct module file extension 619 - Make OpenGL context opaque when possible 620 - Fix window resizing 621 622* Translation updates: 623 British English 624 Czech 625 Danish 626 Galician 627 Hungarian 628 Turkish 629 630 631Overview of Changes in 4.1.0 632============================ 633 634* GtkCheckButton: 635 - Add back an activate signal 636 637* GtkSearchBar, GtkSearchEntry: 638 - Capture events in the bubble phase 639 640* GtkEmojiChooser: 641 - Adapt to small screen sizes 642 643* GtkVideo: 644 - Fix issues with GL support 645 646* Themes: 647 - Set sort arrows in CSS 648 - Set menu button arrows in CSS 649 - Make scrollbars larger 650 - Supprt circular menubuttons 651 652* CSS: 653 - Implement transform-origin 654 - Support overlines on text 655 - Support colors in cross-fade() 656 - More complete text-decoration-line support 657 658* Text layout: 659 - Use subpixel positioning with new enough cairo 660 661* Inspector: 662 - Fix slowness in navigation 663 - Redo the controllers and shortcuts pages 664 665* Accessibility: 666 - Create AT context objects lazily 667 668* Wayland: 669 - Fix decoration negotiation under kwin 670 671* GSK: 672 - Optimize gradient shaders 673 - Implement repeating gradients in shaders 674 675* Translation updates 676 - Czech 677 - Greek 678 - Hungarian 679 - Persian 680 - Punjabi 681 - Romanian 682 - Swedish 683 - Ukrainian 684 685 686Overview of Changes in 4.0.2 687============================ 688 689* GtkAboutDialog: 690 - Set icon size for the logo 691 - Fix initial focus to be the same as in GTK 3 692 693* GtkImage: 694 - Update icons on scale change 695 696* Wayland: Fix crashes with touch and tablet events 697 698* Windows: 699 - Fix surface and geometry computation 700 - Remove layered window usage 701 702* MacOS: Support stylus devices 703 704* Themes: 705 - Adwaita: Remove edge highlights 706 - Adwaita: Update image assets 707 - Make Adwaita-dark available as standalone theme 708 - Make HighContrastInverse the dark variant of HighContrast 709 710* Docs: 711 - Complete GtkAspectFrame docs 712 - Clarify migration docs for widget signals 713 714* Inspector: 715 - Fix a critical with the recorder 716 - Fix a crash with treeviews 717 - Show overlay layout properties 718 - Add a legend for the layout overlay 719 720* Build: 721 - Fix build with gcc 11 722 - Support building without sassc 723 724* Translation updates: 725 Basque 726 Czech 727 Friulian 728 Polish 729 Romanian 730 Spanish 731 Swedish 732 Ukrainian 733 734 735Overview of Changes in 4.0.1 736============================ 737 738* GtkPopover 739 - Center titles 740 - Fix menu item alignment with submenus 741 742* GtkVideo 743 - Fix up autoplay semantics 744 - Respect pixel aspect ratio 745 - Get GL textures from gstreamer 746 747* GtkCenterLayout 748 - Fix handling of expanding center child 749 750* GtkSettings 751 - Change gtk-cursor-aspect-ratio to double 752 - Fix the default value of gtk-print-backends 753 754* GtkGestureStylus 755 - Convert motion history to surface coordinates 756 757* GL renderer 758 - Various optimizations 759 - Avoid leaking shader objects 760 761* Adwaita 762 - Fine-tune flat buttons 763 - Improve contrast of dim-label 764 - Improve contrast of controls in headers 765 766* Docs 767 - Add various missing types 768 - Add DND examples 769 - Correct css docs for several widgets 770 - Improve GtkVideo docs 771 - Update migration docs for GtkClipboard 772 - Improve migration docs for event controllers 773 - Add migration docs for GtkBuilder 774 775* gtk4-builder-tool 776 - Remove GtkCheckButton::draw-indicator 777 - Fix a buffer overrun 778 - Remove GtkToolbar::toolbar-style 779 780* Demos 781 - Don't put the search bar in the scroll area 782 - Make the OpenGL demos work with OpenGL ES 783 784* X11 785 - Fix a possible crash 786 787* Build 788 - Fix vulkan reference in pc file 789 - Fix build with certain Vulkan versions 790 791* Windows: 792 - Fix build with Visual Studio 2013 793 794* OS X: 795 - Fix build on OS X 796 - Fix crash on Mojave 797 - Fix a window sizing issue 798 - Fix build on OS X 10.12 799 - Add a CI build 800 801* Translation updates: 802 Basque 803 Brazilian Portuguese 804 Catalan 805 Galician 806 German 807 Japanese 808 Lithuanian 809 Persian 810 Punjabi 811 Romanian 812 Ukrainian 813