Commit Graph

597 Commits

Author SHA1 Message Date
Ting-Wei Lan
31f7b55306 configure: Don't declare functions in AC_TRY_COMPILE and AC_LANG_PROGRAM
Both AC_TRY_COMPILE and AC_LANG_PROGRAM put code passed to their second
arguments to the body of the main function. This means that we cannot
and should not declare functions there, or we end up checking whether
the compiler support nested functions instead of whether a compiler or
linker flag is supported.

GCC supports nested functions and tests succeed. Clang doesn't support
nested functions, so tests fail and -fvisibility=hidden won't be used.
This means that functions which are not intended to be used by other
programs, such as gtk_menu_tracker*, gtk_action_observ*,
gtk_menu_muxer_*, become global symbols with default visibility.

GNOME Shell has a private library libgnome-shell-menu.so, which also has
symbols gtk_menu_tracker*, gtk_action_observ*, gtk_menu_muxer_* that are
intended to be used by GNOME Shell itself. When GNOME Shell still used
Autotools build system, the executable gnome-shell explicitly linked to
libgnome-shell-menu.so, so the linker loaded libgnome-shell-menu.so
before libgtk-3.so.0 and GNOME Shell used correct symbols from its
private library.

However, after GNOME Shell switched to Meson build system, gnome-shell
executable no longer lists libgnome-shell-menu.so as its dependency.
Even if we adds it to the build file, it won't be listed in DT_NEEDED of
gnome-shell because Meson uses -Wl,--as-needed by default. This causes
the runtime linker to load libgtk-3.so.0 before libgnome-shell-menu.so
and symbols gtk_menu_tracker*, gtk_action_observ*, gtk_menu_muxer_* are
bound to libgtk-3.so.0 instead of libgnome-shell-menu.so. GNOME Shell
hangs when opening more than one window because it uses functions from
the wrong library.

This problem is already fixed in OpenBSD ports. The article describing
it can be found on OpenBSD Journal with this link:
https://undeadly.org/cgi?action=article;sid=20170930133438

https://bugzilla.gnome.org/show_bug.cgi?id=791943
2018-01-03 02:19:18 +08:00
Carlos Soriano
e672c02441 gtkplacessidebar: Adapt to libcloudproviders 0.2.0
And a few improvements on the way.

https://bugzilla.gnome.org/show_bug.cgi?id=786123
2017-11-13 15:38:26 +01:00
Matthias Clasen
77a4e2ec37 3.22.26 2017-11-07 14:52:24 -05:00
Matthias Clasen
6c39e2f2f1 3.22.25 2017-10-29 08:48:00 -04:00
Matthias Clasen
e72d54c8a7 3.22.24 2017-10-04 08:09:26 -04:00
Matthias Clasen
a5c2472941 3.22.23 2017-10-03 22:40:44 -04:00
Matthias Clasen
364559b789 3.22.22 2017-10-02 12:45:24 -04:00
Matthias Clasen
fad199b406 3.22.21 2017-09-11 11:19:47 -04:00
Matthias Clasen
51e636be0f 3.22.20 2017-09-04 13:02:58 -04:00
Julius Härtl
8a940474d7 gtkplacessidebar: adapt libcloudproviders api rename
https://bugzilla.gnome.org/show_bug.cgi?id=786123
2017-09-04 11:27:31 -04:00
Julius Härtl
a446da7eb6 gtkplacessidebar: implement libcloudproviders support
Add integration of the libcloudproviders DBus API to the
GtkPlacesSidebar by showing name and sync status of the cloud providers.
The exported menu is rendered as a GtkPopover.

The sidebar will be updated if the list of cloudproviders changes e.g.
by adding or removing an account. If any cloud provider changes detailed
information like sync status only the individual sidebar row gets
updated.

Co-authored-by: Carlos Soriano <csoriano@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=786123
2017-08-25 16:58:21 -04:00
Matthias Clasen
efbf6f183e 3.22.19 2017-08-22 08:33:11 -04:00
Hannes Müller
7b68c234b1 configure: Add missing quotes to unbreak an AS_IF
Without quoting, the comma in AC_MSG_ERROR was wrongly interpreted as
separating the if and else paths.

https://bugzilla.gnome.org/show_bug.cgi?id=786287
2017-08-14 23:15:41 +01:00
Matthias Clasen
e1cf6281fe 3.22.18 2017-08-07 19:36:19 -04:00
Olivier Fourdan
1c23bce350 wayland: add shortcut inhibitor support
This adds support for the shortcut inhibitor protocol in gdk/wayland
backend.

A shortcut inhibitor request is issued from the gdk wayland backend for
both the older, deprecated API gdk_device_grab() and the new gdk seat
API gdk_seat_grab(), but only if the requested capability is for the
keyboard only.

https://bugzilla.gnome.org/show_bug.cgi?id=783343
2017-08-02 12:38:52 +02:00
Matthias Clasen
59857e8f20 3.22.17 2017-07-18 22:55:39 -04:00
Matthias Clasen
4bb0d25c5b 3.22.16 2017-06-20 15:16:19 -04:00
Matthias Clasen
2dfcb47190 3.22.15 2017-05-11 15:09:33 -04:00
Matthias Clasen
e0ad573c82 3.22.14 2017-05-10 14:57:00 -04:00
Emmanuele Bassi
1a489831b3 build: Fix the check on sassc's presence
If sassc is not available we do not want to include the rules to
regenerate the CSS out of the SCSS files.
2017-05-10 14:31:09 +01:00
Matthias Clasen
a3b852e9ac 3.22.13 2017-05-09 14:01:57 -04:00
Emmanuele Bassi
dc471fa258 build: Enable subdir-objects
Like we did in the master branch.

Using subdir-objects removes the forward compatibility warnings coming
from autotools.
2017-05-09 14:19:51 +01:00
Matthias Clasen
28d2edcb22 3.22.12 2017-04-08 15:15:58 -04:00
Emmanuele Bassi
f82329de35 Optionally depend on sassc to generate the theme CSS
Instead of using Ruby/Sass to generate the CSS from SCSS files, we can
use the faster and more lightweight libsass/sassc binary.

We can keep the CSS files in Git to make it easier to dist GTK+, but we
can add rules to ensure they get rebuilt if the source SCSS changes.

https://bugzilla.gnome.org/show_bug.cgi?id=780041
2017-04-03 12:02:11 +01:00
Matthias Clasen
a7ebe62e67 3.22.11 2017-03-19 12:11:14 +00:00
Matthias Clasen
c3190edd93 3.22.10 2017-03-13 20:52:49 -04:00
Matthias Clasen
c391417838 3.22.9 2017-02-27 17:57:11 -05:00
Chun-wei Fan
c6f0df26f6 Visual Studio builds: Support Visual Studio 2017
Update the autotools scripts so that we can support Visual Studio 2017
by copying the 2010 projects and updating items as needed to obtain
the 2017 projects.

Note that since the toolset version string changed for Visual Studio
2017, so allow the use of a custom toolset version string, otherwise
just generate the toolset version string as we did before.

Also, note that Visual Studio 2017 aims to be compatible with 2015
on the CRT level, so there should not be any problems using 2017-compiled
binaries with 2015-compiled ones.
2017-02-17 15:09:16 +08:00
Matthias Clasen
dad4aecfc0 3.22.8 2017-02-13 13:28:00 -05:00
William Hua
210d1279e5 mir: connect to content-hub
https://bugzilla.gnome.org/show_bug.cgi?id=775732
2017-01-16 17:11:16 -05:00
Matthias Clasen
790d5960c4 Bump version to 3.22.7 2017-01-05 17:33:51 -05:00
Matthias Clasen
92f6bcdca6 3.22.6 2017-01-04 15:48:17 -05:00
Debarshi Ray
9679ef6b00 flowbox: Export gtk_flow_box_get_child_at_pos as public API
Bump the gtk+ version so that others can depend on this new API.

https://bugzilla.gnome.org/show_bug.cgi?id=776187
2016-12-20 00:35:48 +01:00
Matthias Clasen
a8991a6bea 3.22.5 2016-12-09 11:54:24 -05:00
Matthias Clasen
4569bb372f 3.22.4 2016-11-18 13:55:21 -05:00
Matthias Clasen
99fed96b44 3.22.3 2016-11-07 11:24:43 -05:00
Matthias Clasen
f2bdf6e372 3.22.2 2016-10-23 23:09:16 -04:00
Matthias Clasen
ae7a1e0d08 3.22.1 2016-09-30 15:29:50 -04:00
Matthias Clasen
b51255b6a7 3.22.0 2016-09-19 15:31:56 -07:00
Matthias Clasen
a361705817 3.21.6 2016-09-13 05:34:55 -04:00
Matthias Clasen
738b1e3eec Require wayland-protocols 1.7
Needed for xdg-shell v6.
2016-08-31 07:07:54 -04:00
Matthias Clasen
852bdae85f 3.21.5 2016-08-29 15:51:06 -04:00
Jonas Ådahl
127d2ac956 wayland: Add API for creating exported window handles
Using the xdg_foreign protocol, expose a way to get handles to windows
that may be shared between processes.

https://bugzilla.gnome.org/show_bug.cgi?id=769788
2016-08-29 13:20:44 -04:00
Andreas Pokorny
097ed2b40a Fix warning on newer version so mir 0.22 and newer
Signed-off-by: Andreas Pokorny <andreas.pokorny@canonical.com>
2016-08-10 13:36:38 -04:00
Emmanuele Bassi
43a5331125 Require a new version of GLib
We need GLib 2.49.4 because of the new API requirements introduced by
commit 936c1649.

https://bugzilla.gnome.org/show_bug.cgi?id=769451
2016-08-02 22:15:26 +01:00
Carlos Garnacho
536017646e wayland: Update current tablet support to using v2
Only update to using v2 headers/structs. The incompatible changes
to tool events are dealt with in the next commit. Pads aren't handled
in this commit either.
2016-07-22 19:35:09 +02:00
Matthias Clasen
02c89f7e8f 3.21.4 2016-07-17 23:27:35 -04:00
Ignacio Casal Quinteiro
b480d9c2ed configure: fix "AC_RUN_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS" 2016-06-29 15:16:54 +02:00
Ondrej Holy
0c1cc9832f gtkfilesystem: Improve heuristics to detect remote filesystem
Use G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE to detect remote filesystems
instead of hardcoded list of filesystem types.

Bump required GLib version accordingly.

https://bugzilla.gnome.org/show_bug.cgi?id=767965
2016-06-28 10:55:06 +02:00
Matthias Clasen
49bd5a97ce 3.21.3 2016-06-20 15:27:20 -04:00