9020060182
Overview of Changes in 4.6.6, 02-07-2022 ======================================== * Fix translations in GTKs own ui files * Wayland: - Fix a problem with the activation protocol - Don't force the HighContrast icontheme * Windows: - Fix a problem with builtin icons if the hicolor icontheme is not installed Overview of Changes in 4.6.5, 27-05-2022 ======================================== * GtkFileChooser: - Fix pasting text into the name field * GtkText: - Remove an assertion that is sometimes hit * Wayland: - Ensure that our cursor surfaces don't violate protocol constraints * Accssibility: - Fix a problem in the accessibility tree Overview of Changes in 4.6.4, 13-05-2022 ======================================== * GtkFileChooser: - Fix select button sensitivity in select_folder mode - Fix some fallout from list model porting * GtkListView, GtkColumnView: - Optimize scrolling * print-to-file: - Handle nonexisting files better in the dialog * Avoid infinite loops in size allocation * CSS: - Optimize a case of reparenting that is important in GtkListView * GSK: - Check for half-float support before using it * Wayland: - Ignore empty preedit updates This fixes a problem with textview scrolling - Freeze popups when hidden. This addresses a frame rate drop Overview of Changes in 4.6.3, 21-04-2022 ======================================== * GtkOverlay: - Bring back positional style classes * GtkFileChooser: - Prevent unwanted completion popups - Fix small problems in save mode - Fix buildable suport of GtkFileFilter * GtkPopover: - Fix button positions in right-to-left locales * GtkLabel: - Fix small issues with link handling * Tooltips: - Don't restrict the minimum tooltip length * Theme: - Don't use opacity for overlay scrollbars - Fix selection text color in vertical spin buttons * GSK: - Accept textures that are generated by webkit - Align offscreen rendering to the pixel grid * Accessibility - Fix a crash in startup when orca is running * Input: - Fix display changes in GtkIMMultiContext - Fix activating on-screen keyboards - Always propagate hold events in GtkEventControllerScroll * Windows: - Fix a critical warning in clipboard handling - Report serial numbers for events * MacOS: - Prevent fullscreen transition reentrancy Overview of Changes in 4.6.2, 18-03-2022 ======================================== * GtkScrolledWindow: - Set scroll-to-focus on viewports - Avoid doubly triggering deceleration * GtkEntry: - Stop cursor blinking on focus-out * Emoji: - Update Emoji data to CLDR 40 and Unicode 14 - Add more locales for Emoji data (da, de, en, es, fr hu, it, ko, lt, ms, nl, pl, pt, ru, s, uk zh) * GDK - Optimize texture conversions on x86 and ARM - Use EGK_KHR_swap_buffers_with_damage if available * GSK - Avoid clearing opaque regions - Support using a non-default framebuffer - Handle large viewports by tiling * Wayland: - Prefer xdg-activation over gtk-shell - text protocol: Fix text caret location - text protocol: Use serials to control outbound messages * Inspector: - Show app ID and resource path * Demos: - widget-factory: Handle F11 to toggle fullscreen * Tools: - gtk-builder-tool: Allow use without display * Windows: - Fix preedit window placement on HiDPI - Build improvements - Fix fullscreen handling * MacOS: - Fix scrolling with an external mouse - Fix kinetic scrolling with overshoot - Improve monitor detection - Many input handling fixes - Support OpenGL accelerated video playback - Support fullscreen - Improve interactive window resizing and moving - Fix backdrop state handling - Fix GtkFileChooserNative filtering - Use CALayer and IOSurface for rendering - Use per monitor CVDisplayLink to support mixed-rate monitors - Start applications in foreground - Fix cursor blink time Overview of Changes in 4.6.1, 11-02-2022 ======================================== * GtkFontChooser: - Stop using PangoFc api - Fix a crash - Use new HarfBuzz api * GtkMenuButton: - Update accessible description * GtkTextView: - Fix intra-widget dnd * Printing: - Fix an fd leak * Input: - Make sure input methods get focus-in events - Always flush events to avoid scroll event pileup - Support hold events - Update keysyms from libxkbcommon * Theme: - Improve text selection legibility * Introspection: - Add missing nullable annotations everywhere * Build: - Make stack noexec again - Avoid symbol leaks - Drop unneeded script data * Windows: - Stop using WM_SYNCPAINT - Relax check for GL 3.x legacy contexts - Use native apis for language names - Rewrite the keymap code - Use the GL renderer by default * Wayland: - Fix support for the new high-contrast setting - Avoid redundant scale changes - Fix DND hotspot handling - Don't always restore the saved size when floating * MacOS: - Various performance improvements Overview of Changes in 4.6.0, 30-12-2021 ======================================== * GtkProgressBar: - Fix handling of "inverted" * GtkLabel: - Add a "natural wrap mode" property to influence how natural width is determined * GtkTextView - Scroll insertion on-screen after undo / redo * gsk: - Abort region diffing when changes are too complex * gdk: - Avoid compressing discrete scroll events - Fix problems with hiding windows - Improve GL and GLES version checks * Wayland: - Support new high-contrast setting * Inspector: - Add DND inspection support * build: - Avoid deprecated meson apis Overview of Changes in 4.5.1, 16-12-2021 ======================================== * GtkWidget sizing has been rewritten to implement width-for-height more properly. This had some fallout, and some widgets may still not react kindly to the new way of doing things. See https://blog.gtk.org/2021/12/03/sizable-news/ for details, and please file issues if you notice fallout. * Rename git `master` branch to `main` * Css: - Fully support font-variant-caps - Fix a crash with gradients * Make various widgets activatable: - GtkComboBox - GtkDropDown * GtkPopover: - Make focus indicators not disappear * GtkTextView: - Don't leave embedded children stranded when scrolling - Don't insert Emoji into non-editable textviews - Fix Emoji chooser positioning - Fix problems with pasting text - Improve scroll-to-mark behavior - Support right-aligned, centered and decimal tabs - Make child anchor replacement character settable - Provide more context to input methods * GtkDragIcon: - Provide default icons for paintables and files * GtkBuilder: - Speed up template precompilation * Actions: - Reduce allocations during signal emissions - Avoid duplication and unnecessary recursion * Inspector: - Show the selected im-module in the General tab - Add a clipboard viewer - Make the recorder record events too - Add a graph visualizing gtk_widget_measure() * Gsk: - Fix hexbox rendering - Fix transformed linear gradient rendering * Printing: - Fix dialog-less printing * Windows: - Use the common EGL setup code - Respect GDK_DEBUG=gl-egl - Fix AeroSnap indicator and positioning * X11: - Improve behavior of windows drags on headerbar controls - Trap errors for RANDR changes - Fix problems with drag icons * Wayland: - Ensure we prefer the Wayland im-module over others Overview of Changes in 4.5.0 ============================ * gsk: - Drop the GL renderer in favor of NGL - Rename NGL to GL - Fix some coordinate overflow issues - Reimplement texture upload and download for better support of image formats and color spaces - New api: gsk_transform_skew gsk_transform_to_2d_components * gdk: - Support HSL in gdk_rgba_parse - Use libpng, libjpeg and libtiff directly when loading textures, and support more image formats (including 16bit and float formats) - New apis: gdk_texture_new_from_bytes gdk_texture_new_from_filename gdk_texture_download_float gdk_texture_save_to_png_bytes gdk_texture_save_to_tiff gdk_texture_save_to_tiff_bytes gdk_display_create_gl_context - Implement GIcon and GLoadableIcon in GdkTexture - Move EGL initialization to the frontend - Use configless EGL contexts, if supported - Use >8bit pixel formats, if supported and requested * css: - Add support for line-height - Add support for text-transform * theme: - Fixes for buttons in toolbars * input: - Update compose sequences from libX11 1.7.2 - Accept replacement string longer than 20 characters * text: - Implement sloped caret drawing - Add a gtk-hint-font-metrics setting to switch font rendering to be more similar to GTK3 * GtkTextView: - Add support for line height - Add support for text transforms - Misc fixes for css->pango attribute translations - Invalidate pango contexts when font settings change - Improve undo grouping when overwriting * GtkListView: - Make tree indentation more flexible with GtkTreeExpander:indent-for-icon * GtkMenuButton: - Support custom children * GtkFlowBox: - Add prepend and append * GtkCalendar: - Fix handling of weeks starting on Monday * GtkWindow: - Add a titlebar property * GtkDropDown: - Add a show-arrow property * GtkPopoverMenu: - Support a use-markup attribute in menu models * Add GtkSymbolicPaintable * Tools: - Support DND in gtk4-node-editor and the inspector's recorder * Demos: - Improve the font rendering demo * Build: - Require Pango 1.49 - Require libpng, libtiff and libjpeg - Speed up handling of resources during build * X11: - Support touchpad gestures with XInput 2.4 * Windows: - Fix DND coordinates Overview of Changes in 4.4.0 ============================ * Input: - Match IBus for display of Compose sequences - Match IBus for handling of mismatches - Handle Escape in Compose sequences - Allow multiple dead keys - Support 32bit keysyms * GtkCheckButton: - Activate when moving focus * GtkLabel: - Propertly ignore double underscores for mnemonics * GtkPopoverMenu: - Fix focus cycling * GtkTextView: - Improve word selection - Fix block cursors on empty lines * GdkToplevel: - Support the gnome-shell titlebar gesture protocol * GdkDropTarget: - Allow creating drop targets in ui files * gsk: - Handle partial color fonts correctly - Use harfbuzz for color font information - Avoid pango for glyph cache rendering - Shrink shadow extents * Settings: - Change the default for gtk-split-cursor to FALSE * Demos: - Small improvements to widget-factory - gtk-demo: Improve the hypertext demo - gtk-dem: Improve the clipboard demo * X11: - Set WM_CLASS on toplevels * Wayland: - Support wl_seat v7 * Windows: - Drop the local DND protocol - Avoid WGL if shaders don't work - Use WinPointer API Overview of Changes in 4.3.2 ============================ * GtkToggleButton: - Fix the actionable implementation * GtkCheckButton: - Fix the actionable implementation - Cancel activation on when the pointer leaves * GtkMenuButton: - Make activatable again - Add a way to have an icon + arrow * GtkColorButton: - Make activatable again * GtkFontButton: - Make activatable again * GtkAppChooserButton: - Make activatable again * GtkColumnView: - Fix double activation * GtkLabel: - Fix mnemonics without markup * GtkTreeView: - Clip header buttons * GtkTextView: - Add api to get the RTL and LTR contexts - Fix some errors in text history grouping * GtkText: - Don't show placeholder text on top of entry text - Add api to compute the cursor extents - Fix y coordinates for text selection * GtkFileChooser: - Don't show Trash in the side bar * GtkPopoverMenu: - Add scrollbars to long menus * GtkActionMuxer: - Fix propagation of accel changes * Introspection: - Annotate all filename arguments - Rename GtkMediaStream apis to avoid name collisions - Rename GtkDropTarget properties to avoid name collisions - Make GtkPasswordEntryBuffer introspectable * Printing: - Remove the Google Cloud Print backend * Theme: - Sync included icons with the Adwaita icon theme * GSK: - Avoid overflowing the vertex counter - Handle negative scales correctly in the ngl renderer * GDK: - Cleanup and simplify OpenGL setup code - Add a GdkDisplay::init_gl vfunc and gdk_display_prepare_gl() api - Require EGL 1.4 - Fix EGL + NVidia * Build: - Enable gstreamer by default - Disable Vulkan by default - Remove the sassc option - Remove options and checks for X11 extensions * X11: - Stop using XComposite - Remove the Visual cache * Wayland: - Fix some DND corner cases - Work with version 2 of pointer-gestures-v1 - Look for cursor themes in $HOME/.icons * Windows: - Fix SIGILL on x64 due to popcnt - Fix popup placement - Fix drag icon placement - Clean up HiDPI and WGL support - Default to WGL * MacOs: - Fix input method support - Register known clipboard types for drop targets - Add initial DND support Overview of Changes in 4.3.1 ============================ * GtkEmojiChooser: - Update data from CLDR 39 - Load Emoji data for both language and territory * GtkCalendar: - Fix an off-by-one error in day numbers * GtkListView: - Add .activatable style class to activatable items * GtkCheckButton: - Don't allow unchecking grouped radio buttons *GtkToggleButton: - Fix mnemonic activation propagation * GtkLabel: - Make mnemonics work even when invisible - Fix mnemonic activation propagation * GtkMenuButton: - Add a property to mark primary menus and make F10 work * GtkApplication: - Fix initial screensaver state async * GtkEntry: - Apply xalign to placeholder text (as it was in GTK 3) * GtkSpinButton: - Fix swipe gestures * GtkStackSwitcher: - Implement GtkOrientable (as it was in GTK 3) - Fix a use-after-free problem with drag timeouts * GtkFileChooser: - Add support for (case-insensitive) suffix matches in GtkFileFilter * GtkPasswordEntry: - Make GtkPasswordEntryBuffer public, to make it easier to write your own password entry widget * Input: - Fix interference between various obscure XKB features (e.g. overlays) and Compose sequences * Action support: - Fix submenu-action handling * Theme: - Update icons from the Adwaita icon theme - Fix icon names for GtkSwitch - Fix switch-off icon * GSK: - Improve transformed offscreen rendering - Add padding between cached glyphs * Wayland: - Fix monitor sizes in the presence of transforms - Add a getter for the EGLDisplay - Fix click-drag-release sequences for popovers * X11: - Support EGL for X11. Fall back to GLX if EGL isn't available - Always fall back to GLX on NVidia - Add a getter for the EGLDisplay * Broadway: - Add a setter for display scale * Windows: - Add a getter for the EGLDisplay - Make GL work for media playback * MacOS: - Fix menubar appearance * Tools: - gtk4-builder-tool: Replace can-focus with focusable in 3-to-4 conversion * Introspection: - Add missing annotations in a few places (e.g. gtk_free_view_row_activated) * Build: - Only build one source file with -mf16c - Fix devel styling for ci flatpak builds - Generate appdata for demo flatpaks * Docs: - Numerous fixes and additions Overview of Changes in 4.3.0 ============================ * GtkVideo: - Detect stream metadata when using gstreamer * GtkFileChooser: - Fix a crash * GtkButton: - Add back visual feedback for keynav activation * GtkFontChooser: - Fix initial font selection * Text widgets: - Replace squiggly error underlines by dotted lines - Support translucent selections * GtkTextView: - Various improvements to rendering performance * GtkScrolledWindow: - Stop using scroll cursors * GtkMenuButton: - Make focus-on-click work * GtkToggleButton: - Make grouped buttons mutually exclusive * GtkPasswordEntry: - Use MADV_DONTDUMP for secure memory * GtkListBox: - Allow repeated selection extension for MULTIPLE * Themes: - Reorganize and rename included themes. The theme is now called Default, with dark, hc and hc-dark variants. Visually, the themes are unchanged. - The theme variants are also available as standalone themes called Default-dark, etc. - The theme named Adwaita is moving to libadwaita - Fix resize border sizing - Fix solid-csd window decorations * Input: - Revert some Compose sequence changes (mainly around dead acute and apostrophe) - Consume all key events during preedit, to avoid unexpected interactions - Ignore more modifiers during preedit, to allow using 3rd and 5th level choosers - Fix handling of cursor positions in non-ASCII preedit text - Fix a problem with deferred focus setting * GdkClipboard: - Ensure strings are nul-terminated * GSK: - Improvements to the ngl renderer - Fix offscreen rendering with transforms - Fix downscaled textures - Avoid huge intermediate textures - Use fp16 for colors - Optimize handling of underlines in text - Fix corner cases of shadow rendering - Reorganize shader resources - Make shadow rendering match across renderers * Accessibility: - Various fixes to get Orca to speak (still a work in progress) * Wayland: - Improve font settings fallback - Avoid unintentional rendering freezes with popovers - Support the xdg_activation_v1 protocol * X11: - Don't beep on untrusted displays - Don't crash when popovers are outside the workarea * Windows: - Fix using GL rendering with Mesa drivers * Tools: - Add support for copy/paste in gtk4-node-editor - Make syntax highlighting work in the gtk4-demo flatpak * Inspector: - Enable the inspector by default, in all cases - Show keyboard layouts - Improve monitor information
67 lines
2.2 KiB
Makefile
67 lines
2.2 KiB
Makefile
# $NetBSD: Makefile,v 1.13 2022/07/29 16:08:20 wiz Exp $
|
|
|
|
DISTNAME= gtk-4.6.6
|
|
PKGNAME= ${DISTNAME:S/gtk/gtk4/}
|
|
CATEGORIES= x11
|
|
MASTER_SITES= ${MASTER_SITE_GNOME:=sources/gtk/${PKGVERSION_NOREV:R}/}
|
|
EXTRACT_SUFX= .tar.xz
|
|
|
|
MAINTAINER= ryoon@NetBSD.org
|
|
HOMEPAGE= https://www.gtk.org/
|
|
COMMENT= Multi-platform toolkit for creating GUIs, version 4
|
|
LICENSE= gnu-lgpl-v2.1
|
|
|
|
# TEST_DEPENDS, but meson fails if it's not found
|
|
TOOL_DEPENDS+= ${PYPKGPREFIX}-gobject3-[0-9]*:../../devel/py-gobject3
|
|
# TODO: add more python dependencies?
|
|
# gi-docgen| subprojects/gi-docgen/meson.build:10:0: Exception: python3 is missing modules: jinja2, markdown, markupsafe, pygments, toml, typogrify
|
|
|
|
PYTHON_VERSIONS_INCOMPATIBLE= 27
|
|
|
|
.include "options.mk"
|
|
|
|
USE_TOOLS+= pkg-config gdbus-codegen
|
|
USE_LANGUAGES= c c++
|
|
|
|
MESON_ARGS+= -Dgtk_doc=false
|
|
# needs gstreamer-gl
|
|
MESON_ARGS+= -Dmedia-gstreamer=disabled
|
|
|
|
PKGCONFIG_OVERRIDE+= output/meson-private/gtk4.pc
|
|
PKGCONFIG_OVERRIDE+= output/meson-private/gtk4-x11.pc
|
|
PKGCONFIG_OVERRIDE+= output/meson-private/gtk4-unix-print.pc
|
|
|
|
PKGCONFIG_OVERRIDE_STAGE= post-configure
|
|
|
|
PLIST_VARS+= dylib no-dylib
|
|
.if ${SHLIB_TYPE} == "dylib"
|
|
PLIST.dylib= yes
|
|
SOEXT= dylib
|
|
.else
|
|
PLIST.no-dylib= yes
|
|
SOEXT= so
|
|
.endif
|
|
PLIST_SUBST+= SOEXT=${SOEXT}
|
|
PRINT_PLIST_AWK+= { gsub(/\.${SOEXT}/, ".$${SOEXT}") }
|
|
|
|
.include "../../devel/glib2/buildlink3.mk"
|
|
.include "../../devel/gobject-introspection/buildlink3.mk"
|
|
.include "../../devel/libexecinfo/buildlink3.mk"
|
|
BUILDLINK_API_DEPENDS.pango+= pango>=1.47.0
|
|
.include "../../devel/pango/buildlink3.mk"
|
|
.include "../../graphics/cairo/buildlink3.mk"
|
|
.include "../../graphics/cairo-gobject/buildlink3.mk"
|
|
.include "../../graphics/gdk-pixbuf2/buildlink3.mk"
|
|
.include "../../graphics/graphene/buildlink3.mk"
|
|
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
|
|
.include "../../graphics/libepoxy/buildlink3.mk"
|
|
# librsvg is required by a demo only.
|
|
#.include "../../graphics/librsvg/buildlink3.mk"
|
|
.include "../../multimedia/gst-plugins1-bad/buildlink3.mk"
|
|
# not detected even when added
|
|
# TODO: fix
|
|
#.include "../../multimedia/ffmpeg5/buildlink3.mk"
|
|
.include "../../textproc/iso-codes/buildlink3.mk"
|
|
.include "../../devel/meson/build.mk"
|
|
.include "../../lang/python/tool.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|