Sync from SUSE:SLFO:Main vte revision 3a6d63c19ee4adae7712bbe12d59fd43

This commit is contained in:
Adrian Schröter 2024-05-04 01:48:27 +02:00
commit 854cd8bf6e
10 changed files with 3662 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

39
24547fb3.patch Normal file
View File

@ -0,0 +1,39 @@
From 24547fb36377b3bbc39a91d887eb5161e73532e3 Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@src.gnome.org>
Date: Tue, 25 Apr 2023 23:06:40 +0200
Subject: [PATCH] widget: Don't consume right clicks on gtk4
gtk4 still needs to handle context menus correctly, but on stable branch
we need to remove always claiming the event since it doesn't do anything
yet.
https://gitlab.gnome.org/GNOME/vte/-/issues/2593
(cherry picked from commit ff1b03e450fddae623401d8dc619a6c4f17df42d)
---
src/vte.cc | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/src/vte.cc b/src/vte.cc
index 76086d9d..b8e15d71 100644
--- a/src/vte.cc
+++ b/src/vte.cc
@@ -6829,16 +6829,6 @@ Terminal::widget_mouse_press(vte::platform::MouseEvent const& event)
break;
}
-#if VTE_GTK == 4
- if (!handled &&
- ((event.button() == vte::platform::MouseEvent::Button::eRIGHT) ||
- !(event.modifiers() & (GDK_BUTTON1_MASK | GDK_BUTTON2_MASK)))) {
- _vte_debug_print(VTE_DEBUG_EVENTS, "Showing context menu\n");
- // FIXMEgtk4 context menu
- handled = true;
- }
-#endif /* VTE_GTK == 4 */
-
/* Save the pointer state for later use. */
if (event.button_value() >= 1 && event.button_value() <= 3)
m_mouse_pressed_buttons |= (1 << (event.button_value() - 1));
--
GitLab

18
_service Normal file
View File

@ -0,0 +1,18 @@
<?xml version="1.0"?>
<services>
<service name="obs_scm" mode="manual">
<param name="url">https://gitlab.gnome.org/GNOME/vte.git</param>
<param name="scm">git</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="revision">refs/tags/0.72.1</param>
<param name="exclude">doc/vttest.*</param>
</service>
<service name="tar" mode="buildtime" />
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="manual"/>
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://gitlab.gnome.org/GNOME/vte.git</param>
<param name="changesrevision">e86822b8b7013f96f3b3d2d86839395492cb1470</param></service></servicedata>

BIN
vte-0.72.1.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,12 @@
Index: vte-0.71.92/meson.build
===================================================================
--- vte-0.71.92.orig/meson.build
+++ vte-0.71.92/meson.build
@@ -23,6 +23,7 @@ project(
'buildtype=release',
'warning_level=0',
'b_ndebug=false',
+ 'b_pie=true',
],
meson_version: '>= 0.60.0',
)

View File

@ -0,0 +1,50 @@
diff --color -Naur vte-0.66.0.orig/meson.build vte-0.66.0/meson.build
--- vte-0.66.0.orig/meson.build 2021-10-26 15:49:40.539203281 +0800
+++ vte-0.66.0/meson.build 2021-10-26 15:51:22.749208116 +0800
@@ -30,9 +30,9 @@
# Compiler requirements
c_req_std = 'gnu11'
-cxx_req_std = 'gnu++20'
-gxx_req_version = '10.0'
-clangxx_req_version = '11.0'
+cxx_req_std = 'gnu++17'
+gxx_req_version = '7.0'
+clangxx_req_version = '8.0'
# Version requirements
diff --color -Naur vte-0.66.0.orig/src/widget.cc vte-0.66.0/src/widget.cc
--- vte-0.66.0.orig/src/widget.cc 2021-10-26 15:49:40.548203282 +0800
+++ vte-0.66.0/src/widget.cc 2021-10-27 04:08:33.405300452 +0800
@@ -402,7 +402,11 @@
#endif /* VTE_GTK == 4 */
Widget::Widget(VteTerminal* t)
- : m_widget{&t->widget}
+ : m_widget{&t->widget},
+ m_hscroll_policy(GTK_SCROLL_NATURAL),
+ m_vscroll_policy(GTK_SCROLL_NATURAL),
+ m_scroll_unit_is_pixels(false),
+ m_changing_scroll_position(false)
{
// Create a default adjustment
set_vadjustment({});
diff --color -Naur vte-0.66.0.orig/src/widget.hh vte-0.66.0/src/widget.hh
--- vte-0.66.0.orig/src/widget.hh 2021-10-26 15:49:40.548203282 +0800
+++ vte-0.66.0/src/widget.hh 2021-10-27 04:08:52.888301374 +0800
@@ -577,10 +577,10 @@
vte::glib::RefPtr<GtkAdjustment> m_vadjustment{};
vte::glib::RefPtr<GtkAdjustment> m_hadjustment{};
- unsigned m_hscroll_policy:1{GTK_SCROLL_NATURAL};
- unsigned m_vscroll_policy:1{GTK_SCROLL_NATURAL};
- unsigned m_scroll_unit_is_pixels:1{false};
- unsigned m_changing_scroll_position:1{false};
+ unsigned m_hscroll_policy:1;
+ unsigned m_vscroll_policy:1;
+ unsigned m_scroll_unit_is_pixels:1;
+ unsigned m_changing_scroll_position:1;
};
} // namespace platform

3240
vte.changes Normal file

File diff suppressed because it is too large Load Diff

4
vte.obsinfo Normal file
View File

@ -0,0 +1,4 @@
name: vte
version: 0.72.1
mtime: 1681379847
commit: e86822b8b7013f96f3b3d2d86839395492cb1470

269
vte.spec Normal file
View File

@ -0,0 +1,269 @@
#
# spec file for package vte
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define _sover -2_91-0
%define _apiver 2.91
%define _binver 2_91
%define _apiver4 3.91
%define _binver4 3_91
%define _name vte
%bcond_without gtk4_support
%bcond_with glade_support
Name: vte
Version: 0.72.1
Release: 0
Summary: Terminal Emulator Library
License: CC-BY-4.0 AND LGPL-3.0-or-later AND GPL-3.0-or-later AND MIT
Group: Development/Libraries/GNOME
URL: https://gitlab.gnome.org/GNOME/vte
Source: %{_name}-%{version}.tar.xz
# PATCH-FIX-OPENSUSE vte-enable-build-flag-pie.patch yfjiang@suse.com -- enable PIE flag to be compatible with gcc default linking option
Patch0: vte-enable-build-flag-pie.patch
# PATCH-FIX-UPSTREAM 24547fb3.patch -- widget: Don't consume right clicks on gtk4
Patch1: https://gitlab.gnome.org/GNOME/vte/-/commit/24547fb3.patch
# PATCH-FIX-SLE vte-revert-back-to-c++17.patch yu.daike@suse.com -- revert c++20 features back to c++17
Patch100: vte-revert-back-to-c++17.patch
BuildRequires: c++_compiler
BuildRequires: fdupes
%if %{with glade_support}
BuildRequires: glade
%endif
BuildRequires: gobject-introspection-devel
BuildRequires: gperf
BuildRequires: intltool
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: (python3-dataclasses if python3-base < 3.7)
BuildRequires: pkgconfig(fribidi) >= 1.0.0
BuildRequires: pkgconfig(gi-docgen)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.40.0
BuildRequires: pkgconfig(gnutls) >= 3.2.7
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.16.0
%if %{with gtk4_support}
BuildRequires: pkgconfig(gtk4)
%endif
BuildRequires: pkgconfig(libpcre2-8) >= 10.21
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(pango) >= 1.22.0
BuildRequires: pkgconfig(vapigen) >= 0.24
BuildRequires: pkgconfig(zlib)
%description
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
%package -n libvte%{_sover}
Summary: Terminal Emulator Library
# Needed to make lang package installable (and because we used to
# have a vte package earlier).
License: LGPL-2.0-only
Group: System/Libraries
Provides: %{name} = %{version}
Obsoletes: %{name} < %{version}
%description -n libvte%{_sover}
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
%package -n typelib-1_0-Vte-%{?_binver}
Summary: Introspection bindings for the VTE terminal emulator library
License: LGPL-2.0-only
Group: System/Libraries
%description -n typelib-1_0-Vte-%{?_binver}
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
This package provides the GObject Introspection bindings for VTE.
%package tools
Summary: Tools from the VTE terminal emulator package
License: LGPL-2.0-only
Group: System/Libraries
%description tools
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
This package provides tools using VTE.
%if %{with gtk4_support}
%package -n typelib-1_0-Vte-%{?_binver4}
Summary: Introspection bindings for the VTE terminal emulator library
License: LGPL-2.0-only
Group: System/Libraries
%description -n typelib-1_0-Vte-%{?_binver4}
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
This package provides the GObject Introspection bindings for VTE.
%package tools-gtk4
Summary: Tools from the VTE terminal emulator package
License: LGPL-2.0-only
Group: System/Libraries
%description tools-gtk4
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
This package provides tools using VTE.
%endif
%package devel
Summary: Development files for the VTE terminal emulator library
License: LGPL-2.0-only
Group: Development/Libraries/GNOME
Requires: libvte%{_sover} = %{version}
Requires: typelib-1_0-Vte-%{?_binver} = %{version}
%if %{with gtk4_support}
Requires: typelib-1_0-Vte-%{?_binver4} = %{version}
%endif
Provides: vte-doc = %{version}
Obsoletes: vte-doc < %{version}
%description devel
VTE is a terminal emulator library that provides a terminal widget for
use with GTK+ as well as handling of child process and terminal
emulation settings.
This package contains the files needed for building applications using
VTE.
%if %{with glade_support}
%package -n glade-catalog-vte
Summary: Glade catalog for vte
License: CC-BY-4.0 AND LGPL-3.0-or-later AND GPL-3.0-or-later AND MIT
Group: Development/Tools/GUI Builders
Requires: %{name} = %{version}
Requires: glade
Supplements: (glade and %{name}-devel)
BuildArch: noarch
%description -n glade-catalog-vte
This package provides a catalog for Glade, to allow the use the vte
widgets in Glade.
%endif
%lang_package
%prep
%autosetup -n %{_name}-%{version} -N
%patch0 -p1
%patch1 -p1
%if 0%{?sle_version}
%patch100 -p1
%endif
%build
%meson \
-Ddocs=true \
%if %{with gtk4_support}
-Dgtk4=true \
%endif
%if %{with glade_support}
-Dglade=true \
%else
-Dglade=false \
%endif
%{nil}
%meson_build
%install
%meson_install
%find_lang vte-%{_apiver}
%fdupes %{buildroot}%{_prefix}
# Make default docdir ref openSUSE standard
mkdir -p %{buildroot}%{_docdir}/vte-%{_apiver}
%if %{with gtk4_support}
mkdir -p %{buildroot}%{_docdir}/vte-%{_apiver}-gtk4
%endif
# Move docs from upstream docdir to openSUSE docdir standard
mv %{buildroot}%{_datadir}/doc/vte-%{_apiver} %{buildroot}%{_docdir}
%if %{with gtk4_support}
mv %{buildroot}%{_datadir}/doc/vte-%{_apiver}-gtk4 %{buildroot}%{_docdir}
%endif
%ldconfig_scriptlets -n libvte%{_sover}
%files -n libvte%{_sover}
%license COPYING.CC-BY-4-0 COPYING.GPL3 COPYING.LGPL3 COPYING.XTERM
%{_libdir}/*.so.*
%config %{_sysconfdir}/profile.d/vte.sh
%config %{_sysconfdir}/profile.d/vte.csh
%dir %{_userunitdir}/vte-spawn-.scope.d
%{_userunitdir}/vte-spawn-.scope.d/defaults.conf
%{_libexecdir}/vte-urlencode-cwd
%files -n typelib-1_0-Vte-%{?_binver}
%{_libdir}/girepository-1.0/Vte-%{_apiver}.typelib
%files tools
%{_bindir}/vte-%{?_apiver}
%if %{with gtk4_support}
%files -n typelib-1_0-Vte-%{?_binver4}
%{_libdir}/girepository-1.0/Vte-%{_apiver4}.typelib
%files tools-gtk4
%{_bindir}/vte-%{?_apiver}-gtk4
%endif
%files devel
%doc AUTHORS
%doc %{_docdir}/vte-%{_apiver}/
%{_libdir}/pkgconfig/*.pc
%{_libdir}/*.so
%{_includedir}/vte-%{_apiver}/
%{_datadir}/gir-1.0/*.gir
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/vte-%{_apiver}.vapi
%{_datadir}/vala/vapi/vte-%{_apiver}.deps
%if %{with gtk4_support}
%{_includedir}/vte-%{_apiver}-gtk4/
%doc %{_docdir}/vte-%{_apiver}-gtk4/
%{_datadir}/vala/vapi/vte-%{_apiver}-gtk4.deps
%{_datadir}/vala/vapi/vte-%{_apiver}-gtk4.vapi
%endif
%if %{with glade_support}
%files -n glade-catalog-vte
%{_datadir}/glade/catalogs/vte-%{_apiver}.xml
%{_datadir}/glade/pixmaps/hicolor/16x16/actions/widget-vte-terminal.png
%{_datadir}/glade/pixmaps/hicolor/22x22/actions/widget-vte-terminal.png
%endif
%files lang -f vte-%{_apiver}.lang
%changelog