Hello community, here is the log from the commit of package mate-terminal for openSUSE:Factory checked in at 2016-09-25 14:43:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mate-terminal (Old) and /work/SRC/openSUSE:Factory/.mate-terminal.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mate-terminal" Changes: -------- --- /work/SRC/openSUSE:Factory/mate-terminal/mate-terminal.changes 2016-08-17 12:04:45.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.mate-terminal.new/mate-terminal.changes 2016-09-25 14:43:56.000000000 +0200 @@ -1,0 +2,16 @@ +Thu Sep 22 13:20:07 UTC 2016 - [email protected] + +- Update to version 1.16.0: + * Move to GTK+3, require GTK+ 3.14 and VTE 0.38 (API 2.91). + * Drop GTK+2 code and --with-gtk build option. + * Use GtkAboutDialog instead of MateAboutDialog. + * Copy dconf and gsettings helpers from libmate-desktop and drop + dependency on libmate-desktop. + * React on WM change only on X11. + * Fix lots of GTK+ deprecations. + * Some more fixes and cleanups. + * Update translations. +- Add mate-terminal-geometry-positioning.patch: Add back --geometry + positioning support. + +------------------------------------------------------------------- Old: ---- mate-terminal-1.14.1.tar.xz New: ---- mate-terminal-1.16.0.tar.xz mate-terminal-geometry-positioning.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mate-terminal.spec ++++++ --- /var/tmp/diff_new_pack.s4HsKh/_old 2016-09-25 14:43:58.000000000 +0200 +++ /var/tmp/diff_new_pack.s4HsKh/_new 2016-09-25 14:43:58.000000000 +0200 @@ -16,15 +16,17 @@ # -%define _version 1.14 +%define _version 1.16 Name: mate-terminal -Version: 1.14.1 +Version: 1.16.0 Release: 0 Summary: MATE Desktop terminal emulator License: GPL-3.0+ Group: System/GUI/Other Url: http://mate-desktop.org/ Source: http://pub.mate-desktop.org/releases/%{_version}/%{name}-%{version}.tar.xz +# PATCH-FIX-UPSTREAM mate-terminal-geometry-positioning.patch [email protected] -- Add back --geometry positioning support. +Patch0: mate-terminal-geometry-positioning.patch BuildRequires: libxml2-python BuildRequires: mate-common >= %{_version} BuildRequires: pkgconfig @@ -33,10 +35,9 @@ BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(dconf) BuildRequires: pkgconfig(glib-2.0) -BuildRequires: pkgconfig(gtk+-2.0) -BuildRequires: pkgconfig(mate-desktop-2.0) >= %{_version} +BuildRequires: pkgconfig(gtk+-3.0) >= 3.14 BuildRequires: pkgconfig(sm) -BuildRequires: pkgconfig(vte) +BuildRequires: pkgconfig(vte-2.91) Requires: gsettings-backend-dconf Recommends: %{name}-lang %glib2_gsettings_schema_requires @@ -52,11 +53,11 @@ %prep %setup -q +%patch0 -p1 %build NOCONFIGURE=1 mate-autogen -%configure \ - --with-gtk=2.0 +%configure make %{?_smp_mflags} %install ++++++ mate-terminal-1.14.1.tar.xz -> mate-terminal-1.16.0.tar.xz ++++++ ++++ 81409 lines of diff (skipped) ++++++ mate-terminal-geometry-positioning.patch ++++++ --- a/src/terminal-window.c +++ b/src/terminal-window.c @@ -2750,10 +2750,12 @@ terminal_window_set_size_force_grid (TerminalWindow *window, GtkWidget *app; gboolean result; int parse_result; - unsigned int force_grid_width, force_grid_height; + gint force_pos_x = 0, force_pos_y = 0; + unsigned int force_grid_width = 0, force_grid_height = 0; int grid_width, grid_height; gint pixel_width, pixel_height; GdkWindow *gdk_window; + GdkGravity pos_gravity; gdk_window = gtk_widget_get_window (GTK_WIDGET (window)); result = TRUE; @@ -2784,7 +2786,8 @@ terminal_window_set_size_force_grid (TerminalWindow *window, if (force_grid_string != NULL) { parse_result = terminal_window_XParseGeometry (force_grid_string, - NULL, NULL, + &force_pos_x, + &force_pos_y, &force_grid_width, &force_grid_height); if (parse_result == NoValue) @@ -2814,11 +2817,47 @@ terminal_window_set_size_force_grid (TerminalWindow *window, priv->old_chrome_width, priv->old_chrome_height, pixel_width, pixel_height); + pos_gravity = GDK_GRAVITY_NORTH_WEST; + if ((parse_result & XNegative) && (parse_result & YNegative)) + pos_gravity = GDK_GRAVITY_SOUTH_EAST; + else if ((parse_result & XNegative)) + pos_gravity = GDK_GRAVITY_NORTH_EAST; + else if ((parse_result & YNegative)) + pos_gravity = GDK_GRAVITY_SOUTH_WEST; + + if (!(parse_result & XValue)) + force_pos_x = 0; + if (!(parse_result & YValue)) + force_pos_y = 0; + + if (pos_gravity == GDK_GRAVITY_SOUTH_EAST || + pos_gravity == GDK_GRAVITY_NORTH_EAST) + force_pos_x = gdk_screen_get_width (gtk_widget_get_screen (app)) - + pixel_width + force_pos_x; + if (pos_gravity == GDK_GRAVITY_SOUTH_WEST || + pos_gravity == GDK_GRAVITY_SOUTH_EAST) + force_pos_y = gdk_screen_get_height (gtk_widget_get_screen (app)) - + pixel_height + force_pos_y; + + /* we don't let you put a window offscreen; maybe some people would + * prefer to be able to, but it's kind of a bogus thing to do. + */ + if (force_pos_x < 0) + force_pos_x = 0; + if (force_pos_y < 0) + force_pos_y = 0; + if (even_if_mapped && gtk_widget_get_mapped (app)) gtk_window_resize (GTK_WINDOW (app), pixel_width, pixel_height); else gtk_window_set_default_size (GTK_WINDOW (app), pixel_width, pixel_height); + if ((parse_result & XValue) || (parse_result & YValue)) + { + gtk_window_set_gravity (GTK_WINDOW (app), pos_gravity); + gtk_window_move (GTK_WINDOW (app), force_pos_x, force_pos_y); + } + return result; }
