Compare commits

...

100 Commits

Author SHA1 Message Date
6ebabd50c6 Bump version to 3.22.1
Update NEWS.
2016-10-11 00:57:38 +02:00
0c22a21a24 window-tracker: Consider Flatpak ID for window matching
Our window matching currently fails frequently with Flatpak
applications, as one of the primary hints used to link windows
with .desktop files - the WM_CLASS - no longer matches when
flatpak renames the exported .desktop file. Worse, as Flatpak
applications are run in their own PID namespace, different
apps frequently share a common _NET_WM_PID, resulting in
unrelated apps being grouped together by one of the fallback
paths. To match Flatpak applications reliably, take the newly
exported Flatpak ID into account.

https://bugzilla.gnome.org/show_bug.cgi?id=772615
2016-10-10 23:40:39 +02:00
70a0c4211c Update Croatian translation 2016-10-10 18:16:38 +00:00
a21af541c4 Add Croatian translation 2016-10-09 19:23:52 +00:00
e07ba91486 Update Chinese (Taiwan) translation 2016-10-09 14:14:46 +00:00
a22e9ce9cd st: Ignore filtered selection events not meant to our clipboard window
Other windows like the mutter Xwayland selection bridges might deal with
the clipboard, which would result in events visible on st-clipboard event
filters.

In order to avoid unintended results, ignore events that are not meant for
the clipboard window.

https://bugzilla.gnome.org/show_bug.cgi?id=760745
2016-10-09 10:57:47 +02:00
d4ce51b1b7 altTab: Consider attached modals for window order
Similar to bug 667552 for the app switcher, attached modal dialogs
can result in an unexpected window order in the window switcher:
Selecting a window with an attached dialog will focus the dialog
instead, but as the dialog itself is ignored in the window list,
its last-used timestamp is not taken into account for the position
in the MRU list. Fix this by fetching the list of all NORMAL windows
and filter out skip-taskbar windows ourselves, while making sure that
windows appear in the position of their attached modal dialog where
appropriate.

https://bugzilla.gnome.org/show_bug.cgi?id=747153
2016-10-07 14:51:15 +02:00
830005069c Updated Italian translation 2016-10-06 11:48:53 +00:00
8c49267658 Updated Italian translation 2016-10-03 09:38:47 +00:00
d0bab1f7ac network: Initialize primary and VPN connections on startup
We only connect to the corresponding property notifications after both
Client and RemoteSettings are ready, so we may miss the initial signal
emission. Make sure to pick up the connections in this case to fix the
network indicator not showing up.

https://bugzilla.gnome.org/show_bug.cgi?id=772249
2016-09-30 13:50:30 +02:00
f00826f3fb shell-js: Remove usage of deprecated API
This removes all usage of SpiderMonkey API that is deprecated in mozjs24
and will be removed in mozjs31.

https://bugzilla.gnome.org/show_bug.cgi?id=742249
2016-09-27 17:14:47 -07:00
BM
717c0ea19f Update Uzbek@cyrillic translation 2016-09-25 09:16:36 -04:00
3cd8dd0f32 global: Fix a small memory leak 2016-09-21 23:38:42 +02:00
aedd616346 Update Arabic translation 2016-09-21 14:51:33 +02:00
b3de3ff00b Update Basque language 2016-09-19 13:37:26 +02:00
b66dff8aed Bump version to 3.22.0
Update NEWS.
2016-09-19 23:18:13 +02:00
ff814df03a shell-screenshot: Avoid a crash when the cursor texture is NULL
Analogously to commit 2a7f9f70b8 for the
screen recorder, as a wayland compositor, the cursor texture might not
exist.

https://bugzilla.gnome.org/show_bug.cgi?id=771656
2016-09-19 22:41:51 +02:00
c9a528025c Updated Danish translation 2016-09-19 20:35:22 +00:00
5f3ec8a6f1 Update British English translation 2016-09-18 12:43:02 +02:00
becd29c50a altTab: Skip unminimize effect when cycling to a window
Similar to windows on another workspace, selecting a minimized window
doesn't look quite right - the selected window disappears, then animates
back in. Fix this by adding support for skipping the next effect to the
wm and use it to bypass the unminimize animation.

https://bugzilla.gnome.org/show_bug.cgi?id=771536
2016-09-18 11:00:54 +02:00
a029a35050 altTab: Improve cycling to a window on another workspace
Both 'cycle-group' and 'cycle-window' shortcuts allow cycling through
windows on all workspaces. While this works, it looks quite broken
since we started showing clones for highlighting: the selected window
vanishes (when its clone is destroyed), then slides back in with its
workspace. Instead, slide the selected window to its workspace like
we do for the 'move-to-workspace-*' shortcuts.

https://bugzilla.gnome.org/show_bug.cgi?id=771536
2016-09-18 11:00:54 +02:00
d6a78d61d1 altTab: Restore correct visibility when cycling windows
Commit 3171819c improved window cycling by using a dedicated to clone
for highlighting rather than activating all cycled windows. Original
window actors are hidden while its clone is showing, and shown again
afterwards, however the latter is wrong for actors that are not supposed
to be visible (for example where the window is minimized, or on a different
workspace). Fix this by properly syncing the actor's visibility instead
of showing it unconditionally.

https://bugzilla.gnome.org/show_bug.cgi?id=771536
2016-09-18 11:00:54 +02:00
9be46bd212 Update Arabic translation 2016-09-16 21:30:26 +02:00
4df3afced0 Update Catalan translation 2016-09-16 21:26:51 +02:00
90f8e1df80 Updated Ukrainian translation 2016-09-15 18:12:16 +03:00
ea2ac89e61 Updated Ukrainian translation 2016-09-15 18:06:22 +03:00
695bfb9616 extensionPrefs: Fix extension list width
ScrolledWindow changed its allocation behavior, and the extension
list only takes up the minimum width rather than the available
width as intended. To get the previous behavior back, we need
to set the newly added :propagate-natural-width property ...

https://bugzilla.gnome.org/show_bug.cgi?id=771391
2016-09-14 09:18:23 +02:00
5dbdde8c15 Updated French translation 2016-09-13 10:19:20 +00:00
854bfc17ed Updated Scottish Gaelic translation 2016-09-13 09:48:01 +00:00
c8b192bcae Updated Danish translation 2016-09-13 01:57:54 +02:00
f07306897f Bump version to 3.21.92
Update NEWS.
2016-09-13 00:16:11 +02:00
44d731fff5 Add more options to XGETTEXT_OPTIONS in po/Makevars 2016-09-12 19:43:44 +02:00
52f939f64c Updated Greek translation 2016-09-11 21:20:39 +00:00
f1d12c18d8 Updated Russian translation 2016-09-11 17:52:46 +00:00
373ebb50eb Restore gvc submodule
Commit 68f439425b accidentally dropped the changes from the last
couple of months ...
2016-09-11 19:20:00 +02:00
b0b5be63b9 Restore gnome-shell-sass submodule
Commit 68f439425b accidentally dropped the changes from the last
couple of months ...
2016-09-11 19:17:36 +02:00
68f439425b Updated Galician translations 2016-09-11 00:35:39 +02:00
cae4d92191 loginDialog: fix cancel button in ask for username mode
If the user clicks Not Listed? to enter ask for username mode, clicks
cancel, and then attempts to log in via the user list, the user will see
"Authentication failed" after correctly typing the password, and then
will become stuck in an empty screen with just the gray noise background.

The problem is, we forgot to disconnect from the signal that's waiting
for the next button to be pressed on the username entry screen. Since
the signal handler that executes here is expecting the username to be
input, and isn't prepared for us to have switched back to user list,
various bad things happen. We try to start two gdm-password
conversations at once, for instance, one using the user's password as
the username. I stopped investigating here, because it's easy to fix by
disconnecting from the signal at the right time.

https://bugzilla.gnome.org/show_bug.cgi?id=770328
2016-09-10 16:50:53 -05:00
f336295475 Updated Korean translation 2016-09-10 18:16:31 +00:00
06d0e7d74a telepathyClient: Always clear pending messages on destroy
Since commit 82950ecea, we acknowledge pending messages when closing a
chat notification for a channel we are handling to prevent the channel
from popping up again immediately. While this isn't an issue for channels
we don't handle, the unread messages of the destroyed notification are
still considered for the messages indicator in the top bar, which is
clearly confusing (in particular when we end up showing the indicator
without any notifications in the list). As it's arguably correct to not
meddle with a channel handled by someone else, just reset the cache of
pending messages to address this issue.

https://bugzilla.gnome.org/show_bug.cgi?id=770888
2016-09-09 23:54:28 +02:00
5e0e3edc7b data: Swap default for 'disable-extension-version-check' setting
Nowadays, the user interface has mostly stabilized with most changes
happening under the hood. As a result, extensions written for previous
versions of GNOME Shell are very much expected to keep working on
updates, if it wasn't for the version check that requires a version
bump in the extension metadata. There has been a setting to disable
that check for a while, but it's existence isn't widely known (hence
the common perception that "everything breaks on updates"). While
there is still some risk that an out-of-date extension can be enabled
without error, but fails spectacularly later (where we cannot catch
the exception), it is reasonably small by now when compared to the
~95% of extensions that can be "unbroken", so swap the default value
to disable version checks by default.

https://bugzilla.gnome.org/show_bug.cgi?id=770887
2016-09-09 23:54:28 +02:00
02a51bfa65 windowManager: Fix windows not getting undimmed while hidden
Mutter's plugin destroy event doesn't happen if a window is hidden
when it gets unmanaged so we also need to handle the
MetaWindow::unmanaged signal to check whether the parent should
dimmed.

https://bugzilla.gnome.org/show_bug.cgi?id=752524
2016-09-09 17:17:07 +02:00
dbd04df311 windowManager: Fix windows not getting undimmed in some cases
meta_window_foreach_transient() iterates through all transients of a
window, not only direct transients. This means that simply checking if
a transient is an attached dialog isn't enough because it might be a
non-direct transient for the window we're checking, in which case we
don't want to dim the window.

In particular this fixes windows not getting undimmed when they have
more that one level of transient children and the direct transient gets
destroyed. In that case we would still find at least one non-direct
transient child and decide to keep the window dimmed.

https://bugzilla.gnome.org/show_bug.cgi?id=770163
2016-09-09 17:17:06 +02:00
e6adcd99c7 [l10n] update Persian translations 2016-09-09 18:36:30 +04:30
3171819c36 altTab: Don't mess up MRU order while cycling windows
Commit bd6e7f14d1 reimplemented the cycle keybindings to
fix cycling between more than two windows, but the approach
of highlighting cycled windows by actually focusing them has
the drawback that cycling messes up the MRU order of windows.
To fix this, only change the window focus when the operation
finishes, and use a dedicated actor that draws a border around
a window clone for highlighting.

https://bugzilla.gnome.org/show_bug.cgi?id=771063
2016-09-08 21:32:10 +02:00
e4976b535d WorkspaceSwitcherPopup: allow input events to pass through
There's no particular reason for this actor to be reactive and thus
preventing input events to reach actors underneath, e.g. quickly
clicking on something while the popup isn't yet finished animating
out.

https://bugzilla.gnome.org/show_bug.cgi?id=770382
2016-09-08 19:29:50 +02:00
06d1602f17 Updated French translation 2016-09-08 16:40:26 +00:00
603d0dfbc3 Update Latvian translation 2016-09-08 19:00:21 +03:00
0b6c5b4620 systray: Bail out if the plug window is gone
Instead of crashing when deferencing a NULL pointer.

Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=755313
2016-09-08 12:08:02 +02:00
d7894dbc44 Updated Dutch translation Master 2016-09-07 17:19:57 +02:00
d25d8126ea Updated Portuguese translation 2016-09-07 05:49:14 +00:00
2402d3e115 Updated Swedish translation 2016-09-06 22:07:24 +00:00
ac4284d348 Updated Hebrew translation 2016-09-06 12:21:39 +03:00
f9ef80749a recorder: Composite captured images before passing into gstreamer
Mutter may capture the screen in multiple capture regions. If this is
done, take these images and composite them onto one large image, which
is then passed into the gstreamer source.
2016-09-06 15:22:23 +08:00
22f0d3076e screenshot: Composite multiple captures into one image
When clutter gives us multiple captures (multiple cairo_surface_t's),
composite them into one large image and use that as final screenshot
result. This makes screenshooting work when mutter uses multiple views.

https://bugzilla.gnome.org/show_bug.cgi?id=770128
2016-09-06 15:22:23 +08:00
127b6dca1c updated Punjabi Translation 2016-09-05 07:29:17 -05:00
8cfff33291 Updated Vietnamese translation
Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
2016-09-05 15:04:03 +07:00
21f534c7f0 Updated Turkish translation 2016-09-04 19:12:28 +00:00
9faa1db942 Updated Lithuanian translation 2016-09-04 12:28:10 +03:00
2fc9bffb23 Updated Kazakh translation 2016-09-04 04:15:00 +00:00
f16eae45a2 Updated Korean translation 2016-09-03 14:07:31 +00:00
622e73c34c Bump version to 3.21.91
Update NEWS.
2016-08-30 00:26:31 +02:00
eb1c3d7045 Updated Serbian translation 2016-08-28 09:16:02 +02:00
fc26895f70 Updated Slovenian translation 2016-08-25 22:53:27 +02:00
ca224b379f Updated Brazilian Portuguese translation 2016-08-22 21:13:36 +00:00
42b609b852 Updated Friulian translation 2016-08-22 20:53:03 +00:00
a24169e2aa Updated Spanish translation 2016-08-22 20:44:47 +02:00
144d1dca88 Updated Indonesian translation 2016-08-22 09:47:46 +00:00
38ab6ba3ec Updated Slovak translation 2016-08-21 16:01:41 +00:00
bc6a0626c1 Updated Finnish translation 2016-08-21 09:45:31 +00:00
497f4f4a3c Updated German translation 2016-08-21 09:39:47 +00:00
8c8c89a5f1 Bump version to 3.21.90.1
The 3.21.90 tarball got corrupted, so do another point release.
2016-08-20 23:02:34 +02:00
d658a5148a recorder: Print absolute path if output file can't be opened 2016-08-20 16:03:31 +02:00
2c3e0dab0f Updated Polish translation 2016-08-20 10:26:50 +02:00
e2400e35bd Updated Hungarian translation 2016-08-19 22:01:16 +00:00
fc4562491b Updated Czech translation 2016-08-19 23:17:20 +02:00
6e3bedb888 Add translator comments to .desktop files 2016-08-19 23:15:20 +02:00
2b8332df5e Bump version to 3.21.90
Update NEWS.
2016-08-19 22:16:00 +02:00
795e7d4b59 build: Say good-bye to intltool
intltool is unmaintained nowadays while upstream gettext gained
support for formats like GSettings schemas and .desktop files,
and offers a mechanism to teach it about other XML formats not
yet supported out of the box which we can use for the rest.
So there's nothing stopping us, just make the switch ...

https://bugzilla.gnome.org/show_bug.cgi?id=769074
2016-08-19 22:13:14 +02:00
522d46a525 Updated Indonesian translation 2016-08-19 06:21:39 +00:00
dcecf5e350 Updated Brazilian Portuguese translation 2016-08-19 02:26:11 +00:00
a61c929450 Updated Turkish translation 2016-08-16 04:02:44 +00:00
5992e9f524 Updated Czech translation 2016-08-12 17:31:44 +02:00
ee4cd05ebd Updated Finnish translation 2016-08-12 12:42:53 +00:00
af5e65fd79 global: Make timestamp parameter unsigned
Negative values don't make sense to timestamps, and an unsigned
timestamp as returned by shell_global_get_current_time() or
Gdk/Clutter events may exceed the range of signed integers.

https://bugzilla.gnome.org/show_bug.cgi?id=769216
2016-08-11 09:04:22 +02:00
284cbf3ea7 shell: Remove shell_util_text_insert_keyval()
It is now unused.
2016-08-10 11:25:50 +02:00
c3e68955e3 keyboard: Implement more of the wayland caribou adapter
Have it notify properly of changes to the current input source, as
well as exposing those in get_groups().

The support for virtual keyboard events has been replaced by
ClutterVirtualInputDevice, which can be thought of as the equivalent
to the XTEST devices in X11.

https://bugzilla.gnome.org/show_bug.cgi?id=765009
2016-08-10 11:23:58 +02:00
ffa28e7ee7 Updated Hebrew translation 2016-08-07 15:42:02 +03:00
78d81f909c Updated Hungarian translation 2016-08-04 21:54:56 +00:00
34551bf48b Bump g-i requirement
We need commit bd475c00d9 to pick up mutter's clutter fork.
2016-08-03 21:46:54 +02:00
e02cd53ac5 Updated Lithuanian translation 2016-08-03 21:56:30 +03:00
b7f5154bd3 Updated German translation 2016-08-02 20:15:37 +00:00
d80247918c Updated Spanish translation 2016-08-02 16:50:47 +02:00
bb8c2d3e13 Updated Portuguese translation 2016-07-27 07:42:37 +00:00
6e0e37519d calendar-server: Add back missing return value
In commit 7e0e224e0, when moving from e_cal_recur_generate_instances()
to e_cal_client_generate_instances(), the return value of the
ECalRecurInstanceFn callback was accidentally removed; add it
back.

https://bugzilla.gnome.org/show_bug.cgi?id=769156
2016-07-25 18:55:22 +02:00
5c19ae5878 Updated Friulian translation 2016-07-23 15:51:45 +00:00
8713473c64 Add Language headers to po files
Future versions of gettext will fail if this header is missing.
2016-07-21 02:46:17 +02:00
a4b4f2f6fd Updated POTFILES.in 2016-07-21 00:50:20 +02:00
03f22135b5 Bump version to 3.21.4
Update NEWS.
2016-07-20 21:07:19 +02:00
5b79f657eb data: Dist portals keyfile
Whoops, forgot that in the previous commit :-(
2016-07-20 21:07:19 +02:00
89 changed files with 19502 additions and 16912 deletions

4
.gitignore vendored
View File

@ -16,7 +16,6 @@ config.log
config.status
config
configure
data/50-gnome-shell-*.xml
data/org.gnome.Shell.desktop
data/org.gnome.Shell.desktop.in
data/gnome-shell-extension-prefs.desktop
@ -26,8 +25,6 @@ data/gschemas.compiled
data/perf-background.xml
data/org.gnome.shell.gschema.xml
data/org.gnome.shell.gschema.valid
data/org.gnome.shell.evolution.calendar.gschema.xml
data/org.gnome.shell.evolution.calendar.gschema.valid
data/org.gnome.Shell.PortalHelper.desktop
data/org.gnome.Shell.PortalHelper.service
data/theme/.sass-cache
@ -74,7 +71,6 @@ src/*-marshal.[ch]
src/Makefile
src/Makefile.in
src/calendar-server/evolution-calendar.desktop
src/calendar-server/evolution-calendar.desktop.in
src/calendar-server/org.gnome.Shell.CalendarServer.service
src/gnome-shell
src/gnome-shell-calendar-server

97
NEWS
View File

@ -1,3 +1,100 @@
3.22.1
======
* Fix hidden network indicator on startup [Florian; #772249]
* Fix order of windows with modal dialogs in window switcher [Florian; #747153]
* Fix feedback loop between StClipboard and X11 bridge [Carlos; #760745]
* Reliably match windows from Flatpak apps [Florian; #772615]
* Misc. bug fixes [Philip; #742249]
Contributors:
Philip Chimento, Carlos Garnacho, Florian Müllner
Translations:
Inaki Larranaga Murgoitio [eu], Khaled Hosny [ar], BM [uz@cyrillic],
Milo Casagrande [it], Cheng-Chia Tseng [zh_TW], gogo [hr]
3.22.0
======
* Misc. bug fixes [Florian, Rui; #771391, #771536] #771656]
Contributors:
Rui Matos, Florian Müllner
Translations:
Ask Hjorth Larsen [da], GNOME Translation Robot [gd], Alexandre Franke [fr],
Daniel Korostil [uk], Jordi Mas [ca], Khaled Hosny [ar], David King [en_GB]
3.21.92
=======
* Adjust screen capture to work with multiple stage views [Jonas; #770128]
* Improve handling of cycle shortcuts [Florian; #771063]
* Fix windows not getting undimmed in some cases [Rui; #770163, #752524]
* Disable extension version check by default [Florian; #770887]
* Misc. bug fixes [Rui, Florian, Michael; #770382, #770888, #770328]
Contributors:
Jonas Ådahl, Michael Catanzaro, Fran Dieguez, Olivier Fourdan, Rui Matos,
Florian Müllner
Translations:
Changwoo Ryu [ko], Baurzhan Muftakhidinov [kk], Aurimas Černius [lt],
Muhammet Kara [tr], Trần Ngọc Quân [vi], A S Alam [pa], Yosef Or Boczko [he],
Anders Jonsson [sv], Tiago Santos [pt], Hannie Dumoleyn [nl],
Rūdolfs Mazurs [lv], Claude Paroz [fr], Arash Mousavi [fa],
Fran Dieguez [gl], Stas Solovey [ru], Tom Tryfonidis [el]
3.21.91
=======
Translations:
Mario Blättermann [de], Jiri Grönroos [fi], Dušan Kazik [sk],
Andika Triwidada [id], Daniel Mustieles [es], Fabio Tomat [fur],
Enrico Nicoletto [pt_BR], Matej Urbančič [sl], Мирослав Николић [sr, sr@latin]
3.21.90.1
=========
Contributors:
Piotr Drąg
Translations:
Marek Černocký [cs], Balázs Úr [hu]
3.21.90
=======
* Improve on-screen keyboard on wayland [Carlos; #765009]
* Misc. bug fixes [Florian; #769156, #769216, #769074]
Contributors:
Carlos Garnacho, Florian Müllner
Translations:
Fabio Tomat [fur], Tiago Santos [pt], Daniel Mustieles [es],
Bernd Homuth [de], Aurimas Černius [lt], Balázs Úr [hu],
Yosef Or Boczko [he], Jiri Grönroos [fi], Marek Cernocky [cs],
Muhammet Kara [tr], Enrico Nicoletto [pt_BR], Andika Triwidada [id]
3.21.4
======
* overview: Fix switching workspaces when scrolling on non-primary monitors
[Florian; #766883, #768316]
* Fix crash when using screen recorder under wayland [Rui; #767001]
* Update theme on video memory purge errors [Rui; #739178]
* Free old backgrounds immediately [Hyungwon; #766353]
* Add support for system upgrades to end session dialog [Kalev; #763611]
* Fix maximized windows flickering to the wrong size on restart [Owen; #761566]
* Hide ignored events in calendar as well [Florian; #768538]
* calendar: Only hide dismissed occurrence of recurring event [Florian; #748226]
* Provide org.freedesktop.impl.portal.access implementation [Florian; #768669]
* Misc. bug fixes and cleanups [Rui, Florian, Marinus, Jonas; #767954, #768317,
#746867, #762206, #768956, #768979]
Contributors:
Jonas Ådahl, Piotr Drąg, Hyungwon Hwang, Kalev Lember, Rui Matos,
Florian Müllner, Marinus Schraal, Owen W. Taylor
Translations:
Andika Triwidada [id], Daniel Mustieles [es], Bruce Cowan [en_GB],
Dušan Kazik [sk], Piotr Drąg [pl], Chao-Hsiung Liao [zh_HK]
3.21.3
======
* Do not disable suspend action when locked [Florian; #725960]

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.21.3],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.22.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AX_IS_RELEASE([git-directory])
AC_CONFIG_HEADERS([config.h])
@ -24,13 +24,14 @@ LT_PREREQ([2.2.6])
LT_INIT([disable-static])
# i18n
IT_PROG_INTLTOOL([0.40])
GETTEXT_PACKAGE=gnome-shell
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
[The prefix for our gettext translation domains.])
AM_GNU_GETTEXT_VERSION([0.19.6])
AM_GNU_GETTEXT([external])
PKG_PROG_PKG_CONFIG([0.22])
AC_PATH_PROG([XSLTPROC], [xsltproc])
@ -75,9 +76,9 @@ AS_IF([test x$enable_systemd != xno], [
AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.21.5
GOBJECT_INTROSPECTION_MIN_VERSION=1.45.4
GOBJECT_INTROSPECTION_MIN_VERSION=1.49.1
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.21.3
MUTTER_MIN_VERSION=3.22.1
GTK_MIN_VERSION=3.15.0
GIO_MIN_VERSION=2.45.3
LIBECAL_MIN_VERSION=3.5.3
@ -254,7 +255,6 @@ AC_CONFIG_FILES([
docs/reference/st/Makefile
docs/reference/st/st-docs.sgml
js/Makefile
src/calendar-server/evolution-calendar.desktop.in
src/Makefile
src/gvc/Makefile
browser-plugin/Makefile

View File

@ -1,24 +1,24 @@
<?xml version="1.0" encoding="UTF-8" ?>
<KeyListEntries schema="org.gnome.shell.keybindings"
group="system"
_name="System"
name="System"
wm_name="GNOME Shell"
package="gnome-shell">
<KeyListEntry name="toggle-message-tray"
_description="Show the notification list"/>
description="Show the notification list"/>
<KeyListEntry name="focus-active-notification"
_description="Focus the active notification"/>
description="Focus the active notification"/>
<KeyListEntry name="toggle-overview"
_description="Show the overview"/>
description="Show the overview"/>
<KeyListEntry name="toggle-application-view"
_description="Show all applications"/>
description="Show all applications"/>
<KeyListEntry name="open-application-menu"
_description="Open the application menu"/>
description="Open the application menu"/>
</KeyListEntries>

View File

@ -14,8 +14,9 @@ servicedir = $(datadir)/dbus-1/services
service_DATA = org.gnome.Shell.PortalHelper.service
CLEANFILES += \
org.gnome.Shell.PortalHelper.service \
org.gnome.Shell.PortalHelper.desktop \
org.gnome.Shell.PortalHelper.service \
org.gnome.Shell.PortalHelper.desktop \
org.gnome.Shell.PortalHelper.desktop.in \
$(NULL)
endif
@ -31,7 +32,9 @@ endif
-e "s|@VERSION[@]|$(VERSION)|" \
$< > $@ || rm $@
@INTLTOOL_DESKTOP_RULE@
%.desktop:%.desktop.in
$(AM_V_GEN) $(MSGFMT) --desktop --template $(builddir)/$< \
-d $(top_srcdir)/po -o $@
introspectiondir = $(datadir)/dbus-1/interfaces
introspection_DATA = \
@ -83,14 +86,11 @@ perf-background.xml: perf-background.xml.in
$< > $@ || rm $@
keysdir = @GNOME_KEYBINDINGS_KEYSDIR@
keys_in_files = 50-gnome-shell-system.xml.in
keys_DATA = $(keys_in_files:.xml.in=.xml)
keys_DATA = 50-gnome-shell-system.xml
gsettings_SCHEMAS = org.gnome.shell.gschema.xml
@INTLTOOL_XML_NOMERGE_RULE@
%.gschema.xml.in: %.gschema.xml.in.in Makefile
%.gschema.xml: %.gschema.xml.in Makefile
$(AM_V_GEN) sed -e 's|@GETTEXT_PACKAGE[@]|$(GETTEXT_PACKAGE)|g' \
$< > $@ || rm $@
@ -109,15 +109,16 @@ convert_DATA = gnome-shell-overrides.convert
EXTRA_DIST = \
org.gnome.Shell.desktop.in.in \
gnome-shell-extension-prefs.desktop.in.in \
$(portal_DATA) \
$(introspection_DATA) \
$(menu_DATA) \
$(convert_DATA) \
$(keys_in_files) \
$(keys_DATA) \
$(dist_theme_files) \
perf-background.xml.in \
org.gnome.Shell.PortalHelper.desktop.in \
org.gnome.Shell.PortalHelper.desktop.in.in \
org.gnome.Shell.PortalHelper.service.in \
org.gnome.shell.gschema.xml.in.in \
org.gnome.shell.gschema.xml.in \
gnome-shell-theme.gresource.xml \
$(resource_files) \
$(NULL)
@ -126,11 +127,9 @@ CLEANFILES += \
org.gnome.Shell.desktop.in \
gnome-shell-extension-prefs.in \
$(desktop_DATA) \
$(keys_DATA) \
$(gsettings_SCHEMAS) \
perf-background.xml \
gschemas.compiled \
org.gnome.shell.gschema.valid \
org.gnome.shell.gschema.xml.in \
gnome-shell-theme.gresource \
$(NULL)

View File

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
_Name=GNOME Shell Extension Preferences
_Comment=Configure GNOME Shell Extensions
Name=GNOME Shell Extension Preferences
Comment=Configure GNOME Shell Extensions
Exec=@bindir@/gnome-shell-extension-prefs %u
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell

View File

@ -1,9 +1,10 @@
[Desktop Entry]
_Name=Network Login
Name=Network Login
Type=Application
Exec=gapplication launch org.gnome.Shell.PortalHelper
DBusActivatable=true
NoDisplay=true
# Translators: Do NOT translate or transliterate this text (this is an icon file name)!
Icon=network-workgroup
StartupNotify=true
OnlyShowIn=GNOME;

View File

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
_Name=GNOME Shell
_Comment=Window management and application launching
Name=GNOME Shell
Comment=Window management and application launching
Exec=@bindir@/gnome-shell
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell

View File

@ -3,84 +3,84 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key name="development-tools" type="b">
<default>true</default>
<_summary>
<summary>
Enable internal tools useful for developers and testers from Alt-F2
</_summary>
<_description>
</summary>
<description>
Allows access to internal debugging and monitoring tools
using the Alt-F2 dialog.
</_description>
</description>
</key>
<key name="enabled-extensions" type="as">
<default>[]</default>
<_summary>UUIDs of extensions to enable</_summary>
<_description>
<summary>UUIDs of extensions to enable</summary>
<description>
GNOME Shell extensions have a UUID property; this key lists extensions
which should be loaded. Any extension that wants to be loaded needs
to be in this list. You can also manipulate this list with the
EnableExtension and DisableExtension D-Bus methods on org.gnome.Shell.
</_description>
</description>
</key>
<key name="disable-extension-version-validation" type="b">
<default>false</default>
<_summary>Disables the validation of extension version compatibility</_summary>
<_description>
<default>true</default>
<summary>Disables the validation of extension version compatibility</summary>
<description>
GNOME Shell will only load extensions that claim to support the current
running version. Enabling this option will disable this check and try to
load all extensions regardless of the versions they claim to support.
</_description>
</description>
</key>
<key name="favorite-apps" type="as">
<default>[ 'epiphany.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]</default>
<_summary>List of desktop file IDs for favorite applications</_summary>
<_description>
<summary>List of desktop file IDs for favorite applications</summary>
<description>
The applications corresponding to these identifiers
will be displayed in the favorites area.
</_description>
</description>
</key>
<key name="app-picker-view" type="u">
<default>0</default>
<_summary>App Picker View</_summary>
<_description>
<summary>App Picker View</summary>
<description>
Index of the currently selected view in the application picker.
</_description>
</description>
</key>
<key name="command-history" type="as">
<default>[]</default>
<_summary>History for command (Alt-F2) dialog</_summary>
<summary>History for command (Alt-F2) dialog</summary>
</key>
<key name="looking-glass-history" type="as">
<default>[]</default>
<!-- Translators: looking glass is a debugger and inspector tool, see https://wiki.gnome.org/Projects/GnomeShell/LookingGlass -->
<_summary>History for the looking glass dialog</_summary>
<summary>History for the looking glass dialog</summary>
</key>
<key name="always-show-log-out" type="b">
<default>false</default>
<_summary>Always show the 'Log out' menu item in the user menu.</_summary>
<_description>
<summary>Always show the 'Log out' menu item in the user menu.</summary>
<description>
This key overrides the automatic hiding of the 'Log out'
menu item in single-user, single-session situations.
</_description>
</description>
</key>
<key name="remember-mount-password" type="b">
<default>false</default>
<_summary>Whether to remember password for mounting encrypted or remote filesystems</_summary>
<_description>
<summary>Whether to remember password for mounting encrypted or remote filesystems</summary>
<description>
The shell will request a password when an encrypted device or a
remote filesystem is mounted. If the password can be saved for
future use a 'Remember Password' checkbox will be present.
This key sets the default state of the checkbox.
</_description>
</description>
</key>
<key name="had-bluetooth-devices-setup" type="b">
<default>false</default>
<_summary>Whether the default Bluetooth adapter had set up devices associated to it</_summary>
<_description>
<summary>Whether the default Bluetooth adapter had set up devices associated to it</summary>
<description>
The shell will only show a Bluetooth menu item if a Bluetooth
adapter is powered, or if there were devices set up associated
with the default adapter. This will be reset if the default
adapter is ever seen not to have devices associated to it.
</_description>
</description>
</key>
<child name="keybindings" schema="org.gnome.shell.keybindings"/>
<child name="keyboard" schema="org.gnome.shell.keyboard"/>
@ -90,44 +90,44 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key name="open-application-menu" type="as">
<default>["&lt;Super&gt;F10"]</default>
<_summary>Keybinding to open the application menu</_summary>
<_description>
<summary>Keybinding to open the application menu</summary>
<description>
Keybinding to open the application menu.
</_description>
</description>
</key>
<key name="toggle-application-view" type="as">
<default>["&lt;Super&gt;a"]</default>
<_summary>Keybinding to open the "Show Applications" view</_summary>
<_description>
<summary>Keybinding to open the "Show Applications" view</summary>
<description>
Keybinding to open the "Show Applications" view of the Activities
Overview.
</_description>
</description>
</key>
<key name="toggle-overview" type="as">
<default>["&lt;Super&gt;s"]</default>
<_summary>Keybinding to open the overview</_summary>
<_description>
<summary>Keybinding to open the overview</summary>
<description>
Keybinding to open the Activities Overview.
</_description>
</description>
</key>
<key name="toggle-message-tray" type="as">
<default>["&lt;Super&gt;v","&lt;Super&gt;m"]</default>
<_summary>Keybinding to toggle the visibility of the notification list</_summary>
<_description>
<summary>Keybinding to toggle the visibility of the notification list</summary>
<description>
Keybinding to toggle the visibility of the notification list.
</_description>
</description>
</key>
<key name="focus-active-notification" type="as">
<default>["&lt;Super&gt;n"]</default>
<_summary>Keybinding to focus the active notification</_summary>
<_description>
<summary>Keybinding to focus the active notification</summary>
<description>
Keybinding to focus the active notification.
</_description>
</description>
</key>
<key name="pause-resume-tweens" type="as">
<default>[]</default>
<_summary>Keybinding that pauses and resumes all running tweens, for debugging purposes</_summary>
<_description></_description>
<summary>Keybinding that pauses and resumes all running tweens, for debugging purposes</summary>
<description></description>
</key>
</schema>
@ -135,10 +135,10 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key name="keyboard-type" type="s">
<default>'touch'</default>
<_summary>Which keyboard to use</_summary>
<_description>
<summary>Which keyboard to use</summary>
<description>
The type of keyboard to use.
</_description>
</description>
</key>
</schema>
@ -147,11 +147,11 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key type="b" name="current-workspace-only">
<default>false</default>
<_summary>Limit switcher to current workspace.</_summary>
<_description>
<summary>Limit switcher to current workspace.</summary>
<description>
If true, only applications that have windows on the current workspace are shown in the switcher.
Otherwise, all applications are included.
</_description>
</description>
</key>
</schema>
@ -165,20 +165,20 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key name="app-icon-mode" enum="org.gnome.shell.window-switcher.AppIconMode">
<default>'both'</default>
<_summary>The application icon mode.</_summary>
<_description>
<summary>The application icon mode.</summary>
<description>
Configures how the windows are shown in the switcher. Valid possibilities
are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-only'
(shows only the application icon) or 'both'.
</_description>
</description>
</key>
<key type="b" name="current-workspace-only">
<default>true</default>
<_summary>Limit switcher to current workspace.</_summary>
<_description>
<summary>Limit switcher to current workspace.</summary>
<description>
If true, only windows from the current workspace are shown in the switcher.
Otherwise, all windows are included.
</_description>
</description>
</key>
</schema>
@ -186,43 +186,43 @@
gettext-domain="@GETTEXT_PACKAGE@">
<key name="attach-modal-dialogs" type="b">
<default>true</default>
<_summary>Attach modal dialog to the parent window</_summary>
<_description>
<summary>Attach modal dialog to the parent window</summary>
<description>
This key overrides the key in org.gnome.mutter when running
GNOME Shell.
</_description>
</description>
</key>
<key name="edge-tiling" type="b">
<default>true</default>
<_summary>Enable edge tiling when dropping windows on screen edges</_summary>
<_description>
<summary>Enable edge tiling when dropping windows on screen edges</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="dynamic-workspaces" type="b">
<default>true</default>
<_summary>Workspaces are managed dynamically</_summary>
<_description>
<summary>Workspaces are managed dynamically</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="workspaces-only-on-primary" type="b">
<default>true</default>
<_summary>Workspaces only on primary monitor</_summary>
<_description>
<summary>Workspaces only on primary monitor</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="focus-change-on-pointer-rest" type="b">
<default>true</default>
<_summary>Delay focus changes in mouse mode until the pointer stops moving</_summary>
<_description>
<summary>Delay focus changes in mouse mode until the pointer stops moving</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
</schema>
</schemalist>

View File

@ -604,6 +604,10 @@ StScrollBar {
width: 96px;
height: 96px; }
/* Window Cycler */
.cycler-highlight {
border: 5px solid #215d9c; }
/* Workspace Switcher */
.workspace-switcher-group {
padding: 12px; }

View File

@ -604,6 +604,10 @@ StScrollBar {
width: 96px;
height: 96px; }
/* Window Cycler */
.cycler-highlight {
border: 5px solid #215d9c; }
/* Workspace Switcher */
.workspace-switcher-group {
padding: 12px; }

View File

@ -152,6 +152,7 @@ const Application = new Lang.Class({
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER,
shadow_type: Gtk.ShadowType.IN,
halign: Gtk.Align.CENTER,
propagate_natural_width: true,
margin: 18 });
this._window.add(scroll);

View File

@ -804,6 +804,11 @@ const LoginDialog = new Lang.Class({
this._user = null;
if (this._nextSignalId) {
this._authPrompt.disconnect(this._nextSignalId);
this._nextSignalId = 0;
}
if (beginRequest == AuthPrompt.BeginRequestType.PROVIDE_USERNAME) {
if (!this._disableUserList)
this._showUserList();

View File

@ -46,6 +46,19 @@ function _createWindowClone(window, size) {
y_expand: true });
};
function getWindows(workspace) {
// We ignore skip-taskbar windows in switchers, but if they are attached
// to their parent, their position in the MRU list may be more appropriate
// than the parent; so start with the complete list ...
let windows = global.display.get_tab_list(Meta.TabList.NORMAL_ALL,
workspace);
// ... map windows to their parent where appropriate ...
return windows.map(w => {
return w.is_attached_dialog() ? w.get_transient_for() : w;
// ... and filter out skip-taskbar windows and duplicates
}).filter((w, i, a) => !w.skip_taskbar && a.indexOf(w) == i);
}
const AppSwitcherPopup = new Lang.Class({
Name: 'AppSwitcherPopup',
Extends: SwitcherPopup.SwitcherPopup,
@ -354,6 +367,67 @@ const AppSwitcherPopup = new Lang.Class({
}
});
const CyclerHighlight = new Lang.Class({
Name: 'CyclerHighlight',
_init: function() {
this._window = null;
this.actor = new St.Widget({ layout_manager: new Clutter.BinLayout() });
this._clone = new Clutter.Clone();
this.actor.add_actor(this._clone);
this._highlight = new St.Widget({ style_class: 'cycler-highlight' });
this.actor.add_actor(this._highlight);
let coordinate = Clutter.BindCoordinate.ALL;
let constraint = new Clutter.BindConstraint({ coordinate: coordinate });
this._clone.bind_property('source', constraint, 'source', 0);
this.actor.add_constraint(constraint);
this.actor.connect('notify::allocation',
Lang.bind(this, this._onAllocationChanged));
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
},
set window(w) {
if (this._window == w)
return;
this._window = w;
if (this._clone.source)
this._clone.source.sync_visibility();
let windowActor = this._window ? this._window.get_compositor_private()
: null;
if (windowActor)
windowActor.hide();
this._clone.source = windowActor;
},
_onAllocationChanged: function() {
if (!this._window) {
this._highlight.set_size(0, 0);
this._highlight.hide();
} else {
let [x, y] = this.actor.allocation.get_origin();
let rect = this._window.get_frame_rect();
this._highlight.set_size(rect.width, rect.height);
this._highlight.set_position(rect.x - x, rect.y - y);
this._highlight.show();
}
},
_onDestroy: function() {
this.window = null;
}
});
const CyclerPopup = new Lang.Class({
Name: 'CyclerPopup',
Extends: SwitcherPopup.SwitcherPopup,
@ -367,6 +441,9 @@ const CyclerPopup = new Lang.Class({
if (this._items.length == 0)
return;
this._highlight = new CyclerHighlight();
global.window_group.add_actor(this._highlight.actor);
// We don't show an actual popup, so just provide what SwitcherPopup
// expects instead of inheriting from SwitcherList
this._switcherList = { actor: new St.Widget(),
@ -375,11 +452,37 @@ const CyclerPopup = new Lang.Class({
},
_highlightItem: function(index, justOutline) {
Main.activateWindow(this._items[index]);
this._highlight.window = this._items[index];
global.window_group.set_child_above_sibling(this._highlight.actor, null);
},
_finish: function() {
this._highlightItem(this._selectedIndex);
let window = this._items[this._selectedIndex];
let ws = window.get_workspace();
let activeWs = global.screen.get_active_workspace();
if (window.minimized) {
Main.wm.skipNextEffect(window.get_compositor_private());
window.unminimize();
}
if (activeWs == ws) {
Main.activateWindow(window);
} else {
// If the selected window is on a different workspace, we don't
// want it to disappear, then slide in with the workspace; instead,
// always activate it on the active workspace ...
activeWs.activate_with_focus(window, global.get_current_time());
// ... then slide it over to the original workspace if necessary
Main.wm.actionMoveWindow(window, ws);
}
this.parent();
},
_onDestroy: function() {
this._highlight.actor.destroy();
this.parent();
}
@ -427,7 +530,7 @@ const WindowSwitcherPopup = new Lang.Class({
_getWindowList: function() {
let workspace = this._settings.get_boolean('current-workspace-only') ? global.screen.get_active_workspace() : null;
return global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
return getWindows(workspace);
},
_keyPressHandler: function(keysym, action) {
@ -465,7 +568,7 @@ const WindowCyclerPopup = new Lang.Class({
_getWindows: function() {
let workspace = this._settings.get_boolean('current-workspace-only') ? global.screen.get_active_workspace() : null;
return global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
return getWindows(workspace);
},
_keyPressHandler: function(keysym, action) {

View File

@ -475,6 +475,11 @@ const ChatSource = new Lang.Class({
this._channel.close_async(function(channel, result) {
channel.close_finish(result);
});
} else {
// Don't indicate any unread messages when the notification
// that represents them has been destroyed.
this._pendingMessages = [];
this.countUpdated();
}
// Keep source alive while the channel is open

View File

@ -10,6 +10,7 @@ const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const St = imports.gi.St;
const InputSourceManager = imports.ui.status.keyboard;
const BoxPointer = imports.ui.boxpointer;
const Layout = imports.ui.layout;
@ -757,19 +758,48 @@ const ShellWaylandAdapter = new Lang.Class({
Name: 'ShellWaylandAdapter',
Extends: Caribou.XAdapter,
_init: function () {
this.parent();
let deviceManager = Clutter.DeviceManager.get_default();
this._virtualDevice = deviceManager.create_virtual_device(Clutter.InputDeviceType.KEYBOARD_DEVICE);
this._inputSourceManager = InputSourceManager.getInputSourceManager();
this._sourceChangedId = this._inputSourceManager.connect('current-source-changed',
Lang.bind(this, this._onSourceChanged));
this._sourcesModifiedId = this._inputSourceManager.connect ('sources-changed',
Lang.bind(this, this._onSourcesModified));
},
_onSourcesModified: function () {
this.emit('config-changed');
},
_onSourceChanged: function (inputSourceManager, oldSource) {
let source = inputSourceManager.currentSource;
this.emit('group-changed', source.index, source.id, '');
},
vfunc_get_groups: function () {
let inputSources = this._inputSourceManager.inputSources;
let groups = []
let variants = [];
for (let i in inputSources) {
let is = inputSources[i];
groups[is.index] = is.id;
variants[is.index] = '';
}
return [groups, groups.length, variants, variants.length];
},
vfunc_keyval_press: function(keyval) {
let focus = global.stage.get_key_focus();
if (focus instanceof Clutter.Text)
Shell.util_text_insert_keyval(focus, keyval);
else
this.parent(keyval);
this._virtualDevice.notify_keyval(Clutter.get_current_event_time(),
keyval, Clutter.KeyState.PRESSED);
},
vfunc_keyval_release: function(keyval) {
let focus = global.stage.get_key_focus();
if (focus instanceof Clutter.Text)
return; // do nothing
else
this.parent(keyval);
this._virtualDevice.notify_keyval(Clutter.get_current_event_time(),
keyval, Clutter.KeyState.RELEASED);
},
});

View File

@ -1632,6 +1632,8 @@ const NMApplet = new Lang.Class({
this._readConnections();
this._readDevices();
this._syncNMState();
this._syncMainConnection();
this._syncVPNConnections();
this._client.connect('notify::manager-running', Lang.bind(this, this._syncNMState));
this._client.connect('notify::networking-enabled', Lang.bind(this, this._syncNMState));

View File

@ -683,6 +683,8 @@ const WindowManager = new Lang.Class({
this._dimmedWindows = [];
this._skippedActors = [];
this._allowedKeybindings = {};
this._isWorkspacePrepended = false;
@ -1035,6 +1037,10 @@ const WindowManager = new Lang.Class({
this._workspaceTracker.keepWorkspaceAlive(workspace, duration);
},
skipNextEffect: function(actor) {
this._skippedActors.push(actor);
},
setCustomKeybindingHandler: function(name, modes, handler) {
if (Meta.keybindings_set_custom_handler(name, handler))
this.allowKeybinding(name, modes);
@ -1061,6 +1067,9 @@ const WindowManager = new Lang.Class({
},
_shouldAnimateActor: function(actor, types) {
if (this._removeEffect(this._skippedActors, actor))
return false;
if (!this._shouldAnimate())
return false;
@ -1349,9 +1358,13 @@ const WindowManager = new Lang.Class({
_hasAttachedDialogs: function(window, ignoreWindow) {
var count = 0;
window.foreach_transient(function(win) {
if (win != ignoreWindow && win.is_attached_dialog())
if (win != ignoreWindow &&
win.is_attached_dialog() &&
win.get_transient_for() == window) {
count++;
return false;
return false;
}
return true;
});
return count != 0;
},
@ -1420,6 +1433,11 @@ const WindowManager = new Lang.Class({
actor._windowType = type;
}));
actor.meta_window.connect('unmanaged', Lang.bind(this, function(window) {
let parent = window.get_transient_for();
if (parent)
this._checkDimming(parent);
}));
if (actor.meta_window.is_attached_dialog())
this._checkDimming(actor.get_meta_window().get_transient_for());

View File

@ -19,8 +19,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
Name: 'WorkspaceSwitcherPopup',
_init : function() {
this.actor = new St.Widget({ reactive: true,
x: 0,
this.actor = new St.Widget({ x: 0,
y: 0,
width: global.screen_width,
height: global.screen_height,

View File

@ -29,6 +29,7 @@ gl
gu
he
hi
hr
hu
ia
id

68
po/Makevars Normal file
View File

@ -0,0 +1,68 @@
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
DOMAIN = $(PACKAGE)
# These two variables depend on the location of this directory.
subdir = po
top_builddir = ..
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ \
--keyword=C_:1c,2 --keyword=NC_:1c,2 \
--keyword=g_dngettext:2,3 --add-comments \
--flag=g_dngettext:2:pass-c-format \
--flag=g_strdup_printf:1:c-format \
--flag=g_string_printf:2:c-format \
--flag=g_string_append_printf:2:c-format \
--flag=g_error_new:3:c-format \
--flag=g_set_error:4:c-format \
--flag=g_markup_printf_escaped:1:c-format \
--flag=g_log:3:c-format \
--flag=g_print:1:c-format \
--flag=g_printerr:1:c-format \
--flag=g_printf:1:c-format \
--flag=g_fprintf:2:c-format \
--flag=g_sprintf:2:c-format \
--flag=g_snprintf:3:c-format
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = Translation copyright holder
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS = http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=general
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
# Ignore the timestamp of the .pot file, as git clones do not have
# deterministic timestamps, and .po files are updated by translators
# (only) in GNOME projects.
PO_DEPENDS_ON_POT = no
# This tells whether or not to forcibly update $(DOMAIN).pot and
# regenerate PO files on "make dist". Possible values are "yes" and
# "no". Set this to no if the POT file and PO files are maintained
# externally.
DIST_DEPENDS_ON_UPDATE_PO = no

View File

@ -1,17 +1,17 @@
# List of source files containing translatable strings.
# Please keep this file sorted alphabetically.
[encoding: UTF-8]
data/50-gnome-shell-system.xml.in
data/50-gnome-shell-system.xml
data/gnome-shell-extension-prefs.desktop.in.in
data/org.gnome.Shell.desktop.in.in
data/org.gnome.shell.gschema.xml.in.in
data/org.gnome.Shell.PortalHelper.desktop.in
data/org.gnome.shell.gschema.xml.in
data/org.gnome.Shell.PortalHelper.desktop.in.in
js/extensionPrefs/main.js
js/gdm/authPrompt.js
js/gdm/loginDialog.js
js/gdm/util.js
js/misc/util.js
js/portalHelper/main.js
js/ui/accessDialog.js
js/ui/appDisplay.js
js/ui/appFavorites.js
js/ui/audioDeviceSelection.js
@ -61,7 +61,7 @@ js/ui/viewSelector.js
js/ui/windowAttentionHandler.js
js/ui/windowManager.js
js/ui/windowMenu.js
src/calendar-server/evolution-calendar.desktop.in.in
src/calendar-server/evolution-calendar.desktop.in
# Please do not remove this file from POTFILES.in. Run "git submodule init && git submodule update" to get it.
src/gvc/gvc-mixer-control.c
src/main.c

View File

@ -1,4 +0,0 @@
data/org.gnome.shell.evolution.calendar.gschema.xml.in
src/calendar-server/evolution-calendar.desktop.in
# Meh, autofools :-(
sub/src/calendar-server/evolution-calendar.desktop.in

798
po/ar.po

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ msgstr ""
"PO-Revision-Date: 2014-09-15 14:59+0530\n"
"Last-Translator: Nilamdyuti Goswami <ngoswami@redhat.com>\n"
"Language-Team: Assamese <kde-i18n-doc@kde.org>\n"
"Language: as_IN\n"
"Language: as\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -7,6 +7,7 @@ msgstr ""
"PO-Revision-Date: 2011-04-04 11:04+0600\n"
"Last-Translator: Israt Jahan <israt@ankur.org.bd>\n"
"Language-Team: Bengali <ankur-bd-l10n@googlegroups.com>\n"
"Language: bn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -11,7 +11,7 @@ msgstr ""
"PO-Revision-Date: 2014-12-30 16:45+0000\n"
"Last-Translator: \n"
"Language-Team: American English <kde-i18n-doc@kde.org>\n"
"Language: en_US\n"
"Language: bn_IN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

713
po/ca.po
View File

@ -10,324 +10,16 @@ msgstr ""
"Project-Id-Version: HEAD\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-13 10:20+0000\n"
"PO-Revision-Date: 2016-03-13 14:47+0100\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"POT-Creation-Date: 2016-09-16 21:22+0200\n"
"PO-Revision-Date: 2016-09-16 21:22+0200\n"
"Last-Translator: Jordi Mas <jmas@softcatala.org>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bits\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Gtranslator 2.91.6\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
msgstr "Sistema"
#: ../data/50-gnome-shell-system.xml.in.h:2
msgid "Show the notification list"
msgstr "Mostra la llista de notificacions"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Focus the active notification"
msgstr "Posa el focus en la notificació activa"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Show the overview"
msgstr "Mostra la vista general"
#: ../data/50-gnome-shell-system.xml.in.h:5
msgid "Show all applications"
msgstr "Mostra totes les aplicacions"
#: ../data/50-gnome-shell-system.xml.in.h:6
msgid "Open the application menu"
msgstr "Obre el menú d'aplicació"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Preferències de les extensions del GNOME Shell"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
msgid "Configure GNOME Shell Extensions"
msgstr "Configureu les extensions del GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestor de finestres i llançador d'aplicacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr ""
"Habilita les eines internes en el diàleg de l'Alt+F2 que són útils per als "
"desenvolupadors i provadors"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:2
msgid ""
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
"dialog."
msgstr ""
"Permet l'accés a les eines de depuració i de seguiment internes a través del "
"diàleg de l'Alt+F2."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "UUIDs of extensions to enable"
msgstr ""
"Identificadors universals únics de les extensions que s'han d'habilitar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
msgid ""
"GNOME Shell extensions have a UUID property; this key lists extensions which "
"should be loaded. Any extension that wants to be loaded needs to be in this "
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension D-Bus methods on org.gnome.Shell."
msgstr ""
"Les extensions del GNOME Shell tenen un identificador universal. Aquesta "
"clau conté una llista de les extensions que s'han de carregar. Qualsevol "
"extensió que s'hagi de carregar ha de ser a la llista. Podeu modificar "
"aquesta llista amb els mètodes de D-Bus «EnableExtension» (activa una "
"extensió) i «DisableExtension» (desactiva una extensió) a org.gnome.Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Disables the validation of extension version compatibility"
msgstr "Desactiva la validació de la compatibilitat de versió d'extensions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
msgid ""
"GNOME Shell will only load extensions that claim to support the current "
"running version. Enabling this option will disable this check and try to "
"load all extensions regardless of the versions they claim to support."
msgstr ""
"El GNOME Shell només carregarà extensions que afirmin ser compatibles amb la "
"versió en execució. Si s'activa aquesta opció, es desactivarà la comprovació "
"i es provarà de carregar totes les extensions sense tenir en compte les "
"versions amb què afirmin ser compatibles."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
msgstr ""
"Llista d'identificadors de fitxers d'escriptori de les aplicacions preferides"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:8
msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
"Es mostraran, a l'àrea de preferits, les aplicacions que corresponguin a "
"aquests identificadors."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "App Picker View"
msgstr "Vista del seleccionador d'aplicacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:10
msgid "Index of the currently selected view in the application picker."
msgstr ""
"Índex de la vista seleccionada actualment en el seleccionador d'aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
msgid "History for command (Alt-F2) dialog"
msgstr "Historial de les ordres utilitzades en el diàleg de l'Alt+F2"
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "History for the looking glass dialog"
msgstr "Historial del depurador del GNOME Shell"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Mostra sempre l'element de menú «Surt» al menú d'usuari."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
msgstr ""
"Aquesta clau sobreescriu l'ocultació automàtica de l'element de menú «Surt» "
"quan només hi ha un usuari i un sol tipus de sessió."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Si s'han de recordar les contrasenyes dels punts de muntatge encriptats o "
"els sistemes de fitxers remots"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid ""
"The shell will request a password when an encrypted device or a remote "
"filesystem is mounted. If the password can be saved for future use a "
"'Remember Password' checkbox will be present. This key sets the default "
"state of the checkbox."
msgstr ""
"El GNOME Shell us demanarà la contrasenya quan es munti un dispositiu "
"encriptat o un sistema de fitxers remot. Si es pot desar la contrasenya per "
"utilitzar-lo en el futur, es mostrarà la casella de verificació «Recorda la "
"contrasenya». Aquesta clau estableix el valor per defecte d'aquesta casella "
"de verificació."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Si l'adaptador de Bluetooth predeterminat té dispositius configurats "
"associats"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"El Shell només mostrà una entrada de menú Bluetooth si un adaptador Bluetooh "
"està engegat, o si hi ha dispositius configurats associats a l'adaptador "
"predeterminat. Això es reiniciarà si l'adaptador predeterminat té "
"dispositius associats."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Mostra el número de la setmana al calendari"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "If true, display the ISO week date in the calendar."
msgstr "Si és «true» (cert) es mostra el número de la setmana al calendari."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the application menu"
msgstr "Vinculació per obrir el menú d'aplicació"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Keybinding to open the application menu."
msgstr "La vinculació per obrir el menú d'aplicació."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Vinculació per obrir la vista «Mostra les aplicacions»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Vinculació per obrir la vista «Mostra les aplicacions» de les activitats de "
"la vista general."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to open the overview"
msgstr "Vinculació per obrir la vista general"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to open the Activities Overview."
msgstr "Vinculació per obrir la vista general d'activitats."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"La vinculació per commutar la visibilitat de la llista de notificacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"La vinculació per commutar la visibilitat de la llista de notificacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Keybinding to focus the active notification"
msgstr "Vinculació per posar el focus a la notificació activa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Keybinding to focus the active notification."
msgstr "Vinculació per posar el focus a la notificació activa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Vinculació que fa una pausa i continua tots els «tweens» en execució, per "
"motius de depuració"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Which keyboard to use"
msgstr "Quin tipus de teclat s'ha d'utilitzar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "The type of keyboard to use."
msgstr "El tipus de teclat que s'utilitzarà."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "Limit switcher to current workspace."
msgstr "Limita el canviador a l'espai de treball actual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
msgstr ""
"Si és «true» (cert), només les aplicacions que tinguin finestres en l'espai "
"de treball actual es mostren en el canviador. En cas contrari es mostren "
"totes les aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "The application icon mode."
msgstr "El mode d'icona de les aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
msgstr ""
"Configureu com es mostren les finestres en l'intercanviador. Els valors "
"possibles són: «thumbnail-only» (mostra una miniatura de la finestra), «app-"
"icon-only» (mostra la icona de l'aplicació) o «both» (ambdues coses: mostra "
"la miniatura de la finestra i la icona de l'aplicació)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"Si és «true» (cert), només les finestres de l'espai de treball actual es "
"mostren en el canviador. En cas contrari, es mostren totes les finestres."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Attach modal dialog to the parent window"
msgstr "Adjunta el diàleg modal a la finestra pare"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
"mutter»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Habilita la tesselització a les vores en deixar anar les finestres a les "
"vores de la pantalla"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Workspaces are managed dynamically"
msgstr "Els espais de treball es gestionen dinàmicament"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
msgid "Workspaces only on primary monitor"
msgstr "Només en el monitor principal hi ha espais de treball"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retarda el canvi del focus, quan s'està en mode ratolí, fins que el punter "
"no estigui quiet"
#: ../data/org.gnome.Shell.PortalHelper.desktop.in.h:1
msgid "Network Login"
msgstr "Inici de sessió de la xarxa"
"X-Generator: Poedit 1.8.7.1\n"
#: ../js/extensionPrefs/main.js:117
#, javascript-format
@ -340,7 +32,7 @@ msgstr "Extensions del GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:483
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
@ -374,7 +66,7 @@ msgstr "No esteu llistat?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:859
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(p. ex. l'usuari o %s)"
@ -382,12 +74,12 @@ msgstr "(p. ex. l'usuari o %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:864 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nom d'usuari:"
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1201
msgid "Login Window"
msgstr "Finestra d'entrada"
@ -495,6 +187,16 @@ msgstr "%d de %B de %Y, a les %l%M %p"
msgid "Web Authentication Redirect"
msgstr "Redirecció per l'autenticació web"
#. No support for non-modal system dialogs, so ignore the option
#. let modal = options['modal'] || true;
#: ../js/ui/accessDialog.js:62 ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Denega l'accés"
#: ../js/ui/accessDialog.js:63 ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Permetre l'accés"
#: ../js/ui/appDisplay.js:794
msgid "Frequently used applications will appear here"
msgstr "Les aplicacions utilitzades freqüentment apareixeran aquí"
@ -561,7 +263,7 @@ msgstr "Canvia el fons de l'escriptori…"
msgid "Display Settings"
msgstr "Paràmetres de la pantalla"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:374
msgid "Settings"
msgstr "Paràmetres"
@ -617,55 +319,55 @@ msgctxt "grid saturday"
msgid "S"
msgstr "Ds"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:442
msgid "Previous month"
msgstr "Mes anterior"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:452
msgid "Next month"
msgstr "Mes següent"
#: ../js/ui/calendar.js:579
#: ../js/ui/calendar.js:605
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:660
msgid "Week %V"
msgstr "Setmana %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:721
msgctxt "event list time"
msgid "All Day"
msgstr "Tot el dia"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:836
msgid "Events"
msgstr "Cites"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:845
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %d de %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:849
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %d de %B de %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:931
msgid "Notifications"
msgstr "Notificacions"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1082
msgid "No Notifications"
msgstr "Cap notificació"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1085
msgid "No Events"
msgstr "Cap cita"
@ -803,7 +505,7 @@ msgstr "No ha funcionat. Torneu-ho a provar."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:759
#: ../js/ui/components/telepathyClient.js:765
#, javascript-format
msgid "%s is now known as %s"
msgstr "En/na %s ara es diu %s"
@ -936,7 +638,7 @@ msgstr[1] ""
"Es reiniciarà l'ordinador automàticament i s'instal·laran les "
"actualitzacions d'aquí %d segons."
#: ../js/ui/endSessionDialog.js:127
#: ../js/ui/endSessionDialog.js:127 ../js/ui/endSessionDialog.js:147
msgctxt "button"
msgid "Restart &amp; Install"
msgstr "Reinicia i instal·la"
@ -951,30 +653,45 @@ msgctxt "checkbox"
msgid "Power off after updates are installed"
msgstr "Apaga després d'instal·lar les actualitzacions"
#: ../js/ui/endSessionDialog.js:338
#: ../js/ui/endSessionDialog.js:137
msgctxt "title"
msgid "Restart & Install Upgrade"
msgstr "Reinicia i instal·la l'actualització"
#. Translators: This is the text displayed for system upgrades in the
#. shut down dialog. First %s gets replaced with the distro name and
#. second %s with the distro version to upgrade to
#: ../js/ui/endSessionDialog.js:142
#, javascript-format
msgid ""
"%s %s will be installed after restart. Upgrade installation can take a long "
"time: ensure that you have backed up and that the computer is plugged in."
msgstr ""
#: ../js/ui/endSessionDialog.js:361
msgid "Running on battery power: please plug in before installing updates."
msgstr ""
"S'està utilitzant la bateria: connecteu l'ordinador a la xarxa elèctrica "
"abans d'instal·lar les actualitzacions."
#: ../js/ui/endSessionDialog.js:355
#: ../js/ui/endSessionDialog.js:378
msgid "Some applications are busy or have unsaved work."
msgstr ""
"Hi ha algunes aplicacions que estan ocupades o que tenen documents sense "
"desar."
#: ../js/ui/endSessionDialog.js:362
#: ../js/ui/endSessionDialog.js:385
msgid "Other users are logged in."
msgstr "Altres usuaris tenen la sessió oberta."
#. Translators: Remote here refers to a remote session, like a ssh login
#: ../js/ui/endSessionDialog.js:640
#: ../js/ui/endSessionDialog.js:671
#, javascript-format
msgid "%s (remote)"
msgstr "%s (remot)"
#. Translators: Console here refers to a tty like a VT console
#: ../js/ui/endSessionDialog.js:643
#: ../js/ui/endSessionDialog.js:674
#, javascript-format
msgid "%s (console)"
msgstr "%s (consola)"
@ -988,7 +705,7 @@ msgstr "Instal·la"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Voleu baixar i instal·lar «%s» d'extensions.gnome.org?"
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:742 ../js/ui/status/keyboard.js:782
msgid "Keyboard"
msgstr "Teclat"
@ -1025,7 +742,7 @@ msgstr "Habilitat"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1866
msgid "Disabled"
msgstr "Inhabilitat"
@ -1073,7 +790,7 @@ msgstr "Multimèdia"
msgid "Undo"
msgstr "Desfés"
#: ../js/ui/overview.js:117
#: ../js/ui/overview.js:113
msgid "Overview"
msgstr "Vista general"
@ -1081,7 +798,7 @@ msgstr "Vista general"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/overview.js:244
#: ../js/ui/overview.js:240
msgid "Type to search…"
msgstr "Teclegeu per cercar…"
@ -1145,11 +862,11 @@ msgid_plural "%d new notifications"
msgstr[0] "%d notificació nova"
msgstr[1] "%d notificacions noves"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:374
#: ../js/ui/screenShield.js:449 ../js/ui/status/system.js:382
msgid "Lock"
msgstr "Bloqueja"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "El GNOME necessita bloquejar la pantalla"
@ -1160,11 +877,11 @@ msgstr "El GNOME necessita bloquejar la pantalla"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:825 ../js/ui/screenShield.js:1291
msgid "Unable to lock"
msgstr "No es pot blocar"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:826 ../js/ui/screenShield.js:1292
msgid "Lock was blocked by an application"
msgstr "Una aplicació està bloquejant el bloqueig"
@ -1248,7 +965,7 @@ msgstr "Text gran"
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:56 ../js/ui/status/network.js:624
msgid "Bluetooth Settings"
msgstr "Paràmetres del Bluetooth"
@ -1283,7 +1000,7 @@ msgstr "Desactiva"
msgid "Brightness"
msgstr "Brillantor"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:805
msgid "Show Keyboard Layout"
msgstr "Mostra la disposició del teclat"
@ -1311,14 +1028,6 @@ msgstr "Ubicació inhabilitada"
msgid "Enable"
msgstr "Habilita"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Denega l'accés"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Permetre l'accés"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
@ -1329,7 +1038,7 @@ msgstr "Voleu donar a %s accés a la vostra ubicació?"
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Podeu canviar la configuració de l'accés a la ubicació sempre que vulgueu "
"des del la configuració de la privacitat."
"des de la configuració de la privacitat."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
@ -1397,7 +1106,7 @@ msgstr "%s ha fallat la connexió"
msgid "Wired Settings"
msgstr "Paràmetres de la xarxa amb fils"
#: ../js/ui/status/network.js:545 ../js/ui/status/network.js:624
#: ../js/ui/status/network.js:545
msgid "Mobile Broadband Settings"
msgstr "Configuració de la xarxa de banda ampla mòbil"
@ -1415,8 +1124,8 @@ msgid "%s Disabled"
msgstr "%s Inhabilitat"
#: ../js/ui/status/network.js:632
msgid "Use as Internet connection"
msgstr "Utilitza com a connexió a Internet"
msgid "Connect to Internet"
msgstr "Connecta a l'Internet"
#: ../js/ui/status/network.js:813
msgid "Airplane Mode is On"
@ -1553,27 +1262,27 @@ msgstr "%d%%"
msgid "Airplane Mode On"
msgstr "El mode d'avió és actiu"
#: ../js/ui/status/system.js:343
#: ../js/ui/status/system.js:351
msgid "Switch User"
msgstr "Canvia d'usuari"
#: ../js/ui/status/system.js:348
#: ../js/ui/status/system.js:356
msgid "Log Out"
msgstr "Surt"
#: ../js/ui/status/system.js:353
#: ../js/ui/status/system.js:361
msgid "Account Settings"
msgstr "Paràmetres del compte"
#: ../js/ui/status/system.js:370
#: ../js/ui/status/system.js:378
msgid "Orientation Lock"
msgstr "Bloqueja l'orientació"
#: ../js/ui/status/system.js:378
#: ../js/ui/status/system.js:386
msgid "Suspend"
msgstr "Atura temporalment"
#: ../js/ui/status/system.js:381
#: ../js/ui/status/system.js:389
msgid "Power Off"
msgstr "Apaga"
@ -1699,13 +1408,9 @@ msgstr "Mou a la pantalla de l'esquerra"
msgid "Move to Monitor Right"
msgstr "Mou a la pantalla de la dreta"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Calendari de l'Evolution"
#. translators:
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1835
#: ../src/gvc/gvc-mixer-control.c:1873
#, c-format
msgid "%u Output"
msgid_plural "%u Outputs"
@ -1714,14 +1419,14 @@ msgstr[1] "%u sortides"
#. translators:
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1845
#: ../src/gvc/gvc-mixer-control.c:1883
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
msgstr[0] "%u entrada"
msgstr[1] "%u entrades"
#: ../src/gvc/gvc-mixer-control.c:2371
#: ../src/gvc/gvc-mixer-control.c:2738
msgid "System Sounds"
msgstr "Sons del sistema"
@ -1741,12 +1446,12 @@ msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
msgid "List possible modes"
msgstr "Llista els modes possibles"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:270
msgctxt "program"
msgid "Unknown"
msgstr "Desconegut"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:511
#, c-format
msgid "Failed to launch “%s”"
msgstr "No s'ha pogut iniciar «%s»"
@ -1763,6 +1468,268 @@ msgstr "La contrasenya no pot ser buida"
msgid "Authentication dialog was dismissed by the user"
msgstr "L'usuari ha descartat el diàleg d'autenticació"
#~ msgid "System"
#~ msgstr "Sistema"
#~ msgid "Show the notification list"
#~ msgstr "Mostra la llista de notificacions"
#~ msgid "Focus the active notification"
#~ msgstr "Posa el focus en la notificació activa"
#~ msgid "Show the overview"
#~ msgstr "Mostra la vista general"
#~ msgid "Show all applications"
#~ msgstr "Mostra totes les aplicacions"
#~ msgid "Open the application menu"
#~ msgstr "Obre el menú d'aplicació"
#~ msgid "GNOME Shell Extension Preferences"
#~ msgstr "Preferències de les extensions del GNOME Shell"
#~ msgid "Configure GNOME Shell Extensions"
#~ msgstr "Configureu les extensions del GNOME Shell"
#~ msgid "GNOME Shell"
#~ msgstr "GNOME Shell"
#~ msgid "Window management and application launching"
#~ msgstr "Gestor de finestres i llançador d'aplicacions"
#~ msgid "Enable internal tools useful for developers and testers from Alt-F2"
#~ msgstr ""
#~ "Habilita les eines internes en el diàleg de l'Alt+F2 que són útils per "
#~ "als desenvolupadors i provadors"
#~ msgid ""
#~ "Allows access to internal debugging and monitoring tools using the Alt-F2 "
#~ "dialog."
#~ msgstr ""
#~ "Permet l'accés a les eines de depuració i de seguiment internes a través "
#~ "del diàleg de l'Alt+F2."
#~ msgid "UUIDs of extensions to enable"
#~ msgstr ""
#~ "Identificadors universals únics de les extensions que s'han d'habilitar"
#~ msgid ""
#~ "GNOME Shell extensions have a UUID property; this key lists extensions "
#~ "which should be loaded. Any extension that wants to be loaded needs to be "
#~ "in this list. You can also manipulate this list with the EnableExtension "
#~ "and DisableExtension D-Bus methods on org.gnome.Shell."
#~ msgstr ""
#~ "Les extensions del GNOME Shell tenen un identificador universal. Aquesta "
#~ "clau conté una llista de les extensions que s'han de carregar. Qualsevol "
#~ "extensió que s'hagi de carregar ha de ser a la llista. Podeu modificar "
#~ "aquesta llista amb els mètodes de D-Bus «EnableExtension» (activa una "
#~ "extensió) i «DisableExtension» (desactiva una extensió) a org.gnome.Shell."
#~ msgid "Disables the validation of extension version compatibility"
#~ msgstr "Desactiva la validació de la compatibilitat de versió d'extensions"
#~ msgid ""
#~ "GNOME Shell will only load extensions that claim to support the current "
#~ "running version. Enabling this option will disable this check and try to "
#~ "load all extensions regardless of the versions they claim to support."
#~ msgstr ""
#~ "El GNOME Shell només carregarà extensions que afirmin ser compatibles amb "
#~ "la versió en execució. Si s'activa aquesta opció, es desactivarà la "
#~ "comprovació i es provarà de carregar totes les extensions sense tenir en "
#~ "compte les versions amb què afirmin ser compatibles."
#~ msgid "List of desktop file IDs for favorite applications"
#~ msgstr ""
#~ "Llista d'identificadors de fitxers d'escriptori de les aplicacions "
#~ "preferides"
#~ msgid ""
#~ "The applications corresponding to these identifiers will be displayed in "
#~ "the favorites area."
#~ msgstr ""
#~ "Es mostraran, a l'àrea de preferits, les aplicacions que corresponguin a "
#~ "aquests identificadors."
#~ msgid "App Picker View"
#~ msgstr "Vista del seleccionador d'aplicacions"
#~ msgid "Index of the currently selected view in the application picker."
#~ msgstr ""
#~ "Índex de la vista seleccionada actualment en el seleccionador "
#~ "d'aplicacions."
#~ msgid "History for command (Alt-F2) dialog"
#~ msgstr "Historial de les ordres utilitzades en el diàleg de l'Alt+F2"
#~ msgid "History for the looking glass dialog"
#~ msgstr "Historial del depurador del GNOME Shell"
#~ msgid "Always show the 'Log out' menu item in the user menu."
#~ msgstr "Mostra sempre l'element de menú «Surt» al menú d'usuari."
#~ msgid ""
#~ "This key overrides the automatic hiding of the 'Log out' menu item in "
#~ "single-user, single-session situations."
#~ msgstr ""
#~ "Aquesta clau sobreescriu l'ocultació automàtica de l'element de menú "
#~ "«Surt» quan només hi ha un usuari i un sol tipus de sessió."
#~ msgid ""
#~ "Whether to remember password for mounting encrypted or remote filesystems"
#~ msgstr ""
#~ "Si s'han de recordar les contrasenyes dels punts de muntatge encriptats o "
#~ "els sistemes de fitxers remots"
#~ msgid ""
#~ "The shell will request a password when an encrypted device or a remote "
#~ "filesystem is mounted. If the password can be saved for future use a "
#~ "'Remember Password' checkbox will be present. This key sets the default "
#~ "state of the checkbox."
#~ msgstr ""
#~ "El GNOME Shell us demanarà la contrasenya quan es munti un dispositiu "
#~ "encriptat o un sistema de fitxers remot. Si es pot desar la contrasenya "
#~ "per utilitzar-lo en el futur, es mostrarà la casella de verificació "
#~ "«Recorda la contrasenya». Aquesta clau estableix el valor per defecte "
#~ "d'aquesta casella de verificació."
#~ msgid ""
#~ "Whether the default Bluetooth adapter had set up devices associated to it"
#~ msgstr ""
#~ "Si l'adaptador de Bluetooth predeterminat té dispositius configurats "
#~ "associats"
#~ msgid ""
#~ "The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
#~ "powered, or if there were devices set up associated with the default "
#~ "adapter. This will be reset if the default adapter is ever seen not to "
#~ "have devices associated to it."
#~ msgstr ""
#~ "El Shell només mostrà una entrada de menú Bluetooth si un adaptador "
#~ "Bluetooh està engegat, o si hi ha dispositius configurats associats a "
#~ "l'adaptador predeterminat. Això es reiniciarà si l'adaptador "
#~ "predeterminat té dispositius associats."
#~ msgid "Show the week date in the calendar"
#~ msgstr "Mostra el número de la setmana al calendari"
#~ msgid "If true, display the ISO week date in the calendar."
#~ msgstr "Si és «true» (cert) es mostra el número de la setmana al calendari."
#~ msgid "Keybinding to open the application menu"
#~ msgstr "Vinculació per obrir el menú d'aplicació"
#~ msgid "Keybinding to open the application menu."
#~ msgstr "La vinculació per obrir el menú d'aplicació."
#~ msgid "Keybinding to open the \"Show Applications\" view"
#~ msgstr "Vinculació per obrir la vista «Mostra les aplicacions»"
#~ msgid ""
#~ "Keybinding to open the \"Show Applications\" view of the Activities "
#~ "Overview."
#~ msgstr ""
#~ "Vinculació per obrir la vista «Mostra les aplicacions» de les activitats "
#~ "de la vista general."
#~ msgid "Keybinding to open the overview"
#~ msgstr "Vinculació per obrir la vista general"
#~ msgid "Keybinding to open the Activities Overview."
#~ msgstr "Vinculació per obrir la vista general d'activitats."
#~ msgid "Keybinding to toggle the visibility of the notification list"
#~ msgstr ""
#~ "La vinculació per commutar la visibilitat de la llista de notificacions"
#~ msgid "Keybinding to toggle the visibility of the notification list."
#~ msgstr ""
#~ "La vinculació per commutar la visibilitat de la llista de notificacions."
#~ msgid "Keybinding to focus the active notification"
#~ msgstr "Vinculació per posar el focus a la notificació activa"
#~ msgid "Keybinding to focus the active notification."
#~ msgstr "Vinculació per posar el focus a la notificació activa."
#~ msgid ""
#~ "Keybinding that pauses and resumes all running tweens, for debugging "
#~ "purposes"
#~ msgstr ""
#~ "Vinculació que fa una pausa i continua tots els «tweens» en execució, per "
#~ "motius de depuració"
#~ msgid "Which keyboard to use"
#~ msgstr "Quin tipus de teclat s'ha d'utilitzar"
#~ msgid "The type of keyboard to use."
#~ msgstr "El tipus de teclat que s'utilitzarà."
#~ msgid "Limit switcher to current workspace."
#~ msgstr "Limita el canviador a l'espai de treball actual."
#~ msgid ""
#~ "If true, only applications that have windows on the current workspace are "
#~ "shown in the switcher. Otherwise, all applications are included."
#~ msgstr ""
#~ "Si és «true» (cert), només les aplicacions que tinguin finestres en "
#~ "l'espai de treball actual es mostren en el canviador. En cas contrari es "
#~ "mostren totes les aplicacions."
#~ msgid "The application icon mode."
#~ msgstr "El mode d'icona de les aplicacions."
#~ msgid ""
#~ "Configures how the windows are shown in the switcher. Valid possibilities "
#~ "are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
#~ "only' (shows only the application icon) or 'both'."
#~ msgstr ""
#~ "Configureu com es mostren les finestres en l'intercanviador. Els valors "
#~ "possibles són: «thumbnail-only» (mostra una miniatura de la finestra), "
#~ "«app-icon-only» (mostra la icona de l'aplicació) o «both» (ambdues coses: "
#~ "mostra la miniatura de la finestra i la icona de l'aplicació)."
#~ msgid ""
#~ "If true, only windows from the current workspace are shown in the "
#~ "switcher. Otherwise, all windows are included."
#~ msgstr ""
#~ "Si és «true» (cert), només les finestres de l'espai de treball actual es "
#~ "mostren en el canviador. En cas contrari, es mostren totes les finestres."
#~ msgid "Attach modal dialog to the parent window"
#~ msgstr "Adjunta el diàleg modal a la finestra pare"
#~ msgid ""
#~ "This key overrides the key in org.gnome.mutter when running GNOME Shell."
#~ msgstr ""
#~ "Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
#~ "mutter»."
#~ msgid "Enable edge tiling when dropping windows on screen edges"
#~ msgstr ""
#~ "Habilita la tesselització a les vores en deixar anar les finestres a les "
#~ "vores de la pantalla"
#~ msgid "Workspaces are managed dynamically"
#~ msgstr "Els espais de treball es gestionen dinàmicament"
#~ msgid "Workspaces only on primary monitor"
#~ msgstr "Només en el monitor principal hi ha espais de treball"
#~ msgid "Delay focus changes in mouse mode until the pointer stops moving"
#~ msgstr ""
#~ "Retarda el canvi del focus, quan s'està en mode ratolí, fins que el "
#~ "punter no estigui quiet"
#~ msgid "Network Login"
#~ msgstr "Inici de sessió de la xarxa"
#~ msgid "Use as Internet connection"
#~ msgstr "Utilitza com a connexió a Internet"
#~ msgid "Evolution Calendar"
#~ msgstr "Calendari de l'Evolution"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s està demanant accés a la vostra ubicació."

View File

@ -14,7 +14,7 @@ msgstr ""
"PO-Revision-Date: 2014-09-14 23:32+0200\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca-XV\n"
"Language: ca@valencia\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bits\n"

825
po/cs.po

File diff suppressed because it is too large Load Diff

803
po/da.po

File diff suppressed because it is too large Load Diff

838
po/de.po

File diff suppressed because it is too large Load Diff

836
po/el.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

806
po/es.po

File diff suppressed because it is too large Load Diff

829
po/eu.po

File diff suppressed because it is too large Load Diff

1024
po/fa.po

File diff suppressed because it is too large Load Diff

844
po/fi.po

File diff suppressed because it is too large Load Diff

809
po/fr.po

File diff suppressed because it is too large Load Diff

911
po/fur.po

File diff suppressed because it is too large Load Diff

930
po/gd.po

File diff suppressed because it is too large Load Diff

813
po/gl.po

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ msgstr ""
"PO-Revision-Date: 2014-10-01 15:51+0530\n"
"Last-Translator: \n"
"Language-Team: American English <kde-i18n-doc@kde.org>\n"
"Language: \n"
"Language: gu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

854
po/he.po

File diff suppressed because it is too large Load Diff

1771
po/hr.po Normal file

File diff suppressed because it is too large Load Diff

836
po/hu.po

File diff suppressed because it is too large Load Diff

808
po/id.po

File diff suppressed because it is too large Load Diff

791
po/it.po

File diff suppressed because it is too large Load Diff

831
po/kk.po

File diff suppressed because it is too large Load Diff

816
po/ko.po

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
"PO-Revision-Date: 2012-09-24 14:29+0600\n"
"Last-Translator: Timur Zhamakeev <ztimur@gmail.com>\n"
"Language-Team: Kirghiz <gnome-i18n@gnome.org>\n"
"Language: ky_KG\n"
"Language: ky\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

829
po/lt.po

File diff suppressed because it is too large Load Diff

805
po/lv.po

File diff suppressed because it is too large Load Diff

View File

@ -11,6 +11,7 @@ msgstr ""
"PO-Revision-Date: 2011-12-08 22:37+0100\n"
"Last-Translator: Jovan N\n"
"Language-Team: mk_MK <jovan@lugola.net>\n"
"Language: mk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -11,7 +11,7 @@ msgstr ""
"PO-Revision-Date: 2014-09-15 19:21+0730\n"
"Last-Translator: Umarzuki Mochlis Moktar <umar@umarzuki.org>\n"
"Language-Team: GNOME Malay Team <gnome-ms@googlegroups.com>\n"
"Language: \n"
"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -13,7 +13,7 @@ msgstr ""
"PO-Revision-Date: 2016-05-01 14:21+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: Norwegian bokmål\n"
"Language: nb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

808
po/nl.po

File diff suppressed because it is too large Load Diff

904
po/pa.po

File diff suppressed because it is too large Load Diff

905
po/pl.po

File diff suppressed because it is too large Load Diff

811
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

799
po/ru.po

File diff suppressed because it is too large Load Diff

804
po/sk.po

File diff suppressed because it is too large Load Diff

827
po/sl.po

File diff suppressed because it is too large Load Diff

836
po/sr.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

827
po/sv.po

File diff suppressed because it is too large Load Diff

808
po/tr.po

File diff suppressed because it is too large Load Diff

View File

@ -15,7 +15,7 @@ msgstr ""
"PO-Revision-Date: 2013-03-07 21:01+0900\n"
"Last-Translator: Gheyret Kenji <gheyret@gmail.com>\n"
"Language-Team: Uyghur Computer Science Association <UKIJ@yahoogroups.com>\n"
"Language: \n"
"Language: ug\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

805
po/uk.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

831
po/vi.po

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ msgstr ""
"PO-Revision-Date: 2014-08-19 19:17+0800\n"
"Last-Translator: Chao-Hsiung Liao <j_h_liau@yahoo.com.tw>\n"
"Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n"
"Language: zh_TW\n"
"Language: zh_HK\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

File diff suppressed because it is too large Load Diff

View File

@ -12,7 +12,9 @@ desktopdir=$(datadir)/applications
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
desktop_in_files = calendar-server/evolution-calendar.desktop.in
@INTLTOOL_DESKTOP_RULE@
%.desktop:%.desktop.in
@$(MKDIR_P) $(builddir)/calendar-server
$(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
gnome_shell_calendar_server_CFLAGS = \
-I$(top_srcdir)/src \
@ -30,6 +32,7 @@ gnome_shell_calendar_server_LDADD = \
EXTRA_DIST += \
calendar-server/README \
calendar-server/org.gnome.Shell.CalendarServer.service.in \
$(desktop_in_files) \
$(NULL)
CLEANFILES += \

View File

@ -0,0 +1,8 @@
[Desktop Entry]
Name=Evolution Calendar
Exec=evolution -c calendar
# Translators: Do NOT translate or transliterate this text (this is an icon file name)!
Icon=evolution
NoDisplay=true
Type=Application
StartupNotify=true

View File

@ -1,7 +0,0 @@
[Desktop Entry]
_Name=Evolution Calendar
Exec=evolution -c calendar
Icon=evolution
NoDisplay=true
Type=Application
StartupNotify=true

View File

@ -443,6 +443,8 @@ generate_instances_cb (ECalComponent *comp,
occurrence->rid = e_cal_component_get_recurid_as_string (comp);
appointment->occurrences = g_slist_append (appointment->occurrences, occurrence);
return TRUE;
}

View File

@ -277,6 +277,7 @@ shell_global_init (ShellGlobal *global)
XDisplayName (NULL));
(void) g_mkdir_with_parents (path, 0700);
global->runtime_state_path = g_file_new_for_path (path);
g_free (path);
global->settings = g_settings_new ("org.gnome.shell");
@ -1583,7 +1584,7 @@ shell_global_get_current_time (ShellGlobal *global)
*/
GAppLaunchContext *
shell_global_create_app_launch_context (ShellGlobal *global,
int timestamp,
guint32 timestamp,
int workspace)
{
GdkAppLaunchContext *context;

View File

@ -71,7 +71,7 @@ void shell_global_sync_pointer (ShellGlobal *global);
GAppLaunchContext *
shell_global_create_app_launch_context (ShellGlobal *global,
int timestamp,
guint32 timestamp,
int workspace);
void shell_global_play_theme_sound (ShellGlobal *global,

View File

@ -27,7 +27,7 @@ shell_js_add_extension_importer (const char *target_object_script,
const char *directory,
GError **error)
{
jsval target_object;
JS::Value target_object;
GList *contexts;
JSContext *context;
char *search_path[2] = { 0, 0 };
@ -46,7 +46,7 @@ shell_js_add_extension_importer (const char *target_object_script,
* object directly into this function, but introspection doesn't
* support that at the moment. Instead evaluate a string to get it. */
if (!JS_EvaluateScript(context,
JS_GetGlobalObject(context),
gjs_get_global_object (context),
target_object_script,
strlen (target_object_script),
"<target_object_script>",
@ -61,14 +61,15 @@ shell_js_add_extension_importer (const char *target_object_script,
goto out;
}
if (!JSVAL_IS_OBJECT (target_object))
if (!target_object.isObject ())
{
g_error ("shell_js_add_extension_importer: invalid target object");
goto out;
}
search_path[0] = (char*)directory;
gjs_define_importer (context, JSVAL_TO_OBJECT (target_object), target_property, (const char **)search_path, FALSE);
gjs_define_importer (context, &target_object.toObject (), target_property,
(const char **)search_path, FALSE);
ret = TRUE;
out:

View File

@ -22,6 +22,7 @@
#include "shell-global.h"
#include "shell-recorder-src.h"
#include "shell-recorder.h"
#include "shell-util.h"
#define A11Y_APPS_SCHEMA "org.gnome.desktop.a11y.applications"
#define MAGNIFIER_ACTIVE_KEY "screen-magnifier-enabled"
@ -437,17 +438,21 @@ recorder_record_frame (ShellRecorder *recorder,
if (n_captures == 0)
return;
/*
* TODO: Deal with each capture region separately, instead of dropping
* anything except the first one.
*/
if (n_captures == 1)
image = cairo_surface_reference (captures[0].image);
else
image = shell_util_composite_capture_images (captures,
n_captures,
recorder->area.x,
recorder->area.y,
recorder->area.width,
recorder->area.height);
image = captures[0].image;
data = cairo_image_surface_get_data (image);
size = captures[0].rect.width * captures[0].rect.height * 4;
size = (cairo_image_surface_get_height (image) *
cairo_image_surface_get_stride (image));
/* TODO: Capture more than the first framebuffer. */
for (i = 1; i < n_captures; i++)
for (i = 0; i < n_captures; i++)
cairo_surface_destroy (captures[i].image);
g_free (captures);
@ -1075,7 +1080,7 @@ recorder_open_outfile (ShellRecorder *recorder,
if (outfile == -1 && errno != EEXIST)
{
g_warning ("Cannot open output file '%s': %s", filename->str, g_strerror (errno));
g_warning ("Cannot open output file '%s': %s", path, g_strerror (errno));
g_string_free (filename, TRUE);
g_free (path);
goto out;

View File

@ -10,6 +10,7 @@
#include "shell-global.h"
#include "shell-screenshot.h"
#include "shell-util.h"
#define A11Y_APPS_SCHEMA "org.gnome.desktop.a11y.applications"
#define MAGNIFIER_ACTIVE_KEY "screen-magnifier-enabled"
@ -233,14 +234,15 @@ do_grab_screenshot (ShellScreenshot *screenshot,
if (n_captures == 0)
return;
else if (n_captures == 1)
priv->image = cairo_surface_reference (captures[0].image);
else
priv->image = shell_util_composite_capture_images (captures,
n_captures,
x, y,
width, height);
/*
* TODO: Deal with each capture region separately, instead of dropping
* anything except the first one.
*/
priv->image = captures[0].image;
for (i = 1; i < n_captures; i++)
for (i = 0; i < n_captures; i++)
cairo_surface_destroy (captures[i].image);
g_free (captures);
@ -261,6 +263,10 @@ _draw_cursor_image (MetaCursorTracker *tracker,
int x, y;
int xhot, yhot;
texture = meta_cursor_tracker_get_sprite (tracker);
if (!texture)
return;
screenshot_region = cairo_region_create_rectangle (&area);
meta_cursor_tracker_get_pointer (tracker, &x, &y, NULL);
@ -270,7 +276,6 @@ _draw_cursor_image (MetaCursorTracker *tracker,
return;
}
texture = meta_cursor_tracker_get_sprite (tracker);
meta_cursor_tracker_get_hot (tracker, &xhot, &yhot);
width = cogl_texture_get_width (texture);
height = cogl_texture_get_height (texture);

View File

@ -204,6 +204,12 @@ shell_tray_icon_click (ShellTrayIcon *icon,
gdk_error_trap_push ();
remote_window = gtk_socket_get_plug_window (GTK_SOCKET (icon->priv->socket));
if (remote_window == NULL)
{
g_warning ("shell tray: plug window is gone");
gdk_error_trap_pop_ignored ();
return;
}
xwindow = GDK_WINDOW_XID (remote_window);
xdisplay = GDK_WINDOW_XDISPLAY (remote_window);
screen = gdk_window_get_screen (remote_window);

View File

@ -393,18 +393,6 @@ shell_util_need_background_refresh (void)
return FALSE;
}
void
shell_util_text_insert_keyval (ClutterActor *actor,
guint keyval)
{
ClutterEvent event = { 0 };
event.type = CLUTTER_KEY_PRESS;
event.key.keyval = keyval;
clutter_actor_event (actor, &event, FALSE);
}
static gboolean
canvas_draw_cb (ClutterContent *content,
cairo_t *cr,
@ -458,3 +446,49 @@ shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
return content;
}
cairo_surface_t *
shell_util_composite_capture_images (ClutterCapture *captures,
int n_captures,
int x,
int y,
int width,
int height)
{
int i;
cairo_format_t format;
cairo_surface_t *image;
cairo_t *cr;
format = cairo_image_surface_get_format (captures[0].image);
image = cairo_image_surface_create (format, width, height);
cr = cairo_create (image);
for (i = 0; i < n_captures; i++)
{
ClutterCapture *capture = &captures[i];
double capture_scale = 1.0;
/*
* Ignore capture regions with scale other than 1 for now; mutter can't
* produce them yet, so there is no way to test them.
*/
cairo_surface_get_device_scale (capture->image, &capture_scale, NULL);
if ((int) capture_scale != 1)
continue;
cairo_save (cr);
cairo_translate (cr,
capture->rect.x - x,
capture->rect.y - y);
cairo_set_source_surface (cr, capture->image, 0, 0);
cairo_paint (cr);
cairo_restore (cr);
}
cairo_destroy (cr);
return image;
}

View File

@ -48,12 +48,16 @@ void shell_util_cursor_tracker_to_clutter (MetaCursorTracker *tracker,
gboolean shell_util_need_background_refresh (void);
void shell_util_text_insert_keyval (ClutterActor *actor,
guint keyval);
ClutterContent * shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
MetaRectangle *window_rect);
cairo_surface_t * shell_util_composite_capture_images (ClutterCapture *captures,
int n_captures,
int x,
int y,
int width,
int height);
G_END_DECLS
#endif /* __SHELL_UTIL_H__ */

View File

@ -202,9 +202,39 @@ get_app_from_window_wmclass (MetaWindow *window)
return NULL;
}
/*
* get_app_from_id:
* @window: a #MetaWindow
*
* Looks only at the given window, and attempts to determine
* an application based on %id. If one can't be determined,
* return %NULL.
*
* Return value: (transfer full): A newly-referenced #ShellApp, or %NULL
*/
static ShellApp *
get_app_from_id (MetaWindow *window,
const char *id)
{
ShellApp *app;
ShellAppSystem *appsys;
char *desktop_file;
g_return_val_if_fail (id != NULL, NULL);
appsys = shell_app_system_get_default ();
desktop_file = g_strconcat (id, ".desktop", NULL);
app = shell_app_system_lookup_app (appsys, desktop_file);
if (app)
g_object_ref (app);
g_free (desktop_file);
return app;
}
/*
* get_app_from_gapplication_id:
* @monitor: a #ShellWindowTracker
* @window: a #MetaWindow
*
* Looks only at the given window, and attempts to determine
@ -216,24 +246,35 @@ get_app_from_window_wmclass (MetaWindow *window)
static ShellApp *
get_app_from_gapplication_id (MetaWindow *window)
{
ShellApp *app;
ShellAppSystem *appsys;
const char *id;
char *desktop_file;
appsys = shell_app_system_get_default ();
id = meta_window_get_gtk_application_id (window);
if (!id)
return NULL;
desktop_file = g_strconcat (id, ".desktop", NULL);
app = shell_app_system_lookup_app (appsys, desktop_file);
if (app)
g_object_ref (app);
return get_app_from_id (window, id);
}
g_free (desktop_file);
return app;
/*
* get_app_from_flatpak_id:
* @window: a #MetaWindow
*
* Looks only at the given window, and attempts to determine
* an application based on its Flatpak ID. If one can't be determined,
* return %NULL.
*
* Return value: (transfer full): A newly-referenced #ShellApp, or %NULL
*/
static ShellApp *
get_app_from_flatpak_id (MetaWindow *window)
{
const char *id;
id = meta_window_get_flatpak_id (window);
if (!id)
return NULL;
return get_app_from_id (window, id);
}
/*
@ -354,6 +395,13 @@ get_app_for_window (ShellWindowTracker *tracker,
if (meta_window_is_remote (window))
return _shell_app_new_for_window (window);
/* Check if the window was opened from within a Flatpak sandbox; if this
* is the case, a corresponding .desktop file is guaranteed to match;
*/
result = get_app_from_flatpak_id (window);
if (result != NULL)
return result;
/* Check if the window has a GApplication ID attached; this is
* canonical if it does
*/

View File

@ -117,6 +117,7 @@ st_clipboard_provider (GdkXEvent *xevent_p,
GdkDisplay *display = gdk_display_get_default ();
if (xev->type != SelectionRequest ||
xev->xany.window != clipboard->priv->clipboard_window ||
!clipboard->priv->clipboard_text)
return GDK_FILTER_CONTINUE;
@ -233,13 +234,15 @@ st_clipboard_x11_event_filter (GdkXEvent *xevent_p,
{
XEvent *xev = (XEvent *) xevent_p;
EventFilterData *filter_data = user_data;
StClipboardPrivate *priv = filter_data->clipboard->priv;
Atom actual_type;
int actual_format, result;
unsigned long nitems, bytes_after;
unsigned char *data = NULL;
GdkDisplay *display = gdk_display_get_default ();
if(xev->type != SelectionNotify)
if(xev->type != SelectionNotify ||
xev->xany.window != priv->clipboard_window)
return GDK_FILTER_CONTINUE;
if (xev->xselection.property == None)