Compare commits

..

15 Commits

Author SHA1 Message Date
Florian Müllner
3dfced7976 Bump version to 3.16.2
Update NEWS.
2015-05-14 15:31:02 +02:00
Florian Müllner
3e8b7faab8 messageTray: Emit signal when notifications are enabled/disabled
Since the introduction of per-source notification policy in commit
098bd4509b, the NotificationPolicy::enable-changed signal has been
used to track the 'enable' setting. However as we never actually
emitted that signal, this never worked without a restart - oops.

https://bugzilla.gnome.org/show_bug.cgi?id=749279
2015-05-14 15:15:54 +02:00
Rui Matos
2a3e410d71 ScreenShield: only inhibit suspend if we're the active session
If we aren't the active session clutter can't animate and thus we
can't expect the shield to be shown before releasing the suspend
inhibitor so we should release it immediately when becoming inactive.

https://bugzilla.gnome.org/show_bug.cgi?id=749228
2015-05-14 13:59:48 +02:00
Rui Matos
518e7d9fc5 ScreenShield: tie the suspend inhibitor to our isActive property
The whole point of holding a suspend inhibitor is to be able to lock
before suspending.

Currently, when resuming we immediately take the inhibitor without
checking that we're locked which means that we won't be able to
release this inhibitor if we don't unlock at least once.

To prevent that and to better match the inhibitor's intention in the
first place, we can tie the inhibitor with not being locked. In
practice, we also want to let the locking animation finish before
suspending, so we'll tie the inhibitor with not being active
instead.

https://bugzilla.gnome.org/show_bug.cgi?id=749228
2015-05-14 13:59:48 +02:00
Rui Matos
0954efd875 ScreenShield: ensure we don't leak logind inhibitors
This could happen if we are VT switched away and an animated
activation is requested because we're preparing to enter sleep. Since
we don't animate in this case we'd never reach
_completeLockScreenShown() before coming out of sleep, at which point
we _inhibitSuspend() again and would leak the previous inhibitor.

https://bugzilla.gnome.org/show_bug.cgi?id=749228
2015-05-13 19:00:53 +02:00
Jakub Steiner
8d913c5297 make expanders more visible for alt-tab
https://bugzilla.gnome.org/show_bug.cgi?id=745058
2015-05-11 15:21:04 +02:00
Cédric Valmary
58b9b10ed3 Added Occitan translation 2015-05-10 12:29:23 +00:00
sun
fb46f0b808 update zh_CN translation 2015-05-03 10:09:43 +08:00
Florian Müllner
79c020fdb9 panel: Set up 'open-state-changed' handler on menu changes
Commit 08690d658f generalized the banner-blocking behavior of the
dateMenu to all menus that would obscure the banner. However setting
up the 'open-state-changed' handler only when an indicator is added
does not work for indicators that change their entire menu (like the
app menu) - we currently end up with menus with no connected signal
handler, and throw an error when trying to disconnect an invalid
signal ID.
To address this, add a new PanelButton::menu-set signal and use that
to set up the 'open-state-changed' handler.

https://bugzilla.gnome.org/show_bug.cgi?id=745910
2015-04-30 18:34:09 +02:00
Rui Matos
f8eb9e763d shell-global: Mark the sync pointer motion event as synthetic
This allows mutter to ignore these events for the purpose of keeping
idle time.

https://bugzilla.gnome.org/show_bug.cgi?id=748541
2015-04-27 19:47:47 +02:00
Sveinn í Felli
ed6cb19283 Updated Icelandic translation 2015-04-27 15:30:20 +00:00
Meet Parikh
95c903aa40 panel: Block banners when opening menus that would overlap
We currently block banners while the time+date menu is open, as it
would obscure the notification. However it is not necessarily the
only menu for which this is the case, so generalize the behavior
to all menus that would overlap banners when open.

https://bugzilla.gnome.org/show_bug.cgi?id=745910
2015-04-25 09:57:56 +02:00
Meet Parikh
e4974beebf panel: Move notification banners below time+date dropdown
As notifications appear in the time+date dropdown's message list, there's
a strong relationship between notification banners and the menu. However
while the time+date menu is centered by default, which matches the banner
position, its actual position depends on the session mode - in particular
it is moved to the right in classic mode.
Reinforce the relationship in these cases by moving notification banners
underneath the time+date menu.

https://bugzilla.gnome.org/show_bug.cgi?id=745910
2015-04-25 09:57:56 +02:00
Florian Müllner
5ec9f15500 messageTray: Make notification banners unfocusable
Unlike entries in the calendar's message list, banners are not subject
to the normal keynav chain, and making the banner actor itself unfocusable
allows for the focus to be moved to the action area when expanded.

https://bugzilla.gnome.org/show_bug.cgi?id=747205
2015-04-16 18:32:35 +02:00
Jakub Steiner
b4ebb4d98f calendar: make day with events more prominent
https://bugzilla.gnome.org/show_bug.cgi?id=747715
2015-04-15 13:03:18 +02:00
102 changed files with 13755 additions and 15892 deletions

100
NEWS
View File

@@ -1,105 +1,17 @@
3.17.91
=======
* Fix login screen spinner causing wakeups while VT-switched away
[Ray, Rui; #753891]
* Fix scrolling of user list on login screen [Florian; #754525]
Contributors:
Piotr Drąg, Rui Matos, Florian Müllner, Ray Strode
Translations:
Dušan Kazik [sk], Jordi Mas [ca], Aurimas Černius [lt], Stas Solovey [ru],
Piotr Drąg [pl], Pedro Albuquerque [pt], Daniel Mustieles [es],
Chao-Hsiung Liao [zh_TW], Muhammet Kara [tr], Fran Dieguez [gl],
Hannie Dumoleyn [nl], Yosef Or Boczko [he], Tom Tryfonidis [el],
A S Alam [pa], Balázs Úr [hu], Alexandre Franke [fr], Frédéric Péters [fr]
3.17.90
=======
* Avoid caret/focus viewport changes during pointer movement [Rui; #752138]
* Match GTK+'s modal dialogs for system modal dialogs [Carlos; #746108]
* Refine message list style [Florian; #749958]
* Fix type-ahead behavior for backspace and compose key [Rui; #753319, #753320]
* Refine the system status menu [Florian; #751377]
* Misc. bug fixes and cleanups [Bastien, Ray, Florian, Jakub; #752779, #752739,
#741366, #651503, #753064, #753181, #752881]
Contributors:
Rui Matos, Florian Müllner, Bastien Nocera, Carlos Soriano, Jakub Steiner,
Ray Strode, Rico Tzschichholz
Translations:
Marek Černocký [cs], Kjartan Maraas [nb], Jordi Mas [ca], Muhammet Kara [tr],
Enrico Nicoletto [pt_BR]
3.17.4
3.16.2
======
* Fix fuzziness of app menu icon [Jakub; #747932]
* Implement 4 finger swipe gesture for touchpads [Carlos; #752250]
* Misc. bug fixes [Florian, Alexandre, Piotr, Ray, Mario; #751921, #659969,
#752438, #752675]
Contributors:
Piotr Drąg, Alexandre Franke, Carlos Garnacho, Florian Müllner,
Mario Sanchez Prada, Jakub Steiner, Jasper St. Pierre, Ray Strode
Translations:
Benjamin Steinwender [de], Pedro Albuquerque [pt], Fabio Tomat [fur],
Matej Urbančič [sl], Daniel Mustieles [es], Yosef Or Boczko [he],
Daniel Martinez [an]
3.17.3
======
* Handle touch events in OSK on wayland [Rui; #750287]
* Reinstate left/right movement to window menu [Ron; #751344]
* Allow extensions to disable "Window is ready" notification [Adel; #748846]
* Misc. bug fixes [Watson, Michael, Ray, Rui, Florian, Cosimo; #750465,
#751016, #751517, #750714, #751541, #751599]
Contributors:
Michael Biebl, Cosimo Cecchi, Adel Gadllah, Rui Matos, Florian Müllner,
Ray Strode, Wim Taymans, Ron Yorston, Watson Yuuma Sato
Translations:
Sebastian Rasmussen [sv], Dimitris Spingos [el], Muhammet Kara [tr],
Stas Solovey [ru], Benjamin Steinwender [de], Balázs Úr [hu],
Victor Ibragimov [tg], Dušan Kazik [sk], Pedro Albuquerque [pt]
3.17.2
======
* Remove StTable widget [Florian; #703833]
* Increase visibility of expanders in alt-tab popup [Jakub; #745058]
* Ensure suspend inhibitors are released when VT switched away [Rui; #749228]
* Use iio-sensor-proxy directly for orientation lock [Bastien; #749671]
* Misc. bug fixes [Florian, Lan, Carlos; #749279, #749383, #749529, #749490,
#749742]
Contributors:
Carlos Garnacho, Ting-Wei Lan, Rui Matos, Florian Müllner, Bastien Nocera,
Jakub Steiner
Translations:
Yosef Or Boczko [he], sun [zh_CN], Felipe Braga [pt_BR],
Victor Ibragimov [tg], Gábor Kelemen [hu], Cédric Valmary [oc],
Dušan Kazik [sk], Kjartan Maraas [nb], Bruno Ramalhete [pt],
Matej Urbančič [sl], Daniel Mustieles [es]
3.17.1
======
* Add Display Settings entry to background menu [Meet; #697346]
* Add window menu option to move to different monitor [Isaac; #633994]
* Improve switch style in default/highContrast themes [Jakub; #746294, #747912]
* Make event highlight in calendar more prominent [Jakub; #747715]
* Fix keyboard focus when focusing a notification banner [Florian; #747205]
* Move notification banners below the dateMenu [Meet, Florian; #745910]
* Misc. bug fixes [Mario, Rui; #748338, #748541]
* Increase visibility of expanders in alt-tab popup [Jakub; #745058]
* Ensure suspend inhibitors are released when VT switched away [Rui; #749228]
* Misc. bug fixes [Rui, Florian; #748541, #749279]
Contributors:
Isaac Ge, Rui Matos, Florian Müllner, Meet Parikh, Mario Sanchez Prada,
Jakub Steiner, Jasper St. Pierre
Rui Matos, Florian Müllner, Meet Parikh, Jakub Steiner
Translations:
Sveinn í Felli [is], Marek Černocký [cs], laurent Soleil [oc]
Sveinn í Felli [is], sun [zh_CN], Cédric Valmary [oc]
3.16.1
======

View File

@@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.17.91],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.16.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@@ -63,8 +63,8 @@ AC_ARG_ENABLE([systemd],
[enable_systemd=$enableval],
[enable_systemd=auto])
AS_IF([test x$enable_systemd != xno], [
AC_MSG_CHECKING([for libsystemd])
PKG_CHECK_EXISTS([libsystemd],
AC_MSG_CHECKING([for libsystemd-journal])
PKG_CHECK_EXISTS([libsystemd-journal],
[have_systemd=yes
AC_DEFINE([HAVE_SYSTEMD], [1], [Define if we have systemd])],
[have_systemd=no])
@@ -76,11 +76,11 @@ AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.21.5
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.17.91
MUTTER_MIN_VERSION=3.16.1
GTK_MIN_VERSION=3.15.0
GIO_MIN_VERSION=2.45.3
GIO_MIN_VERSION=2.37.0
LIBECAL_MIN_VERSION=3.5.3
LIBEDATASERVER_MIN_VERSION=3.17.2
LIBEDATASERVER_MIN_VERSION=3.13.90
TELEPATHY_GLIB_MIN_VERSION=0.17.5
POLKIT_MIN_VERSION=0.100
STARTUP_NOTIFICATION_MIN_VERSION=0.11
@@ -106,7 +106,7 @@ SHARED_PCS="gio-unix-2.0 >= $GIO_MIN_VERSION
polkit-agent-1 >= $POLKIT_MIN_VERSION
gcr-base-3 >= $GCR_MIN_VERSION"
if test x$have_systemd = xyes; then
SHARED_PCS="${SHARED_PCS} libsystemd"
SHARED_PCS="${SHARED_PCS} libsystemd-journal"
fi
PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)

View File

@@ -32,10 +32,8 @@
<file>summary-counter.svg</file>
<file>toggle-off-us.svg</file>
<file>toggle-off-intl.svg</file>
<file>toggle-off-hc.svg</file>
<file>toggle-on-us.svg</file>
<file>toggle-on-intl.svg</file>
<file>toggle-on-hc.svg</file>
<file>ws-switch-arrow-up.png</file>
<file>ws-switch-arrow-down.png</file>
</gresource>

View File

@@ -51,7 +51,6 @@
</key>
<key name="looking-glass-history" type="as">
<default>[]</default>
<!-- Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass -->
<_summary>History for the looking glass dialog</_summary>
</key>
<key name="always-show-log-out" type="b">

View File

@@ -37,13 +37,14 @@ stage {
icon-shadow: 0 1px black; }
.button:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
icon-shadow: 0 1px black; }
.button:insensitive {
color: gray;
color: #7f7f7f;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
background-color: rgba(62, 67, 68, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@@ -51,46 +52,9 @@ stage {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button {
border-right-width: 1px;
color: #eeeeec;
background-color: #2e3436;
border-color: rgba(0, 0, 0, 0.7);
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: gray;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:active {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:focus {
color: #eeeeec;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.modal-dialog-linked-button:first-child {
border-radius: 0px 0px 0px 6px; }
.modal-dialog-linked-button:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 0px; }
.modal-dialog-linked-button:first-child:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 6px; }
/* Entries */
StEntry {
@@ -107,8 +71,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(166, 166, 166, 0.5); }
StEntry:insensitive {
color: gray;
border-color: #0e0e0e;
color: #7f7f7f;
border-color: #0d0d0d;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@@ -131,10 +95,10 @@ StScrollBar {
background-color: transparent; }
StScrollBar StButton#vhandle, StScrollBar StButton#hhandle {
border-radius: 8px;
background-color: #999999;
background-color: #000;
margin: 3px; }
StScrollBar StButton#vhandle:hover, StScrollBar StButton#hhandle:hover {
background-color: #cccccc; }
background-color: #1a1a1a; }
StScrollBar StButton#vhandle:active, StScrollBar StButton#hhandle:active {
background-color: #215d9c; }
@@ -142,7 +106,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #0e0e0e;
-slider-background-color: #0d0d0d;
-slider-border-color: black;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@@ -196,12 +160,11 @@ StScrollBar {
background-color: white; }
.modal-dialog {
border-radius: 9px;
border-radius: 5px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
border: 3px solid rgba(238, 238, 236, 0.5);
padding: 24px; }
.modal-dialog .run-dialog-entry {
width: 20em;
margin-bottom: 6px; }
@@ -216,6 +179,10 @@ StScrollBar {
color: #d6d6d1;
padding-bottom: .4em; }
.button-dialog-button-box {
spacing: 18px;
padding-top: 48px; }
.show-processes-dialog-subject,
.mount-question-dialog-subject,
.end-session-dialog-subject {
@@ -444,7 +411,7 @@ StScrollBar {
.popup-menu-ornament {
text-align: right;
width: 1.2em; }
width: 1em; }
.popup-menu-boxpointer,
.candidate-popup-boxpointer {
@@ -735,7 +702,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: gray; }
color: #7f7f7f; }
.calendar-today {
font-weight: bold;
@@ -787,12 +754,7 @@ StScrollBar {
padding: 8px 8px 8px 0px; }
.message-icon-bin > StIcon {
icon-size: 32px; }
.message-secondary-bin:ltr {
padding-left: 8px; }
.message-secondary-bin:rtl {
padding-right: 8px; }
icon-size: 48px; }
.message-secondary-bin {
color: #999999; }
@@ -801,12 +763,10 @@ StScrollBar {
icon-size: 16px; }
.message-title {
font-weight: bold;
font-size: 1.1em; }
font-weight: bold; }
.message-content {
padding: 8px;
font-size: .9em; }
padding: 8px; }
.system-switch-user-submenu-icon {
icon-size: 24px;
@@ -874,8 +834,7 @@ StScrollBar {
min-width: 470px; }
.nm-dialog-content {
spacing: 20px;
padding: 24px; }
spacing: 20px; }
.nm-dialog-header-hbox {
spacing: 10px; }
@@ -1057,7 +1016,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.app-view-control:first-child {
@@ -1376,9 +1335,10 @@ StScrollBar {
color: white; }
.keyboard-key:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
icon-shadow: 0 1px black; }
.keyboard-key:hover, .keyboard-key:checked {
color: white;
border-color: rgba(0, 0, 0, 0.7);
@@ -1390,7 +1350,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.keyboard-key:grayed {
@@ -1483,13 +1443,13 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #1c5187;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: gray;
color: #7f7f7f;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
background-color: rgba(62, 67, 68, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@@ -1736,11 +1696,3 @@ StScrollBar {
stage {
-st-icon-style: symbolic; }
.toggle-switch {
width: 48px; }
.toggle-switch-us, .toggle-switch-intl {
background-image: url("resource:///org/gnome/shell/theme/toggle-off-hc.svg"); }
.toggle-switch-us:checked, .toggle-switch-intl:checked {
background-image: url("resource:///org/gnome/shell/theme/toggle-on-hc.svg"); }

View File

@@ -6,9 +6,3 @@
stage {
-st-icon-style: symbolic;
}
.toggle-switch { width: 48px; }
.toggle-switch-us, .toggle-switch-intl {
background-image: url("resource:///org/gnome/shell/theme/toggle-off-hc.svg");
&:checked { background-image: url("resource:///org/gnome/shell/theme/toggle-on-hc.svg"); }
}

View File

@@ -37,13 +37,14 @@ stage {
icon-shadow: 0 1px black; }
.button:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
icon-shadow: 0 1px black; }
.button:insensitive {
color: #949796;
color: #939695;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
background-color: rgba(66, 71, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@@ -51,46 +52,9 @@ stage {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button {
border-right-width: 1px;
color: #eeeeec;
background-color: #2e3436;
border-color: rgba(0, 0, 0, 0.7);
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: #949796;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:active {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:focus {
color: #eeeeec;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.modal-dialog-linked-button:first-child {
border-radius: 0px 0px 0px 6px; }
.modal-dialog-linked-button:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 0px; }
.modal-dialog-linked-button:first-child:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 6px; }
/* Entries */
StEntry {
@@ -107,8 +71,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(154, 154, 142, 0.5); }
StEntry:insensitive {
color: #949796;
border-color: #333636;
color: #939695;
border-color: #323636;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@@ -131,10 +95,10 @@ StScrollBar {
background-color: transparent; }
StScrollBar StButton#vhandle, StScrollBar StButton#hhandle {
border-radius: 8px;
background-color: #a6a8a7;
background-color: #393f3f;
margin: 3px; }
StScrollBar StButton#vhandle:hover, StScrollBar StButton#hhandle:hover {
background-color: #cacbc9; }
background-color: #515a5a; }
StScrollBar StButton#vhandle:active, StScrollBar StButton#hhandle:active {
background-color: #215d9c; }
@@ -142,7 +106,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #333636;
-slider-background-color: #323636;
-slider-border-color: #1c1f1f;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@@ -196,12 +160,11 @@ StScrollBar {
background-color: white; }
.modal-dialog {
border-radius: 9px;
border-radius: 5px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
border: 3px solid rgba(238, 238, 236, 0.5);
padding: 24px; }
.modal-dialog .run-dialog-entry {
width: 20em;
margin-bottom: 6px; }
@@ -216,6 +179,10 @@ StScrollBar {
color: #d6d6d1;
padding-bottom: .4em; }
.button-dialog-button-box {
spacing: 18px;
padding-top: 48px; }
.show-processes-dialog-subject,
.mount-question-dialog-subject,
.end-session-dialog-subject {
@@ -444,7 +411,7 @@ StScrollBar {
.popup-menu-ornament {
text-align: right;
width: 1.2em; }
width: 1em; }
.popup-menu-boxpointer,
.candidate-popup-boxpointer {
@@ -735,7 +702,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: #949796; }
color: #939695; }
.calendar-today {
font-weight: bold;
@@ -787,12 +754,7 @@ StScrollBar {
padding: 8px 8px 8px 0px; }
.message-icon-bin > StIcon {
icon-size: 32px; }
.message-secondary-bin:ltr {
padding-left: 8px; }
.message-secondary-bin:rtl {
padding-right: 8px; }
icon-size: 48px; }
.message-secondary-bin {
color: #8e8e80; }
@@ -801,19 +763,14 @@ StScrollBar {
icon-size: 16px; }
.message-title {
font-weight: bold;
font-size: 1.1em; }
font-weight: bold; }
.message-content {
padding: 8px;
font-size: .9em; }
padding: 8px; }
.system-switch-user-submenu-icon.user-icon {
icon-size: 20px;
padding: 0 2px; }
.system-switch-user-submenu-icon.default-icon {
icon-size: 16px;
padding: 0 4px; }
.system-switch-user-submenu-icon {
icon-size: 24px;
border: 1px solid rgba(238, 238, 236, 0.4); }
#appMenu {
spinner-image: url("resource:///org/gnome/shell/theme/process-working.svg");
@@ -822,7 +779,7 @@ StScrollBar {
color: transparent; }
.aggregate-menu {
width: 280px; }
width: 360px; }
.aggregate-menu .popup-menu-icon {
padding: 0 4px; }
@@ -877,8 +834,7 @@ StScrollBar {
min-width: 470px; }
.nm-dialog-content {
spacing: 20px;
padding: 24px; }
spacing: 20px; }
.nm-dialog-header-hbox {
spacing: 10px; }
@@ -1060,7 +1016,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.app-view-control:first-child {
@@ -1379,9 +1335,10 @@ StScrollBar {
color: white; }
.keyboard-key:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
icon-shadow: 0 1px black; }
.keyboard-key:hover, .keyboard-key:checked {
color: white;
border-color: rgba(0, 0, 0, 0.7);
@@ -1393,7 +1350,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.keyboard-key:grayed {
@@ -1486,13 +1443,13 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #1c5187;
box-shadow: inset 0 0 black;
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: #949796;
color: #939695;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
background-color: rgba(66, 71, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -1,133 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="48"
height="22"
id="svg2857"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="toggle-off-hc.svg">
<defs
id="defs2859">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 526.18109 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="744.09448 : 526.18109 : 1"
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
id="perspective2865" />
<inkscape:perspective
id="perspective2843"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
<inkscape:path-effect
effect="spiro"
id="path-effect77541-4"
is_visible="true" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#000000"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="-6.1820581"
inkscape:cy="-16.463788"
inkscape:document-units="px"
inkscape:current-layer="g37994"
showgrid="false"
inkscape:window-width="2560"
inkscape:window-height="1364"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
showborder="true">
<inkscape:grid
type="xygrid"
id="grid12954"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata2862">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-444.64286,-781.36218)">
<g
transform="matrix(0.6526046,0,0,0.80554422,99.592644,-636.32172)"
id="g37994">
<g
transform="matrix(1.5323214,0,0,1.2413968,-324.76058,489.69039)"
id="toggle-off"
inkscape:label="#g8477">
<circle
cy="1033.993"
cx="571.95966"
id="path8444"
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#555753;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
r="7" />
<rect
ry="2.0108337"
rx="1.9562569"
y="1031.9885"
x="565.0083"
height="4.0216675"
width="34.850178"
id="rect8461"
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#555753;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
</g>
<g
transform="matrix(1.5323214,0,0,1.2413968,-324.85635,491.16456)"
id="toggle-on"
inkscape:label="#g8481">
<rect
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#3465a4;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="rect8475"
width="34.850178"
height="4.0216675"
x="565.0083"
y="1070.9279"
rx="1.9562569"
ry="2.0108337" />
<circle
transform="scale(-1,1)"
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#3465a4;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="circle8463"
cx="-591.0213"
cy="1072.9402"
r="9" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,113 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="48"
height="22"
id="svg2857"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="toggle-on-hc.svg">
<defs
id="defs2859">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 526.18109 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="744.09448 : 526.18109 : 1"
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
id="perspective2865" />
<inkscape:perspective
id="perspective2843"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
<inkscape:path-effect
effect="spiro"
id="path-effect77541-4"
is_visible="true" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#000000"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="-222.95215"
inkscape:cy="3.9378433"
inkscape:document-units="px"
inkscape:current-layer="g37994"
showgrid="false"
inkscape:window-width="2560"
inkscape:window-height="1364"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
showborder="true">
<inkscape:grid
type="xygrid"
id="grid12954"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata2862">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-444.64286,-781.36218)">
<g
transform="matrix(0.6526046,0,0,0.80554422,99.592644,-636.32172)"
id="g37994">
<g
transform="matrix(1.5323214,0,0,1.2413968,-324.85635,441.50868)"
id="toggle-on"
inkscape:label="#g8481">
<rect
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#3465a4;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="rect8475"
width="34.850178"
height="4.0216675"
x="565.0083"
y="1070.9279"
rx="1.9562569"
ry="2.0108337" />
<circle
transform="scale(-1,1)"
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#3465a4;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="circle8463"
cx="-591.0213"
cy="1072.9402"
r="9" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -14,7 +14,7 @@
height="22"
id="svg2857"
version="1.1"
inkscape:version="0.91 r13725"
inkscape:version="0.48.5 r10040"
sodipodi:docname="toggle-on-intl.svg">
<defs
id="defs2859">
@@ -52,7 +52,7 @@
<stop
id="stop77465"
offset="1"
style="stop-color:#205b9a;stop-opacity:1" />
style="stop-color:#204a87;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
@@ -88,14 +88,14 @@
borderopacity="1.0"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="37.410841"
inkscape:cy="16.009314"
inkscape:zoom="32"
inkscape:cx="17.255148"
inkscape:cy="8.9252639"
inkscape:document-units="px"
inkscape:current-layer="g37994"
showgrid="false"
showgrid="true"
inkscape:window-width="2560"
inkscape:window-height="1376"
inkscape:window-height="1375"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

@@ -14,7 +14,7 @@
height="22"
id="svg2857"
version="1.1"
inkscape:version="0.91 r13725"
inkscape:version="0.48.5 r10040"
sodipodi:docname="toggle-on-us.svg">
<defs
id="defs2859">
@@ -32,6 +32,28 @@
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient77461"
id="linearGradient77551"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.3066667,0,0,1,-841.64667,-483)"
x1="1164.7644"
y1="962.93695"
x2="1164.7644"
y2="970.51404" />
<linearGradient
id="linearGradient77461"
inkscape:collect="always">
<stop
id="stop77463"
offset="0"
style="stop-color:#182f4c;stop-opacity:1" />
<stop
id="stop77465"
offset="1"
style="stop-color:#204a87;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient76469-7-7-4"
@@ -58,38 +80,6 @@
effect="spiro"
id="path-effect77541-4"
is_visible="true" />
<linearGradient
id="linearGradient77461-1"
inkscape:collect="always">
<stop
id="stop77463-1"
offset="0"
style="stop-color:#182f4c;stop-opacity:1" />
<stop
id="stop77465-4"
offset="1"
style="stop-color:#205b9a;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient77461-1"
id="linearGradient77551-6-5"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.8527367,0,0,0.80554422,-969.41608,-778.00299)"
x1="1164.7644"
y1="962.93695"
x2="1164.7644"
y2="970.51404" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient77461-1"
id="linearGradient11198"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.3066667,0,0,1,-1066.3709,794.25325)"
x1="1322.5831"
y1="-312.51855"
x2="1322.5831"
y2="-306.53461" />
</defs>
<sodipodi:namedview
id="base"
@@ -99,13 +89,13 @@
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="-26.798898"
inkscape:cy="5.3753009"
inkscape:cx="33.380898"
inkscape:cy="6.9658271"
inkscape:document-units="px"
inkscape:current-layer="g37994"
showgrid="false"
inkscape:window-width="2560"
inkscape:window-height="1376"
inkscape:window-height="1375"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
@@ -162,7 +152,7 @@
height="25"
width="98"
id="rect38000"
style="color:#000000;fill:url(#linearGradient11198);fill-opacity:1;fill-rule:nonzero;stroke:#182f4c;stroke-width:1.37920964;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;filter-blend-mode:normal;filter-gaussianBlur-deviation:0;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto" />
style="color:#000000;fill:url(#linearGradient77551);fill-opacity:1;fill-rule:nonzero;stroke:#182f4c;stroke-width:1.37920964;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
</g>
<g
transform="translate(2.0625,-2)"

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

@@ -35,6 +35,7 @@
<xi:include href="xml/st-bin.xml"/>
<xi:include href="xml/st-box-layout.xml"/>
<xi:include href="xml/st-scroll-view.xml"/>
<xi:include href="xml/st-table.xml"/>
</chapter>
<chapter id="styling">

View File

@@ -14,7 +14,7 @@ const ShellEntry = imports.ui.shellEntry;
const Tweener = imports.ui.tweener;
const UserWidget = imports.ui.userWidget;
const DEFAULT_BUTTON_WELL_ICON_SIZE = 16;
const DEFAULT_BUTTON_WELL_ICON_SIZE = 24;
const DEFAULT_BUTTON_WELL_ANIMATION_DELAY = 1.0;
const DEFAULT_BUTTON_WELL_ANIMATION_TIME = 0.3;
@@ -258,7 +258,6 @@ const AuthPrompt = new Lang.Class({
},
_onVerificationComplete: function() {
this.setActorInDefaultButtonWell(null);
this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED;
this.cancelButton.reactive = false;
},
@@ -282,12 +281,6 @@ const AuthPrompt = new Lang.Class({
if (oldActor)
Tweener.removeTweens(oldActor);
let wasSpinner;
if (oldActor == this._spinner.actor)
wasSpinner = true;
else
wasSpinner = false;
let isSpinner;
if (actor == this._spinner.actor)
isSpinner = true;
@@ -297,11 +290,6 @@ const AuthPrompt = new Lang.Class({
if (this._defaultButtonWellActor != actor && oldActor) {
if (!animate) {
oldActor.opacity = 0;
if (wasSpinner) {
if (this._spinner)
this._spinner.stop();
}
} else {
Tweener.addTween(oldActor,
{ opacity: 0,
@@ -310,7 +298,7 @@ const AuthPrompt = new Lang.Class({
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (wasSpinner) {
if (isSpinner) {
if (this._spinner)
this._spinner.stop();
}
@@ -413,7 +401,7 @@ const AuthPrompt = new Lang.Class({
},
updateSensitivity: function(sensitive) {
this._updateNextButtonSensitivity(sensitive && this._entry.text.length > 0);
this._updateNextButtonSensitivity(sensitive);
this._entry.reactive = sensitive;
this._entry.clutter_text.editable = sensitive;
},
@@ -444,9 +432,8 @@ const AuthPrompt = new Lang.Class({
let oldStatus = this.verificationStatus;
this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
this.cancelButton.reactive = true;
this.nextButton.label = _("Next");
if (this._userVerifier)
if (oldStatus == AuthPromptStatus.VERIFYING)
this._userVerifier.cancel();
this._queryingService = null;
@@ -501,7 +488,6 @@ const AuthPrompt = new Lang.Class({
finish: function(onComplete) {
if (!this._userVerifier.hasPendingMessages) {
this._userVerifier.clear();
onComplete();
return;
}
@@ -509,13 +495,12 @@ const AuthPrompt = new Lang.Class({
let signalId = this._userVerifier.connect('no-more-messages',
Lang.bind(this, function() {
this._userVerifier.disconnect(signalId);
this._userVerifier.clear();
onComplete();
}));
},
cancel: function() {
if (this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) {
if (this.verificationStatus == AuthPromptStatus.NOT_VERIFYING || this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) {
return;
}
this.reset();

View File

@@ -535,9 +535,6 @@ const LoginDialog = new Lang.Class({
let centerX = dialogBox.x1 + (dialogBox.x2 - dialogBox.x1) / 2;
let centerY = dialogBox.y1 + (dialogBox.y2 - dialogBox.y1) / 2;
natWidth = Math.min(natWidth, dialogBox.x2 - dialogBox.x1);
natHeight = Math.min(natHeight, dialogBox.y2 - dialogBox.y1);
actorBox.x1 = Math.floor(centerX - natWidth / 2);
actorBox.y1 = Math.floor(centerY - natHeight / 2);
actorBox.x2 = actorBox.x1 + natWidth;
@@ -587,14 +584,7 @@ const LoginDialog = new Lang.Class({
// try a different layout, or if we have what extra space we
// can hand out
if (bannerAllocation) {
let bannerSpace;
if (authPromptAllocation)
bannerSpace = authPromptAllocation.y1 - bannerAllocation.y1;
else
bannerSpace = 0;
let leftOverYSpace = bannerSpace - bannerHeight;
let leftOverYSpace = dialogHeight - bannerHeight - authPromptHeight - logoHeight;
if (leftOverYSpace > 0) {
// First figure out how much left over space is up top
@@ -877,7 +867,7 @@ const LoginDialog = new Lang.Class({
},
_loginScreenSessionActivated: function() {
if (this.actor.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.VERIFICATION_SUCCEEDED)
return;
Tweener.addTween(this.actor,
@@ -894,8 +884,7 @@ const LoginDialog = new Lang.Class({
},
onUpdateScope: this,
onComplete: function() {
if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
this._authPrompt.reset();
this._authPrompt.reset();
},
onCompleteScope: this });
},

View File

@@ -134,7 +134,7 @@ const LoginManagerSystemd = new Lang.Class({
if (error)
asyncCallback(false);
else
asyncCallback(result[0] != 'no' && result[0] != 'na');
asyncCallback(result[0] != 'no');
});
},

View File

@@ -7,7 +7,7 @@ const St = imports.gi.St;
const Signals = imports.signals;
const Atk = imports.gi.Atk;
const ANIMATED_ICON_UPDATE_TIMEOUT = 14;
const ANIMATED_ICON_UPDATE_TIMEOUT = 100;
const Animation = new Lang.Class({
Name: 'Animation',

View File

@@ -500,11 +500,6 @@ const AllView = new Lang.Class({
_loadApps: function() {
let apps = Gio.AppInfo.get_all().filter(function(appInfo) {
try {
let id = appInfo.get_id(); // catch invalid file encodings
} catch(e) {
return false;
}
return appInfo.should_show();
}).map(function(app) {
return app.get_id();
@@ -758,8 +753,7 @@ const AllView = new Lang.Class({
let fadeOffset = Math.min(this._grid.topPadding,
this._grid.bottomPadding);
this._scrollView.update_fade_effect(fadeOffset, 0);
if (fadeOffset > 0)
this._scrollView.get_effect('fade').fade_edges = true;
this._scrollView.get_effect('fade').fade_edges = true;
if (this._availWidth != availWidth || this._availHeight != availHeight || oldNPages != this._grid.nPages()) {
this._adjustment.value = 0;
@@ -1066,7 +1060,7 @@ const AppSearchProvider = new Lang.Class({
getInitialResultSet: function(terms, callback, cancellable) {
let query = terms.join(' ');
let groups = Shell.AppSystem.search(query);
let groups = Gio.DesktopAppInfo.search(query);
let usage = Shell.AppUsage.get_default();
let results = [];
groups.forEach(function(group) {
@@ -1295,10 +1289,7 @@ const FolderIcon = new Lang.Class({
if (!_listsIntersect(folderCategories, appCategories))
return;
try {
addAppId(appInfo.get_id()); // catch invalid file encodings
} catch(e) {
}
addAppId(appInfo.get_id());
});
this.actor.visible = this.view.getAllItems().length > 0;

View File

@@ -16,10 +16,9 @@ const BackgroundMenu = new Lang.Class({
_init: function(layoutManager) {
this.parent(layoutManager.dummyCursor, 0, St.Side.TOP);
this.addSettingsAction(_("Change Background…"), 'gnome-background-panel.desktop');
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.addSettingsAction(_("Display Settings"), 'gnome-display-panel.desktop');
this.addSettingsAction(_("Settings"), 'gnome-control-center.desktop');
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.addSettingsAction(_("Change Background…"), 'gnome-background-panel.desktop');
this.actor.add_style_class_name('background-menu');

View File

@@ -24,8 +24,6 @@ const MSECS_IN_DAY = 24 * 60 * 60 * 1000;
const SHOW_WEEKDATE_KEY = 'show-weekdate';
const ELLIPSIS_CHAR = '\u2026';
const MESSAGE_ICON_SIZE = 32;
const MESSAGE_ANIMATION_TIME = 0.1;
const DEFAULT_EXPAND_LINES = 6;
@@ -978,6 +976,7 @@ const Message = new Lang.Class({
this._iconBin = new St.Bin({ style_class: 'message-icon-bin',
y_expand: true,
visible: false });
this._iconBin.set_y_align(Clutter.ActorAlign.START);
hbox.add_actor(this._iconBin);
let contentBox = new St.BoxLayout({ style_class: 'message-content',
@@ -1241,10 +1240,9 @@ const NotificationMessage = new Lang.Class({
_getIcon: function() {
if (this.notification.gicon)
return new St.Icon({ gicon: this.notification.gicon,
icon_size: MESSAGE_ICON_SIZE });
return new St.Icon({ gicon: this.notification.gicon, icon_size: 48 });
else
return this.notification.source.createIcon(MESSAGE_ICON_SIZE);
return this.notification.source.createIcon(48);
},
_onUpdated: function(n, clear) {

View File

@@ -9,15 +9,9 @@ const Gio = imports.gi.Gio;
const GObject = imports.gi.GObject;
const Gcr = imports.gi.Gcr;
const Animation = imports.ui.animation;
const ModalDialog = imports.ui.modalDialog;
const ShellEntry = imports.ui.shellEntry;
const CheckBox = imports.ui.checkBox;
const Tweener = imports.ui.tweener;
const WORK_SPINNER_ICON_SIZE = 16;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const KeyringDialog = new Lang.Class({
Name: 'KeyringDialog',
@@ -64,47 +58,27 @@ const KeyringDialog = new Lang.Class({
{ y_fill: true,
y_align: St.Align.START });
this._workSpinner = null;
this._controlTable = null;
this._cancelButton = this.addButton({ label: '',
action: Lang.bind(this, this._onCancelButton),
key: Clutter.Escape });
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
this.placeSpinner({ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
this._continueButton = this.addButton({ label: '',
action: Lang.bind(this, this._onContinueButton),
default: true });
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
this.prompt.bind_property('cancel-label', this._cancelButton, 'label', GObject.BindingFlags.SYNC_CREATE);
this.prompt.bind_property('continue-label', this._continueButton, 'label', GObject.BindingFlags.SYNC_CREATE);
},
_setWorking: function(working) {
if (!this._workSpinner)
return;
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
_buildControlTable: function() {
let layout = new Clutter.GridLayout({ orientation: Clutter.Orientation.VERTICAL });
let table = new St.Widget({ style_class: 'keyring-dialog-control-table',
@@ -127,22 +101,15 @@ const KeyringDialog = new Lang.Class({
ShellEntry.addContextMenu(this._passwordEntry, { isPassword: true });
this._passwordEntry.clutter_text.connect('activate', Lang.bind(this, this._onPasswordActivate));
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
if (rtl) {
layout.attach(this._workSpinner.actor, 0, row, 1, 1);
layout.attach(this._passwordEntry, 1, row, 1, 1);
layout.attach(label, 2, row, 1, 1);
layout.attach(this._passwordEntry, 0, row, 1, 1);
layout.attach(label, 1, row, 1, 1);
} else {
layout.attach(label, 0, row, 1, 1);
layout.attach(this._passwordEntry, 1, row, 1, 1);
layout.attach(this._workSpinner.actor, 2, row, 1, 1);
}
row++;
} else {
this._workSpinner = null;
this._passwordEntry = null;
}
@@ -211,7 +178,7 @@ const KeyringDialog = new Lang.Class({
this._continueButton.can_focus = sensitive;
this._continueButton.reactive = sensitive;
this._setWorking(!sensitive);
this.setWorking(!sensitive);
},
_ensureOpen: function() {

View File

@@ -13,19 +13,13 @@ const Mainloop = imports.mainloop;
const Polkit = imports.gi.Polkit;
const PolkitAgent = imports.gi.PolkitAgent;
const Animation = imports.ui.animation;
const Components = imports.ui.components;
const ModalDialog = imports.ui.modalDialog;
const ShellEntry = imports.ui.shellEntry;
const UserWidget = imports.ui.userWidget;
const Tweener = imports.ui.tweener;
const DIALOG_ICON_SIZE = 48;
const WORK_SPINNER_ICON_SIZE = 16;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const AuthenticationDialog = new Lang.Class({
Name: 'AuthenticationDialog',
Extends: ModalDialog.ModalDialog,
@@ -142,13 +136,6 @@ const AuthenticationDialog = new Lang.Class({
this._passwordEntry.clutter_text.connect('activate', Lang.bind(this, this._onEntryActivate));
this._passwordBox.add(this._passwordEntry,
{ expand: true });
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this._passwordBox.add(this._workSpinner.actor);
this.setInitialKeyFocus(this._passwordEntry);
this._passwordBox.hide();
@@ -178,10 +165,17 @@ const AuthenticationDialog = new Lang.Class({
this._cancelButton = this.addButton({ label: _("Cancel"),
action: Lang.bind(this, this.cancel),
key: Clutter.Escape });
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
this.placeSpinner({ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
this._okButton = this.addButton({ label: _("Authenticate"),
action: Lang.bind(this, this._onAuthenticateButtonPressed),
default: true });
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
this._doneEmitted = false;
@@ -189,30 +183,6 @@ const AuthenticationDialog = new Lang.Class({
this._cookie = cookie;
},
_setWorking: function(working) {
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
performAuthentication: function() {
this.destroySession();
this._session = new PolkitAgent.Session({ identity: this._identityToAuth,
@@ -259,7 +229,7 @@ const AuthenticationDialog = new Lang.Class({
this._okButton.can_focus = sensitive;
this._okButton.reactive = sensitive;
this._setWorking(!sensitive);
this.setWorking(!sensitive);
},
_onEntryActivate: function() {

View File

@@ -303,8 +303,6 @@ const ChatSource = new Lang.Class({
},
_createPolicy: function() {
if (this._account.protocol_name == 'irc')
return new MessageTray.NotificationApplicationPolicy('org.gnome.Polari');
return new MessageTray.NotificationApplicationPolicy('empathy');
},

View File

@@ -81,6 +81,7 @@ function init() {
// Miscellaneous monkeypatching
_patchContainerClass(St.BoxLayout);
_patchContainerClass(St.Table);
_patchLayoutClass(Clutter.TableLayout, { row_spacing: 'spacing-rows',
column_spacing: 'spacing-columns' });

View File

@@ -24,6 +24,9 @@ const KEYBOARD_TYPE = 'keyboard-type';
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
const CURSOR_BUS_NAME = 'org.gnome.SettingsDaemon.Cursor';
const CURSOR_OBJECT_PATH = '/org/gnome/SettingsDaemon/Cursor';
const CARIBOU_BUS_NAME = 'org.gnome.Caribou.Daemon';
const CARIBOU_OBJECT_PATH = '/org/gnome/Caribou/Daemon';
@@ -111,35 +114,6 @@ const Key = new Lang.Class({
key.release();
return Clutter.EVENT_PROPAGATE;
}));
button.connect('touch-event', Lang.bind(this,
function (actor, event) {
let device = event.get_device();
let sequence = event.get_event_sequence();
// We only handle touch events here on wayland. On X11
// we do get emulated pointer events, which already works
// for single-touch cases. Besides, the X11 passive touch grab
// set up by Mutter will make us see first the touch events
// and later the pointer events, so it will look like two
// unrelated series of events, we want to avoid double handling
// in these cases.
if (!Meta.is_wayland_compositor())
return Clutter.EVENT_PROPAGATE;
if (!this._touchPressed &&
event.type() == Clutter.EventType.TOUCH_BEGIN) {
device.sequence_grab(sequence, actor);
this._touchPressed = true;
key.press();
} else if (this._touchPressed &&
event.type() == Clutter.EventType.TOUCH_END &&
device.sequence_get_grabbed_actor(sequence) == actor) {
device.sequence_ungrab(sequence);
this._touchPressed = false;
key.release();
}
return Clutter.EVENT_PROPAGATE;
}));
return button;
},
@@ -204,6 +178,9 @@ const Keyboard = new Lang.Class({
this._keyboardSettings.connect('changed', Lang.bind(this, this._sync));
this._a11yApplicationsSettings = new Gio.Settings({ schema_id: A11Y_APPLICATIONS_SCHEMA });
this._a11yApplicationsSettings.connect('changed', Lang.bind(this, this._sync));
this._watchNameId = Gio.bus_watch_name(Gio.BusType.SESSION, CURSOR_BUS_NAME, 0,
Lang.bind(this, this._sync),
Lang.bind(this, this._sync));
this._daemonProxy = null;
this._lastDeviceId = null;

View File

@@ -837,7 +837,6 @@ const LayoutManager = new Lang.Class({
// need to connect to 'destroy' too.
this._trackedActors.push(actorData);
this._updateActorVisibility(actorData);
this._queueUpdateRegions();
},
@@ -856,23 +855,25 @@ const LayoutManager = new Lang.Class({
this._queueUpdateRegions();
},
_updateActorVisibility: function(actorData) {
if (!actorData.trackFullscreen)
return;
let monitor = this.findMonitorForActor(actorData.actor);
actorData.actor.visible = !(global.window_group.visible &&
monitor &&
monitor.inFullscreen);
},
_updateVisibility: function() {
let windowsVisible = Main.sessionMode.hasWindows && !this._inOverview;
global.window_group.visible = windowsVisible;
global.top_window_group.visible = windowsVisible;
this._trackedActors.forEach(Lang.bind(this, this._updateActorVisibility));
for (let i = 0; i < this._trackedActors.length; i++) {
let actorData = this._trackedActors[i], visible;
if (!actorData.trackFullscreen)
continue;
if (!windowsVisible)
visible = true;
else if (this.findMonitorForActor(actorData.actor).inFullscreen)
visible = false;
else
visible = true;
actorData.actor.visible = visible;
}
},
getWorkAreaForMonitor: function(monitorIndex) {
@@ -1315,11 +1316,8 @@ const PressureBarrier = new Lang.Class({
},
_onBarrierLeft: function(barrier, event) {
barrier._isHit = false;
if (this._barriers.every(function(b) { return !b._isHit; })) {
this._reset();
this._isTriggered = false;
}
this._reset();
this._isTriggered = false;
},
_trigger: function() {
@@ -1329,8 +1327,6 @@ const PressureBarrier = new Lang.Class({
},
_onBarrierHit: function(barrier, event) {
barrier._isHit = true;
// If we've triggered the barrier, wait until the pointer has the
// left the barrier hitbox until we trigger it again.
if (this._isTriggered)

View File

@@ -4,7 +4,6 @@ const Atspi = imports.gi.Atspi;
const Clutter = imports.gi.Clutter;
const GDesktopEnums = imports.gi.GDesktopEnums;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Lang = imports.lang;
@@ -23,8 +22,6 @@ const MOUSE_POLL_FREQUENCY = 50;
const CROSSHAIRS_CLIP_SIZE = [100, 100];
const NO_CHANGE = 0.0;
const POINTER_REST_TIME = 1000; // milliseconds
// Settings
const APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
const SHOW_KEY = 'screen-magnifier-enabled';
@@ -712,9 +709,6 @@ const ZoomRegion = new Lang.Class({
this._xCaret = 0;
this._yCaret = 0;
this._pointerIdleMonitor = Meta.IdleMonitor.get_for_device(Meta.VIRTUAL_CORE_POINTER_ID);
this._scrollContentsTimerId = 0;
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._monitorsChanged));
this._focusCaretTracker.connect('caret-moved',
@@ -1074,26 +1068,6 @@ const ZoomRegion = new Lang.Class({
return this._isMouseOverRegion();
},
_clearScrollContentsTimer: function() {
if (this._scrollContentsTimerId != 0) {
Mainloop.source_remove(this._scrollContentsTimerId);
this._scrollContentsTimerId = 0;
}
},
_scrollContentsToDelayed: function(x, y) {
if (this._pointerIdleMonitor.get_idletime() >= POINTER_REST_TIME) {
this.scrollContentsTo(x, y);
return;
}
this._clearScrollContentsTimer();
this._scrollContentsTimerId = Mainloop.timeout_add(POINTER_REST_TIME, Lang.bind(this, function() {
this._scrollContentsToDelayed(x, y);
return GLib.SOURCE_REMOVE;
}));
},
/**
* scrollContentsTo:
* Shift the contents of the magnified view such it is centered on the given
@@ -1102,8 +1076,6 @@ const ZoomRegion = new Lang.Class({
* @y: The y-coord of the point to center on.
*/
scrollContentsTo: function(x, y) {
this._clearScrollContentsTimer();
this._followingCursor = false;
this._changeROI({ xCenter: x,
yCenter: y });
@@ -1409,7 +1381,7 @@ const ZoomRegion = new Lang.Class({
else if (this._caretTrackingMode == GDesktopEnums.MagnifierCaretTrackingMode.CENTERED)
[xCaret, yCaret] = this._centerFromPointCentered(xCaret, yCaret);
this._scrollContentsToDelayed(xCaret, yCaret);
this.scrollContentsTo(xCaret, yCaret);
},
_centerFromFocusPosition: function() {
@@ -1423,7 +1395,7 @@ const ZoomRegion = new Lang.Class({
else if (this._focusTrackingMode == GDesktopEnums.MagnifierFocusTrackingMode.CENTERED)
[xFocus, yFocus] = this._centerFromPointCentered(xFocus, yFocus);
this._scrollContentsToDelayed(xFocus, yFocus);
this.scrollContentsTo(xFocus, yFocus);
},
_centerFromPointPush: function(xPoint, yPoint) {

View File

@@ -69,6 +69,26 @@ const Urgency = {
CRITICAL: 3
};
function _fixMarkup(text, allowMarkup) {
if (allowMarkup) {
// Support &amp;, &quot;, &apos;, &lt; and &gt;, escape all other
// occurrences of '&'.
let _text = text.replace(/&(?!amp;|quot;|apos;|lt;|gt;)/g, '&amp;');
// Support <b>, <i>, and <u>, escape anything else
// so it displays as raw markup.
_text = _text.replace(/<(?!\/?[biu]>)/g, '&lt;');
try {
Pango.parse_markup(_text, -1, '');
return _text;
} catch (e) {}
}
// !allowMarkup, or invalid markup
return GLib.markup_escape_text(text, -1);
}
const FocusGrabber = new Lang.Class({
Name: 'FocusGrabber',

View File

@@ -14,6 +14,7 @@ const Atk = imports.gi.Atk;
const Params = imports.misc.params;
const Animation = imports.ui.animation;
const Layout = imports.ui.layout;
const Lightbox = imports.ui.lightbox;
const Main = imports.ui.main;
@@ -22,6 +23,10 @@ const Tweener = imports.ui.tweener;
const OPEN_AND_CLOSE_TIME = 0.1;
const FADE_OUT_DIALOG_TIME = 1.0;
const WORK_SPINNER_ICON_SIZE = 24;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const State = {
OPENED: 0,
CLOSED: 1,
@@ -74,9 +79,7 @@ const ModalDialog = new Lang.Class({
this._group.add_actor(this._backgroundBin);
this.dialogLayout = new St.BoxLayout({ style_class: 'modal-dialog',
x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER,
vertical: true });
vertical: true });
// modal dialogs are fixed width and grow vertically; set the request
// mode accordingly so wrapped labels are handled correctly during
// size requests.
@@ -97,8 +100,7 @@ const ModalDialog = new Lang.Class({
this.backgroundStack.add_actor(this.dialogLayout);
this.contentLayout = new St.BoxLayout({ vertical: true,
style_class: "modal-dialog-content-box" });
this.contentLayout = new St.BoxLayout({ vertical: true });
this.dialogLayout.add(this.contentLayout,
{ expand: true,
x_fill: true,
@@ -106,7 +108,8 @@ const ModalDialog = new Lang.Class({
x_align: St.Align.MIDDLE,
y_align: St.Align.START });
this.buttonLayout = new St.Widget ({ layout_manager: new Clutter.BoxLayout ({ homogeneous:true }) });
this.buttonLayout = new St.BoxLayout({ style_class: 'modal-dialog-button-box',
vertical: false });
this.dialogLayout.add(this.buttonLayout,
{ x_align: St.Align.MIDDLE,
y_align: St.Align.END });
@@ -115,6 +118,8 @@ const ModalDialog = new Lang.Class({
this._initialKeyFocus = this.dialogLayout;
this._initialKeyFocusDestroyId = 0;
this._savedKeyFocus = null;
this._workSpinner = null;
},
destroy: function() {
@@ -142,12 +147,16 @@ const ModalDialog = new Lang.Class({
else
x_alignment = St.Align.MIDDLE;
this.addButton(buttonInfo);
this.addButton(buttonInfo, { expand: true,
x_fill: false,
y_fill: false,
x_align: x_alignment,
y_align: St.Align.MIDDLE });
}
},
addButton: function(buttonInfo) {
let label = buttonInfo['label']
addButton: function(buttonInfo, layoutInfo) {
let label = buttonInfo['label'];
let action = buttonInfo['action'];
let key = buttonInfo['key'];
let isDefault = buttonInfo['default'];
@@ -161,12 +170,10 @@ const ModalDialog = new Lang.Class({
else
keys = [];
let button = new St.Button({ style_class: 'modal-dialog-linked-button',
let button = new St.Button({ style_class: 'modal-dialog-button button',
button_mask: St.ButtonMask.ONE | St.ButtonMask.THREE,
reactive: true,
can_focus: true,
x_expand: true,
y_expand: true,
label: label });
button.connect('clicked', action);
@@ -181,11 +188,47 @@ const ModalDialog = new Lang.Class({
for (let i in keys)
this._buttonKeys[keys[i]] = buttonInfo;
this.buttonLayout.add_actor(button);
this.buttonLayout.add(button, layoutInfo);
return button;
},
placeSpinner: function(layoutInfo) {
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this._workSpinner.actor.show();
this.buttonLayout.add(this._workSpinner.actor, layoutInfo);
},
setWorking: function(working) {
if (!this._workSpinner)
return;
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
_onKeyPressEvent: function(object, event) {
this._pressedKey = event.get_key_symbol();
return Clutter.EVENT_PROPAGATE;

View File

@@ -15,7 +15,8 @@ const OsdMonitorLabel = new Lang.Class({
Name: 'OsdMonitorLabel',
_init: function(monitor, label) {
this._actor = new St.Widget({ x_expand: true,
this._actor = new St.Widget({ opacity: 0,
x_expand: true,
y_expand: true });
this._monitor = monitor;
@@ -33,6 +34,10 @@ const OsdMonitorLabel = new Lang.Class({
this._position();
Meta.disable_unredirect_for_screen(global.screen);
Tweener.addTween(this._actor,
{ opacity: 255,
time: FADE_TIME,
transition: 'easeOutQuad' });
},
_position: function() {
@@ -47,8 +52,15 @@ const OsdMonitorLabel = new Lang.Class({
},
destroy: function() {
this._actor.destroy();
Meta.enable_unredirect_for_screen(global.screen);
Tweener.addTween(this._actor,
{ opacity: 0,
time: FADE_TIME,
transition: 'easeOutQuad',
onComplete: Lang.bind(this, function() {
this._actor.destroy();
Meta.enable_unredirect_for_screen(global.screen);
})
});
}
});

View File

@@ -107,6 +107,13 @@ const Overview = new Lang.Class({
this._overviewCreated = true;
// The main Background actors are inside global.window_group which are
// hidden when displaying the overview, so we create a new
// one. Instances of this class share a single CoglTexture behind the
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
let monitor = Main.layoutManager.primaryMonitor;
let layout = new Clutter.BinLayout();
this._stack = new Clutter.Actor({ layout_manager: layout });
this._stack.add_constraint(new LayoutManager.MonitorConstraint({ primary: true }));
@@ -121,11 +128,6 @@ const Overview = new Lang.Class({
y_expand: true });
this._overview._delegate = this;
// The main Background actors are inside global.window_group which are
// hidden when displaying the overview, so we create a new
// one. Instances of this class share a single CoglTexture behind the
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
this._backgroundGroup = new Meta.BackgroundGroup();
Main.layoutManager.overviewGroup.add_child(this._backgroundGroup);
this._bgManagers = [];

View File

@@ -25,12 +25,12 @@ const RemoteMenu = imports.ui.remoteMenu;
const Main = imports.ui.main;
const Tweener = imports.ui.tweener;
const PANEL_ICON_SIZE = 16;
const APP_MENU_ICON_MARGIN = 0;
const PANEL_ICON_SIZE = 24;
const APP_MENU_ICON_MARGIN = 2;
const BUTTON_DND_ACTIVATION_TIMEOUT = 250;
const SPINNER_ANIMATION_TIME = 1.0;
const SPINNER_ANIMATION_TIME = 0.2;
// To make sure the panel corners blend nicely with the panel,
// we draw background and borders the same way, e.g. drawing
@@ -697,6 +697,7 @@ const AggregateMenu = new Lang.Class({
this.menu.addMenuItem(this._location.menu);
this.menu.addMenuItem(this._rfkill.menu);
this.menu.addMenuItem(this._power.menu);
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.menu.addMenuItem(this._system.menu);
},
});

View File

@@ -1059,6 +1059,11 @@ const PopupSubMenuMenuItem = new Lang.Class({
let expander = new St.Bin({ style_class: 'popup-menu-item-expander' });
this.actor.add(expander, { expand: true });
this.status = new St.Label({ style_class: 'popup-status-menu-item',
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
this.actor.add_child(this.status);
this._triangle = arrowIcon(St.Side.RIGHT);
this._triangle.pivot_point = new Clutter.Point({ x: 0.5, y: 0.6 });

View File

@@ -46,7 +46,7 @@ const Indicator = new Lang.Class({
// The Bluetooth menu only appears when Bluetooth is in use,
// so just statically build it with a "Turn Off" menu item.
this._item = new PopupMenu.PopupSubMenuMenuItem('', true);
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Bluetooth"), true);
this._item.icon.icon_name = 'bluetooth-active-symbolic';
this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
this._proxy.BluetoothAirplaneMode = true;
@@ -101,9 +101,8 @@ const Indicator = new Lang.Class({
this._item.actor.visible = this._proxy.BluetoothHasAirplaneMode && !this._proxy.BluetoothAirplaneMode;
if (nDevices > 0)
/* Translators: this is the number of connected bluetooth devices */
this._item.label.text = ngettext("%d Connected", "%d Connected", nDevices).format(nDevices);
this._item.status.text = ngettext("%d Connected Device", "%d Connected Devices", nDevices).format(nDevices);
else
this._item.label.text = _("Not In Use");
this._item.status.text = _("Not Connected");
},
});

View File

@@ -62,13 +62,13 @@ const Indicator = new Lang.Class({
this._indicator = this._addIndicator();
this._indicator.icon_name = 'find-location-symbolic';
this._item = new PopupMenu.PopupSubMenuMenuItem('', true);
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Location"), true);
this._item.icon.icon_name = 'find-location-symbolic';
this._agent = Gio.DBusExportedObject.wrapJSObject(AgentIface, this);
this._agent.export(Gio.DBus.system, '/org/freedesktop/GeoClue2/Agent');
this._item.label.text = _("Location Enabled");
this._item.status.text = _("Enabled");
this._onOffAction = this._item.menu.addAction(_("Disable"), Lang.bind(this, this._onOnOffAction));
this._item.menu.addSettingsAction(_("Privacy Settings"), 'gnome-privacy-panel.desktop');
@@ -173,11 +173,10 @@ const Indicator = new Lang.Class({
_updateMenuLabels: function() {
if (this._settings.get_boolean(ENABLED)) {
this._item.label.text = this._indicator.visible ? _("Location In Use")
: _("Location Enabled");
this._item.status.text = this._indicator.visible ? _("In Use") : _("Enabled");
this._onOffAction.label.text = _("Disable");
} else {
this._item.label.text = _("Location Disabled");
this._item.status.text = _("Disabled");
this._onOffAction.label.text = _("Enable");
}
},

View File

@@ -257,8 +257,16 @@ const NMConnectionSection = new Lang.Class({
this._radioSection.actor.visible = (nItems > 1);
this._labelSection.actor.visible = (nItems == 1);
this.item.label.text = this._getStatus();
this.item.status.text = this._getStatus();
this.item.icon.icon_name = this._getMenuIcon();
// desc can be undefined at cold-plug, before we called
// NMGtk.disambiguate_device_names() at least once
let desc = this._getDescription();
if (desc)
this.item.label.text = desc;
else
this.item.label.text = '';
},
_getMenuIcon: function() {
@@ -347,7 +355,6 @@ const NMConnectionDevice = new Lang.Class({
this.parent(client);
this._device = device;
this._settings = settings;
this._description = '';
this._autoConnectItem = this.item.menu.addAction(_("Connect"), Lang.bind(this, this._autoConnect));
this._deactivateItem = this._radioSection.addAction(_("Turn Off"), Lang.bind(this, this.deactivateConnection));
@@ -447,44 +454,38 @@ const NMConnectionDevice = new Lang.Class({
switch(this._device.state) {
case NetworkManager.DeviceState.DISCONNECTED:
/* Translators: %s is a network identifier */
return _("%s Off").format(this._getDescription());
return _("Off");
case NetworkManager.DeviceState.ACTIVATED:
/* Translators: %s is a network identifier */
return _("%s Connected").format(this._getDescription());
return _("Connected");
case NetworkManager.DeviceState.UNMANAGED:
/* Translators: this is for network devices that are physically present but are not
under NetworkManager's control (and thus cannot be used in the menu);
%s is a network identifier */
return _("%s Unmanaged").format(this._getDescription());
under NetworkManager's control (and thus cannot be used in the menu) */
return _("Unmanaged");
case NetworkManager.DeviceState.DEACTIVATING:
/* Translators: %s is a network identifier */
return _("%s Disconnecting").format(this._getDescription());
return _("Disconnecting");
case NetworkManager.DeviceState.PREPARE:
case NetworkManager.DeviceState.CONFIG:
case NetworkManager.DeviceState.IP_CONFIG:
case NetworkManager.DeviceState.IP_CHECK:
case NetworkManager.DeviceState.SECONDARIES:
/* Translators: %s is a network identifier */
return _("%s Connecting").format(this._getDescription());
return _("Connecting");
case NetworkManager.DeviceState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password; %s is a network identifier */
return _("%s Requires Authentication").format(this._getDescription());
/* Translators: this is for network connections that require some kind of key or password */
return _("Authentication required");
case NetworkManager.DeviceState.UNAVAILABLE:
// This state is actually a compound of various states (generically unavailable,
// firmware missing), that are exposed by different properties (whose state may
// or may not updated when we receive state-changed).
if (this._device.firmware_missing) {
/* Translators: this is for devices that require some kind of firmware or kernel
module, which is missing; %s is a network identifier */
return _("Firmware Missing For %s").format(this._getDescription());
module, which is missing */
return _("Firmware missing");
}
/* Translators: this is for a network device that cannot be activated (for example it
is disabled by rfkill, or it has no coverage; %s is a network identifier */
return _("%s Unavailable").format(this._getDescription());
is disabled by rfkill, or it has no coverage */
return _("Unavailable");
case NetworkManager.DeviceState.FAILED:
/* Translators: %s is a network identifier */
return _("%s Connection Failed").format(this._getDescription());
return _("Connection failed");
default:
log('Device state invalid, is %d'.format(this._device.state));
return 'invalid';
@@ -584,12 +585,11 @@ const NMDeviceModem = new Lang.Class({
_getStatus: function() {
if (!this._client.wwan_hardware_enabled)
/* Translators: %s is a network identifier */
return _("%s Hardware Disabled").format(this._getDescription());
return _("Hardware Disabled");
else if (!this._client.wwan_enabled)
/* Translators: this is for a network device that cannot be activated
because it's disabled by rfkill (airplane mode); %s is a network identifier */
return _("%s Disabled").format(this._getDescription());
because it's disabled by rfkill (airplane mode) */
return _("Disabled");
else if (this._device.state == NetworkManager.DeviceState.ACTIVATED &&
this._mobileDevice && this._mobileDevice.operator_name)
return this._mobileDevice.operator_name;
@@ -877,7 +877,7 @@ const NMWirelessDialog = new Lang.Class({
y_align: Clutter.ActorAlign.CENTER });
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._noNetworksSpinner = new Animation.AnimatedIcon(file, 16, 16);
this._noNetworksSpinner = new Animation.AnimatedIcon(file, 24, 24);
this._noNetworksBox.add_actor(this._noNetworksSpinner.actor);
this._noNetworksBox.add_actor(new St.Label({ style_class: 'no-networks-label',
text: _("No Networks") }));
@@ -917,7 +917,10 @@ const NMWirelessDialog = new Lang.Class({
key: Clutter.Escape });
this._connectButton = this.addButton({ action: Lang.bind(this, this._connect),
label: _("Connect"),
key: Clutter.Return });
key: Clutter.Return },
{ expand: true,
x_fill: false,
x_align: St.Align.END });
},
_connect: function() {
@@ -1279,8 +1282,9 @@ const NMDeviceWireless = new Lang.Class({
this._toggleItem.label.text = this._client.wireless_enabled ? _("Turn Off") : _("Turn On");
this._toggleItem.actor.visible = this._client.wireless_hardware_enabled;
this.item.status.text = this._getStatus();
this.item.icon.icon_name = this._getMenuIcon();
this.item.label.text = this._getStatus();
this.item.label.text = this._description;
},
setDeviceDescription: function(desc) {
@@ -1292,23 +1296,18 @@ const NMDeviceWireless = new Lang.Class({
let ap = this._device.active_access_point;
if (this._isHotSpotMaster())
/* Translators: %s is a network identifier */
return _("%s Hotspot Active").format(this._description);
return _("Hotspot Active");
else if (this._device.state >= NetworkManager.DeviceState.PREPARE &&
this._device.state < NetworkManager.DeviceState.ACTIVATED)
/* Translators: %s is a network identifier */
return _("%s Connecting").format(this._description);
return _("Connecting");
else if (ap)
return ssidToLabel(ap.get_ssid());
else if (!this._client.wireless_hardware_enabled)
/* Translators: %s is a network identifier */
return _("%s Hardware Disabled").format(this._description);
return _("Hardware Disabled");
else if (!this._client.wireless_enabled)
/* Translators: %s is a network identifier */
return _("%s Off").format(this._description);
return _("Off");
else if (this._device.state == NetworkManager.DeviceState.DISCONNECTED)
/* Translators: %s is a network identifier */
return _("%s Not Connected").format(this._description);
return _("Not Connected");
else
return '';
},
@@ -1510,7 +1509,7 @@ const NMVPNSection = new Lang.Class({
return item.getName();
}
return _("VPN Off");
return _("Off");
},
_getMenuIcon: function() {

View File

@@ -112,6 +112,12 @@ const Indicator = new Lang.Class({
this._item.icon.icon_name = icon;
// The status label
this._item.label.text = this._getStatus();
this._item.status.text = this._getStatus();
// The sub-menu heading
if (this._proxy.Type == UPower.DeviceKind.UPS)
this._item.label.text = _("UPS");
else
this._item.label.text = _("Battery");
},
});

View File

@@ -85,8 +85,9 @@ const Indicator = new Lang.Class({
// The menu only appears when airplane mode is on, so just
// statically build it as if it was on, rather than dynamically
// changing the menu contents.
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Airplane Mode On"), true);
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Airplane Mode"), true);
this._item.icon.icon_name = 'airplane-mode-symbolic';
this._item.status.text = _("On");
this._offItem = this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
this._manager.airplaneMode = false;
}));

View File

@@ -24,17 +24,6 @@ const DISABLE_LOG_OUT_KEY = 'disable-log-out';
const DISABLE_RESTART_KEY = 'disable-restart-buttons';
const ALWAYS_SHOW_LOG_OUT_KEY = 'always-show-log-out';
const SENSOR_BUS_NAME = 'net.hadess.SensorProxy';
const SENSOR_OBJECT_PATH = '/net/hadess/SensorProxy';
const SensorProxyInterface = '<node> \
<interface name="net.hadess.SensorProxy"> \
<property name="HasAccelerometer" type="b" access="read"/> \
</interface> \
</node>';
const SensorProxy = Gio.DBusProxy.makeProxyWrapper(SensorProxyInterface);
const AltSwitcher = new Lang.Class({
Name: 'AltSwitcher',
@@ -155,32 +144,23 @@ const Indicator = new Lang.Class({
this._orientationSettings.connect('changed::orientation-lock',
Lang.bind(this, this._updateOrientationLock));
Gio.DBus.system.watch_name(SENSOR_BUS_NAME,
Gio.BusNameWatcherFlags.NONE,
Lang.bind(this, this._sensorProxyAppeared),
Lang.bind(this, function() {
this._sensorProxy = null;
this._updateOrientationLock();
}));
this._orientationExists = false;
Gio.DBus.session.watch_name('org.gnome.SettingsDaemon.Orientation',
Gio.BusNameWatcherFlags.NONE,
Lang.bind(this, function() {
this._orientationExists = true;
this._updateOrientationLock();
}),
Lang.bind(this, function() {
this._orientationExists = false;
this._updateOrientationLock();
}));
this._updateOrientationLock();
Main.sessionMode.connect('updated', Lang.bind(this, this._sessionUpdated));
this._sessionUpdated();
},
_sensorProxyAppeared: function() {
this._sensorProxy = new SensorProxy(Gio.DBus.system, SENSOR_BUS_NAME, SENSOR_OBJECT_PATH,
Lang.bind(this, function(proxy, error) {
if (error) {
log(error.message);
return;
}
this._sensorProxy.connect('g-properties-changed',
Lang.bind(this, this._updateOrientationLock));
this._updateOrientationLock();
}));
},
_updateActionsVisibility: function() {
let visible = (this._settingsAction.visible ||
this._orientationLockAction.visible ||
@@ -251,22 +231,13 @@ const Indicator = new Lang.Class({
let file = Gio.File.new_for_path(iconFile);
let gicon = new Gio.FileIcon({ file: file });
this._switchUserSubMenu.icon.gicon = gicon;
this._switchUserSubMenu.icon.add_style_class_name('user-icon');
this._switchUserSubMenu.icon.remove_style_class_name('default-icon');
} else {
this._switchUserSubMenu.icon.icon_name = 'avatar-default-symbolic';
this._switchUserSubMenu.icon.add_style_class_name('default-icon');
this._switchUserSubMenu.icon.remove_style_class_name('user-icon');
}
},
_updateOrientationLock: function() {
if (this._sensorProxy)
this._orientationLockAction.visible = this._sensorProxy.HasAccelerometer;
else
this._orientationLockAction.visible = false;
this._orientationLockAction.visible = this._orientationExists;
let locked = this._orientationSettings.get_boolean('orientation-lock');
let icon = this._orientationLockAction.child;
@@ -350,9 +321,6 @@ const Indicator = new Lang.Class({
this._switchUserSubMenu.menu.addMenuItem(item);
this._logoutItem = item;
this._switchUserSubMenu.menu.addSettingsAction(_("Account Settings"),
'gnome-user-accounts-panel.desktop');
this._user.connect('notify::is-loaded', Lang.bind(this, this._updateSwitchUserSubMenu));
this._user.connect('changed', Lang.bind(this, this._updateSwitchUserSubMenu));

View File

@@ -465,12 +465,6 @@ const ViewSelector = new Lang.Class({
},
_shouldTriggerSearch: function(symbol) {
if (symbol == Clutter.Multi_key)
return true;
if (symbol == Clutter.BackSpace && this._searchActive)
return true;
let unicode = Clutter.keysym_to_unicode(symbol);
if (unicode == 0)
return false;
@@ -478,7 +472,7 @@ const ViewSelector = new Lang.Class({
if (getTermsForSearchString(String.fromCharCode(unicode)).length > 0)
return true;
return false;
return symbol == Clutter.BackSpace && this._searchActive;
},
startSearch: function(event) {

View File

@@ -11,8 +11,7 @@ const WindowAttentionHandler = new Lang.Class({
_init : function() {
this._tracker = Shell.WindowTracker.get_default();
this._windowDemandsAttentionId = global.display.connect('window-demands-attention',
Lang.bind(this, this._onWindowDemandsAttention));
global.display.connect('window-demands-attention', Lang.bind(this, this._onWindowDemandsAttention));
},
_getTitleAndBanner: function(app, window) {

View File

@@ -19,6 +19,8 @@ const Tweener = imports.ui.tweener;
const WindowMenu = imports.ui.windowMenu;
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
const MAXIMIZE_WINDOW_ANIMATION_TIME = 0.15;
const UNMAXIMIZE_WINDOW_ANIMATION_TIME = 0.15;
const MINIMIZE_WINDOW_ANIMATION_TIME = 0.2;
const SHOW_WINDOW_ANIMATION_TIME = 0.15;
const DIALOG_SHOW_WINDOW_ANIMATION_TIME = 0.1;
@@ -81,10 +83,12 @@ const DisplayChangeDialog = new Lang.Class({
*/
this._cancelButton = this.addButton({ label: _("Revert Settings"),
action: Lang.bind(this, this._onFailure),
key: Clutter.Escape });
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
this._okButton = this.addButton({ label: _("Keep Changes"),
action: Lang.bind(this, this._onSuccess),
default: true });
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
this._timeoutId = Mainloop.timeout_add(ONE_SECOND, Lang.bind(this, this._tick));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick');
@@ -213,8 +217,7 @@ const WorkspaceTracker = new Lang.Class({
_getWorkspaceSettings: function() {
let settings = global.get_overrides_settings();
if (settings &&
settings.settings_schema.list_keys().indexOf('dynamic-workspaces') > -1)
if (settings.list_keys().indexOf('dynamic-workspaces') > -1)
return settings;
return new Gio.Settings({ schema_id: 'org.gnome.mutter' });
},
@@ -475,100 +478,52 @@ const TilePreview = new Lang.Class({
}
});
const TouchpadWorkspaceSwitchAction = new Lang.Class({
Name: 'TouchpadWorkspaceSwitchAction',
_init: function(actor) {
this._dx = 0;
this._dy = 0;
actor.connect('captured-event', Lang.bind(this, this._handleEvent));
},
_checkActivated: function() {
const MOTION_THRESHOLD = 50;
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
let dir;
if ((allowedModes & Main.actionMode) == 0)
return;
if (this._dy < -MOTION_THRESHOLD)
dir = Meta.MotionDirection.DOWN;
else if (this._dy > MOTION_THRESHOLD)
dir = Meta.MotionDirection.UP;
else if (this._dx < -MOTION_THRESHOLD)
dir = Meta.MotionDirection.RIGHT;
else if (this._dx > MOTION_THRESHOLD)
dir = Meta.MotionDirection.LEFT;
else
return;
this.emit('activated', dir);
},
_handleEvent: function(actor, event) {
if (event.type() != Clutter.EventType.TOUCHPAD_SWIPE)
return Clutter.EVENT_PROPAGATE;
if (event.get_gesture_swipe_finger_count() != 4)
return Clutter.EVENT_PROPAGATE;
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.UPDATE) {
let [dx, dy] = event.get_gesture_motion_delta(event);
this._dx += dx;
this._dy += dy;
} else {
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.END)
this._checkActivated();
this._dx = 0;
this._dy = 0;
}
return Clutter.EVENT_STOP;
}
});
Signals.addSignalMethods(TouchpadWorkspaceSwitchAction.prototype);
const WorkspaceSwitchAction = new Lang.Class({
Name: 'WorkspaceSwitchAction',
Extends: Clutter.SwipeAction,
Extends: Clutter.GestureAction,
_init : function() {
const MOTION_THRESHOLD = 50;
this.parent();
this.set_n_touch_points(4);
this.set_threshold_trigger_distance(MOTION_THRESHOLD, MOTION_THRESHOLD);
global.display.connect('grab-op-begin', Lang.bind(this, function() {
this.cancel();
}));
},
vfunc_gesture_prepare : function(actor) {
vfunc_gesture_prepare : function(action, actor) {
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
if (!this.parent(actor))
return false;
return (allowedModes & Main.actionMode);
return this.get_n_current_points() == this.get_n_touch_points() &&
(allowedModes & Main.actionMode);
},
vfunc_swept : function(actor, direction) {
let dir;
vfunc_gesture_end : function(action, actor) {
const MOTION_THRESHOLD = 50;
if (direction & Clutter.SwipeDirection.UP)
dir = Meta.MotionDirection.DOWN;
else if (direction & Clutter.SwipeDirection.DOWN)
dir = Meta.MotionDirection.UP;
else if (direction & Clutter.SwipeDirection.LEFT)
dir = Meta.MotionDirection.RIGHT;
else if (direction & Clutter.SwipeDirection.RIGHT)
dir = Meta.MotionDirection.LEFT;
// Just check one touchpoint here
let [startX, startY] = this.get_press_coords(0);
let [x, y] = this.get_motion_coords(0);
let offsetX = x - startX;
let offsetY = y - startY;
let direction;
this.emit('activated', dir);
if (Math.abs(offsetX) < MOTION_THRESHOLD &&
Math.abs(offsetY) < MOTION_THRESHOLD)
return;
if (Math.abs(offsetY) > Math.abs(offsetX)) {
if (offsetY > 0)
direction = Meta.MotionDirection.UP;
else
direction = Meta.MotionDirection.DOWN;
} else {
if (offsetX > 0)
direction = Meta.MotionDirection.LEFT;
else
direction = Meta.MotionDirection.RIGHT;
}
this.emit('activated', direction);
}
});
Signals.addSignalMethods(WorkspaceSwitchAction.prototype);
@@ -676,6 +631,8 @@ const WindowManager = new Lang.Class({
this._minimizing = [];
this._unminimizing = [];
this._maximizing = [];
this._unmaximizing = [];
this._mapping = [];
this._destroying = [];
this._movingWindow = null;
@@ -690,6 +647,8 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('kill-switch-workspace', Lang.bind(this, this._switchWorkspaceDone));
this._shellwm.connect('kill-window-effects', Lang.bind(this, function (shellwm, actor) {
this._minimizeWindowDone(shellwm, actor);
this._maximizeWindowDone(shellwm, actor);
this._unmaximizeWindowDone(shellwm, actor);
this._mapWindowDone(shellwm, actor);
this._destroyWindowDone(shellwm, actor);
}));
@@ -700,7 +659,8 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('show-window-menu', Lang.bind(this, this._showWindowMenu));
this._shellwm.connect('minimize', Lang.bind(this, this._minimizeWindow));
this._shellwm.connect('unminimize', Lang.bind(this, this._unminimizeWindow));
this._shellwm.connect('size-change', Lang.bind(this, this._sizeChangeWindow));
this._shellwm.connect('maximize', Lang.bind(this, this._maximizeWindow));
this._shellwm.connect('unmaximize', Lang.bind(this, this._unmaximizeWindow));
this._shellwm.connect('map', Lang.bind(this, this._mapWindow));
this._shellwm.connect('destroy', Lang.bind(this, this._destroyWindow));
this._shellwm.connect('filter-keybinding', Lang.bind(this, this._filterKeybinding));
@@ -920,22 +880,15 @@ const WindowManager = new Lang.Class({
false, -1, 1);
let gesture = new WorkspaceSwitchAction();
gesture.connect('activated', Lang.bind(this, this._actionSwitchWorkspace));
gesture.connect('activated', Lang.bind(this, function(action, direction) {
let newWs = global.screen.get_active_workspace().get_neighbor(direction);
this.actionMoveWorkspace(newWs);
}));
global.stage.add_action(gesture);
// This is not a normal Clutter.GestureAction, doesn't need add_action()
gesture = new TouchpadWorkspaceSwitchAction(global.stage);
gesture.connect('activated', Lang.bind(this, this._actionSwitchWorkspace));
gesture = new AppSwitchAction();
gesture.connect('activated', Lang.bind(this, this._switchApp));
global.stage.add_action(gesture);
},
_actionSwitchWorkspace: function(action, direction) {
let newWs = global.screen.get_active_workspace().get_neighbor(direction);
this.actionMoveWorkspace(newWs);
},
_lookupIndex: function (windows, metaWindow) {
@@ -1217,8 +1170,22 @@ const WindowManager = new Lang.Class({
}
},
_sizeChangeWindow : function(shellwm, actor, whichChange, oldFrameRect, oldBufferRect) {
shellwm.completed_size_change(actor);
_maximizeWindow : function(shellwm, actor, targetX, targetY, targetWidth, targetHeight) {
shellwm.completed_maximize(actor);
},
_maximizeWindowDone : function(shellwm, actor) {
},
_maximizeWindowOverwrite : function(shellwm, actor) {
},
_unmaximizeWindow : function(shellwm, actor, targetX, targetY, targetWidth, targetHeight) {
shellwm.completed_unmaximize(actor);
},
_unmaximizeWindowDone : function(shellwm, actor) {
},
_hasAttachedDialogs: function(window, ignoreWindow) {

View File

@@ -74,7 +74,7 @@ const WindowMenu = new Lang.Class({
window.make_above();
}));
if (window.is_above())
item.setOrnament(PopupMenu.Ornament.CHECK);
item.setOrnament(PopupMenu.Ornament.DOT);
if (window.get_maximized() == Meta.MaximizeFlags.BOTH ||
type == Meta.WindowType.DOCK ||
type == Meta.WindowType.DESKTOP ||
@@ -93,7 +93,7 @@ const WindowMenu = new Lang.Class({
window.stick();
}));
if (isSticky)
item.setOrnament(PopupMenu.Ornament.CHECK);
item.setOrnament(PopupMenu.Ornament.DOT);
if (window.is_always_on_all_workspaces())
item.setSensitive(false);
@@ -101,22 +101,13 @@ const WindowMenu = new Lang.Class({
if (!isSticky) {
let workspace = window.get_workspace();
if (workspace != workspace.get_neighbor(Meta.MotionDirection.LEFT)) {
this.addAction(_("Move to Workspace Left"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.LEFT));
}));
}
if (workspace != workspace.get_neighbor(Meta.MotionDirection.RIGHT)) {
this.addAction(_("Move to Workspace Right"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.RIGHT));
}));
}
if (workspace != workspace.get_neighbor(Meta.MotionDirection.UP)) {
let idx = workspace.index();
if (idx > 0) {
this.addAction(_("Move to Workspace Up"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.UP));
}));
}
if (workspace != workspace.get_neighbor(Meta.MotionDirection.DOWN)) {
if (idx < nWorkspaces) {
this.addAction(_("Move to Workspace Down"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.DOWN));
}));
@@ -124,39 +115,6 @@ const WindowMenu = new Lang.Class({
}
}
let screen = global.screen;
let nMonitors = screen.get_n_monitors();
if (nMonitors > 1) {
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
let monitorIndex = window.get_monitor();
let upMonitorIndex = screen.get_monitor_neighbor_index(monitorIndex, Meta.ScreenDirection.UP);
if (upMonitorIndex != -1) {
this.addAction(_("Move to Monitor Up"), Lang.bind(this, function(event) {
window.move_to_monitor(upMonitorIndex);
}));
}
let downMonitorIndex = screen.get_monitor_neighbor_index(monitorIndex, Meta.ScreenDirection.DOWN);
if (downMonitorIndex != -1) {
this.addAction(_("Move to Monitor Down"), Lang.bind(this, function(event) {
window.move_to_monitor(downMonitorIndex);
}));
}
let leftMonitorIndex = screen.get_monitor_neighbor_index(monitorIndex, Meta.ScreenDirection.LEFT);
if (leftMonitorIndex != -1) {
this.addAction(_("Move to Monitor Left"), Lang.bind(this, function(event) {
window.move_to_monitor(leftMonitorIndex);
}));
}
let rightMonitorIndex = screen.get_monitor_neighbor_index(monitorIndex, Meta.ScreenDirection.RIGHT);
if (rightMonitorIndex != -1) {
this.addAction(_("Move to Monitor Right"), Lang.bind(this, function(event) {
window.move_to_monitor(rightMonitorIndex);
}));
}
}
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
item = this.addAction(_("Close"), Lang.bind(this, function(event) {
@@ -209,10 +167,6 @@ const WindowMenuManager = new Lang.Class({
menu.connect('activate', function() {
window.check_alive(global.get_current_time());
});
let destroyId = window.connect('unmanaged',
function() {
menu.close();
});
this._sourceActor.set_size(rect.width, rect.height);
this._sourceActor.set_position(rect.x, rect.y);
@@ -226,7 +180,6 @@ const WindowMenuManager = new Lang.Class({
this._sourceActor.hide();
menu.destroy();
window.disconnect(destroyId);
}));
}
});

297
po/an.po
View File

@@ -9,23 +9,24 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-07-23 08:08+0000\n"
"PO-Revision-Date: 2015-04-28 08:40+0200\n"
"Last-Translator: Daniel <entaltoaragon@gmail.com>\n"
"POT-Creation-Date: 2015-03-17 12:39+0000\n"
"PO-Revision-Date: 2015-03-17 19:50+0100\n"
"Last-Translator: Daniel Martinez <entaltoaragon@gmail.com>\n"
"Language-Team: Aragonés <softaragones@googlegroups.com>\n"
"Language: an\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.5.1.1\n"
"X-POOTLE-MTIME: 1430206804.000000\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 "%d new notification"
#| msgid_plural "%d new notifications"
msgid "Show the notification list"
msgstr "Amostrar a lista de notificacions"
@@ -135,18 +136,17 @@ msgstr "Indiz de l'anvista seleccionada actual en o selector d'aplicacion."
msgid "History for command (Alt-F2) dialog"
msgstr "Historico d'o dialogo de comandos (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
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid "History for the looking glass dialog"
msgstr "Historico d'o dialogo de \"looking glass\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menu item in the user menu."
msgstr ""
"Amostrar siempre l'elemento de menú \"Trancar sesión\" en o menú de "
"l'usuario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@@ -154,14 +154,14 @@ msgstr ""
"Ista clau sobrescribe a ocultación automatica de l'elemento de menú "
"\"Trancar sesión\" en situacions d'un solo usuario u d'una sola sesión."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Indica si se debe recordar a clau ta amontar sistemas de fichers remotos u "
"zifraus"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
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 "
@@ -173,79 +173,81 @@ msgstr ""
"s'amostrará a caixeta \"Remerar clau\". Ista clau estableix a valor "
"predeterminada d'a caixeta."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Show the week date in the calendar"
msgstr "Amostrar a calendata d'a semana en o calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "If true, display the ISO week date in the calendar."
msgstr "Si ye cierta, amuestra a calendata de semana ISO en o calandario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to open the application menu"
msgstr "Asociación de teclas ta ubrir o menú de l'aplicación"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu."
msgstr "Asociación de teclas ta ubrir o menú de l'aplicación."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Asociación de teclas ta la vista \"Amostrar aplicacions\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Asociación de teclas ta ubrir la vista \"Amostrar aplicacions\" de la vista "
"d'actividatz."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Keybinding to open the overview"
msgstr "Asociación de teclas ta l'anvista cheneral"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the Activities Overview."
msgstr "Asociación de teclas ta ubrir l'anvista d'actividatz"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#| msgid "Keybinding to toggle the visibility of the message tray"
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Asociación de teclas ta cambiar a visibilidat d'a lista de notificacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#| msgid "Keybinding to toggle the visibility of the message tray."
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Asociación de teclas ta cambiar a visibilidat d'a lista de notificacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to focus the active notification"
msgstr "Asociación de teclas ta dar o foco a la notificación activa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification."
msgstr "Asociación de teclas ta dar o foco a la notificación activa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Asociación de teclas que pausan y continan todas as execucions de «tweens», "
"ta propositos de depuraci'on"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Which keyboard to use"
msgstr "Que teclau usar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The type of keyboard to use."
msgstr "O tipo de teclau que usar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "Limit switcher to current workspace."
msgstr "Selector de limite ta l'aria de treballo actual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@@ -254,21 +256,21 @@ msgstr ""
"finestras en l'aria de treballo actual. D'atra man, s'incluirán todas as "
"aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "The application icon mode."
msgstr "O modo d'icono de l'aplicación."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
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'."
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
msgstr ""
"Configura cómo s'amuestran as finestras en o selector. Os valore posibles "
"son \"thumbnail-only\" (amuestra una miniatura d'a finestra), \"app-icon-"
"only\" (solament amuestra l'icono de l'aplicación) u \"both\"."
"son \"thumbnail-only\" (amuestra una miniatura d'a finestra), \"app-icon-only"
"\" (solament amuestra l'icono de l'aplicación) u \"both\"."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@@ -276,31 +278,31 @@ msgstr ""
"Si en ye verdadero, nomás s'amostrarán en o selector finestras de l'aria de "
"treballo actual. D'atra man, s'incluirán todas as finestras."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "Attach modal dialog to the parent window"
msgstr "Acoplar un dialogo modal a la finestra pai"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Ista clau sobrescribe a clau en org.gnome.mutter en executar GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Activar o mosaico en os bordes en arrocegar finestras a os bordes d'a "
"finestra"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces are managed dynamically"
msgstr "As arias de treballo se chestionan dinámicamente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces only on primary monitor"
msgstr "Arias de treballo solament en a pantalla prencipal"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retardo en cambiar o foco d'o churi dica que o puntero deixa de mover-se"
@@ -309,12 +311,12 @@ msgstr ""
msgid "Network Login"
msgstr "Encetar sesión en o rete"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "I habió una error en lanzar o diálogo de preferencias ta %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Extensions de GNOME Shell"
@@ -325,39 +327,39 @@ msgstr "Extensions de GNOME Shell"
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Siguient"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Desbloquiar"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Encetar sesión"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Esleyir a sesión"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:420
msgid "Not listed?"
msgstr "No ye en a lista?"
#: ../js/gdm/loginDialog.js:847
#: ../js/gdm/loginDialog.js:829
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(eix., usuario u %s)"
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:834 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nombre d'usuario: "
msgstr "Nombre d'usuario:"
#: ../js/gdm/loginDialog.js:1180
#: ../js/gdm/loginDialog.js:1169
msgid "Login Window"
msgstr "Finestra d'inicio de sesión"
@@ -450,31 +452,31 @@ msgstr "%d de %B de %Y, %l%M %"
msgid "Web Authentication Redirect"
msgstr "Rendrecera ta autentiación web"
#: ../js/ui/appDisplay.js:789
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "As aplicaciones usadas freqüentment amaneixerán aquí"
#: ../js/ui/appDisplay.js:909
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Freqüent"
#: ../js/ui/appDisplay.js:916
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Todas"
#: ../js/ui/appDisplay.js:1845
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Finestra nueva"
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Sacar d'os favoritos"
#: ../js/ui/appDisplay.js:1879
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Anyadir a os favoritos"
#: ../js/ui/appDisplay.js:1889
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Amostrar detalles"
@@ -488,19 +490,15 @@ msgstr "S'ha anyadiu %s a os suyos favoritos."
msgid "%s has been removed from your favorites."
msgstr "S'ha sacau %s d'os suyos favoritos"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Cambiar o fondo…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Preferencias de pantalla"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Configuración"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Cambiar o fondo…"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -553,53 +551,54 @@ msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:563
msgid "Previous month"
msgstr "Mes anterior"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:573
msgid "Next month"
msgstr "Mes siguient"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:780
msgid "Week %V"
msgstr "Semana %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:1187
#: ../js/ui/calendar.js:1182
msgctxt "event list time"
msgid "All Day"
msgstr "Tot o diya"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1288
msgid "Clear section"
msgstr "Limpiar a sección"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1515
msgid "Events"
msgstr "Eventos"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1524
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1528
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1613
msgid "Notifications"
msgstr "Notificacions"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1764
#| msgid "Notifications"
msgid "No Notifications"
msgstr "No i hai notificacions"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1767
msgid "No Events"
msgstr "No i hai eventos"
@@ -635,23 +634,23 @@ msgstr "Connectar"
#: ../js/ui/components/networkAgent.js:293
#: ../js/ui/components/networkAgent.js:303
msgid "Password: "
msgstr "Clau de paso: "
msgstr "Clau de paso:"
#: ../js/ui/components/networkAgent.js:238
msgid "Key: "
msgstr "Clau: "
msgstr "Clau:"
#: ../js/ui/components/networkAgent.js:277
msgid "Identity: "
msgstr "Identidat: "
msgstr "Identidat:"
#: ../js/ui/components/networkAgent.js:279
msgid "Private key password: "
msgstr "Clau d'a clau privada: "
msgstr "Clau d'a clau privada:"
#: ../js/ui/components/networkAgent.js:291
msgid "Service: "
msgstr "Servicio: "
msgstr "Servicio:"
#: ../js/ui/components/networkAgent.js:320
#: ../js/ui/components/networkAgent.js:658
@@ -662,8 +661,8 @@ msgstr "O ret sin cordón requiere autenticación"
#: ../js/ui/components/networkAgent.js:659
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"%s”."
"Passwords or encryption keys are required to access the wireless network "
"%s”."
msgstr ""
"S'amenesten claus u claus de zifrau ta accedir a o ret inalambrico\"%s\"."
@@ -674,7 +673,7 @@ msgstr "Autenticación 802.1X cableada"
#: ../js/ui/components/networkAgent.js:327
msgid "Network name: "
msgstr "Nombre d'o ret: "
msgstr "Nombre d'o ret:"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:666
@@ -734,7 +733,7 @@ msgstr "Prebe atra vegada."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:768
#, javascript-format
msgid "%s is now known as %s"
msgstr "Agora %s se dice %s"
@@ -743,11 +742,11 @@ msgstr "Agora %s se dice %s"
msgid "Windows"
msgstr "Finestras"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Amostrar aplicacions"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Tablero"
@@ -755,6 +754,7 @@ msgstr "Tablero"
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:73
#| msgid "%A %B %e, %Y"
msgid "%B %e %Y"
msgstr "%B %e %Y"
@@ -763,6 +763,7 @@ msgstr "%B %e %Y"
#. * date, e.g. "Tuesday February 17 2015".
#. */
#: ../js/ui/dateMenu.js:80
#| msgid "%A %B %e, %Y"
msgid "%A %B %e %Y"
msgstr "%A %e de %B de %Y"
@@ -771,6 +772,7 @@ msgid "Add world clocks…"
msgstr "Adhibir reloches d'o mundo…"
#: ../js/ui/dateMenu.js:161
#| msgid "Open Clocks"
msgid "World Clocks"
msgstr "Reloches d'o mundo"
@@ -914,16 +916,17 @@ msgstr "Instalar"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Descargar y instalar \"%s\" dende extensions.gnome.org?"
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:580
msgid "Keyboard"
msgstr "Teclau"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
#| msgid "Hide Text"
msgid "Hide tray"
msgstr "Amagar servilla"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:104
msgid "Status Icons"
msgstr "Iconos d'estau"
@@ -979,7 +982,7 @@ msgstr "Veyer fuent"
msgid "Web Page"
msgstr "Pachina web"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:2133
msgid "System Information"
msgstr "Informacion d'o sistema"
@@ -1021,7 +1024,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Introducir un comando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Trancar"
@@ -1049,27 +1052,27 @@ msgid_plural "%d new notifications"
msgstr[0] "%d notificación nueva"
msgstr[1] "%d notificacions nuevas"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Blocar"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "GNOME ameneste blocar a pantalla"
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "No se podió blocar"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Una aplicación impidió o bloqueyo"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Mirando…"
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "No se troboron resultaus."
@@ -1133,11 +1136,11 @@ msgstr "Refuso de teclas"
msgid "Mouse Keys"
msgstr "Teclas d'o ratet"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Contraste alto"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Texto gran"
@@ -1171,7 +1174,7 @@ msgstr "No connectau"
msgid "Brightness"
msgstr "Brilo"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:603
msgid "Show Keyboard Layout"
msgstr "Amostrar a distribución d'o teclau"
@@ -1265,7 +1268,7 @@ msgstr "O modo avión ye enchegau"
#: ../js/ui/status/network.js:814
msgid "Wi-Fi is disabled when airplane mode is on."
msgstr "O Wi-Fi ye desactivau quan o modo avión ye enchegau."
msgstr "O Wi-Fi ye desactivau quan o modo avión ye enchegau."
#: ../js/ui/status/network.js:815
msgid "Turn Off Airplane Mode"
@@ -1382,23 +1385,23 @@ msgstr "Modo avión"
msgid "On"
msgstr "Enchegau"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Cambear d'usuario"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Trancar sesion"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Bloqueyo d'Orientación"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Amortar"
@@ -1430,27 +1433,27 @@ msgstr "Aplicacions"
msgid "Search"
msgstr "Mirar"
#: ../js/ui/windowAttentionHandler.js:20
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
msgid "“%s” is ready"
msgstr "\"%s\" ye parau"
#: ../js/ui/windowManager.js:63
#: ../js/ui/windowManager.js:65
msgid "Do you want to keep these display settings?"
msgstr "Quiers mantener istas opcions de pantalla?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:82
#: ../js/ui/windowManager.js:84
msgid "Revert Settings"
msgstr "Revertir as opcions"
#: ../js/ui/windowManager.js:86
#: ../js/ui/windowManager.js:88
msgid "Keep Changes"
msgstr "Mantener os cambeos"
#: ../js/ui/windowManager.js:105
#: ../js/ui/windowManager.js:107
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@@ -1459,7 +1462,7 @@ msgstr[1] "Os cambeos d'as opcions serán revertius en %d segundos"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:660
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1496,48 +1499,14 @@ msgstr "Siempre veyible"
msgid "Always on Visible Workspace"
msgstr "Siempre en l'aria de treballo veyible"
#: ../js/ui/windowMenu.js:105
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Left"
msgstr "Mover a l'aria de treballo d'a cucha"
#: ../js/ui/windowMenu.js:110
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Right"
msgstr "Mover a l'aria de treballo d'a dreita"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Mover ta l'aria de treballo d'alto"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Mover ta l'aria de treballo d'abaixo"
#: ../js/ui/windowMenu.js:136
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Monitor Up"
msgstr "Mover a la pantalla d'alto"
#: ../js/ui/windowMenu.js:142
#, fuzzy
#| msgid "Move to Workspace Down"
msgid "Move to Monitor Down"
msgstr "Mover a la pantalla d'abaixo"
#: ../js/ui/windowMenu.js:148
#, fuzzy
msgid "Move to Monitor Left"
msgstr "Mover a la pantalla d'a cucha"
#: ../js/ui/windowMenu.js:154
#, fuzzy
msgid "Move to Monitor Right"
msgstr "Mover a la pantalla d'a dreita"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Calandario d'Evolution"
@@ -1592,11 +1561,11 @@ msgstr "Desconoxiu"
msgid "Failed to launch “%s”"
msgstr "Ha fallau en aventar \"%s\""
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "As claus de paso no coinciden."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "A clau de paso no puede estar vueda"
@@ -1834,6 +1803,14 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "The maximum accuracy level of location."
#~ msgstr "O maximo libel de precisión d'ubicación."
#~| msgid ""
#~| "Configures the maximum level of location accuracy applications are "
#~| "allowed to see. Valid options are 'off' (disable location tracking), "
#~| "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
#~| "requires GPS receiver). Please keep in mind that this only controls what "
#~| "Geoclue will allow applications to see and they can find user's location "
#~| "on their own using network resources (albeit with street-level accuracy "
#~| "at best)."
#~ msgid ""
#~ "Configures the maximum level of location accuracy applications are "
#~ "allowed to see. Valid options are 'off' (disable location tracking), "
@@ -1845,8 +1822,8 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgstr ""
#~ "Configura o ran maximo de precisión d'ubicación que as aplicacions "
#~ "pueden veyer. As opcions validas son 'off' (seguimiento d'ubicación "
#~ "desenchegau), 'country', 'city', 'neighborhood', 'street', and 'exact' "
#~ "(typicament requier GPS "
#~ "desenchegau), 'country', 'city', 'neighborhood', 'street', and "
#~ "'exact' (typicament requier GPS "
#~ msgid "Arrangement of buttons on the titlebar"
#~ msgstr "Orden d'os botons en a barra de titol"
@@ -1991,6 +1968,7 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "Session…"
#~ msgstr "Sesión…"
#~| msgid "Power Off"
#~ msgid "Power"
#~ msgstr "Enerchía"
@@ -2154,9 +2132,11 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~| msgid "AC adapter"
#~ msgid "AC Adapter"
#~ msgstr "Adaptador de corrient"
#~| msgid "Laptop battery"
#~ msgid "Laptop Battery"
#~ msgstr "Bateria d'o portatil"
@@ -2169,9 +2149,11 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "PDA"
#~ msgstr "PDA"
#~| msgid "Cell phone"
#~ msgid "Cell Phone"
#~ msgstr "Telefono movil"
#~| msgid "Media player"
#~ msgid "Media Player"
#~ msgstr "Reproductor multimeya"
@@ -2181,6 +2163,7 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "Computer"
#~ msgstr "Equipo"
#~| msgid "Unknown"
#~ msgctxt "device"
#~ msgid "Unknown"
#~ msgstr "Desconoxiu"

524
po/ca.po

File diff suppressed because it is too large Load Diff

236
po/cs.po
View File

@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-07-24 08:09+0000\n"
"PO-Revision-Date: 2015-07-24 22:04+0200\n"
"POT-Creation-Date: 2015-03-13 20:44+0000\n"
"PO-Revision-Date: 2015-03-14 00:03+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@@ -134,16 +134,15 @@ msgstr "Číslo aktuálně zvolené stránky ve výběru aplikací."
msgid "History for command (Alt-F2) dialog"
msgstr "Historie příkazového dialogového okna (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
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid "History for the looking glass dialog"
msgstr "Historie dialogového okna „looking glass“ (Alt-F2)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "V nabídce uživatele vždy zobrazovat položku „Odhlásit“."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@@ -151,14 +150,14 @@ msgstr ""
"Tento klíč ruší automatické skrývání položky nabídky „Odhlásit“ v situacích "
"s jedním uživatelem a jedním sezením."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Zdali si pamatovat heslo k připojování šifrovaných či vzdálených souborových "
"systémů"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
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 "
@@ -170,76 +169,76 @@ msgstr ""
"zaškrtávací pole „Pamatovat si heslo“. Tento klíč určuje výchozí stav této "
"volby."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Show the week date in the calendar"
msgstr "Zobrazovat v kalendáři čísla týdnů"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "If true, display the ISO week date in the calendar."
msgstr "Je-li zapnuto, zobrazovat v kalendáři čísla týdnů dle ISO."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to open the application menu"
msgstr "Klávesová zkratka otevírající nabidku aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu."
msgstr "Klávesová zkratka sloužící k otevření nabídky aplikací."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klávesová zkratka otevírající zobrazení aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Klávesová zkratka sloužící k otevření nabídky aplikací v Přehledu činností."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Keybinding to open the overview"
msgstr "Klávesová zkratka otevírající přehled"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the Activities Overview."
msgstr "Klávesová zkratka sloužící k otevření přehledu činností"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Klávesová zkratka přepínající viditelnost seznamu upozornění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Klávesová zkratka sloužící k přepnutí viditelnosti seznamu upozornění."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to focus the active notification"
msgstr "Klávesová zkratka zaměřující aktivního upozornění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification."
msgstr "Klávesová zkratka sloužící k zaměření aktivního upozornění."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Klávesová zkratka k pozastavení a opětovnému spuštění všech běžících animací "
"tweens; pro účely ladění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Which keyboard to use"
msgstr "Která klávesnice se má používat"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The type of keyboard to use."
msgstr "Typ klávesnice, který se má používat."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "Limit switcher to current workspace."
msgstr "Omezit přepínání jen na aktuální plochu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@@ -247,11 +246,11 @@ msgstr ""
"Je-li zapnuto, objeví se v přepínači aplikací jen ty, co jsou na aktuální "
"pracovní ploše. V opačném případě jsou zahrnuty všechny aplikace."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "The application icon mode."
msgstr "Režim ikon aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@@ -261,7 +260,7 @@ msgstr ""
"only“ (zobrazí náhled okna), „app-icon-only“ (zobrazí pouze ikonu aplikace) "
"a „both“ (zobrazí náhled i ikonu)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@@ -269,28 +268,28 @@ msgstr ""
"Je-li zapnuto, objeví se v přepínači oken jen ty, co jsou na aktuální "
"pracovní ploše. V opačném případě jsou zahrnuta všechna okna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "Attach modal dialog to the parent window"
msgstr "Modální dialogová okna připojovat k rodičovskému oknu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Když běží GNOME Shell, tento klíč přepíše klíč v org.gnome.mutter"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Okna upuštěná u okraje obrazovky nechat řadit jako dlaždice"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces are managed dynamically"
msgstr "Pracovní plochy jsou spravovány dynamicky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces only on primary monitor"
msgstr "Pracovní plochy jen na hlavním monitoru"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukazatele"
@@ -298,13 +297,13 @@ msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukaza
msgid "Network Login"
msgstr "Přihlášení do sítě"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Nastala chyba při načítání dialogového okna předvoleb pro rozšíření %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Rozšíření GNOME Shell"
@@ -315,39 +314,39 @@ msgstr "Rozšíření GNOME Shell"
msgid "Cancel"
msgstr "Zrušit"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Následující"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Odemknout"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Přihlásit se"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Vybrat sezení"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:421
msgid "Not listed?"
msgstr "Nejste na seznamu?"
#: ../js/gdm/loginDialog.js:847
#: ../js/gdm/loginDialog.js:830
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(např. uživatel nebo %s)"
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:835 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Uživatelské jméno: "
#: ../js/gdm/loginDialog.js:1180
#: ../js/gdm/loginDialog.js:1170
msgid "Login Window"
msgstr "Přihlašovací okno"
@@ -440,31 +439,31 @@ msgstr "%e. %B %Y, %l%M%p"
msgid "Web Authentication Redirect"
msgstr "Přesměrováno na ověření přes web"
#: ../js/ui/appDisplay.js:789
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Zde se objeví často používané aplikace"
#: ../js/ui/appDisplay.js:909
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Časté"
#: ../js/ui/appDisplay.js:916
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Všechny"
#: ../js/ui/appDisplay.js:1845
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Nové okno"
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Odstranit z oblíbených"
#: ../js/ui/appDisplay.js:1879
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Přidat mezi oblíbené"
#: ../js/ui/appDisplay.js:1889
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Zobrazit podrobnosti"
@@ -478,19 +477,15 @@ msgstr "%s byl přidán mezi oblíbené."
msgid "%s has been removed from your favorites."
msgstr "%s byl odstraněn z oblíbených."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Změnit pozadí…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Nastavení displeje"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Nastavení"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Změnit pozadí…"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -543,53 +538,53 @@ msgctxt "grid saturday"
msgid "S"
msgstr "So"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:563
msgid "Previous month"
msgstr "Předchozí měsíc"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:573
msgid "Next month"
msgstr "Následující měsíc"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:780
msgid "Week %V"
msgstr "Týden %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:1187
#: ../js/ui/calendar.js:1182
msgctxt "event list time"
msgid "All Day"
msgstr "Celý den"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1288
msgid "Clear section"
msgstr "Vymazat část"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1515
msgid "Events"
msgstr "Události"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1524
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1528
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1613
msgid "Notifications"
msgstr "Upozornění"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1764
msgid "No Notifications"
msgstr "Žádná upozornění"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1767
msgid "No Events"
msgstr "Žádné události"
@@ -725,7 +720,7 @@ msgstr "Ověření bohužel nebylo úspěšné. Zkuste to prosím znovu."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:775
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s je teď znám jako %s"
@@ -734,11 +729,11 @@ msgstr "%s je teď znám jako %s"
msgid "Windows"
msgstr "Okna"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Zobrazit aplikace"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Oblíbené"
@@ -914,16 +909,17 @@ msgstr "Instalovat"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Stáhnout a nainstalovat „%s“ z extensions.gnome.org?"
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:580
msgid "Keyboard"
msgstr "Klávesnice"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:59
#| msgid "Hide Text"
msgid "Hide tray"
msgstr "Skrýt pořadač"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:91
msgid "Status Icons"
msgstr "Stavové ikony"
@@ -979,7 +975,7 @@ msgstr "Zobrazit zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:2133
msgid "System Information"
msgstr "Informace o systému"
@@ -987,7 +983,7 @@ msgstr "Informace o systému"
msgid "Undo"
msgstr "Zpět"
#: ../js/ui/overview.js:117
#: ../js/ui/overview.js:124
msgid "Overview"
msgstr "Přehled"
@@ -995,7 +991,7 @@ msgstr "Přehled"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters. */
#: ../js/ui/overview.js:244
#: ../js/ui/overview.js:246
msgid "Type to search…"
msgstr "Vyhledávejte psaním…"
@@ -1021,7 +1017,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Zadejte příkaz:"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Zavřít"
@@ -1051,27 +1047,27 @@ msgstr[0] "%d nové upozornění"
msgstr[1] "%d nová upozornění"
msgstr[2] "%d nových upozornění"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Uzamknout"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "GNOME potřebuje uzamknout obrazovku"
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Nelze uzamknout obrazovku"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Zamknutí bylo zablokováno některou z aplikací"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Hledá se…"
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Žádné výsledky."
@@ -1135,11 +1131,11 @@ msgstr "Vícenásobné stisky kláves"
msgid "Mouse Keys"
msgstr "Myš klávesnicí"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Vysoký kontrast"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Styl velkého textu"
@@ -1174,7 +1170,7 @@ msgstr "Nepřipojeno"
msgid "Brightness"
msgstr "Jas"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:603
msgid "Show Keyboard Layout"
msgstr "Zobrazit rozložení klávesnice"
@@ -1385,23 +1381,23 @@ msgstr "Režim „letadlo“"
msgid "On"
msgstr "Zapnuto"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Přepnout uživatele"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Odhlásit se"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Zámek otočení"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Uspat do paměti"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Vypnout"
@@ -1433,27 +1429,27 @@ msgstr "Aplikace"
msgid "Search"
msgstr "Hledat"
#: ../js/ui/windowAttentionHandler.js:20
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
msgid "“%s” is ready"
msgstr "Připraveno „%s“"
#: ../js/ui/windowManager.js:63
#: ../js/ui/windowManager.js:65
msgid "Do you want to keep these display settings?"
msgstr "Chcete zachovat nastavení displeje?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:82
#: ../js/ui/windowManager.js:84
msgid "Revert Settings"
msgstr "Obnovit původní"
#: ../js/ui/windowManager.js:86
#: ../js/ui/windowManager.js:88
msgid "Keep Changes"
msgstr "Zachovat"
#: ../js/ui/windowManager.js:105
#: ../js/ui/windowManager.js:107
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@@ -1463,7 +1459,7 @@ msgstr[2] "Nastavení se obnoví na původní za %d sekund"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:660
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d×%d"
@@ -1500,38 +1496,14 @@ msgstr "Vždy nahoře"
msgid "Always on Visible Workspace"
msgstr "Vždy na viditelné ploše"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Přesunout o plochu doleva"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Přesunout o plochu doprava"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Přesunout o plochu výš"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Přesunout o plochu níž"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Přesunout o monitor výš"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Přesunout o monitor níž"
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Přesunout o monitor doleva"
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Přesunout o monitor doprava"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Kalendář Evolution"
@@ -1576,21 +1548,21 @@ msgstr "Použít pro přihlašovací obrazovku zadaný režim, např. „gdm“.
msgid "List possible modes"
msgstr "Vypsat možné režimy"
#: ../src/shell-app.c:239
#: ../src/shell-app.c:247
msgctxt "program"
msgid "Unknown"
msgstr "Neznámé"
#: ../src/shell-app.c:480
#: ../src/shell-app.c:488
#, c-format
msgid "Failed to launch “%s”"
msgstr "Nelze spustit „%s“"
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "Hesla si neodpovídají."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "Heslo nemůže být prázdné."

230
po/de.po
View File

@@ -21,16 +21,16 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-07-03 08:08+0000\n"
"PO-Revision-Date: 2015-07-03 19:24+0100\n"
"Last-Translator: Benjamin Steinwender <b@stbe.at>\n"
"POT-Creation-Date: 2015-03-22 08:38+0000\n"
"PO-Revision-Date: 2015-03-22 12:10+0100\n"
"Last-Translator: Bernd Homuth <dev@hmt.im>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
"Language: de_DE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.1\n"
"X-Generator: Gtranslator 2.91.6\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@@ -101,8 +101,8 @@ msgstr ""
"Die Erweiterungen der GNOME-Shell besitzen eine UUID-Eigenschaft. Dieser "
"Schlüssel listet Erweiterungen auf, welche geladen werden sollen. Jede zu "
"ladende Erweiterung muss in dieser Liste erscheinen. Sie können diese Liste "
"auch mit den D-Bus-Methoden EnableExtension und DisableExtension in org.gnome."
"Shell bearbeiten."
"auch mit den D-Bus-Methoden EnableExtension und DisableExtension in org."
"gnome.Shell bearbeiten."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Disables the validation of extension version compatibility"
@@ -113,8 +113,8 @@ msgstr ""
#: ../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."
"running version. Enabling this option will disable this check and try to "
"load all extensions regardless of the versions they claim to support."
msgstr ""
"GNOME-Shell lädt nur Erweiterungen, die die aktuelle Version unterstützen. "
"Durch Aktivieren dieser Option wird die interne Kompatibilitätsprüfung "
@@ -130,8 +130,8 @@ msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
"Programme, welche auf diese Bezeichner zutreffen, werden im Favoriten-Bereich "
"angezeigt."
"Programme, welche auf diese Bezeichner zutreffen, werden im Favoriten-"
"Bereich angezeigt."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "App Picker View"
@@ -162,7 +162,8 @@ msgstr ""
"»Abmelden« in Einzelbenutzer, Einzelsitzungssituationen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Whether to remember password for mounting encrypted or remote filesystems"
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Legt fest, ob Passwörter für eingehängte, verschlüsselte oder entfernte "
"Dateisysteme gespeichert werden"
@@ -170,13 +171,13 @@ msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
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."
"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 ""
"Die Shell wird ein Passwort anfragen, sobald ein verschlüsseltes Gerät oder "
"ein entferntes Dateisystem eingehängt wird. Falls das Passwort für die Zukunft "
"gespeichert werden kann, wird ein Ankreuzfeld »An Passwort erinnern« "
"ein entferntes Dateisystem eingehängt wird. Falls das Passwort für die "
"Zukunft gespeichert werden kann, wird ein Ankreuzfeld »An Passwort erinnern« "
"angeboten. Dieser Schlüssel stellt den Standardstatus für dieses Ankreuzfeld "
"ein."
@@ -238,8 +239,8 @@ msgstr "Tastenkombination zur Ausrichtung auf die aktiven Benachrichtigungen."
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Tastenkombination, die alle laufenden Zwischenbilder anhält und fortsetzt. Zur "
"Fehlerdiagnose."
"Tastenkombination, die alle laufenden Zwischenbilder anhält und fortsetzt. "
"Zur Fehlerdiagnose."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Which keyboard to use"
@@ -268,13 +269,13 @@ msgstr "Der Modus der Anwendungssymbole."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
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'."
"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 ""
"Legt fest, wie Fenster im Fensterwechsler dargestellt werden. Mögliche Werte "
"sind »thumbnail-only« (Vorschaubilder der Fenster werden angezeigt), »app-icon-"
"only« (Nur das Anwendungssymbol wird angezeigt) oder »both« (beides)."
"sind »thumbnail-only« (Vorschaubilder der Fenster werden angezeigt), »app-"
"icon-only« (Nur das Anwendungssymbol wird angezeigt) oder »both« (beides)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
@@ -289,7 +290,8 @@ msgid "Attach modal dialog to the parent window"
msgstr "Modalen Dialog an übergeordnetes Fenster binden"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Dieser Schlüssel überschreibt den Schlüssel in org.gnome.mutter, wenn die "
"GNOME-Shell läuft."
@@ -297,8 +299,8 @@ msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Größenanpassung aktivieren, wenn ein Fenster an die Bildschirmkante verschoben "
"wird"
"Größenanpassung aktivieren, wenn ein Fenster an die Bildschirmkante "
"verschoben wird"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces are managed dynamically"
@@ -317,12 +319,12 @@ msgstr ""
msgid "Network Login"
msgstr "Netzwerkanmeldung"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Beim Laden des Einstellungsdialogs für %s ist ein Fehler aufgetreten:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "GNOME-Shell-Erweiterungen"
@@ -333,39 +335,39 @@ msgstr "GNOME-Shell-Erweiterungen"
msgid "Cancel"
msgstr "Abbrechen"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Weiter"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Entsperren"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Anmelden"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Sitzung wählen"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:421
msgid "Not listed?"
msgstr "Nicht aufgeführt?"
#: ../js/gdm/loginDialog.js:847
#: ../js/gdm/loginDialog.js:830
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(z.B. Benutzer oder %s)"
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:835 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Benutzername:"
#: ../js/gdm/loginDialog.js:1180
#: ../js/gdm/loginDialog.js:1163
msgid "Login Window"
msgstr "Anmeldefenster"
@@ -459,31 +461,31 @@ msgstr "%e. %B %Y, %H:%M"
msgid "Web Authentication Redirect"
msgstr "Umleitung zu einer Internet-Anmeldung"
#: ../js/ui/appDisplay.js:789
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Häufig genutzte Anwendungen werden hier erscheinen"
#: ../js/ui/appDisplay.js:909
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Häufig"
#: ../js/ui/appDisplay.js:916
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1845
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Neues Fenster"
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Aus Favoriten entfernen"
#: ../js/ui/appDisplay.js:1879
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Zu Favoriten hinzufügen"
#: ../js/ui/appDisplay.js:1889
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Details anzeigen"
@@ -497,19 +499,15 @@ msgstr "%s wurde zu Ihren Favoriten hinzugefügt"
msgid "%s has been removed from your favorites."
msgstr "%s wurde aus Ihren Favoriten entfernt"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Hintergrund ändern …"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Anzeigeeinstellungen"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Einstellungen"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Hintergrund ändern …"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -577,7 +575,7 @@ msgstr "Woche %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:1187
#: ../js/ui/calendar.js:1183
msgctxt "event list time"
msgid "All Day"
msgstr "Ganztägig"
@@ -671,7 +669,8 @@ msgstr "Anmeldung für Funknetzwerk wird benötigt"
#: ../js/ui/components/networkAgent.js:659
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network “%s”."
"Passwords or encryption keys are required to access the wireless network "
"“%s”."
msgstr ""
"Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« "
"zuzugreifen."
@@ -743,7 +742,7 @@ msgstr "Entschuldigung, das hat nicht geklappt. Bitte versuchen Sie es erneut."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:728
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s heißt jetzt %s"
@@ -752,12 +751,12 @@ msgstr "%s heißt jetzt %s"
msgid "Windows"
msgstr "Fenster"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Anwendungen anzeigen"
# Würde ich so übernehmen, oder evtl. »Dock«.
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Dash"
@@ -924,16 +923,17 @@ msgstr "Installieren"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "»%s« von extensions.gnome.org herunterladen und installieren?"
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:724
msgid "Keyboard"
msgstr "Tastatur"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
#| msgid "Hide Text"
msgid "Hide tray"
msgstr "Ablage verbergen"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:104
msgid "Status Icons"
msgstr "Statussymbole"
@@ -989,7 +989,7 @@ msgstr "Quelle zeigen"
msgid "Web Page"
msgstr "Webseite"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:1507
msgid "System Information"
msgstr "Systeminformationen"
@@ -1031,7 +1031,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Bitte geben Sie einen Befehl ein"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Schließen"
@@ -1062,27 +1062,27 @@ msgid_plural "%d new notifications"
msgstr[0] "%d neue Benachrichtigung"
msgstr[1] "%d neue Benachrichtigungen"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Sperren"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "GNOME muss den Bildschirm sperren"
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Sperrung fehlgeschlagen"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Sperrung wurde von einer Anwendung blockiert"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Suche läuft …"
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Keine Ergebnisse."
@@ -1146,11 +1146,11 @@ msgstr "Tastenanschlagfunktion"
msgid "Mouse Keys"
msgstr "Tastaturmaus"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Hoher Kontrast"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Große Schrift"
@@ -1184,7 +1184,7 @@ msgstr "Nicht verbunden"
msgid "Brightness"
msgstr "Helligkeit"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:747
msgid "Show Keyboard Layout"
msgstr "Tastaturbelegung anzeigen"
@@ -1398,23 +1398,23 @@ msgstr "Flugzeugmodus"
msgid "On"
msgstr "An"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Benutzer wechseln"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Abmelden"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Hoch-/Querformats-Fixierung"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "In Bereitschaft versetzen"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Ausschalten"
@@ -1446,7 +1446,7 @@ msgstr "Anwendungen"
msgid "Search"
msgstr "Suchen"
#: ../js/ui/windowAttentionHandler.js:20
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
msgid "“%s” is ready"
msgstr "»%s« ist bereit"
@@ -1471,11 +1471,12 @@ msgstr "Beibehalten"
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "Die Änderungen der Einstellungen werden in %d Sekunde zurückgesetzt"
msgstr[1] "Die Änderungen der Einstellungen werden in %d Sekunden zurückgesetzt"
msgstr[1] ""
"Die Änderungen der Einstellungen werden in %d Sekunden zurückgesetzt"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:605
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1512,38 +1513,14 @@ msgstr "Immer im Vordergrund"
msgid "Always on Visible Workspace"
msgstr "Immer auf der sichtbaren Arbeitsfläche"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Eine Arbeitsfläche nach links bewegen"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Eine Arbeitsfläche nach rechts bewegen"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Eine Arbeitsfläche nach oben verschieben"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Eine Arbeitsfläche nach unten verschieben"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Auf den Bildschirm nach oben verschieben"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Auf den Bildschirm nach unten verschieben"
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Auf den Bildschirm nach links verschieben"
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Auf den Bildschirm nach rechts verschieben"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution-Kalender"
@@ -1597,11 +1574,11 @@ msgstr "Unbekannt"
msgid "Failed to launch “%s”"
msgstr "»%s« konnte nicht gestartet werden"
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "Passwörter stimmen nicht überein."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "Es muss ein Passwort angegeben werden"
@@ -1768,8 +1745,8 @@ msgstr "Der Dialog zur Anmeldung wurde vom Benutzer geschlossen"
#~ msgid ""
#~ "Connection has been replaced by a new connection using the same resource"
#~ msgstr ""
#~ "Die Verbindung wurde durch eine neue Verbindung mit der gleichen Ressource "
#~ "ersetzt"
#~ "Die Verbindung wurde durch eine neue Verbindung mit der gleichen "
#~ "Ressource ersetzt"
#~ msgid "The account already exists on the server"
#~ msgstr "Dieses Konto ist bereits auf dem Server vorhanden"
@@ -1791,9 +1768,9 @@ msgstr "Der Dialog zur Anmeldung wurde vom Benutzer geschlossen"
#~ "The length of the server certificate, or the depth of the server "
#~ "certificate chain, exceed the limits imposed by the cryptography library"
#~ msgstr ""
#~ "Die Länge des Server-Zertifikats oder die Tiefe der Server-Zertifikatskette "
#~ "überschreiten die durch die kryptografische Bibliothek gegebenen "
#~ "Beschränkungen"
#~ "Die Länge des Server-Zertifikats oder die Tiefe der Server-"
#~ "Zertifikatskette überschreiten die durch die kryptografische Bibliothek "
#~ "gegebenen Beschränkungen"
#~ msgid "Internal error"
#~ msgstr "Interner Fehler"
@@ -1842,28 +1819,29 @@ msgstr "Der Dialog zur Anmeldung wurde vom Benutzer geschlossen"
#~ msgstr "Maximale Ortsauflösung"
#~ msgid ""
#~ "Configures the maximum level of location accuracy applications are allowed "
#~ "to see. Valid options are 'off' (disable location tracking), 'country', "
#~ "'city', 'neighborhood', 'street', and 'exact' (typically requires GPS "
#~ "receiver). Please keep in mind that this only controls what GeoClue will "
#~ "allow applications to see and they can find user's location on their own "
#~ "using network resources (albeit with street-level accuracy at best)."
#~ "Configures the maximum level of location accuracy applications are "
#~ "allowed to see. Valid options are 'off' (disable location tracking), "
#~ "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
#~ "requires GPS receiver). Please keep in mind that this only controls what "
#~ "GeoClue will allow applications to see and they can find user's location "
#~ "on their own using network resources (albeit with street-level accuracy "
#~ "at best)."
#~ msgstr ""
#~ "Legt die maximale Ortsauflösung für Anwendungen fest. Gültige Werte sind "
#~ "»off« (Ortung deaktiviert), »country« (Land), »city« (Stadt), "
#~ "»neighborhood« (Nachbarschaft), »street« (Straße) und »exact« (genau, "
#~ "benötigt üblicherweise einen GPS-Empfänger). Bitte bedenken Sie, dass diese "
#~ "Einstellung nur festlegt, welche Informationen GeoClue an Anwendungen "
#~ "weitergibt. Die Anwendungen können jedoch selbst den Ort des Benutzers "
#~ "durch Analyse von Netzwerkressourcen ausfindig machen (jedoch im besten "
#~ "Fall mit Straßengenauigkeit)."
#~ "benötigt üblicherweise einen GPS-Empfänger). Bitte bedenken Sie, dass "
#~ "diese Einstellung nur festlegt, welche Informationen GeoClue an "
#~ "Anwendungen weitergibt. Die Anwendungen können jedoch selbst den Ort des "
#~ "Benutzers durch Analyse von Netzwerkressourcen ausfindig machen (jedoch "
#~ "im besten Fall mit Straßengenauigkeit)."
#~ msgid "Arrangement of buttons on the titlebar"
#~ msgstr "Anordnung der Knöpfe auf der Titelleiste"
#~ msgid ""
#~ "This key overrides the key in org.gnome.desktop.wm.preferences when running "
#~ "GNOME Shell."
#~ "This key overrides the key in org.gnome.desktop.wm.preferences when "
#~ "running GNOME Shell."
#~ msgstr ""
#~ "Dieser Schlüssel überschreibt den Schlüssel in org.gnome.desktop.wm."
#~ "preferences, wenn die GNOME-Shell läuft."

523
po/el.po

File diff suppressed because it is too large Load Diff

5538
po/es.po

File diff suppressed because it is too large Load Diff

1107
po/fr.po

File diff suppressed because it is too large Load Diff

1066
po/fur.po

File diff suppressed because it is too large Load Diff

516
po/gl.po

File diff suppressed because it is too large Load Diff

561
po/he.po

File diff suppressed because it is too large Load Diff

542
po/hu.po

File diff suppressed because it is too large Load Diff

105
po/is.po
View File

@@ -7,8 +7,8 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-04-24 08:08+0000\n"
"PO-Revision-Date: 2015-04-24 13:39+0000\n"
"POT-Creation-Date: 2015-03-25 08:50+0000\n"
"PO-Revision-Date: 2015-04-27 15:22+0000\n"
"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n"
"Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n"
"Language: is\n"
@@ -266,12 +266,12 @@ msgstr ""
msgid "Network Login"
msgstr "Innskráning á neti"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Villa kom upp við ræsingu kjörstillingaglugga fyrir %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "GNOME Shell Extension skeljarviðbætur"
@@ -282,16 +282,16 @@ msgstr "GNOME Shell Extension skeljarviðbætur"
msgid "Cancel"
msgstr "Hætta við"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Næsta"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Aflæsa"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Skrá inn"
@@ -407,31 +407,31 @@ msgstr "%d. %B %Y, kl. %H%M %p"
msgid "Web Authentication Redirect"
msgstr "Endurbeining á vefauðkenningu"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Oftast notuð forrit munu birtast hér"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Algengt"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Allt"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Nýr gluggi"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Fjarlægja úr Eftirlæti"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Bæta í Eftirlæti"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Sýna ítarlegri upplýsingar"
@@ -445,20 +445,15 @@ msgstr "%s var bætt við sem eftirlætisforrit."
msgid "%s has been removed from your favorites."
msgstr "%s var fjarlægt úr eftirlætisforritum."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Breyta _bakgrunni skjáborðs…"
#: ../js/ui/backgroundMenu.js:21
#| msgid "Privacy Settings"
msgid "Display Settings"
msgstr "Birtingarstillingar"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Stillingar"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Breyta _bakgrunni skjáborðs…"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -526,7 +521,7 @@ msgstr "Vika %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:1187
#: ../js/ui/calendar.js:1183
msgctxt "event list time"
msgid "All Day"
msgstr "Allan daginn"
@@ -695,7 +690,7 @@ msgstr "Æ, þetta virkaði ekki. Endilega reyndu aftur."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:728
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s er nú þekkt(ur) sem %s"
@@ -704,11 +699,11 @@ msgstr "%s er nú þekkt(ur) sem %s"
msgid "Windows"
msgstr "Gluggar"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Sýna forrit"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Dash"
@@ -877,17 +872,17 @@ msgstr "Setja inn"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Sækja og setja upp '%s' frá extensions.gnome.org?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:724
msgid "Keyboard"
msgstr "Lyklaborð"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
#| msgid "Hide Text"
msgid "Hide tray"
msgstr "Fela kerfisbakka"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:105
msgid "Status Icons"
msgstr "Táknmyndir fyrir stöðu"
@@ -943,7 +938,7 @@ msgstr "Skoða frumtexta"
msgid "Web Page"
msgstr "Vefsíða"
#: ../js/ui/messageTray.js:1496
#: ../js/ui/messageTray.js:1507
msgid "System Information"
msgstr "Kerfisupplýsingar"
@@ -985,7 +980,7 @@ msgstr ""
msgid "Enter a Command"
msgstr "Settu inn skipun"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Loka"
@@ -1013,7 +1008,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d ný skilaboð"
msgstr[1] "%d ný skilaboð"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Læsa"
@@ -1029,11 +1024,11 @@ msgstr "Gat ekki læst skjá"
msgid "Lock was blocked by an application"
msgstr "Læsing var hindruð af öðru forriti"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Leita..."
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Engar niðurstöður."
@@ -1097,11 +1092,11 @@ msgstr "Lyklaendurvarp"
msgid "Mouse Keys"
msgstr "Músarlyklar"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Mikil birtuskil"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Stór texti"
@@ -1135,7 +1130,7 @@ msgstr "Ótengt"
msgid "Brightness"
msgstr "Birtustig"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:747
msgid "Show Keyboard Layout"
msgstr "Birta lyklaborðsuppsetningu"
@@ -1346,23 +1341,23 @@ msgstr "Flugvélahamur"
msgid "On"
msgstr "Á"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Skipta um notanda"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Skrá út"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Stefnulás"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Hvíla"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Slökkva"
@@ -1423,7 +1418,7 @@ msgstr[1] "Breytingar á stillingum verða afturkallaðar eftir %d sekúndur"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1468,24 +1463,6 @@ msgstr "Færa yfir á vinnusvæði fyrir ofan"
msgid "Move to Workspace Down"
msgstr "Færa yfir á vinnusvæði fyrir neðan"
#: ../js/ui/windowMenu.js:127
#| msgid "Move to Workspace Up"
msgid "Move to Monitor Up"
msgstr "Færa á skjá fyrir ofan"
#: ../js/ui/windowMenu.js:133
#| msgid "Move to Workspace Down"
msgid "Move to Monitor Down"
msgstr "Færa á skjá fyrir neðan"
#: ../js/ui/windowMenu.js:139
msgid "Move to Monitor Left"
msgstr "Færa á skjá til vinstri"
#: ../js/ui/windowMenu.js:145
msgid "Move to Monitor Right"
msgstr "Færa á skjá til hægri"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution dagatal"

543
po/lt.po

File diff suppressed because it is too large Load Diff

214
po/nb.po
View File

@@ -7,10 +7,10 @@
# Torstein Adolf Winterseth <kvikende@fsfe.org>, 2010.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell 3.17.x\n"
"Project-Id-Version: gnome-shell 3.15.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-07-30 11:36+0200\n"
"PO-Revision-Date: 2015-07-30 11:36+0200\n"
"POT-Creation-Date: 2015-03-19 20:47+0100\n"
"PO-Revision-Date: 2015-03-19 20:56+0100\n"
"Last-Translator: Åka Sikrom <a4NOSPAMPLEASETHANKYOU@hush.com>\n"
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: Norwegian bokmål\n"
@@ -131,16 +131,15 @@ msgstr "Indeks for valgt visning i programvelgeren."
msgid "History for command (Alt-F2) dialog"
msgstr "Historikk for kommandodialog (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
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid "History for the looking glass dialog"
msgstr "Historikk for forstørrelsesglass-dialogen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Alltid vis menyoppføringen «Logg ut» i brukermenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@@ -148,12 +147,12 @@ msgstr ""
"Denne nøkkelen overstyrer skjuling av menyoppføringen «Logg ut» i "
"situasjonen én bruker, én sesjon."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr "Om passord til eksterne eller krypterte filsystemer skal huskes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
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 "
@@ -165,76 +164,76 @@ msgstr ""
"avkryssingsboks med teksten «Husk passord». Denne nøkkelen bestemmer "
"standardverdien for avkryssingsboksen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Show the week date in the calendar"
msgstr "Vis ukedato/ukenummer i kalender"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "If true, display the ISO week date in the calendar."
msgstr "Viser ISO-ukedato i kalenderen hvis «true»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to open the application menu"
msgstr "Tastaturbinding som åpner programmenyen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu."
msgstr "Tastaturbinding som åpner programmenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Tastaturbinding som åpner visningen «Vis programmer»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Tastaturbinding som åpner visningen «Vis programmer» i aktivitetsoversikten."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Keybinding to open the overview"
msgstr "Tastaturbinding som åpner oversikten"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the Activities Overview."
msgstr "Tastaturbinding som åpner aktivitetsoversikten."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Tastaturbinding som slår av/på visning av varslingsliste"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Tastaturbinding som slår av/på visning av varslingsliste."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to focus the active notification"
msgstr "Tastaturbinding som fokuserer aktiv varsling"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification."
msgstr "Tastaturbinding som fokuserer aktiv varsling."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Hurtigtast som stanser og fortsetter pågående bevegelser til "
"feilsøkingsformål"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Which keyboard to use"
msgstr "Tastatur som skal brukes"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The type of keyboard to use."
msgstr "Type tastatur som skal brukes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "Limit switcher to current workspace."
msgstr "Begrens programveksling til gjeldende arbeidsområde."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@@ -243,11 +242,11 @@ msgstr ""
"gjeldende arbeidsområder som vises i programveksleren. I motsatt fall kan du "
"veksle mellom programmer på tvers av arbeidsområder."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "The application icon mode."
msgstr "Ikonmodus for programmet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@@ -257,7 +256,7 @@ msgstr ""
"valgalternativer er «thumbnail-only» (viser miniatyrbilde av vinduet), «app-"
"icon-only» (viser bare programikonet) og «both» (viser begge forannevnte)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@@ -266,30 +265,30 @@ msgstr ""
"arbeidsområder som vises i programveksleren. I motsatt fall vises vinduer "
"fra alle arbeidsområder."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "Attach modal dialog to the parent window"
msgstr "Fest modal dialog til opphavsvinduet"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Denne nøkkelen overstyrer nøkkelen i org.gnome.mutter når GNOME Shell kjøres."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Del opp skjermkantene i fliser når brukeren drar og slipper vinduer på dem"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces are managed dynamically"
msgstr "Arbeidsområder håndteres dynamisk"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces only on primary monitor"
msgstr "Arbeidsområder vises kun på hovedskjerm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Utsett fokusendringer i musmodus til peker slutter å bevege seg"
@@ -297,12 +296,12 @@ msgstr "Utsett fokusendringer i musmodus til peker slutter å bevege seg"
msgid "Network Login"
msgstr "Nettverkspålogging"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Det oppsto en feil ved lasting av brukervalgdialog for %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Utvidelser for GNOME Shell"
@@ -313,35 +312,34 @@ msgstr "Utvidelser for GNOME Shell"
msgid "Cancel"
msgstr "Avbryt"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:435
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Neste"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Lås opp"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Logg inn"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Velg økt"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:421
msgid "Not listed?"
msgstr "Ikke listet?"
#. 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:847
#: ../js/gdm/loginDialog.js:830
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(f.eks. bruker eller %s)"
@@ -349,12 +347,12 @@ msgstr "(f.eks. bruker eller %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:852 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:835 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Brukernavn: "
#: ../js/gdm/loginDialog.js:1180
#: ../js/gdm/loginDialog.js:1163
msgid "Login Window"
msgstr "Innloggingsvindu"
@@ -462,31 +460,31 @@ msgstr "%d %B %Y, %H.%M"
msgid "Web Authentication Redirect"
msgstr "Omdirigering av autentisering på nett"
#: ../js/ui/appDisplay.js:789
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Ofte brukte programmer vises her"
#: ../js/ui/appDisplay.js:909
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Ofte"
#: ../js/ui/appDisplay.js:916
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1845
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Nytt vindu"
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Fjern fra favoritter"
#: ../js/ui/appDisplay.js:1879
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Legg til i favoritter"
#: ../js/ui/appDisplay.js:1889
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Vis detaljer"
@@ -500,19 +498,15 @@ msgstr "%s ble lagt til i favoritter."
msgid "%s has been removed from your favorites."
msgstr "%s ble fjernet fra favoritter."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Bytt bakgrunn …"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Innstillinger for skjerm"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Innstillinger"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Bytt bakgrunn …"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -580,7 +574,7 @@ msgstr "Uke %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:1187
#: ../js/ui/calendar.js:1183
msgctxt "event list time"
msgid "All Day"
msgstr "Hele dagen"
@@ -749,7 +743,7 @@ msgstr "Beklager, det virket ikke. Prøv igjen."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:728
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s er nå kjent som %s"
@@ -758,13 +752,13 @@ msgstr "%s er nå kjent som %s"
msgid "Windows"
msgstr "Vinduer"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Vis programmer"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Favoritter"
@@ -931,16 +925,16 @@ msgstr "Installer"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Vil du laste ned og installere «%s» fra extensions.gnome.org?"
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:724
msgid "Keyboard"
msgstr "Tastatur"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
msgid "Hide tray"
msgstr "Skjul statusområde"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:104
msgid "Status Icons"
msgstr "Statusikoner"
@@ -996,7 +990,7 @@ msgstr "Vis kildekode"
msgid "Web Page"
msgstr "Nettside"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:1507
msgid "System Information"
msgstr "Systeminformasjon"
@@ -1004,7 +998,7 @@ msgstr "Systeminformasjon"
msgid "Undo"
msgstr "Angre"
#: ../js/ui/overview.js:117
#: ../js/ui/overview.js:124
msgid "Overview"
msgstr "Oversikt"
@@ -1012,7 +1006,7 @@ msgstr "Oversikt"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/overview.js:244
#: ../js/ui/overview.js:246
msgid "Type to search…"
msgstr "Skriv for å søke …"
@@ -1043,7 +1037,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Skriv inn en kommando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Lukk"
@@ -1071,11 +1065,11 @@ msgid_plural "%d new notifications"
msgstr[0] "%d ny varsling"
msgstr[1] "%d nye varslinger"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Lås"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "GNOME må låse skjermen"
@@ -1086,19 +1080,19 @@ msgstr "GNOME må låse skjermen"
#.
#. 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:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Klarte ikke å låse"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Låsing ble stoppet av et program"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Søker …"
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Ingen resultater."
@@ -1162,11 +1156,11 @@ msgstr "Spretne taster"
msgid "Mouse Keys"
msgstr "Mustaster"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Høy kontrast"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Stor tekst"
@@ -1202,7 +1196,7 @@ msgstr "Ikke koblet til"
msgid "Brightness"
msgstr "Lysstyrke"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:747
msgid "Show Keyboard Layout"
msgstr "Vis tastaturutforming"
@@ -1420,23 +1414,23 @@ msgstr "Flymodus"
msgid "On"
msgstr "På"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Bytt bruker"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Logg ut"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Lås for orientering"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Hvilemodus"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Slå av"
@@ -1468,27 +1462,27 @@ msgstr "Programmer"
msgid "Search"
msgstr "Søk"
#: ../js/ui/windowAttentionHandler.js:20
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
msgid "“%s” is ready"
msgstr "«%s» er klar"
#: ../js/ui/windowManager.js:63
#: ../js/ui/windowManager.js:65
msgid "Do you want to keep these display settings?"
msgstr "Vil du beholde disse skjerminnstillingene?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#.
#: ../js/ui/windowManager.js:82
#: ../js/ui/windowManager.js:84
msgid "Revert Settings"
msgstr "Forkast innstillinger"
#: ../js/ui/windowManager.js:86
#: ../js/ui/windowManager.js:88
msgid "Keep Changes"
msgstr "Behold endringer"
#: ../js/ui/windowManager.js:105
#: ../js/ui/windowManager.js:107
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@@ -1497,7 +1491,7 @@ msgstr[1] "Endringer i innstillingene forkastes om %d sekunder"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height.
#: ../js/ui/windowManager.js:660
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1534,38 +1528,14 @@ msgstr "Alltid øverst"
msgid "Always on Visible Workspace"
msgstr "Alltid på synlig arbeidsområde"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Gå til arbeidsområdet til venstre"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Gå til arbeidsområdet til høyre"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Gå til arbeidsområdet over"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Gå til arbeidsområdet under"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Flytt til skjermen over"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Flytt til skjermen under"
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Flytt til skjermen til venstre"
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Flytt til skjermen til høyre"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution kalender"
@@ -1618,11 +1588,11 @@ msgstr "Ukjent"
msgid "Failed to launch “%s”"
msgstr "Klarte ikke å starte «%s»"
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "Passordene er ikke like."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "Passordet kan ikke være tomt"

511
po/nl.po

File diff suppressed because it is too large Load Diff

4602
po/oc.po

File diff suppressed because it is too large Load Diff

558
po/pa.po

File diff suppressed because it is too large Load Diff

528
po/pl.po

File diff suppressed because it is too large Load Diff

1758
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

513
po/ru.po

File diff suppressed because it is too large Load Diff

507
po/sk.po

File diff suppressed because it is too large Load Diff

168
po/sl.po
View File

@@ -9,18 +9,18 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-07-08 08:07+0000\n"
"PO-Revision-Date: 2015-07-08 15:46+0100\n"
"POT-Creation-Date: 2015-03-15 08:36+0000\n"
"PO-Revision-Date: 2015-03-15 09:41+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: sl\n"
"Language: Slovenian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n"
"%100==4 ? 3 : 0);\n"
"X-Poedit-SourceCharset: utf-8\n"
"X-Generator: Poedit 1.7.5\n"
"X-Generator: Poedit 1.5.4\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@@ -302,12 +302,12 @@ msgstr ""
msgid "Network Login"
msgstr "Omrežna prijava"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Prišlo je do napake med nalaganjem pogovornega okna z možnosti za %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Razširitve lupine Gnome"
@@ -318,39 +318,39 @@ msgstr "Razširitve lupine Gnome"
msgid "Cancel"
msgstr "Prekliči"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Naslednji"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Odkleni"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Prijava"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Izbor seje"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:421
msgid "Not listed?"
msgstr "Ali je ni na seznamu?"
#: ../js/gdm/loginDialog.js:847
#: ../js/gdm/loginDialog.js:830
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(na primer, uporabnika ali %s)"
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:835 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Uporabniško ime: "
#: ../js/gdm/loginDialog.js:1180
#: ../js/gdm/loginDialog.js:1170
msgid "Login Window"
msgstr "Prijavno okno"
@@ -443,31 +443,31 @@ msgstr "%B %d %Y, %l%M %p"
msgid "Web Authentication Redirect"
msgstr "Preusmeritev spletnega overjanja"
#: ../js/ui/appDisplay.js:789
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Pogosto uporabljeni programi bodo prikazani tu"
#: ../js/ui/appDisplay.js:909
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Pogosto"
#: ../js/ui/appDisplay.js:916
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Vse"
#: ../js/ui/appDisplay.js:1845
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Novo okno"
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Odstrani iz priljubljenih"
#: ../js/ui/appDisplay.js:1879
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Dodaj med priljubljene"
#: ../js/ui/appDisplay.js:1889
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Pokaži besedilo"
@@ -481,19 +481,15 @@ msgstr "Program \"%s\" je dodan med priljubljeno."
msgid "%s has been removed from your favorites."
msgstr "Program \"%s\" je odstranjen iz priljubljenih."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Spremeni ozadje ..."
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Nastavitve zaslona"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Nastavitve"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Spremeni ozadje ..."
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -546,53 +542,53 @@ msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:563
msgid "Previous month"
msgstr "Predhodni mesec"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:573
msgid "Next month"
msgstr "Naslednji mesec"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:780
msgid "Week %V"
msgstr "Teden %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:1187
#: ../js/ui/calendar.js:1182
msgctxt "event list time"
msgid "All Day"
msgstr "Celodnevno"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1288
msgid "Clear section"
msgstr "Počisti odsek"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1515
msgid "Events"
msgstr "Dogodki"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1524
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %m."
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1528
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1613
msgid "Notifications"
msgstr "Obvestila"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1764
msgid "No Notifications"
msgstr "Ni obvestil"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1767
msgid "No Events"
msgstr "Ni dogodkov"
@@ -728,7 +724,7 @@ msgstr "Dejanje je spodletelo. Poskusite znova."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:775
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s je sedaj znan kot v %s"
@@ -737,11 +733,11 @@ msgstr "%s je sedaj znan kot v %s"
msgid "Windows"
msgstr "Okna"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Pokaži programe"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Pregledna plošča"
@@ -920,16 +916,16 @@ msgstr "Namesti"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Prejmi in namesti “%s” preko povezave na extensions.gnome.org?"
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:580
msgid "Keyboard"
msgstr "Tipkovnica"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
msgid "Hide tray"
msgstr "Skrij sistemsko vrstico"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:104
msgid "Status Icons"
msgstr "Ikone stanja"
@@ -985,7 +981,7 @@ msgstr "Poglej vir"
msgid "Web Page"
msgstr "Spletna stran"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:2133
msgid "System Information"
msgstr "Podrobnosti sistema"
@@ -1027,7 +1023,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Vnos ukaza"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Zapri"
@@ -1059,27 +1055,27 @@ msgstr[1] "%d novo obvestilo"
msgstr[2] "%d novi obvestili"
msgstr[3] "%d nova obvestila"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Zakleni"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "Zakleniti je treba zaslon"
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Zaklep ni mogoč"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Zaklep je preprečil program"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Iskanje ..."
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Ni najdenih zadetkov."
@@ -1143,11 +1139,11 @@ msgstr "Odskočne tipke"
msgid "Mouse Keys"
msgstr "Miškine tipke"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Visok kontrast"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Veliko besedilo"
@@ -1183,7 +1179,7 @@ msgstr "Ni vzpostavljene povezave"
msgid "Brightness"
msgstr "Svetlost"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:603
msgid "Show Keyboard Layout"
msgstr "Pokaži razporeditev tipkovnice"
@@ -1394,23 +1390,23 @@ msgstr "Način letala"
msgid "On"
msgstr "Povezano"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Preklopi uporabnika"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Odjava"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Zaklep položaja"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Zaustavi"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Izklop"
@@ -1442,27 +1438,27 @@ msgstr "Programi"
msgid "Search"
msgstr "Poišči"
#: ../js/ui/windowAttentionHandler.js:20
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
msgid "“%s” is ready"
msgstr "“%s” storitev je pripravljena"
#: ../js/ui/windowManager.js:63
#: ../js/ui/windowManager.js:65
msgid "Do you want to keep these display settings?"
msgstr "Ali želite ohraniti te nastavitve zaslona?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:82
#: ../js/ui/windowManager.js:84
msgid "Revert Settings"
msgstr "Povrni nastavitve"
#: ../js/ui/windowManager.js:86
#: ../js/ui/windowManager.js:88
msgid "Keep Changes"
msgstr "Sledi spremembam"
#: ../js/ui/windowManager.js:105
#: ../js/ui/windowManager.js:107
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@@ -1473,7 +1469,7 @@ msgstr[3] "Spremembe nastavitev bodo povrnjene v %d sekundah."
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:604
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1510,38 +1506,14 @@ msgstr "Vedno na vrhu"
msgid "Always on Visible Workspace"
msgstr "Vedno na dejavni delovni površini"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Premakni na delovno površino na levi"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Premakni na delovno površino na desni"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Premakni na zgornjo delovno površino"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Premakni na spodnjo delovno površino"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "\t"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Premakni na zaslon spodaj"
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Premakni na zaslon levo"
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Premakni na zaslon desno"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Koledar Evolution "
@@ -1598,11 +1570,11 @@ msgstr "Neznano"
msgid "Failed to launch “%s”"
msgstr "Zaganjanje “%s” je spodletelo"
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "Gesli se ne skladata."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "Geslo ne more biti prazno"

116
po/sv.po
View File

@@ -12,16 +12,16 @@ msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-05-13 20:03+0000\n"
"PO-Revision-Date: 2015-05-14 12:13+0100\n"
"Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
"POT-Creation-Date: 2015-03-17 17:18+0000\n"
"PO-Revision-Date: 2015-03-17 19:13+0100\n"
"Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n"
"Language-Team: svenska <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.7.6\n"
"X-Generator: Poedit 1.7.3\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@@ -298,12 +298,12 @@ msgstr "Fördröj fokusändringar i musläge tills pekare slutar röra sig"
msgid "Network Login"
msgstr "Nätverksinloggning"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Det uppstod ett fel vid inläsning av inställningsdialogen för %s:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Tillägg för GNOME-skal"
@@ -314,39 +314,39 @@ msgstr "Tillägg för GNOME-skal"
msgid "Cancel"
msgstr "Avbryt"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Nästa"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Lås upp"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Logga in"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Välj session"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:420
msgid "Not listed?"
msgstr "Inte listad?"
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:829
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(till exempel användare eller %s)"
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:834 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Användarnamn: "
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1162
msgid "Login Window"
msgstr "Inloggningsfönster"
@@ -439,31 +439,31 @@ msgstr "%d %B %Y, %l%M%p"
msgid "Web Authentication Redirect"
msgstr "Omdirigering för webbautentisering"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Ofta använda program kommer visas här"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Ofta använda"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Alla"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Nytt fönster"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Ta bort från favoriter"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Lägg till som favorit"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Visa detaljer"
@@ -477,19 +477,15 @@ msgstr "%s har lagts till i dina favoriter."
msgid "%s has been removed from your favorites."
msgstr "%s har tagits bort från dina favoriter."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Ändra bakgrund…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Skärminställningar"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Inställningar"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Ändra bakgrund…"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -557,7 +553,7 @@ msgstr "Vecka %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:1187
#: ../js/ui/calendar.js:1183
msgctxt "event list time"
msgid "All Day"
msgstr "Hela dagen"
@@ -724,7 +720,7 @@ msgstr "Tyvärr, det fungerade inte. Försök igen."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:728
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s är nu känd som %s"
@@ -733,11 +729,11 @@ msgstr "%s är nu känd som %s"
msgid "Windows"
msgstr "Fönster"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Visa program"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Snabbstartspanel"
@@ -905,16 +901,16 @@ msgstr "Installera"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Hämta och installera ”%s” från extensions.gnome.org?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:724
msgid "Keyboard"
msgstr "Tangentbord"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:64
msgid "Hide tray"
msgstr "Dölj aktivitetsfält"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:104
msgid "Status Icons"
msgstr "Statusikoner"
@@ -970,7 +966,7 @@ msgstr "Visa källa"
msgid "Web Page"
msgstr "Webbsida"
#: ../js/ui/messageTray.js:1504
#: ../js/ui/messageTray.js:1507
msgid "System Information"
msgstr "Systeminformation"
@@ -1012,7 +1008,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Ange ett kommando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Stäng"
@@ -1040,7 +1036,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d ny avisering"
msgstr[1] "%d nya aviseringar"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Lås"
@@ -1056,11 +1052,11 @@ msgstr "Kunde inte låsa"
msgid "Lock was blocked by an application"
msgstr "Låsning hindrades av ett program"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Söker…"
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Inga sökträffar."
@@ -1124,11 +1120,11 @@ msgstr "Studsande tangenter"
msgid "Mouse Keys"
msgstr "Mustangenter"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Hög kontrast"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Stor text"
@@ -1162,7 +1158,7 @@ msgstr "Ej ansluten"
msgid "Brightness"
msgstr "Ljusstyrka"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:747
msgid "Show Keyboard Layout"
msgstr "Visa tangentbordslayout"
@@ -1374,23 +1370,23 @@ msgstr "Flygplansläge"
msgid "On"
msgstr "På"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Växla användare"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Logga ut"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Skärmrotation"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Vänteläge"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Stäng av"
@@ -1451,7 +1447,7 @@ msgstr[1] "Inställningarna kommer återställas om %d sekunder"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1496,22 +1492,6 @@ msgstr "Flytta till arbetsyta ovan"
msgid "Move to Workspace Down"
msgstr "Flytta till arbetsyta nedan"
#: ../js/ui/windowMenu.js:127
msgid "Move to Monitor Up"
msgstr "Flytta till skärm uppåt"
#: ../js/ui/windowMenu.js:133
msgid "Move to Monitor Down"
msgstr "Flytta till skärm nedåt"
#: ../js/ui/windowMenu.js:139
msgid "Move to Monitor Left"
msgstr "Flytta till skärm åt vänster"
#: ../js/ui/windowMenu.js:145
msgid "Move to Monitor Right"
msgstr "Flytta till skärm åt höger"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution-kalender"

163
po/tg.po
View File

@@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: Tajik Gnome\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-06-24 20:04+0000\n"
"PO-Revision-Date: 2015-06-25 10:20+0500\n"
"POT-Creation-Date: 2015-03-13 20:44+0000\n"
"PO-Revision-Date: 2015-03-14 09:50+0500\n"
"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
"Language-Team: \n"
"Language: tg\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.7.5\n"
"X-Generator: Poedit 1.6.5\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@@ -305,14 +305,14 @@ msgstr ""
msgid "Network Login"
msgstr "Воридшавии шабакавӣ"
#: ../js/extensionPrefs/main.js:122
#: ../js/extensionPrefs/main.js:123
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Ҳангоми боркунии равзанаи гуфтугӯи хусусиятҳо барои %s хатогие ба вуҷуд "
"омадааст:"
#: ../js/extensionPrefs/main.js:154
#: ../js/extensionPrefs/main.js:155
msgid "GNOME Shell Extensions"
msgstr "Пасвандҳои восити GNOME"
@@ -323,39 +323,39 @@ msgstr "Пасвандҳои восити GNOME"
msgid "Cancel"
msgstr "Бекор кардан"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
msgid "Next"
msgstr "Навбатӣ"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Кушодан"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:215
msgctxt "button"
msgid "Sign In"
msgstr "Ворид шудан"
#: ../js/gdm/loginDialog.js:281
#: ../js/gdm/loginDialog.js:280
msgid "Choose Session"
msgstr "Интихоби ҷаласа"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:421
msgid "Not listed?"
msgstr "Вуҷуд надора?"
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:830
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(масалан, корбар ё %s)"
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:835 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Номи корбар:"
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1170
msgid "Login Window"
msgstr "Равзанаи воридшавӣ"
@@ -448,31 +448,31 @@ msgstr "%B %d %Y, %l%M %p"
msgid "Web Authentication Redirect"
msgstr "Бозфиристодани санҷиши ҳаққонияти веб"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:792
msgid "Frequently used applications will appear here"
msgstr "Барномаҳои бештар истифодашуда ин ҷо намоиш дода мешаванд"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:912
msgid "Frequent"
msgstr "Роиҷ"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:919
msgid "All"
msgstr "Ҳама"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1850
msgid "New Window"
msgstr "Равзанаи нав"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
msgid "Remove from Favorites"
msgstr "Тоза кардан аз Баргузидаҳо"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1884
msgid "Add to Favorites"
msgstr "Илова кардан ба Баргузидаҳо"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1894
msgid "Show Details"
msgstr "Намоиш додани тафсилот"
@@ -486,19 +486,15 @@ msgstr "%s ба баргузидаҳои шумо илова шудааст."
msgid "%s has been removed from your favorites."
msgstr "%s аз баргузидаҳои шумо тоза шудааст."
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Тағйир додани пазсамина..."
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Танзимоти дисплей"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Танзимот"
#: ../js/ui/backgroundMenu.js:21
msgid "Change Background…"
msgstr "Тағйир додани пазсамина..."
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@@ -551,53 +547,53 @@ msgctxt "grid saturday"
msgid "S"
msgstr "Ш"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:563
msgid "Previous month"
msgstr "Моҳи қаблӣ"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:573
msgid "Next month"
msgstr "Моҳи навбатӣ"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:780
msgid "Week %V"
msgstr "Ҳафтаи %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:1187
#: ../js/ui/calendar.js:1182
msgctxt "event list time"
msgid "All Day"
msgstr "Тамоми рӯз"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1288
msgid "Clear section"
msgstr "Пок кардани қисмат"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1515
msgid "Events"
msgstr "Рӯйдодҳо"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1524
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1528
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %B %d, %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1613
msgid "Notifications"
msgstr "Огоҳиҳо"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1764
msgid "No Notifications"
msgstr "Ягон огоҳӣ нест"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1767
msgid "No Events"
msgstr "Ягон рӯйдод нест"
@@ -733,7 +729,7 @@ msgstr "Мутаассифона, ин амал иҷро нашуд. Лутфа
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:775
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s аллакой бо номи %s номида мешавад"
@@ -742,11 +738,11 @@ msgstr "%s аллакой бо номи %s номида мешавад"
msgid "Windows"
msgstr "Равзанаҳо"
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
msgid "Show Applications"
msgstr "Намоиш додани барномаҳо"
#: ../js/ui/dash.js:449
#: ../js/ui/dash.js:453
msgid "Dash"
msgstr "Рах"
@@ -914,16 +910,17 @@ msgstr "Насб кардан"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "“%s”-ро аз extensions.gnome.org боргирӣ ва насб мекунед?"
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:580
msgid "Keyboard"
msgstr "Клавиатура"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:66
#: ../js/ui/legacyTray.js:59
#| msgid "Hide Text"
msgid "Hide tray"
msgstr "Пинҳон кардани лавҳа"
#: ../js/ui/legacyTray.js:107
#: ../js/ui/legacyTray.js:91
msgid "Status Icons"
msgstr "Нишонаҳои вазъият"
@@ -979,7 +976,7 @@ msgstr "Намоиш додани манбаъ"
msgid "Web Page"
msgstr "Саҳифаи веб"
#: ../js/ui/messageTray.js:1486
#: ../js/ui/messageTray.js:2133
msgid "System Information"
msgstr "Маълумоти система"
@@ -1021,7 +1018,7 @@ msgstr "toggle-switch-us"
msgid "Enter a Command"
msgstr "Фармонеро ворид кунед"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
msgid "Close"
msgstr "Пӯшидан"
@@ -1049,27 +1046,27 @@ msgid_plural "%d new notifications"
msgstr[0] "%d огоҳии нав"
msgstr[1] "%d огоҳии нав"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Қулф кардан"
#: ../js/ui/screenShield.js:684
#: ../js/ui/screenShield.js:668
msgid "GNOME needs to lock the screen"
msgstr "GNOME бояд экранро қулф кунад"
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Қулф карда намешавад"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Қулф аз тарави барнома баста шудааст"
#: ../js/ui/search.js:617
#: ../js/ui/search.js:616
msgid "Searching…"
msgstr "Ҷустуҷӯ рафта истодааст..."
#: ../js/ui/search.js:619
#: ../js/ui/search.js:618
msgid "No results."
msgstr "Ягон натиҷа нест."
@@ -1133,11 +1130,11 @@ msgstr "Тугмаҳои ҷастухез"
msgid "Mouse Keys"
msgstr "Тугмаҳои муш"
#: ../js/ui/status/accessibility.js:167
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Контрасти баланд"
#: ../js/ui/status/accessibility.js:202
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Матни бузург"
@@ -1171,7 +1168,7 @@ msgstr "Пайваст нашудааст"
msgid "Brightness"
msgstr "Дурахшонӣ"
#: ../js/ui/status/keyboard.js:736
#: ../js/ui/status/keyboard.js:603
msgid "Show Keyboard Layout"
msgstr "Намоиш додани тарҳбандии клавиатура"
@@ -1382,23 +1379,23 @@ msgstr "Ҳолати ҳавопаймо"
msgid "On"
msgstr "Фаъол"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Таъвизи корбар"
#: ../js/ui/status/system.js:342
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Баромад"
#: ../js/ui/status/system.js:361
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Қулфи самт"
#: ../js/ui/status/system.js:369
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Таваққуф"
#: ../js/ui/status/system.js:372
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Хомӯш кардан"
@@ -1459,7 +1456,7 @@ msgstr[1] "Тағйироти танзимот баъд аз %d сония ба
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:605
#: ../js/ui/windowManager.js:599
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@@ -1496,38 +1493,14 @@ msgstr "Ҳамеша дар боло"
msgid "Always on Visible Workspace"
msgstr "Ҳамеша дар фазои кории намоён"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Интиқол додан ба фазои кории чап"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Интиқол додан ба фазои кории рост"
#: ../js/ui/windowMenu.js:115
#: ../js/ui/windowMenu.js:106
msgid "Move to Workspace Up"
msgstr "Интиқол додан ба фазои кории боло"
#: ../js/ui/windowMenu.js:120
#: ../js/ui/windowMenu.js:111
msgid "Move to Workspace Down"
msgstr "Интиқол додан ба фазои кории поён"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Интиқол ба канори болои монитор"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Интиқол ба канори поёни монитор"
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Интиқол ба канори чапи монитор"
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Интиқол ба канори рости монитор"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Ӣақвими Evolution"
@@ -1571,21 +1544,21 @@ msgstr ""
msgid "List possible modes"
msgstr "Рӯйхати ҳолатҳои имконпазир"
#: ../src/shell-app.c:239
#: ../src/shell-app.c:247
msgctxt "program"
msgid "Unknown"
msgstr "Номаълум"
#: ../src/shell-app.c:480
#: ../src/shell-app.c:488
#, c-format
msgid "Failed to launch “%s”"
msgstr "Оғози “%s” қатъ шудааст"
#: ../src/shell-keyring-prompt.c:742
#: ../src/shell-keyring-prompt.c:714
msgid "Passwords do not match."
msgstr "Паролҳо мувофиқат намекунанд."
#: ../src/shell-keyring-prompt.c:750
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "Парол бояд холӣ набошад"
@@ -1814,7 +1787,7 @@ msgstr "Равзанаи гуфтугӯи санҷиши ҳакконият бо
#~ "маҳдудиятҳое, ки бо китобхонаи рамзгузорӣ таъин шудаанд, дарозтар мебошад"
#~ msgid "Internal error"
#~ msgstr "Хатои дохилӣ"
#~ msgstr "Хатогии дохилӣ"
#~ msgid "Unable to connect to %s"
#~ msgstr "Пайвастшавӣ ба %s имконнопазир аст"

530
po/tr.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -64,6 +64,8 @@ st_source_h = \
st/st-scroll-bar.h \
st/st-scroll-view.h \
st/st-shadow.h \
st/st-table.h \
st/st-table-child.h \
st/st-texture-cache.h \
st/st-theme.h \
st/st-theme-context.h \
@@ -104,6 +106,7 @@ EXTRA_DIST += \
st_source_private_h = \
st/st-private.h \
st/st-table-private.h \
st/st-theme-private.h \
st/st-theme-node-private.h \
st/st-theme-node-transition.h
@@ -130,6 +133,8 @@ st_source_c = \
st/st-scroll-bar.c \
st/st-scroll-view.c \
st/st-shadow.c \
st/st-table.c \
st/st-table-child.c \
st/st-texture-cache.c \
st/st-theme.c \
st/st-theme-context.c \

View File

@@ -201,7 +201,7 @@ calendar_sources_init (CalendarSources *sources)
"/", "org.freedesktop.DBus",
"StartServiceByName",
g_variant_new ("(su)",
"org.gnome.evolution.dataserver.Sources5",
"org.gnome.evolution.dataserver.Sources4",
0),
NULL,
G_DBUS_CALL_FLAGS_NONE,

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env perl
#!/usr/bin/perl
# Copyright © 2011 Red Hat, Inc
#

View File

@@ -42,11 +42,18 @@ static void gnome_shell_plugin_minimize (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_unminimize (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_size_change (MetaPlugin *plugin,
static void gnome_shell_plugin_maximize (MetaPlugin *plugin,
MetaWindowActor *actor,
MetaSizeChange which_change,
MetaRectangle *old_rect,
MetaRectangle *new_rect);
gint x,
gint y,
gint width,
gint height);
static void gnome_shell_plugin_unmaximize (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
static void gnome_shell_plugin_map (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_destroy (MetaPlugin *plugin,
@@ -127,7 +134,8 @@ gnome_shell_plugin_class_init (GnomeShellPluginClass *klass)
plugin_class->map = gnome_shell_plugin_map;
plugin_class->minimize = gnome_shell_plugin_minimize;
plugin_class->unminimize = gnome_shell_plugin_unminimize;
plugin_class->size_change = gnome_shell_plugin_size_change;
plugin_class->maximize = gnome_shell_plugin_maximize;
plugin_class->unmaximize = gnome_shell_plugin_unmaximize;
plugin_class->destroy = gnome_shell_plugin_destroy;
plugin_class->switch_workspace = gnome_shell_plugin_switch_workspace;
@@ -273,13 +281,27 @@ gnome_shell_plugin_unminimize (MetaPlugin *plugin,
}
static void
gnome_shell_plugin_size_change (MetaPlugin *plugin,
MetaWindowActor *actor,
MetaSizeChange which_change,
MetaRectangle *old_frame_rect,
MetaRectangle *old_buffer_rect)
gnome_shell_plugin_maximize (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height)
{
_shell_wm_size_change (get_shell_wm (), actor, which_change, old_frame_rect, old_buffer_rect);
_shell_wm_maximize (get_shell_wm (),
actor, x, y, width, height);
}
static void
gnome_shell_plugin_unmaximize (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height)
{
_shell_wm_unmaximize (get_shell_wm (),
actor, x, y, width, height);
}
static void

Submodule src/gvc updated: fac3a900e5...e14dbe8aa6

View File

@@ -174,19 +174,19 @@ shell_prefs_init (void)
{
ShellGlobal *global = shell_global_get ();
GSettings *settings = shell_global_get_overrides_settings (global);
GSettingsSchema *schema;
char **keys, **k;
char **keys, **k, *schema_id;
if (!settings)
return;
g_object_get (G_OBJECT (settings), "settings-schema", &schema, NULL);
g_object_get (G_OBJECT (settings), "schema-id", &schema_id, NULL);
for (keys = k = g_settings_schema_list_keys (schema); *k; k++)
meta_prefs_override_preference_schema (*k, g_settings_schema_get_id (schema));
keys = g_settings_list_keys (settings);
for (keys = k = g_settings_list_keys (settings); *k; k++)
meta_prefs_override_preference_schema (*k, schema_id);
g_strfreev (keys);
g_settings_schema_unref (schema);
g_free (schema_id);
}
static void

View File

@@ -83,18 +83,12 @@ scan_startup_wm_class_to_id (ShellAppSystem *self)
for (l = apps; l != NULL; l = l->next)
{
GAppInfo *info = l->data;
const char *startup_wm_class, *id, *old_id;
const char *startup_wm_class, *id;
id = g_app_info_get_id (info);
startup_wm_class = g_desktop_app_info_get_startup_wm_class (G_DESKTOP_APP_INFO (info));
if (startup_wm_class == NULL)
continue;
/* In case multiple .desktop files set the same StartupWMClass, prefer
* the one where ID and StartupWMClass match */
old_id = g_hash_table_lookup (priv->startup_wm_class_to_id, startup_wm_class);
if (old_id == NULL || strcmp (id, startup_wm_class) == 0)
if (startup_wm_class != NULL)
g_hash_table_insert (priv->startup_wm_class_to_id,
g_strdup (startup_wm_class), g_strdup (id));
}
@@ -383,28 +377,3 @@ shell_app_system_get_running (ShellAppSystem *self)
return ret;
}
/**
* shell_app_system_search:
* @search_string: the search string to use
*
* Wrapper around g_desktop_app_info_search() that replaces results that
* don't validate as UTF-8 with the empty string.
*
* Returns: (array zero-terminated=1) (element-type GStrv) (transfer full): a
* list of strvs. Free each item with g_strfreev() and free the outer
* list with g_free().
*/
char ***
shell_app_system_search (const char *search_string)
{
char ***results = g_desktop_app_info_search (search_string);
char ***groups, **ids;
for (groups = results; *groups; groups++)
for (ids = *groups; *ids; ids++)
if (!g_utf8_validate (*ids, -1, NULL))
**ids = '\0';
return results;
}

View File

@@ -48,6 +48,5 @@ ShellApp *shell_app_system_lookup_desktop_wmclass (ShellAppSystem *s
const char *wmclass);
GSList *shell_app_system_get_running (ShellAppSystem *self);
char ***shell_app_system_search (const char *search_string);
#endif /* __SHELL_APP_SYSTEM_H__ */

View File

@@ -828,13 +828,10 @@ shell_app_sync_running_state (ShellApp *app)
{
g_return_if_fail (app->running_state != NULL);
if (app->state != SHELL_APP_STATE_STARTING)
{
if (app->running_state->interesting_windows == 0)
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
else
shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
}
if (app->running_state->interesting_windows == 0)
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
else if (app->state != SHELL_APP_STATE_STARTING)
shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
}
@@ -1003,16 +1000,10 @@ _shell_app_remove_window (ShellApp *app,
if (!meta_window_is_skip_taskbar (window))
app->running_state->interesting_windows--;
shell_app_sync_running_state (app);
if (app->running_state->windows == NULL)
{
g_clear_pointer (&app->running_state, unref_running_state);
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
}
else
{
shell_app_sync_running_state (app);
}
if (app->running_state && app->running_state->windows == NULL)
g_clear_pointer (&app->running_state, unref_running_state);
g_signal_emit (app, shell_app_signals[WINDOWS_CHANGED], 0);
}

View File

@@ -59,7 +59,7 @@ shell_embedded_window_show (GtkWidget *widget)
/* Size is 0x0 if the GtkWindow is not shown */
clutter_actor_queue_relayout (CLUTTER_ACTOR (window->priv->actor));
if (clutter_actor_is_realized (CLUTTER_ACTOR (window->priv->actor)))
if (CLUTTER_ACTOR_IS_REALIZED (window->priv->actor))
gtk_widget_map (widget);
}
}
@@ -166,7 +166,7 @@ _shell_embedded_window_set_actor (ShellEmbeddedWindow *window,
window->priv->actor = actor;
if (actor &&
clutter_actor_is_mapped (CLUTTER_ACTOR (actor)) &&
CLUTTER_ACTOR_IS_MAPPED (actor) &&
gtk_widget_get_visible (GTK_WIDGET (window)))
gtk_widget_map (GTK_WIDGET (window));
}

View File

@@ -172,7 +172,7 @@ shell_generic_container_get_focus_chain (StWidget *widget)
child != NULL;
child = clutter_actor_get_next_sibling (child))
{
if (clutter_actor_is_visible (child) &&
if (CLUTTER_ACTOR_IS_VISIBLE (child) &&
!shell_generic_container_get_skip_paint (self, child))
focus_chain = g_list_prepend (focus_chain, child);
}
@@ -273,7 +273,7 @@ shell_generic_container_get_paint_volume (ClutterActor *self,
{
const ClutterPaintVolume *child_volume;
if (!clutter_actor_is_visible (child))
if (!CLUTTER_ACTOR_IS_VISIBLE (child))
continue;
if (shell_generic_container_get_skip_paint (SHELL_GENERIC_CONTAINER (self), child))

View File

@@ -111,34 +111,6 @@ shell_keyring_prompt_init (ShellKeyringPrompt *self)
}
static gchar *
remove_mnemonics (const GValue *value)
{
const gchar mnemonic = '_';
gchar *stripped_label, *temp;
const gchar *label;
g_return_val_if_fail (value != NULL, NULL);
g_return_val_if_fail (G_VALUE_HOLDS_STRING (value), NULL);
label = g_value_get_string (value);
g_return_val_if_fail (label != NULL, NULL);
/* Stripped label will have the original label lenght at most */
stripped_label = temp = g_new (gchar, strlen(label) + 1);
g_assert (stripped_label != NULL);
while (*label != '\0')
{
if (*label == mnemonic)
label++;
*(temp++) = *(label++);
}
*temp = '\0';
return stripped_label;
}
static void
shell_keyring_prompt_set_property (GObject *obj,
guint prop_id,
@@ -173,7 +145,7 @@ shell_keyring_prompt_set_property (GObject *obj,
break;
case PROP_CHOICE_LABEL:
g_free (self->choice_label);
self->choice_label = remove_mnemonics (value);
self->choice_label = g_value_dup_string (value);
if (!self->choice_label)
self->choice_label = g_strdup ("");
g_object_notify (obj, "choice-label");
@@ -193,12 +165,12 @@ shell_keyring_prompt_set_property (GObject *obj,
break;
case PROP_CONTINUE_LABEL:
g_free (self->continue_label);
self->continue_label = remove_mnemonics (value);
self->continue_label = g_value_dup_string (value);
g_object_notify (obj, "continue-label");
break;
case PROP_CANCEL_LABEL:
g_free (self->cancel_label);
self->cancel_label = remove_mnemonics (value);
self->cancel_label = g_value_dup_string (value);
g_object_notify (obj, "cancel-label");
break;
case PROP_PASSWORD_ACTOR:

View File

@@ -11,15 +11,12 @@ struct _ShellRecorderSrc
{
GstPushSrc parent;
GMutex mutex;
GMutex mutex_data;
GMutex *mutex;
GstCaps *caps;
GMutex queue_lock;
GCond queue_cond;
GQueue *queue;
gboolean eos;
gboolean flushing;
GAsyncQueue *queue;
gboolean closed;
guint memory_used;
guint memory_used_update_idle;
};
@@ -35,6 +32,9 @@ enum {
PROP_MEMORY_USED
};
/* Special marker value once the source is closed */
#define RECORDER_QUEUE_END ((GstBuffer *)1)
#define shell_recorder_src_parent_class parent_class
G_DEFINE_TYPE(ShellRecorderSrc, shell_recorder_src, GST_TYPE_PUSH_SRC);
@@ -44,10 +44,9 @@ shell_recorder_src_init (ShellRecorderSrc *src)
gst_base_src_set_format (GST_BASE_SRC (src), GST_FORMAT_TIME);
gst_base_src_set_live (GST_BASE_SRC (src), TRUE);
src->queue = g_queue_new ();
g_mutex_init (&src->mutex);
g_mutex_init (&src->queue_lock);
g_cond_init (&src->queue_cond);
src->queue = g_async_queue_new ();
src->mutex = &src->mutex_data;
g_mutex_init (src->mutex);
}
static gboolean
@@ -55,9 +54,9 @@ shell_recorder_src_memory_used_update_idle (gpointer data)
{
ShellRecorderSrc *src = data;
g_mutex_lock (&src->mutex);
g_mutex_lock (src->mutex);
src->memory_used_update_idle = 0;
g_mutex_unlock (&src->mutex);
g_mutex_unlock (src->mutex);
g_object_notify (G_OBJECT (src), "memory-used");
@@ -71,14 +70,14 @@ static void
shell_recorder_src_update_memory_used (ShellRecorderSrc *src,
int delta)
{
g_mutex_lock (&src->mutex);
g_mutex_lock (src->mutex);
src->memory_used += delta;
if (src->memory_used_update_idle == 0)
{
src->memory_used_update_idle = g_idle_add (shell_recorder_src_memory_used_update_idle, src);
g_source_set_name_by_id (src->memory_used_update_idle, "[gnome-shell] shell_recorder_src_memory_used_update_idle");
}
g_mutex_unlock (&src->mutex);
g_mutex_unlock (src->mutex);
}
/* _negotiate() is called when we have to decide on a format. We
@@ -94,62 +93,6 @@ shell_recorder_src_negotiate (GstBaseSrc * base_src)
return result;
}
static gboolean
shell_recorder_src_unlock (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = TRUE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_unlock_stop (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = FALSE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_start (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = FALSE;
src->eos = FALSE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_stop (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = TRUE;
src->eos = FALSE;
g_queue_foreach (src->queue, (GFunc) gst_buffer_unref, NULL);
g_queue_clear (src->queue);
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_send_event (GstElement * element, GstEvent * event)
{
@@ -180,29 +123,17 @@ shell_recorder_src_create (GstPushSrc *push_src,
ShellRecorderSrc *src = SHELL_RECORDER_SRC (push_src);
GstBuffer *buffer;
g_mutex_lock (&src->queue_lock);
while (TRUE) {
/* int the flushing state we just return FLUSHING */
if (src->flushing) {
g_mutex_unlock (&src->queue_lock);
return GST_FLOW_FLUSHING;
}
if (src->closed)
return GST_FLOW_EOS;
buffer = g_queue_pop_head (src->queue);
buffer = g_async_queue_pop (src->queue);
/* we have a buffer, exit the loop to handle it */
if (buffer != NULL)
break;
/* no buffer, check EOS */
if (src->eos) {
g_mutex_unlock (&src->queue_lock);
if (buffer == RECORDER_QUEUE_END)
{
/* Returning UNEXPECTED here will cause a EOS message to be sent */
src->closed = TRUE;
return GST_FLOW_EOS;
}
/* wait for something to happen and try again */
g_cond_wait (&src->queue_cond, &src->queue_lock);
}
g_mutex_unlock (&src->queue_lock);
shell_recorder_src_update_memory_used (src,
- (int)(gst_buffer_get_size(buffer) / 1024));
@@ -245,11 +176,9 @@ shell_recorder_src_finalize (GObject *object)
g_source_remove (src->memory_used_update_idle);
shell_recorder_src_set_caps (src, NULL);
g_queue_free_full (src->queue, (GDestroyNotify) gst_buffer_unref);
g_async_queue_unref (src->queue);
g_mutex_clear (&src->mutex);
g_mutex_clear (&src->queue_lock);
g_cond_clear (&src->queue_cond);
g_mutex_clear (src->mutex);
G_OBJECT_CLASS (shell_recorder_src_parent_class)->finalize (object);
}
@@ -287,9 +216,9 @@ shell_recorder_src_get_property (GObject *object,
gst_value_set_caps (value, src->caps);
break;
case PROP_MEMORY_USED:
g_mutex_lock (&src->mutex);
g_mutex_lock (src->mutex);
g_value_set_uint (value, src->memory_used);
g_mutex_unlock (&src->mutex);
g_mutex_unlock (src->mutex);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -341,10 +270,6 @@ shell_recorder_src_class_init (ShellRecorderSrcClass *klass)
element_class->send_event = shell_recorder_src_send_event;
base_src_class->negotiate = shell_recorder_src_negotiate;
base_src_class->unlock = shell_recorder_src_unlock;
base_src_class->unlock_stop = shell_recorder_src_unlock_stop;
base_src_class->start = shell_recorder_src_start;
base_src_class->stop = shell_recorder_src_stop;
push_src_class->create = shell_recorder_src_create;
}
@@ -367,10 +292,7 @@ shell_recorder_src_add_buffer (ShellRecorderSrc *src,
shell_recorder_src_update_memory_used (src,
(int)(gst_buffer_get_size(buffer) / 1024));
g_mutex_lock (&src->queue_lock);
g_queue_push_tail (src->queue, gst_buffer_ref (buffer));
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
g_async_queue_push (src->queue, gst_buffer_ref (buffer));
}
/**
@@ -383,13 +305,10 @@ void
shell_recorder_src_close (ShellRecorderSrc *src)
{
/* We can't send a message to the source immediately or buffers that haven't
* been pushed yet will be discarded. Instead mark ourselves EOS, which will
* make us send an event once everything has been pushed.
* been pushed yet will be discarded. Instead stick a marker onto our own
* queue to send an event once everything has been pushed.
*/
g_mutex_lock (&src->queue_lock);
src->eos = TRUE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
g_async_queue_push (src->queue, RECORDER_QUEUE_END);
}
static gboolean

View File

@@ -155,7 +155,7 @@ shell_stack_navigate_focus (StWidget *widget,
if (from && clutter_actor_contains (CLUTTER_ACTOR (widget), from))
return FALSE;
if (clutter_actor_is_mapped (CLUTTER_ACTOR (widget)))
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (widget)))
{
clutter_actor_grab_key_focus (CLUTTER_ACTOR (widget));
return TRUE;

View File

@@ -12,11 +12,18 @@ void _shell_wm_minimize (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_unminimize (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_size_change(ShellWM *wm,
void _shell_wm_maximize (ShellWM *wm,
MetaWindowActor *actor,
MetaSizeChange which_change,
MetaRectangle *old_rect,
MetaRectangle *new_rect);
gint x,
gint y,
gint width,
gint height);
void _shell_wm_unmaximize (ShellWM *wm,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
void _shell_wm_map (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_destroy (ShellWM *wm,

View File

@@ -4,7 +4,6 @@
#include <string.h>
#include <meta/meta-enum-types.h>
#include <meta/keybindings.h>
#include "shell-wm-private.h"
@@ -21,7 +20,8 @@ enum
{
MINIMIZE,
UNMINIMIZE,
SIZE_CHANGE,
MAXIMIZE,
UNMAXIMIZE,
MAP,
DESTROY,
SWITCH_WORKSPACE,
@@ -74,14 +74,22 @@ shell_wm_class_init (ShellWMClass *klass)
NULL, NULL, NULL,
G_TYPE_NONE, 1,
META_TYPE_WINDOW_ACTOR);
shell_wm_signals[SIZE_CHANGE] =
g_signal_new ("size-change",
shell_wm_signals[MAXIMIZE] =
g_signal_new ("maximize",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 4,
META_TYPE_WINDOW_ACTOR, META_TYPE_SIZE_CHANGE, META_TYPE_RECTANGLE, META_TYPE_RECTANGLE);
G_TYPE_NONE, 5,
META_TYPE_WINDOW_ACTOR, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
shell_wm_signals[UNMAXIMIZE] =
g_signal_new ("unmaximize",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 5,
META_TYPE_WINDOW_ACTOR, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
shell_wm_signals[MAP] =
g_signal_new ("map",
G_TYPE_FROM_CLASS (klass),
@@ -212,11 +220,32 @@ shell_wm_completed_unminimize (ShellWM *wm,
meta_plugin_unminimize_completed (wm->plugin, actor);
}
/**
* shell_wm_completed_maximize:
* @wm: the ShellWM
* @actor: the MetaWindowActor actor
*
* The plugin must call this when it has completed a window maximize effect.
**/
void
shell_wm_completed_size_change (ShellWM *wm,
MetaWindowActor *actor)
shell_wm_completed_maximize (ShellWM *wm,
MetaWindowActor *actor)
{
meta_plugin_size_change_completed (wm->plugin, actor);
meta_plugin_maximize_completed (wm->plugin, actor);
}
/**
* shell_wm_completed_unmaximize:
* @wm: the ShellWM
* @actor: the MetaWindowActor actor
*
* The plugin must call this when it has completed a window unmaximize effect.
**/
void
shell_wm_completed_unmaximize (ShellWM *wm,
MetaWindowActor *actor)
{
meta_plugin_unmaximize_completed (wm->plugin, actor);
}
/**
@@ -330,13 +359,25 @@ _shell_wm_unminimize (ShellWM *wm,
}
void
_shell_wm_size_change (ShellWM *wm,
MetaWindowActor *actor,
MetaSizeChange which_change,
MetaRectangle *old_frame_rect,
MetaRectangle *old_buffer_rect)
_shell_wm_maximize (ShellWM *wm,
MetaWindowActor *actor,
int target_x,
int target_y,
int target_width,
int target_height)
{
g_signal_emit (wm, shell_wm_signals[SIZE_CHANGE], 0, actor, which_change, old_frame_rect, old_buffer_rect);
g_signal_emit (wm, shell_wm_signals[MAXIMIZE], 0, actor, target_x, target_y, target_width, target_height);
}
void
_shell_wm_unmaximize (ShellWM *wm,
MetaWindowActor *actor,
int target_x,
int target_y,
int target_width,
int target_height)
{
g_signal_emit (wm, shell_wm_signals[UNMAXIMIZE], 0, actor, target_x, target_y, target_width, target_height);
}
void

View File

@@ -31,7 +31,9 @@ void shell_wm_completed_minimize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_unminimize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_size_change (ShellWM *wm,
void shell_wm_completed_maximize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_unmaximize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_map (ShellWM *wm,
MetaWindowActor *actor);

View File

@@ -101,7 +101,7 @@ st_bin_allocate (ClutterActor *self,
clutter_actor_set_allocation (self, box, flags);
if (priv->child && clutter_actor_is_visible (priv->child))
if (priv->child && CLUTTER_ACTOR_IS_VISIBLE (priv->child))
{
StThemeNode *theme_node = st_widget_get_theme_node (ST_WIDGET (self));
ClutterActorBox childbox;
@@ -128,7 +128,7 @@ st_bin_get_preferred_width (ClutterActor *self,
st_theme_node_adjust_for_height (theme_node, &for_height);
if (priv->child == NULL || !clutter_actor_is_visible (priv->child))
if (priv->child == NULL || !CLUTTER_ACTOR_IS_VISIBLE (priv->child))
{
if (min_width_p)
*min_width_p = 0;
@@ -157,7 +157,7 @@ st_bin_get_preferred_height (ClutterActor *self,
st_theme_node_adjust_for_width (theme_node, &for_width);
if (priv->child == NULL || !clutter_actor_is_visible (priv->child))
if (priv->child == NULL || !CLUTTER_ACTOR_IS_VISIBLE (priv->child))
{
if (min_height_p)
*min_height_p = 0;
@@ -209,7 +209,7 @@ st_bin_navigate_focus (StWidget *widget,
if (from && clutter_actor_contains (bin_actor, from))
return FALSE;
if (clutter_actor_is_mapped (bin_actor))
if (CLUTTER_ACTOR_IS_MAPPED (bin_actor))
{
clutter_actor_grab_key_focus (bin_actor);
return TRUE;

View File

@@ -304,7 +304,7 @@ st_entry_navigate_focus (StWidget *widget,
if (from == priv->entry)
return FALSE;
else if (st_widget_get_can_focus (widget) &&
clutter_actor_is_mapped (priv->entry))
CLUTTER_ACTOR_IS_MAPPED (priv->entry))
{
clutter_actor_grab_key_focus (priv->entry);
return TRUE;
@@ -618,7 +618,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* copy */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_KEY_c &&
&& event->keyval == CLUTTER_c &&
clutter_text_get_password_char ((ClutterText*) priv->entry) == 0)
{
StClipboard *clipboard;
@@ -639,7 +639,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* cut */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_KEY_x &&
&& event->keyval == CLUTTER_x &&
clutter_text_get_password_char ((ClutterText*) priv->entry) == 0)
{
StClipboard *clipboard;
@@ -665,7 +665,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* delete to beginning of line */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_KEY_u)
&& event->keyval == CLUTTER_u)
{
int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);
clutter_text_delete_text ((ClutterText *)priv->entry, 0, pos);
@@ -676,7 +676,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* delete to end of line */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_KEY_k)
&& event->keyval == CLUTTER_k)
{
ClutterTextBuffer *buffer = clutter_text_get_buffer ((ClutterText *)priv->entry);
int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);

View File

@@ -845,7 +845,7 @@ st_scroll_bar_notify_reactive (StScrollBar *self)
{
StScrollBarPrivate *priv = self->priv;
gboolean reactive = clutter_actor_get_reactive (CLUTTER_ACTOR (self));
gboolean reactive = CLUTTER_ACTOR_IS_REACTIVE (self);
clutter_actor_set_reactive (CLUTTER_ACTOR (priv->trough), reactive);
clutter_actor_set_reactive (CLUTTER_ACTOR (priv->handle), reactive);

View File

@@ -313,7 +313,7 @@ get_scrollbar_width (StScrollView *scroll,
{
StScrollViewPrivate *priv = scroll->priv;
if (clutter_actor_is_visible (priv->vscroll))
if (CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))
{
gfloat min_size;
@@ -331,7 +331,7 @@ get_scrollbar_height (StScrollView *scroll,
{
StScrollViewPrivate *priv = scroll->priv;
if (clutter_actor_is_visible (priv->hscroll))
if (CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))
{
gfloat min_size;

767
src/st/st-table-child.c Normal file
View File

@@ -0,0 +1,767 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* st-table-child.h: Table child implementation
*
* Copyright 2008, 2009 Intel Corporation.
* Copyright 2010 Red Hat, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU Lesser General Public License,
* version 2.1, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
* more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "st-private.h"
#include "st-table-child.h"
#include "st-table-private.h"
#include "st-enum-types.h"
#include <st/st-widget.h>
#include <st/st-table.h>
/*
* ClutterChildMeta Implementation
*/
/**
* SECTION:st-table-child
* @short_description: The child property store for #StTable
*
* The #ClutterChildMeta implementation for the #StTable container widget.
*
*/
enum {
CHILD_PROP_0,
CHILD_PROP_COL,
CHILD_PROP_ROW,
CHILD_PROP_COL_SPAN,
CHILD_PROP_ROW_SPAN,
CHILD_PROP_X_EXPAND,
CHILD_PROP_Y_EXPAND,
CHILD_PROP_X_ALIGN,
CHILD_PROP_Y_ALIGN,
CHILD_PROP_X_FILL,
CHILD_PROP_Y_FILL,
CHILD_PROP_ALLOCATE_HIDDEN,
};
G_DEFINE_TYPE (StTableChild, st_table_child, CLUTTER_TYPE_CHILD_META);
static void
table_child_set_property (GObject *gobject,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
StTableChild *child = ST_TABLE_CHILD (gobject);
StTable *table = ST_TABLE (CLUTTER_CHILD_META(gobject)->container);
switch (prop_id)
{
case CHILD_PROP_COL:
child->col = g_value_get_int (value);
_st_table_update_row_col (table, -1, child->col);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_ROW:
child->row = g_value_get_int (value);
_st_table_update_row_col (table, child->row, -1);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_COL_SPAN:
child->col_span = g_value_get_int (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_ROW_SPAN:
child->row_span = g_value_get_int (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_X_EXPAND:
child->x_expand = g_value_get_boolean (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_Y_EXPAND:
child->y_expand = g_value_get_boolean (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_X_ALIGN:
child->x_align = g_value_get_enum (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_Y_ALIGN:
child->y_align = g_value_get_enum (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_X_FILL:
child->x_fill = g_value_get_boolean (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_Y_FILL:
child->y_fill = g_value_get_boolean (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
case CHILD_PROP_ALLOCATE_HIDDEN:
child->allocate_hidden = g_value_get_boolean (value);
clutter_actor_queue_relayout (CLUTTER_ACTOR (table));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
break;
}
}
static void
table_child_get_property (GObject *gobject,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
StTableChild *child = ST_TABLE_CHILD (gobject);
switch (prop_id)
{
case CHILD_PROP_COL:
g_value_set_int (value, child->col);
break;
case CHILD_PROP_ROW:
g_value_set_int (value, child->row);
break;
case CHILD_PROP_COL_SPAN:
g_value_set_int (value, child->col_span);
break;
case CHILD_PROP_ROW_SPAN:
g_value_set_int (value, child->row_span);
break;
case CHILD_PROP_X_EXPAND:
g_value_set_boolean (value, child->x_expand);
break;
case CHILD_PROP_Y_EXPAND:
g_value_set_boolean (value, child->y_expand);
break;
case CHILD_PROP_X_ALIGN:
g_value_set_enum (value, child->x_align);
break;
case CHILD_PROP_Y_ALIGN:
g_value_set_enum (value, child->y_align);
break;
case CHILD_PROP_X_FILL:
g_value_set_boolean (value, child->x_fill);
break;
case CHILD_PROP_Y_FILL:
g_value_set_boolean (value, child->y_fill);
break;
case CHILD_PROP_ALLOCATE_HIDDEN:
g_value_set_boolean (value, child->allocate_hidden);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
break;
}
}
static void
st_table_child_class_init (StTableChildClass *klass)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
GParamSpec *pspec;
gobject_class->set_property = table_child_set_property;
gobject_class->get_property = table_child_get_property;
pspec = g_param_spec_int ("col",
"Column Number",
"The column the widget resides in",
0, G_MAXINT,
0,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_COL, pspec);
pspec = g_param_spec_int ("row",
"Row Number",
"The row the widget resides in",
0, G_MAXINT,
0,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_ROW, pspec);
pspec = g_param_spec_int ("row-span",
"Row Span",
"The number of rows the widget should span",
1, G_MAXINT,
1,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_ROW_SPAN, pspec);
pspec = g_param_spec_int ("col-span",
"Column Span",
"The number of columns the widget should span",
1, G_MAXINT,
1,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_COL_SPAN, pspec);
pspec = g_param_spec_boolean ("x-expand",
"X Expand",
"Whether the child should receive priority "
"when the container is allocating spare space "
"on the horizontal axis",
TRUE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_X_EXPAND, pspec);
pspec = g_param_spec_boolean ("y-expand",
"Y Expand",
"Whether the child should receive priority "
"when the container is allocating spare space "
"on the vertical axis",
TRUE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_Y_EXPAND, pspec);
pspec = g_param_spec_enum ("x-align",
"X Alignment",
"X alignment of the widget within the cell",
ST_TYPE_ALIGN,
ST_ALIGN_MIDDLE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_X_ALIGN, pspec);
pspec = g_param_spec_enum ("y-align",
"Y Alignment",
"Y alignment of the widget within the cell",
ST_TYPE_ALIGN,
ST_ALIGN_MIDDLE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_Y_ALIGN, pspec);
pspec = g_param_spec_boolean ("x-fill",
"X Fill",
"Whether the child should be allocated its "
"entire available space, or whether it should "
"be squashed and aligned.",
TRUE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_X_FILL, pspec);
pspec = g_param_spec_boolean ("y-fill",
"Y Fill",
"Whether the child should be allocated its "
"entire available space, or whether it should "
"be squashed and aligned.",
TRUE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_Y_FILL, pspec);
pspec = g_param_spec_boolean ("allocate-hidden",
"Allocate Hidden",
"Whether the child should be allocate even "
"if it is hidden",
TRUE,
ST_PARAM_READWRITE);
g_object_class_install_property (gobject_class, CHILD_PROP_ALLOCATE_HIDDEN, pspec);
}
static void
st_table_child_init (StTableChild *self)
{
self->col_span = 1;
self->row_span = 1;
self->x_align = ST_ALIGN_MIDDLE;
self->y_align = ST_ALIGN_MIDDLE;
self->x_expand = TRUE;
self->y_expand = TRUE;
self->x_fill = TRUE;
self->y_fill = TRUE;
self->allocate_hidden = TRUE;
}
static StTableChild*
get_child_meta (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
meta = (StTableChild*) clutter_container_get_child_meta (CLUTTER_CONTAINER (table), child);
return meta;
}
/**
* st_table_child_get_col_span:
* @table: an #StTable
* @child: a #ClutterActor
*
* Get the column span of the child. Defaults to 1.
*
* Returns: the column span of the child
*/
gint
st_table_child_get_col_span (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->col_span;
}
/**
* st_table_child_set_col_span:
* @table: An #StTable
* @child: An #ClutterActor
* @span: The number of columns to span
*
* Set the column span of the child.
*
*/
void
st_table_child_set_col_span (StTable *table,
ClutterActor *child,
gint span)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
g_return_if_fail (span > 1);
meta = get_child_meta (table, child);
meta->col_span = span;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_row_span:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the row span of the child. Defaults to 1.
*
* Returns: the row span of the child
*/
gint
st_table_child_get_row_span (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->row_span;
}
/**
* st_table_child_set_row_span:
* @table: A #StTable
* @child: A #ClutterActor
* @span: the number of rows to span
*
* Set the row span of the child.
*
*/
void
st_table_child_set_row_span (StTable *table,
ClutterActor *child,
gint span)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
g_return_if_fail (span > 1);
meta = get_child_meta (table, child);
meta->row_span = span;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_x_fill:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the x-fill state of the child
*
* Returns: %TRUE if the child is set to x-fill
*/
gboolean
st_table_child_get_x_fill (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->x_fill;
}
/**
* st_table_child_set_x_fill:
* @table: A #StTable
* @child: A #ClutterActor
* @fill: the fill state
*
* Set the fill state of the child on the x-axis. This will cause the child to
* be allocated the maximum available space.
*
*/
void
st_table_child_set_x_fill (StTable *table,
ClutterActor *child,
gboolean fill)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->x_fill = fill;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_y_fill:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the y-fill state of the child
*
* Returns: %TRUE if the child is set to y-fill
*/
gboolean
st_table_child_get_y_fill (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->y_fill;
}
/**
* st_table_child_set_y_fill:
* @table: A #StTable
* @child: A #ClutterActor
* @fill: the fill state
*
* Set the fill state of the child on the y-axis. This will cause the child to
* be allocated the maximum available space.
*
*/
void
st_table_child_set_y_fill (StTable *table,
ClutterActor *child,
gboolean fill)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->y_fill = fill;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_x_expand:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the x-expand property of the child
*
* Returns: %TRUE if the child is set to x-expand
*/
gboolean
st_table_child_get_x_expand (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->x_expand;
}
/**
* st_table_child_set_x_expand:
* @table: A #StTable
* @child: A #ClutterActor
* @expand: the new value of the x expand child property
*
* Set x-expand on the child. This causes the column which the child
* resides in to be allocated any extra space if the allocation of the table is
* larger than the preferred size.
*
*/
void
st_table_child_set_x_expand (StTable *table,
ClutterActor *child,
gboolean expand)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->x_expand = expand;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_set_y_expand:
* @table: A #StTable
* @child: A #ClutterActor
* @expand: the new value of the y-expand child property
*
* Set y-expand on the child. This causes the row which the child
* resides in to be allocated any extra space if the allocation of the table is
* larger than the preferred size.
*
*/
void
st_table_child_set_y_expand (StTable *table,
ClutterActor *child,
gboolean expand)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->y_expand = expand;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_y_expand:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the y-expand property of the child.
*
* Returns: %TRUE if the child is set to y-expand
*/
gboolean
st_table_child_get_y_expand (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->y_expand;
}
/**
* st_table_child_get_x_align:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the x-align value of the child
*
* Returns: An #StAlign value
*/
StAlign
st_table_child_get_x_align (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->x_align;
}
/**
* st_table_child_set_x_align:
* @table: A #StTable
* @child: A #ClutterActor
* @align: A #StAlign value
*
* Set the alignment of the child within its cell. This will only have an effect
* if the the x-fill property is FALSE.
*
*/
void
st_table_child_set_x_align (StTable *table,
ClutterActor *child,
StAlign align)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->x_align = align;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_get_y_align:
* @table: A #StTable
* @child: A #ClutterActor
*
* Get the y-align value of the child
*
* Returns: An #StAlign value
*/
StAlign
st_table_child_get_y_align (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), 0);
meta = get_child_meta (table, child);
return meta->y_align;
}
/**
* st_table_child_set_y_align:
* @table: A #StTable
* @child: A #ClutterActor
* @align: A #StAlign value
*
* Set the value of the y-align property. This will only have an effect if
* y-fill value is set to FALSE.
*
*/
void
st_table_child_set_y_align (StTable *table,
ClutterActor *child,
StAlign align)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
meta->y_align = align;
clutter_actor_queue_relayout (child);
}
/**
* st_table_child_set_allocate_hidden:
* @table: A #StTable
* @child: A #ClutterActor
* @value: %TRUE if the actor should be allocated when hidden
*
* Set whether the child should be allocate even if it is hidden
*/
void
st_table_child_set_allocate_hidden (StTable *table,
ClutterActor *child,
gboolean value)
{
StTableChild *meta;
g_return_if_fail (ST_IS_TABLE (table));
g_return_if_fail (CLUTTER_IS_ACTOR (child));
meta = get_child_meta (table, child);
if (meta->allocate_hidden != value)
{
meta->allocate_hidden = value;
clutter_actor_queue_relayout (child);
g_object_notify (G_OBJECT (meta), "allocate-hidden");
}
}
/**
* st_table_child_get_allocate_hidden:
* @table: A #StTable
* @child: A #ClutterActor
*
* Determine if the child is allocated even if it is hidden
*
* Returns: %TRUE if the actor is allocated when hidden
*/
gboolean
st_table_child_get_allocate_hidden (StTable *table,
ClutterActor *child)
{
StTableChild *meta;
g_return_val_if_fail (ST_IS_TABLE (table), TRUE);
g_return_val_if_fail (CLUTTER_IS_ACTOR (child), TRUE);
meta = get_child_meta (table, child);
return meta->allocate_hidden;
}

124
src/st/st-table-child.h Normal file
View File

@@ -0,0 +1,124 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* st-table-child.h: Table child implementation
*
* Copyright 2008, 2009 Intel Corporation.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU Lesser General Public License,
* version 2.1, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
* more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#if !defined(ST_H_INSIDE) && !defined(ST_COMPILATION)
#error "Only <st/st.h> can be included directly.h"
#endif
#ifndef __ST_TABLE_CHILD_H__
#define __ST_TABLE_CHILD_H__
#include <st/st-types.h>
#include <st/st-widget.h>
#include <st/st-table.h>
#include <clutter/clutter.h>
G_BEGIN_DECLS
#define ST_TYPE_TABLE_CHILD (st_table_child_get_type ())
#define ST_TABLE_CHILD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ST_TYPE_TABLE_CHILD, StTableChild))
#define ST_IS_TABLE_CHILD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ST_TYPE_TABLE_CHILD))
#define ST_TABLE_CHILD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ST_TYPE_TABLE_CHILD, StTableChildClass))
#define ST_IS_TABLE_CHILD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ST_TYPE_TABLE_CHILD))
#define ST_TABLE_CHILD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ST_TYPE_TABLE_CHILD, StTableChildClass))
typedef struct _StTableChild StTableChild;
typedef struct _StTableChildClass StTableChildClass;
/**
* StTableChild:
*
* The contents of the this structure are private and should only be accessed
* through the public API.
*/
struct _StTableChild
{
/*< private >*/
ClutterChildMeta parent_instance;
gint col;
gint row;
gint col_span;
gint row_span;
StAlign x_align;
StAlign y_align;
guint allocate_hidden : 1;
guint x_expand : 1;
guint y_expand : 1;
guint x_fill : 1;
guint y_fill : 1;
};
struct _StTableChildClass
{
ClutterChildMetaClass parent_class;
};
GType st_table_child_get_type (void) G_GNUC_CONST;
gint st_table_child_get_col_span (StTable *table,
ClutterActor *child);
void st_table_child_set_col_span (StTable *table,
ClutterActor *child,
gint span);
gint st_table_child_get_row_span (StTable *table,
ClutterActor *child);
void st_table_child_set_row_span (StTable *table,
ClutterActor *child,
gint span);
gboolean st_table_child_get_x_fill (StTable *table,
ClutterActor *child);
void st_table_child_set_x_fill (StTable *table,
ClutterActor *child,
gboolean fill);
gboolean st_table_child_get_y_fill (StTable *table,
ClutterActor *child);
void st_table_child_set_y_fill (StTable *table,
ClutterActor *child,
gboolean fill);
gboolean st_table_child_get_x_expand (StTable *table,
ClutterActor *child);
void st_table_child_set_x_expand (StTable *table,
ClutterActor *child,
gboolean expand);
gboolean st_table_child_get_y_expand (StTable *table,
ClutterActor *child);
void st_table_child_set_y_expand (StTable *table,
ClutterActor *child,
gboolean expand);
StAlign st_table_child_get_x_align (StTable *table,
ClutterActor *child);
void st_table_child_set_x_align (StTable *table,
ClutterActor *child,
StAlign align);
StAlign st_table_child_get_y_align (StTable *table,
ClutterActor *child);
void st_table_child_set_y_align (StTable *table,
ClutterActor *child,
StAlign align);
void st_table_child_set_allocate_hidden (StTable *table,
ClutterActor *child,
gboolean value);
gboolean st_table_child_get_allocate_hidden (StTable *table,
ClutterActor *child);
G_END_DECLS
#endif /* __ST_TABLE_H__ */

34
src/st/st-table-private.h Normal file
View File

@@ -0,0 +1,34 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* st-private-private.h: Private declarations for StTable
*
* Copyright 2007 OpenedHand
* Copyright 2009 Intel Corporation.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU Lesser General Public License,
* version 2.1, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
* more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __ST_TABLE_PRIVATE_H__
#define __ST_TABLE_PRIVATE_H__
#include "st-table.h"
G_BEGIN_DECLS
void _st_table_update_row_col (StTable *table,
gint row,
gint col);
G_END_DECLS
#endif /* __ST_TABLE_PRIVATE_H__ */

1064
src/st/st-table.c Normal file

File diff suppressed because it is too large Load Diff

90
src/st/st-table.h Normal file
View File

@@ -0,0 +1,90 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* st-table.h: Table layout widget
*
* Copyright 2008, 2009 Intel Corporation.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU Lesser General Public License,
* version 2.1, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
* more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#if !defined(ST_H_INSIDE) && !defined(ST_COMPILATION)
#error "Only <st/st.h> can be included directly.h"
#endif
#ifndef __ST_TABLE_H__
#define __ST_TABLE_H__
#include <st/st-types.h>
#include <st/st-widget.h>
G_BEGIN_DECLS
/**
* StTableChildOptions:
* @ST_KEEP_ASPECT_RATIO: whether to respect the widget's aspect ratio
* @ST_X_EXPAND: whether to allocate extra space on the widget's x-axis
* @ST_Y_EXPAND: whether to allocate extra space on the widget's y-axis
* @ST_X_FILL: whether to stretch the child to fill the cell horizontally
* @ST_Y_FILL: whether to stretch the child to fill the cell vertically
*
* Denotes the child properties an StTable child will have.
*/
typedef enum
{
ST_KEEP_ASPECT_RATIO = 1 << 0,
ST_X_EXPAND = 1 << 1,
ST_Y_EXPAND = 1 << 2,
ST_X_FILL = 1 << 3,
ST_Y_FILL = 1 << 4
} StTableChildOptions;
#define ST_TYPE_TABLE (st_table_get_type ())
#define ST_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ST_TYPE_TABLE, StTable))
#define ST_IS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ST_TYPE_TABLE))
#define ST_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ST_TYPE_TABLE, StTableClass))
#define ST_IS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ST_TYPE_TABLE))
#define ST_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ST_TYPE_TABLE, StTableClass))
typedef struct _StTable StTable;
typedef struct _StTablePrivate StTablePrivate;
typedef struct _StTableClass StTableClass;
/**
* StTable:
*
* The contents of this structure is private and should only be accessed using
* the provided API.
*/
struct _StTable
{
/*< private >*/
StWidget parent_instance;
StTablePrivate *priv;
};
struct _StTableClass
{
StWidgetClass parent_class;
};
GType st_table_get_type (void) G_GNUC_CONST;
StWidget* st_table_new (void);
gint st_table_get_row_count (StTable *table);
gint st_table_get_column_count (StTable *table);
G_END_DECLS
#endif /* __ST_TABLE_H__ */

View File

@@ -315,7 +315,7 @@ st_widget_texture_cache_changed (StTextureCache *cache,
*/
st_theme_node_paint_state_invalidate (current_paint_state (actor));
if (clutter_actor_is_mapped (CLUTTER_ACTOR (actor)))
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (actor)))
clutter_actor_queue_redraw (CLUTTER_ACTOR (actor));
}
}
@@ -537,7 +537,7 @@ st_widget_style_changed (StWidget *widget)
}
/* update the style only if we are mapped */
if (clutter_actor_is_mapped (CLUTTER_ACTOR (widget)))
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (widget)))
st_widget_recompute_style (widget, old_theme_node);
if (old_theme_node)
@@ -794,7 +794,7 @@ st_widget_get_paint_volume (ClutterActor *self,
{
const ClutterPaintVolume *child_volume;
if (!clutter_actor_is_visible (child))
if (!CLUTTER_ACTOR_IS_VISIBLE (child))
continue;
child_volume = clutter_actor_get_transformed_paint_volume (child, self);
@@ -1926,7 +1926,7 @@ st_widget_real_navigate_focus (StWidget *widget,
{
if (!focus_child)
{
if (clutter_actor_is_mapped (widget_actor))
if (CLUTTER_ACTOR_IS_MAPPED (widget_actor))
{
/* Accept focus from outside */
clutter_actor_grab_key_focus (widget_actor);
@@ -2847,7 +2847,7 @@ check_labels (StWidgetAccessible *widget_accessible,
*
* Gets a list of the focusable children of @widget, in "Tab"
* order. By default, this returns all visible
* (as in clutter_actor_is_visible()) children of @widget.
* (as in CLUTTER_ACTOR_IS_VISIBLE()) children of @widget.
*
* Returns: (element-type Clutter.Actor) (transfer container):
* @widget's focusable children

View File

@@ -18,6 +18,7 @@ TEST_JS = \
interactive/inline-style.js \
interactive/scrolling.js \
interactive/scroll-view-sizing.js \
interactive/table.js \
interactive/test-title.js \
interactive/transitions.js \
testcommon/100-200.svg \
@@ -26,6 +27,7 @@ TEST_JS = \
testcommon/border-image.png \
testcommon/face-plain.png \
testcommon/ui.js \
unit/format.js \
unit/insertSorted.js \
unit/markup.js \
unit/jsParse.js \

View File

@@ -0,0 +1,57 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Clutter = imports.gi.Clutter;
const St = imports.gi.St;
const UI = imports.testcommon.ui;
function test() {
let stage = new Clutter.Stage({ width: 600, height: 600 });
UI.init(stage);
let vbox = new St.BoxLayout({ vertical: true,
width: stage.width,
height: stage.height,
style: 'padding: 10px; '
+ 'spacing: 10px;'
+ 'font: 15px sans-serif;' });
stage.add_actor(vbox);
function L(text, color) {
return new St.Label({ text: text,
style: "background: " + color + ";"
+ "border: 1px solid rgba(0,0,0,0.5);"
+ "padding: 1em;" });
}
////////////////////////////////////////////////////////////////////////////////
let table = new St.Table({ style: "border: 10px solid #888888;"
+ "padding: 10px;"
+ "spacing-rows: 5px;"
+ "spacing-columns: 15px;" });
vbox.add(table, { expand: true });
table.add(L("1", "#ff0000"),
{ row: 0, col: 0, col_span: 3 });
table.add(L("2", "#00ff00"),
{ row: 1, col: 0, row_span: 2 });
table.add(L("3", "#0000ff"),
{ row: 1, col: 1,
x_expand: 0 });
table.add(L("4", "#ffff00"),
{ row: 1, col: 2,
y_expand: 0, y_fill: 0
});
table.add(L("5", "#ff00ff"),
{ row: 2, col: 1, x_expand: 0 });
table.add(L("6", "#00ffff"),
{ row: 2, col: 2,
x_expand: 0, x_fill: 0, x_align: St.Align.END,
y_expand: 0, y_fill: 0, y_align: St.Align.END });
////////////////////////////////////////////////////////////////////////////////
UI.main(stage);
}
test();

Some files were not shown because too many files have changed in this diff Show More