Compare commits

..

16 Commits

Author SHA1 Message Date
Florian Müllner
a5a3523df8 Bump version to 40.4
Update NEWS.
2021-08-18 01:18:19 +02:00
Florian Müllner
06acd9ff25 build: Rewrite gettext domain when exporting zips
Now that every extension picks up its gettext domain from
its metadata, we can easily change it when exporting the
zips.

That ensures that every extension only binds its own domain
instead of messing up other extension's translations.

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/335

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/179>
2021-08-12 04:17:46 +02:00
Florian Müllner
1a1d45d9e4 build: Remove unused variable
https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/335

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/179>
2021-08-12 04:17:46 +02:00
Florian Müllner
1d3775b3d1 extensions: Pick up gettext domain from metadata
Since commit a6ee142f21, the extension archives that are uploaded
to extensions.gnome.org only contain strings that are relevant for
the extension, not all translations from all extensions.

Unfortunately all extensions still share a common gettext domain,
so the extension with the last bind_textdomain() call wins and
leaves the others without translations.

We'll address this by using distinct domains when not installed
system-wide. That becomes easier if there is a canonical place
for the text domain, with the existing metadata key being the
natural choice.

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/335

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/179>
2021-08-12 04:17:46 +02:00
Florian Müllner
15c83db793 drive-menu: Hide items initially
Now that the check for network mounts is non-blocking, the initial
sync doesn't take effect immediately. We don't want hidden items
to briefly flash the indicator, so create them initially hidden.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/176>
2021-07-19 16:44:37 +02:00
Florian Müllner
cc021589b8 drive-menu: Fix indicator visibility
Commit 519269be9d made the check for network mounts non-blocking, and
we now update the indicator's visibility before a newly-added network
mount is hidden.

Address this by monitoring the item itself for visibility changes.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/176>
2021-07-19 16:44:37 +02:00
Florian Müllner
5e316d37cb Bump version to 40.3
Update NEWS.
2021-07-12 18:18:45 +02:00
Florian Müllner
28dbb47937 window-list: Init translations
Whoops, we are missing the bindtextdomain() call, which means translations
won't work when no other extension that shares the same domain is used
(like in GNOME Classic for instance).

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/340
(cherry picked from commit c9d7f99d50f96d29c38380d9f0e3c9ddc660db9f)
2021-07-12 18:06:31 +02:00
Florian Müllner
619de9d5ee drive-menu: Avoid blocking I/O when querying filesystem
The last commit improved the heuristics for detecting network mounts,
but at the price of potentially blocking the shell. Avoid that drawback
by making the code in question async.

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/53

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/27>
(cherry picked from commit 519269be9d)
2021-07-12 18:06:31 +02:00
Florian Müllner
561b8aeb03 drive-menu: Don't assume mounts without volume are local
The intention of the code is to only expose actually plugged in
devices rather than network mounts, but the existing heuristics are
based on GVolume and simply assume a local mount where there's no
associated volume. Fill that gap by querying the ::remote filesystem
attribute in that case.

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/53

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/27>
(cherry picked from commit 7d6670ce3c)
2021-07-12 18:06:31 +02:00
Florian Müllner
4286fd1bcc Tag release 40.2
Update NEWS.
2021-06-10 13:41:34 +02:00
Adam Goode
3bb0897bc1 window-list: Don't use panel-button class for the workspace indicator
The panel-button introduces some horizontal padding which is insensitive
to scroll events. Without this change, there is a small dead zone in the
corner that cannot be used to switch workspaces with the mouse wheel.

For useMenu mode, this has the effect of removing all of the horizontal
space to the edge of the screen, so I add some back with the
status-label-bin margin.

This a is similar change to 8bad8a3b63.

Fixes #315.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/171>
(cherry picked from commit d6648b0b5c)
2021-06-10 13:38:47 +02:00
Juliano de Souza Camargo
12eedcf6f7 Update Portuguese translation 2021-06-07 10:22:02 +00:00
Hugo Carvalho
08d382facc Update Portuguese translation 2021-06-02 16:09:54 +00:00
Florian Müllner
96a1de92db build: Only use major version in shell-versions
The website changed its version handling again, and now takes "40.0"
to mean "40.0, and only 40.0".

Not complaining though, as "40" is more correct in my opinion anyway ...

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/172>
2021-05-25 19:26:08 +02:00
Florian Müllner
cc2f46b837 Post-release version bump 2021-05-14 17:00:35 +02:00
113 changed files with 8986 additions and 5639 deletions

30
.gitignore vendored
View File

@@ -1,7 +1,29 @@
ABOUT-NLS
Makefile
Makefile.in
Makefile.in.in
aclocal.m4
autom4te.cache/
config/
configure
config.log
config.status
data/*.json
m4/
po/*.header
po/*.sed
po/*.sin
po/Makevars.template
po/POTFILES
po/Rules-quot
po/gnome-shell-extensions.pot po/gnome-shell-extensions.pot
po/stamp-it
staging/
zip-files/ zip-files/
*~ *~
*.patch *.gmo
*.sw? metadata.json
.buildconfig *.desktop
.vscode *.gschema.valid
*.session

View File

@@ -1,114 +1,95 @@
include: include:
- remote: 'https://gitlab.freedesktop.org/freedesktop/ci-templates/-/raw/bbe5232986c9b98eb1efe62484e07216f7d1a4df/templates/fedora.yml' - remote: "https://gitlab.freedesktop.org/freedesktop/ci-templates/-/raw/6f86b8bcb0cd5168c32779c4fea9a893c4a0c046/templates/ci-fairy.yml"
- remote: "https://gitlab.freedesktop.org/freedesktop/ci-templates/-/raw/6f86b8bcb0cd5168c32779c4fea9a893c4a0c046/templates/ci-fairy.yml"
image: registry.gitlab.gnome.org/gnome/gnome-shell/fedora/33:2020-11-17.0
stages: stages:
- pre_review - pre_review
- prepare - review
- review - build
- build
- deploy
default: default:
image: registry.gitlab.gnome.org/gnome/gnome-shell/fedora/35:2022-02-18.0 # Cancel jobs if newer commits are pushed to the branch
# Cancel jobs if newer commits are pushed to the branch interruptible: true
interruptible: true # Auto-retry jobs in case of infra failures
# Auto-retry jobs in case of infra failures retry:
retry: max: 1
max: 1 when:
when: - 'runner_system_failure'
- 'runner_system_failure' - 'stuck_or_timeout_failure'
- 'stuck_or_timeout_failure' - 'scheduler_failure'
- 'scheduler_failure' - 'api_failure'
- 'api_failure'
variables: variables:
FDO_UPSTREAM_REPO: GNOME/gnome-shell-extensions LINT_LOG: "eslint-report.xml"
LINT_LOG: "eslint-report.xml" JS_LOG: "js-report.txt"
workflow: workflow:
rules: rules:
- if: '$CI_MERGE_REQUEST_IID' - if: '$CI_MERGE_REQUEST_IID'
- if: '$CI_COMMIT_TAG' - if: '$CI_COMMIT_TAG'
- if: '$CI_COMMIT_BRANCH' - if: '$CI_COMMIT_BRANCH'
.pipeline_guard: &pipeline_guard .pipeline_guard: &pipeline_guard
rules: rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"' - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_COMMIT_TAG' - if: '$CI_COMMIT_TAG'
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
- if: '$CI_COMMIT_BRANCH =~ /^gnome-[0-9-]+$/' - if: '$CI_COMMIT_BRANCH =~ /^gnome-[0-9-]+$/'
- when: 'manual' - when: 'manual'
.gnome-shell-extensions.fedora:34:
variables:
FDO_DISTRIBUTION_VERSION: 34
FDO_DISTRIBUTION_TAG: '2021-08-31.0'
FDO_DISTRIBUTION_PACKAGES: >
meson git gettext sassc
.prereview_req: &prereview_req
needs:
- check_commit_log
- check-merge-request
check_commit_log: check_commit_log:
extends: extends:
- .fdo.ci-fairy - .fdo.ci-fairy
stage: pre_review stage: pre_review
script: script:
- if [[ x"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" != "x" ]] ; - if [[ x"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" != "x" ]] ;
then then
ci-fairy check-commits --junit-xml=commit-message-junit-report.xml ; ci-fairy check-commits --junit-xml=commit-message-junit-report.xml ;
else else
echo "Not a merge request" ; echo "Not a merge request" ;
fi fi
<<: *pipeline_guard <<: *pipeline_guard
artifacts: artifacts:
expire_in: 1 week expire_in: 1 week
paths: paths:
- commit-message-junit-report.xml - commit-message-junit-report.xml
reports: reports:
junit: commit-message-junit-report.xml junit: commit-message-junit-report.xml
check-merge-request: check-merge-request:
extends: extends:
- .fdo.ci-fairy - .fdo.ci-fairy
stage: pre_review stage: pre_review
script: script:
- if [[ x"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" != "x" ]] ; - if [[ x"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" != "x" ]] ;
then then
ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request-report.xml ; ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request-report.xml ;
else else
echo "Not a merge request" ; echo "Not a merge request" ;
fi fi
<<: *pipeline_guard <<: *pipeline_guard
artifacts: artifacts:
expire_in: 1 week expire_in: 1 week
paths: paths:
- check-merge-request-report.xml - check-merge-request-report.xml
reports: reports:
junit: check-merge-request-report.xml junit: check-merge-request-report.xml
build-fedora-container:
extends:
- .fdo.container-build@fedora@x86_64
- .gnome-shell-extensions.fedora:34
stage: prepare
<<: *prereview_req
js_check: js_check:
stage: review stage: review
<<: *prereview_req
script: script:
- gjs-check-syntax - find extensions -name '*.js' -exec js78 -c '{}' ';' 2>&1 | tee $JS_LOG
- (! grep -q . $JS_LOG)
artifacts:
paths:
- ${JS_LOG}
when: on_failure
eslint: eslint:
stage: review stage: review
<<: *prereview_req
script: script:
- export NODE_PATH=$(npm root -g) - eslint -o $LINT_LOG -f junit extensions
- ./.gitlab-ci/run-eslint --output-file ${LINT_LOG} --format junit --stdout
artifacts: artifacts:
paths: paths:
- ${LINT_LOG} - ${LINT_LOG}
@@ -117,7 +98,7 @@ eslint:
build-bundles: build-bundles:
stage: build stage: build
<<: *prereview_req needs: ["check_commit_log"]
script: script:
- ./export-zips.sh - ./export-zips.sh
artifacts: artifacts:
@@ -125,45 +106,3 @@ build-bundles:
expose_as: 'Get Extension bundles here' expose_as: 'Get Extension bundles here'
paths: paths:
- zip-files/ - zip-files/
fedora-build:
extends:
- .fdo.distribution-image@fedora
- .gnome-shell-extensions.fedora:34
stage: build
needs:
- build-fedora-container
script:
- meson setup build --werror -Dextension_set=all -Dclassic_mode=true
- meson compile -C build
- meson test -C build
- meson install -C build
artifacts:
paths:
- build
fedora-dist:
extends:
- .fdo.distribution-image@fedora
- .gnome-shell-extensions.fedora:34
stage: deploy
needs:
- fedora-build
variables:
GIT_SUBMODULE_STRATEGY: normal
script:
- meson dist -C build
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
changes:
- "**/meson.build"
- meson/*
fedora-dist-tarball:
extends: fedora-dist
artifacts:
expose_as: 'Get tarball here'
paths:
- build/meson-dist/$CI_PROJECT_NAME-$CI_COMMIT_TAG.tar.xz
rules:
- if: '$CI_COMMIT_TAG'

View File

@@ -1,54 +0,0 @@
#!/usr/bin/env node
const {ESLint} = require('eslint');
console.log(`Running ESLint version ${ESLint.version}...`);
const fs = require('fs');
const path = require('path');
function hasOption(...names) {
return process.argv.some(arg => names.includes(arg));
}
function getOption(...names) {
const optIndex =
process.argv.findIndex(arg => names.includes(arg)) + 1;
if (optIndex === 0)
return undefined;
return process.argv[optIndex];
}
(async function main() {
const outputOption = getOption('--output-file', '-o');
const outputPath = outputOption ? path.resolve(outputOption) : null;
const sourceDir = path.dirname(process.argv[1]);
process.chdir(path.resolve(sourceDir, '..'));
const sources = ['extensions'];
const eslint = new ESLint();
const results = await eslint.lintFiles(sources);
const formatter = await eslint.loadFormatter(getOption('--format', '-f'));
const resultText = formatter.format(results);
if (outputPath) {
fs.mkdirSync(path.dirname(outputPath), {recursive: true});
fs.writeFileSync(outputPath, resultText);
if (hasOption('--stdout')) {
const consoleFormatter = await eslint.loadFormatter();
console.log(consoleFormatter.format(results));
}
} else {
console.log(resultText);
}
process.exitCode = results.some(r => r.errorCount > 0) ? 1 : 0;
})().catch((error) => {
process.exitCode = 1;
console.error(error);
});

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "data/gnome-shell-sass"]
path = data/gnome-shell-sass
url = https://gitlab.gnome.org/GNOME/gnome-shell-sass.git

View File

@@ -28,4 +28,4 @@ imports (like imports.lang or imports.dbus) and introspection,
the other for Shell API. Within the same group, put everything the other for Shell API. Within the same group, put everything
in alphabetic order. in alphabetic order.
[coding-style]: https://gitlab.gnome.org/GNOME/gjs/blob/HEAD/doc/Style_Guide.md [coding-style]: https://gitlab.gnome.org/GNOME/gjs/blob/master/doc/Style_Guide.md

215
NEWS
View File

@@ -1,203 +1,30 @@
45.beta 40.4
=======
* Port extensions to ESM [Florian; !259, !266, !268, !269]
* Misc. bug fixes and cleanups [Florian; !260, !261, !262, !263, !264]
Contributors:
Florian Müllner
Translators:
Efstathios Iosifidis [el]
45.alpha
========
* window-list: Modernize default styling [Alexander; !253]
* Replace classic styling with built-in light style [Florian; !254]
* window-list: Add tooltip for long window titles [Arik; !251]
* light-style: New extension [Florian; !256]
* Misc. bug fixes and cleanups [Florian; !255, !257]
Contributors:
Florian Müllner, Arik W, Alexander Weichart
44.0
==== ====
* Bump version * drive-menu: Fix indicator visibility [Florian; !176]
44.rc
=====
* Bump version
44.beta
=======
* Tweak menu alignment [robxnano; !246]
Contributors:
Florian Müllner, robxnano
Translators:
Vasil Pupkin [be]
43.1
====
* Fixed crash [Florian; !243]
* Misc. bug fixes and cleanups [mowemcfc; !244]
Contributors:
Florian Müllner, mowemcfc
Translators:
Sabri Ünal [tr]
43.0
====
Contributors:
Florian Müllner
Translators:
Pawan Chitrakar [ne], Zurab Kargareteli [ka], Aleksandr Melman [ru]
43.rc
=====
* Misc. bug fixes and cleanups [Florian; !240]
Contributors:
Florian Müllner
43.beta
=======
* Misc. bug fixes and cleanups [Florian; !237, !238]
Contributors:
Florian Müllner
Translators:
Nart Tlisha [ab]
43.alpha
========
Contributors:
Florian Müllner
Translators:
Marco Ciampa [it]
42.3
====
* screenshot-window-sizer: Fix reported sizes on wayland [Florian; !232]
* window-list: Improve touch support [Florian; !233]
Contributors:
Florian Müllner
42.2
====
* native-window-placement: Adjust to gnome-shell 42 changes [Florian; !229]
* window-list: Fix visibility on non-primary monitors [Jason; !230]
Contributors:
Jason Lynch, Florian Müllner
Translators:
Cheng-Chia Tseng [zh_TW]
42.1
====
* Misc. bug fixes and cleanups [Florian; !223, !222, !225]
Contributors:
Florian Müllner
Translators:
Milo Casagrande [it], Rūdolfs Mazurs [lv], Nathan Follens [nl],
Ngọc Quân Trần [vi], Zurab Kargareteli [ka]
42.0
====
Translators:
Philipp Kiemle [de], Balázs Úr [hu], Марко Костић [sr], sicklylife [ja],
Baurzhan Muftakhidinov [kk]
42.rc
=====
* Misc. bug fixes and cleanups [Florian; !215, !218]
Contributors:
Florian Müllner
Translators:
Marek Černocký [cs], Dušan Kazik [sk], Piotr Drąg [pl], Jiri Grönroos [fi],
Luna Jernberg [sv], Alan Mortensen [da], Charles Monzat [fr],
Changwoo Ryu [ko]
42.beta
=======
* workspace-indicator: Fix cancelling editing with Esc [Florian; !208]
* window-list: Update window tracking to avoid missing icons [Florian; !207]
* Use libadwaita for preferences [Florian; !209, !213]
* Adapt to Clutter grab API changes [Florian; !212]
* Misc. bug fixes and cleanups [Jan, Florian; !210, !214]
Contributors:
Jan Beich, Florian Müllner, Naala Nanba
Translators:
Boyuan Yang [zh_CN], Matej Urbančič [sl], Naala Nanba [ab],
Alexander Shopov [bg], Emin Tufan Çetin [tr]
42.alpha
========
* native-window-placement: Fix distorted layout in app grid [Sebastian; !189]
* window-list: Fix on-screen keyboard [Florian; !199]
* Misc. bug fixes and cleanups [Neal; Just; !195, !197]
Contributors:
Piotr Drąg, Neal Gompa, Sebastian Keller, Florian Müllner, Just Perfection
Translators:
Goran Vidović [hr], Sveinn í Felli [is], Yuri Chornoivan [uk],
Fabio Tomat [fur], Quentin PAGÈS [oc], Hugo Carvalho [pt],
Yaron Shahrabani [he], Jordi Mas i Hernandez [ca], MohammadSaleh Kamyab [fa],
Fran Dieguez [gl], Daniel Mustieles [es], Aleksandr Melman [ru],
Aurimas Černius [lt], Asier Sarasua Garmendia [eu], Kukuh Syafaat [id],
Rafael Fontenelle [pt_BR]
41.0
====
* Bump version
41.rc.1
=======
* Fix pre-generating stylesheets in tarball [Florian; !190]
Contributors:
Florian Müllner
41.rc
=====
* window-list: Adapt to overview-on-startup [Florian; !185]
* apps-menu: Use a custom 'toggle-menu' shortcut [Florian; !173]
* Misc. bug fixes and cleanups [Florian; !186]
Contributors:
Florian Müllner
41.beta
=======
* window-list: Extend reactive area of minimap to screen edges [Adam; !171]
* drive-menu: Improve detection of network mounts [Florian; !27, !176]
* Use distinct gettext domain for e.g.o uploads [Florian; #335] * Use distinct gettext domain for e.g.o uploads [Florian; #335]
* Misc. bug fixes and cleanups [Florian; !172, !174, !177, !167, !178, !180,
!181, !182, !183]
Contributors: Contributors:
Marco Trevisan (Treviño), Adam Goode, Florian Müllner Florian Müllner
40.3
====
* drive-menu: Improve detection of network mounts [Florian; !27]
* Misc. bug fixes [Florian; #340]
Contributors:
Florian Müllner
40.2
====
* window-list: Extend reactive area of minimap to screen edges [Adam; !171]
* Misc. bug fixes [Florian; !172]
Contributors:
Adam Goode, Florian Müllner
Translators: Translators:
Hugo Carvalho [pt], Juliano de Souza Camargo [pt], Alexander Shopov [bg] Hugo Carvalho [pt], Juliano de Souza Camargo [pt]
40.1 40.1
==== ====

View File

@@ -69,19 +69,6 @@ GSettings key.
Adds a simple workspace switcher to the top bar. Adds a simple workspace switcher to the top bar.
## Default branch
The default development branch is `main`. If you still have a local
checkout under the old name, use:
```sh
git checkout master
git branch -m master main
git fetch
git branch --unset-upstream
git branch -u origin/master
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
```
## License ## License
GNOME Shell Extensions are distributed under the terms of the GNU General GNOME Shell Extensions are distributed under the terms of the GNU General

178
data/calendar-today.svg Normal file
View File

@@ -0,0 +1,178 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="24"
height="24"
id="svg10621"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="calendar-today.svg">
<defs
id="defs10623">
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient99561-1"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<linearGradient
inkscape:collect="always"
id="linearGradient34508-1-3">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop34510-1-9" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop34512-4-5" />
</linearGradient>
<radialGradient
r="42"
fy="30"
fx="51"
cy="30"
cx="51"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
gradientUnits="userSpaceOnUse"
id="radialGradient10592"
xlink:href="#linearGradient34508-1-3"
inkscape:collect="always" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient3770"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient3001"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient3007"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient3067"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient3072"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient34508-1-3"
id="radialGradient2997"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.72146227,0,0,0.27484277,14.205424,21.754717)"
cx="51"
cy="30"
fx="51"
fy="30"
r="42" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#d3d3d3"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="8"
inkscape:cx="-55.349829"
inkscape:cy="-31.442864"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:window-width="2133"
inkscape:window-height="1241"
inkscape:window-x="238"
inkscape:window-y="89"
inkscape:window-maximized="0"
borderlayer="true"
inkscape:showpageshadow="false">
<inkscape:grid
type="xygrid"
id="grid3109"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata10626">
<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(-469.08263,-537.99307)">
<circle
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:0.23756906;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;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="path7305"
cx="481.57138"
cy="559.4649"
r="1.5" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 100 KiB

View File

@@ -0,0 +1,262 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="65"
height="22"
id="svg10865"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="classic-toggle-off-intl.svg">
<defs
id="defs10867">
<linearGradient
id="linearGradient62852-6-5">
<stop
id="stop62854-6-7"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0" />
<stop
id="stop62860-5-3"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0"
effect="spiro" />
<linearGradient
id="linearGradient62821-5-8">
<stop
id="stop62823-2-4"
offset="0"
style="stop-color:#d1d3d1;stop-opacity:1;" />
<stop
id="stop62825-3-8"
offset="1"
style="stop-color:#ebebeb;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient62852-6-5-3">
<stop
id="stop62854-6-7-6"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0-3" />
<stop
id="stop62860-5-3-9"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
effect="spiro"
id="path-effect62829-6-8-0"
is_visible="true" />
<linearGradient
id="linearGradient62821-5-8-1">
<stop
id="stop62823-2-4-2"
offset="0"
style="stop-color:#d1d3d1;stop-opacity:1;" />
<stop
id="stop62825-3-8-9"
offset="1"
style="stop-color:#ebebeb;stop-opacity:1;" />
</linearGradient>
<linearGradient
y2="507.42715"
x2="702.58966"
y1="484.49405"
x1="702.58966"
gradientTransform="matrix(1.3066667,0,0,1,-841.64667,-483)"
gradientUnits="userSpaceOnUse"
id="linearGradient11647"
xlink:href="#linearGradient62821-5-8-1"
inkscape:collect="always" />
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath65663">
<rect
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#729fcf;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:new"
id="rect65665"
width="96.999924"
height="24.292892"
x="708.71954"
y="406.96973"
rx="3.1139846"
ry="1.9595497"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/content selection/content-selection.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90" />
</clipPath>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5378-2-5-9-9-0-80-7-6-8-4-5-7-3-6-2-9"
id="linearGradient65582"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.5250827,0,0,0.72144839,620.16092,156.4917)"
x1="207.17195"
y1="497.39584"
x2="207.17195"
y2="531.48669" />
<linearGradient
inkscape:collect="always"
id="linearGradient5378-2-5-9-9-0-80-7-6-8-4-5-7-3-6-2-9">
<stop
style="stop-color:#f4f6f4;stop-opacity:1"
offset="0"
id="stop5380-6-1-1-9-3-6-3-6-45-6-4-4-9-9-8-9" />
<stop
style="stop-color:#d7dad7;stop-opacity:1"
offset="1"
id="stop5382-06-3-6-4-2-4-6-8-0-9-6-8-7-7-6-7" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient65584">
<stop
style="stop-color:#f1f1f1;stop-opacity:1"
offset="0"
id="stop65586" />
<stop
style="stop-color:#a7aba7;stop-opacity:0;"
offset="1"
id="stop65588" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5378-2-5-9-9-0-80-7-6-8-4-5-7-3-6-2-9"
id="linearGradient65582-5"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.5250827,0,0,0.72144839,-75.348673,-359.16458)"
x1="207.17195"
y1="497.39584"
x2="207.17195"
y2="531.48669" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient65584"
id="linearGradient65590-6"
x1="716.62506"
y1="537.23358"
x2="716.62506"
y2="535.23358"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0139469,0,0,1.0139469,-705.52354,-521.99915)" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="23.565368"
inkscape:cy="19.596892"
inkscape:document-units="px"
inkscape:current-layer="g62929"
showgrid="false"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:snap-others="false"
inkscape:window-width="2560"
inkscape:window-height="1342"
inkscape:window-x="0"
inkscape:window-y="28"
inkscape:window-maximized="1"
showborder="false">
<inkscape:grid
type="xygrid"
id="grid11512" />
</sodipodi:namedview>
<metadata
id="metadata10870">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1030.3622)">
<g
inkscape:export-ydpi="90"
inkscape:export-xdpi="90"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/system-settings/network/network-panel-summary.png"
style="display:inline"
id="g62929"
transform="translate(-643.91421,517.29894)">
<g
transform="translate(0,30)"
id="g62931">
<rect
style="fill:#cecece;fill-opacity:1;stroke:#a7a7a7;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill-rule:nonzero;stroke-linejoin:miter;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;clip-rule:nonzero;opacity:1;isolation:auto;mix-blend-mode:normal;solid-color:#000000;solid-opacity:1;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;filter-blend-mode:normal;filter-gaussianBlur-deviation:0;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto"
id="rect62935"
width="63.856125"
height="21.093594"
x="644.5"
y="483.5"
rx="2"
ry="2" />
<rect
style="fill:url(#linearGradient65582);fill-opacity:1;stroke:#a7a7a7;stroke-width:0.97313344;stroke-linecap:butt;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline;color:#000000;clip-rule:nonzero;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-rule:nonzero;stroke-linejoin:miter;stroke-dashoffset:0;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;filter-blend-mode:normal;filter-gaussianBlur-deviation:0;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="rect62937"
width="29.97398"
height="17.022524"
x="646.55896"
y="485.61429"
rx="1"
ry="1" />
<g
transform="translate(-38.048674,-1.9445437)"
id="g62939" />
<path
inkscape:connector-curvature="0"
inkscape:original-d="m 647.78241,486.57192 27.73523,0"
inkscape:path-effect="#path-effect62989-8-0"
id="path62947"
d="m 647.78241,486.57192 27.73523,0"
style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
id="g11665"
transform="matrix(0.78906097,0,0,0.78906097,178.78814,111.57844)" />
<path
sodipodi:type="arc"
id="path3016"
sodipodi:cx="50.375"
sodipodi:cy="11.875"
sodipodi:rx="4.625"
sodipodi:ry="4.625"
d="M 55,11.875 A 4.625,4.625 0 0 1 50.375,16.5 4.625,4.625 0 0 1 45.75,11.875 4.625,4.625 0 0 1 50.375,7.25 4.625,4.625 0 0 1 55,11.875 Z"
transform="translate(642.41421,512.02037)"
style="fill:none;stroke:#2e3436;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 9.5 KiB

View File

@@ -0,0 +1,222 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="65"
height="22"
id="svg10865"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="classic-toggle-off-us.svg">
<defs
id="defs10867">
<linearGradient
id="linearGradient62852-6-5">
<stop
id="stop62854-6-7"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0" />
<stop
id="stop62860-5-3"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0"
effect="spiro" />
<linearGradient
id="linearGradient62821-5-8">
<stop
id="stop62823-2-4"
offset="0"
style="stop-color:#d1d3d1;stop-opacity:1;" />
<stop
id="stop62825-3-8"
offset="1"
style="stop-color:#ebebeb;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient62852-6-5-3">
<stop
id="stop62854-6-7-6"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0-3" />
<stop
id="stop62860-5-3-9"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
effect="spiro"
id="path-effect62829-6-8-0"
is_visible="true" />
<linearGradient
id="linearGradient62821-5-8-1">
<stop
id="stop62823-2-4-2"
offset="0"
style="stop-color:#d1d3d1;stop-opacity:1;" />
<stop
id="stop62825-3-8-9"
offset="1"
style="stop-color:#ebebeb;stop-opacity:1;" />
</linearGradient>
<linearGradient
y2="507.42715"
x2="702.58966"
y1="484.49405"
x1="702.58966"
gradientTransform="matrix(1.3066667,0,0,1,-841.64667,-483)"
gradientUnits="userSpaceOnUse"
id="linearGradient11647"
xlink:href="#linearGradient62821-5-8-1"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5378-2-5-9-9-0-80-7-6-8-4-5-7-3-6-2-9"
id="linearGradient65582"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.5250827,0,0,0.72144839,620.16092,156.4917)"
x1="207.17195"
y1="497.39584"
x2="207.17195"
y2="531.48669" />
<linearGradient
inkscape:collect="always"
id="linearGradient5378-2-5-9-9-0-80-7-6-8-4-5-7-3-6-2-9">
<stop
style="stop-color:#f4f6f4;stop-opacity:1"
offset="0"
id="stop5380-6-1-1-9-3-6-3-6-45-6-4-4-9-9-8-9" />
<stop
style="stop-color:#d7dad7;stop-opacity:1"
offset="1"
id="stop5382-06-3-6-4-2-4-6-8-0-9-6-8-7-7-6-7" />
</linearGradient>
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0-6"
effect="spiro" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="78.222729"
inkscape:cy="-3.6620078"
inkscape:document-units="px"
inkscape:current-layer="g62929"
showgrid="false"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:snap-others="false"
inkscape:window-width="2560"
inkscape:window-height="1342"
inkscape:window-x="0"
inkscape:window-y="28"
inkscape:window-maximized="1"
showborder="false">
<inkscape:grid
type="xygrid"
id="grid11512" />
</sodipodi:namedview>
<metadata
id="metadata10870">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1030.3622)">
<g
inkscape:export-ydpi="90"
inkscape:export-xdpi="90"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/system-settings/network/network-panel-summary.png"
style="display:inline"
id="g62929"
transform="translate(-643.91421,517.29894)">
<g
style="display:inline"
transform="translate(0,30)"
id="g62931">
<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:#cecece;fill-opacity:1;fill-rule:nonzero;stroke:#a7a7a7;stroke-width:1;stroke-linecap:butt;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:new"
id="rect62935"
width="63.856125"
height="21.093594"
x="644.5"
y="483.5"
rx="2"
ry="2" />
<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:url(#linearGradient65582);fill-opacity:1;fill-rule:nonzero;stroke:#a7a7a7;stroke-width:0.97313344;stroke-linecap:butt;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="rect62937"
width="29.97398"
height="17.022524"
x="646.55896"
y="485.61429"
rx="1"
ry="1" />
<g
transform="translate(-38.048674,-1.9445437)"
id="g62939" />
<path
inkscape:connector-curvature="0"
inkscape:original-d="m 647.78241,486.57192 27.73523,0"
inkscape:path-effect="#path-effect62989-8-0-6"
id="path62947"
d="m 647.78241,486.57192 27.73523,0"
style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
id="g11665"
transform="matrix(0.78906097,0,0,0.78906097,167.78814,111.57844)">
<text
xml:space="preserve"
style="font-size:12.69556618px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#2e3436;fill-opacity:1;stroke:none;font-family:Cantarell;-inkscape-font-specification:Cantarell Bold"
x="644.46393"
y="533.87158"
id="text62949"
sodipodi:linespacing="125%"
transform="scale(1.0113976,0.98873084)"><tspan
sodipodi:role="line"
id="tspan62951"
x="644.46393"
y="533.87158">OFF</tspan></text>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

View File

@@ -0,0 +1,175 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="65"
height="22"
id="svg10865"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="classic-toggle-on-intl.svg">
<defs
id="defs10867">
<linearGradient
id="linearGradient62852-6-5">
<stop
id="stop62854-6-7"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0" />
<stop
id="stop62860-5-3"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0"
effect="spiro" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient38513"
id="linearGradient38519"
x1="690"
y1="506.25049"
x2="690"
y2="480.93414"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
id="linearGradient38513">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop38515" />
<stop
style="stop-color:#6f9ccd;stop-opacity:1"
offset="1"
id="stop38517" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient62852-6-5"
id="linearGradient62981-1-1"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.85639946,0,0,0.81059641,57.747905,92.132229)"
x1="740"
y1="486.10501"
x2="740"
y2="505.3204" />
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0-8"
effect="spiro" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="9.3225163"
inkscape:cy="-0.1588306"
inkscape:document-units="px"
inkscape:current-layer="g62929"
showgrid="false"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:snap-others="false"
inkscape:window-width="2560"
inkscape:window-height="1342"
inkscape:window-x="0"
inkscape:window-y="28"
inkscape:window-maximized="1"
showborder="false">
<inkscape:grid
type="xygrid"
id="grid11512" />
</sodipodi:namedview>
<metadata
id="metadata10870">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1030.3622)">
<g
inkscape:export-ydpi="90"
inkscape:export-xdpi="90"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/system-settings/network/network-panel-summary.png"
style="display:inline"
id="g62929"
transform="translate(-643.91421,517.29894)">
<g
style="display:inline"
transform="translate(0,30)"
id="g62931">
<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:url(#linearGradient38519);fill-opacity:1;fill-rule:nonzero;stroke:#3465a4;stroke-width:1;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="rect62935"
width="63.856125"
height="21.093594"
x="644.5"
y="483.5"
rx="2"
ry="2" />
<rect
style="display:inline;fill:url(#linearGradient62981-1-1);fill-opacity:1;stroke:#3465a4;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect62937"
width="29.97398"
height="17.022524"
x="676.49646"
y="485.67679"
rx="1"
ry="1" />
<g
transform="translate(-7.9861743,-1.9445437)"
id="g62939" />
<path
inkscape:connector-curvature="0"
inkscape:original-d="m 677.59874,486.57192 27.94632,0"
inkscape:path-effect="#path-effect62989-8-0-8"
id="path62947"
d="m 677.59874,486.57192 27.94632,0"
style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<path
inkscape:connector-curvature="0"
id="path4444"
d="m 661.91421,522.09451 0,7"
style="fill:#3465a4;stroke:#3465a4;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;color:#000000;fill-opacity:1;fill-rule:nonzero;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
<path
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
d="m 18,7.96875 0,7"
id="path3922"
inkscape:connector-curvature="0"
transform="translate(643.91421,513.06326)" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,209 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="65"
height="22"
id="svg10865"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="classic-toggle-on-us.svg">
<defs
id="defs10867">
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient62852-6-5"
id="linearGradient62981-1-1"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.85639946,0,0,0.81059641,57.747905,92.132229)"
x1="740"
y1="486.10501"
x2="740"
y2="505.3204" />
<linearGradient
id="linearGradient62852-6-5">
<stop
id="stop62854-6-7"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
style="stop-color:#eeeeec;stop-opacity:1"
offset="0.97726452"
id="stop62858-8-0" />
<stop
id="stop62860-5-3"
offset="1"
style="stop-color:#f5f5f4;stop-opacity:1" />
</linearGradient>
<inkscape:path-effect
is_visible="true"
id="path-effect62989-8-0"
effect="spiro" />
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath65663">
<rect
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#729fcf;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:new"
id="rect65665"
width="96.999924"
height="24.292892"
x="708.71954"
y="406.96973"
rx="3.1139846"
ry="1.9595497"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/content selection/content-selection.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90" />
</clipPath>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient38513"
id="linearGradient38519"
x1="690"
y1="506.25049"
x2="690"
y2="480.93414"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
id="linearGradient38513">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop38515" />
<stop
style="stop-color:#6f9ccd;stop-opacity:1"
offset="1"
id="stop38517" />
</linearGradient>
<linearGradient
gradientTransform="translate(-644,-483)"
inkscape:collect="always"
xlink:href="#linearGradient38513"
id="linearGradient38519-3"
x1="690"
y1="506.25049"
x2="690"
y2="480.93414"
gradientUnits="userSpaceOnUse" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="20.775745"
inkscape:cy="7.0434022"
inkscape:document-units="px"
inkscape:current-layer="g62929"
showgrid="false"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:snap-nodes="false"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:snap-others="false"
inkscape:window-width="2560"
inkscape:window-height="1342"
inkscape:window-x="0"
inkscape:window-y="28"
inkscape:window-maximized="1"
showborder="false">
<inkscape:grid
type="xygrid"
id="grid11512" />
</sodipodi:namedview>
<metadata
id="metadata10870">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1030.3622)">
<g
inkscape:export-ydpi="90"
inkscape:export-xdpi="90"
inkscape:export-filename="/home/lapo.fedora/SparkleShare/gnome-mockups/system-settings/network/network-panel-summary.png"
style="display:inline"
id="g62929"
transform="translate(-643.91421,517.29894)">
<g
transform="translate(0,30)"
id="g62931">
<rect
style="fill:url(#linearGradient38519);fill-opacity:1;stroke:#3465a4;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;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-rule:nonzero;stroke-linejoin:miter;stroke-dashoffset:0;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal;filter-blend-mode:normal;filter-gaussianBlur-deviation:0;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
id="rect62935"
width="63.856125"
height="21.093594"
x="644.5"
y="483.5"
rx="2"
ry="2" />
<rect
style="fill:url(#linearGradient62981-1-1);fill-opacity:1;stroke:#3465a4;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
id="rect62937"
width="29.97398"
height="17.022524"
x="676.49646"
y="485.67679"
rx="1"
ry="1" />
<g
transform="translate(-7.9861743,-1.9445437)"
id="g62939" />
<path
inkscape:connector-curvature="0"
inkscape:original-d="m 677.59874,486.57192 27.94632,0"
inkscape:path-effect="#path-effect62989-8-0"
id="path62947"
d="m 677.59874,486.57192 27.94632,0"
style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<text
transform="scale(1.0113976,0.98873084)"
sodipodi:linespacing="125%"
id="text62949-7"
y="534.96918"
x="646.71399"
style="font-size:10.01104736px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#3465a4;fill-opacity:1;stroke:none;display:inline;font-family:Cantarell;-inkscape-font-specification:Cantarell Bold;"
xml:space="preserve"><tspan
y="534.96918"
x="646.71399"
id="tspan62951-7"
sodipodi:role="line">ON</tspan></text>
<text
transform="scale(1.0113976,0.98873084)"
sodipodi:linespacing="125%"
id="text62949"
y="533.94482"
x="646.71399"
style="font-size:10.01104736px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Cantarell;-inkscape-font-specification:Cantarell Bold"
xml:space="preserve"><tspan
y="533.94482"
x="646.71399"
id="tspan62951"
sodipodi:role="line">ON</tspan></text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@@ -1,11 +1,11 @@
{ {
"parentMode": "user", "parentMode": "user",
"colorScheme": "force-light", "stylesheetName": "gnome-classic.css",
"hasOverview": false, "hasOverview": false,
"showWelcomeDialog": false, "showWelcomeDialog": false,
"enabledExtensions": [@CLASSIC_EXTENSIONS@], "enabledExtensions": [@CLASSIC_EXTENSIONS@],
"panel": { "left": [], "panel": { "left": ["appMenu"],
"center": [], "center": [],
"right": ["a11y", "keyboard", "dateMenu", "quickSettings"] "right": ["a11y", "keyboard", "dateMenu", "aggregateMenu"]
} }
} }

View File

@@ -0,0 +1,5 @@
@import url("gnome-classic.css");
stage {
-st-icon-style: symbolic;
}

View File

@@ -1,8 +0,0 @@
[Desktop Entry]
Name=GNOME Classic on Wayland
Comment=This session logs you into GNOME Classic
Exec=env GNOME_SHELL_SESSION_MODE=classic gnome-session
TryExec=gnome-session
Type=Application
DesktopNames=GNOME-Classic;GNOME;
X-GDM-SessionRegisters=true

View File

@@ -1,8 +0,0 @@
[Desktop Entry]
Name=GNOME Classic on Xorg
Comment=This session logs you into GNOME Classic
Exec=env GNOME_SHELL_SESSION_MODE=classic gnome-session
TryExec=gnome-session
Type=Application
DesktopNames=GNOME-Classic;GNOME;
X-GDM-SessionRegisters=true

View File

@@ -5,4 +5,3 @@ Exec=env GNOME_SHELL_SESSION_MODE=classic gnome-session
TryExec=gnome-session TryExec=gnome-session
Type=Application Type=Application
DesktopNames=GNOME-Classic;GNOME; DesktopNames=GNOME-Classic;GNOME;
X-GDM-SessionRegisters=true

107
data/gnome-classic.scss Normal file
View File

@@ -0,0 +1,107 @@
/* Use the gnome-shell theme, but with light colors */
$variant: 'light';
@import "gnome-shell-sass/_colors"; //use gtk colors
@import "gnome-shell-sass/_drawing";
@import "gnome-shell-sass/_common";
@import "gnome-shell-sass/_widgets";
/* Overrides */
#panel, #panel.solid {
font-weight: normal;
background-color: $bg_color;
background-gradient-direction: vertical;
background-gradient-end: darken($bg_color,5%);
border-top-color: #666; /* we don't support non-uniform border-colors and
use the top border color for any border, so we
need to set it even if all we want is a bottom
border */
border-bottom: 1px solid #666;
app-icon-bottom-clip: 0px;
&:overview {
background-color: #000;
background-gradient-end: #000;
border-top-color: #000;
border-bottom: 1px solid #000;
.panel-button { color: #fff; }
}
.panel-button {
-natural-hpadding: 8px;
-minimum-hpadding: 4px;
font-weight: normal;
color: $fg_color;
text-shadow: none;
transition-duration: 0ms;
border: 0;
border-radius: 0px;
&.clock-display {
.clock {
transition-duration: 0ms;
border: 0;
border-radius: 0px;
}
}
&:hover {
color: lighten($fg_color,10%);
text-shadow: none;
& .system-status-icon { icon-shadow: none; }
}
&:active, &:overview, &:focus, &:checked {
// Trick due to St limitations. It needs a background to draw
// a box-shadow
background-color: $selected_bg_color;
color: $selected_fg_color;
box-shadow: none;
& > .system-status-icon { icon-shadow: none; }
}
.app-menu-icon { width: 0; height: 0; margin: 0; } // shell's display:none; :D
.system-status-icon {
icon-shadow: none;
}
}
.panel-corner,
.panel-corner:active,
.panel-corner:overview,
.panel-corner:focus {
-panel-corner-radius: 0;
}
&.lock-screen,
&.unlock-screen,
&.login-screen {
background-color: transparentize($bg_color, 0.5);
background-gradient-start: transparentize($bg_color, 0.5);
background-gradient-end: transparentize($bg_color, 0.5);
border-bottom: none;
.panel-button { color: $osd_fg_color; }
}
}
#appMenu {
padding: 0 8px 0 8px;
spinner-image: url("classic-process-working.svg");
}
.tile-preview-left.on-primary,
.tile-preview-right.on-primary,
.tile-preview-left.tile-preview-right.on-primary {
/* keep in sync with -panel-corner-radius */
border-radius: 0;
}
@each $v in us, intl {
.toggle-switch-#{$v} {
background-image: url("classic-toggle-off-#{$v}.svg");
&:checked { background-image: url("classic-toggle-on-#{$v}.svg"); }
}
}
.calendar-day-with-events {
background-image: url("calendar-today.svg");
}

1
data/gnome-shell-sass Submodule

Submodule data/gnome-shell-sass added at 9d66f7dd54

View File

@@ -1,34 +1,12 @@
session_desktop_base = 'gnome-classic' session_desktop = 'gnome-classic.desktop'
i18n.merge_file('',
session_desktops = [ input: session_desktop + '.in',
session_desktop_base, output: session_desktop,
session_desktop_base + '-xorg', po_dir: '../po',
session_desktop_base + '-wayland', install: true,
] install_dir: xsessiondir,
type: 'desktop'
foreach name: session_desktops )
session_desktop = name + '.desktop'
if name.endswith('-xorg')
session_instdir = xsessiondir
elif name.endswith('-wayland')
session_instdir = wlsessiondir
else
# FIXME: The same target can not be copied into two directories.
# There is a workaround in meson/session-post-install.py until proper
# solution arises:
# https://github.com/mesonbuild/meson/issues/2416
session_instdir = xsessiondir
#session_instdir = [ xesssiondir, wlsessiondir ]
endif
i18n.merge_file(
input: session_desktop + '.in',
output: session_desktop,
po_dir: '../po',
install: true,
install_dir: session_instdir,
type: 'desktop'
)
endforeach
classic_uuids = [] classic_uuids = []
foreach e : classic_extensions foreach e : classic_extensions
@@ -46,5 +24,74 @@ configure_file(
install_dir: modedir install_dir: modedir
) )
theme_sources = files(
'gnome-shell-sass/_colors.scss',
'gnome-shell-sass/_common.scss',
'gnome-shell-sass/_drawing.scss',
'gnome-shell-sass/_high-contrast-colors.scss',
'gnome-shell-sass/_widgets.scss',
'gnome-shell-sass/widgets/_a11y.scss',
'gnome-shell-sass/widgets/_app-grid.scss',
'gnome-shell-sass/widgets/_base.scss',
'gnome-shell-sass/widgets/_buttons.scss',
'gnome-shell-sass/widgets/_calendar.scss',
'gnome-shell-sass/widgets/_check-box.scss',
'gnome-shell-sass/widgets/_corner-ripple.scss',
'gnome-shell-sass/widgets/_dash.scss',
'gnome-shell-sass/widgets/_dialogs.scss',
'gnome-shell-sass/widgets/_entries.scss',
'gnome-shell-sass/widgets/_hotplug.scss',
'gnome-shell-sass/widgets/_ibus-popup.scss',
'gnome-shell-sass/widgets/_keyboard.scss',
'gnome-shell-sass/widgets/_login-dialog.scss',
'gnome-shell-sass/widgets/_looking-glass.scss',
'gnome-shell-sass/widgets/_message-list.scss',
'gnome-shell-sass/widgets/_misc.scss',
'gnome-shell-sass/widgets/_network-dialog.scss',
'gnome-shell-sass/widgets/_notifications.scss',
'gnome-shell-sass/widgets/_osd.scss',
'gnome-shell-sass/widgets/_overview.scss',
'gnome-shell-sass/widgets/_panel.scss',
'gnome-shell-sass/widgets/_popovers.scss',
'gnome-shell-sass/widgets/_screen-shield.scss',
'gnome-shell-sass/widgets/_scrollbars.scss',
'gnome-shell-sass/widgets/_search-entry.scss',
'gnome-shell-sass/widgets/_search-results.scss',
'gnome-shell-sass/widgets/_slider.scss',
'gnome-shell-sass/widgets/_switcher-popup.scss',
'gnome-shell-sass/widgets/_switches.scss',
'gnome-shell-sass/widgets/_tiled-previews.scss',
'gnome-shell-sass/widgets/_window-picker.scss',
'gnome-shell-sass/widgets/_workspace-switcher.scss',
'gnome-shell-sass/widgets/_workspace-thumbnails.scss'
)
theme_data = [
'calendar-today.svg',
'classic-process-working.svg',
'classic-toggle-off-intl.svg',
'classic-toggle-off-us.svg',
'classic-toggle-on-intl.svg',
'classic-toggle-on-us.svg',
'gnome-classic-high-contrast.css'
]
stylesheet = 'gnome-classic.css'
if fs.exists(stylesheet)
install_data(stylesheet, install_dir: themedir)
else
sassc = find_program('sassc', required: true)
custom_target(stylesheet,
input: fs.replace_suffix(stylesheet, '.scss'),
output: stylesheet,
depend_files: theme_sources,
command: [sassc, '-a', '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: themedir
)
endif
install_data(theme_data, install_dir: themedir)
classic_override = '00_org.gnome.shell.extensions.classic.gschema.override' classic_override = '00_org.gnome.shell.extensions.classic.gschema.override'
install_data(classic_override, install_dir: schemadir) install_data(classic_override, install_dir: schemadir)

View File

@@ -1,4 +1,4 @@
#!/bin/bash #!/bin/sh
srcdir=`dirname $0` srcdir=`dirname $0`
srcdir=`(cd $srcdir && pwd)` srcdir=`(cd $srcdir && pwd)`
@@ -7,7 +7,7 @@ builddir=`mktemp -p $srcdir -d _build.XXXXXX` || exit 1
installdir=`mktemp -p $srcdir -d _install.XXXXXX` || exit 1 installdir=`mktemp -p $srcdir -d _install.XXXXXX` || exit 1
meson setup --prefix=$installdir -Dextension_set=all $srcdir $builddir meson setup --prefix=$installdir -Dextension_set=all $srcdir $builddir
meson install -C $builddir ninja -C$builddir install
rm -rf $srcdir/zip-files rm -rf $srcdir/zip-files
mkdir $srcdir/zip-files mkdir $srcdir/zip-files

View File

@@ -1,22 +1,20 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */ /* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Atk from 'gi://Atk'; /* exported init enable disable */
import Clutter from 'gi://Clutter';
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import GMenu from 'gi://GMenu';
import GObject from 'gi://GObject';
import Gtk from 'gi://Gtk';
import Meta from 'gi://Meta';
import Shell from 'gi://Shell';
import St from 'gi://St';
import {EventEmitter} from 'resource:///org/gnome/shell/misc/signals.js';
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const {
Atk, Clutter, Gio, GLib, GMenu, GObject, Gtk, Meta, Shell, St,
} = imports.gi;
const Signals = imports.signals;
import * as DND from 'resource:///org/gnome/shell/ui/dnd.js'; const DND = imports.ui.dnd;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const ExtensionUtils = imports.misc.extensionUtils;
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; const Main = imports.ui.main;
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const appSys = Shell.AppSystem.get_default(); const appSys = Shell.AppSystem.get_default();
@@ -28,13 +26,10 @@ const NAVIGATION_REGION_OVERSHOOT = 50;
Gio._promisify(Gio._LocalFilePrototype, 'query_info_async', 'query_info_finish'); Gio._promisify(Gio._LocalFilePrototype, 'query_info_async', 'query_info_finish');
Gio._promisify(Gio._LocalFilePrototype, 'set_attributes_async', 'set_attributes_finish'); Gio._promisify(Gio._LocalFilePrototype, 'set_attributes_async', 'set_attributes_finish');
var ApplicationMenuItem = GObject.registerClass(
class ApplicationMenuItem extends PopupMenu.PopupBaseMenuItem { class ApplicationMenuItem extends PopupMenu.PopupBaseMenuItem {
static { _init(button, app) {
GObject.registerClass(this); super._init();
}
constructor(button, app) {
super();
this._app = app; this._app = app;
this._button = button; this._button = button;
@@ -50,8 +45,11 @@ class ApplicationMenuItem extends PopupMenu.PopupBaseMenuItem {
this.label_actor = appLabel; this.label_actor = appLabel;
let textureCache = St.TextureCache.get_default(); let textureCache = St.TextureCache.get_default();
textureCache.connectObject('icon-theme-changed', let iconThemeChangedId = textureCache.connect('icon-theme-changed',
() => this._updateIcon(), this); this._updateIcon.bind(this));
this.connect('destroy', () => {
textureCache.disconnect(iconThemeChangedId);
});
this._updateIcon(); this._updateIcon();
this._delegate = this; this._delegate = this;
@@ -97,15 +95,12 @@ class ApplicationMenuItem extends PopupMenu.PopupBaseMenuItem {
icon.style_class = 'icon-dropshadow'; icon.style_class = 'icon-dropshadow';
this._iconBin.set_child(icon); this._iconBin.set_child(icon);
} }
} });
var CategoryMenuItem = GObject.registerClass(
class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem { class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem {
static { _init(button, category) {
GObject.registerClass(this); super._init();
}
constructor(button, category) {
super();
this._category = category; this._category = category;
this._button = button; this._button = button;
@@ -118,7 +113,7 @@ class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem {
else else
name = _('Favorites'); name = _('Favorites');
this.add_child(new St.Label({text: name})); this.add_child(new St.Label({ text: name }));
this.connect('motion-event', this._onMotionEvent.bind(this)); this.connect('motion-event', this._onMotionEvent.bind(this));
this.connect('notify::active', this._onActiveChanged.bind(this)); this.connect('notify::active', this._onActiveChanged.bind(this));
} }
@@ -187,14 +182,11 @@ class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem {
} }
_onMotionEvent(actor, event) { _onMotionEvent(actor, event) {
if (!this._grab) { let device = event.get_device();
if (!device.get_grabbed_actor()) {
this._oldX = -1; this._oldX = -1;
this._oldY = -1; this._oldY = -1;
const grab = global.stage.grab(this); device.grab(this);
if (grab.get_seat_state() !== Clutter.GrabState.NONE)
this._grab = grab;
else
grab.dismiss();
} }
this.hover = true; this.hover = true;
@@ -204,8 +196,7 @@ class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem {
this._oldX = -1; this._oldX = -1;
this._oldY = -1; this._oldY = -1;
this.hover = false; this.hover = false;
this._grab?.dismiss(); device.ungrab();
delete this._grab;
let source = event.get_source(); let source = event.get_source();
if (source instanceof St.Widget) if (source instanceof St.Widget)
@@ -221,7 +212,7 @@ class CategoryMenuItem extends PopupMenu.PopupBaseMenuItem {
this._button.selectCategory(this._category); this._button.selectCategory(this._category);
this._button.scrollToCatButton(this); this._button.scrollToCatButton(this);
} }
} });
class ApplicationsMenu extends PopupMenu.PopupMenu { class ApplicationsMenu extends PopupMenu.PopupMenu {
constructor(sourceActor, arrowAlignment, arrowSide, button) { constructor(sourceActor, arrowAlignment, arrowSide, button) {
@@ -240,10 +231,8 @@ class ApplicationsMenu extends PopupMenu.PopupMenu {
} }
} }
class DesktopTarget extends EventEmitter { class DesktopTarget {
constructor() { constructor() {
super();
this._desktop = null; this._desktop = null;
this._desktopDestroyedId = 0; this._desktopDestroyedId = 0;
@@ -270,7 +259,9 @@ class DesktopTarget extends EventEmitter {
_setDesktop(desktop) { _setDesktop(desktop) {
if (this._desktop) { if (this._desktop) {
this._desktop.disconnectObject(this); this._desktop.disconnect(this._desktopDestroyedId);
this._desktopDestroyedId = 0;
delete this._desktop._delegate; delete this._desktop._delegate;
} }
@@ -278,9 +269,9 @@ class DesktopTarget extends EventEmitter {
this.emit('desktop-changed'); this.emit('desktop-changed');
if (this._desktop) { if (this._desktop) {
this._desktop.connectObject('destroy', () => { this._desktopDestroyedId = this._desktop.connect('destroy', () => {
this._setDesktop(null); this._setDesktop(null);
}, this); });
this._desktop._delegate = this; this._desktop._delegate = this;
} }
} }
@@ -320,7 +311,10 @@ class DesktopTarget extends EventEmitter {
} }
destroy() { destroy() {
global.window_group.disconnectObject(this); if (this._windowAddedId)
global.window_group.disconnect(this._windowAddedId);
this._windowAddedId = 0;
this._setDesktop(null); this._setDesktop(null);
} }
@@ -355,14 +349,12 @@ class DesktopTarget extends EventEmitter {
return true; return true;
} }
} }
Signals.addSignalMethods(DesktopTarget.prototype);
let ApplicationsButton = GObject.registerClass(
class ApplicationsButton extends PanelMenu.Button { class ApplicationsButton extends PanelMenu.Button {
static { _init() {
GObject.registerClass(this); super._init(1.0, null, false);
}
constructor() {
super(1.0, null, false);
this.setMenu(new ApplicationsMenu(this, 1.0, St.Side.TOP, this)); this.setMenu(new ApplicationsMenu(this, 1.0, St.Side.TOP, this));
Main.panel.menuManager.addMenu(this.menu); Main.panel.menuManager.addMenu(this.menu);
@@ -382,17 +374,15 @@ class ApplicationsButton extends PanelMenu.Button {
this.name = 'panelApplications'; this.name = 'panelApplications';
this.label_actor = this._label; this.label_actor = this._label;
Main.overview.connectObject( this._showingId = Main.overview.connect('showing', () => {
'showing', () => this.add_accessible_state(Atk.StateType.CHECKED), this.add_accessible_state(Atk.StateType.CHECKED);
'hiding', () => this.remove_accessible_state(Atk.StateType.CHECKED), });
this); this._hidingId = Main.overview.connect('hiding', () => {
this.remove_accessible_state(Atk.StateType.CHECKED);
Main.wm.addKeybinding( });
'apps-menu-toggle-menu', Main.layoutManager.connect('startup-complete',
Extension.lookupByURL(import.meta.url).getSettings(), this._setKeybinding.bind(this));
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT, this._setKeybinding();
Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW,
() => this.menu.toggle());
this._desktopTarget = new DesktopTarget(); this._desktopTarget = new DesktopTarget();
this._desktopTarget.connect('app-dropped', () => { this._desktopTarget.connect('app-dropped', () => {
@@ -404,16 +394,16 @@ class ApplicationsButton extends PanelMenu.Button {
}); });
}); });
this._tree = new GMenu.Tree({menu_basename: 'applications.menu'}); this._tree = new GMenu.Tree({ menu_basename: 'applications.menu' });
this._tree.connectObject('changed', this._treeChangedId = this._tree.connect('changed',
() => this._onTreeChanged(), this); this._onTreeChanged.bind(this));
this._applicationsButtons = new Map(); this._applicationsButtons = new Map();
this.reloadFlag = false; this.reloadFlag = false;
this._createLayout(); this._createLayout();
this._display(); this._display();
appSys.connectObject('installed-changed', this._installedChangedId = appSys.connect('installed-changed',
() => this._onTreeChanged(), this); this._onTreeChanged.bind(this));
} }
_onTreeChanged() { _onTreeChanged() {
@@ -437,9 +427,17 @@ class ApplicationsButton extends PanelMenu.Button {
_onDestroy() { _onDestroy() {
super._onDestroy(); super._onDestroy();
delete this._tree; Main.overview.disconnect(this._showingId);
Main.overview.disconnect(this._hidingId);
appSys.disconnect(this._installedChangedId);
this._tree.disconnect(this._treeChangedId);
this._tree = null;
Main.wm.removeKeybinding('apps-menu-toggle-menu'); Main.wm.setCustomKeybindingHandler('panel-main-menu',
Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW,
Main.sessionMode.hasOverview
? Main.overview.toggle.bind(Main.overview)
: null);
this._desktopTarget.destroy(); this._desktopTarget.destroy();
} }
@@ -481,6 +479,12 @@ class ApplicationsButton extends PanelMenu.Button {
super._onOpenStateChanged(menu, open); super._onOpenStateChanged(menu, open);
} }
_setKeybinding() {
Main.wm.setCustomKeybindingHandler('panel-main-menu',
Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW,
() => this.menu.toggle());
}
_redisplay() { _redisplay() {
this.applicationsBox.destroy_all_children(); this.applicationsBox.destroy_all_children();
this.categoriesBox.destroy_all_children(); this.categoriesBox.destroy_all_children();
@@ -501,7 +505,7 @@ class ApplicationsButton extends PanelMenu.Button {
} }
let app = appSys.lookup_app(id); let app = appSys.lookup_app(id);
if (!app) if (!app)
app = new Shell.App({app_info: entry.get_app_info()}); app = new Shell.App({ app_info: entry.get_app_info() });
if (app.get_app_info().should_show()) if (app.get_app_info().should_show())
this.applicationsByCategory[categoryId].push(app); this.applicationsByCategory[categoryId].push(app);
} else if (nextType === GMenu.TreeItemType.SEPARATOR) { } else if (nextType === GMenu.TreeItemType.SEPARATOR) {
@@ -547,8 +551,8 @@ class ApplicationsButton extends PanelMenu.Button {
_createLayout() { _createLayout() {
let section = new PopupMenu.PopupMenuSection(); let section = new PopupMenu.PopupMenuSection();
this.menu.addMenuItem(section); this.menu.addMenuItem(section);
this.mainBox = new St.BoxLayout({vertical: false}); this.mainBox = new St.BoxLayout({ vertical: false });
this.leftBox = new St.BoxLayout({vertical: true}); this.leftBox = new St.BoxLayout({ vertical: true });
this.applicationsScrollBox = new St.ScrollView({ this.applicationsScrollBox = new St.ScrollView({
style_class: 'apps-menu vfade', style_class: 'apps-menu vfade',
x_expand: true, x_expand: true,
@@ -570,9 +574,9 @@ class ApplicationsButton extends PanelMenu.Button {
vscroll.connect('scroll-stop', () => (this.menu.passEvents = false)); vscroll.connect('scroll-stop', () => (this.menu.passEvents = false));
this.leftBox.add_child(this.categoriesScrollBox); this.leftBox.add_child(this.categoriesScrollBox);
this.applicationsBox = new St.BoxLayout({vertical: true}); this.applicationsBox = new St.BoxLayout({ vertical: true });
this.applicationsScrollBox.add_actor(this.applicationsBox); this.applicationsScrollBox.add_actor(this.applicationsBox);
this.categoriesBox = new St.BoxLayout({vertical: true}); this.categoriesBox = new St.BoxLayout({ vertical: true });
this.categoriesScrollBox.add_actor(this.categoriesBox); this.categoriesScrollBox.add_actor(this.categoriesBox);
this.mainBox.add(this.leftBox); this.mainBox.add(this.leftBox);
@@ -666,19 +670,21 @@ class ApplicationsButton extends PanelMenu.Button {
return applist; return applist;
} }
});
let appsMenuButton;
function enable() {
appsMenuButton = new ApplicationsButton();
let index = Main.sessionMode.panel.left.indexOf('activities') + 1;
Main.panel.addToStatusArea('apps-menu', appsMenuButton, index, 'left');
} }
export default class AppsMenuExtension extends Extension { function disable() {
enable() { Main.panel.menuManager.removeMenu(appsMenuButton.menu);
this._appsMenuButton = new ApplicationsButton(); appsMenuButton.destroy();
const index = Main.sessionMode.panel.left.indexOf('activities') + 1; }
Main.panel.addToStatusArea(
'apps-menu', this._appsMenuButton, index, 'left'); function init() {
} ExtensionUtils.initTranslations();
disable() {
Main.panel.menuManager.removeMenu(this._appsMenuButton.menu);
this._appsMenuButton.destroy();
delete this._appsMenuButton;
}
} }

View File

@@ -3,5 +3,3 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')
extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')

View File

@@ -1,7 +1,6 @@
{ {
"extension-id": "@extension_id@", "extension-id": "@extension_id@",
"uuid": "@uuid@", "uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@", "gettext-domain": "@gettext_domain@",
"name": "Applications Menu", "name": "Applications Menu",
"description": "Add a category-based menu for applications.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "description": "Add a category-based menu for applications.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.",

View File

@@ -1,12 +0,0 @@
<schemalist gettext-domain="gnome-shell-extensions">
<schema id="org.gnome.shell.extensions.apps-menu"
path="/org/gnome/shell/extensions/apps-menu/">
<key name="apps-menu-toggle-menu" type="as">
<default>["&lt;Alt&gt;F1"]</default>
<summary>Keybinding to open the applications menu</summary>
<description>
Keybinding to open the applications menu.
</description>
</key>
</schema>
</schemalist>

View File

@@ -1,20 +1,22 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Start apps on custom workspaces // Start apps on custom workspaces
/* exported init enable disable */
import Shell from 'gi://Shell'; const { Shell } = imports.gi;
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; const ExtensionUtils = imports.misc.extensionUtils;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const Main = imports.ui.main;
class WindowMover { class WindowMover {
constructor(settings) { constructor() {
this._settings = settings; this._settings = ExtensionUtils.getSettings();
this._appSystem = Shell.AppSystem.get_default(); this._appSystem = Shell.AppSystem.get_default();
this._appConfigs = new Map(); this._appConfigs = new Map();
this._appData = new Map(); this._appData = new Map();
this._appSystem.connectObject('installed-changed', this._appsChangedId =
() => this._updateAppData(), this); this._appSystem.connect('installed-changed',
this._updateAppData.bind(this));
this._settings.connect('changed', this._updateAppConfigs.bind(this)); this._settings.connect('changed', this._updateAppConfigs.bind(this));
this._updateAppConfigs(); this._updateAppConfigs();
@@ -36,7 +38,7 @@ class WindowMover {
let removedApps = [...this._appData.keys()] let removedApps = [...this._appData.keys()]
.filter(a => !ids.includes(a.id)); .filter(a => !ids.includes(a.id));
removedApps.forEach(app => { removedApps.forEach(app => {
app.disconnectObject(this); app.disconnect(this._appData.get(app).windowsChangedId);
this._appData.delete(app); this._appData.delete(app);
}); });
@@ -44,14 +46,21 @@ class WindowMover {
.map(id => this._appSystem.lookup_app(id)) .map(id => this._appSystem.lookup_app(id))
.filter(app => app && !this._appData.has(app)); .filter(app => app && !this._appData.has(app));
addedApps.forEach(app => { addedApps.forEach(app => {
app.connectObject('window-changed', let data = {
this._appWindowsChanged.bind(this), this); windowsChangedId: app.connect('windows-changed',
this._appData.set(app, {windows: app.get_windows()}); this._appWindowsChanged.bind(this)),
moveWindowsId: 0,
windows: app.get_windows(),
};
this._appData.set(app, data);
}); });
} }
destroy() { destroy() {
this._appSystem.disconnectObject(this); if (this._appsChangedId) {
this._appSystem.disconnect(this._appsChangedId);
this._appsChangedId = 0;
}
if (this._settings) { if (this._settings) {
this._settings.run_dispose(); this._settings.run_dispose();
@@ -96,41 +105,41 @@ class WindowMover {
} }
} }
export default class AutoMoveExtension extends Extension { let prevCheckWorkspaces;
enable() { let winMover;
this._prevCheckWorkspaces = Main.wm._workspaceTracker._checkWorkspaces;
Main.wm._workspaceTracker._checkWorkspaces =
this._getCheckWorkspaceOverride(this._prevCheckWorkspaces);
this._windowMover = new WindowMover(this.getSettings());
}
disable() { function init() {
Main.wm._workspaceTracker._checkWorkspaces = this._prevCheckWorkspaces; ExtensionUtils.initTranslations();
this._windowMover.destroy(); }
delete this._windowMover;
} function myCheckWorkspaces() {
let keepAliveWorkspaces = [];
_getCheckWorkspaceOverride(originalMethod) { let foundNonEmpty = false;
/* eslint-disable no-invalid-this */ for (let i = this._workspaces.length - 1; i >= 0; i--) {
return function () { if (!foundNonEmpty) {
const keepAliveWorkspaces = []; foundNonEmpty = this._workspaces[i].list_windows().some(
let foundNonEmpty = false; w => !w.is_on_all_workspaces());
for (let i = this._workspaces.length - 1; i >= 0; i--) { } else if (!this._workspaces[i]._keepAliveId) {
if (!foundNonEmpty) { keepAliveWorkspaces.push(this._workspaces[i]);
foundNonEmpty = this._workspaces[i].list_windows().some( }
w => !w.is_on_all_workspaces()); }
} else if (!this._workspaces[i]._keepAliveId) {
keepAliveWorkspaces.push(this._workspaces[i]); // make sure the original method only removes empty workspaces at the end
} keepAliveWorkspaces.forEach(ws => (ws._keepAliveId = 1));
} prevCheckWorkspaces.call(this);
keepAliveWorkspaces.forEach(ws => delete ws._keepAliveId);
// make sure the original method only removes empty workspaces at the end
keepAliveWorkspaces.forEach(ws => (ws._keepAliveId = 1)); return false;
originalMethod.call(this); }
keepAliveWorkspaces.forEach(ws => delete ws._keepAliveId);
function enable() {
return false; prevCheckWorkspaces = Main.wm._workspaceTracker._checkWorkspaces;
}; Main.wm._workspaceTracker._checkWorkspaces = myCheckWorkspaces;
/* eslint-enable no-invalid-this */
} winMover = new WindowMover();
}
function disable() {
Main.wm._workspaceTracker._checkWorkspaces = prevCheckWorkspaces;
winMover.destroy();
} }

View File

@@ -1,300 +1,229 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Start apps on custom workspaces // Start apps on custom workspaces
/* exported init buildPrefsWidget */
import Adw from 'gi://Adw'; const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import GObject from 'gi://GObject';
import Gtk from 'gi://Gtk';
import {ExtensionPreferences, gettext as _} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js'; const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const SETTINGS_KEY = 'application-list'; const SETTINGS_KEY = 'application-list';
const WORKSPACE_MAX = 36; // compiled in limit of mutter const WORKSPACE_MAX = 36; // compiled in limit of mutter
class NewItem extends GObject.Object {} const AutoMoveSettingsWidget = GObject.registerClass(
GObject.registerClass(NewItem); class AutoMoveSettingsWidget extends Gtk.ScrolledWindow {
_init() {
class NewItemModel extends GObject.Object { super._init({
static [GObject.interfaces] = [Gio.ListModel]; hscrollbar_policy: Gtk.PolicyType.NEVER,
static {
GObject.registerClass(this);
}
#item = new NewItem();
vfunc_get_item_type() {
return NewItem;
}
vfunc_get_n_items() {
return 1;
}
vfunc_get_item(_pos) {
return this.#item;
}
}
class Rule extends GObject.Object {
static [GObject.properties] = {
'app-info': GObject.ParamSpec.object(
'app-info', 'app-info', 'app-info',
GObject.ParamFlags.READWRITE,
Gio.DesktopAppInfo),
'workspace': GObject.ParamSpec.uint(
'workspace', 'workspace', 'workspace',
GObject.ParamFlags.READWRITE,
1, WORKSPACE_MAX, 1),
};
static {
GObject.registerClass(this);
}
}
class RulesList extends GObject.Object {
static [GObject.interfaces] = [Gio.ListModel];
static {
GObject.registerClass(this);
}
#settings;
#rules = [];
#changedId;
constructor(settings) {
super();
this.#settings = settings;
this.#changedId =
this.#settings.connect(`changed::${SETTINGS_KEY}`,
() => this.#sync());
this.#sync();
}
append(appInfo) {
const pos = this.#rules.length;
this.#rules.push(new Rule({appInfo}));
this.#saveRules();
this.items_changed(pos, 0, 1);
}
remove(id) {
const pos = this.#rules.findIndex(r => r.appInfo.get_id() === id);
if (pos < 0)
return;
this.#rules.splice(pos, 1);
this.#saveRules();
this.items_changed(pos, 1, 0);
}
changeWorkspace(id, workspace) {
const pos = this.#rules.findIndex(r => r.appInfo.get_id() === id);
if (pos < 0)
return;
this.#rules[pos].set({workspace});
this.#saveRules();
}
#saveRules() {
this.#settings.block_signal_handler(this.#changedId);
this.#settings.set_strv(SETTINGS_KEY,
this.#rules.map(r => `${r.app_info.get_id()}:${r.workspace}`));
this.#settings.unblock_signal_handler(this.#changedId);
}
#sync() {
const removed = this.#rules.length;
this.#rules = [];
for (const stringRule of this.#settings.get_strv(SETTINGS_KEY)) {
const [id, workspace] = stringRule.split(':');
const appInfo = Gio.DesktopAppInfo.new(id);
if (appInfo)
this.#rules.push(new Rule({appInfo, workspace}));
else
log(`Invalid ID ${id}`);
}
this.items_changed(0, removed, this.#rules.length);
}
vfunc_get_item_type() {
return Rule;
}
vfunc_get_n_items() {
return this.#rules.length;
}
vfunc_get_item(pos) {
return this.#rules[pos] ?? null;
}
}
class AutoMoveSettingsWidget extends Adw.PreferencesGroup {
static {
GObject.registerClass(this);
this.install_action('rules.add', null, self => self._addNewRule());
this.install_action('rules.remove', 's',
(self, name, param) => self._rules.remove(param.unpack()));
this.install_action('rules.change-workspace', '(si)',
(self, name, param) => self._rules.changeWorkspace(...param.deepUnpack()));
}
constructor(settings) {
super({
title: _('Workspace Rules'),
}); });
this._settings = settings; const box = new Gtk.Box({
this._rules = new RulesList(this._settings); orientation: Gtk.Orientation.VERTICAL,
halign: Gtk.Align.CENTER,
spacing: 12,
margin_top: 36,
margin_bottom: 36,
margin_start: 36,
margin_end: 36,
});
this.set_child(box);
const store = new Gio.ListStore({item_type: Gio.ListModel}); box.append(new Gtk.Label({
const listModel = new Gtk.FlattenListModel({model: store}); label: '<b>%s</b>'.format(_('Workspace Rules')),
store.append(this._rules); use_markup: true,
store.append(new NewItemModel()); halign: Gtk.Align.START,
}));
this._list = new Gtk.ListBox({ this._list = new Gtk.ListBox({
selection_mode: Gtk.SelectionMode.NONE, selection_mode: Gtk.SelectionMode.NONE,
css_classes: ['boxed-list'], valign: Gtk.Align.START,
show_separators: true,
}); });
this.add(this._list); box.append(this._list);
this._list.bind_model(listModel, item => { const context = this._list.get_style_context();
return item instanceof NewItem const cssProvider = new Gtk.CssProvider();
? new NewRuleRow() cssProvider.load_from_data(
: new RuleRow(item); 'list { min-width: 30em; }');
context.add_provider(cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
context.add_class('frame');
this._list.append(new NewRuleRow());
this._actionGroup = new Gio.SimpleActionGroup();
this._list.insert_action_group('rules', this._actionGroup);
let action;
action = new Gio.SimpleAction({ name: 'add' });
action.connect('activate', this._onAddActivated.bind(this));
this._actionGroup.add_action(action);
action = new Gio.SimpleAction({
name: 'remove',
parameter_type: new GLib.VariantType('s'),
}); });
action.connect('activate', this._onRemoveActivated.bind(this));
this._actionGroup.add_action(action);
action = new Gio.SimpleAction({ name: 'update' });
action.connect('activate', () => {
this._settings.set_strv(SETTINGS_KEY,
this._getRuleRows().map(row => `${row.id}:${row.value}`));
});
this._actionGroup.add_action(action);
this._updateAction = action;
this._settings = ExtensionUtils.getSettings();
this._changedId = this._settings.connect('changed',
this._sync.bind(this));
this._sync();
this.connect('destroy', () => this._settings.run_dispose());
} }
_addNewRule() { _onAddActivated() {
const dialog = new NewRuleDialog(this.get_root(), this._settings); const dialog = new NewRuleDialog(this.get_root());
dialog.connect('response', (dlg, id) => { dialog.connect('response', (dlg, id) => {
const appInfo = id === Gtk.ResponseType.OK const appInfo = id === Gtk.ResponseType.OK
? dialog.get_widget().get_app_info() : null; ? dialog.get_widget().get_app_info() : null;
if (appInfo) if (appInfo) {
this._rules.append(appInfo); this._settings.set_strv(SETTINGS_KEY, [
...this._settings.get_strv(SETTINGS_KEY),
`${appInfo.get_id()}:1`,
]);
}
dialog.destroy(); dialog.destroy();
}); });
dialog.show(); dialog.show();
} }
}
class WorkspaceSelector extends Gtk.Widget { _onRemoveActivated(action, param) {
static [GObject.properties] = { const removed = param.deepUnpack();
'number': GObject.ParamSpec.uint( this._settings.set_strv(SETTINGS_KEY,
'number', 'number', 'number', this._settings.get_strv(SETTINGS_KEY).filter(entry => {
const [id] = entry.split(':');
return id !== removed;
}));
}
_getRuleRows() {
return [...this._list].filter(row => !!row.id);
}
_sync() {
const oldRules = this._getRuleRows();
const newRules = this._settings.get_strv(SETTINGS_KEY).map(entry => {
const [id, value] = entry.split(':');
return { id, value };
});
this._settings.block_signal_handler(this._changedId);
this._updateAction.enabled = false;
newRules.forEach(({ id, value }, index) => {
const row = oldRules.find(r => r.id === id);
const appInfo = row
? null : Gio.DesktopAppInfo.new(id);
if (row)
row.set({ value });
else if (appInfo)
this._list.insert(new RuleRow(appInfo, value), index);
});
const removed = oldRules.filter(
({ id }) => !newRules.find(r => r.id === id));
removed.forEach(r => this._list.remove(r));
this._settings.unblock_signal_handler(this._changedId);
this._updateAction.enabled = true;
}
});
const RuleRow = GObject.registerClass({
Properties: {
'id': GObject.ParamSpec.string(
'id', 'id', 'id',
GObject.ParamFlags.READABLE,
''),
'value': GObject.ParamSpec.uint(
'value', 'value', 'value',
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
1, WORKSPACE_MAX, 1), 1, WORKSPACE_MAX, 1),
}; },
}, class RuleRow extends Gtk.ListBoxRow {
static { _init(appInfo, value) {
GObject.registerClass(this); const box = new Gtk.Box({
spacing: 6,
this.set_layout_manager_type(Gtk.BoxLayout); margin_top: 6,
} margin_bottom: 6,
margin_start: 6,
constructor() {
super();
this.layout_manager.spacing = 6;
const label = new Gtk.Label({
xalign: 1,
margin_end: 6, margin_end: 6,
}); });
this.bind_property('number',
label, 'label',
GObject.BindingFlags.SYNC_CREATE);
label.set_parent(this);
const buttonProps = { super._init({
css_classes: ['circular'],
valign: Gtk.Align.CENTER,
};
this._decButton = new Gtk.Button({
icon_name: 'list-remove-symbolic',
...buttonProps,
});
this._decButton.set_parent(this);
this._decButton.connect('clicked', () => this.number--);
this._incButton = new Gtk.Button({
icon_name: 'list-add-symbolic',
...buttonProps,
});
this._incButton.set_parent(this);
this._incButton.connect('clicked', () => this.number++);
this.connect('notify::number', () => this._syncButtons());
this._syncButtons();
}
_syncButtons() {
this._decButton.sensitive = this.number > 1;
this._incButton.sensitive = this.number < WORKSPACE_MAX;
}
}
class RuleRow extends Adw.ActionRow {
static {
GObject.registerClass(this);
}
constructor(rule) {
const {appInfo} = rule;
const id = appInfo.get_id();
super({
activatable: false, activatable: false,
title: rule.appInfo.get_display_name(), value,
child: box,
}); });
this._appInfo = appInfo;
const icon = new Gtk.Image({ const icon = new Gtk.Image({
css_classes: ['icon-dropshadow'],
gicon: appInfo.get_icon(), gicon: appInfo.get_icon(),
pixel_size: 32, pixel_size: 32,
}); });
this.add_prefix(icon); icon.get_style_context().add_class('icon-dropshadow');
box.append(icon);
const wsButton = new WorkspaceSelector(); const label = new Gtk.Label({
rule.bind_property('workspace', label: appInfo.get_display_name(),
wsButton, 'number', halign: Gtk.Align.START,
GObject.BindingFlags.SYNC_CREATE); hexpand: true,
this.add_suffix(wsButton); max_width_chars: 20,
ellipsize: Pango.EllipsizeMode.END,
wsButton.connect('notify::number', () => {
this.activate_action('rules.change-workspace',
new GLib.Variant('(si)', [id, wsButton.number]));
}); });
box.append(label);
const spinButton = new Gtk.SpinButton({
adjustment: new Gtk.Adjustment({
lower: 1,
upper: WORKSPACE_MAX,
step_increment: 1,
}),
snap_to_ticks: true,
margin_end: 6,
});
this.bind_property('value',
spinButton, 'value',
GObject.BindingFlags.SYNC_CREATE | GObject.BindingFlags.BIDIRECTIONAL);
box.append(spinButton);
const button = new Gtk.Button({ const button = new Gtk.Button({
action_name: 'rules.remove', action_name: 'rules.remove',
action_target: new GLib.Variant('s', id), action_target: new GLib.Variant('s', this.id),
icon_name: 'edit-delete-symbolic', icon_name: 'edit-delete-symbolic',
has_frame: false,
valign: Gtk.Align.CENTER,
}); });
this.add_suffix(button); box.append(button);
}
}
this.connect('notify::value',
() => this.activate_action('rules.update', null));
}
get id() {
return this._appInfo.get_id();
}
});
const NewRuleRow = GObject.registerClass(
class NewRuleRow extends Gtk.ListBoxRow { class NewRuleRow extends Gtk.ListBoxRow {
static { _init() {
GObject.registerClass(this); super._init({
}
constructor() {
super({
action_name: 'rules.add', action_name: 'rules.add',
child: new Gtk.Image({ child: new Gtk.Image({
icon_name: 'list-add-symbolic', icon_name: 'list-add-symbolic',
@@ -308,20 +237,17 @@ class NewRuleRow extends Gtk.ListBoxRow {
this.update_property( this.update_property(
[Gtk.AccessibleProperty.LABEL], [_('Add Rule')]); [Gtk.AccessibleProperty.LABEL], [_('Add Rule')]);
} }
} });
const NewRuleDialog = GObject.registerClass(
class NewRuleDialog extends Gtk.AppChooserDialog { class NewRuleDialog extends Gtk.AppChooserDialog {
static { _init(parent) {
GObject.registerClass(this); super._init({
}
constructor(parent, settings) {
super({
transient_for: parent, transient_for: parent,
modal: true, modal: true,
}); });
this._settings = settings; this._settings = ExtensionUtils.getSettings();
this.get_widget().set({ this.get_widget().set({
show_all: true, show_all: true,
@@ -339,10 +265,12 @@ class NewRuleDialog extends Gtk.AppChooserDialog {
this.set_response_sensitive(Gtk.ResponseType.OK, this.set_response_sensitive(Gtk.ResponseType.OK,
appInfo && !rules.some(i => i.startsWith(appInfo.get_id()))); appInfo && !rules.some(i => i.startsWith(appInfo.get_id())));
} }
});
function init() {
ExtensionUtils.initTranslations();
} }
export default class AutoMovePrefs extends ExtensionPreferences { function buildPrefsWidget() {
getPreferencesWidget() { return new AutoMoveSettingsWidget();
return new AutoMoveSettingsWidget(this.getSettings());
}
} }

View File

@@ -0,0 +1 @@
/* This extensions requires no special styling */

View File

@@ -1,26 +1,21 @@
/* exported init enable disable */
// Drive menu extension // Drive menu extension
import Clutter from 'gi://Clutter'; const { Clutter, Gio, GObject, Shell, St } = imports.gi;
import Gio from 'gi://Gio';
import GObject from 'gi://GObject';
import Shell from 'gi://Shell';
import St from 'gi://St';
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const ExtensionUtils = imports.misc.extensionUtils;
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const ShellMountOperation = imports.ui.shellMountOperation;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const Me = ExtensionUtils.getCurrentExtension();
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; const _ = Gettext.gettext;
import * as ShellMountOperation from 'resource:///org/gnome/shell/ui/shellMountOperation.js';
Gio._promisify(Gio.File.prototype, 'query_filesystem_info_async');
var MountMenuItem = GObject.registerClass(
class MountMenuItem extends PopupMenu.PopupBaseMenuItem { class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
static { _init(mount) {
GObject.registerClass(this); super._init({
}
constructor(mount) {
super({
style_class: 'drive-menu-item', style_class: 'drive-menu-item',
}); });
@@ -49,11 +44,33 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
this.hide(); this.hide();
mount.connectObject('changed', this._changedId = mount.connect('changed', this._syncVisibility.bind(this));
() => this._syncVisibility(), this);
this._syncVisibility(); this._syncVisibility();
} }
_onDestroy() {
if (this._changedId) {
this.mount.disconnect(this._changedId);
this._changedId = 0;
}
super.destroy();
}
_fsIsRemote(root) {
return new Promise((resolve, reject) => {
const attr = Gio.FILE_ATTRIBUTE_FILESYSTEM_REMOTE;
root.query_filesystem_info_async(attr, null, (o, res) => {
try {
const info = root.query_filesystem_info_finish(res);
resolve(!info.get_attribute_boolean(attr));
} catch (e) {
reject(e);
}
});
});
}
async _isInteresting() { async _isInteresting() {
if (!this.mount.can_eject() && !this.mount.can_unmount()) if (!this.mount.can_eject() && !this.mount.can_unmount())
return false; return false;
@@ -68,9 +85,7 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
const root = this.mount.get_root(); const root = this.mount.get_root();
try { try {
const attr = Gio.FILE_ATTRIBUTE_FILESYSTEM_REMOTE; return await this._fsIsRemote(root);
const info = await root.query_filesystem_info_async(attr, null);
return !info.get_attribute_boolean(attr);
} catch (e) { } catch (e) {
log(`Failed to query filesystem: ${e.message}`); log(`Failed to query filesystem: ${e.message}`);
} }
@@ -128,15 +143,12 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
super.activate(event); super.activate(event);
} }
} });
let DriveMenu = GObject.registerClass(
class DriveMenu extends PanelMenu.Button { class DriveMenu extends PanelMenu.Button {
static { _init() {
GObject.registerClass(this); super._init(0.0, _('Removable devices'));
}
constructor() {
super(0.5, _('Removable devices'));
let icon = new St.Icon({ let icon = new St.Icon({
icon_name: 'media-eject-symbolic', icon_name: 'media-eject-symbolic',
@@ -146,12 +158,12 @@ class DriveMenu extends PanelMenu.Button {
this.add_child(icon); this.add_child(icon);
this._monitor = Gio.VolumeMonitor.get(); this._monitor = Gio.VolumeMonitor.get();
this._monitor.connectObject( this._addedId = this._monitor.connect('mount-added',
'mount-added', (monitor, mount) => this._addMount(mount), (monitor, mount) => this._addMount(mount));
'mount-removed', (monitor, mount) => { this._removedId = this._monitor.connect('mount-removed', (monitor, mount) => {
this._removeMount(mount); this._removeMount(mount);
this._updateMenuVisibility(); this._updateMenuVisibility();
}, this); });
this._mounts = []; this._mounts = [];
@@ -193,16 +205,30 @@ class DriveMenu extends PanelMenu.Button {
} }
log('Removing a mount that was never added to the menu'); log('Removing a mount that was never added to the menu');
} }
_onDestroy() {
if (this._addedId) {
this._monitor.disconnect(this._addedId);
this._monitor.disconnect(this._removedId);
this._addedId = 0;
this._removedId = 0;
}
super._onDestroy();
}
});
function init() {
ExtensionUtils.initTranslations();
} }
export default class PlaceMenuExtension extends Extension { let _indicator;
enable() {
this._indicator = new DriveMenu();
Main.panel.addToStatusArea('drive-menu', this._indicator);
}
disable() { function enable() {
this._indicator.destroy(); _indicator = new DriveMenu();
delete this._indicator; Main.panel.addToStatusArea('drive-menu', _indicator);
} }
function disable() {
_indicator.destroy();
} }

View File

@@ -3,4 +3,3 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')

View File

@@ -1,22 +1,15 @@
import {AppIcon} from 'resource:///org/gnome/shell/ui/appDisplay.js'; /* exported enable disable */
import {InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js'; const AppDisplay = imports.ui.appDisplay;
export default class Extension { let _activateOriginal = null;
constructor() {
this._injectionManager = new InjectionManager();
}
enable() { function enable() {
this._injectionManager.overrideMethod(AppIcon.prototype, 'activate', _activateOriginal = AppDisplay.AppIcon.prototype.activate;
originalMethod => { AppDisplay.AppIcon.prototype.activate = function () {
return function () { _activateOriginal.call(this, 2);
// eslint-disable-next-line no-invalid-this };
originalMethod.call(this, 2); }
};
}); function disable() {
} AppDisplay.AppIcon.prototype.activate = _activateOriginal;
disable() {
this._injectionManager.clear();
}
} }

View File

@@ -0,0 +1 @@
/* This extensions requires no special styling */

View File

@@ -1,36 +0,0 @@
/*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
import St from 'gi://St';
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
export default class Extension {
_updateColorScheme(scheme) {
Main.sessionMode.colorScheme = scheme;
St.Settings.get().notify('color-scheme');
}
enable() {
this._savedColorScheme = Main.sessionMode.colorScheme;
this._updateColorScheme('prefer-light');
}
disable() {
this._updateColorScheme(this._savedColorScheme);
}
}

View File

@@ -1,5 +0,0 @@
extension_data += configure_file(
input: metadata_name + '.in',
output: metadata_name,
configuration: metadata_conf
)

View File

@@ -1,10 +0,0 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Light Style",
"description": "Switch default to light style",
"shell-version": [ "@shell_current@" ],
"url": "@url@"
}

View File

@@ -15,7 +15,7 @@ foreach e : enabled_extensions
metadata_conf.set('url', 'https://gitlab.gnome.org/GNOME/gnome-shell-extensions') metadata_conf.set('url', 'https://gitlab.gnome.org/GNOME/gnome-shell-extensions')
extension_sources = files(e + '/extension.js') extension_sources = files(e + '/extension.js')
extension_data = [] extension_data = files(e + '/stylesheet.css')
subdir(e) subdir(e)

View File

@@ -4,6 +4,5 @@ extension_data += configure_file(
configuration: metadata_conf configuration: metadata_conf
) )
# extension_data += files('stylesheet.css')
# extension_sources += files('prefs.js') # extension_sources += files('prefs.js')
# extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml') # extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')

View File

@@ -1,11 +1,11 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Clutter from 'gi://Clutter'; /* exported enable disable */
const { Clutter } = imports.gi;
import {Extension, InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js'; const ExtensionUtils = imports.misc.extensionUtils;
const Main = imports.ui.main;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const { WindowPreview } = imports.ui.windowPreview;
import {WindowPreview} from 'resource:///org/gnome/shell/ui/windowPreview.js'; const Workspace = imports.ui.workspace;
import * as Workspace from 'resource:///org/gnome/shell/ui/workspace.js';
// testing settings for natural window placement strategy: // testing settings for natural window placement strategy:
const WINDOW_PLACEMENT_NATURAL_ACCURACY = 20; // accuracy of window translate moves (KDE-default: 20) const WINDOW_PLACEMENT_NATURAL_ACCURACY = 20; // accuracy of window translate moves (KDE-default: 20)
@@ -97,7 +97,7 @@ class NaturalLayoutStrategy extends Workspace.LayoutStrategy {
let rects = []; let rects = [];
for (let i = 0; i < clones.length; i++) { for (let i = 0; i < clones.length; i++) {
// save rectangles into 4-dimensional arrays representing two corners of the rectangular: [left_x, top_y, right_x, bottom_y] // save rectangles into 4-dimensional arrays representing two corners of the rectangular: [left_x, top_y, right_x, bottom_y]
let rect = clones[i].boundingBox; let rect = clones[i].metaWindow.get_frame_rect();
rects[i] = new Rect(rect.x, rect.y, rect.width, rect.height); rects[i] = new Rect(rect.x, rect.y, rect.width, rect.height);
bounds = bounds.union(rects[i]); bounds = bounds.union(rects[i]);
@@ -236,64 +236,67 @@ class NaturalLayoutStrategy extends Workspace.LayoutStrategy {
} }
} }
export default class NativeWindowPlacementExtension extends Extension { let winInjections, workspaceInjections;
constructor(metadata) {
super(metadata);
this._injectionManager = new InjectionManager(); function resetState() {
} winInjections = { };
workspaceInjections = { };
enable() { }
const settings = this.getSettings();
function enable() {
const layoutProto = Workspace.WorkspaceLayout.prototype; resetState();
const previewProto = WindowPreview.prototype;
let settings = ExtensionUtils.getSettings();
this._injectionManager.overrideMethod(layoutProto, '_createBestLayout', () => {
/* eslint-disable no-invalid-this */ workspaceInjections['_createBestLayout'] = Workspace.WorkspaceLayout.prototype._createBestLayout;
return function () { Workspace.WorkspaceLayout.prototype._createBestLayout = function (_area) {
this._layoutStrategy = new NaturalLayoutStrategy({ this._layoutStrategy = new NaturalLayoutStrategy({
monitor: Main.layoutManager.monitors[this._monitorIndex], monitor: Main.layoutManager.monitors[this._monitorIndex],
}, settings); }, settings);
return this._layoutStrategy.computeLayout(this._sortedWindows); return this._layoutStrategy.computeLayout(this._sortedWindows);
}; };
/* eslint-enable no-invalid-this */
}); // position window titles on top of windows in overlay
winInjections['_init'] = WindowPreview.prototype._init;
// position window titles on top of windows in overlay WindowPreview.prototype._init = function (...args) {
this._injectionManager.overrideMethod(previewProto, '_init', originalMethod => { winInjections['_init'].call(this, ...args);
/* eslint-disable no-invalid-this */
return function (...args) { if (!settings.get_boolean('window-captions-on-top'))
originalMethod.call(this, ...args); return;
if (!settings.get_boolean('window-captions-on-top')) const alignConstraint = this._title.get_constraints().find(
return; c => c.align_axis && c.align_axis === Clutter.AlignAxis.Y_AXIS);
alignConstraint.factor = 0;
const alignConstraint = this._title.get_constraints().find(
c => c.align_axis && c.align_axis === Clutter.AlignAxis.Y_AXIS); const bindConstraint = this._title.get_constraints().find(
alignConstraint.factor = 0; c => c.coordinate && c.coordinate === Clutter.BindCoordinate.Y);
bindConstraint.offset = 0;
const bindConstraint = this._title.get_constraints().find( };
c => c.coordinate && c.coordinate === Clutter.BindCoordinate.Y); winInjections['_adjustOverlayOffsets'] =
bindConstraint.offset = 0; WindowPreview.prototype._adjustOverlayOffsets;
}; WindowPreview.prototype._adjustOverlayOffsets = function (...args) {
/* eslint-enable no-invalid-this */ winInjections['_adjustOverlayOffsets'].call(this, ...args);
});
if (settings.get_boolean('window-captions-on-top'))
this._injectionManager.overrideMethod(previewProto, '_adjustOverlayOffsets', originalMethod => { this._title.translation_y = -this._title.translation_y;
/* eslint-disable no-invalid-this */ };
return function (...args) { }
originalMethod.call(this, ...args);
function removeInjection(object, injection, name) {
if (settings.get_boolean('window-captions-on-top')) if (injection[name] === undefined)
this._title.translation_y = -this._title.translation_y; delete object[name];
}; else
/* eslint-enable no-invalid-this */ object[name] = injection[name];
}); }
}
function disable() {
disable() { var i;
this._injectionManager.clear();
global.stage.queue_relayout(); for (i in workspaceInjections)
} removeInjection(Workspace.WorkspaceLayout.prototype, workspaceInjections, i);
for (i in winInjections)
removeInjection(WindowPreview.prototype, winInjections, i);
global.stage.queue_relayout();
resetState();
} }

View File

@@ -0,0 +1,9 @@
.window-caption {
-shell-caption-spacing: 13px; /* current caption height is 26px => set it to half of it. TODO: better solution needed */
}
.window-picker {
-horizontal-spacing: 32px;
-vertical-spacing: 32px;
padding: 64px 32px;
}

View File

@@ -1,27 +1,27 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */ /* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Clutter from 'gi://Clutter'; /* exported init enable disable */
import GObject from 'gi://GObject';
import St from 'gi://St';
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const { Clutter, GObject, St } = imports.gi;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const ExtensionUtils = imports.misc.extensionUtils;
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; const Main = imports.ui.main;
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
import {PlacesManager} from './placeDisplay.js'; const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const N_ = x => x; const N_ = x => x;
const PlaceDisplay = Me.imports.placeDisplay;
const PLACE_ICON_SIZE = 16; const PLACE_ICON_SIZE = 16;
var PlaceMenuItem = GObject.registerClass(
class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem { class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem {
static { _init(info) {
GObject.registerClass(this); super._init({
}
constructor(info) {
super({
style_class: 'place-menu-item', style_class: 'place-menu-item',
}); });
this._info = info; this._info = info;
@@ -52,8 +52,17 @@ class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem {
this.add_child(this._ejectButton); this.add_child(this._ejectButton);
} }
info.connectObject('changed', this._changedId = info.connect('changed',
this._propertiesChanged.bind(this), this); this._propertiesChanged.bind(this));
}
destroy() {
if (this._changedId) {
this._info.disconnect(this._changedId);
this._changedId = 0;
}
super.destroy();
} }
activate(event) { activate(event) {
@@ -66,7 +75,7 @@ class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem {
this._icon.gicon = info.icon; this._icon.gicon = info.icon;
this._label.text = info.name; this._label.text = info.name;
} }
} });
const SECTIONS = [ const SECTIONS = [
'special', 'special',
@@ -75,13 +84,10 @@ const SECTIONS = [
'network', 'network',
]; ];
let PlacesMenu = GObject.registerClass(
class PlacesMenu extends PanelMenu.Button { class PlacesMenu extends PanelMenu.Button {
static { _init() {
GObject.registerClass(this); super._init(0.0, _('Places'));
}
constructor() {
super(0.5, _('Places'));
let label = new St.Label({ let label = new St.Label({
text: _('Places'), text: _('Places'),
@@ -90,7 +96,7 @@ class PlacesMenu extends PanelMenu.Button {
}); });
this.add_actor(label); this.add_actor(label);
this.placesManager = new PlacesManager(); this.placesManager = new PlaceDisplay.PlacesManager();
this._sections = { }; this._sections = { };
@@ -126,20 +132,23 @@ class PlacesMenu extends PanelMenu.Button {
this._sections[id].actor.visible = places.length > 0; this._sections[id].actor.visible = places.length > 0;
} }
});
function init() {
ExtensionUtils.initTranslations();
} }
export default class PlacesMenuExtension extends Extension { let _indicator;
enable() {
this._indicator = new PlacesMenu();
let pos = Main.sessionMode.panel.left.length; function enable() {
if ('apps-menu' in Main.panel.statusArea) _indicator = new PlacesMenu();
pos++;
Main.panel.addToStatusArea('places-menu', this._indicator, pos, 'left');
}
disable() { let pos = Main.sessionMode.panel.left.indexOf('appMenu');
this._indicator.destroy(); if ('apps-menu' in Main.panel.statusArea)
delete this._indicator; pos++;
} Main.panel.addToStatusArea('places-menu', _indicator, pos, 'left');
}
function disable() {
_indicator.destroy();
} }

View File

@@ -3,6 +3,5 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')
extension_sources += files('placeDisplay.js') extension_sources += files('placeDisplay.js')

View File

@@ -1,19 +1,18 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import Shell from 'gi://Shell';
import {EventEmitter} from 'resource:///org/gnome/shell/misc/signals.js';
import {gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const { Gio, GLib, Shell } = imports.gi;
const Signals = imports.signals;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const ExtensionUtils = imports.misc.extensionUtils;
import * as ShellMountOperation from 'resource:///org/gnome/shell/ui/shellMountOperation.js'; const Main = imports.ui.main;
const ShellMountOperation = imports.ui.shellMountOperation;
const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const N_ = x => x; const N_ = x => x;
Gio._promisify(Gio.AppInfo, 'launch_default_for_uri_async');
Gio._promisify(Gio.File.prototype, 'mount_enclosing_volume');
const BACKGROUND_SCHEMA = 'org.gnome.desktop.background'; const BACKGROUND_SCHEMA = 'org.gnome.desktop.background';
const Hostname1Iface = '<node> \ const Hostname1Iface = '<node> \
@@ -23,10 +22,8 @@ const Hostname1Iface = '<node> \
</node>'; </node>';
const Hostname1 = Gio.DBusProxy.makeProxyWrapper(Hostname1Iface); const Hostname1 = Gio.DBusProxy.makeProxyWrapper(Hostname1Iface);
class PlaceInfo extends EventEmitter { class PlaceInfo {
constructor(...params) { constructor(...params) {
super();
this._init(...params); this._init(...params);
} }
@@ -34,7 +31,7 @@ class PlaceInfo extends EventEmitter {
this.kind = kind; this.kind = kind;
this.file = file; this.file = file;
this.name = name || this._getFileName(); this.name = name || this._getFileName();
this.icon = icon ? new Gio.ThemedIcon({name: icon}) : this.getIcon(); this.icon = icon ? new Gio.ThemedIcon({ name: icon }) : this.getIcon();
} }
destroy() { destroy() {
@@ -46,7 +43,7 @@ class PlaceInfo extends EventEmitter {
async _ensureMountAndLaunch(context, tryMount) { async _ensureMountAndLaunch(context, tryMount) {
try { try {
await Gio.AppInfo.launch_default_for_uri_async(this.file.get_uri(), context, null); await this._launchDefaultForUri(this.file.get_uri(), context, null);
} catch (err) { } catch (err) {
if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.NOT_MOUNTED)) { if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.NOT_MOUNTED)) {
Main.notifyError(_('Failed to launch “%s”').format(this.name), err.message); Main.notifyError(_('Failed to launch “%s”').format(this.name), err.message);
@@ -58,7 +55,7 @@ class PlaceInfo extends EventEmitter {
}; };
let op = new ShellMountOperation.ShellMountOperation(source); let op = new ShellMountOperation.ShellMountOperation(source);
try { try {
await this.file.mount_enclosing_volume(0, op.mountOp, null); await this._mountEnclosingVolume(0, op.mountOp, null);
if (tryMount) if (tryMount)
this._ensureMountAndLaunch(context, false); this._ensureMountAndLaunch(context, false);
@@ -97,16 +94,16 @@ class PlaceInfo extends EventEmitter {
// icon from the query info above // icon from the query info above
switch (this.kind) { switch (this.kind) {
case 'network': case 'network':
return new Gio.ThemedIcon({name: 'folder-remote-symbolic'}); return new Gio.ThemedIcon({ name: 'folder-remote-symbolic' });
case 'devices': case 'devices':
return new Gio.ThemedIcon({name: 'drive-harddisk-symbolic'}); return new Gio.ThemedIcon({ name: 'drive-harddisk-symbolic' });
case 'special': case 'special':
case 'bookmarks': case 'bookmarks':
default: default:
if (!this.file.is_native()) if (!this.file.is_native())
return new Gio.ThemedIcon({name: 'folder-remote-symbolic'}); return new Gio.ThemedIcon({ name: 'folder-remote-symbolic' });
else else
return new Gio.ThemedIcon({name: 'folder-symbolic'}); return new Gio.ThemedIcon({ name: 'folder-symbolic' });
} }
} }
@@ -120,7 +117,34 @@ class PlaceInfo extends EventEmitter {
throw e; throw e;
} }
} }
_launchDefaultForUri(uri, context, cancel) {
return new Promise((resolve, reject) => {
Gio.AppInfo.launch_default_for_uri_async(uri, context, cancel, (o, res) => {
try {
Gio.AppInfo.launch_default_for_uri_finish(res);
resolve();
} catch (e) {
reject(e);
}
});
});
}
_mountEnclosingVolume(flags, mountOp, cancel) {
return new Promise((resolve, reject) => {
this.file.mount_enclosing_volume(flags, mountOp, cancel, (o, res) => {
try {
this.file.mount_enclosing_volume_finish(res);
resolve();
} catch (e) {
reject(e);
}
});
});
}
} }
Signals.addSignalMethods(PlaceInfo.prototype);
class RootInfo extends PlaceInfo { class RootInfo extends PlaceInfo {
_init() { _init() {
@@ -140,7 +164,7 @@ class RootInfo extends PlaceInfo {
} }
getIcon() { getIcon() {
return new Gio.ThemedIcon({name: 'drive-harddisk-symbolic'}); return new Gio.ThemedIcon({ name: 'drive-harddisk-symbolic' });
} }
_propertiesChanged(proxy) { _propertiesChanged(proxy) {
@@ -248,10 +272,8 @@ const DEFAULT_DIRECTORIES = [
GLib.UserDirectory.DIRECTORY_VIDEOS, GLib.UserDirectory.DIRECTORY_VIDEOS,
]; ];
export class PlacesManager extends EventEmitter { var PlacesManager = class {
constructor() { constructor() {
super();
this._places = { this._places = {
special: [], special: [],
devices: [], devices: [],
@@ -259,26 +281,16 @@ export class PlacesManager extends EventEmitter {
network: [], network: [],
}; };
this._settings = new Gio.Settings({schema_id: BACKGROUND_SCHEMA}); this._settings = new Gio.Settings({ schema_id: BACKGROUND_SCHEMA });
this._settings.connectObject('changed::show-desktop-icons', this._showDesktopIconsChangedId = this._settings.connect(
() => this._updateSpecials(), this); 'changed::show-desktop-icons', this._updateSpecials.bind(this));
this._updateSpecials(); this._updateSpecials();
/* /*
* Show devices, code more or less ported from nautilus-places-sidebar.c * Show devices, code more or less ported from nautilus-places-sidebar.c
*/ */
this._volumeMonitor = Gio.VolumeMonitor.get(); this._volumeMonitor = Gio.VolumeMonitor.get();
this._volumeMonitor.connectObject( this._connectVolumeMonitorSignals();
'volume-added', () => this._updateMounts(),
'volume-removed', () => this._updateMounts(),
'volume-changed', () => this._updateMounts(),
'mount-added', () => this._updateMounts(),
'mount-removed', () => this._updateMounts(),
'mount-changed', () => this._updateMounts(),
'drive-connected', () => this._updateMounts(),
'drive-disconnected', () => this._updateMounts(),
'drive-changed', () => this._updateMounts(),
this);
this._updateMounts(); this._updateMounts();
this._bookmarksFile = this._findBookmarksFile(); this._bookmarksFile = this._findBookmarksFile();
@@ -303,11 +315,34 @@ export class PlacesManager extends EventEmitter {
} }
} }
_connectVolumeMonitorSignals() {
const signals = [
'volume-added',
'volume-removed',
'volume-changed',
'mount-added',
'mount-removed',
'mount-changed',
'drive-connected',
'drive-disconnected',
'drive-changed',
];
this._volumeMonitorSignals = [];
let func = this._updateMounts.bind(this);
for (let i = 0; i < signals.length; i++) {
let id = this._volumeMonitor.connect(signals[i], func);
this._volumeMonitorSignals.push(id);
}
}
destroy() { destroy() {
this._settings?.disconnectObject(this); if (this._settings)
this._settings.disconnect(this._showDesktopIconsChangedId);
this._settings = null; this._settings = null;
this._volumeMonitor.disconnectObject(this); for (let i = 0; i < this._volumeMonitorSignals.length; i++)
this._volumeMonitor.disconnect(this._volumeMonitorSignals[i]);
if (this._monitor) if (this._monitor)
this._monitor.cancel(); this._monitor.cancel();
@@ -533,4 +568,5 @@ export class PlacesManager extends EventEmitter {
get(kind) { get(kind) {
return this._places[kind]; return this._places[kind];
} }
} };
Signals.addSignalMethods(PlacesManager.prototype);

View File

@@ -1,3 +1,4 @@
/* exported enable disable */
/* Screenshot Window Sizer for Gnome Shell /* Screenshot Window Sizer for Gnome Shell
* *
* Copyright (c) 2013 Owen Taylor <otaylor@redhat.com> * Copyright (c) 2013 Owen Taylor <otaylor@redhat.com>
@@ -18,151 +19,136 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/ */
import Clutter from 'gi://Clutter'; const { Clutter, Meta, Shell, St } = imports.gi;
import Meta from 'gi://Meta';
import Shell from 'gi://Shell';
import St from 'gi://St';
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; const ExtensionUtils = imports.misc.extensionUtils;
const Main = imports.ui.main;
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
const MESSAGE_FADE_TIME = 2000; const MESSAGE_FADE_TIME = 2000;
export default class ScreenshotWindowSizerExtension extends Extension { let text;
SIZES = [
[624, 351],
[800, 450],
[1024, 576],
[1200, 675],
[1600, 900],
[360, 654], // Phone portrait maximized
[720, 360], // Phone landscape fullscreen
];
_flashMessage(message) { function hideMessage() {
if (!this._text) { text.destroy();
this._text = new St.Label({style_class: 'screenshot-sizer-message'}); text = null;
Main.uiGroup.add_actor(this._text); }
}
function flashMessage(message) {
this._text.remove_all_transitions(); if (!text) {
this._text.text = message; text = new St.Label({ style_class: 'screenshot-sizer-message' });
Main.uiGroup.add_actor(text);
this._text.opacity = 255; }
const monitor = Main.layoutManager.primaryMonitor; text.remove_all_transitions();
this._text.set_position( text.text = message;
monitor.x + Math.floor(monitor.width / 2 - this._text.width / 2),
monitor.y + Math.floor(monitor.height / 2 - this._text.height / 2)); text.opacity = 255;
this._text.ease({ let monitor = Main.layoutManager.primaryMonitor;
opacity: 0, text.set_position(
duration: MESSAGE_FADE_TIME, monitor.x + Math.floor(monitor.width / 2 - text.width / 2),
mode: Clutter.AnimationMode.EASE_OUT_QUAD, monitor.y + Math.floor(monitor.height / 2 - text.height / 2));
onComplete: () => this._hideMessage(),
}); text.ease({
} opacity: 0,
duration: MESSAGE_FADE_TIME,
_hideMessage() { mode: Clutter.AnimationMode.EASE_OUT_QUAD,
this._text.destroy(); onComplete: hideMessage,
delete this._text; });
} }
/** let SIZES = [
* @param {Meta.Display} display - the display [624, 351],
* @param {Meta.Window=} window - for per-window bindings, the window [800, 450],
* @param {Meta.KeyBinding} binding - the key binding [1024, 576],
*/ [1200, 675],
_cycleScreenshotSizes(display, window, binding) { [1600, 900],
// Probably this isn't useful with 5 sizes, but you can decrease instead [360, 654], // Phone portrait maximized
// of increase by holding down shift. [720, 360], // Phone landscape fullscreen
let modifiers = binding.get_modifiers(); ];
let backwards = (modifiers & Meta.VirtualModifier.SHIFT_MASK) !== 0;
function cycleScreenshotSizes(display, window, binding) {
// Unmaximize first // Probably this isn't useful with 5 sizes, but you can decrease instead
if (window.get_maximized() !== 0) // of increase by holding down shift.
window.unmaximize(Meta.MaximizeFlags.BOTH); let modifiers = binding.get_modifiers();
let backwards = (modifiers & Meta.VirtualModifier.SHIFT_MASK) !== 0;
let workArea = window.get_work_area_current_monitor();
let outerRect = window.get_frame_rect(); // Unmaximize first
if (window.get_maximized() !== 0)
// Double both axes if on a hidpi display window.unmaximize(Meta.MaximizeFlags.BOTH);
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
let scaledSizes = this.SIZES.map(size => size.map(wh => wh * scaleFactor)) let workArea = window.get_work_area_current_monitor();
.filter(([w, h]) => w <= workArea.width && h <= workArea.height); let outerRect = window.get_frame_rect();
// Find the nearest 16:9 size for the current window size // Double both axes if on a hidpi display
let nearestIndex; let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
let nearestError; let scaledSizes = SIZES.map(size => size.map(wh => wh * scaleFactor))
.filter(([w, h]) => w <= workArea.width && h <= workArea.height);
for (let i = 0; i < scaledSizes.length; i++) {
let [width, height] = scaledSizes[i]; // Find the nearest 16:9 size for the current window size
let nearestIndex;
// get the best initial window size let nearestError;
let error = Math.abs(width - outerRect.width) + Math.abs(height - outerRect.height);
if (nearestIndex === undefined || error < nearestError) { for (let i = 0; i < scaledSizes.length; i++) {
nearestIndex = i; let [width, height] = scaledSizes[i];
nearestError = error;
} // ignore sizes bigger than the workArea
} if (width > workArea.width || height > workArea.height)
continue;
// get the next size up or down from ideal
let newIndex = (nearestIndex + (backwards ? -1 : 1)) % scaledSizes.length; // get the best initial window size
let [newWidth, newHeight] = scaledSizes[newIndex]; let error = Math.abs(width - outerRect.width) + Math.abs(height - outerRect.height);
if (nearestIndex === undefined || error < nearestError) {
// Push the window onscreen if it would be resized offscreen nearestIndex = i;
let newX = outerRect.x; nearestError = error;
let newY = outerRect.y; }
if (newX + newWidth > workArea.x + workArea.width) }
newX = Math.max(workArea.x + workArea.width - newWidth);
if (newY + newHeight > workArea.y + workArea.height) // get the next size up or down from ideal
newY = Math.max(workArea.y + workArea.height - newHeight); let newIndex = (nearestIndex + (backwards ? -1 : 1)) % scaledSizes.length;
let [newWidth, newHeight] = scaledSizes[newIndex];
const id = window.connect('size-changed', () => {
window.disconnect(id); // Push the window onscreen if it would be resized offscreen
this._notifySizeChange(window); let newX = outerRect.x;
}); let newY = outerRect.y;
window.move_resize_frame(true, newX, newY, newWidth, newHeight); if (newX + newWidth > workArea.x + workArea.width)
} newX = Math.max(workArea.x + workArea.width - newWidth);
if (newY + newHeight > workArea.y + workArea.height)
/** newY = Math.max(workArea.y + workArea.height - newHeight);
* @param {Meta.Window} window - the window whose size changed
*/ window.move_resize_frame(true, newX, newY, newWidth, newHeight);
_notifySizeChange(window) {
const {scaleFactor} = St.ThemeContext.get_for_stage(global.stage); let newOuterRect = window.get_frame_rect();
let newOuterRect = window.get_frame_rect(); let message = '%d×%d'.format(
let message = '%d×%d'.format( newOuterRect.width / scaleFactor,
newOuterRect.width / scaleFactor, newOuterRect.height / scaleFactor);
newOuterRect.height / scaleFactor);
// The new size might have been constrained by geometry hints (e.g. for
// The new size might have been constrained by geometry hints (e.g. for // a terminal) - in that case, include the actual ratio to the message
// a terminal) - in that case, include the actual ratio to the message // we flash
// we flash let actualNumerator = 9 * newOuterRect.width / newOuterRect.height;
let actualNumerator = 9 * newOuterRect.width / newOuterRect.height; if (Math.abs(actualNumerator - 16) > 0.01)
if (Math.abs(actualNumerator - 16) > 0.01) message += ' (%.2f:9)'.format(actualNumerator);
message += ' (%.2f:9)'.format(actualNumerator);
flashMessage(message);
this._flashMessage(message); }
}
function enable() {
enable() { Main.wm.addKeybinding(
Main.wm.addKeybinding( 'cycle-screenshot-sizes',
'cycle-screenshot-sizes', ExtensionUtils.getSettings(),
this.getSettings(), Meta.KeyBindingFlags.PER_WINDOW,
Meta.KeyBindingFlags.PER_WINDOW, Shell.ActionMode.NORMAL,
Shell.ActionMode.NORMAL, cycleScreenshotSizes);
this._cycleScreenshotSizes.bind(this)); Main.wm.addKeybinding(
Main.wm.addKeybinding( 'cycle-screenshot-sizes-backward',
'cycle-screenshot-sizes-backward', ExtensionUtils.getSettings(),
this.getSettings(), Meta.KeyBindingFlags.PER_WINDOW | Meta.KeyBindingFlags.IS_REVERSED,
Meta.KeyBindingFlags.PER_WINDOW | Meta.KeyBindingFlags.IS_REVERSED, Shell.ActionMode.NORMAL,
Shell.ActionMode.NORMAL, cycleScreenshotSizes);
this._cycleScreenshotSizes.bind(this)); }
}
function disable() {
disable() { Main.wm.removeKeybinding('cycle-screenshot-sizes');
Main.wm.removeKeybinding('cycle-screenshot-sizes'); Main.wm.removeKeybinding('cycle-screenshot-sizes-backward');
Main.wm.removeKeybinding('cycle-screenshot-sizes-backward');
}
} }

View File

@@ -3,6 +3,5 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')
extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml') extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')

View File

@@ -1,26 +1,32 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Load shell theme from ~/.local/share/themes/name/gnome-shell // Load shell theme from ~/.local/share/themes/name/gnome-shell
/* exported init */
import Gio from 'gi://Gio'; const { Gio } = imports.gi;
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; const ExtensionUtils = imports.misc.extensionUtils;
const Main = imports.ui.main;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const Me = ExtensionUtils.getCurrentExtension();
const Util = Me.imports.util;
import {getThemeDirs, getModeThemeDirs} from './util.js';
const SETTINGS_KEY = 'name'; const SETTINGS_KEY = 'name';
export default class ThemeManager extends Extension { class ThemeManager {
constructor() {
this._settings = ExtensionUtils.getSettings();
}
enable() { enable() {
this._settings = this.getSettings(); this._changedId = this._settings.connect(`changed::${SETTINGS_KEY}`, this._changeTheme.bind(this));
this._settings.connect(`changed::${SETTINGS_KEY}`, this._changeTheme.bind(this));
this._changeTheme(); this._changeTheme();
} }
disable() { disable() {
this._settings?.run_dispose(); if (this._changedId) {
this._settings = null; this._settings.disconnect(this._changedId);
this._changedId = 0;
}
Main.setThemeStylesheet(null); Main.setThemeStylesheet(null);
Main.loadTheme(); Main.loadTheme();
@@ -31,10 +37,10 @@ export default class ThemeManager extends Extension {
let themeName = this._settings.get_string(SETTINGS_KEY); let themeName = this._settings.get_string(SETTINGS_KEY);
if (themeName) { if (themeName) {
const stylesheetPaths = getThemeDirs() const stylesheetPaths = Util.getThemeDirs()
.map(dir => `${dir}/${themeName}/gnome-shell/gnome-shell.css`); .map(dir => `${dir}/${themeName}/gnome-shell/gnome-shell.css`);
stylesheetPaths.push(...getModeThemeDirs() stylesheetPaths.push(...Util.getModeThemeDirs()
.map(dir => `${dir}/${themeName}.css`)); .map(dir => `${dir}/${themeName}.css`));
stylesheet = stylesheetPaths.find(path => { stylesheet = stylesheetPaths.find(path => {
@@ -44,10 +50,14 @@ export default class ThemeManager extends Extension {
} }
if (stylesheet) if (stylesheet)
log(`loading user theme: ${stylesheet}`); global.log(`loading user theme: ${stylesheet}`);
else else
log('loading default theme (Adwaita)'); global.log('loading default theme (Adwaita)');
Main.setThemeStylesheet(stylesheet); Main.setThemeStylesheet(stylesheet);
Main.loadTheme(); Main.loadTheme();
} }
} }
function init() {
return new ThemeManager();
}

View File

@@ -1,34 +1,51 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
/* exported init buildPrefsWidget */
// we use async/await here to not block the mainloop, not to parallelize // we use async/await here to not block the mainloop, not to parallelize
/* eslint-disable no-await-in-loop */ /* eslint-disable no-await-in-loop */
import Adw from 'gi://Adw'; const { Gio, GLib, GObject, Gtk } = imports.gi;
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import GObject from 'gi://GObject';
import Gtk from 'gi://Gtk';
import {ExtensionPreferences} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js'; const ExtensionUtils = imports.misc.extensionUtils;
import {getThemeDirs, getModeThemeDirs} from './util.js'; const Me = ExtensionUtils.getCurrentExtension();
const Util = Me.imports.util;
Gio._promisify(Gio.File.prototype, 'enumerate_children_async'); Gio._promisify(Gio._LocalFilePrototype,
Gio._promisify(Gio.File.prototype, 'query_info_async'); 'enumerate_children_async', 'enumerate_children_finish');
Gio._promisify(Gio.FileEnumerator.prototype, 'next_files_async'); Gio._promisify(Gio._LocalFilePrototype,
'query_info_async', 'query_info_finish');
Gio._promisify(Gio.FileEnumerator.prototype,
'next_files_async', 'next_files_finish');
class UserThemePrefsWidget extends Adw.PreferencesGroup { const UserThemePrefsWidget = GObject.registerClass(
static { class UserThemePrefsWidget extends Gtk.ScrolledWindow {
GObject.registerClass(this); _init() {
} super._init({
hscrollbar_policy: Gtk.PolicyType.NEVER,
});
constructor(settings) { const box = new Gtk.Box();
super({title: 'Themes'}); this.set_child(box);
this._list = new Gtk.ListBox({
selection_mode: Gtk.SelectionMode.NONE,
show_separators: true,
halign: Gtk.Align.CENTER,
valign: Gtk.Align.START,
hexpand: true,
margin_start: 60,
margin_end: 60,
margin_top: 60,
margin_bottom: 60,
});
this._list.get_style_context().add_class('frame');
box.append(this._list);
this._actionGroup = new Gio.SimpleActionGroup(); this._actionGroup = new Gio.SimpleActionGroup();
this.insert_action_group('theme', this._actionGroup); this._list.insert_action_group('theme', this._actionGroup);
this._settings = settings; this._settings = ExtensionUtils.getSettings();
this._actionGroup.add_action( this._actionGroup.add_action(
this._settings.create_action('name')); this._settings.create_action('name'));
@@ -41,7 +58,7 @@ class UserThemePrefsWidget extends Adw.PreferencesGroup {
} }
async _collectThemes() { async _collectThemes() {
for (const dirName of getThemeDirs()) { for (const dirName of Util.getThemeDirs()) {
const dir = Gio.File.new_for_path(dirName); const dir = Gio.File.new_for_path(dirName);
for (const name of await this._enumerateDir(dir)) { for (const name of await this._enumerateDir(dir)) {
if (this._rows.has(name)) if (this._rows.has(name))
@@ -62,7 +79,7 @@ class UserThemePrefsWidget extends Adw.PreferencesGroup {
} }
} }
for (const dirName of getModeThemeDirs()) { for (const dirName of Util.getModeThemeDirs()) {
const dir = Gio.File.new_for_path(dirName); const dir = Gio.File.new_for_path(dirName);
for (const filename of await this._enumerateDir(dir)) { for (const filename of await this._enumerateDir(dir)) {
if (!filename.endsWith('.css')) if (!filename.endsWith('.css'))
@@ -76,10 +93,10 @@ class UserThemePrefsWidget extends Adw.PreferencesGroup {
} }
_addTheme(name) { _addTheme(name) {
const row = new ThemeRow(name); const row = new ThemeRow(name, this._settings);
this._rows.set(name, row); this._rows.set(name, row);
this.add(row); this._list.append(row);
} }
async _enumerateDir(dir) { async _enumerateDir(dir) {
@@ -106,29 +123,60 @@ class UserThemePrefsWidget extends Adw.PreferencesGroup {
return fileInfos.map(info => info.get_name()); return fileInfos.map(info => info.get_name());
} }
} });
class ThemeRow extends Adw.ActionRow { const ThemeRow = GObject.registerClass(
static { class ThemeRow extends Gtk.ListBoxRow {
GObject.registerClass(this); _init(name, settings) {
} this._name = name;
this._settings = settings;
constructor(name) { const box = new Gtk.Box({
const check = new Gtk.CheckButton({ spacing: 12,
margin_start: 12,
margin_end: 12,
margin_top: 12,
margin_bottom: 12,
});
super._init({
action_name: 'theme.name', action_name: 'theme.name',
action_target: new GLib.Variant('s', name), action_target: new GLib.Variant('s', name),
child: box,
}); });
super({ box.append(new Gtk.Label({
title: name || 'Default', label: name || 'Default',
activatable_widget: check, hexpand: true,
xalign: 0,
max_width_chars: 25,
width_chars: 25,
}));
this._checkmark = new Gtk.Image({
icon_name: 'emblem-ok-symbolic',
pixel_size: 16,
});
box.append(this._checkmark);
const id = this._settings.connect('changed::name',
this._syncCheckmark.bind(this));
this._syncCheckmark();
this.connect('destroy', () => {
this._settings.disconnect(id);
this._settings = null;
}); });
this.add_prefix(check);
} }
_syncCheckmark() {
const visible = this._name === this._settings.get_string('name');
this._checkmark.opacity = visible ? 1. : 0;
}
});
function init() {
} }
export default class UserThemePrefs extends ExtensionPreferences { function buildPrefsWidget() {
getPreferencesWidget() { return new UserThemePrefsWidget();
return new UserThemePrefsWidget(this.getSettings());
}
} }

View File

@@ -0,0 +1 @@
/* none used */

View File

@@ -1,11 +1,9 @@
import GLib from 'gi://GLib'; /* exported getThemeDirs getModeThemeDirs */
const { GLib } = imports.gi;
const fn = (...args) => GLib.build_filenamev(args); const fn = (...args) => GLib.build_filenamev(args);
/** function getThemeDirs() {
* @returns {string[]} - an ordered list of theme directories
*/
export function getThemeDirs() {
return [ return [
fn(GLib.get_home_dir(), '.themes'), fn(GLib.get_home_dir(), '.themes'),
fn(GLib.get_user_data_dir(), 'themes'), fn(GLib.get_user_data_dir(), 'themes'),
@@ -13,10 +11,7 @@ export function getThemeDirs() {
]; ];
} }
/** function getModeThemeDirs() {
* @returns {string[]} - an ordered list of mode theme directories
*/
export function getModeThemeDirs() {
return GLib.get_system_data_dirs() return GLib.get_system_data_dirs()
.map(dir => fn(dir, 'gnome-shell', 'theme')); .map(dir => fn(dir, 'gnome-shell', 'theme'));
} }

View File

@@ -1,4 +1,4 @@
@import url("stylesheet-dark.css"); @import url("stylesheet.css");
#panel.bottom-panel { #panel.bottom-panel {
border-top-width: 1px; border-top-width: 1px;

File diff suppressed because it is too large Load Diff

View File

@@ -3,10 +3,10 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files(
'stylesheet-dark.css',
'stylesheet-light.css'
)
extension_sources += files('prefs.js', 'windowPicker.js', 'workspaceIndicator.js') extension_sources += files('prefs.js', 'windowPicker.js', 'workspaceIndicator.js')
extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml') extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')
if classic_mode_enabled
extension_data += files('classic.css')
endif

View File

@@ -1,86 +1,110 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Adw from 'gi://Adw'; /* exported init buildPrefsWidget */
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import GObject from 'gi://GObject';
import Gtk from 'gi://Gtk';
import {ExtensionPreferences, gettext as _} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js'; const { Gio, GObject, Gtk } = imports.gi;
class WindowListPrefsWidget extends Adw.PreferencesPage { const ExtensionUtils = imports.misc.extensionUtils;
static { const Me = ExtensionUtils.getCurrentExtension();
GObject.registerClass(this);
}
constructor(settings) { const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
super(); const _ = Gettext.gettext;
this._actionGroup = new Gio.SimpleActionGroup();
this.insert_action_group('window-list', this._actionGroup);
this._settings = settings; function init() {
this._actionGroup.add_action( ExtensionUtils.initTranslations();
this._settings.create_action('grouping-mode')); }
this._actionGroup.add_action(
this._settings.create_action('show-on-all-monitors'));
this._actionGroup.add_action(
this._settings.create_action('display-all-workspaces'));
const groupingGroup = new Adw.PreferencesGroup({ const WindowListPrefsWidget = GObject.registerClass(
title: _('Window Grouping'), class WindowListPrefsWidget extends Gtk.Box {
_init() {
super._init({
orientation: Gtk.Orientation.VERTICAL,
spacing: 6,
margin_top: 36,
margin_bottom: 36,
margin_start: 36,
margin_end: 36,
halign: Gtk.Align.CENTER,
}); });
this.add(groupingGroup);
const modes = [ let groupingLabel = '<b>%s</b>'.format(_('Window Grouping'));
{mode: 'never', title: _('Never group windows')}, this.append(new Gtk.Label({
{mode: 'auto', title: _('Group windows when space is limited')}, label: groupingLabel, use_markup: true,
{mode: 'always', title: _('Always group windows')}, halign: Gtk.Align.START,
]; }));
for (const {mode, title} of modes) { const box = new Gtk.Box({
const check = new Gtk.CheckButton({ orientation: Gtk.Orientation.VERTICAL,
action_name: 'window-list.grouping-mode', spacing: 12,
action_target: new GLib.Variant('s', mode), margin_bottom: 12,
});
this.append(box);
const context = box.get_style_context();
const cssProvider = new Gtk.CssProvider();
cssProvider.load_from_data(
'box { padding: 12px; }');
context.add_provider(cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
context.add_class('frame');
context.add_class('view');
this._settings = ExtensionUtils.getSettings();
let currentMode = this._settings.get_string('grouping-mode');
let range = this._settings.get_range('grouping-mode');
let modes = range.deep_unpack()[1].deep_unpack();
let modeLabels = {
'never': _('Never group windows'),
'auto': _('Group windows when space is limited'),
'always': _('Always group windows'),
};
let radio = null;
let currentRadio = null;
for (let i = 0; i < modes.length; i++) {
let mode = modes[i];
let label = modeLabels[mode];
if (!label) {
log('Unhandled option "%s" for grouping-mode'.format(mode));
continue;
}
radio = new Gtk.CheckButton({
active: !i,
label,
group: radio,
margin_end: 12,
}); });
const row = new Adw.ActionRow({ box.append(radio);
activatable_widget: check,
title, if (currentMode === mode)
currentRadio = radio;
radio.connect('toggled', button => {
if (button.active)
this._settings.set_string('grouping-mode', mode);
}); });
row.add_prefix(check);
groupingGroup.add(row);
} }
const miscGroup = new Adw.PreferencesGroup(); if (currentRadio)
this.add(miscGroup); currentRadio.active = true;
let toggle = new Gtk.Switch({ let check = new Gtk.CheckButton({
action_name: 'window-list.show-on-all-monitors', label: _('Show on all monitors'),
valign: Gtk.Align.CENTER,
}); });
let row = new Adw.ActionRow({ this._settings.bind('show-on-all-monitors', check, 'active', Gio.SettingsBindFlags.DEFAULT);
title: _('Show on all monitors'), this.append(check);
activatable_widget: toggle,
});
row.add_suffix(toggle);
miscGroup.add(row);
toggle = new Gtk.Switch({ check = new Gtk.CheckButton({
action_name: 'window-list.display-all-workspaces', label: _('Show windows from all workspaces'),
valign: Gtk.Align.CENTER,
}); });
this._settings.bind('display-all-workspaces', this._settings.bind('display-all-workspaces', check, 'active', Gio.SettingsBindFlags.DEFAULT);
toggle, 'active', Gio.SettingsBindFlags.DEFAULT); this.append(check);
row = new Adw.ActionRow({
title: _('Show windows from all workspaces'),
activatable_widget: toggle,
});
row.add_suffix(toggle);
miscGroup.add(row);
} }
} });
export default class WindowListPrefs extends ExtensionPreferences { function buildPrefsWidget() {
getPreferencesWidget() { return new WindowListPrefsWidget();
return new WindowListPrefsWidget(this.getSettings());
}
} }

View File

@@ -1,113 +0,0 @@
.window-list {
spacing: 2px;
font-size: 10pt;
}
.bottom-panel {
background-color: #000000;
border-top-width: 0px;
padding: 2px;
}
.window-button {
padding: 2px, 1px;
}
.window-button:first-child:ltr {
padding-left: 2px;
}
.window-button:last-child:rtl {
padding-right: 2px;
}
.window-button-box {
spacing: 4px;
}
.window-button > StWidget,
.window-picker-toggle > StWidget {
color: #bbb;
background-color: #1d1d1d;
border-radius: 4px;
padding: 3px 6px 1px;
transition: 100ms ease;
}
.window-button > StWidget {
-st-natural-width: 18.75em;
max-width: 18.75em;
}
.window-button:hover > StWidget,
.window-picker-toggle:hover > StWidget {
color: #fff;
background-color: #303030;
}
.window-button:active > StWidget,
.window-button:focus > StWidget {
color: #fff;
background-color: #3f3f3f;
}
.window-button.focused > StWidget,
.window-picker-toggle:checked > StWidget {
color: #fff;
background-color: #3f3f3f;
}
.window-button.focused:active > StWidget,
.window-picker-toggle:checked:active > StWidget {
color: #fff;
background-color: #3f3f3f;
}
.window-button.minimized > StWidget {
color: #666;
background-color: #161616;
}
.window-button.minimized:active > StWidget {
color: #666;
background-color: #161616;
}
.window-button-icon {
width: 24px;
height: 24px;
}
.window-list-workspace-indicator .status-label-bin {
background-color: rgba(200, 200, 200, 0.3);
padding: 0 3px;
margin: 3px;
}
.window-list-workspace-indicator .workspaces-box {
spacing: 3px;
padding: 3px;
}
.window-list-workspace-indicator .workspace {
width: 52px;
border-radius: 4px;
background-color: #1e1e1e;
}
.window-list-workspace-indicator .workspace.active {
background-color: #3f3f3f;
}
.window-list-window-preview {
background-color: #bebebe;
border-radius: 1px;
}
.window-list-window-preview.active {
background-color: #d4d4d4;
}
.notification {
font-weight: normal;
}

View File

@@ -0,0 +1,115 @@
.window-list {
spacing: 2px;
font-size: 10pt;
}
.window-button {
padding: 1px;
}
.window-button:first-child:ltr {
padding-left: 2px;
}
.window-button:last-child:rtl {
padding-right: 2px;
}
.window-button-box {
spacing: 4px;
}
.window-button > StWidget,
.window-picker-toggle > StWidget {
color: #bbb;
background-color: black;
border-radius: 2px;
padding: 3px 6px 1px;
box-shadow: inset 1px 1px 4px rgba(255,255,255,0.5);
text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
}
.window-picker-toggle {
padding: 3px;
}
.window-picker-toggle > StWidet {
border: 1px solid rgba(255,255,255,0.3);
}
.window-button > StWidget {
-st-natural-width: 18.75em;
max-width: 18.75em;
}
.window-button:hover > StWidget,
.window-picker-toggle:hover > StWidget {
color: white;
background-color: #1f1f1f;
}
.window-button:active > StWidget,
.window-button:focus > StWidget {
box-shadow: inset 2px 2px 4px rgba(255,255,255,0.5);
}
.window-button.focused > StWidget,
.window-picker-toggle:checked > StWidget {
color: white;
box-shadow: inset 1px 1px 4px rgba(255,255,255,0.7);
}
.window-button.focused:active > StWidget,
.window-picker-toggle:checked:active > StWidget {
box-shadow: inset 2px 2px 4px rgba(255,255,255,0.7);
}
.window-button.minimized > StWidget {
color: #666;
box-shadow: inset -1px -1px 4px rgba(255,255,255,0.5);
}
.window-button.minimized:active > StWidget {
box-shadow: inset -2px -2px 4px rgba(255,255,255,0.5);
}
.window-button-icon {
width: 24px;
height: 24px;
}
.window-list-workspace-indicator .status-label-bin {
background-color: rgba(200, 200, 200, .3);
border: 1px solid #cccccc;
padding: 0 3px;
margin: 3px;
}
.window-list-workspace-indicator .workspaces-box {
spacing: 3px;
padding: 3px;
}
.window-list-workspace-indicator .workspace {
border: 2px solid #000;
width: 52px;
border-radius: 4px;
background-color: #595959;
}
.window-list-workspace-indicator .workspace.active {
border-color: #fff;
}
.window-list-window-preview {
background-color: #bebebe;
border: 1px solid #828282;
}
.window-list-window-preview.active {
background-color: #d4d4d4;
}
.notification {
font-weight: normal;
}

View File

@@ -1,30 +1,25 @@
import Clutter from 'gi://Clutter'; /* exported WindowPicker, WindowPickerToggle */
import GObject from 'gi://GObject'; const { Clutter, GObject, Shell, St } = imports.gi;
import Shell from 'gi://Shell';
import St from 'gi://St';
import {Extension, InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js'; const Layout = imports.ui.layout;
import * as Layout from 'resource:///org/gnome/shell/ui/layout.js'; const Main = imports.ui.main;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const { WorkspacesDisplay } = imports.ui.workspacesView;
import {WorkspacesDisplay} from 'resource:///org/gnome/shell/ui/workspacesView.js'; const Workspace = imports.ui.workspace;
import * as Workspace from 'resource:///org/gnome/shell/ui/workspace.js';
import {VIGNETTE_BRIGHTNESS} from 'resource:///org/gnome/shell/ui/lightbox.js'; const { VIGNETTE_BRIGHTNESS } = imports.ui.lightbox;
import { const {
SIDE_CONTROLS_ANIMATION_TIME, SIDE_CONTROLS_ANIMATION_TIME,
OverviewAdjustment, OverviewAdjustment,
ControlsState ControlsState,
} from 'resource:///org/gnome/shell/ui/overviewControls.js'; } = imports.ui.overviewControls;
let MyWorkspacesDisplay = GObject.registerClass(
class MyWorkspacesDisplay extends WorkspacesDisplay { class MyWorkspacesDisplay extends WorkspacesDisplay {
static { _init(controls, overviewAdjustment) {
GObject.registerClass(this);
}
constructor(controls, overviewAdjustment) {
let workspaceManager = global.workspace_manager; let workspaceManager = global.workspace_manager;
const workspaceAdjustment = new St.Adjustment({ this._overviewAdjustment = overviewAdjustment;
this._workspaceAdjustment = new St.Adjustment({
value: workspaceManager.get_active_workspace_index(), value: workspaceManager.get_active_workspace_index(),
lower: 0, lower: 0,
page_increment: 1, page_increment: 1,
@@ -33,16 +28,14 @@ class MyWorkspacesDisplay extends WorkspacesDisplay {
upper: workspaceManager.n_workspaces, upper: workspaceManager.n_workspaces,
}); });
super(controls, workspaceAdjustment, overviewAdjustment); this._nWorkspacesChangedId =
workspaceManager.connect('notify::n-workspaces',
this._updateAdjustment.bind(this));
this._windowPicker = controls; super._init(controls, this._workspaceAdjustment, this._overviewAdjustment);
this._workspaceAdjustment = workspaceAdjustment;
this._workspaceAdjustment.actor = this; this._workspaceAdjustment.actor = this;
workspaceManager.connectObject('notify::n-workspaces',
() => this._updateAdjustment(), this);
this.add_constraint( this.add_constraint(
new Layout.MonitorConstraint({ new Layout.MonitorConstraint({
primary: true, primary: true,
@@ -52,7 +45,7 @@ class MyWorkspacesDisplay extends WorkspacesDisplay {
prepareToEnterOverview(...args) { prepareToEnterOverview(...args) {
if (!this._scrollEventId) { if (!this._scrollEventId) {
this._scrollEventId = this._windowPicker.connect('scroll-event', this._scrollEventId = Main.windowPicker.connect('scroll-event',
this._onScrollEvent.bind(this)); this._onScrollEvent.bind(this));
} }
@@ -61,7 +54,7 @@ class MyWorkspacesDisplay extends WorkspacesDisplay {
vfunc_hide(...args) { vfunc_hide(...args) {
if (this._scrollEventId > 0) if (this._scrollEventId > 0)
this._windowPicker.disconnect(this._scrollEventId); Main.windowPicker.disconnect(this._scrollEventId);
this._scrollEventId = 0; this._scrollEventId = 0;
super.vfunc_hide(...args); super.vfunc_hide(...args);
@@ -74,28 +67,95 @@ class MyWorkspacesDisplay extends WorkspacesDisplay {
value: workspaceManager.get_active_workspace_index(), value: workspaceManager.get_active_workspace_index(),
}); });
} }
}
export class WindowPicker extends Clutter.Actor { _onDestroy() {
static [GObject.signals] = { if (this._nWorkspacesChangedId)
'open-state-changed': {param_types: [GObject.TYPE_BOOLEAN]}, global.workspace_manager.disconnect(this._nWorkspacesChangedId);
}; this._nWorkspacesChangedId = 0;
static { super._onDestroy();
GObject.registerClass(this); }
});
const MyWorkspace = GObject.registerClass(
class MyWorkspace extends Workspace.Workspace {
_init(...args) {
super._init(...args);
this._adjChangedId =
this._overviewAdjustment.connect('notify::value', () => {
const { value: progress } = this._overviewAdjustment;
const brightness = 1 - (1 - VIGNETTE_BRIGHTNESS) * progress;
for (const bg of this._background?._backgroundGroup ?? []) {
bg.content.set({
vignette: true,
brightness,
});
}
});
} }
constructor() { _onDestroy() {
super({reactive: true}); super._onDestroy();
if (this._adjChangedId)
this._overviewAdjustment.disconnect(this._adjChangedId);
this._adjChangedId = 0;
}
});
const MyWorkspaceBackground = GObject.registerClass(
class MyWorkspaceBackground extends Workspace.WorkspaceBackground {
_updateBorderRadius() {
}
vfunc_allocate(box) {
this.set_allocation(box);
const themeNode = this.get_theme_node();
const contentBox = themeNode.get_content_box(box);
this._bin.allocate(contentBox);
const [contentWidth, contentHeight] = contentBox.get_size();
const monitor = Main.layoutManager.monitors[this._monitorIndex];
const xRatio = contentWidth / this._workarea.width;
const yRatio = contentHeight / this._workarea.height;
const right = area => area.x + area.width;
const bottom = area => area.y + area.height;
const offsets = {
left: xRatio * (this._workarea.x - monitor.x),
right: xRatio * (right(monitor) - right(this._workarea)),
top: yRatio * (this._workarea.y - monitor.y),
bottom: yRatio * (bottom(monitor) - bottom(this._workarea)),
};
contentBox.set_origin(-offsets.left, -offsets.top);
contentBox.set_size(
offsets.left + contentWidth + offsets.right,
offsets.top + contentHeight + offsets.bottom);
this._backgroundGroup.allocate(contentBox);
}
});
var WindowPicker = GObject.registerClass({
Signals: {
'open-state-changed': { param_types: [GObject.TYPE_BOOLEAN] },
},
}, class extends Clutter.Actor {
_init() {
this._visible = false; this._visible = false;
this._modal = false; this._modal = false;
this._overlayKeyId = 0;
this._stageKeyPressId = 0; this._stageKeyPressId = 0;
super._init({ reactive: true });
this._adjustment = new OverviewAdjustment(this); this._adjustment = new OverviewAdjustment(this);
this._injectionManager = new InjectionManager();
this.connect('destroy', this._onDestroy.bind(this)); this.connect('destroy', this._onDestroy.bind(this));
global.bind_property('screen-width', global.bind_property('screen-width',
@@ -113,78 +173,21 @@ export class WindowPicker extends Clutter.Actor {
if (!Main.sessionMode.hasOverview) { if (!Main.sessionMode.hasOverview) {
this._injectBackgroundShade(); this._injectBackgroundShade();
global.display.connectObject('overlay-key', () => { this._overlayKeyId = global.display.connect('overlay-key', () => {
if (!this._visible) if (!this._visible)
this.open(); this.open();
else else
this.close(); this.close();
}, this); });
} }
} }
_injectBackgroundShade() { _injectBackgroundShade() {
const backgroundProto = Workspace.WorkspaceBackground.prototype; this._origWorkspace = Workspace.Workspace;
this._injectionManager.overrideMethod(backgroundProto, '_updateBorderRadius', this._origWorkspaceBackground = Workspace.WorkspaceBackground;
() => {
return function () {};
});
this._injectionManager.overrideMethod(backgroundProto, 'vfunc_allocate',
() => {
/* eslint-disable no-invalid-this */
return function (box) {
this.set_allocation(box);
const themeNode = this.get_theme_node(); Workspace.Workspace = MyWorkspace;
const contentBox = themeNode.get_content_box(box); Workspace.WorkspaceBackground = MyWorkspaceBackground;
this._bin.allocate(contentBox);
const [contentWidth, contentHeight] = contentBox.get_size();
const monitor = Main.layoutManager.monitors[this._monitorIndex];
const xRatio = contentWidth / this._workarea.width;
const yRatio = contentHeight / this._workarea.height;
const right = area => area.x + area.width;
const bottom = area => area.y + area.height;
const offsets = {
left: xRatio * (this._workarea.x - monitor.x),
right: xRatio * (right(monitor) - right(this._workarea)),
top: yRatio * (this._workarea.y - monitor.y),
bottom: yRatio * (bottom(monitor) - bottom(this._workarea)),
};
contentBox.set_origin(-offsets.left, -offsets.top);
contentBox.set_size(
offsets.left + contentWidth + offsets.right,
offsets.top + contentHeight + offsets.bottom);
this._backgroundGroup.allocate(contentBox);
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(backgroundProto, 'vfunc_parent_set',
() => {
/* eslint-disable no-invalid-this */
return function () {
setTimeout(() => {
const parent = this.get_parent();
if (!parent)
return;
parent._overviewAdjustment.connectObject('notify::value', () => {
const {value: progress} = parent._overviewAdjustment;
const brightness = 1 - (1 - VIGNETTE_BRIGHTNESS) * progress;
for (const bg of this._backgroundGroup ?? []) {
bg.content.set({
vignette: true,
brightness,
});
}
}, this);
});
};
/* eslint-enable */
});
} }
get visible() { get visible() {
@@ -270,40 +273,45 @@ export class WindowPicker extends Clutter.Actor {
if (this._modal) if (this._modal)
return true; return true;
const grab = Main.pushModal(global.stage, { this._modal = Main.pushModal(this, {
actionMode: Shell.ActionMode.OVERVIEW, actionMode: Shell.ActionMode.OVERVIEW,
}); });
if (grab.get_seat_state() !== Clutter.GrabState.NONE) {
this._grab = grab; if (!this._modal) {
this._modal = true;
} else {
Main.popModal(grab);
this.hide(); this.hide();
return false; return false;
} }
} else if (this._modal) { } else if (this._modal) {
Main.popModal(this._grab); Main.popModal(this);
this._modal = false; this._modal = false;
this._grab = null;
} }
return true; return true;
} }
_onDestroy() { _onDestroy() {
this._injectionManager.clear(); if (this._origWorkspace)
Workspace.Workspace = this._origWorkspace;
if (this._origWorkspaceBackground)
Workspace.WorkspaceBackground = this._origWorkspaceBackground;
if (this._monitorsChangedId)
Main.layoutManager.disconnect(this._monitorsChangedId);
this._monitorsChangedId = 0;
if (this._overlayKeyId)
global.display.disconnect(this._overlayKeyId);
this._overlayKeyId = 0;
if (this._stageKeyPressId) if (this._stageKeyPressId)
global.stage.disconnect(this._stageKeyPressId); global.stage.disconnect(this._stageKeyPressId);
this._stageKeyPressId = 0; this._stageKeyPressId = 0;
} }
} });
export class WindowPickerToggle extends St.Button { var WindowPickerToggle = GObject.registerClass(
static { class WindowPickerToggle extends St.Button {
GObject.registerClass(this); _init() {
}
constructor() {
let iconBin = new St.Widget({ let iconBin = new St.Widget({
layout_manager: new Clutter.BinLayout(), layout_manager: new Clutter.BinLayout(),
}); });
@@ -315,23 +323,22 @@ export class WindowPickerToggle extends St.Button {
x_align: Clutter.ActorAlign.CENTER, x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER, y_align: Clutter.ActorAlign.CENTER,
})); }));
super({ super._init({
style_class: 'window-picker-toggle', style_class: 'window-picker-toggle',
child: iconBin, child: iconBin,
visible: !Main.sessionMode.hasOverview, visible: !Main.sessionMode.hasOverview,
toggle_mode: true, toggle_mode: true,
}); });
const {windowPicker} = Extension.lookupByURL(import.meta.url);
this.connect('notify::checked', () => { this.connect('notify::checked', () => {
if (this.checked) if (this.checked)
windowPicker.open(); Main.windowPicker.open();
else else
windowPicker.close(); Main.windowPicker.close();
}); });
windowPicker.connect('open-state-changed', () => { Main.windowPicker.connect('open-state-changed', () => {
this.checked = windowPicker.visible; this.checked = Main.windowPicker.visible;
}); });
} }
} });

View File

@@ -1,47 +1,48 @@
import Clutter from 'gi://Clutter'; /* exported WorkspaceIndicator */
import Gio from 'gi://Gio'; const { Clutter, Gio, GObject, Meta, St } = imports.gi;
import GObject from 'gi://GObject';
import Meta from 'gi://Meta';
import St from 'gi://St';
import {gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const DND = imports.ui.dnd;
const ExtensionUtils = imports.misc.extensionUtils;
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
import * as DND from 'resource:///org/gnome/shell/ui/dnd.js'; const Me = ExtensionUtils.getCurrentExtension();
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; const _ = Gettext.gettext;
const TOOLTIP_OFFSET = 6; const TOOLTIP_OFFSET = 6;
const TOOLTIP_ANIMATION_TIME = 150; const TOOLTIP_ANIMATION_TIME = 150;
const MAX_THUMBNAILS = 6; const MAX_THUMBNAILS = 6;
let WindowPreview = GObject.registerClass(
class WindowPreview extends St.Button { class WindowPreview extends St.Button {
static { _init(window) {
GObject.registerClass(this); super._init({
}
constructor(window) {
super({
style_class: 'window-list-window-preview', style_class: 'window-list-window-preview',
}); });
this._delegate = this; this._delegate = this;
DND.makeDraggable(this, {restoreOnSuccess: true}); DND.makeDraggable(this, { restoreOnSuccess: true });
this._window = window; this._window = window;
this._window.connectObject( this.connect('destroy', this._onDestroy.bind(this));
'size-changed', () => this.queue_relayout(),
'position-changed', () => { this._sizeChangedId = this._window.connect('size-changed',
() => this.queue_relayout());
this._positionChangedId = this._window.connect('position-changed',
() => {
this._updateVisible(); this._updateVisible();
this.queue_relayout(); this.queue_relayout();
}, });
'notify::minimized', this._updateVisible.bind(this), this._minimizedChangedId = this._window.connect('notify::minimized',
this); this._updateVisible.bind(this));
global.display.connectObject('notify::focus-window', this._focusChangedId = global.display.connect('notify::focus-window',
this._onFocusChanged.bind(this), this); this._onFocusChanged.bind(this));
this._onFocusChanged(); this._onFocusChanged();
} }
@@ -50,6 +51,13 @@ class WindowPreview extends St.Button {
return this._window; return this._window;
} }
_onDestroy() {
this._window.disconnect(this._sizeChangedId);
this._window.disconnect(this._positionChangedId);
this._window.disconnect(this._minimizedChangedId);
global.display.disconnect(this._focusChangedId);
}
_onFocusChanged() { _onFocusChanged() {
if (global.display.focus_window === this._window) if (global.display.focus_window === this._window)
this.add_style_class_name('active'); this.add_style_class_name('active');
@@ -64,13 +72,10 @@ class WindowPreview extends St.Button {
this._window.window_type !== Meta.WindowType.DESKTOP && this._window.window_type !== Meta.WindowType.DESKTOP &&
this._window.showing_on_its_workspace(); this._window.showing_on_its_workspace();
} }
} });
let WorkspaceLayout = GObject.registerClass(
class WorkspaceLayout extends Clutter.LayoutManager { class WorkspaceLayout extends Clutter.LayoutManager {
static {
GObject.registerClass(this);
}
vfunc_get_preferred_width() { vfunc_get_preferred_width() {
return [0, 0]; return [0, 0];
} }
@@ -97,15 +102,12 @@ class WorkspaceLayout extends Clutter.LayoutManager {
child.allocate(childBox); child.allocate(childBox);
} }
} }
} });
let WorkspaceThumbnail = GObject.registerClass(
class WorkspaceThumbnail extends St.Button { class WorkspaceThumbnail extends St.Button {
static { _init(index) {
GObject.registerClass(this); super._init({
}
constructor(index) {
super({
style_class: 'workspace', style_class: 'workspace',
child: new Clutter.Actor({ child: new Clutter.Actor({
layout_manager: new WorkspaceLayout(), layout_manager: new WorkspaceLayout(),
@@ -130,13 +132,16 @@ class WorkspaceThumbnail extends St.Button {
let workspaceManager = global.workspace_manager; let workspaceManager = global.workspace_manager;
this._workspace = workspaceManager.get_workspace_by_index(index); this._workspace = workspaceManager.get_workspace_by_index(index);
this._workspace.connectObject( this._windowAddedId = this._workspace.connect('window-added',
'window-added', (ws, window) => this._addWindow(window), (ws, window) => {
'window-removed', (ws, window) => this._removeWindow(window), this._addWindow(window);
this); });
this._windowRemovedId = this._workspace.connect('window-removed',
global.display.connectObject('restacked', (ws, window) => {
this._onRestacked.bind(this), this); this._removeWindow(window);
});
this._restackedId = global.display.connect('restacked',
this._onRestacked.bind(this));
this._workspace.list_windows().forEach(w => this._addWindow(w)); this._workspace.list_windows().forEach(w => this._addWindow(w));
this._onRestacked(); this._onRestacked();
@@ -234,16 +239,17 @@ class WorkspaceThumbnail extends St.Button {
_onDestroy() { _onDestroy() {
this._tooltip.destroy(); this._tooltip.destroy();
}
}
export class WorkspaceIndicator extends PanelMenu.Button { this._workspace.disconnect(this._windowAddedId);
static { this._workspace.disconnect(this._windowRemovedId);
GObject.registerClass(this); global.display.disconnect(this._restackedId);
} }
});
constructor() { var WorkspaceIndicator = GObject.registerClass(
super(0.5, _('Workspace Indicator'), true); class WorkspaceIndicator extends PanelMenu.Button {
_init() {
super._init(0.0, _('Workspace Indicator'), true);
this.setMenu(new PopupMenu.PopupMenu(this, 0.0, St.Side.BOTTOM)); this.setMenu(new PopupMenu.PopupMenu(this, 0.0, St.Side.BOTTOM));
this.add_style_class_name('window-list-workspace-indicator'); this.add_style_class_name('window-list-workspace-indicator');
this.remove_style_class_name('panel-button'); this.remove_style_class_name('panel-button');
@@ -259,7 +265,7 @@ export class WorkspaceIndicator extends PanelMenu.Button {
let workspaceManager = global.workspace_manager; let workspaceManager = global.workspace_manager;
this._currentWorkspace = workspaceManager.get_active_workspace_index(); this._currentWorkspace = workspaceManager.get_active_workspace_index();
this._statusLabel = new St.Label({text: this._getStatusText()}); this._statusLabel = new St.Label({ text: this._getStatusText() });
this._statusBin = new St.Bin({ this._statusBin = new St.Bin({
style_class: 'status-label-bin', style_class: 'status-label-bin',
@@ -280,24 +286,39 @@ export class WorkspaceIndicator extends PanelMenu.Button {
this._workspacesItems = []; this._workspacesItems = [];
workspaceManager.connectObject( this._workspaceManagerSignals = [
'notify::n-workspaces', this._nWorkspacesChanged.bind(this), GObject.ConnectFlags.AFTER, workspaceManager.connect('notify::n-workspaces',
'workspace-switched', this._onWorkspaceSwitched.bind(this), GObject.ConnectFlags.AFTER, this._nWorkspacesChanged.bind(this)),
'notify::layout-rows', this._updateThumbnailVisibility.bind(this), workspaceManager.connect_after('workspace-switched',
this); this._onWorkspaceSwitched.bind(this)),
workspaceManager.connect('notify::layout-rows',
this._updateThumbnailVisibility.bind(this)),
];
this.connect('scroll-event', this._onScrollEvent.bind(this)); this.connect('scroll-event', this._onScrollEvent.bind(this));
this._updateMenu(); this._updateMenu();
this._updateThumbnails(); this._updateThumbnails();
this._updateThumbnailVisibility(); this._updateThumbnailVisibility();
this._settings = new Gio.Settings({schema_id: 'org.gnome.desktop.wm.preferences'}); this._settings = new Gio.Settings({ schema_id: 'org.gnome.desktop.wm.preferences' });
this._settings.connectObject('changed::workspace-names', this._settingsChangedId = this._settings.connect(
() => this._updateMenuLabels(), this); 'changed::workspace-names', this._updateMenuLabels.bind(this));
}
_onDestroy() {
for (let i = 0; i < this._workspaceManagerSignals.length; i++)
global.workspace_manager.disconnect(this._workspaceManagerSignals[i]);
if (this._settingsChangedId) {
this._settings.disconnect(this._settingsChangedId);
this._settingsChangedId = 0;
}
super._onDestroy();
} }
_updateThumbnailVisibility() { _updateThumbnailVisibility() {
const {workspaceManager} = global; const { workspaceManager } = global;
const vertical = workspaceManager.layout_rows === -1; const vertical = workspaceManager.layout_rows === -1;
const useMenu = const useMenu =
vertical || workspaceManager.n_workspaces > MAX_THUMBNAILS; vertical || workspaceManager.n_workspaces > MAX_THUMBNAILS;
@@ -417,4 +438,5 @@ export class WorkspaceIndicator extends PanelMenu.Button {
let newIndex = this._currentWorkspace + diff; let newIndex = this._currentWorkspace + diff;
this._activate(newIndex); this._activate(newIndex);
} }
} });

View File

@@ -1,290 +1,267 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */ /* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Clutter from 'gi://Clutter'; /* exported init */
import Graphene from 'gi://Graphene'; const { Clutter, Graphene, GObject, St } = imports.gi;
import St from 'gi://St';
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const Main = imports.ui.main;
import * as OverviewControls from 'resource:///org/gnome/shell/ui/overviewControls.js'; const OverviewControls = imports.ui.overviewControls;
import {InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js'; const Workspace = imports.ui.workspace;
import {WindowPreview} from 'resource:///org/gnome/shell/ui/windowPreview.js'; const WorkspacesView = imports.ui.workspacesView;
import {Workspace} from 'resource:///org/gnome/shell/ui/workspace.js';
import {WorkspacesView} from 'resource:///org/gnome/shell/ui/workspacesView.js';
const WINDOW_SLOT = 4; const WINDOW_SLOT = 4;
export default class Extension { var MyWorkspace = GObject.registerClass(
class MyWorkspace extends Workspace.Workspace {
_init(...args) {
super._init(...args);
if (this.metaWorkspace && this.metaWorkspace.index() < 9) {
this._tip = new St.Label({
style_class: 'extension-windowsNavigator-window-tooltip',
visible: false,
});
this.add_actor(this._tip);
this.connect('notify::scale-x', () => {
this._tip.set_scale(1 / this.scale_x, 1 / this.scale_x);
});
} else {
this._tip = null;
}
}
vfunc_allocate(box) {
super.vfunc_allocate(box);
if (this._tip)
this._tip.allocate_preferred_size(0, 0);
}
showTooltip() {
if (!this._tip)
return;
this._tip.text = (this.metaWorkspace.index() + 1).toString();
this._tip.show();
this.set_child_below_sibling(this._tip, null);
}
hideTooltip() {
if (this._tip)
this._tip.hide();
}
getWindowWithTooltip(id) {
const { layoutManager } = this._container;
const slot = layoutManager._windowSlots[id - 1];
return slot ? slot[WINDOW_SLOT].metaWindow : null;
}
showWindowsTooltips() {
const { layoutManager } = this._container;
for (let i = 0; i < layoutManager._windowSlots.length; i++) {
if (layoutManager._windowSlots[i])
layoutManager._windowSlots[i][WINDOW_SLOT].showTooltip(`${i + 1}`);
}
}
hideWindowsTooltips() {
const { layoutManager } = this._container;
for (let i in layoutManager._windowSlots) {
if (layoutManager._windowSlots[i])
layoutManager._windowSlots[i][WINDOW_SLOT].hideTooltip();
}
}
// overriding _addWindowClone to apply the tooltip patch on the cloned
// windowPreview
_addWindowClone(metaWindow) {
const clone = super._addWindowClone(metaWindow);
// appling the tooltip patch
(function patchPreview() {
this._text = new St.Label({
style_class: 'extension-windowsNavigator-window-tooltip',
visible: false,
});
this._text.add_constraint(new Clutter.BindConstraint({
source: this.windowContainer,
coordinate: Clutter.BindCoordinate.POSITION,
}));
this._text.add_constraint(new Clutter.AlignConstraint({
source: this.windowContainer,
align_axis: Clutter.AlignAxis.X_AXIS,
pivot_point: new Graphene.Point({ x: 0.5, y: -1 }),
factor: this._closeButtonSide === St.Side.LEFT ? 1 : 0,
}));
this._text.add_constraint(new Clutter.AlignConstraint({
source: this.windowContainer,
align_axis: Clutter.AlignAxis.Y_AXIS,
pivot_point: new Graphene.Point({ x: -1, y: 0.5 }),
factor: 0,
}));
this.add_child(this._text);
}).call(clone);
clone.showTooltip = function (text) {
this._text.set({ text });
this._text.show();
};
clone.hideTooltip = function () {
if (this._text && this._text.visible)
this._text.hide();
};
return clone;
}
});
var MyWorkspacesView = GObject.registerClass(
class MyWorkspacesView extends WorkspacesView.WorkspacesView {
_init(...args) {
super._init(...args);
this._pickWorkspace = false;
this._pickWindow = false;
this._keyPressEventId =
global.stage.connect('key-press-event', this._onKeyPress.bind(this));
this._keyReleaseEventId =
global.stage.connect('key-release-event', this._onKeyRelease.bind(this));
}
_onDestroy() {
super._onDestroy();
global.stage.disconnect(this._keyPressEventId);
global.stage.disconnect(this._keyReleaseEventId);
}
_hideTooltips() {
if (global.stage.get_key_focus() === global.stage)
global.stage.set_key_focus(this._prevFocusActor);
this._pickWindow = false;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].hideWindowsTooltips();
}
_hideWorkspacesTooltips() {
global.stage.set_key_focus(this._prevFocusActor);
this._pickWorkspace = false;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].hideTooltip();
}
_onKeyRelease(s, o) {
if (this._pickWindow &&
(o.get_key_symbol() === Clutter.KEY_Alt_L ||
o.get_key_symbol() === Clutter.KEY_Alt_R))
this._hideTooltips();
if (this._pickWorkspace &&
(o.get_key_symbol() === Clutter.KEY_Control_L ||
o.get_key_symbol() === Clutter.KEY_Control_R))
this._hideWorkspacesTooltips();
}
_onKeyPress(s, o) {
const { ControlsState } = OverviewControls;
if (this._overviewAdjustment.value !== ControlsState.WINDOW_PICKER)
return false;
let workspaceManager = global.workspace_manager;
if ((o.get_key_symbol() === Clutter.KEY_Alt_L ||
o.get_key_symbol() === Clutter.KEY_Alt_R) &&
!this._pickWorkspace) {
this._prevFocusActor = global.stage.get_key_focus();
global.stage.set_key_focus(null);
this._active = workspaceManager.get_active_workspace_index();
this._pickWindow = true;
this._workspaces[workspaceManager.get_active_workspace_index()].showWindowsTooltips();
return true;
}
if ((o.get_key_symbol() === Clutter.KEY_Control_L ||
o.get_key_symbol() === Clutter.KEY_Control_R) &&
!this._pickWindow) {
this._prevFocusActor = global.stage.get_key_focus();
global.stage.set_key_focus(null);
this._pickWorkspace = true;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].showTooltip();
return true;
}
if (global.stage.get_key_focus() !== global.stage)
return false;
// ignore shift presses, they're required to get numerals in azerty keyboards
if ((this._pickWindow || this._pickWorkspace) &&
(o.get_key_symbol() === Clutter.KEY_Shift_L ||
o.get_key_symbol() === Clutter.KEY_Shift_R))
return true;
if (this._pickWindow) {
if (this._active !== workspaceManager.get_active_workspace_index()) {
this._hideTooltips();
return false;
}
let c = o.get_key_symbol() - Clutter.KEY_KP_0;
if (c > 9 || c <= 0) {
c = o.get_key_symbol() - Clutter.KEY_0;
if (c > 9 || c <= 0) {
this._hideTooltips();
global.log(c);
return false;
}
}
let win = this._workspaces[this._active].getWindowWithTooltip(c);
this._hideTooltips();
if (win)
Main.activateWindow(win, global.get_current_time());
return true;
}
if (this._pickWorkspace) {
let c = o.get_key_symbol() - Clutter.KEY_KP_0;
if (c > 9 || c <= 0) {
c = o.get_key_symbol() - Clutter.KEY_0;
if (c > 9 || c <= 0) {
this._hideWorkspacesTooltips();
return false;
}
}
let workspace = this._workspaces[c - 1];
if (workspace !== undefined)
workspace.metaWorkspace.activate(global.get_current_time());
this._hideWorkspacesTooltips();
return true;
}
return false;
}
});
class Extension {
constructor() { constructor() {
this._injectionManager = new InjectionManager(); this._origWorkspace = Workspace.Workspace;
this._origWorkspacesView = WorkspacesView.WorkspacesView;
} }
enable() { enable() {
const previewProto = WindowPreview.prototype; Workspace.Workspace = MyWorkspace;
WorkspacesView.WorkspacesView = MyWorkspacesView;
this._injectionManager.overrideMethod(previewProto, '_init', originalMethod => {
/* eslint-disable no-invalid-this */
return function (...args) {
originalMethod.call(this, ...args);
this._text = new St.Label({
style_class: 'extension-windowsNavigator-window-tooltip',
visible: false,
});
this._text.add_constraint(new Clutter.BindConstraint({
source: this.windowContainer,
coordinate: Clutter.BindCoordinate.POSITION,
}));
this._text.add_constraint(new Clutter.AlignConstraint({
source: this.windowContainer,
align_axis: Clutter.AlignAxis.X_AXIS,
pivot_point: new Graphene.Point({x: 0.5, y: -1}),
factor: this._closeButtonSide === St.Side.LEFT ? 1 : 0,
}));
this._text.add_constraint(new Clutter.AlignConstraint({
source: this.windowContainer,
align_axis: Clutter.AlignAxis.Y_AXIS,
pivot_point: new Graphene.Point({x: -1, y: 0.5}),
factor: 0,
}));
this.add_child(this._text);
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(previewProto, 'showTooltip', () => {
/* eslint-disable no-invalid-this */
return function (text) {
this._text.set({text});
this._text.show();
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(previewProto, 'hideTooltip', () => {
/* eslint-disable no-invalid-this */
return function () {
this._text?.hide();
};
/* eslint-enable */
});
const workspaceProto = Workspace.prototype;
this._injectionManager.overrideMethod(workspaceProto, '_init', originalMethod => {
/* eslint-disable no-invalid-this */
return function (...args) {
originalMethod.call(this, ...args);
if (this.metaWorkspace && this.metaWorkspace.index() < 9) {
this._tip = new St.Label({
style_class: 'extension-windowsNavigator-window-tooltip',
visible: false,
});
this.add_actor(this._tip);
this.connect('notify::scale-x', () => {
this._tip.set_scale(1 / this.scale_x, 1 / this.scale_x);
});
} else {
this._tip = null;
}
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'vfunc_allocate', originalMethod => {
/* eslint-disable no-invalid-this */
return function (box) {
originalMethod.call(this, box);
this._tip?.allocate_preferred_size(0, 0);
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'showTooltip', () => {
/* eslint-disable no-invalid-this */
return function () {
if (!this._tip)
return;
this._tip.text = (this.metaWorkspace.index() + 1).toString();
this._tip.show();
this.set_child_below_sibling(this._tip, null);
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'hideTooltip', () => {
/* eslint-disable no-invalid-this */
return function () {
this._tip?.hide();
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'getWindowWithTooltip', () => {
/* eslint-disable no-invalid-this */
return function (id) {
const {layoutManager} = this._container;
const slot = layoutManager._windowSlots[id - 1];
return slot ? slot[WINDOW_SLOT].metaWindow : null;
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'showWindowsTooltips', () => {
/* eslint-disable no-invalid-this */
return function () {
const {layoutManager} = this._container;
for (let i = 0; i < layoutManager._windowSlots.length; i++) {
if (layoutManager._windowSlots[i])
layoutManager._windowSlots[i][WINDOW_SLOT].showTooltip(`${i + 1}`);
}
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(workspaceProto, 'hideWindowsTooltips', () => {
/* eslint-disable no-invalid-this */
return function () {
const {layoutManager} = this._container;
for (let i in layoutManager._windowSlots) {
if (layoutManager._windowSlots[i])
layoutManager._windowSlots[i][WINDOW_SLOT].hideTooltip();
}
};
/* eslint-enable */
});
const viewProto = WorkspacesView.prototype;
this._injectionManager.overrideMethod(viewProto, '_init', originalMethod => {
/* eslint-disable no-invalid-this */
return function (...args) {
originalMethod.call(this, ...args);
this._pickWorkspace = false;
this._pickWindow = false;
global.stage.connectObject(
'key-press-event', this._onKeyPress.bind(this),
'key-release-event', this._onKeyRelease.bind(this),
this);
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(viewProto, '_hideTooltips', () => {
/* eslint-disable no-invalid-this */
return function () {
if (global.stage.get_key_focus() === global.stage)
global.stage.set_key_focus(this._prevFocusActor);
this._pickWindow = false;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].hideWindowsTooltips();
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(viewProto, '_hideWorkspacesTooltips', () => {
/* eslint-disable no-invalid-this */
return function () {
global.stage.set_key_focus(this._prevFocusActor);
this._pickWorkspace = false;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].hideTooltip();
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(viewProto, '_onKeyRelease', () => {
/* eslint-disable no-invalid-this */
return function (actor, event) {
if (this._pickWindow &&
(event.get_key_symbol() === Clutter.KEY_Alt_L ||
event.get_key_symbol() === Clutter.KEY_Alt_R))
this._hideTooltips();
if (this._pickWorkspace &&
(event.get_key_symbol() === Clutter.KEY_Control_L ||
event.get_key_symbol() === Clutter.KEY_Control_R))
this._hideWorkspacesTooltips();
};
/* eslint-enable */
});
this._injectionManager.overrideMethod(viewProto, '_onKeyPress', () => {
/* eslint-disable no-invalid-this */
return function (actor, event) {
const {ControlsState} = OverviewControls;
if (this._overviewAdjustment.value !== ControlsState.WINDOW_PICKER)
return false;
let workspaceManager = global.workspace_manager;
if ((event.get_key_symbol() === Clutter.KEY_Alt_L ||
event.get_key_symbol() === Clutter.KEY_Alt_R) &&
!this._pickWorkspace) {
this._prevFocusActor = global.stage.get_key_focus();
global.stage.set_key_focus(null);
this._active = workspaceManager.get_active_workspace_index();
this._pickWindow = true;
this._workspaces[workspaceManager.get_active_workspace_index()].showWindowsTooltips();
return true;
}
if ((event.get_key_symbol() === Clutter.KEY_Control_L ||
event.get_key_symbol() === Clutter.KEY_Control_R) &&
!this._pickWindow) {
this._prevFocusActor = global.stage.get_key_focus();
global.stage.set_key_focus(null);
this._pickWorkspace = true;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].showTooltip();
return true;
}
if (global.stage.get_key_focus() !== global.stage)
return false;
// ignore shift presses, they're required to get numerals in azerty keyboards
if ((this._pickWindow || this._pickWorkspace) &&
(event.get_key_symbol() === Clutter.KEY_Shift_L ||
event.get_key_symbol() === Clutter.KEY_Shift_R))
return true;
if (this._pickWindow) {
if (this._active !== workspaceManager.get_active_workspace_index()) {
this._hideTooltips();
return false;
}
let c = event.get_key_symbol() - Clutter.KEY_KP_0;
if (c > 9 || c <= 0) {
c = event.get_key_symbol() - Clutter.KEY_0;
if (c > 9 || c <= 0) {
this._hideTooltips();
log(c);
return false;
}
}
let win = this._workspaces[this._active].getWindowWithTooltip(c);
this._hideTooltips();
if (win)
Main.activateWindow(win, global.get_current_time());
return true;
}
if (this._pickWorkspace) {
let c = event.get_key_symbol() - Clutter.KEY_KP_0;
if (c > 9 || c <= 0) {
c = event.get_key_symbol() - Clutter.KEY_0;
if (c > 9 || c <= 0) {
this._hideWorkspacesTooltips();
return false;
}
}
let workspace = this._workspaces[c - 1];
if (workspace !== undefined)
workspace.metaWorkspace.activate(global.get_current_time());
this._hideWorkspacesTooltips();
return true;
}
return false;
};
/* eslint-enable */
});
} }
disable() { disable() {
this._injectionManager.clear(); Workspace.Workspace = this._origWorkspace;
WorkspacesView.WorkspacesView = this._origWorkspacesView;
} }
} }
function init() {
return new Extension();
}

View File

@@ -3,4 +3,3 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')

View File

@@ -1,16 +1,18 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Clutter from 'gi://Clutter'; /* exported init enable disable */
import Gio from 'gi://Gio';
import GObject from 'gi://GObject';
import Meta from 'gi://Meta';
import St from 'gi://St';
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js'; const { Clutter, Gio, GObject, Meta, St } = imports.gi;
import * as DND from 'resource:///org/gnome/shell/ui/dnd.js'; const DND = imports.ui.dnd;
import * as Main from 'resource:///org/gnome/shell/ui/main.js'; const ExtensionUtils = imports.misc.extensionUtils;
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; const Main = imports.ui.main;
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences'; const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
const WORKSPACE_KEY = 'workspace-names'; const WORKSPACE_KEY = 'workspace-names';
@@ -20,32 +22,32 @@ const TOOLTIP_ANIMATION_TIME = 150;
const MAX_THUMBNAILS = 6; const MAX_THUMBNAILS = 6;
let WindowPreview = GObject.registerClass(
class WindowPreview extends St.Button { class WindowPreview extends St.Button {
static { _init(window) {
GObject.registerClass(this); super._init({
}
constructor(window) {
super({
style_class: 'workspace-indicator-window-preview', style_class: 'workspace-indicator-window-preview',
}); });
this._delegate = this; this._delegate = this;
DND.makeDraggable(this, {restoreOnSuccess: true}); DND.makeDraggable(this, { restoreOnSuccess: true });
this._window = window; this._window = window;
this._window.connectObject( this.connect('destroy', this._onDestroy.bind(this));
'size-changed', () => this.queue_relayout(),
'position-changed', () => { this._sizeChangedId = this._window.connect('size-changed',
() => this.queue_relayout());
this._positionChangedId = this._window.connect('position-changed',
() => {
this._updateVisible(); this._updateVisible();
this.queue_relayout(); this.queue_relayout();
}, });
'notify::minimized', this._updateVisible.bind(this), this._minimizedChangedId = this._window.connect('notify::minimized',
this); this._updateVisible.bind(this));
global.display.connectObject('notify::focus-window', this._focusChangedId = global.display.connect('notify::focus-window',
this._onFocusChanged.bind(this), this); this._onFocusChanged.bind(this));
this._onFocusChanged(); this._onFocusChanged();
} }
@@ -54,6 +56,13 @@ class WindowPreview extends St.Button {
return this._window; return this._window;
} }
_onDestroy() {
this._window.disconnect(this._sizeChangedId);
this._window.disconnect(this._positionChangedId);
this._window.disconnect(this._minimizedChangedId);
global.display.disconnect(this._focusChangedId);
}
_onFocusChanged() { _onFocusChanged() {
if (global.display.focus_window === this._window) if (global.display.focus_window === this._window)
this.add_style_class_name('active'); this.add_style_class_name('active');
@@ -68,13 +77,10 @@ class WindowPreview extends St.Button {
this._window.window_type !== Meta.WindowType.DESKTOP && this._window.window_type !== Meta.WindowType.DESKTOP &&
this._window.showing_on_its_workspace(); this._window.showing_on_its_workspace();
} }
} });
let WorkspaceLayout = GObject.registerClass(
class WorkspaceLayout extends Clutter.LayoutManager { class WorkspaceLayout extends Clutter.LayoutManager {
static {
GObject.registerClass(this);
}
vfunc_get_preferred_width() { vfunc_get_preferred_width() {
return [0, 0]; return [0, 0];
} }
@@ -101,15 +107,12 @@ class WorkspaceLayout extends Clutter.LayoutManager {
child.allocate(childBox); child.allocate(childBox);
} }
} }
} });
let WorkspaceThumbnail = GObject.registerClass(
class WorkspaceThumbnail extends St.Button { class WorkspaceThumbnail extends St.Button {
static { _init(index) {
GObject.registerClass(this); super._init({
}
constructor(index) {
super({
style_class: 'workspace', style_class: 'workspace',
child: new Clutter.Actor({ child: new Clutter.Actor({
layout_manager: new WorkspaceLayout(), layout_manager: new WorkspaceLayout(),
@@ -134,13 +137,16 @@ class WorkspaceThumbnail extends St.Button {
let workspaceManager = global.workspace_manager; let workspaceManager = global.workspace_manager;
this._workspace = workspaceManager.get_workspace_by_index(index); this._workspace = workspaceManager.get_workspace_by_index(index);
this._workspace.connectObject( this._windowAddedId = this._workspace.connect('window-added',
'window-added', (ws, window) => this._addWindow(window), (ws, window) => {
'window-removed', (ws, window) => this._removeWindow(window), this._addWindow(window);
this); });
this._windowRemovedId = this._workspace.connect('window-removed',
global.display.connectObject('restacked', (ws, window) => {
this._onRestacked.bind(this), this); this._removeWindow(window);
});
this._restackedId = global.display.connect('restacked',
this._onRestacked.bind(this));
this._workspace.list_windows().forEach(w => this._addWindow(w)); this._workspace.list_windows().forEach(w => this._addWindow(w));
this._onRestacked(); this._onRestacked();
@@ -238,16 +244,17 @@ class WorkspaceThumbnail extends St.Button {
_onDestroy() { _onDestroy() {
this._tooltip.destroy(); this._tooltip.destroy();
}
}
this._workspace.disconnect(this._windowAddedId);
this._workspace.disconnect(this._windowRemovedId);
global.display.disconnect(this._restackedId);
}
});
let WorkspaceIndicator = GObject.registerClass(
class WorkspaceIndicator extends PanelMenu.Button { class WorkspaceIndicator extends PanelMenu.Button {
static { _init() {
GObject.registerClass(this); super._init(0.0, _('Workspace Indicator'));
}
constructor() {
super(0.5, _('Workspace Indicator'));
let container = new St.Widget({ let container = new St.Widget({
layout_manager: new Clutter.BinLayout(), layout_manager: new Clutter.BinLayout(),
@@ -279,11 +286,14 @@ class WorkspaceIndicator extends PanelMenu.Button {
this._workspaceSection = new PopupMenu.PopupMenuSection(); this._workspaceSection = new PopupMenu.PopupMenuSection();
this.menu.addMenuItem(this._workspaceSection); this.menu.addMenuItem(this._workspaceSection);
workspaceManager.connectObject( this._workspaceManagerSignals = [
'notify::n-workspaces', this._nWorkspacesChanged.bind(this), GObject.ConnectFlags.AFTER, workspaceManager.connect_after('notify::n-workspaces',
'workspace-switched', this._onWorkspaceSwitched.bind(this), GObject.ConnectFlags.AFTER, this._nWorkspacesChanged.bind(this)),
'notify::layout-rows', this._updateThumbnailVisibility.bind(this), workspaceManager.connect_after('workspace-switched',
this); this._onWorkspaceSwitched.bind(this)),
workspaceManager.connect('notify::layout-rows',
this._updateThumbnailVisibility.bind(this)),
];
this.connect('scroll-event', this._onScrollEvent.bind(this)); this.connect('scroll-event', this._onScrollEvent.bind(this));
this._thumbnailsBox.connect('scroll-event', this._onScrollEvent.bind(this)); this._thumbnailsBox.connect('scroll-event', this._onScrollEvent.bind(this));
@@ -291,19 +301,28 @@ class WorkspaceIndicator extends PanelMenu.Button {
this._updateThumbnails(); this._updateThumbnails();
this._updateThumbnailVisibility(); this._updateThumbnailVisibility();
this._settings = new Gio.Settings({schema_id: WORKSPACE_SCHEMA}); this._settings = new Gio.Settings({ schema_id: WORKSPACE_SCHEMA });
this._settings.connectObject(`changed::${WORKSPACE_KEY}`, this._settingsChangedId = this._settings.connect(
this._updateMenuLabels.bind(this), this); `changed::${WORKSPACE_KEY}`,
this._updateMenuLabels.bind(this));
} }
_onDestroy() { _onDestroy() {
for (let i = 0; i < this._workspaceManagerSignals.length; i++)
global.workspace_manager.disconnect(this._workspaceManagerSignals[i]);
if (this._settingsChangedId) {
this._settings.disconnect(this._settingsChangedId);
this._settingsChangedId = 0;
}
Main.panel.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS); Main.panel.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
super._onDestroy(); super._onDestroy();
} }
_updateThumbnailVisibility() { _updateThumbnailVisibility() {
const {workspaceManager} = global; const { workspaceManager } = global;
const vertical = workspaceManager.layout_rows === -1; const vertical = workspaceManager.layout_rows === -1;
const useMenu = const useMenu =
vertical || workspaceManager.n_workspaces > MAX_THUMBNAILS; vertical || workspaceManager.n_workspaces > MAX_THUMBNAILS;
@@ -424,16 +443,19 @@ class WorkspaceIndicator extends PanelMenu.Button {
let newIndex = global.workspace_manager.get_active_workspace_index() + diff; let newIndex = global.workspace_manager.get_active_workspace_index() + diff;
this._activate(newIndex); this._activate(newIndex);
} }
});
function init() {
ExtensionUtils.initTranslations();
} }
export default class WorkspaceIndicatorExtension extends Extension { let _indicator;
enable() {
this._indicator = new WorkspaceIndicator();
Main.panel.addToStatusArea('workspace-indicator', this._indicator);
}
disable() { function enable() {
this._indicator.destroy(); _indicator = new WorkspaceIndicator();
delete this._indicator; Main.panel.addToStatusArea('workspace-indicator', _indicator);
} }
function disable() {
_indicator.destroy();
} }

View File

@@ -3,6 +3,5 @@ extension_data += configure_file(
output: metadata_name, output: metadata_name,
configuration: metadata_conf configuration: metadata_conf
) )
extension_data += files('stylesheet.css')
extension_sources += files('prefs.js') extension_sources += files('prefs.js')

View File

@@ -1,165 +1,133 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*- // -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Adw from 'gi://Adw'; /* exported init buildPrefsWidget */
import Gio from 'gi://Gio';
import GLib from 'gi://GLib';
import GObject from 'gi://GObject';
import Gtk from 'gi://Gtk';
import Pango from 'gi://Pango';
import {ExtensionPreferences, gettext as _} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js'; const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
const _ = Gettext.gettext;
const N_ = e => e; const N_ = e => e;
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences'; const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
const WORKSPACE_KEY = 'workspace-names'; const WORKSPACE_KEY = 'workspace-names';
class NewItem extends GObject.Object {} const WorkspaceSettingsWidget = GObject.registerClass(
GObject.registerClass(NewItem); class WorkspaceSettingsWidget extends Gtk.ScrolledWindow {
_init() {
class NewItemModel extends GObject.Object { super._init({
static [GObject.interfaces] = [Gio.ListModel]; hscrollbar_policy: Gtk.PolicyType.NEVER,
static {
GObject.registerClass(this);
}
#item = new NewItem();
vfunc_get_item_type() {
return NewItem;
}
vfunc_get_n_items() {
return 1;
}
vfunc_get_item(_pos) {
return this.#item;
}
}
class WorkspacesList extends GObject.Object {
static [GObject.interfaces] = [Gio.ListModel];
static {
GObject.registerClass(this);
}
#settings = new Gio.Settings({schema_id: WORKSPACE_SCHEMA});
#names = this.#settings.get_strv(WORKSPACE_KEY);
#items = Gtk.StringList.new(this.#names);
#changedId;
constructor() {
super();
this.#changedId =
this.#settings.connect(`changed::${WORKSPACE_KEY}`, () => {
const removed = this.#names.length;
this.#names = this.#settings.get_strv(WORKSPACE_KEY);
this.#items.splice(0, removed, this.#names);
this.items_changed(0, removed, this.#names.length);
});
}
append() {
const name = _('Workspace %d').format(this.#names.length + 1);
this.#names.push(name);
this.#settings.block_signal_handler(this.#changedId);
this.#settings.set_strv(WORKSPACE_KEY, this.#names);
this.#settings.unblock_signal_handler(this.#changedId);
const pos = this.#items.get_n_items();
this.#items.append(name);
this.items_changed(pos, 0, 1);
}
remove(name) {
const pos = this.#names.indexOf(name);
if (pos < 0)
return;
this.#names.splice(pos, 1);
this.#settings.block_signal_handler(this.#changedId);
this.#settings.set_strv(WORKSPACE_KEY, this.#names);
this.#settings.unblock_signal_handler(this.#changedId);
this.#items.remove(pos);
this.items_changed(pos, 1, 0);
}
rename(oldName, newName) {
const pos = this.#names.indexOf(oldName);
if (pos < 0)
return;
this.#names.splice(pos, 1, newName);
this.#items.splice(pos, 1, [newName]);
this.#settings.block_signal_handler(this.#changedId);
this.#settings.set_strv(WORKSPACE_KEY, this.#names);
this.#settings.unblock_signal_handler(this.#changedId);
}
vfunc_get_item_type() {
return Gtk.StringObject;
}
vfunc_get_n_items() {
return this.#items.get_n_items();
}
vfunc_get_item(pos) {
return this.#items.get_item(pos);
}
}
class WorkspaceSettingsWidget extends Adw.PreferencesGroup {
static {
GObject.registerClass(this);
this.install_action('workspaces.add', null,
self => self._workspaces.append());
this.install_action('workspaces.remove', 's',
(self, name, param) => self._workspaces.remove(param.unpack()));
this.install_action('workspaces.rename', '(ss)',
(self, name, param) => self._workspaces.rename(...param.deepUnpack()));
}
constructor() {
super({
title: _('Workspace Names'),
}); });
this._workspaces = new WorkspacesList(); const box = new Gtk.Box({
orientation: Gtk.Orientation.VERTICAL,
halign: Gtk.Align.CENTER,
spacing: 12,
margin_top: 36,
margin_bottom: 36,
margin_start: 36,
margin_end: 36,
});
this.set_child(box);
const store = new Gio.ListStore({item_type: Gio.ListModel}); box.append(new Gtk.Label({
const listModel = new Gtk.FlattenListModel({model: store}); label: '<b>%s</b>'.format(_('Workspace Names')),
store.append(this._workspaces); use_markup: true,
store.append(new NewItemModel()); halign: Gtk.Align.START,
}));
this._list = new Gtk.ListBox({ this._list = new Gtk.ListBox({
selection_mode: Gtk.SelectionMode.NONE, selection_mode: Gtk.SelectionMode.NONE,
css_classes: ['boxed-list'], valign: Gtk.Align.START,
show_separators: true,
}); });
this._list.connect('row-activated', (l, row) => row.edit()); this._list.connect('row-activated', (l, row) => row.edit());
this.add(this._list); box.append(this._list);
this._list.bind_model(listModel, item => { const context = this._list.get_style_context();
return item instanceof NewItem const cssProvider = new Gtk.CssProvider();
? new NewWorkspaceRow() cssProvider.load_from_data(
: new WorkspaceRow(item.string); 'list { min-width: 25em; }');
context.add_provider(cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
context.add_class('frame');
this._list.append(new NewWorkspaceRow());
this._actionGroup = new Gio.SimpleActionGroup();
this._list.insert_action_group('workspaces', this._actionGroup);
let action;
action = new Gio.SimpleAction({ name: 'add' });
action.connect('activate', () => {
const names = this._settings.get_strv(WORKSPACE_KEY);
this._settings.set_strv(WORKSPACE_KEY, [
...names,
_('Workspace %d').format(names.length + 1),
]);
});
this._actionGroup.add_action(action);
action = new Gio.SimpleAction({
name: 'remove',
parameter_type: new GLib.VariantType('s'),
});
action.connect('activate', (a, param) => {
const removed = param.deepUnpack();
this._settings.set_strv(WORKSPACE_KEY,
this._settings.get_strv(WORKSPACE_KEY)
.filter(name => name !== removed));
});
this._actionGroup.add_action(action);
action = new Gio.SimpleAction({ name: 'update' });
action.connect('activate', () => {
const names = this._getWorkspaceRows().map(row => row.name);
this._settings.set_strv(WORKSPACE_KEY, names);
});
this._actionGroup.add_action(action);
this._settings = new Gio.Settings({
schema_id: WORKSPACE_SCHEMA,
});
this._settings.connect(`changed::${WORKSPACE_KEY}`,
this._sync.bind(this));
this._sync();
}
_getWorkspaceRows() {
return [...this._list].filter(row => row.name);
}
_sync() {
const rows = this._getWorkspaceRows();
const oldNames = rows.map(row => row.name);
const newNames = this._settings.get_strv(WORKSPACE_KEY);
const removed = oldNames.filter(n => !newNames.includes(n));
const added = newNames.filter(n => !oldNames.includes(n));
removed.forEach(n => this._list.remove(rows.find(r => r.name === n)));
added.forEach(n => {
this._list.insert(new WorkspaceRow(n), newNames.indexOf(n));
}); });
} }
} });
class WorkspaceRow extends Adw.PreferencesRow { const WorkspaceRow = GObject.registerClass(
static { class WorkspaceRow extends Gtk.ListBoxRow {
GObject.registerClass(this); _init(name) {
} super._init({ name });
constructor(name) { const controller = new Gtk.ShortcutController();
super({name}); controller.add_shortcut(new Gtk.Shortcut({
trigger: Gtk.ShortcutTrigger.parse_string('Escape'),
action: Gtk.CallbackAction.new(this._stopEdit.bind(this)),
}));
this.add_controller(controller);
const box = new Gtk.Box({ const box = new Gtk.Box({
spacing: 12, spacing: 12,
@@ -181,39 +149,21 @@ class WorkspaceRow extends Adw.PreferencesRow {
const button = new Gtk.Button({ const button = new Gtk.Button({
action_name: 'workspaces.remove', action_name: 'workspaces.remove',
action_target: new GLib.Variant('s', name),
icon_name: 'edit-delete-symbolic', icon_name: 'edit-delete-symbolic',
has_frame: false,
}); });
box.append(button); box.append(button);
this.bind_property_full('name',
button, 'action-target',
GObject.BindingFlags.SYNC_CREATE,
(bind, target) => [true, new GLib.Variant('s', target)],
null);
this._entry = new Gtk.Entry({ this._entry = new Gtk.Entry({
max_width_chars: 25, max_width_chars: 25,
}); });
const controller = new Gtk.ShortcutController();
controller.add_shortcut(new Gtk.Shortcut({
trigger: Gtk.ShortcutTrigger.parse_string('Escape'),
action: Gtk.CallbackAction.new(() => {
this._stopEdit();
return true;
}),
}));
this._entry.add_controller(controller);
this._stack = new Gtk.Stack(); this._stack = new Gtk.Stack();
this._stack.add_named(box, 'display'); this._stack.add_named(box, 'display');
this._stack.add_named(this._entry, 'edit'); this._stack.add_named(this._entry, 'edit');
this.child = this._stack; this.child = this._stack;
this._entry.connect('activate', () => { this._entry.connect('activate', () => {
this.activate_action('workspaces.rename',
new GLib.Variant('(ss)', [this.name, this._entry.text]));
this.name = this._entry.text; this.name = this._entry.text;
this._stopEdit(); this._stopEdit();
}); });
@@ -222,6 +172,11 @@ class WorkspaceRow extends Adw.PreferencesRow {
return; return;
this._stopEdit(); this._stopEdit();
}); });
this.connect('notify::name', () => {
button.action_target = new GLib.Variant('s', this.name);
this.activate_action('workspaces.update', null);
});
} }
edit() { edit() {
@@ -234,15 +189,12 @@ class WorkspaceRow extends Adw.PreferencesRow {
this.grab_focus(); this.grab_focus();
this._stack.visible_child_name = 'display'; this._stack.visible_child_name = 'display';
} }
} });
class NewWorkspaceRow extends Adw.PreferencesRow { const NewWorkspaceRow = GObject.registerClass(
static { class NewWorkspaceRow extends Gtk.ListBoxRow {
GObject.registerClass(this); _init() {
} super._init({
constructor() {
super({
action_name: 'workspaces.add', action_name: 'workspaces.add',
child: new Gtk.Image({ child: new Gtk.Image({
icon_name: 'list-add-symbolic', icon_name: 'list-add-symbolic',
@@ -256,10 +208,12 @@ class NewWorkspaceRow extends Adw.PreferencesRow {
this.update_property( this.update_property(
[Gtk.AccessibleProperty.LABEL], [_('Add Workspace')]); [Gtk.AccessibleProperty.LABEL], [_('Add Workspace')]);
} }
});
function init() {
ExtensionUtils.initTranslations();
} }
export default class WorkspaceIndicatorPrefs extends ExtensionPreferences { function buildPrefsWidget() {
getPreferencesWidget() { return new WorkspaceSettingsWidget();
return new WorkspaceSettingsWidget();
}
} }

View File

@@ -1,11 +1,8 @@
--- ---
# SPDX-License-Identifier: MIT OR LGPL-2.0-or-later # SPDX-License-Identifier: MIT OR LGPL-2.0-or-later
# SPDX-FileCopyrightText: 2018 Claudio André <claudioandre.br@gmail.com>
env: env:
es2021: true es6: true
extends: 'eslint:recommended' extends: 'eslint:recommended'
plugins:
- jsdoc
rules: rules:
array-bracket-newline: array-bracket-newline:
- error - error
@@ -63,20 +60,6 @@ rules:
- 'CallExpression[callee.object.name=GObject][callee.property.name=registerClass] > ClassExpression:first-child' - 'CallExpression[callee.object.name=GObject][callee.property.name=registerClass] > ClassExpression:first-child'
# Allow dedenting chained member expressions # Allow dedenting chained member expressions
MemberExpression: 'off' MemberExpression: 'off'
jsdoc/check-alignment: error
jsdoc/check-param-names: error
jsdoc/check-tag-names: error
jsdoc/check-types: error
jsdoc/implements-on-classes: error
jsdoc/tag-lines:
- error
- any
- startLines: 1
jsdoc/require-jsdoc: error
jsdoc/require-param: error
jsdoc/require-param-description: error
jsdoc/require-param-name: error
jsdoc/require-param-type: error
key-spacing: key-spacing:
- error - error
- beforeColon: false - beforeColon: false
@@ -88,10 +71,7 @@ rules:
linebreak-style: linebreak-style:
- error - error
- unix - unix
lines-between-class-members: lines-between-class-members: error
- error
- always
- exceptAfterSingleLine: true
max-nested-callbacks: error max-nested-callbacks: error
max-statements-per-line: error max-statements-per-line: error
new-parens: error new-parens: error
@@ -127,15 +107,8 @@ rules:
no-octal-escape: error no-octal-escape: error
no-proto: error no-proto: error
no-prototype-builtins: 'off' no-prototype-builtins: 'off'
no-restricted-globals: [error, window]
no-restricted-properties: no-restricted-properties:
- error - error
- object: imports
property: format
message: Use template strings
- object: pkg
property: initFormat
message: Use template strings
- object: Lang - object: Lang
property: copyProperties property: copyProperties
message: Use Object.assign() message: Use Object.assign()
@@ -194,7 +167,6 @@ rules:
object-curly-newline: object-curly-newline:
- error - error
- consistent: true - consistent: true
multiline: true
object-curly-spacing: error object-curly-spacing: error
object-shorthand: error object-shorthand: error
operator-assignment: error operator-assignment: error
@@ -242,14 +214,14 @@ rules:
template-curly-spacing: error template-curly-spacing: error
template-tag-spacing: error template-tag-spacing: error
unicode-bom: error unicode-bom: error
valid-jsdoc:
- error
- requireReturn: false
wrap-iife: wrap-iife:
- error - error
- inside - inside
yield-star-spacing: error yield-star-spacing: error
yoda: error yoda: error
settings:
jsdoc:
mode: typescript
globals: globals:
ARGV: readonly ARGV: readonly
Debugger: readonly Debugger: readonly
@@ -261,13 +233,5 @@ globals:
logError: readonly logError: readonly
print: readonly print: readonly
printerr: readonly printerr: readonly
window: readonly
TextEncoder: readonly
TextDecoder: readonly
console: readonly
setTimeout: readonly
setInterval: readonly
clearTimeout: readonly
clearInterval: readonly
parserOptions: parserOptions:
ecmaVersion: 2022 ecmaVersion: 2020

View File

@@ -3,12 +3,9 @@ rules:
- error - error
- properties: never - properties: never
allow: [^vfunc_, ^on_] allow: [^vfunc_, ^on_]
consistent-return: error object-curly-spacing:
eqeqeq:
- error - error
- smart - always
prefer-arrow-callback: error prefer-arrow-callback: error
globals: globals:
global: readonly global: readonly
parserOptions:
sourceType: module

View File

@@ -1,6 +1,6 @@
project('gnome-shell-extensions', project('gnome-shell-extensions',
version: '45.beta', version: '40.4',
meson_version: '>= 0.58.0', meson_version: '>= 0.44.0',
license: 'GPL2+' license: 'GPL2+'
) )
@@ -15,11 +15,11 @@ datadir = get_option('datadir')
shelldir = join_paths(datadir, 'gnome-shell') shelldir = join_paths(datadir, 'gnome-shell')
extensiondir = join_paths(shelldir, 'extensions') extensiondir = join_paths(shelldir, 'extensions')
modedir = join_paths(shelldir, 'modes') modedir = join_paths(shelldir, 'modes')
themedir = join_paths(shelldir, 'theme')
schemadir = join_paths(datadir, 'glib-2.0', 'schemas') schemadir = join_paths(datadir, 'glib-2.0', 'schemas')
sessiondir = join_paths(datadir, 'gnome-session', 'sessions') sessiondir = join_paths(datadir, 'gnome-session', 'sessions')
xsessiondir = join_paths(datadir, 'xsessions') xsessiondir = join_paths(datadir, 'xsessions')
wlsessiondir = join_paths(datadir, 'wayland-sessions')
ver_arr = meson.project_version().split('.') ver_arr = meson.project_version().split('.')
shell_version = ver_arr[0] shell_version = ver_arr[0]
@@ -36,7 +36,6 @@ classic_extensions = [
default_extensions = classic_extensions default_extensions = classic_extensions
default_extensions += [ default_extensions += [
'drive-menu', 'drive-menu',
'light-style',
'screenshot-window-sizer', 'screenshot-window-sizer',
'windowsNavigator', 'windowsNavigator',
'workspace-indicator' 'workspace-indicator'
@@ -84,32 +83,9 @@ endforeach
if classic_mode_enabled if classic_mode_enabled
subdir('data') subdir('data')
meson.add_install_script(
'meson/session-post-install.py',
join_paths(get_option('prefix'), datadir)
)
endif endif
subdir('extensions') subdir('extensions')
subdir('po') subdir('po')
gnome.post_install( meson.add_dist_script('meson/generate-stylesheets.py')
glib_compile_schemas: true,
)
meson.add_dist_script('meson/check-version.py',
meson.project_version(),
'NEWS')
summary_options = {
'extensions': enabled_extensions,
'classic_mode': get_option('classic_mode'),
}
summary_dirs = {
'prefix': get_option('prefix'),
'datadir': get_option('datadir'),
}
summary(summary_dirs, section: 'Directories')
summary(summary_options, section: 'Build Options')

View File

@@ -1,32 +0,0 @@
#!/usr/bin/env python3
import os, sys
from pathlib import Path
import argparse, subprocess
def check_version(version, file, type='news'):
if type == 'news':
line = file.open().readline()
ok = line.startswith(version)
print("{}: {}".format(file, "OK" if ok else "FAILED"))
if not ok:
raise Exception("{} does not start with {}".format(file, version))
elif type == 'metainfo':
subprocess.run(['appstream-util', 'validate-version', file, version],
check=True)
else:
raise Exception('Not implemented')
parser = argparse.ArgumentParser(description='Check release version information.')
parser.add_argument('--type', choices=['metainfo','news'], default='news')
parser.add_argument('version', help='the version to check for')
parser.add_argument('files', nargs='+', help='files to check')
args = parser.parse_args()
distroot = os.environ.get('MESON_DIST_ROOT', './')
try:
for file in args.files:
check_version(args.version, Path(distroot, file), args.type)
except:
sys.exit(1)

View File

@@ -0,0 +1,13 @@
#!/usr/bin/env python3
import os
from pathlib import PurePath
import subprocess
sourceroot = os.environ.get('MESON_SOURCE_ROOT')
distroot = os.environ.get('MESON_DIST_ROOT')
stylesheet_path = PurePath('data/gnome-classic.css')
src = PurePath(sourceroot, stylesheet_path.with_suffix('.scss'))
dst = PurePath(distroot, stylesheet_path)
subprocess.call(['sassc', '-a', src, dst])

View File

@@ -1,20 +0,0 @@
#!/usr/bin/env python3
import os
import shutil
import sys
if os.environ.get('DESTDIR'):
install_root = os.environ.get('DESTDIR') + os.path.abspath(sys.argv[1])
else:
install_root = sys.argv[1]
# FIXME: Meson is unable to copy a generated target file:
# https://groups.google.com/forum/#!topic/mesonbuild/3iIoYPrN4P0
dst_dir = os.path.join(install_root, 'wayland-sessions')
if not os.path.exists(dst_dir):
os.makedirs(dst_dir)
src = os.path.join(install_root, 'xsessions', 'gnome-classic.desktop')
dst = os.path.join(dst_dir, 'gnome-classic.desktop')
shutil.copyfile(src, dst)

View File

@@ -1,4 +1,3 @@
ab
af af
an an
ar ar
@@ -33,7 +32,6 @@ id
is is
it it
ja ja
ka
kab kab
kk kk
km km

View File

@@ -1,6 +1,4 @@
data/gnome-classic.desktop.in data/gnome-classic.desktop.in
data/gnome-classic-wayland.desktop.in
data/gnome-classic-xorg.desktop.in
extensions/apps-menu/extension.js extensions/apps-menu/extension.js
extensions/auto-move-windows/extension.js extensions/auto-move-windows/extension.js
extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml

268
po/ab.po
View File

@@ -1,268 +0,0 @@
# Abkhazian translation for gnome-shell-extensions.
# Copyright (C) 2022 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Нанба Наала <naala-nanba@rambler.ru>, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions main\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues\n"
"POT-Creation-Date: 2022-07-10 12:54+0000\n"
"PO-Revision-Date: 2022-02-12 02:08+0000\n"
"Last-Translator: Нанба Наала <naala-nanba@rambler.ru>, 2022\n"
"Language-Team: Abkhazian <ab@li.org>\n"
"Language: ab\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: data/gnome-classic.desktop.in:3
msgid "GNOME Classic"
msgstr "Аклассикатә GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic"
msgstr "Ари асеанс аклассикатә усуратә еишәа GNOME хархәагас иамоуп "
#: data/gnome-classic-wayland.desktop.in:3
msgid "GNOME Classic on Wayland"
msgstr "Аклассикатә GNOME Wayland аҟны"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Аклассикатә GNOME Xorg аҟны"
#: extensions/apps-menu/extension.js:118
msgid "Favorites"
msgstr "Иалкаау"
#: extensions/apps-menu/extension.js:379
msgid "Applications"
msgstr "Аԥшьқәа"
#: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:6
msgid "Application and workspace list"
msgstr "Аԥшьи аусуратә ҵакырақәа рыхьӡынҵеи"
#: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:7
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
msgstr ""
"Ацәаҳәақәа рыхьӡынҵа аиԥшрагәаҭага аԥшьы (desktop-фаил ахьӡ )змоу, зашьҭахь "
"ҩ-кәаԥки аусуратә ҭыԥ аномери гылоу "
#: extensions/auto-move-windows/prefs.js:152
msgid "Workspace Rules"
msgstr "Аусуратә ҵакыра аԥҟаррақәа"
#: extensions/auto-move-windows/prefs.js:306
msgid "Add Rule"
msgstr "Аԥҟара ацҵара"
#. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:126
#: extensions/places-menu/placeDisplay.js:210
#, javascript-format
msgid "Ejecting drive “%s” failed:"
msgstr "Адиск «%s» аҭыгара залымшахеит:"
#: extensions/drive-menu/extension.js:145
msgid "Removable devices"
msgstr "Иаҿыҵуа аиҿартәырақәа"
#: extensions/drive-menu/extension.js:167
msgid "Open Files"
msgstr "Афаил аартра"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
msgid "Use more screen for windows"
msgstr "Изыцҵоу аекран аҵакыра аԥенџьырқәа рзы ахархәара"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6
msgid ""
"Try to use more screen for placing window thumbnails by adapting to screen "
"aspect ratio, and consolidating them further to reduce the bounding box. "
"This setting applies only with the natural placement strategy."
msgstr ""
"Шәхы иашәырхәа изыцҵоу аекран аҵакыра аминиатиура атыԥаркразыаекран аганқәа "
"реизышәара ԥсахуа аҭыԥыркра шәыржәпала, анаҩс адаԥа ҳәаақәызҵо ашәагаа "
"архәыҷразыари ахышәара ахархәара аиуоит аминиатиура «natural» аҭыԥыркра "
"алгоритм ахархәараан"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
msgid "Place window captions on top"
msgstr " Аԥенџьырқәа рыхқәа хыхь рҭыԥыркра"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12
msgid ""
"If true, place window captions on top the respective thumbnail, overriding "
"shell default of placing it at the bottom. Changing this setting requires "
"restarting the shell to have any effect."
msgstr ""
"Иалхзар, ахқәа аминиатиура хыхьтәи ахәҭаҟны аҭыԥ ааныркылалоит(ишыҟоу еиԥш "
"ахқәа ҵаҟатәи аҭыԥ ааныркылоит).Ари ахышәара аԥсахраан,уи аус аура "
"иалагарцазы, иаҭахуп Shell аиҭарура."
#: extensions/places-menu/extension.js:94
#: extensions/places-menu/extension.js:97
msgid "Places"
msgstr "Аҭыԥқәа"
#: extensions/places-menu/placeDisplay.js:49
#, javascript-format
msgid "Failed to launch “%s”"
msgstr " «%s» аус арура залшом"
#: extensions/places-menu/placeDisplay.js:64
#, javascript-format
msgid "Failed to mount volume for “%s”"
msgstr "Иамоуӡит атом аибыҭара «%s» азы"
#: extensions/places-menu/placeDisplay.js:125
#: extensions/places-menu/placeDisplay.js:148
msgid "Computer"
msgstr "Акомпиутер"
#: extensions/places-menu/placeDisplay.js:336
msgid "Home"
msgstr "Аҩнытәи аҭаӡ"
#: extensions/places-menu/placeDisplay.js:381
msgid "Browse Network"
msgstr "Аҳа алаԥшхагара"
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:7
msgid "Cycle Screenshot Sizes"
msgstr "Аекран аҭыхымҭа ашәагаақәа рыԥсахра"
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11
msgid "Cycle Screenshot Sizes Backward"
msgstr "Аекран аҭыхымҭа ашәагаақәа шьҭахьҟатәи ахырхарҭала рыԥсахра"
#: extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml:5
msgid "Theme name"
msgstr "Атема ахьӡ"
#: extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml:6
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "~/.themes/name/gnome-shell аҟынтә иҭагалоу атема ахьӡ "
#: extensions/window-list/extension.js:72
msgid "Close"
msgstr "Аркра"
#: extensions/window-list/extension.js:92
msgid "Unminimize"
msgstr "Архынҳәра"
#: extensions/window-list/extension.js:92
msgid "Minimize"
msgstr "Аиҟәырҳәра"
#: extensions/window-list/extension.js:99
msgid "Unmaximize"
msgstr "Аиҭашьақәыргылара"
#: extensions/window-list/extension.js:99
msgid "Maximize"
msgstr "Аиҵыхра"
#: extensions/window-list/extension.js:483
msgid "Minimize all"
msgstr "Зегьы реиҟәырҳәра"
#: extensions/window-list/extension.js:489
msgid "Unminimize all"
msgstr "Зегьы рырхынҳәра"
#: extensions/window-list/extension.js:495
msgid "Maximize all"
msgstr "Зегьы реиҵыхра"
#: extensions/window-list/extension.js:503
msgid "Unmaximize all"
msgstr "Зегьы реиҭашьақәыргылара"
#: extensions/window-list/extension.js:511
msgid "Close all"
msgstr "Зегьы рыркра"
#: extensions/window-list/extension.js:795
msgid "Window List"
msgstr "Аԥенџьырқәа рыхьӡынҵа"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:12
msgid "When to group windows"
msgstr "Аԥенџьырқәа аидыргәыԥлара анаҭаху"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
msgid ""
"Decides when to group windows from the same application on the window list. "
"Possible values are “never”, “auto” and “always”."
msgstr ""
"Иҳәаақәнаҵоит, ианаҭаху ԥшьык иаҵанакуа аԥенџьырқәа реидыргәыԥлара, "
"аԥенџьырқәа рыхьӡынҵаҟны Иҟалар зылшо аҵакқәа : «never» — ахаан; «auto» — "
"автоматла; «always» — есқьынгьы"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:79
msgid "Show windows from all workspaces"
msgstr "Аҵакырақәа зегьы рҟынтә аԥенџьырқәа раарԥшра"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "Whether to show windows from all workspaces or only the current one."
msgstr ""
"Аԥенџьырқәа рыхьӡынҵа аусуратә ҵакырақәа зегь рҟынтә акәу,мамзар уажәтәи "
"аҟынтә акәу ишаарԥшлатәу"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:27
msgid "Show the window list on all monitors"
msgstr "Аԥенџьырқәа рыхьӡынҵа амониторқәа зегьы рҟны рырбара"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28
msgid ""
"Whether to show the window list on all connected monitors or only on the "
"primary one."
msgstr ""
"Аԥенџьырқәа рыхьӡынҵа иаҿаку амониторқәа зегьы рыҟноума иахьаарԥшлатәу , "
"мамзар ихадоу аҟны акәу."
#: extensions/window-list/prefs.js:35
msgid "Window Grouping"
msgstr "Аԥенџьырқәа реидыргәыԥлара"
#: extensions/window-list/prefs.js:40
msgid "Never group windows"
msgstr "Ахаангьы аԥенџьырқәа реидмыргәыԥлара"
#: extensions/window-list/prefs.js:41
msgid "Group windows when space is limited"
msgstr "Аҭыԥ маҷхазар, аԥенџьырқәа еидшәыргәыԥла"
#: extensions/window-list/prefs.js:42
msgid "Always group windows"
msgstr "Еснагь аԥенџьырқәа реидыргәыԥлара"
#: extensions/window-list/prefs.js:66
msgid "Show on all monitors"
msgstr "Амониторқәа зегьы рҟны рырбара"
#: extensions/window-list/workspaceIndicator.js:261
#: extensions/workspace-indicator/extension.js:266
msgid "Workspace Indicator"
msgstr "Аусуратә ҵакыра аиндикатор"
#: extensions/workspace-indicator/prefs.js:62
#, javascript-format
msgid "Workspace %d"
msgstr "Аусуратә ҵакыра %d"
#: extensions/workspace-indicator/prefs.js:129
msgid "Workspace Names"
msgstr "Аусуратә ҵакырақәа рыхьӡқәа"
#: extensions/workspace-indicator/prefs.js:255
msgid "Add Workspace"
msgstr "Аусуратә ҵакыра ацҵара"

101
po/be.po
View File

@@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2022-07-10 12:54+0000\n" "POT-Creation-Date: 2021-01-20 23:03+0000\n"
"PO-Revision-Date: 2022-10-19 15:20+0300\n" "PO-Revision-Date: 2021-01-24 15:33+0300\n"
"Last-Translator: Launchpad translators\n" "Last-Translator: Launchpad translators\n"
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n" "Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
"Language: be\n" "Language: be\n"
@@ -18,30 +18,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 2.4.2\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Класічны GNOME" msgstr "Класічны GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Гэты сеанс выкарыстоўвае класічны GNOME" msgstr "Гэты сеанс выкарыстоўвае класічны GNOME"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "Класічны GNOME на Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Класічны GNOME на Xorg"
#: extensions/apps-menu/extension.js:118
msgid "Favorites" msgid "Favorites"
msgstr "Абраныя" msgstr "Абраныя"
#: extensions/apps-menu/extension.js:379 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Праграмы" msgstr "Праграмы"
@@ -57,41 +48,43 @@ msgstr ""
"Спіс радкоў, кожны з якіх змяшчае ідэнтыфікатар праграмы (імя файла *." "Спіс радкоў, кожны з якіх змяшчае ідэнтыфікатар праграмы (імя файла *."
"desktop), затым двукроп'е і нумар працоўнай прасторы" "desktop), затым двукроп'е і нумар працоўнай прасторы"
#: extensions/auto-move-windows/prefs.js:152 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Правілы для працоўнай прасторы" msgstr "Правілы для працоўнай прасторы"
#: extensions/auto-move-windows/prefs.js:306 #: extensions/auto-move-windows/prefs.js:237
msgid "Add Rule" msgid "Add Rule"
msgstr "Дадаць правіла" msgstr "Дадаць правіла"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:126 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:210 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Не ўдалося выняць дыск «%s»:" msgstr "Не ўдалося выняць дыск «%s»:"
#: extensions/drive-menu/extension.js:145 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Здымныя прылады" msgstr "Здымныя прылады"
#: extensions/drive-menu/extension.js:167 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Адкрыць файлы" msgstr "Адкрыць файлы"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
#, fuzzy
msgid "Use more screen for windows" msgid "Use more screen for windows"
msgstr "Выкарыстоўваць большую плошчу экрана для вокнаў" msgstr "Выкарыстоўваць большую плошчу экрана для вокнаў"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6
#, fuzzy
msgid "" msgid ""
"Try to use more screen for placing window thumbnails by adapting to screen " "Try to use more screen for placing window thumbnails by adapting to screen "
"aspect ratio, and consolidating them further to reduce the bounding box. " "aspect ratio, and consolidating them further to reduce the bounding box. "
"This setting applies only with the natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"Спрабаваць выкарыстаць большую плошчу экрана для размяшчэння мініяцюр праз " "Спрабаваць выкарыстаць большую плошчу экрана для размяшчэння мініяцюр праз "
"змяненне суадносін бакоў экрана, ўшчыльняючы іх, каб зменшыць памеры " "змяненне суадносінаў бакоў экрана, ўшчыльняючы іх, каб зменшыць памеры "
"абмежавальнай рамкі. Гэты параметр ужываецца толькі з натуральным " "абмежавальнай рамкі. Гэты параметр ужываецца толькі з натуральным "
"размяшчэннем мініяцюр." "размяшчэннем мініяцюр."
@@ -109,31 +102,31 @@ msgstr ""
"перадвызначана). Каб змена налады ўступіла ў сілу, трэба перазапусціць " "перадвызначана). Каб змена налады ўступіла ў сілу, трэба перазапусціць "
"абалонку." "абалонку."
#: extensions/places-menu/extension.js:94 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:97 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Месцы" msgstr "Месцы"
#: extensions/places-menu/placeDisplay.js:49 #: extensions/places-menu/placeDisplay.js:46
#, javascript-format #, javascript-format
msgid "Failed to launch “%s”" msgid "Failed to launch “%s”"
msgstr "Не ўдалося запусціць «%s»" msgstr "Не ўдалося запусціць «%s»"
#: extensions/places-menu/placeDisplay.js:64 #: extensions/places-menu/placeDisplay.js:61
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "Не ўдалося прымацаваць том для «%s»." msgstr "Не ўдалося прымацаваць том для «%s»."
#: extensions/places-menu/placeDisplay.js:125
#: extensions/places-menu/placeDisplay.js:148 #: extensions/places-menu/placeDisplay.js:148
#: extensions/places-menu/placeDisplay.js:171
msgid "Computer" msgid "Computer"
msgstr "Камп'ютар" msgstr "Камп'ютар"
#: extensions/places-menu/placeDisplay.js:336 #: extensions/places-menu/placeDisplay.js:359
msgid "Home" msgid "Home"
msgstr "Хатняя папка" msgstr "Хатняя папка"
#: extensions/places-menu/placeDisplay.js:381 #: extensions/places-menu/placeDisplay.js:404
msgid "Browse Network" msgid "Browse Network"
msgstr "Агляд сеткі" msgstr "Агляд сеткі"
@@ -153,47 +146,47 @@ msgstr "Назва тэмы"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Назва тэмы, што загрузіцца з ~/.themes/name/gnome-shell" msgstr "Назва тэмы, што загрузіцца з ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Закрыць" msgstr "Закрыць"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Скасаваць згортванне" msgstr "Скасаваць згортванне"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Згарнуць" msgstr "Згарнуць"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Скасаваць разгортванне" msgstr "Скасаваць разгортванне"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Разгарнуць" msgstr "Разгарнуць"
#: extensions/window-list/extension.js:483 #: extensions/window-list/extension.js:432
msgid "Minimize all" msgid "Minimize all"
msgstr "Згарнуць усе" msgstr "Згарнуць усе"
#: extensions/window-list/extension.js:489 #: extensions/window-list/extension.js:438
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Скасаваць згортванне для ўсіх" msgstr "Скасаваць згортванне для ўсіх"
#: extensions/window-list/extension.js:495 #: extensions/window-list/extension.js:444
msgid "Maximize all" msgid "Maximize all"
msgstr "Разгарнуць усе" msgstr "Разгарнуць усе"
#: extensions/window-list/extension.js:503 #: extensions/window-list/extension.js:452
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Скасаваць разгортванне для ўсіх" msgstr "Скасаваць разгортванне для ўсіх"
#: extensions/window-list/extension.js:511 #: extensions/window-list/extension.js:460
msgid "Close all" msgid "Close all"
msgstr "Закрыць усе" msgstr "Закрыць усе"
#: extensions/window-list/extension.js:795 #: extensions/window-list/extension.js:737
msgid "Window List" msgid "Window List"
msgstr "Спіс вокнаў" msgstr "Спіс вокнаў"
@@ -210,7 +203,7 @@ msgstr ""
"значэнні: «never» (ніколі), «auto» (аўтаматычна), «always» (заўсёды)." "значэнні: «never» (ніколі), «auto» (аўтаматычна), «always» (заўсёды)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Паказваць вокны з усіх працоўных прастор" msgstr "Паказваць вокны з усіх працоўных прастор"
@@ -229,41 +222,41 @@ msgid ""
msgstr "" msgstr ""
"Паказваць спіс вокнаў на ўсіх падлучаных маніторах ці толькі на асноўным." "Паказваць спіс вокнаў на ўсіх падлучаных маніторах ці толькі на асноўным."
#: extensions/window-list/prefs.js:35 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Групаванне вокнаў" msgstr "Групаванне вокнаў"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Ніколі не групаваць вокны" msgstr "Ніколі не групаваць вокны"
#: extensions/window-list/prefs.js:41 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Групаваць вокны калі не хапае месца" msgstr "Групаваць вокны калі не хапае месца"
#: extensions/window-list/prefs.js:42 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Заўсёды групаваць вокны" msgstr "Заўсёды групаваць вокны"
#: extensions/window-list/prefs.js:66 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Паказваць на ўсіх маніторах" msgstr "Паказваць на ўсіх маніторах"
#: extensions/window-list/workspaceIndicator.js:261 #: extensions/window-list/workspaceIndicator.js:247
#: extensions/workspace-indicator/extension.js:266 #: extensions/workspace-indicator/extension.js:253
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Індыкатар працоўнай прасторы" msgstr "Індыкатар працоўнай прасторы"
#: extensions/workspace-indicator/prefs.js:62 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names"
msgstr "Назвы працоўных прастор"
#: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Працоўная прастора %d" msgstr "Працоўная прастора %d"
#: extensions/workspace-indicator/prefs.js:129 #: extensions/workspace-indicator/prefs.js:208
msgid "Workspace Names"
msgstr "Назвы працоўных прастор"
#: extensions/workspace-indicator/prefs.js:255
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Дадаць працоўную прастору" msgstr "Дадаць працоўную прастору"

243
po/bg.po
View File

@@ -1,18 +1,17 @@
# Bulgarian translation for gnome-shell-extensions po-file. # Bulgarian translation for gnome-shell-extensions po-file.
# Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc. # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
# Copyright (C) 2021, 2022 Alexander Shopov <ash@kambanaria.org>.
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Ivaylo Valkov <ivaylo@e-valkov.org>, 2014. # Ivaylo Valkov <ivaylo@e-valkov.org>, 2014.
# Alexander Shopov <ash@kambanaria.org>, 2014, 2015, 2021, 2022. # Alexander Shopov <ash@kambanaria.org>, 2014, 2015.
# Lyubomir Vasilev <lyubomirv@abv.bg>, 2017. # Lyubomir Vasilev <lyubomirv@abv.bg>, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"issues\n" "shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2022-02-12 20:25+0000\n" "POT-Creation-Date: 2017-09-09 15:20+0000\n"
"PO-Revision-Date: 2022-02-13 11:40+0100\n" "PO-Revision-Date: 2017-09-08 08:47+0300\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n" "Last-Translator: Lyubomir Vasilev <lyubomirv@abv.bg>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n" "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
"Language: bg\n" "Language: bg\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -20,28 +19,83 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Класически GNOME" msgstr "Класически GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Работната среда изглежда като класическия GNOME (2.x)" msgstr "Работната среда изглежда като класическия GNOME (2.x)"
#: data/gnome-classic-wayland.desktop.in:3 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:7
msgid "GNOME Classic on Wayland" msgid "Attach modal dialog to the parent window"
msgstr "Класически GNOME в Wayland" msgstr "Прикрепяне на модалните прозорци към родителските им прозорци"
#: data/gnome-classic-xorg.desktop.in:3 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:8
msgid "GNOME Classic on Xorg" #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:25
msgstr "Класически GNOME в Xorg" #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:33
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:41
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Този ключ при е с по-голям приоритет от „org.gnome.mutter“ при изпълнението "
"на обвивката на GNOME."
#: extensions/apps-menu/extension.js:112 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:16
msgid "Arrangement of buttons on the titlebar"
msgstr "Подредба на бутоните на заглавната лента"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:17
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Този ключ при е с по-голям приоритет от „org.gnome.desktop.wm.preferences“ "
"при изпълнението на обвивката на GNOME."
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:24
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Включване на специална подредба при приближаване на прозорец до ръбовете на "
"екрана"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:32
msgid "Workspaces only on primary monitor"
msgstr "Работни плотове само на основния екран"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:40
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Забавяне на смяната на фокуса до спирането на движението на показалеца"
#: extensions/alternate-tab/prefs.js:20
msgid "Thumbnail only"
msgstr "Само миниатюри"
#: extensions/alternate-tab/prefs.js:21
msgid "Application icon only"
msgstr "Само икони на приложенията"
#: extensions/alternate-tab/prefs.js:22
msgid "Thumbnail and application icon"
msgstr "Миниатюри и икони на приложенията"
#: extensions/alternate-tab/prefs.js:38
msgid "Present windows as"
msgstr "Показване на прозорците като"
#: extensions/alternate-tab/prefs.js:69
msgid "Show only windows in the current workspace"
msgstr "Да се показват само прозорците на текущия работен плот"
#: extensions/apps-menu/extension.js:41
msgid "Activities Overview"
msgstr "Показване на програмите"
#: extensions/apps-menu/extension.js:141
msgid "Favorites" msgid "Favorites"
msgstr "Любими" msgstr "Любими"
#: extensions/apps-menu/extension.js:370 #: extensions/apps-menu/extension.js:436
msgid "Applications" msgid "Applications"
msgstr "Програми" msgstr "Програми"
@@ -55,31 +109,74 @@ msgid ""
"followed by a colon and the workspace number" "followed by a colon and the workspace number"
msgstr "" msgstr ""
"Списък от низове. Всеки съдържа идентификатор на програма (име на файл „." "Списък от низове. Всеки съдържа идентификатор на програма (име на файл „."
"desktop“), следван от знака „:“ и номер на работен плот" "desktop“ file name), следван от знака „:“ и номер на работен плот"
#: extensions/auto-move-windows/prefs.js:19 #: extensions/auto-move-windows/prefs.js:60
msgid "Workspace Rules" msgid "Application"
msgstr "Правила за работните плотове" msgstr "Програма"
#: extensions/auto-move-windows/prefs.js:245 #: extensions/auto-move-windows/prefs.js:69
#: extensions/auto-move-windows/prefs.js:127
msgid "Workspace"
msgstr "Работен плот"
#: extensions/auto-move-windows/prefs.js:85
msgid "Add Rule" msgid "Add Rule"
msgstr "Добавяне на правило" msgstr "Добавяне на правило"
#: extensions/auto-move-windows/prefs.js:106
msgid "Create new matching rule"
msgstr "Създаване на правило за съвпадение"
#: extensions/auto-move-windows/prefs.js:111
msgid "Add"
msgstr "Добавяне"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:123 #: extensions/drive-menu/extension.js:107
#: extensions/places-menu/placeDisplay.js:210
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Неуспешно изваждане на устройство „%s“:" msgstr "Неуспешно изваждане на устройство „%s“:"
#: extensions/drive-menu/extension.js:139 #: extensions/drive-menu/extension.js:125
msgid "Removable devices" msgid "Removable devices"
msgstr "Преносими медии" msgstr "Преносими медии"
#: extensions/drive-menu/extension.js:161 #: extensions/drive-menu/extension.js:150
msgid "Open Files" msgid "Open Files"
msgstr "Отваряне на файлове" msgstr "Отваряне на файлове"
#: extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Здравей, свят!"
#: extensions/example/org.gnome.shell.extensions.example.gschema.xml:5
msgid "Alternative greeting text."
msgstr "Друго приветстващо съобщение."
#: extensions/example/org.gnome.shell.extensions.example.gschema.xml:6
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Ако ключът не е празен, съдържанието му се извежда при натискането на панела."
#: extensions/example/prefs.js:30
msgid "Message"
msgstr "Съобщение"
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: extensions/example/prefs.js:43
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless its possible to customize the greeting message."
msgstr ""
"Това е пример за добре работещо разширение на обвивката на GNOME и има "
"минимална функционалност.\n"
"С него можете да промените приветстващото съобщение на панела."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
msgid "Use more screen for windows" msgid "Use more screen for windows"
msgstr "Повече пространство за прозорците" msgstr "Повече пространство за прозорците"
@@ -109,31 +206,31 @@ msgstr ""
"им, а не както е стандартно — отдолу. За прилагане на промяната на " "им, а не както е стандартно — отдолу. За прилагане на промяната на "
"настройката трябва да рестартирате обвивката на GNOME." "настройката трябва да рестартирате обвивката на GNOME."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:78
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:81
msgid "Places" msgid "Places"
msgstr "Места" msgstr "Места"
#: extensions/places-menu/placeDisplay.js:49 #: extensions/places-menu/placeDisplay.js:65
#, javascript-format
msgid "Failed to launch “%s”"
msgstr "Неуспешно стартиране на „%s“"
#: extensions/places-menu/placeDisplay.js:64
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "Неуспешно монтиране на тома „%s“" msgstr "Неуспешно монтиране на тома „%s“"
#: extensions/places-menu/placeDisplay.js:125 #: extensions/places-menu/placeDisplay.js:78
#: extensions/places-menu/placeDisplay.js:148 #, javascript-format
msgid "Failed to launch “%s”"
msgstr "Неуспешно стартиране на „%s“"
#: extensions/places-menu/placeDisplay.js:137
#: extensions/places-menu/placeDisplay.js:160
msgid "Computer" msgid "Computer"
msgstr "Компютър" msgstr "Компютър"
#: extensions/places-menu/placeDisplay.js:336 #: extensions/places-menu/placeDisplay.js:303
msgid "Home" msgid "Home"
msgstr "Домашна папка" msgstr "Домашна папка"
#: extensions/places-menu/placeDisplay.js:381 #: extensions/places-menu/placeDisplay.js:347
msgid "Browse Network" msgid "Browse Network"
msgstr "Мрежа" msgstr "Мрежа"
@@ -154,78 +251,73 @@ msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "" msgstr ""
"Името на темата, която да бъде заредена от „~/.themes/name/gnome-shell“" "Името на темата, която да бъде заредена от „~/.themes/name/gnome-shell“"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:110
msgid "Close" msgid "Close"
msgstr "Затваряне" msgstr "Затваряне"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:129
msgid "Unminimize" msgid "Unminimize"
msgstr "Деминимизиране" msgstr "Деминимизиране"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:130
msgid "Minimize" msgid "Minimize"
msgstr "Минимизиране" msgstr "Минимизиране"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:136
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Демаксимизиране" msgstr "Демаксимизиране"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:137
msgid "Maximize" msgid "Maximize"
msgstr "Максимизиране" msgstr "Максимизиране"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:420
msgid "Minimize all" msgid "Minimize all"
msgstr "Минимизиране на всички" msgstr "Минимизиране на всички"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:428
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Деминимизиране на всички" msgstr "Деминимизиране на всички"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:436
msgid "Maximize all" msgid "Maximize all"
msgstr "Максимизиране на всички" msgstr "Максимизиране на всички"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:445
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Демаксимизиране на всички" msgstr "Демаксимизиране на всички"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:454
msgid "Close all" msgid "Close all"
msgstr "Затваряне на всички" msgstr "Затваряне на всички"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:678
#: extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Индикатор на работните плотове"
#: extensions/window-list/extension.js:842
msgid "Window List" msgid "Window List"
msgstr "Списък на прозорците" msgstr "Списък на прозорците"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:12 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:12
msgid "When to group windows" msgid "When to group windows"
msgstr "Кога прозорците да се групират" msgstr "Кога да се групират прозорците"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
msgid "" msgid ""
"Decides when to group windows from the same application on the window list. " "Decides when to group windows from the same application on the window list. "
"Possible values are “never”, “auto” and “always”." "Possible values are “never”, “auto” and “always”."
msgstr "" msgstr ""
"Кога прозорците на една програма да се групират в списъка с прозорците. " "Кога да се групират прозорците на една програма в списъка с прозорците. "
"Възможните стойности са „never“ (никога), „auto“ (автоматично) и " "Възможните стойности са „never“ (никога), „auto“ (автоматично) и "
"„always“ (винаги)." "„always“ (винаги)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:76
msgid "Show windows from all workspaces"
msgstr "Да се показват прозорците от всички работни плотове"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "Whether to show windows from all workspaces or only the current one."
msgstr ""
"Дали да се показват прозорците от всички работни плотове или само от текущия."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:27
msgid "Show the window list on all monitors" msgid "Show the window list on all monitors"
msgstr "Извеждане на списъка с прозорци на всички монитори" msgstr "Извеждане на списъка с прозорци на всички монитори"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "" msgid ""
"Whether to show the window list on all connected monitors or only on the " "Whether to show the window list on all connected monitors or only on the "
"primary one." "primary one."
@@ -237,36 +329,31 @@ msgstr ""
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Групиране на прозорци" msgstr "Групиране на прозорци"
#: extensions/window-list/prefs.js:37 #: extensions/window-list/prefs.js:50
msgid "Never group windows" msgid "Never group windows"
msgstr "Никога да не се групират" msgstr "Никога да не се групират"
#: extensions/window-list/prefs.js:38 #: extensions/window-list/prefs.js:51
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Групиране при ограничено място" msgstr "Групиране при ограничено място"
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:52
msgid "Always group windows" msgid "Always group windows"
msgstr "Винаги да се групират" msgstr "Винаги да се групират"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:75
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "На всички монитори" msgstr "На всички монитори"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/workspace-indicator/prefs.js:141
#: extensions/workspace-indicator/extension.js:254
msgid "Workspace Indicator"
msgstr "Индикатор на работните плотове"
#: extensions/workspace-indicator/prefs.js:18
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Имена на работните плотове" msgstr "Имена на работните плотове"
#: extensions/workspace-indicator/prefs.js:39 #: extensions/workspace-indicator/prefs.js:157
msgid "Name"
msgstr "Име"
#: extensions/workspace-indicator/prefs.js:198
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Работен плот %d" msgstr "Работен плот %d"
#: extensions/workspace-indicator/prefs.js:184
msgid "Add Workspace"
msgstr "Добавяне на работен плот"

View File

@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2017-07-08 13:29+0100\n" "PO-Revision-Date: 2017-07-08 13:29+0100\n"
"Last-Translator: Jordi Mas <jmas@softcatala.org>\n" "Last-Translator: Jordi Mas <jmas@softcatala.org>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n" "Language-Team: Catalan <tradgnome@softcatala.org>\n"
@@ -19,28 +19,19 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME clàssic" msgstr "GNOME clàssic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Aquesta sessió us permet utilitzar el GNOME clàssic" msgstr "Aquesta sessió us permet utilitzar el GNOME clàssic"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME clàssic amb Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME clàssic amb Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Preferides" msgstr "Preferides"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplicacions" msgstr "Aplicacions"
@@ -57,26 +48,26 @@ msgstr ""
"d'aplicació (nom del fitxer de l'escriptori), seguit de dos punts i el " "d'aplicació (nom del fitxer de l'escriptori), seguit de dos punts i el "
"número de l'espai de treball" "número de l'espai de treball"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Regles dels espais de treball" msgstr "Regles dels espais de treball"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Afegeix una regla" msgstr "Afegeix una regla"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Ha fallat l'expulsió de la unitat «%s»:" msgstr "Ha fallat l'expulsió de la unitat «%s»:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Dispositius extraïbles" msgstr "Dispositius extraïbles"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Obre els fitxers" msgstr "Obre els fitxers"
@@ -90,10 +81,10 @@ msgid ""
"aspect ratio, and consolidating them further to reduce the bounding box. " "aspect ratio, and consolidating them further to reduce the bounding box. "
"This setting applies only with the natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"Intenta utilitzar més espai de la pantalla per a posicionar les miniatures " "Intenta utilitzar més espai de la pantalla per a posicionar les miniatures de "
"de les finestres adaptant-les a la ràtio d'aspecte de la pantalla, " "les finestres adaptant-les a la ràtio d'aspecte de la pantalla, consolidant-"
"consolidant-les més per a reduir la caixa que les envolta. Aquest paràmetre " "les més per a reduir la caixa que les envolta. Aquest paràmetre de "
"de configuració només s'aplica a l'estratègia de posicionament de finestres " "configuració només s'aplica a l'estratègia de posicionament de finestres "
"natural." "natural."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
@@ -111,8 +102,8 @@ msgstr ""
"posicionar-lo a baix. Cal reiniciar el Shell per tal que aquest canvi tingui " "posicionar-lo a baix. Cal reiniciar el Shell per tal que aquest canvi tingui "
"efecte." "efecte."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Llocs" msgstr "Llocs"
@@ -155,47 +146,47 @@ msgstr "Nom del tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "El nom del tema que es carregarà des de ~/.themes/name/gnome-shell" msgstr "El nom del tema que es carregarà des de ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Tanca" msgstr "Tanca"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Desminimitza" msgstr "Desminimitza"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimitza" msgstr "Minimitza"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Desmaximitza" msgstr "Desmaximitza"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximitza" msgstr "Maximitza"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimitza-ho tot" msgstr "Minimitza-ho tot"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Desminimitza-ho tot" msgstr "Desminimitza-ho tot"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximitza-ho tot" msgstr "Maximitza-ho tot"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Desmaximitza-ho tot" msgstr "Desmaximitza-ho tot"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Tanca-ho tot" msgstr "Tanca-ho tot"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Llista de finestres" msgstr "Llista de finestres"
@@ -213,7 +204,7 @@ msgstr ""
"«auto» (automàticament) i «always» (sempre)." "«auto» (automàticament) i «always» (sempre)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Mostra les finestres de tots els espais de treball" msgstr "Mostra les finestres de tots els espais de treball"
@@ -235,40 +226,41 @@ msgstr ""
"Si es mostra la llista de finestres en tots els monitors connectats o només " "Si es mostra la llista de finestres en tots els monitors connectats o només "
"al primari." "al primari."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Agrupació de finestres" msgstr "Agrupació de finestres"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Mai agrupis les finestres" msgstr "Mai agrupis les finestres"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Agrupa les finestres quan l'espai estigui limitat" msgstr "Agrupa les finestres quan l'espai estigui limitat"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Agrupa les finestres sempre" msgstr "Agrupa les finestres sempre"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Mostra a tots els monitors" msgstr "Mostra a tots els monitors"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicador de l'espai de treball" msgstr "Indicador de l'espai de treball"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Noms dels espais de treball" msgstr "Noms dels espais de treball"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Espai de treball %d" msgstr "Espai de treball %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Afegeix un espai de treball" msgstr "Afegeix un espai de treball"

View File

@@ -2,15 +2,15 @@
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER # Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Petr Kovar <pknbe@volny.cz>, 2013. # Petr Kovar <pknbe@volny.cz>, 2013.
# Marek Černocký <marek@manet.cz>, 2011, 2012, 2013, 2014, 2015, 2017, 2019, 2020, 2022. # Marek Černocký <marek@manet.cz>, 2011, 2012, 2013, 2014, 2015, 2017, 2019, 2020.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-02-16 09:58+0100\n" "PO-Revision-Date: 2020-08-28 22:18+0200\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n" "Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n" "Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n" "Language: cs\n"
@@ -20,28 +20,19 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Gtranslator 2.91.6\n" "X-Generator: Gtranslator 2.91.6\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME klasik" msgstr "GNOME klasik"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Toto sezení vás přihlásí do GNOME klasik" msgstr "Toto sezení vás přihlásí do GNOME klasik"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME klasik na Waylandu"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME klasik na Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Oblíbené" msgstr "Oblíbené"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplikace" msgstr "Aplikace"
@@ -57,26 +48,26 @@ msgstr ""
"Seznam řetězců, z nichž každý obsahuje ID aplikace (název souboru pracovní " "Seznam řetězců, z nichž každý obsahuje ID aplikace (název souboru pracovní "
"plochy), následovaný dvojtečkou a číslem pracovní plochy" "plochy), následovaný dvojtečkou a číslem pracovní plochy"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Pravidla pracovních ploch" msgstr "Pravidla pracovních ploch"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Přidat pravidlo" msgstr "Přidat pravidlo"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Vysunutí disku „%s“ selhalo:" msgstr "Vysunutí disku „%s“ selhalo:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Výměnná zařízení" msgstr "Výměnná zařízení"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Otevřít soubory" msgstr "Otevřít soubory"
@@ -108,8 +99,8 @@ msgstr ""
"přepíše výchozí chování shellu, který jej umisťuje dolů. Změna tohoto " "přepíše výchozí chování shellu, který jej umisťuje dolů. Změna tohoto "
"nastavení vyžaduje restart shellu, aby se projevila." "nastavení vyžaduje restart shellu, aby se projevila."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Místa" msgstr "Místa"
@@ -152,47 +143,47 @@ msgstr "Název motivu"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Název motivu, který se má načíst z ~/.themes/name/gnome-shell" msgstr "Název motivu, který se má načíst z ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Zavřít" msgstr "Zavřít"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Zrušit minimalizaci" msgstr "Zrušit minimalizaci"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimalizovat" msgstr "Minimalizovat"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Zrušit maximalizaci" msgstr "Zrušit maximalizaci"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximalizovat" msgstr "Maximalizovat"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimalizovat všechna" msgstr "Minimalizovat všechna"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Zrušit minimalizaci všech" msgstr "Zrušit minimalizaci všech"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximalizovat všechna" msgstr "Maximalizovat všechna"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Zrušit maximalizaci všech" msgstr "Zrušit maximalizaci všech"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Zavřít všechna" msgstr "Zavřít všechna"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Seznam oken" msgstr "Seznam oken"
@@ -209,7 +200,7 @@ msgstr ""
"hodnoty jsou „never“ (nikdy), „auto“ (automaticky) a „always“ (vždy)." "hodnoty jsou „never“ (nikdy), „auto“ (automaticky) a „always“ (vždy)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Zobrazovat okna ze všech pracovních ploch" msgstr "Zobrazovat okna ze všech pracovních ploch"
@@ -229,40 +220,40 @@ msgstr ""
"Zda zobrazovat seznam oken na všech připojených monitorech nebo jen na " "Zda zobrazovat seznam oken na všech připojených monitorech nebo jen na "
"hlavním." "hlavním."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Seskupování oken" msgstr "Seskupování oken"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Nikdy neseskupovat okna" msgstr "Nikdy neseskupovat okna"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Seskupovat okna při nedostatku místa" msgstr "Seskupovat okna při nedostatku místa"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Vždy seskupovat okna" msgstr "Vždy seskupovat okna"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Zobrazovat na všech monitorech" msgstr "Zobrazovat na všech monitorech"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Ukazatel pracovní plochy" msgstr "Ukazatel pracovní plochy"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Názvy pracovních ploch" msgstr "Názvy pracovních ploch"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Pracovní plocha %d" msgstr "Pracovní plocha %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Přidat pracovní plochu" msgstr "Přidat pracovní plochu"

View File

@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-02-27 13:21+0100\n" "PO-Revision-Date: 2020-09-07 18:36+0200\n"
"Last-Translator: Alan Mortensen <alanmortensen.am@gmail.com>\n" "Last-Translator: Alan Mortensen <alanmortensen.am@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n" "Language: da\n"
@@ -22,28 +22,19 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.3\n" "X-Generator: Poedit 2.3\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classic" msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Denne session logger dig ind i GNOME Classic" msgstr "Denne session logger dig ind i GNOME Classic"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classic på Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic på Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favoritter" msgstr "Favoritter"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Programmer" msgstr "Programmer"
@@ -59,26 +50,26 @@ msgstr ""
"En liste over strenge, som hver indeholder et program-id " "En liste over strenge, som hver indeholder et program-id "
"(skrivebordsfilnavn), efterfulgt af et kolon og arbejdsområdets nummer" "(skrivebordsfilnavn), efterfulgt af et kolon og arbejdsområdets nummer"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Regler for arbejdsområde" msgstr "Regler for arbejdsområde"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Tilføj regel" msgstr "Tilføj regel"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Udskubning af drevet “%s” mislykkedes:" msgstr "Udskubning af drevet “%s” mislykkedes:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Flytbare enheder" msgstr "Flytbare enheder"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Åbn filer" msgstr "Åbn filer"
@@ -112,8 +103,8 @@ msgstr ""
"Ændring af denne indstilling kræver at shell'en genstartes for at træde i " "Ændring af denne indstilling kræver at shell'en genstartes for at træde i "
"kraft." "kraft."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Steder" msgstr "Steder"
@@ -156,47 +147,47 @@ msgstr "Temanavn"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Navnet på temaet, som indlæses fra ~/.themes/name/gnome-shell" msgstr "Navnet på temaet, som indlæses fra ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Luk" msgstr "Luk"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Afminimér" msgstr "Afminimér"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimér" msgstr "Minimér"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Afmaksimér" msgstr "Afmaksimér"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maksimér" msgstr "Maksimér"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimér" msgstr "Minimér"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Afminimér alle" msgstr "Afminimér alle"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maksimér alle" msgstr "Maksimér alle"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Afmaksimér alle" msgstr "Afmaksimér alle"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Luk alle" msgstr "Luk alle"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Vinduesliste" msgstr "Vinduesliste"
@@ -213,7 +204,7 @@ msgstr ""
"Mulige værdier er “never” (aldrig), “auto” (automatisk) og “always” (altid)." "Mulige værdier er “never” (aldrig), “auto” (automatisk) og “always” (altid)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Vis vinduer fra alle arbejdsområder" msgstr "Vis vinduer fra alle arbejdsområder"
@@ -234,41 +225,41 @@ msgstr ""
"Om vindueslisten skal vise på alle tilsluttede skærme, eller kun på den " "Om vindueslisten skal vise på alle tilsluttede skærme, eller kun på den "
"primære." "primære."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Vinduesgruppering" msgstr "Vinduesgruppering"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Gruppér aldrig vinduer" msgstr "Gruppér aldrig vinduer"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Gruppér vinduer når pladsen er begrænset" msgstr "Gruppér vinduer når pladsen er begrænset"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Gruppér altid vinduer" msgstr "Gruppér altid vinduer"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Vis på alle skærme" msgstr "Vis på alle skærme"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Arbejdsområdeindikator" msgstr "Arbejdsområdeindikator"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Navne på arbejdsområder" msgstr "Navne på arbejdsområder"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Arbejdsområde %d" msgstr "Arbejdsområde %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Tilføj arbejdsområde" msgstr "Tilføj arbejdsområde"

104
po/de.po
View File

@@ -2,51 +2,41 @@
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER # Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Mario Blättermann <mario.blaettermann@gmail.com>, 2011-2013, 2017. # Mario Blättermann <mario.blaettermann@gmail.com>, 2011-2013, 2017.
# Christian Kirbach <Christian.Kirbach@googlemail.com>, 2011, 2012, 2022. # Christian Kirbach <Christian.Kirbach@googlemail.com>, 2011, 2012.
# Benjamin Steinwender <b@stbe.at>, 2013. # Benjamin Steinwender <b@stbe.at>, 2013.
# Wolfgang Stöggl <c72578@yahoo.de>, 2014. # Wolfgang Stöggl <c72578@yahoo.de>, 2014.
# Paul Seyfert <pseyfert@mathphys.fsk.uni-heidelberg.de>, 2017. # Paul Seyfert <pseyfert@mathphys.fsk.uni-heidelberg.de>, 2017.
# Tim Sabsch <tim@sabsch.com>, 2019-2020. # Tim Sabsch <tim@sabsch.com>, 2019-2020.
# Philipp Kiemle <philipp.kiemle@gmail.com>, 2022.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2022-03-07 15:35+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-10 22:26+0100\n" "PO-Revision-Date: 2020-09-08 20:20+0200\n"
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n" "Last-Translator: Tim Sabsch <tim@sabsch.com>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n" "Language-Team: Deutsch <gnome-de@gnome.org>\n"
"Language: de\n" "Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 2.4.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classic" msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Diese Sitzung meldet Sie in GNOME Classic an" msgstr "Diese Sitzung meldet Sie in GNOME Classic an"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classic unter Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic unter Xorg"
#: extensions/apps-menu/extension.js:118
msgid "Favorites" msgid "Favorites"
msgstr "Favoriten" msgstr "Favoriten"
#: extensions/apps-menu/extension.js:379 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Anwendungen" msgstr "Anwendungen"
@@ -63,26 +53,26 @@ msgstr ""
"Datei) enthält, gefolgt von einem Doppelpunkt und der Nummer der " "Datei) enthält, gefolgt von einem Doppelpunkt und der Nummer der "
"Arbeitsfläche" "Arbeitsfläche"
#: extensions/auto-move-windows/prefs.js:152 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Arbeitsfläche-Regeln" msgstr "Arbeitsfläche-Regeln"
#: extensions/auto-move-windows/prefs.js:306 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Regel hinzufügen" msgstr "Regel hinzufügen"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:126 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:210 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Auswerfen von Laufwerk »%s« schlug fehl:" msgstr "Auswerfen von Laufwerk »%s« schlug fehl:"
#: extensions/drive-menu/extension.js:145 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Wechseldatenträger" msgstr "Wechseldatenträger"
#: extensions/drive-menu/extension.js:167 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Dateien öffnen" msgstr "Dateien öffnen"
@@ -116,31 +106,31 @@ msgstr ""
"Vorschaubild platziert und damit die Voreinstellung der Shell übergangen. " "Vorschaubild platziert und damit die Voreinstellung der Shell übergangen. "
"Eine Änderungseinstellung tritt erst mit einem Neustart der Shell in Kraft." "Eine Änderungseinstellung tritt erst mit einem Neustart der Shell in Kraft."
#: extensions/places-menu/extension.js:94 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:97 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Orte" msgstr "Orte"
#: extensions/places-menu/placeDisplay.js:49 #: extensions/places-menu/placeDisplay.js:46
#, javascript-format #, javascript-format
msgid "Failed to launch “%s”" msgid "Failed to launch “%s”"
msgstr "Starten von »%s« fehlgeschlagen" msgstr "Starten von »%s« fehlgeschlagen"
#: extensions/places-menu/placeDisplay.js:64 #: extensions/places-menu/placeDisplay.js:61
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "Datenträger für »%s« konnte nicht eingebunden werden" msgstr "Datenträger für »%s« konnte nicht eingebunden werden"
#: extensions/places-menu/placeDisplay.js:125
#: extensions/places-menu/placeDisplay.js:148 #: extensions/places-menu/placeDisplay.js:148
#: extensions/places-menu/placeDisplay.js:171
msgid "Computer" msgid "Computer"
msgstr "Rechner" msgstr "Rechner"
#: extensions/places-menu/placeDisplay.js:336 #: extensions/places-menu/placeDisplay.js:359
msgid "Home" msgid "Home"
msgstr "Persönlicher Ordner" msgstr "Persönlicher Ordner"
#: extensions/places-menu/placeDisplay.js:381 #: extensions/places-menu/placeDisplay.js:404
msgid "Browse Network" msgid "Browse Network"
msgstr "Netzwerk durchsuchen" msgstr "Netzwerk durchsuchen"
@@ -162,47 +152,47 @@ msgstr ""
"Der Name des Themas, welches aus ~/.themes/name/gnome-shell geladen werden " "Der Name des Themas, welches aus ~/.themes/name/gnome-shell geladen werden "
"soll" "soll"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Schließen" msgstr "Schließen"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Minimieren rückgängig" msgstr "Minimieren rückgängig"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimieren" msgstr "Minimieren"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Maximieren rückgängig" msgstr "Maximieren rückgängig"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximieren" msgstr "Maximieren"
#: extensions/window-list/extension.js:441 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Alle minimieren" msgstr "Alle minimieren"
#: extensions/window-list/extension.js:447 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Alle minimieren rückgängig" msgstr "Alle minimieren rückgängig"
#: extensions/window-list/extension.js:453 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Alle maximieren" msgstr "Alle maximieren"
#: extensions/window-list/extension.js:461 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Alle maximieren rückgängig" msgstr "Alle maximieren rückgängig"
#: extensions/window-list/extension.js:469 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Alle schließen" msgstr "Alle schließen"
#: extensions/window-list/extension.js:753 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Fensterliste" msgstr "Fensterliste"
@@ -220,7 +210,7 @@ msgstr ""
"»always« (immer)." "»always« (immer)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Fenster von allen Arbeitsflächen anzeigen" msgstr "Fenster von allen Arbeitsflächen anzeigen"
@@ -242,41 +232,41 @@ msgstr ""
"Legt fest, ob die Fensterliste auf allen angeschlossenen Bildschirmen " "Legt fest, ob die Fensterliste auf allen angeschlossenen Bildschirmen "
"angezeigt wird oder nur auf dem Primären." "angezeigt wird oder nur auf dem Primären."
#: extensions/window-list/prefs.js:35 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Fenstergruppierung" msgstr "Fenstergruppierung"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Fenster niemals gruppieren" msgstr "Fenster niemals gruppieren"
#: extensions/window-list/prefs.js:41 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Fenster bei Platzmangel gruppieren" msgstr "Fenster bei Platzmangel gruppieren"
#: extensions/window-list/prefs.js:42 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Fenster immer gruppieren" msgstr "Fenster immer gruppieren"
#: extensions/window-list/prefs.js:66 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Auf allen Bildschirmen anzeigen" msgstr "Auf allen Bildschirmen anzeigen"
#: extensions/window-list/workspaceIndicator.js:261 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:266 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Arbeitsflächenindikator" msgstr "Arbeitsflächenindikator"
#: extensions/workspace-indicator/prefs.js:62 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names"
msgstr "Namen der Arbeitsflächen"
#: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Arbeitsfläche %d" msgstr "Arbeitsfläche %d"
#: extensions/workspace-indicator/prefs.js:129 #: extensions/workspace-indicator/prefs.js:218
msgid "Workspace Names"
msgstr "Namen der Arbeitsflächen"
#: extensions/workspace-indicator/prefs.js:255
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Arbeitsfläche hinzufügen" msgstr "Arbeitsfläche hinzufügen"

101
po/el.po
View File

@@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2023-02-18 15:10+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2023-08-01 23:41+0300\n" "PO-Revision-Date: 2020-07-14 00:40+0300\n"
"Last-Translator: Efstathios Iosifidis <eiosifidis@gnome.org>\n" "Last-Translator: Efstathios Iosifidis <eiosifidis@gnome.org>\n"
"Language-Team: Greek, Modern (1453-) <gnome-el-list@gnome.org>\n" "Language-Team: Greek, Modern (1453-) <gnome-el-list@gnome.org>\n"
"Language: el\n" "Language: el\n"
@@ -21,31 +21,22 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.3.2\n" "X-Generator: Poedit 1.8.7.1\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classic" msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Αυτή η συνεδρία σας συνδέει στο GNOME Classic" msgstr "Αυτή η συνεδρία σας συνδέει στο GNOME Classic"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classic σε Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic σε Xorg"
#: extensions/apps-menu/extension.js:118
msgid "Favorites" msgid "Favorites"
msgstr "Αγαπημένα" msgstr "Αγαπημένα"
#: extensions/apps-menu/extension.js:380 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Εφαρμογές" msgstr "Εφαρμογές"
@@ -62,26 +53,26 @@ msgstr ""
"(όνομα αρχείου επιφάνειας εργασίας), ακολουθούμενη από άνω-κάτω τελεία και " "(όνομα αρχείου επιφάνειας εργασίας), ακολουθούμενη από άνω-κάτω τελεία και "
"τον αριθμό του χώρου εργασίας" "τον αριθμό του χώρου εργασίας"
#: extensions/auto-move-windows/prefs.js:152 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Κανόνες χώρων εργασίας" msgstr "Κανόνες χώρων εργασίας"
#: extensions/auto-move-windows/prefs.js:306 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Προσθήκη κανόνα" msgstr "Προσθήκη κανόνα"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:126 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:212 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Αποτυχία εξαγωγής του δίσκου «%s»:" msgstr "Αποτυχία εξαγωγής του δίσκου «%s»:"
#: extensions/drive-menu/extension.js:145 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Αφαιρούμενες συσκευές" msgstr "Αφαιρούμενες συσκευές"
#: extensions/drive-menu/extension.js:167 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Άνοιγμα αρχείων" msgstr "Άνοιγμα αρχείων"
@@ -115,31 +106,31 @@ msgstr ""
"στο κάτω μέρος. Η αλλαγή αυτής της ρύθμισης απαιτεί επανεκκίνηση του " "στο κάτω μέρος. Η αλλαγή αυτής της ρύθμισης απαιτεί επανεκκίνηση του "
"κελύφους για να υπάρξει κάποιο αποτέλεσμα." "κελύφους για να υπάρξει κάποιο αποτέλεσμα."
#: extensions/places-menu/extension.js:94 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:97 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Τοποθεσίες" msgstr "Τοποθεσίες"
#: extensions/places-menu/placeDisplay.js:52 #: extensions/places-menu/placeDisplay.js:46
#, javascript-format #, javascript-format
msgid "Failed to launch “%s”" msgid "Failed to launch “%s”"
msgstr "Αποτυχία εκκίνησης «%s»" msgstr "Αποτυχία εκκίνησης «%s»"
#: extensions/places-menu/placeDisplay.js:67 #: extensions/places-menu/placeDisplay.js:61
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "Αποτυχία προσάρτησης τόμου για «%s»" msgstr "Αποτυχία προσάρτησης τόμου για «%s»"
#: extensions/places-menu/placeDisplay.js:127 #: extensions/places-menu/placeDisplay.js:148
#: extensions/places-menu/placeDisplay.js:150 #: extensions/places-menu/placeDisplay.js:171
msgid "Computer" msgid "Computer"
msgstr "Υπολογιστής" msgstr "Υπολογιστής"
#: extensions/places-menu/placeDisplay.js:340 #: extensions/places-menu/placeDisplay.js:359
msgid "Home" msgid "Home"
msgstr "Προσωπικός φάκελος" msgstr "Προσωπικός φάκελος"
#: extensions/places-menu/placeDisplay.js:385 #: extensions/places-menu/placeDisplay.js:404
msgid "Browse Network" msgid "Browse Network"
msgstr "Περιήγηση δικτύου" msgstr "Περιήγηση δικτύου"
@@ -160,47 +151,47 @@ msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "" msgstr ""
"Το όνομα του θέματος που θα φορτωθεί από το ~ /.themes/name/gnome-shell" "Το όνομα του θέματος που θα φορτωθεί από το ~ /.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Κλείσιμο" msgstr "Κλείσιμο"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Αποελαχιστοποίηση" msgstr "Αποελαχιστοποίηση"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Ελαχιστοποίηση" msgstr "Ελαχιστοποίηση"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Απομεγιστοποίηση" msgstr "Απομεγιστοποίηση"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Μεγιστοποίηση" msgstr "Μεγιστοποίηση"
#: extensions/window-list/extension.js:483 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Ελαχιστοποίηση όλων" msgstr "Ελαχιστοποίηση όλων"
#: extensions/window-list/extension.js:489 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Αποελαχιστοποίηση όλων" msgstr "Αποελαχιστοποίηση όλων"
#: extensions/window-list/extension.js:495 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Μεγιστοποίηση όλων" msgstr "Μεγιστοποίηση όλων"
#: extensions/window-list/extension.js:503 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Απομεγιστοποίηση όλων" msgstr "Απομεγιστοποίηση όλων"
#: extensions/window-list/extension.js:511 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Κλείσιμο όλων" msgstr "Κλείσιμο όλων"
#: extensions/window-list/extension.js:795 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Λίστα παραθύρου" msgstr "Λίστα παραθύρου"
@@ -218,7 +209,7 @@ msgstr ""
"«always» (πάντα)." "«always» (πάντα)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Εμφάνιση των παραθύρων από όλους τους χώρους εργασίας" msgstr "Εμφάνιση των παραθύρων από όλους τους χώρους εργασίας"
@@ -239,41 +230,41 @@ msgstr ""
"Αν θα εμφανίζεται ο κατάλογος παραθύρων όλων των συνδεμένων οθονών ή μόνο " "Αν θα εμφανίζεται ο κατάλογος παραθύρων όλων των συνδεμένων οθονών ή μόνο "
"της κύριας οθόνης." "της κύριας οθόνης."
#: extensions/window-list/prefs.js:35 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Ομαδοποίηση παραθύρου" msgstr "Ομαδοποίηση παραθύρου"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Να μη γίνεται ποτέ ομαδοποίηση παραθύρων" msgstr "Να μη γίνεται ποτέ ομαδοποίηση παραθύρων"
#: extensions/window-list/prefs.js:41 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Ομαδοποίηση παραθύρων όταν ο χώρος είναι περιορισμένος" msgstr "Ομαδοποίηση παραθύρων όταν ο χώρος είναι περιορισμένος"
#: extensions/window-list/prefs.js:42 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Να γίνεται πάντα ομαδοποίηση παραθύρων" msgstr "Να γίνεται πάντα ομαδοποίηση παραθύρων"
#: extensions/window-list/prefs.js:66 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Να εμφανίζεται σε όλες τις οθόνες" msgstr "Να εμφανίζεται σε όλες τις οθόνες"
#: extensions/window-list/workspaceIndicator.js:261 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:266 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Δείκτης χώρου εργασίας" msgstr "Δείκτης χώρου εργασίας"
#: extensions/workspace-indicator/prefs.js:62 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names"
msgstr "Ονόματα χώρων εργασίας:"
#: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Χώρος εργασίας %d" msgstr "Χώρος εργασίας %d"
#: extensions/workspace-indicator/prefs.js:129 #: extensions/workspace-indicator/prefs.js:218
msgid "Workspace Names"
msgstr "Ονόματα χώρων εργασίας"
#: extensions/workspace-indicator/prefs.js:255
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Προσθήκη χώρου εργασίας" msgstr "Προσθήκη χώρου εργασίας"

View File

@@ -4,15 +4,15 @@
# Jorge González <jorgegonz@svn.gnome.org>, 2011. # Jorge González <jorgegonz@svn.gnome.org>, 2011.
# Nicolás Satragno <nsatragno@gmail.com>, 2011. # Nicolás Satragno <nsatragno@gmail.com>, 2011.
# #
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2011-2021. # Daniel Mustieles <daniel.mustieles@gmail.com>, 2011-2020.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-03 17:53+0000\n"
"PO-Revision-Date: 2021-11-26 17:58+0100\n" "PO-Revision-Date: 2020-05-04 14:06+0200\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n" "Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: Spanish - Spain <gnome-es-list@gnome.org>\n" "Language-Team: Spanish - Spain <gnome-es-list@gnome.org>\n"
"Language: es_ES\n" "Language: es_ES\n"
@@ -20,32 +20,21 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Gtranslator 41.0\n" "X-Generator: Gtranslator 3.36.0\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME clásico" msgstr "GNOME clásico"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Esta sesión inicia GNOME clásico" msgstr "Esta sesión inicia GNOME clásico"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "GNOME clásico en Wayland"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "GNOME clásicoen Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favoritos" msgstr "Favoritos"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplicaciones" msgstr "Aplicaciones"
@@ -61,26 +50,27 @@ msgstr ""
"Una lista de cadenas, conteniendo cada una un ID de aplicación (nombre de " "Una lista de cadenas, conteniendo cada una un ID de aplicación (nombre de "
"archivo de escritorio), seguido de dos puntos y el número del área de trabajo" "archivo de escritorio), seguido de dos puntos y el número del área de trabajo"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
#| msgid "Workspace Names"
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Reglas de las áreas de trabajo" msgstr "Reglas de las áreas de trabajo"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Añadir regla" msgstr "Añadir regla"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Falló al expulsar el dispositivo «%s»:" msgstr "Falló al expulsar el dispositivo «%s»:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Dispositivos extraíbles" msgstr "Dispositivos extraíbles"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Abrir archivos" msgstr "Abrir archivos"
@@ -113,8 +103,8 @@ msgstr ""
"los sitúa por debajo. Cambiar esta configuración requiere reiniciar la shell " "los sitúa por debajo. Cambiar esta configuración requiere reiniciar la shell "
"para que tenga efecto." "para que tenga efecto."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Lugares" msgstr "Lugares"
@@ -157,47 +147,47 @@ msgstr "Nombre del tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "El nombre del tema, que se carga desde ~/.themes/nombre/gnome-shell" msgstr "El nombre del tema, que se carga desde ~/.themes/nombre/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Cerrar" msgstr "Cerrar"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Desminimizar" msgstr "Desminimizar"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimizar" msgstr "Minimizar"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Desmaximizar" msgstr "Desmaximizar"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximizar" msgstr "Maximizar"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:429
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimizar todo" msgstr "Minimizar todo"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:435
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Desminimizar todo" msgstr "Desminimizar todo"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:441
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximizar todo" msgstr "Maximizar todo"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:449
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Desmaximizar todo" msgstr "Desmaximizar todo"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:457
msgid "Close all" msgid "Close all"
msgstr "Cerrar todo" msgstr "Cerrar todo"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:737
msgid "Window List" msgid "Window List"
msgstr "Lista de ventanas" msgstr "Lista de ventanas"
@@ -214,7 +204,7 @@ msgstr ""
"ventanas. Los valores posibles son «never», «auto» y «always»." "ventanas. Los valores posibles son «never», «auto» y «always»."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Mostrar ventanas de todas las áreas de trabajo" msgstr "Mostrar ventanas de todas las áreas de trabajo"
@@ -236,41 +226,41 @@ msgstr ""
"Indica si se debe mostrar la lista de ventanas en todas las pantallas " "Indica si se debe mostrar la lista de ventanas en todas las pantallas "
"conectadas o sólo en la primaria." "conectadas o sólo en la primaria."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Agrupación de ventanas" msgstr "Agrupación de ventanas"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Nunca agrupar las ventanas" msgstr "Nunca agrupar las ventanas"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Agrupar las ventanas cuando el espacio esté limitado" msgstr "Agrupar las ventanas cuando el espacio esté limitado"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Siempre agrupar las ventanas" msgstr "Siempre agrupar las ventanas"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Mostrar en todas las pantallas" msgstr "Mostrar en todas las pantallas"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:209
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:215
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicador de área de trabajo" msgstr "Indicador de área de trabajo"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nombres de los áreas de trabajo" msgstr "Nombres de los áreas de trabajo"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Área de trabajo %d" msgstr "Área de trabajo %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Añadir área de trabajo" msgstr "Añadir área de trabajo"

View File

@@ -5,13 +5,13 @@
# assar <asiersar@yahoo.com>, 2011. # assar <asiersar@yahoo.com>, 2011.
# Iñaki Larrañaga Murgoitio <dooteo@zundan.com>, 2011, 2013, 2015, 2017. # Iñaki Larrañaga Murgoitio <dooteo@zundan.com>, 2011, 2013, 2015, 2017.
# Edurne Labaka <elabaka@uzei.com>, 2015. # Edurne Labaka <elabaka@uzei.com>, 2015.
# Asier Sarasua Garmendia <asiersarasua@ni.eus>, 2019, 2020, 2021. # Asier Sarasua Garmendia <asiersarasua@ni.eus>, 2019, 2020.
# #
msgid "" msgid ""
msgstr "Project-Id-Version: gnome-shell-extensions master\n" msgstr "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues\n" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-12-25 00:42+0200\n" "PO-Revision-Date: 2020-08-10 00:42+0200\n"
"Last-Translator: Asier Sarasua Garmendia <asiersarasua@ni.eus>\n" "Last-Translator: Asier Sarasua Garmendia <asiersarasua@ni.eus>\n"
"Language-Team: Basque <librezale@librezale.eus>\n" "Language-Team: Basque <librezale@librezale.eus>\n"
"Language: eu\n" "Language: eu\n"
@@ -20,29 +20,21 @@ msgstr "Project-Id-Version: gnome-shell-extensions master\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
"X-Generator: Poedit 2.2.3\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Klasikoa" msgstr "GNOME Klasikoa"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Saio honek GNOME Klasikoa hasten du" msgstr "Saio honek GNOME Klasikoa hasten du"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME klasikoa Wayland gainean"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME klasikoa Xorg gainean"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Gogokoak" msgstr "Gogokoak"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplikazioak" msgstr "Aplikazioak"
@@ -56,26 +48,26 @@ msgid ""
"followed by a colon and the workspace number" "followed by a colon and the workspace number"
msgstr "Kateen zerrenda bat, bakoitzak aplikazio-ID bat duena (mahaigainaren fitxategi-izena) eta jarraian bi puntu eta laneko arearen zenbakia dituena" msgstr "Kateen zerrenda bat, bakoitzak aplikazio-ID bat duena (mahaigainaren fitxategi-izena) eta jarraian bi puntu eta laneko arearen zenbakia dituena"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Laneko areen arauak" msgstr "Laneko areen arauak"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Gehitu araua" msgstr "Gehitu araua"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Huts egin du “%s“ unitatea egoztean:" msgstr "Huts egin du “%s“ unitatea egoztean:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Gailu aldagarriak" msgstr "Gailu aldagarriak"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Ireki fitxategiak" msgstr "Ireki fitxategiak"
@@ -101,8 +93,8 @@ msgid ""
"restarting the shell to have any effect." "restarting the shell to have any effect."
msgstr "TRUE (egia) bada, leihoen epigrafeak dagokien koadro txikien gainean jarriko ditu, Shell-aren lehenespena (behean jartzearena) gainidatziz. Ezarpen hau aldatzeko eta aplikatzeko Shell berrabiarazi behar da." msgstr "TRUE (egia) bada, leihoen epigrafeak dagokien koadro txikien gainean jarriko ditu, Shell-aren lehenespena (behean jartzearena) gainidatziz. Ezarpen hau aldatzeko eta aplikatzeko Shell berrabiarazi behar da."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Lekuak" msgstr "Lekuak"
@@ -145,47 +137,47 @@ msgstr "Gaiaren izena"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Gaiaren izena, ~/.themes/izena/gnome-shell direktoriotik kargatzeko" msgstr "Gaiaren izena, ~/.themes/izena/gnome-shell direktoriotik kargatzeko"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Itxi" msgstr "Itxi"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Leheneratu" msgstr "Leheneratu"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimizatu" msgstr "Minimizatu"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Desmaximizatu" msgstr "Desmaximizatu"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximizatu" msgstr "Maximizatu"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimizatu denak" msgstr "Minimizatu denak"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Leheneratu denak" msgstr "Leheneratu denak"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximizatu denak" msgstr "Maximizatu denak"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Desmaximizatu denak" msgstr "Desmaximizatu denak"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Itxi denak" msgstr "Itxi denak"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Leiho-zerrenda" msgstr "Leiho-zerrenda"
@@ -200,7 +192,7 @@ msgid ""
msgstr "Aplikazio bereko leihoak leihoen zerrendan noiz elkartuko diren erabakitzen du. Balio erabilgarriak: “never“ (inoiz ere ez), “auto“ (automatikoa) eta “always“ (beti)." msgstr "Aplikazio bereko leihoak leihoen zerrendan noiz elkartuko diren erabakitzen du. Balio erabilgarriak: “never“ (inoiz ere ez), “auto“ (automatikoa) eta “always“ (beti)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Erakutsi laneko area guztietako leihoak" msgstr "Erakutsi laneko area guztietako leihoak"
@@ -218,41 +210,41 @@ msgid ""
"primary one." "primary one."
msgstr "Leihoen zerrenda konektatutako pantaila guztietan edo soilik pantaila nagusian erakutsiko den." msgstr "Leihoen zerrenda konektatutako pantaila guztietan edo soilik pantaila nagusian erakutsiko den."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Leiho-elkartzea" msgstr "Leiho-elkartzea"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Leihoak inoiz ez elkartu" msgstr "Leihoak inoiz ez elkartu"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Elkartu leihoak lekua mugatuta dagoenean" msgstr "Elkartu leihoak lekua mugatuta dagoenean"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Elkartu beti leihoak" msgstr "Elkartu beti leihoak"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Erakutsi pantaila guztietan" msgstr "Erakutsi pantaila guztietan"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Lan arearen adierazlea" msgstr "Lan arearen adierazlea"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Laneko areen izenak" msgstr "Laneko areen izenak"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. laneko area" msgstr "%d. laneko area"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Gehitu laneko area" msgstr "Gehitu laneko area"

View File

@@ -9,40 +9,31 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions gnome-3-0\n" "Project-Id-Version: gnome-shell-extensions gnome-3-0\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-03 17:53+0000\n"
"PO-Revision-Date: 2021-11-10 16:24+0330\n" "PO-Revision-Date: 2020-05-12 14:25+0000\n"
"Last-Translator: MohammadSaleh Kamyab <mskf1383@protonmail.com>\n" "Last-Translator: Danial Behzadi <dani.behzi@ubuntu.com>\n"
"Language-Team: Persian <>\n" "Language-Team: Persian <>\n"
"Language: fa\n" "Language: fa\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: utf-8\n" "X-Poedit-SourceCharset: utf-8\n"
"X-Generator: Poedit 2.4.2\n" "X-Generator: Poedit 2.3\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "گنوم کلاسیک" msgstr "گنوم کلاسیک"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "این نشست شما را به گنوم کلاسیک وارد می‌کند" msgstr "این نشست شما را به گنوم کلاسیک وارد می‌کند"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "گنوم کلاسیک روی وی‌لند"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "گنوم کلاسیک روی زورگ"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "برگزیده‌ها" msgstr "برگزیده‌ها"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "برنامه‌ها" msgstr "برنامه‌ها"
@@ -58,26 +49,26 @@ msgstr ""
"فهرستی از رشته‌ها، هرکدام حاوی شناسه‌ی یک برنامه (نام پرونده رومیزی)، در ادامه‌ی یک " "فهرستی از رشته‌ها، هرکدام حاوی شناسه‌ی یک برنامه (نام پرونده رومیزی)، در ادامه‌ی یک "
"ویرگول و شماره‌ی فضای کاری" "ویرگول و شماره‌ی فضای کاری"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "قواعد فضای کاری" msgstr "قواعد فضای کاری"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "افزودن قاعده" msgstr "افزودن قاعده"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "بیرون دادن دیسک‌گردان «%s» شکست خورد:" msgstr "بیرون دادن دیسک‌گردان «%s» شکست خورد:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "دستگاه‌های جداشدنی" msgstr "دستگاه‌های جداشدنی"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "گشودن پرونده‌ها" msgstr "گشودن پرونده‌ها"
@@ -109,7 +100,7 @@ msgstr ""
"شل در پایین را تغییر می‌دهد. تغییر این گزینه، نیاز به راه‌اندازی مجدد شل دارد تا " "شل در پایین را تغییر می‌دهد. تغییر این گزینه، نیاز به راه‌اندازی مجدد شل دارد تا "
"تاثیر بگذارد." "تاثیر بگذارد."
#: extensions/places-menu/extension.js:88 extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:89 extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "مکان‌ها" msgstr "مکان‌ها"
@@ -152,47 +143,47 @@ msgstr "نام تم"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "نام تم، جهت بارگیری از شاخه themes/name/gnome-shell./~" msgstr "نام تم، جهت بارگیری از شاخه themes/name/gnome-shell./~"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "خروج" msgstr "خروج"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "ناکمینه" msgstr "ناکمینه"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "کمینه" msgstr "کمینه"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "نابیشینه" msgstr "نابیشینه"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "بیشنه" msgstr "بیشنه"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:429
msgid "Minimize all" msgid "Minimize all"
msgstr "کمینهٔ همه" msgstr "کمینهٔ همه"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:435
msgid "Unminimize all" msgid "Unminimize all"
msgstr "ناکمینهٔ همه" msgstr "ناکمینهٔ همه"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:441
msgid "Maximize all" msgid "Maximize all"
msgstr "بیشینهٔ همه" msgstr "بیشینهٔ همه"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:449
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "نابیشینهٔ همه" msgstr "نابیشینهٔ همه"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:457
msgid "Close all" msgid "Close all"
msgstr "بستن همه" msgstr "بستن همه"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:737
msgid "Window List" msgid "Window List"
msgstr "فهرست پنجره" msgstr "فهرست پنجره"
@@ -209,7 +200,7 @@ msgstr ""
"ممکن عبارتند از «never»، «auto» و «always»." "ممکن عبارتند از «never»، «auto» و «always»."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "نمایش پنجره‌ها از تمام فضاهای کاری" msgstr "نمایش پنجره‌ها از تمام فضاهای کاری"
@@ -229,41 +220,41 @@ msgstr ""
"اینکه آیا فهرست پنجره‌ها در تمام نمایشگرهای متصل نمایش داده شود یا فقط در نمایشگر " "اینکه آیا فهرست پنجره‌ها در تمام نمایشگرهای متصل نمایش داده شود یا فقط در نمایشگر "
"اصلی." "اصلی."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "گروه‌سازی پنجره‌ها" msgstr "گروه‌سازی پنجره‌ها"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "هیچ‌گاه پنجره‌ها گروه نشوند" msgstr "هیچ‌گاه پنجره‌ها گروه نشوند"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "پنجره‌ها زمانی که فضا محدود است گروه شوند" msgstr "پنجره‌ها زمانی که فضا محدود است گروه شوند"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "همیشه پنجره‌ها گروه شوند" msgstr "همیشه پنجره‌ها گروه شوند"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "نمایش در تمام نمایشگرها" msgstr "نمایش در تمام نمایشگرها"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:209
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:215
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "نشانگر فضای‌کاری" msgstr "نشانگر فضای‌کاری"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "نام‌های فضای کاری" msgstr "نام‌های فضای کاری"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "فضای کاری %Id" msgstr "فضای کاری %Id"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "افزودن فضای‌کاری" msgstr "افزودن فضای‌کاری"

View File

@@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-10-17 20:14+0000\n"
"PO-Revision-Date: 2022-02-27 18:54+0200\n" "PO-Revision-Date: 2021-03-15 21:32+0200\n"
"Last-Translator: JR-Fi <starman@starman.fi>\n" "Last-Translator: JR-Fi <starman@starman.fi>\n"
"Language-Team: suomi <lokalisointi-lista@googlegroups.com>\n" "Language-Team: suomi <lokalisointi-lista@googlegroups.com>\n"
"Language: fi\n" "Language: fi\n"
@@ -21,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 2.0.6\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
"X-POT-Import-Date: 2012-03-05 15:06:12+0000\n" "X-POT-Import-Date: 2012-03-05 15:06:12+0000\n"
@@ -29,24 +29,15 @@ msgstr ""
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Perinteinen Gnome" msgstr "Perinteinen Gnome"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Tämä istunto kirjaa sinut perinteiseen Gnomeen" msgstr "Tämä istunto kirjaa sinut perinteiseen Gnomeen"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "Perinteinen Gnome Waylandia käyttäen"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Perinteinen Gnome Xorgia käyttäen"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Suosikit" msgstr "Suosikit"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Sovellukset" msgstr "Sovellukset"
@@ -62,26 +53,26 @@ msgstr ""
"Lista merkkijonoja, jossa jokainen on ohjelman tunnus (työpöydän " "Lista merkkijonoja, jossa jokainen on ohjelman tunnus (työpöydän "
"tiedostonimi), jota seuraa kaksoispiste ja työtilan numero" "tiedostonimi), jota seuraa kaksoispiste ja työtilan numero"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Työtilojen säännöt" msgstr "Työtilojen säännöt"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Lisää sääntö" msgstr "Lisää sääntö"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Aseman “%s” irrottaminen epäonnistui:" msgstr "Aseman “%s” irrottaminen epäonnistui:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Erilliset tallennusvälineet" msgstr "Erilliset tallennusvälineet"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Avaa tiedostonhallinta" msgstr "Avaa tiedostonhallinta"
@@ -113,8 +104,8 @@ msgstr ""
"Tämä syrjäyttää oletusasetuksen, eli otsikkotekstin asettamisen pienoiskuvan " "Tämä syrjäyttää oletusasetuksen, eli otsikkotekstin asettamisen pienoiskuvan "
"alle. Tämän asetuksen muutos vaatii Gnomen uudelleenkäynnistyksen." "alle. Tämän asetuksen muutos vaatii Gnomen uudelleenkäynnistyksen."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Sijainnit" msgstr "Sijainnit"
@@ -158,47 +149,47 @@ msgstr "Teeman nimi"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Teeman nimi, ladataan sijainnista ~/.themes/name/gnome-shell" msgstr "Teeman nimi, ladataan sijainnista ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Sulje" msgstr "Sulje"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Palauta pienennys" msgstr "Palauta pienennys"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Pienennä" msgstr "Pienennä"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Palauta suurennus" msgstr "Palauta suurennus"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Suurenna" msgstr "Suurenna"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:432
msgid "Minimize all" msgid "Minimize all"
msgstr "Pienennä kaikki" msgstr "Pienennä kaikki"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:438
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Palauta kaikkien koko" msgstr "Palauta kaikkien koko"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:444
msgid "Maximize all" msgid "Maximize all"
msgstr "Suurenna kaikki" msgstr "Suurenna kaikki"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:452
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Palauta kaikkien koko" msgstr "Palauta kaikkien koko"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:460
msgid "Close all" msgid "Close all"
msgstr "Sulje kaikki" msgstr "Sulje kaikki"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:738
msgid "Window List" msgid "Window List"
msgstr "Ikkunaluettelo" msgstr "Ikkunaluettelo"
@@ -215,7 +206,7 @@ msgstr ""
"Mahdolliset arvot ovat “never”, “auto” ja “always”." "Mahdolliset arvot ovat “never”, “auto” ja “always”."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Näytä ikkunat kaikista työtiloista" msgstr "Näytä ikkunat kaikista työtiloista"
@@ -237,41 +228,41 @@ msgstr ""
"Näytetäänkö ikkunaluettelo kaikilla liitetyillä näytöillä vai ainoastaan " "Näytetäänkö ikkunaluettelo kaikilla liitetyillä näytöillä vai ainoastaan "
"ensisijaisella näytöllä." "ensisijaisella näytöllä."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Ikkunoiden ryhmitys" msgstr "Ikkunoiden ryhmitys"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Älä ryhmitä ikkunoita koskaan" msgstr "Älä ryhmitä ikkunoita koskaan"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Ryhmitä ikkunat tilan ollessa rajallinen" msgstr "Ryhmitä ikkunat tilan ollessa rajallinen"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Ryhmitä ikkunat aina" msgstr "Ryhmitä ikkunat aina"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Näytä kaikilla näytöillä" msgstr "Näytä kaikilla näytöillä"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Työtilan ilmaisin" msgstr "Työtilan ilmaisin"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Työtilojen nimet" msgstr "Työtilojen nimet"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Työtila %d" msgstr "Työtila %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Lisää työtila" msgstr "Lisää työtila"

View File

@@ -3,48 +3,36 @@
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Claude Paroz <claude@2xlibre.net>, 2011. # Claude Paroz <claude@2xlibre.net>, 2011.
# Alain Lojewski <allomervan@gmail.com>, 2012-2013. # Alain Lojewski <allomervan@gmail.com>, 2012-2013.
# Charles Monzat <charles.monzat@free.fr>, 2018-2022. # Charles Monzat <charles.monzat@numericable.fr>, 2018.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-01 21:04+0100\n" "PO-Revision-Date: 2020-08-10 12:50+0200\n"
"Last-Translator: Charles Monzat <charles.monzat@free.fr>\n" "Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
"Language-Team: GNOME French Team <gnomefr@traduc.org>\n" "Language-Team: GNOME French Team <gnomefr@traduc.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Gtranslator 40.0\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classique" msgstr "GNOME Classique"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Cette session vous connecte à GNOME Classique" msgstr "Cette session vous connecte à GNOME Classique"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classique sur Wayland"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classique sur Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favoris" msgstr "Favoris"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Applications" msgstr "Applications"
@@ -61,26 +49,26 @@ msgstr ""
"dapplication (nom de fichier desktop), suivi par un deux-points et le " "dapplication (nom de fichier desktop), suivi par un deux-points et le "
"numéro de lespace de travail" "numéro de lespace de travail"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Règles des espaces de travail" msgstr "Règles des espaces de travail"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Ajouter une règle" msgstr "Ajouter une règle"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Léjection du disque « %s » a échoué :" msgstr "Léjection du disque « %s » a échoué :"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Périphériques amovibles" msgstr "Périphériques amovibles"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Ouvrir Fichiers" msgstr "Ouvrir Fichiers"
@@ -114,8 +102,8 @@ msgstr ""
"dessous. Pour que ce paramètre soit pris en compte, il faut redémarrer le " "dessous. Pour que ce paramètre soit pris en compte, il faut redémarrer le "
"Shell." "Shell."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Emplacements" msgstr "Emplacements"
@@ -158,47 +146,47 @@ msgstr "Nom du thème"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Le nom du thème, à charger à partir de ~/.themes/name/gnome-shell" msgstr "Le nom du thème, à charger à partir de ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Fermer" msgstr "Fermer"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Restaurer" msgstr "Restaurer"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Réduire" msgstr "Réduire"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Restaurer" msgstr "Restaurer"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximiser" msgstr "Maximiser"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Tout réduire" msgstr "Tout réduire"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Tout restaurer" msgstr "Tout restaurer"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Tout maximiser" msgstr "Tout maximiser"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Tout restaurer" msgstr "Tout restaurer"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Tout fermer" msgstr "Tout fermer"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Liste de fenêtres" msgstr "Liste de fenêtres"
@@ -216,7 +204,7 @@ msgstr ""
 always » (toujours)."  always » (toujours)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Afficher les fenêtres de tous les espaces de travail" msgstr "Afficher les fenêtres de tous les espaces de travail"
@@ -238,41 +226,41 @@ msgstr ""
"Indique sil faut afficher la liste des fenêtres sur tous les écrans " "Indique sil faut afficher la liste des fenêtres sur tous les écrans "
"connectés ou seulement lécran principal." "connectés ou seulement lécran principal."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Regroupement de fenêtres" msgstr "Regroupement de fenêtres"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Ne jamais regrouper les fenêtres" msgstr "Ne jamais regrouper les fenêtres"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Regrouper les fenêtres quand lespace est limité" msgstr "Regrouper les fenêtres quand lespace est limité"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Toujours regrouper les fenêtres" msgstr "Toujours regrouper les fenêtres"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Afficher sur tous les écrans" msgstr "Afficher sur tous les écrans"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicateur despace de travail" msgstr "Indicateur despace de travail"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Noms des espaces de travail" msgstr "Noms des espaces de travail"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Espace de travail %d" msgstr "Espace de travail %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Ajouter un espace de travail" msgstr "Ajouter un espace de travail"

View File

@@ -8,38 +8,29 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-10-08 21:24+0000\n"
"PO-Revision-Date: 2021-11-07 17:51+0100\n" "PO-Revision-Date: 2020-10-17 22:14+0200\n"
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n" "Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
"Language-Team: Friulian <fur@li.org>\n" "Language-Team: Friulian <fur@li.org>\n"
"Language: fur\n" "Language: fur\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 2.4.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classic" msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Cheste session ti fâs jentrâ in GNOME Classic" msgstr "Cheste session ti fâs jentrâ in GNOME Classic"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classic su Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic su Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Preferîts" msgstr "Preferîts"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplicazions" msgstr "Aplicazions"
@@ -55,26 +46,26 @@ msgstr ""
"Une liste di stringhis, ogniune e ten il ID di une aplicazion (non dal file ." "Une liste di stringhis, ogniune e ten il ID di une aplicazion (non dal file ."
"desktop), cun daûr doi ponts e il numar dal spazi di lavôr" "desktop), cun daûr doi ponts e il numar dal spazi di lavôr"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Regulis dai spazis di lavôr" msgstr "Regulis dai spazis di lavôr"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Zonte regule" msgstr "Zonte regule"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "No si è rivâts a parâ fûr la unitât “%s”»:" msgstr "No si è rivâts a parâ fûr la unitât “%s”»:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Dispositîfs estraibii" msgstr "Dispositîfs estraibii"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Vierç i files" msgstr "Vierç i files"
@@ -107,8 +98,8 @@ msgstr ""
"sorpassant il compuartament predefinît de shell, che lis place in bas. " "sorpassant il compuartament predefinît de shell, che lis place in bas. "
"Cambiant cheste impostazion si scugne tornâ a inviâ la shell." "Cambiant cheste impostazion si scugne tornâ a inviâ la shell."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Puescj" msgstr "Puescj"
@@ -151,47 +142,47 @@ msgstr "Non dal teme"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Il non dal teme, che si cjame da ~/.themes/name/gnome-shell" msgstr "Il non dal teme, che si cjame da ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Siere" msgstr "Siere"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Gjave minimizazion" msgstr "Gjave minimizazion"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimize" msgstr "Minimize"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Gjave massimizazion" msgstr "Gjave massimizazion"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Massimize" msgstr "Massimize"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimize ducj" msgstr "Minimize ducj"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Gjave a ducj la minimizazion" msgstr "Gjave a ducj la minimizazion"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Massimize ducj" msgstr "Massimize ducj"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Gjave a ducj la massimizazion" msgstr "Gjave a ducj la massimizazion"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Siere ducj" msgstr "Siere ducj"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Liste barcons" msgstr "Liste barcons"
@@ -208,7 +199,7 @@ msgstr ""
"barcons. I valôrs pussibii a son “never”, “auto” e “always”." "barcons. I valôrs pussibii a son “never”, “auto” e “always”."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Mostre i barcons di ducj i spazis di lavôr" msgstr "Mostre i barcons di ducj i spazis di lavôr"
@@ -229,41 +220,41 @@ msgstr ""
"Indiche se mostrâ la liste dai barcons su ducj i visôrs tacâts o nome sul " "Indiche se mostrâ la liste dai barcons su ducj i visôrs tacâts o nome sul "
"chel principâl." "chel principâl."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Intropament di barcons" msgstr "Intropament di barcons"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "No sta meti mai in grup i barcons" msgstr "No sta meti mai in grup i barcons"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Met dongje i barcons cuant che il spazi al è limitât" msgstr "Met dongje i barcons cuant che il spazi al è limitât"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Met simpri in grup i barcons" msgstr "Met simpri in grup i barcons"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Mostre su ducj i visôrs" msgstr "Mostre su ducj i visôrs"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicadôr spazi di lavôr" msgstr "Indicadôr spazi di lavôr"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nons dai spazis di lavôr" msgstr "Nons dai spazis di lavôr"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Spazi di lavôr %d" msgstr "Spazi di lavôr %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Zonte spazi di lavôr" msgstr "Zonte spazi di lavôr"

100
po/gl.po
View File

@@ -3,54 +3,37 @@
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# #
# Fran Diéguez <frandieguez@gnome.org>, 2011. # Fran Diéguez <frandieguez@gnome.org>, 2011.
# Fran Dieguez <fran.dieguez@gnome.org>, 2011-2021. # Fran Dieguez <frandieguez@gnome.org>, 2011-2020, 2021.
#
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/is"
"issues\n" "sues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-10-17 20:14+0000\n"
"PO-Revision-Date: 2021-11-19 22:50+0100\n" "PO-Revision-Date: 2021-02-24 20:41+0100\n"
"Last-Translator: Fran Dieguez <fran.dieguez@gnome.org>\n" "Last-Translator: Fran Diéguez <frandieguez@gnome.org>\n"
"Language-Team: Galician <proxecto@trasno.gal>\n" "Language-Team: Proxecto Trasno <proxecto@trasno.gal>\n"
"Language: gl\n" "Language: gl\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
"X-Generator: Gtranslator 40.0\n" "X-Generator: Gtranslator 3.38.0\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
"X-DL-Team: gl\n"
"X-DL-Module: gnome-shell-extensions\n"
"X-DL-Branch: main\n"
"X-DL-Domain: po\n"
"X-DL-State: Translating\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME clásico" msgstr "GNOME clásico"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Esta sesión iniciarao en GNOME clásico" msgstr "Esta sesión iniciarao en GNOME clásico"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "GNOME clásico en Wayland"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "GNOME clásico en Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favoritos" msgstr "Favoritos"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplicacións" msgstr "Aplicacións"
@@ -66,26 +49,26 @@ msgstr ""
"Unha lista de cadeas, cada unha das cales contén un id de aplicación (nome " "Unha lista de cadeas, cada unha das cales contén un id de aplicación (nome "
"de ficheiro desktop), seguido por unha coma e o número do espazo de traballo" "de ficheiro desktop), seguido por unha coma e o número do espazo de traballo"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Regras da área de traballo" msgstr "Regras da área de traballo"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Engadir regra" msgstr "Engadir regra"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Fallo ao extraer a unidade «%s»:" msgstr "Fallo ao extraer a unidade «%s»:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Dispositivos extraíbeis" msgstr "Dispositivos extraíbeis"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Abrir ficheiros" msgstr "Abrir ficheiros"
@@ -99,7 +82,8 @@ msgid ""
"aspect ratio, and consolidating them further to reduce the bounding box. " "aspect ratio, and consolidating them further to reduce the bounding box. "
"This setting applies only with the natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"Tente usar mais pantalla para dispor as miniaturas das xanelas adaptándose" "Tente usar mais pantalla para dispor as miniaturas das xanelas adaptándose"
" á "
"taxa de aspecto da pantalla e consolidalas para reducir a caixa envolvente. " "taxa de aspecto da pantalla e consolidalas para reducir a caixa envolvente. "
"Esta configuración aplícase só para a estratexia de disposición natural." "Esta configuración aplícase só para a estratexia de disposición natural."
@@ -117,8 +101,8 @@ msgstr ""
"respectiva, omitindo a disposición inferior por omisión do shell. Se cambia " "respectiva, omitindo a disposición inferior por omisión do shell. Se cambia "
"esta configuración deberá reiniciar o shell para que se apliquen os cambios." "esta configuración deberá reiniciar o shell para que se apliquen os cambios."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Lugares" msgstr "Lugares"
@@ -161,47 +145,47 @@ msgstr "Nome do tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "O nome do tema, a cargar desde ~/.themes/name/gnome-shell" msgstr "O nome do tema, a cargar desde ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Pechar" msgstr "Pechar"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Restabelecer" msgstr "Restabelecer"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimizar" msgstr "Minimizar"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Restaurar" msgstr "Restaurar"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximizar" msgstr "Maximizar"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:432
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimizar todo" msgstr "Minimizar todo"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:438
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Restaurar todo" msgstr "Restaurar todo"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:444
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximizar todo" msgstr "Maximizar todo"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:452
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Restaurar todo" msgstr "Restaurar todo"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:460
msgid "Close all" msgid "Close all"
msgstr "Pechar todo" msgstr "Pechar todo"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:738
msgid "Window List" msgid "Window List"
msgstr "Lista de xanelas" msgstr "Lista de xanelas"
@@ -219,7 +203,7 @@ msgstr ""
"«always» (sempre)." "«always» (sempre)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Mostrar as xanelas de todos os espazos de traballo" msgstr "Mostrar as xanelas de todos os espazos de traballo"
@@ -240,41 +224,41 @@ msgstr ""
"Indica se mostrar a lista de xanelas en todos os monitores conectados ou só " "Indica se mostrar a lista de xanelas en todos os monitores conectados ou só "
"no primario." "no primario."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Agrupación de xanelas" msgstr "Agrupación de xanelas"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Non agrupar nunca as xanelas" msgstr "Non agrupar nunca as xanelas"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Agrupar as xanelas cando o espazo é limitado" msgstr "Agrupar as xanelas cando o espazo é limitado"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Agrupar sempre as xanelas" msgstr "Agrupar sempre as xanelas"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Mostrar en todos os monitores" msgstr "Mostrar en todos os monitores"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicador de espazo de traballo" msgstr "Indicador de espazo de traballo"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nomes dos espazos de traballo" msgstr "Nomes dos espazos de traballo"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Espazos de traballo %d" msgstr "Espazos de traballo %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Engadir área de traballo" msgstr "Engadir área de traballo"

View File

@@ -9,40 +9,31 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-11-12 00:53+0200\n" "PO-Revision-Date: 2020-09-28 22:04+0300\n"
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n" "Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n"
"Language-Team: Hebrew <yoseforb@gmail.com>\n" "Language-Team: Hebrew <yoseforb@gmail.com>\n"
"Language: he\n" "Language: he\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n>2||n==0) ? 1 : 2;\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n>2||n==0) ? 1 : 2\n"
"X-Poedit-SourceCharset: UTF-8\n" "X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Gtranslator 3.36.0\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME קלסי" msgstr "0GNOME קלסי"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "הפעלה זו מכניסה אותך למצב הקלסי של GNOME" msgstr "הפעלה זו מכניסה אותך למצב הקלסי של GNOME"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME קלסי על גבי Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME קלסי על גבי Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "מועדפים" msgstr "מועדפים"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "יישומים" msgstr "יישומים"
@@ -58,26 +49,27 @@ msgstr ""
"A list of strings, each containing an application id (desktop file name), " "A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number" "followed by a colon and the workspace number"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
#| msgid "Workspace Names"
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "כללי מרחב העבודה" msgstr "כללי מרחב העבודה"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "הוספת כלל" msgstr "הוספת כלל"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "שליפת הכונן „%s” נכשלה:" msgstr "שליפת הכונן „%s” נכשלה:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "התקנים נתיקים" msgstr "התקנים נתיקים"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "פתיחת קבצים" msgstr "פתיחת קבצים"
@@ -109,8 +101,8 @@ msgstr ""
"shell default of placing it at the bottom. Changing this setting requires " "shell default of placing it at the bottom. Changing this setting requires "
"restarting the shell to have any effect." "restarting the shell to have any effect."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "מיקומים" msgstr "מיקומים"
@@ -153,47 +145,47 @@ msgstr "Theme name"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgstr "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "סגירה" msgstr "סגירה"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "ביטול המזעור" msgstr "ביטול המזעור"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "מזעור" msgstr "מזעור"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "ביטול ההגדלה" msgstr "ביטול ההגדלה"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "הגדלה" msgstr "הגדלה"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "מזעור הכל" msgstr "מזעור הכל"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "ביטול מזעור הכל" msgstr "ביטול מזעור הכל"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "הגדלת הכל" msgstr "הגדלת הכל"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "ביטול הגדלת הכל" msgstr "ביטול הגדלת הכל"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "סגירת הכל" msgstr "סגירת הכל"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "רשימת חלונות" msgstr "רשימת חלונות"
@@ -210,7 +202,7 @@ msgstr ""
"Possible values are “never”, “auto” and “always”." "Possible values are “never”, “auto” and “always”."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "הצגת חלונות מכל מרחבי העבודה" msgstr "הצגת חלונות מכל מרחבי העבודה"
@@ -230,41 +222,42 @@ msgstr ""
"Whether to show the window list on all connected monitors or only on the " "Whether to show the window list on all connected monitors or only on the "
"primary one." "primary one."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "קיבוץ חלונות" msgstr "קיבוץ חלונות"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "לעולם לא לקבץ חלונות" msgstr "לעולם לא לקבץ חלונות"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "קיבוץ חלונות כאשר המקום מוגבל" msgstr "קיבוץ חלונות כאשר המקום מוגבל"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "תמיד לקבץ חלונות" msgstr "תמיד לקבץ חלונות"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "הצגה בכל הצגים" msgstr "הצגה בכל הצגים"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "מחוון מרחבי עבודה" msgstr "מחוון מרחבי עבודה"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "שם מרחב העבודה" msgstr "שם מרחב העבודה"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "מרחב עבודה %d" msgstr "מרחב עבודה %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
#| msgid "Workspace"
msgid "Add Workspace" msgid "Add Workspace"
msgstr "הוספת מרחב עבודה" msgstr "הוספת מרחב עבודה"

View File

@@ -8,9 +8,9 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-11-12 12:24+0100\n" "PO-Revision-Date: 2020-08-20 00:38+0200\n"
"Last-Translator: gogo <trebelnik2@gmail.com>\n" "Last-Translator: gogo <linux.hr@protonmail.com>\n"
"Language-Team: Croatian <hr@li.org>\n" "Language-Team: Croatian <hr@li.org>\n"
"Language: hr\n" "Language: hr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -18,30 +18,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 2.3\n" "X-Generator: Poedit 2.4.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME klasičan" msgstr "GNOME klasičan"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Ova sesija vas prijavljuje u klasičan GNOME" msgstr "Ova sesija vas prijavljuje u klasičan GNOME"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME klasičan na Waylandu"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME klasičan na Xorgu"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Omiljeni" msgstr "Omiljeni"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplikacije" msgstr "Aplikacije"
@@ -57,26 +48,26 @@ msgstr ""
"Popis nizova, svaki sadrži aplikaciju (naziv datoteke prečaca), slijedeći " "Popis nizova, svaki sadrži aplikaciju (naziv datoteke prečaca), slijedeći "
"stupac i broj radnog prostora" "stupac i broj radnog prostora"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Pravila radnog prostora" msgstr "Pravila radnog prostora"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Dodaj pravilo" msgstr "Dodaj pravilo"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Izbacivanje uređaja “%s” neuspjelo:" msgstr "Izbacivanje uređaja “%s” neuspjelo:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Prijenosni uređaji" msgstr "Prijenosni uređaji"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Otvori datoteku" msgstr "Otvori datoteku"
@@ -109,8 +100,8 @@ msgstr ""
"zaobilazeći zadano smještanje ljuske na dnu. Promjena ove postavke zahtijeva " "zaobilazeći zadano smještanje ljuske na dnu. Promjena ove postavke zahtijeva "
"ponovno pokretanje ljuske kako bi se primijenila." "ponovno pokretanje ljuske kako bi se primijenila."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Lokacije" msgstr "Lokacije"
@@ -153,47 +144,47 @@ msgstr "Naziv teme"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Naziv teme, mora se učitati iz ~/.themes/name/gnome-shell" msgstr "Naziv teme, mora se učitati iz ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Zatvori" msgstr "Zatvori"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Vrati" msgstr "Vrati"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Smanji" msgstr "Smanji"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Prikaži u prozoru" msgstr "Prikaži u prozoru"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Uvećaj" msgstr "Uvećaj"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Smanji sve" msgstr "Smanji sve"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Vrati sve" msgstr "Vrati sve"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Uvećaj sve" msgstr "Uvećaj sve"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Prikaži u prozoru sve" msgstr "Prikaži u prozoru sve"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Zatvori sve" msgstr "Zatvori sve"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Popis prozora" msgstr "Popis prozora"
@@ -210,7 +201,7 @@ msgstr ""
"vrijednosti su: “never”, “auto” i “always”." "vrijednosti su: “never”, “auto” i “always”."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Prikaži prozore sa svih radnih prostora" msgstr "Prikaži prozore sa svih radnih prostora"
@@ -231,41 +222,41 @@ msgstr ""
"Treba li prikazati popis prozora na svim povezanim zaslonima ili smo na " "Treba li prikazati popis prozora na svim povezanim zaslonima ili smo na "
"glavnom." "glavnom."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Grupiranje prozora" msgstr "Grupiranje prozora"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Ne grupiraj prozore" msgstr "Nikada grupiraj prozore"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Grupiraj prozore kada je prostor ograničen" msgstr "Grupiraj prozore kada je prostor ograničen"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Uvijek grupiraj prozore" msgstr "Uvijek grupiraj prozore"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Prikaži na svim zaslonima" msgstr "Prikaži na svim zaslonima"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indikator radnog prostora" msgstr "Indikator radnog prostora"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nazivi radnih prostora" msgstr "Nazivi radnih prostora"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Radni prostor %d" msgstr "Radni prostor %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Dodaj radni prostor" msgstr "Dodaj radni prostor"

105
po/hu.po
View File

@@ -1,50 +1,39 @@
# Hungarian translation for gnome-shell-extensions. # Hungarian translation for gnome-shell-extensions.
# Copyright (C) 2011, 2012, 2013, 2014, 2017, 2019, 2022 Free Software Foundation, Inc. # Copyright (C) 2011, 2012, 2013, 2014, 2017, 2019 Free Software Foundation, Inc.
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# #
# Biró Balázs <arch.scar at gmail dot com>, 2011. # Biró Balázs <arch.scar at gmail dot com>, 2011.
# Gabor Kelemen <kelemeng at gnome dot hu>, 2011, 2012, 2013. # Gabor Kelemen <kelemeng at gnome dot hu>, 2011, 2012, 2013.
# Balázs Úr <ur.balazs at fsf dot hu>, 2013, 2014, 2017, 2019, 2022. # Balázs Úr <ur.balazs at fsf dot hu>, 2013, 2014, 2017, 2019.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/is" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"sues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-11 01:38+0100\n" "PO-Revision-Date: 2020-09-05 18:08+0200\n"
"Last-Translator: Balázs Úr <ur.balazs at fsf dot hu>\n" "Last-Translator: Meskó Balázs <mesko.balazs@fsf.hu>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n" "Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\n" "Language: hu\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 19.12.3\n" "X-Generator: Poedit 2.4.1\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Klasszikus GNOME" msgstr "Klasszikus GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Bejelentkezés a klasszikus GNOME környezetbe" msgstr "Bejelentkezés a klasszikus GNOME környezetbe"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "Klasszikus GNOME Waylanden"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "Klasszikus GNOME Xorgon"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Kedvencek" msgstr "Kedvencek"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Alkalmazások" msgstr "Alkalmazások"
@@ -60,26 +49,26 @@ msgstr ""
"Alkalmazásazonosítókat (.desktop fájl neve), majd kettősponttal elválasztva " "Alkalmazásazonosítókat (.desktop fájl neve), majd kettősponttal elválasztva "
"a munkaterület számát tartalmazó karakterláncok sorozata" "a munkaterület számát tartalmazó karakterláncok sorozata"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Munkaterület szabályok" msgstr "Munkaterület szabályok"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Szabály hozzáadása" msgstr "Szabály hozzáadása"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "A(z) „%s” meghajtó kiadása nem sikerült:" msgstr "A(z) „%s” meghajtó kiadása nem sikerült:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Cserélhető eszközök" msgstr "Cserélhető eszközök"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Fájlok megnyitása" msgstr "Fájlok megnyitása"
@@ -112,8 +101,8 @@ msgstr ""
"tetejére helyezi el, az alapértelmezett alja helyett. Ezen beállítás " "tetejére helyezi el, az alapértelmezett alja helyett. Ezen beállítás "
"módosítása a Shell újraindítását igényli." "módosítása a Shell újraindítását igényli."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Helyek" msgstr "Helyek"
@@ -156,47 +145,47 @@ msgstr "Témanév"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "A ~/.themes/név/gnome-shell alól betöltendő téma neve" msgstr "A ~/.themes/név/gnome-shell alól betöltendő téma neve"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Bezárás" msgstr "Bezárás"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Minimalizálás megszüntetése" msgstr "Minimalizálás megszüntetése"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimalizálás" msgstr "Minimalizálás"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Maximalizálás megszüntetése" msgstr "Maximalizálás megszüntetése"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximalizálás" msgstr "Maximalizálás"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minden minimalizálása" msgstr "Minden minimalizálása"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Minden minimalizálásának megszüntetése" msgstr "Minden minimalizálásának megszüntetése"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Minden maximalizálása" msgstr "Minden maximalizálása"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Minden maximalizálásának megszüntetése" msgstr "Minden maximalizálásának megszüntetése"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Minden bezárása" msgstr "Minden bezárása"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Ablaklista" msgstr "Ablaklista"
@@ -214,7 +203,7 @@ msgstr ""
"„always” (mindig)." "„always” (mindig)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Ablakok megjelenítése az összes munkaterületről" msgstr "Ablakok megjelenítése az összes munkaterületről"
@@ -236,40 +225,52 @@ msgstr ""
"Megjelenjen-e az ablaklista minden csatlakoztatott monitoron vagy csak az " "Megjelenjen-e az ablaklista minden csatlakoztatott monitoron vagy csak az "
"elsődlegesen." "elsődlegesen."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Ablakcsoportosítás" msgstr "Ablakcsoportosítás"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Soha ne csoportosítsa az ablakokat" msgstr "Soha ne csoportosítsa az ablakokat"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Ablakok csoportosítása, ha kevés a hely" msgstr "Ablakok csoportosítása, ha kevés a hely"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Mindig csoportosítsa az ablakokat" msgstr "Mindig csoportosítsa az ablakokat"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Megjelenítés minden monitoron" msgstr "Megjelenítés minden monitoron"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Munkaterület indikátor" msgstr "Munkaterület indikátor"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Munkaterületnevek" msgstr "Munkaterületnevek"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. munkaterület" msgstr "%d. munkaterület"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Munkaterület hozzáadása" msgstr "Munkaterület hozzáadása"
#~ msgid "Application"
#~ msgstr "Alkalmazás"
#~ msgid "Create new matching rule"
#~ msgstr "Új illesztési szabály létrehozása"
#~ msgid "Add"
#~ msgstr "Hozzáadás"
#~ msgid "Name"
#~ msgstr "Név"

View File

@@ -4,14 +4,14 @@
# #
# Andika Triwidada <andika@gmail.com>, 2012, 2013. # Andika Triwidada <andika@gmail.com>, 2012, 2013.
# Dirgita <dirgitadevina@yahoo.co.id>, 2012. # Dirgita <dirgitadevina@yahoo.co.id>, 2012.
# Kukuh Syafaat <kukuhsyafaat@gnome.org>, 2017, 2019, 2020, 2022. # Kukuh Syafaat <kukuhsyafaat@gnome.org>, 2017, 2019, 2020.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-01-05 10:23+0700\n" "PO-Revision-Date: 2020-06-06 19:02+0700\n"
"Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n" "Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n"
"Language-Team: Indonesian <gnome@i15n.org>\n" "Language-Team: Indonesian <gnome@i15n.org>\n"
"Language: id\n" "Language: id\n"
@@ -20,30 +20,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Poedit-SourceCharset: UTF-8\n" "X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 2.3.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Klasik" msgstr "GNOME Klasik"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Sesi ini memasukkan Anda ke GNOME Klasik" msgstr "Sesi ini memasukkan Anda ke GNOME Klasik"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Klasik di Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Klasik di Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favorit" msgstr "Favorit"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplikasi" msgstr "Aplikasi"
@@ -59,26 +50,26 @@ msgstr ""
"Daftar string, masing-masing memuat id aplikasi (nama berkas desktop), " "Daftar string, masing-masing memuat id aplikasi (nama berkas desktop), "
"diikuti oleh titik dua dan nomor ruang kerja" "diikuti oleh titik dua dan nomor ruang kerja"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Aturan Ruang Kerja" msgstr "Aturan Ruang Kerja"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Tambah Aturan" msgstr "Tambah Aturan"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Saat mengeluarkan drive \"%s\" gagal:" msgstr "Saat mengeluarkan drive \"%s\" gagal:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Perangkat yang dapat dilepas" msgstr "Perangkat yang dapat dilepas"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Buka Berkas" msgstr "Buka Berkas"
@@ -111,8 +102,8 @@ msgstr ""
"masing, menimpa bawaan shell yang menempatkannya di bagian bawah. Mengubah " "masing, menimpa bawaan shell yang menempatkannya di bagian bawah. Mengubah "
"ini memerlukan memulai ulang shell agar berdampak." "ini memerlukan memulai ulang shell agar berdampak."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Tempat" msgstr "Tempat"
@@ -155,47 +146,47 @@ msgstr "Nama tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Nama tema, untuk dimuat dari ~/.themes/name/gnome-shell" msgstr "Nama tema, untuk dimuat dari ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Tutup" msgstr "Tutup"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Tak minimalkan" msgstr "Tak minimalkan"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimalkan" msgstr "Minimalkan"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Tak maksimalkan" msgstr "Tak maksimalkan"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maksimalkan" msgstr "Maksimalkan"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimalkan semua" msgstr "Minimalkan semua"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Tak minimalkan semua" msgstr "Tak minimalkan semua"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maksimalkan semua" msgstr "Maksimalkan semua"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Tak maksimalkan semua" msgstr "Tak maksimalkan semua"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Tutup semua" msgstr "Tutup semua"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Daftar Jendela" msgstr "Daftar Jendela"
@@ -213,7 +204,7 @@ msgstr ""
"\" (otomatis), atau \"always\" (selalu)." "\" (otomatis), atau \"always\" (selalu)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Menampilkan jendela dari semua area kerja" msgstr "Menampilkan jendela dari semua area kerja"
@@ -234,41 +225,41 @@ msgstr ""
"Apakah menampilkan daftar jendela pada semua monitor yang tersambung atau " "Apakah menampilkan daftar jendela pada semua monitor yang tersambung atau "
"hanya pada yang utama." "hanya pada yang utama."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Pengelompokan Jendela" msgstr "Pengelompokan Jendela"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Jangan pernah kelompokkan jendela" msgstr "Jangan pernah kelompokkan jendela"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Kelompokkan jendela ketika ruang terbatas" msgstr "Kelompokkan jendela ketika ruang terbatas"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Selalu kelompokkan jendela" msgstr "Selalu kelompokkan jendela"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Tampilkan pada semua monitor" msgstr "Tampilkan pada semua monitor"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indikator Ruang Kerja" msgstr "Indikator Ruang Kerja"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nama Ruang Kerja" msgstr "Nama Ruang Kerja"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Ruang Kerja %d" msgstr "Ruang Kerja %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Tambah Ruang Kerja" msgstr "Tambah Ruang Kerja"

338
po/is.po
View File

@@ -1,47 +1,99 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# #
# Sveinn í Felli <sv1@fellsnet.is>, 2015, 2017, 2021. # Sveinn í Felli <sv1@fellsnet.is>, 2015, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/is" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"sues\n" "shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2017-08-11 01:33+0000\n"
"PO-Revision-Date: 2021-12-13 09:07+0000\n" "PO-Revision-Date: 2017-09-08 06:07+0000\n"
"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n" "Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n"
"Language-Team: Icelandic <translation-team-is@lists.sourceforge.org>\n" "Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n"
"Language: is\n" "Language: is\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Lokalize 19.12.3\n" "X-Generator: Lokalize 1.5\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Hefðbundið GNOME" msgstr "GNOME Klassík"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Þessi seta skráir þig inn í klassískt GNOME" msgstr "Þessi seta skráir þig inn í klassískt GNOME"
#: data/gnome-classic-wayland.desktop.in:3 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:7
#| msgid "GNOME Classic" msgid "Attach modal dialog to the parent window"
msgid "GNOME Classic on Wayland" msgstr "Festa kvaðningarglugga við yfirglugga"
msgstr "Hefðbundið GNOME á Wayland"
#: data/gnome-classic-xorg.desktop.in:3 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:8
#| msgid "GNOME Classic" #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:25
msgid "GNOME Classic on Xorg" #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:33
msgstr "Hefðbundið GNOME á Xorg" #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:41
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Þetta hefur forgang fram yfir lykilinn í kjörstillingum org.gnome.mutter "
"þegar GNOME Skelin er keyrð."
#: extensions/apps-menu/extension.js:112 #: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:16
msgid "Arrangement of buttons on the titlebar"
msgstr "Staðsetning hnappa á tiltilrönd"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:17
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Þetta hefur forgang fram yfir lykilinn í kjörstillingum org.gnome.desktop.wm."
"þegar GNOME Skelin er keyrð."
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:24
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Virkja flísalögn við jaðra þegar gluggum er sleppt á skjájaðra"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:32
msgid "Workspaces only on primary monitor"
msgstr "Vinnusvæði einungis á aðalskjá"
#: data/org.gnome.shell.extensions.classic-overrides.gschema.xml:40
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Fresta breytingum á virkni í músarham þar til bendillinn hefur stöðvast"
#: extensions/alternate-tab/prefs.js:20
msgid "Thumbnail only"
msgstr "Einungis smámynd"
#: extensions/alternate-tab/prefs.js:21
msgid "Application icon only"
msgstr "Einungis táknmynd forrits"
#: extensions/alternate-tab/prefs.js:22
msgid "Thumbnail and application icon"
msgstr "Smámynd og táknmynd"
#: extensions/alternate-tab/prefs.js:38
msgid "Present windows as"
msgstr "Birta glugga sem"
#: extensions/alternate-tab/prefs.js:69
msgid "Show only windows in the current workspace"
msgstr "Birta eingöngu glugga á núverandi vinnusvæði"
#: extensions/apps-menu/extension.js:41
msgid "Activities Overview"
msgstr "Virkniyfirlit"
#: extensions/apps-menu/extension.js:141
msgid "Favorites" msgid "Favorites"
msgstr "Eftirlæti" msgstr "Eftirlæti"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:436
msgid "Applications" msgid "Applications"
msgstr "Forrit" msgstr "Forrit"
@@ -57,29 +109,75 @@ msgstr ""
"Listi yfir textastrengi, þar sem hver þeirra inniheldur forritsauðkenni " "Listi yfir textastrengi, þar sem hver þeirra inniheldur forritsauðkenni "
"(heiti skjáborðsskrár) að viðbættum tvípunkti og svo númeri vinnusvæðis" "(heiti skjáborðsskrár) að viðbættum tvípunkti og svo númeri vinnusvæðis"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:60
msgid "Workspace Rules" msgid "Application"
msgstr "Vinnusvæðareglur" msgstr "Forrit"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:69
#: extensions/auto-move-windows/prefs.js:127
msgid "Workspace"
msgstr "Vinnusvæði"
#: extensions/auto-move-windows/prefs.js:85
msgid "Add Rule" msgid "Add Rule"
msgstr "Bæta við reglu" msgstr "Bæta við reglu"
#: extensions/auto-move-windows/prefs.js:106
msgid "Create new matching rule"
msgstr "Búa til nýja samsvörunarreglu"
#: extensions/auto-move-windows/prefs.js:111
msgid "Add"
msgstr "Bæta við"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:107
#: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
#| msgid "Ejecting drive '%s' failed:"
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Útspýting drifsins '%s' mistókst:" msgstr "Útspýting drifsins '%s' mistókst:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:125
msgid "Removable devices" msgid "Removable devices"
msgstr "Útskiptanleg tæki" msgstr "Útskiptanleg tæki"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:150
#| msgid "Open File"
msgid "Open Files" msgid "Open Files"
msgstr "Opna skrár" msgstr "Opna skrár"
#: extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Hæ heimur!"
#: extensions/example/org.gnome.shell.extensions.example.gschema.xml:5
msgid "Alternative greeting text."
msgstr "Varatexti ávarps."
#: extensions/example/org.gnome.shell.extensions.example.gschema.xml:6
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Ef þetta er ekki autt, inniheldur það textann sem birtist þegar smellt er á "
"spjaldið."
#: extensions/example/prefs.js:30
msgid "Message"
msgstr "Skilaboð"
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: extensions/example/prefs.js:43
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless its possible to customize the greeting message."
msgstr ""
"Example-viðbótin hefur að markmiði að sýna hvernig byggja eigi vel gerðar "
"viðbætur fyrir GNOME-Shell hefur því sem slík ekki mikið aðra virkni.\n"
"Samt sem áður má nota hana til að sérsníða skilaboð í kvaðningu."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
msgid "Use more screen for windows" msgid "Use more screen for windows"
msgstr "Nota meira af skjánum fyrir glugga" msgstr "Nota meira af skjánum fyrir glugga"
@@ -91,9 +189,9 @@ msgid ""
"This setting applies only with the natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"Reyndu að nota meira af skjánum undir gluggatákn með aðlögun að " "Reyndu að nota meira af skjánum undir gluggatákn með aðlögun að "
"stærðarhlutföllum skjásins og að þjappa þeim enn frekar til að minnka " "stærðarhlutföllum skjásins og að þjappa þeim enn frekar til að minnka umgjörð "
"umgjörð þeirra. Þessi stilling gildir einungis með stefnu um eðlilegar " "þeirra. "
"staðsetningar." "Þessi stilling gildir einungis með stefnu um eðlilegar staðsetningar."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
msgid "Place window captions on top" msgid "Place window captions on top"
@@ -109,31 +207,32 @@ msgstr ""
"öfugt við það sem sjálfgefið er í skelinni sem setur þær neðst. Breytingar á " "öfugt við það sem sjálfgefið er í skelinni sem setur þær neðst. Breytingar á "
"þessum stillingum krefjast þess að skelin sé endurræst svo að þær taki gildi." "þessum stillingum krefjast þess að skelin sé endurræst svo að þær taki gildi."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:78
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:81
msgid "Places" msgid "Places"
msgstr "Staðir" msgstr "Staðir"
#: extensions/places-menu/placeDisplay.js:46 #: extensions/places-menu/placeDisplay.js:65
#, javascript-format
msgid "Failed to launch “%s”"
msgstr "Mistókst að ræsa \"%s\""
#: extensions/places-menu/placeDisplay.js:61
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "Gat ekki tengt gagnageymslu fyrir “%s”" msgstr "Gat ekki tengt gagnageymslu fyrir “%s”"
#: extensions/places-menu/placeDisplay.js:148 #: extensions/places-menu/placeDisplay.js:78
#: extensions/places-menu/placeDisplay.js:171 #, javascript-format
#| msgid "Failed to launch \"%s\""
msgid "Failed to launch “%s”"
msgstr "Mistókst að ræsa \"%s\""
#: extensions/places-menu/placeDisplay.js:137
#: extensions/places-menu/placeDisplay.js:160
msgid "Computer" msgid "Computer"
msgstr "Tölva" msgstr "Tölva"
#: extensions/places-menu/placeDisplay.js:359 #: extensions/places-menu/placeDisplay.js:303
msgid "Home" msgid "Home"
msgstr "Heim" msgstr "Heim"
#: extensions/places-menu/placeDisplay.js:404 #: extensions/places-menu/placeDisplay.js:347
msgid "Browse Network" msgid "Browse Network"
msgstr "Flakka um net" msgstr "Flakka um net"
@@ -142,6 +241,7 @@ msgid "Cycle Screenshot Sizes"
msgstr "Fletta í gegnum skjámyndastærðir" msgstr "Fletta í gegnum skjámyndastærðir"
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11 #: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11
#| msgid "Cycle Screenshot Sizes"
msgid "Cycle Screenshot Sizes Backward" msgid "Cycle Screenshot Sizes Backward"
msgstr "Fletta afturábak í gegnum skjámyndastærðir" msgstr "Fletta afturábak í gegnum skjámyndastærðir"
@@ -153,47 +253,52 @@ msgstr "Heiti þema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Heiti á þema, hlaðið inn frá ~/.themes/name/gnome-shell" msgstr "Heiti á þema, hlaðið inn frá ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:110
msgid "Close" msgid "Close"
msgstr "Loka" msgstr "Loka"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:129
msgid "Unminimize" msgid "Unminimize"
msgstr "Endurheimta" msgstr "Endurheimta"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:130
msgid "Minimize" msgid "Minimize"
msgstr "Lágmarka" msgstr "Lágmarka"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:136
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Minnka glugga" msgstr "Minnka glugga"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:137
msgid "Maximize" msgid "Maximize"
msgstr "Hámarka" msgstr "Hámarka"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:420
msgid "Minimize all" msgid "Minimize all"
msgstr "Lágmarka allt" msgstr "Lágmarka allt"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:428
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Endurheimta allt" msgstr "Endurheimta allt"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:436
msgid "Maximize all" msgid "Maximize all"
msgstr "Hámarka allt" msgstr "Hámarka allt"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:445
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Minnka allt" msgstr "Minnka allt"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:454
msgid "Close all" msgid "Close all"
msgstr "Loka öllu" msgstr "Loka öllu"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:678
#: extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Vinnusvæðavísir"
#: extensions/window-list/extension.js:842
msgid "Window List" msgid "Window List"
msgstr "Gluggalisti" msgstr "Gluggalisti"
@@ -202,6 +307,9 @@ msgid "When to group windows"
msgstr "Hvenær á að hópa glugga" msgstr "Hvenær á að hópa glugga"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
#| msgid ""
#| "Decides when to group windows from the same application on the window "
#| "list. Possible values are \"never\", \"auto\" and \"always\"."
msgid "" msgid ""
"Decides when to group windows from the same application on the window list. " "Decides when to group windows from the same application on the window list. "
"Possible values are “never”, “auto” and “always”." "Possible values are “never”, “auto” and “always”."
@@ -210,145 +318,49 @@ msgstr ""
"Möguleg gildi eru „aldrei‟, „sjálfvirkt‟ og „alltaf‟." "Möguleg gildi eru „aldrei‟, „sjálfvirkt‟ og „alltaf‟."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86
msgid "Show windows from all workspaces"
msgstr "Birta glugga frá öllum vinnusvæðum"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "Whether to show windows from all workspaces or only the current one."
msgstr ""
"Hvort birta eigi glugga frá öllum vinnusvæðum eða einungis því sem er virkt."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:27
msgid "Show the window list on all monitors" msgid "Show the window list on all monitors"
msgstr "Sýna gluggalistann á öllum skjám" msgstr "Sýna gluggalistann á öllum skjám"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "" msgid ""
"Whether to show the window list on all connected monitors or only on the " "Whether to show the window list on all connected monitors or only on the "
"primary one." "primary one."
msgstr "" msgstr ""
"Hvort birta eigi gluggalistann á öllum tengdum skjám eða einungis á aðalskjá." "Hvort birta eigi gluggalistann á öllum tengdum skjám eða einungis á aðalskjá."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:32
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Hópun glugga" msgstr "Hópun glugga"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:50
msgid "Never group windows" msgid "Never group windows"
msgstr "Aldrei hópa glugga" msgstr "Aldrei hópa glugga"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:51
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Hópa glugga þegar pláss er takmarkað" msgstr "Hópa glugga þegar pláss er takmarkað"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:52
msgid "Always group windows" msgid "Always group windows"
msgstr "Alltaf hópa glugga" msgstr "Alltaf hópa glugga"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:75
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Birta á öllum skjám" msgstr "Birta á öllum skjám"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/workspace-indicator/prefs.js:141
#: extensions/workspace-indicator/extension.js:254
msgid "Workspace Indicator"
msgstr "Vinnusvæðavísir"
#: extensions/workspace-indicator/prefs.js:33
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Vinnusvæðaheiti" msgstr "Vinnusvæðaheiti"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:157
msgid "Name"
msgstr "Heiti"
#: extensions/workspace-indicator/prefs.js:198
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Vinnusvæði %d" msgstr "Vinnusvæði %d"
#: extensions/workspace-indicator/prefs.js:207
msgid "Add Workspace"
msgstr "Bæta við vinnusvæði"
#~ msgid "Attach modal dialog to the parent window"
#~ msgstr "Festa kvaðningarglugga við yfirglugga"
#~ msgid ""
#~ "This key overrides the key in org.gnome.mutter when running GNOME Shell."
#~ msgstr ""
#~ "Þetta hefur forgang fram yfir lykilinn í kjörstillingum org.gnome.mutter "
#~ "þegar GNOME Skelin er keyrð."
#~ msgid "Arrangement of buttons on the titlebar"
#~ msgstr "Staðsetning hnappa á tiltilrönd"
#~ msgid ""
#~ "This key overrides the key in org.gnome.desktop.wm.preferences when "
#~ "running GNOME Shell."
#~ msgstr ""
#~ "Þetta hefur forgang fram yfir lykilinn í kjörstillingum org.gnome.desktop."
#~ "wm.þegar GNOME Skelin er keyrð."
#~ msgid "Enable edge tiling when dropping windows on screen edges"
#~ msgstr "Virkja flísalögn við jaðra þegar gluggum er sleppt á skjájaðra"
#~ msgid "Workspaces only on primary monitor"
#~ msgstr "Vinnusvæði einungis á aðalskjá"
#~ msgid "Delay focus changes in mouse mode until the pointer stops moving"
#~ msgstr ""
#~ "Fresta breytingum á virkni í músarham þar til bendillinn hefur stöðvast"
#~ msgid "Thumbnail only"
#~ msgstr "Einungis smámynd"
#~ msgid "Application icon only"
#~ msgstr "Einungis táknmynd forrits"
#~ msgid "Thumbnail and application icon"
#~ msgstr "Smámynd og táknmynd"
#~ msgid "Present windows as"
#~ msgstr "Birta glugga sem"
#~ msgid "Activities Overview"
#~ msgstr "Virkniyfirlit"
#~ msgid "Application"
#~ msgstr "Forrit"
#~ msgid "Create new matching rule"
#~ msgstr "Búa til nýja samsvörunarreglu"
#~ msgid "Add"
#~ msgstr "Bæta við"
#~ msgid "Hello, world!"
#~ msgstr "Hæ heimur!"
#~ msgid "Alternative greeting text."
#~ msgstr "Varatexti ávarps."
#~ msgid ""
#~ "If not empty, it contains the text that will be shown when clicking on "
#~ "the panel."
#~ msgstr ""
#~ "Ef þetta er ekki autt, inniheldur það textann sem birtist þegar smellt er "
#~ "á spjaldið."
#~ msgid "Message"
#~ msgstr "Skilaboð"
#~ msgid ""
#~ "Example aims to show how to build well behaved extensions for the Shell "
#~ "and as such it has little functionality on its own.\n"
#~ "Nevertheless its possible to customize the greeting message."
#~ msgstr ""
#~ "Example-viðbótin hefur að markmiði að sýna hvernig byggja eigi vel gerðar "
#~ "viðbætur fyrir GNOME-Shell hefur því sem slík ekki mikið aðra virkni.\n"
#~ "Samt sem áður má nota hana til að sérsníða skilaboð í kvaðningu."
#~ msgid "Name"
#~ msgstr "Heiti"
#~ msgid "CPU" #~ msgid "CPU"
#~ msgstr "Örgjörvi" #~ msgstr "Örgjörvi"

View File

@@ -1,9 +1,9 @@
# Italian translations for GNOME Shell extensions # Italian translations for GNOME Shell extensions
# Copyright (C) 2011 Giovanni Campagna et al. # Copyright (C) 2011 Giovanni Campagna et al.
# Copyright (C) 2012, 2013, 2014, 2015, 2017, 2019, 2020, 2022 The Free Software Foundation, Inc. # Copyright (C) 2012, 2013, 2014, 2015, 2017, 2019, 2020 The Free Software Foundation, Inc.
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Giovanni Campagna <scampa.giovanni@gmail.com>, 2011 # Giovanni Campagna <scampa.giovanni@gmail.com>, 2011
# Milo Casagrande <milo@milo.name>, 2013, 2014, 2015, 2017, 2019, 2020, 2022. # Milo Casagrande <milo@milo.name>, 2013, 2014, 2015, 2017, 2019, 2020.
# Gianvito Cavasoli <gianvito@gmx.it>, 2017. # Gianvito Cavasoli <gianvito@gmx.it>, 2017.
# #
msgid "" msgid ""
@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-14 09:56+0100\n" "PO-Revision-Date: 2020-09-02 09:58+0200\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n" "Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italiano <gnome-it-list@gnome.org>\n" "Language-Team: Italiano <gnome-it-list@gnome.org>\n"
"Language: it\n" "Language: it\n"
@@ -20,30 +20,21 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 2.4.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME classico" msgstr "GNOME classico"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Questa sessione si avvia con GNOME classico" msgstr "Questa sessione si avvia con GNOME classico"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME classico su Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME classico su Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Preferiti" msgstr "Preferiti"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Applicazioni" msgstr "Applicazioni"
@@ -59,28 +50,28 @@ msgstr ""
"Un elenco di stringhe, ognuna contenente l'ID di un'applicazione (nome del " "Un elenco di stringhe, ognuna contenente l'ID di un'applicazione (nome del "
"file .desktop) seguito da due punti e il numero dello spazio di lavoro" "file .desktop) seguito da due punti e il numero dello spazio di lavoro"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Regole degli spazi di lavoro" msgstr "Regole degli spazi di lavoro"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Aggiungi regola" msgstr "Aggiungi regola"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Espulsione dell'unità «%s» non riuscita:" msgstr "Espulsione dell'unità «%s» non riuscita:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Dispositivi rimovibili" msgstr "Dispositivi rimovibili"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Apri File" msgstr "Apri file"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
msgid "Use more screen for windows" msgid "Use more screen for windows"
@@ -111,8 +102,8 @@ msgstr ""
"miniature, aggirando il comportamento normale della shell, che li colloca in " "miniature, aggirando il comportamento normale della shell, che li colloca in "
"basso. Modificare questa impostazione richiede di riavviare la shell." "basso. Modificare questa impostazione richiede di riavviare la shell."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Posizioni" msgstr "Posizioni"
@@ -155,47 +146,47 @@ msgstr "Nome del tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Il nome del tema, da caricare da ~/.themes/nome/gnome-shell" msgstr "Il nome del tema, da caricare da ~/.themes/nome/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Chiudi" msgstr "Chiudi"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Deminimizza" msgstr "Deminimizza"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimizza" msgstr "Minimizza"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Demassimizza" msgstr "Demassimizza"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Massimizza" msgstr "Massimizza"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimizza tutto" msgstr "Minimizza tutto"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Deminimizza tutto" msgstr "Deminimizza tutto"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Massimizza tutto" msgstr "Massimizza tutto"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Demassimizza tutto" msgstr "Demassimizza tutto"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Chiudi tutto" msgstr "Chiudi tutto"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Elenco finestre" msgstr "Elenco finestre"
@@ -212,7 +203,7 @@ msgstr ""
"delle finestre. I possibili valori sono \"never\", \"auto\" e \"always\"." "delle finestre. I possibili valori sono \"never\", \"auto\" e \"always\"."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Mostra le finestre di tutti gli spazi di lavoro" msgstr "Mostra le finestre di tutti gli spazi di lavoro"
@@ -234,40 +225,40 @@ msgstr ""
"Indica se mostrare l'elenco delle finestre su tutti i monitor collegato o " "Indica se mostrare l'elenco delle finestre su tutti i monitor collegato o "
"solo su quello primario." "solo su quello primario."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Raggruppamento finestre" msgstr "Raggruppamento finestre"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Non raggruppare le finestre" msgstr "Non raggruppare le finestre"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Raggruppare le finestre quando c'è poco spazio" msgstr "Raggruppare le finestre quando c'è poco spazio"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Raggruppare sempre le finestre" msgstr "Raggruppare sempre le finestre"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Mostrare su tutti i monitor" msgstr "Mostrare su tutti i monitor"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicatore spazi di lavoro" msgstr "Indicatore spazi di lavoro"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Nomi degli spazi di lavoro" msgstr "Nomi degli spazi di lavoro"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Spazio di lavoro %d" msgstr "Spazio di lavoro %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Aggiungi spazio di lavoro" msgstr "Aggiungi spazio di lavoro"

View File

@@ -1,12 +1,12 @@
# gnome-shell-extensions ja.po # gnome-shell-extensions ja.po
# Copyright (C) 2011, 2013-2015, 2019-2020, 2022 gnome-shell-extensions's COPYRIGHT HOLDER # Copyright (C) 2011-2015, 2019-2020 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Takeshi AIHANA <takeshi.aihana@gmail.com>, 2011. # Takeshi AIHANA <takeshi.aihana@gmail.com>, 2011.
# Jiro Matsuzawa <jmatsuzawa@gnome.org>, 2011, 2013, 2015 # Jiro Matsuzawa <jmatsuzawa@gnome.org>, 2011, 2013, 2015
# Nishio Futoshi <fut_nis@d3.dion.ne.jp>, 2013. # Nishio Futoshi <fut_nis@d3.dion.ne.jp>, 2013.
# Ikuya Awashiro <ikuya@fruitsbasket.info>, 2014. # Ikuya Awashiro <ikuya@fruitsbasket.info>, 2014.
# Hajime Taira <htaira@redhat.com>, 2014, 2015. # Hajime Taira <htaira@redhat.com>, 2014, 2015.
# sicklylife <translation@sicklylife.jp>, 2019-2020, 2022. # sicklylife <translation@sicklylife.jp>, 2019-2020.
# #
msgid "" msgid ""
msgstr "" msgstr ""
@@ -14,7 +14,7 @@ msgstr ""
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2020-05-28 00:55+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-12 19:00+0900\n" "PO-Revision-Date: 2020-06-10 18:45+0900\n"
"Last-Translator: sicklylife <translation@sicklylife.jp>\n" "Last-Translator: sicklylife <translation@sicklylife.jp>\n"
"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n" "Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
"Language: ja\n" "Language: ja\n"
@@ -31,14 +31,6 @@ msgstr "GNOME クラシック"
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "GNOME クラシックモードでログインします" msgstr "GNOME クラシックモードでログインします"
#: data/gnome-classic-wayland.desktop.in:3
msgid "GNOME Classic on Wayland"
msgstr "GNOME クラシック on Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME クラシック on Xorg"
#: extensions/apps-menu/extension.js:113 #: extensions/apps-menu/extension.js:113
msgid "Favorites" msgid "Favorites"
msgstr "お気に入り" msgstr "お気に入り"

266
po/ka.po
View File

@@ -1,266 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n"
"POT-Creation-Date: 2022-02-13 10:42+0000\n"
"PO-Revision-Date: 2022-09-14 16:37+0200\n"
"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
"Language-Team: \n"
"Language: ka\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 3.1.1\n"
#: data/gnome-classic.desktop.in:3
msgid "GNOME Classic"
msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic"
msgstr "ეს სესია შეგიყვანთ GNOME Classic-ში"
#: data/gnome-classic-wayland.desktop.in:3
msgid "GNOME Classic on Wayland"
msgstr "GNOME CLassic Wayland-ზე"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites"
msgstr "რჩეულები"
#: extensions/apps-menu/extension.js:370
msgid "Applications"
msgstr "აპლიკაციები"
#: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:6
msgid "Application and workspace list"
msgstr "აპლიკაციების და სამუშაო სივრცეების სია"
#: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:7
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
msgstr ""
"სტრიქონების სია, რომლებიც შეიცავენ აპლიკაციის ID-ს(სამუშაო მაგიდის ფაილის "
"სახელს), რომელსაც მოჰყვება მძიმე და სამუშაო სივრცის ნომერი"
#: extensions/auto-move-windows/prefs.js:19
msgid "Workspace Rules"
msgstr "სამუშაო მაგიდის წესები"
#: extensions/auto-move-windows/prefs.js:245
msgid "Add Rule"
msgstr "წესის დამატება"
#. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:123
#: extensions/places-menu/placeDisplay.js:210
#, javascript-format
msgid "Ejecting drive “%s” failed:"
msgstr "დისკ %s-ის გამოგდების შეცდომა:"
#: extensions/drive-menu/extension.js:139
msgid "Removable devices"
msgstr "გამოძრობადი მოწყობილობები"
#: extensions/drive-menu/extension.js:161
msgid "Open Files"
msgstr "ღია ფაილები"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
msgid "Use more screen for windows"
msgstr "ეკრანის მეტი ნაწილის გამოყენება ფანჯრებისთვის"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6
msgid ""
"Try to use more screen for placing window thumbnails by adapting to screen "
"aspect ratio, and consolidating them further to reduce the bounding box. "
"This setting applies only with the natural placement strategy."
msgstr ""
"შეეცადეთ გამოიყენოთ ეკრანის მეტი ადგილი ფანჯრის ესკიზების დასაყენებლად, "
"ეკრანის ასპექტის თანაფარდობის ადაპტაციით და მათი შემდგომი კონსოლიდაციით, "
"რათა შემცირდეს შემოსაზღვრული ველი. ეს პარამეტრი გამოიყენება მხოლოდ "
"ბუნებრივი განთავსების სტრატეგიით."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
msgid "Place window captions on top"
msgstr "ფანჯრის მინაწერების ზემოთ ჩვენება"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12
msgid ""
"If true, place window captions on top the respective thumbnail, overriding "
"shell default of placing it at the bottom. Changing this setting requires "
"restarting the shell to have any effect."
msgstr ""
"თუ ჩართულია, ფანჯრის სათაური შესაბამისი მინიატურის თავზე გამოჩნდება, რითიც "
"გადაფარავს გარსის ნაგულისხმებ მნიშვნელობას, რომ ის ძირზე იყოს. ამ "
"პარამეტრის ძალაში შესასვლელად საჭიროა გარსის გადატვირთვა."
#: extensions/places-menu/extension.js:88
#: extensions/places-menu/extension.js:91
msgid "Places"
msgstr "ადგილები"
#: extensions/places-menu/placeDisplay.js:49
#, javascript-format
msgid "Failed to launch “%s”"
msgstr "%s-ის გაშვების შეცდომა"
#: extensions/places-menu/placeDisplay.js:64
#, javascript-format
msgid "Failed to mount volume for “%s”"
msgstr "%s-თვის დისკის მიმაგრების შეცდომა"
#: extensions/places-menu/placeDisplay.js:125
#: extensions/places-menu/placeDisplay.js:148
msgid "Computer"
msgstr "კომპიუტერი"
#: extensions/places-menu/placeDisplay.js:336
msgid "Home"
msgstr "საწყისი"
#: extensions/places-menu/placeDisplay.js:381
msgid "Browse Network"
msgstr "ქსელის დათვალიერება"
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:7
msgid "Cycle Screenshot Sizes"
msgstr "ეკრანის ანაბეჭდების ზომებს შორის გადართვა"
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11
msgid "Cycle Screenshot Sizes Backward"
msgstr "ეკრანის ანაბეჭდების ზომებს შორის უკუღმა გადართვა"
#: extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml:5
msgid "Theme name"
msgstr "თემის სახელი"
#: extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml:6
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "თემის სახელი, ~/.themes/name/gnome-shell-დან ჩასატვირთად"
#: extensions/window-list/extension.js:72
msgid "Close"
msgstr "დახურვა"
#: extensions/window-list/extension.js:92
msgid "Unminimize"
msgstr "ამოკეცვა"
#: extensions/window-list/extension.js:92
msgid "Minimize"
msgstr "ჩაკეცვა"
#: extensions/window-list/extension.js:99
msgid "Unmaximize"
msgstr "საწყის ზომაზე დაბრუნება"
#: extensions/window-list/extension.js:99
msgid "Maximize"
msgstr "მთელ ეკრანზე გაშლა"
#: extensions/window-list/extension.js:434
msgid "Minimize all"
msgstr "ყველას ჩაკეცვა"
#: extensions/window-list/extension.js:440
msgid "Unminimize all"
msgstr "ყველას ამოკეცვა"
#: extensions/window-list/extension.js:446
msgid "Maximize all"
msgstr "ყველას მთელ ეკრანზე გაშლა"
#: extensions/window-list/extension.js:454
msgid "Unmaximize all"
msgstr "ყველას საწყის ზომაზე დაბრუნება"
#: extensions/window-list/extension.js:462
msgid "Close all"
msgstr "ყველას დახურვა"
#: extensions/window-list/extension.js:741
msgid "Window List"
msgstr "ფანჯრების სია"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:12
msgid "When to group windows"
msgstr "როდის შევაჯგუფო ფანჯრები"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
msgid ""
"Decides when to group windows from the same application on the window list. "
"Possible values are “never”, “auto” and “always”."
msgstr ""
"არჩევს, როდის შეაჯგუფოს ერთიდაიგივე აპლიკაციის ფანჯრების სია. შესაძლო "
"ვარიანტებია \"არასოდეს\", \"ავტომატურად\" და \"ყოველთვის\"."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:76
msgid "Show windows from all workspaces"
msgstr "ფანჯრების ყველა სამუშაო სივრციდან ჩვენება"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
msgid "Whether to show windows from all workspaces or only the current one."
msgstr "ყველა სამუშაო სივრცის ფანჯრები ვაჩვენო თუ მხოლოდ მიმდინარის."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:27
msgid "Show the window list on all monitors"
msgstr "ფანჯრების სიის ყველა ეკრანზე ჩვენება"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28
msgid ""
"Whether to show the window list on all connected monitors or only on the "
"primary one."
msgstr "ფანჯრების სიის მხოლოდ მთავარ თუ ყველა მონიტორზე ჩვენება."
#: extensions/window-list/prefs.js:32
msgid "Window Grouping"
msgstr "ფანჯრების შეჯგუფება"
#: extensions/window-list/prefs.js:37
msgid "Never group windows"
msgstr "არასოდეს შეაჯგუფო ფანჯრები"
#: extensions/window-list/prefs.js:38
msgid "Group windows when space is limited"
msgstr "შეაჯგუფე მხოლოდ მაშინ, როცა ადგილი არაა"
#: extensions/window-list/prefs.js:39
msgid "Always group windows"
msgstr "ყოველთვის შეაჯგუფე ფანჯრები"
#: extensions/window-list/prefs.js:63
msgid "Show on all monitors"
msgstr "ყველა ეკრანზე ჩვენება"
#: extensions/window-list/workspaceIndicator.js:249
#: extensions/workspace-indicator/extension.js:254
msgid "Workspace Indicator"
msgstr "სამუშაო სივრცის ინდიკატორი"
#: extensions/workspace-indicator/prefs.js:18
msgid "Workspace Names"
msgstr "სამუშაო სივრცის სახელები"
#: extensions/workspace-indicator/prefs.js:39
#, javascript-format
msgid "Workspace %d"
msgstr "სამუშაო სივრცე %d"
#: extensions/workspace-indicator/prefs.js:184
msgid "Add Workspace"
msgstr "სამუშაო სივრცის დამატება"

View File

@@ -8,38 +8,29 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-06-25 05:19+0000\n"
"PO-Revision-Date: 2022-03-12 22:56+0500\n" "PO-Revision-Date: 2020-07-02 11:39+0500\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n" "Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh <kk@li.org>\n" "Language-Team: Kazakh <kk@li.org>\n"
"Language: kk\n" "Language: kk\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 2.3.1\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Классикалық GNOME" msgstr "Классикалық GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Бұл сессия арқылы классикалық GNOME ішіне кіресіз" msgstr "Бұл сессия арқылы классикалық GNOME ішіне кіресіз"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "Wayland негізіндегі классикалық GNOME"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Xorg негізіндегі классикалық GNOME"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Таңдамалылар" msgstr "Таңдамалылар"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Қолданбалар" msgstr "Қолданбалар"
@@ -55,26 +46,26 @@ msgstr ""
"Жолдар тізімі, әрқайсысы қолданба анықтағышын сақтайды (desktop файлының " "Жолдар тізімі, әрқайсысы қолданба анықтағышын сақтайды (desktop файлының "
"аты), соңында үтір және жұмыс орнының нөмірі тұрады" "аты), соңында үтір және жұмыс орнының нөмірі тұрады"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Жұмыс орын ережелері" msgstr "Жұмыс орын ережелері"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Ережені қосу" msgstr "Ережені қосу"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "\"%s\" жетегін шығару сәтсіз аяқталды:" msgstr "\"%s\" жетегін шығару сәтсіз аяқталды:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Алынатын құрылғылар" msgstr "Алынатын құрылғылар"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Файлдарды ашу" msgstr "Файлдарды ашу"
@@ -107,8 +98,8 @@ msgstr ""
"үнсіз келісім бойынша астына орналастырудың орнына. Бұл баптау іске асыру " "үнсіз келісім бойынша астына орналастырудың орнына. Бұл баптау іске асыру "
"үшін қоршамды қайта іске қосу керек." "үшін қоршамды қайта іске қосу керек."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Орындар" msgstr "Орындар"
@@ -151,47 +142,47 @@ msgstr "Тема атауы"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Тема атауы, ~/.themes/name/gnome-shell ішінен алынады" msgstr "Тема атауы, ~/.themes/name/gnome-shell ішінен алынады"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Жабу" msgstr "Жабу"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Қайырылған емес қылу" msgstr "Қайырылған емес қылу"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Қайыру" msgstr "Қайыру"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Жазық емес қылу" msgstr "Жазық емес қылу"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Жазық қылу" msgstr "Жазық қылу"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Барлығын қайыру" msgstr "Барлығын қайыру"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Барлығын қайырылған емес қылу" msgstr "Барлығын қайырылған емес қылу"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Барлығын жазық қылу" msgstr "Барлығын жазық қылу"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Барлығын жазық емес қылу" msgstr "Барлығын жазық емес қылу"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Барлығын жабу" msgstr "Барлығын жабу"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Терезелер тізімі" msgstr "Терезелер тізімі"
@@ -208,7 +199,7 @@ msgstr ""
"сипаттайды. Мүмкін мәндері: \"never\", \"auto\" және \"always\"." "сипаттайды. Мүмкін мәндері: \"never\", \"auto\" және \"always\"."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Барлық жұмыс орнындарынан терезелерді көрсету" msgstr "Барлық жұмыс орнындарынан терезелерді көрсету"
@@ -230,41 +221,41 @@ msgstr ""
"Терезелер тізімін барлық жалғанған мониторларда, немесе тек біріншілік " "Терезелер тізімін барлық жалғанған мониторларда, немесе тек біріншілік "
"мониторда көрсету керек пе." "мониторда көрсету керек пе."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Терезелерді топтау" msgstr "Терезелерді топтау"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Терезелерді ешқашан топтамау" msgstr "Терезелерді ешқашан топтамау"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Терезелерді орын шектелген кезде топтау" msgstr "Терезелерді орын шектелген кезде топтау"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Терезелерді әрқашан топтау" msgstr "Терезелерді әрқашан топтау"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Барлық мониторларда көрсету" msgstr "Барлық мониторларда көрсету"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Жұмыс орын индикаторы" msgstr "Жұмыс орын индикаторы"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Жұмыс орын атаулары" msgstr "Жұмыс орын атаулары"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Жұмыс орны %d" msgstr "Жұмыс орны %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Жұмыс орнын қосу" msgstr "Жұмыс орнын қосу"

View File

@@ -1,17 +1,17 @@
# Korean translation for gnome-shell-extensions. # Korean translation for gnome-shell-extensions.
# Copyright (C) 2012-2022 gnome-shell-extensions's COPYRIGHT HOLDER # Copyright (C) 2012 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# #
# Seong-ho Cho <darkcircle.0426@gmail.com>, 2012. # Seong-ho Cho <darkcircle.0426@gmail.com>, 2012.
# Changwoo Ryu <cwryu@debian.org>, 2013-2015, 2017, 2019-2020, 2022. # Changwoo Ryu <cwryu@debian.org>, 2013-2015, 2017, 2019-2020.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions\n" "Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-03 00:15+0900\n" "PO-Revision-Date: 2020-08-28 22:25+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n" "Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: Korean <gnome-kr@googlegroups.com>\n" "Language-Team: Korean <gnome-kr@googlegroups.com>\n"
"Language: ko\n" "Language: ko\n"
@@ -20,28 +20,19 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "그놈 클래식" msgstr "그놈 클래식"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "이 세션을 사용하면 그놈 클래식에 로그인합니다" msgstr "이 세션을 사용하면 그놈 클래식에 로그인합니다"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "그놈 클래식 (웨일랜드)"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "그놈 클래식 (Xorg)"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "즐겨찾기" msgstr "즐겨찾기"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "프로그램" msgstr "프로그램"
@@ -57,26 +48,26 @@ msgstr ""
"문자열 목록, 각각은 프로그램 ID(데스크톱 파일 이름) 다음에 콜론 뒤에 작업 공" "문자열 목록, 각각은 프로그램 ID(데스크톱 파일 이름) 다음에 콜론 뒤에 작업 공"
"간 번호." "간 번호."
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "작업 공간 규칙" msgstr "작업 공간 규칙"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "규칙 추가" msgstr "규칙 추가"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "“%s” 드라이브를 빼는데 실패했습니다:" msgstr "“%s” 드라이브를 빼는데 실패했습니다:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "이동식 장치" msgstr "이동식 장치"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "파일 열기" msgstr "파일 열기"
@@ -108,8 +99,8 @@ msgstr ""
"참이면, 창의 이름을 각 섬네일 위에 표시합니다. 셸의 기본값은 아래에 창 이름" "참이면, 창의 이름을 각 섬네일 위에 표시합니다. 셸의 기본값은 아래에 창 이름"
"을 표시합니다. 이 설정을 바꾸면 셸을 다시 시작해야 적용됩니다." "을 표시합니다. 이 설정을 바꾸면 셸을 다시 시작해야 적용됩니다."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "위치" msgstr "위치"
@@ -152,47 +143,47 @@ msgstr "테마 이름"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "테마 이름, ~/.themes/name/gnome-shell 아래에서 읽어들입니다." msgstr "테마 이름, ~/.themes/name/gnome-shell 아래에서 읽어들입니다."
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "닫기" msgstr "닫기"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "최소화 취소" msgstr "최소화 취소"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "최소화" msgstr "최소화"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "최대화 취소" msgstr "최대화 취소"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "최대화" msgstr "최대화"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "모두 최소화" msgstr "모두 최소화"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "모두 최소화 취소" msgstr "모두 최소화 취소"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "모두 최대화" msgstr "모두 최대화"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "모두 최대화 취소" msgstr "모두 최대화 취소"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "모두 닫기" msgstr "모두 닫기"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "창 목록" msgstr "창 목록"
@@ -209,7 +200,7 @@ msgstr ""
"“never”, “auto”, “always”입니다." "“never”, “auto”, “always”입니다."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "모든 작업 공간의 창을 표시합니다" msgstr "모든 작업 공간의 창을 표시합니다"
@@ -229,41 +220,41 @@ msgstr ""
"연결된 모든 모니터에 있는 창 목록을 표시할지, 아니면 주 모니터에 있는 창 목록" "연결된 모든 모니터에 있는 창 목록을 표시할지, 아니면 주 모니터에 있는 창 목록"
"만 표시할지." "만 표시할지."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "창 모으기" msgstr "창 모으기"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "창을 모으지 않기" msgstr "창을 모으지 않기"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "공간이 부족할 때 창 모으기" msgstr "공간이 부족할 때 창 모으기"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "항상 창 모으기" msgstr "항상 창 모으기"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "모든 모니터 보이기" msgstr "모든 모니터 보이기"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "작업 공간 표시" msgstr "작업 공간 표시"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "작업 공간 이름" msgstr "작업 공간 이름"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "작업 공간 %d" msgstr "작업 공간 %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "작업 공간 추가" msgstr "작업 공간 추가"

View File

@@ -2,15 +2,15 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# Algimantas Margevičius <margevicius.algimantas@gmail.com>, 2011. # Algimantas Margevičius <margevicius.algimantas@gmail.com>, 2011.
# Aurimas Černius <aurisc4@gmail.com>, 2013-2021. # Aurimas Černius <aurisc4@gmail.com>, 2013-2020.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: lt\n" "Project-Id-Version: lt\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-12-14 13:49+0200\n" "PO-Revision-Date: 2020-08-26 22:34+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n" "Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n" "Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n" "Language: lt\n"
@@ -19,32 +19,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
"%100<10 || n%100>=20) ? 1 : 2)\n" "%100<10 || n%100>=20) ? 1 : 2)\n"
"X-Generator: Gtranslator 40.0\n" "X-Generator: Gtranslator 3.36.0\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Klasikinis GNOME" msgstr "Klasikinis GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Šis seansas prijungs jus prie klasikinio GNOME" msgstr "Šis seansas prijungs jus prie klasikinio GNOME"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "Klasikinis GNOME Wayland aplinkoje"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "Klasikinis GNOME Xorg aplinkoje"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Mėgiamiausi" msgstr "Mėgiamiausi"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Programos" msgstr "Programos"
@@ -60,26 +49,27 @@ msgstr ""
"Eilučių sąrašas, kur kiekviena eilutė turi programos id (darbalaukio failo " "Eilučių sąrašas, kur kiekviena eilutė turi programos id (darbalaukio failo "
"vardą), po jo dvitaškis ir darbo srities numeris" "vardą), po jo dvitaškis ir darbo srities numeris"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
#| msgid "Workspace Names"
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Darbo sričių taisyklės" msgstr "Darbo sričių taisyklės"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Pridėti taisyklę" msgstr "Pridėti taisyklę"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Laikmenos „%s“ išstūmimas nepavyko:" msgstr "Laikmenos „%s“ išstūmimas nepavyko:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Išimami įrenginiai" msgstr "Išimami įrenginiai"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Atverti failai" msgstr "Atverti failai"
@@ -111,8 +101,8 @@ msgstr ""
"nepaisant numatyto talpinimo apačioje. Pakeitus šiuos nustatymus, reikės " "nepaisant numatyto talpinimo apačioje. Pakeitus šiuos nustatymus, reikės "
"paleisti apvalkalą iš naujo." "paleisti apvalkalą iš naujo."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Vietos" msgstr "Vietos"
@@ -155,47 +145,47 @@ msgstr "Temos pavadinimas"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Temos pavadinimas, kuri bus įkrauta iš ~/.themes/name/gnome-shell" msgstr "Temos pavadinimas, kuri bus įkrauta iš ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Užverti" msgstr "Užverti"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Grąžinti iš sumažinimo" msgstr "Grąžinti iš sumažinimo"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Sumažinti" msgstr "Sumažinti"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Grąžinti iš išdidinimo" msgstr "Grąžinti iš išdidinimo"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Išdidinti" msgstr "Išdidinti"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Sumažinti visus" msgstr "Sumažinti visus"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Grąžinti visus iš sumažinimo" msgstr "Grąžinti visus iš sumažinimo"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Išdidinti visus" msgstr "Išdidinti visus"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Grąžinti visus iš išdidinimo" msgstr "Grąžinti visus iš išdidinimo"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Užverti visus" msgstr "Užverti visus"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Langų sąrašas" msgstr "Langų sąrašas"
@@ -212,7 +202,7 @@ msgstr ""
"vertės yra „never“, „auto“ ir „always“." "vertės yra „never“, „auto“ ir „always“."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Rodyti visų darbo sričių langus" msgstr "Rodyti visų darbo sričių langus"
@@ -232,41 +222,42 @@ msgstr ""
"Ar rodyti langų sąrašą visuose prijungtuose monitoriuose, ar tik " "Ar rodyti langų sąrašą visuose prijungtuose monitoriuose, ar tik "
"pagrindiniame." "pagrindiniame."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Langų grupavimas" msgstr "Langų grupavimas"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Niekada negrupuoti langų" msgstr "Niekada negrupuoti langų"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Grupuoti langus, kai yra ribotai vietos" msgstr "Grupuoti langus, kai yra ribotai vietos"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Visada grupuoti langus" msgstr "Visada grupuoti langus"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Rodyti visuose monitoriuose" msgstr "Rodyti visuose monitoriuose"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Darbo srities indikatorius" msgstr "Darbo srities indikatorius"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Darbo sričių pavadinimai" msgstr "Darbo sričių pavadinimai"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Darbo sritis %d" msgstr "Darbo sritis %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
#| msgid "Workspace"
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Pridėti darbo sritį" msgstr "Pridėti darbo sritį"

View File

@@ -3,48 +3,37 @@
# #
# #
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012. # Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2017, 2019, 2020, 2022. # Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2017, 2019, 2020.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/is" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/is"
"sues\n" "sues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-24 22:15+0200\n" "PO-Revision-Date: 2020-09-12 12:05+0300\n"
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n" "Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n" "Language: lv\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 21.08.1\n" "X-Generator: Lokalize 19.12.3\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :"
" 2);\n" " 2);\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Klasiskais GNOME" msgstr "Klasiskais GNOME"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Šī sesija ieraksta jūs klasiskajā GNOME vidē" msgstr "Šī sesija ieraksta jūs klasiskajā GNOME vidē"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
#| msgid "GNOME Classic"
msgid "GNOME Classic on Wayland"
msgstr "Klasiskais GNOME ar Wayland"
#: data/gnome-classic-xorg.desktop.in:3
#| msgid "GNOME Classic"
msgid "GNOME Classic on Xorg"
msgstr "Klasiskais GNOME ar Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Izlase" msgstr "Izlase"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Lietotnes" msgstr "Lietotnes"
@@ -60,26 +49,27 @@ msgstr ""
"Saraksts ar virknēm, kas katra satur lietotnes id (darbvirsmas datnes " "Saraksts ar virknēm, kas katra satur lietotnes id (darbvirsmas datnes "
"nosaukums), kam seko kols un darbvietas numurs" "nosaukums), kam seko kols un darbvietas numurs"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
#| msgid "Workspace Names"
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Darbvietu kārtulas" msgstr "Darbvietu kārtulas"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Pievienot kārtulu" msgstr "Pievienot kārtulu"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Neizdevās izgrūst dzini “%s”:" msgstr "Neizdevās izgrūst dzini “%s”:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Izņemamās ierīces" msgstr "Izņemamās ierīces"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Atvērt datnes" msgstr "Atvērt datnes"
@@ -112,8 +102,8 @@ msgstr ""
"noklusēto novietojumu (apakšā). Lai šī iestatījuma izmaiņas stātos spēkā, " "noklusēto novietojumu (apakšā). Lai šī iestatījuma izmaiņas stātos spēkā, "
"jāpārstartē čaula." "jāpārstartē čaula."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Vietas" msgstr "Vietas"
@@ -156,47 +146,47 @@ msgstr "Motīva nosaukums"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Motīva nosaukums, ko ielādēt no ~/.themes/name/gnome-shell" msgstr "Motīva nosaukums, ko ielādēt no ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Aizvērt" msgstr "Aizvērt"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Atminimizēt" msgstr "Atminimizēt"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimizēt" msgstr "Minimizēt"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Atjaunot" msgstr "Atjaunot"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maksimizēt" msgstr "Maksimizēt"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimizēt visus" msgstr "Minimizēt visus"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Atminimizēt visus" msgstr "Atminimizēt visus"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maksimizēt visus" msgstr "Maksimizēt visus"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Atmaksimizēt visus" msgstr "Atmaksimizēt visus"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Aizvērt visu" msgstr "Aizvērt visu"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Logu saraksts" msgstr "Logu saraksts"
@@ -213,7 +203,7 @@ msgstr ""
"vērtības ir “never”, “auto” un “always”." "vērtības ir “never”, “auto” un “always”."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Rādīt logus no visām darba vietām" msgstr "Rādīt logus no visām darba vietām"
@@ -233,41 +223,42 @@ msgstr ""
"Vai logu sarakstu rādītu uz visiem pievienotajiem monitoriem, vai tikai uz " "Vai logu sarakstu rādītu uz visiem pievienotajiem monitoriem, vai tikai uz "
"primārā." "primārā."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Logu grupēšana" msgstr "Logu grupēšana"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Nekad negrupēt logus" msgstr "Nekad negrupēt logus"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Grupēt logus, kad vieta ir ierobežota" msgstr "Grupēt logus, kad vieta ir ierobežota"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Vienmēr grupēt logus" msgstr "Vienmēr grupēt logus"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Rādīt uz visiem monitoriem" msgstr "Rādīt uz visiem monitoriem"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Darbvietu indikators" msgstr "Darbvietu indikators"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Darbvietu nosaukumi" msgstr "Darbvietu nosaukumi"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Darbvieta %d" msgstr "Darbvieta %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
#| msgid "Workspace"
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Pievienot darbvietu" msgstr "Pievienot darbvietu"

147
po/ne.po
View File

@@ -6,41 +6,33 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extension gnome 3.14\n" "Project-Id-Version: gnome-shell-extension gnome 3.14\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues\n" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"POT-Creation-Date: 2022-07-10 12:54+0000\n" "issues\n"
"PO-Revision-Date: 2022-09-08 02:59+0545\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-05-01 11:32+0545\n"
"Last-Translator: Pawan Chitrakar <chautari@gmail.com>\n" "Last-Translator: Pawan Chitrakar <chautari@gmail.com>\n"
"Language-Team: Nepali Translation Team <chautari@gmail.com>\n" "Language-Team: Nepali Translation Team <chautari@gmail.com>\n"
"Language: ne\n" "Language: ne\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.4.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n"
"X-Poedit-SourceCharset: UTF-8\n" "X-Poedit-SourceCharset: UTF-8\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "जिनोम क्लासिक" msgstr "जिनोम क्लासिक"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "यो सेसन जिनोम क्लासिकमा लगईन हुन्छ" msgstr "यो सेसन जिनोम क्लासिकमा लगईन हुन्छ"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "वेल्याण्डमा जिनोम क्लासिक"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Xorg मा जिनोम क्लासिक"
#: extensions/apps-menu/extension.js:118
msgid "Favorites" msgid "Favorites"
msgstr "मनपर्ने" msgstr "मनपर्ने"
#: extensions/apps-menu/extension.js:379 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "अनुप्रयोग" msgstr "अनुप्रयोग"
@@ -50,31 +42,32 @@ msgstr "अनुप्रयोग र कार्यस्थल सूची
#: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:7 #: extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml:7
msgid "" msgid ""
"A list of strings, each containing an application id (desktop file name), followed by a colon " "A list of strings, each containing an application id (desktop file name), "
"and the workspace number" "followed by a colon and the workspace number"
msgstr "" msgstr ""
"स्ट्रिङहरूको सूची, प्रत्येकमा अनुप्रयोग आईडी (डेस्कटप फाइल नाम) समाविष्ट छ, त्यसपछि विराम र कार्यस्थान " "स्ट्रिङहरूको सूची, प्रत्येकमा अनुप्रयोग आईडी (डेस्कटप फाइल नाम) समाविष्ट छ, त्यसपछि "
"नम्बरद्वारा अनुगमन गरियो" "विराम र कार्यस्थान नम्बरद्वारा अनुगमन गरियो"
#: extensions/auto-move-windows/prefs.js:152 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "कार्यस्थान नियम" msgstr "कार्यस्थान नियम"
#: extensions/auto-move-windows/prefs.js:306 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "नियम थप्नुहोस्" msgstr "नियम थप्नुहोस्"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:126 extensions/places-menu/placeDisplay.js:210 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "\"%s\" ड्राइभ निकाल्न असफल भयो:" msgstr "\"%s\" ड्राइभ निकाल्न असफल भयो:"
#: extensions/drive-menu/extension.js:145 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "छुट्याउन मिल्ने यन्त्र" msgstr "छुट्याउन मिल्ने यन्त्र"
#: extensions/drive-menu/extension.js:167 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "खुला फाइल" msgstr "खुला फाइल"
@@ -84,12 +77,13 @@ msgstr "सञ्झ्यालका लागि बढी पर्दा
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:6
msgid "" msgid ""
"Try to use more screen for placing window thumbnails by adapting to screen aspect ratio, and " "Try to use more screen for placing window thumbnails by adapting to screen "
"consolidating them further to reduce the bounding box. This setting applies only with the " "aspect ratio, and consolidating them further to reduce the bounding box. "
"natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"सञ्झ्याल थम्बनेलहरू पर्दा आकार अनुपातमा अनुकूल गरेर राख्नका लागि धेरै पर्दा प्रयोग गर्न प्रयास गर्नुहोस्, र " "सञ्झ्याल थम्बनेलहरू पर्दा आकार अनुपातमा अनुकूल गरेर राख्नका लागि धेरै पर्दा प्रयोग गर्न "
"तिनीहरूलाई बाउन्डिङ बाकस घटाउन अझ संगठित गर्नुहोस् । यो तरिका प्राकृतिक प्लेसमेन्ट रणनीतिमा मात्र लागू हुन्छ।" "प्रयास गर्नुहोस्, र तिनीहरूलाई बाउन्डिङ बाकस घटाउन अझ संगठित गर्नुहोस् । यो तरिका "
"प्राकृतिक प्लेसमेन्ट रणनीतिमा मात्र लागू हुन्छ।"
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
msgid "Place window captions on top" msgid "Place window captions on top"
@@ -97,36 +91,39 @@ msgstr "सञ्झ्याल क्याप्सन माथि राख
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12
msgid "" msgid ""
"If true, place window captions on top the respective thumbnail, overriding shell default of " "If true, place window captions on top the respective thumbnail, overriding "
"placing it at the bottom. Changing this setting requires restarting the shell to have any " "shell default of placing it at the bottom. Changing this setting requires "
"effect." "restarting the shell to have any effect."
msgstr "" msgstr ""
"ठीक भएमा, सम्बन्धित थम्बनेलको माथि सञ्झ्याल क्याप्सन राख्नुहोस्, यसलाई तल राख्ने पूर्वनिर्धारित शेल अधिलेखन " "ठीक भएमा, सम्बन्धित थम्बनेलको माथि सञ्झ्याल क्याप्सन राख्नुहोस्, यसलाई तल राख्ने "
"गर्नुहोस् । यो सेटिङ परिवर्तन गर्न कुनै प्रभाव पार्न शेल पुन: सुरुआत गर्नु आवश्यक हुन्छ ।" "पूर्वनिर्धारित शेल अधिलेखन गर्नुहोस् । यो सेटिङ परिवर्तन गर्न कुनै प्रभाव पार्न शेल पुन: "
"सुरुआत गर्नु आवश्यक हुन्छ ।"
#: extensions/places-menu/extension.js:94 extensions/places-menu/extension.js:97 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "ठाउँहरू" msgstr "ठाउँहरू"
#: extensions/places-menu/placeDisplay.js:49 #: extensions/places-menu/placeDisplay.js:46
#, javascript-format #, javascript-format
msgid "Failed to launch “%s”" msgid "Failed to launch “%s”"
msgstr "%s सुरु गर्न असफल" msgstr "%s सुरु गर्न असफल"
#: extensions/places-menu/placeDisplay.js:64 #: extensions/places-menu/placeDisplay.js:61
#, javascript-format #, javascript-format
msgid "Failed to mount volume for “%s”" msgid "Failed to mount volume for “%s”"
msgstr "\"%s\" का लागि भोल्युम माउन्ट गर्न असफल" msgstr "\"%s\" का लागि भोल्युम माउन्ट गर्न असफल"
#: extensions/places-menu/placeDisplay.js:125 extensions/places-menu/placeDisplay.js:148 #: extensions/places-menu/placeDisplay.js:148
#: extensions/places-menu/placeDisplay.js:171
msgid "Computer" msgid "Computer"
msgstr "कम्प्युटर" msgstr "कम्प्युटर"
#: extensions/places-menu/placeDisplay.js:336 #: extensions/places-menu/placeDisplay.js:359
msgid "Home" msgid "Home"
msgstr "गृह" msgstr "गृह"
#: extensions/places-menu/placeDisplay.js:381 #: extensions/places-menu/placeDisplay.js:404
msgid "Browse Network" msgid "Browse Network"
msgstr "सञ्जाल ब्राउज गर्नुहोस्" msgstr "सञ्जाल ब्राउज गर्नुहोस्"
@@ -146,47 +143,47 @@ msgstr "सारभूत नाम"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "~/.themes/name/gnome-shell बाट लोड गरिनुपर्ने विषयवस्तुको नाम" msgstr "~/.themes/name/gnome-shell बाट लोड गरिनुपर्ने विषयवस्तुको नाम"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "बन्द" msgstr "बन्द"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "न्यूनतम नबनाउनुहोस्" msgstr "न्यूनतम नबनाउनुहोस्"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "सानो बनाउनुहोस्" msgstr "सानो बनाउनुहोस्"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "अघिकतम नबनाउनुहोस्" msgstr "अघिकतम नबनाउनुहोस्"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "ठूलो बनाउनुहोस्" msgstr "ठूलो बनाउनुहोस्"
#: extensions/window-list/extension.js:483 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "सबै सानो बनाउनुहोस्" msgstr "सबै सानो बनाउनुहोस्"
#: extensions/window-list/extension.js:489 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "सबै न्यूनतम नबनाउनुहोस्" msgstr "सबै न्यूनतम नबनाउनुहोस्"
#: extensions/window-list/extension.js:495 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "सबै ठूलो बनाउनुहोस्" msgstr "सबै ठूलो बनाउनुहोस्"
#: extensions/window-list/extension.js:503 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "सबैलाई अघिकतम नबनाउनुहोस्" msgstr "सबैलाई अघिकतम नबनाउनुहोस्"
#: extensions/window-list/extension.js:511 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "सबै बन्द गर्नुहोस्" msgstr "सबै बन्द गर्नुहोस्"
#: extensions/window-list/extension.js:795 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "सञ्झ्याल सूची" msgstr "सञ्झ्याल सूची"
@@ -196,14 +193,14 @@ msgstr "कहिले सञ्झ्याल समुहबध्द गर
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
msgid "" msgid ""
"Decides when to group windows from the same application on the window list. Possible values are " "Decides when to group windows from the same application on the window list. "
"“never”, “auto” and “always”." "Possible values are “never”, “auto” and “always”."
msgstr "" msgstr ""
"सञ्झ्याल सूचीमा उस्तै अनुप्रयोगबाट कहिले समूह बनाउने निर्णय गर्दछ । सम्भावित मान \"कहिले पनि\", \"स्वचालित\" र " "सञ्झ्याल सूचीमा उस्तै अनुप्रयोगबाट कहिले समूह बनाउने निर्णय गर्दछ । सम्भावित मान \"कहिले "
"\"सधैँ\" हुन् ।" "पनि\", \"स्वचालित\" र \"सधैँ\" हुन् ।"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "सबै कार्यस्थानबाट सन्झ्याल देखाउनुहोस्" msgstr "सबै कार्यस्थानबाट सन्झ्याल देखाउनुहोस्"
@@ -216,44 +213,48 @@ msgid "Show the window list on all monitors"
msgstr "सबै मोनिटरमा सञ्झ्याल सूची देखाउनुहोस्" msgstr "सबै मोनिटरमा सञ्झ्याल सूची देखाउनुहोस्"
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:28
msgid "Whether to show the window list on all connected monitors or only on the primary one." msgid ""
msgstr "सबै जडान गरिएको मोनिटरमा वा प्राथमिक मोनिटरमा मात्र सञ्झ्याल सूची देखाउने या नदेखाउने ।" "Whether to show the window list on all connected monitors or only on the "
"primary one."
msgstr ""
"सबै जडान गरिएको मोनिटरमा वा प्राथमिक मोनिटरमा मात्र सञ्झ्याल सूची देखाउने या नदेखाउने "
"।"
#: extensions/window-list/prefs.js:35 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "समूहबद्ध सञ्झ्याल" msgstr "समूहबद्ध सञ्झ्याल"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "सञ्झ्याल समुहबध्द नगर्ने" msgstr "सञ्झ्याल समुहबध्द नगर्ने"
#: extensions/window-list/prefs.js:41 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "खाली स्थान सिमित भएको बेलामा सञ्झ्यालहरू समूह गर्नुहोस्" msgstr "खाली स्थान सिमित भएको बेलामा सञ्झ्यालहरू समूह गर्नुहोस्"
#: extensions/window-list/prefs.js:42 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "सञ्झ्याल सधैँ समुहबध्द गर्ने" msgstr "सञ्झ्याल सधैँ समुहबध्द गर्ने"
#: extensions/window-list/prefs.js:66 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "सबै मोनिटरमा देखाउनुहोस्" msgstr "सबै मोनिटरमा देखाउनुहोस्"
#: extensions/window-list/workspaceIndicator.js:261 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:266 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "कार्यस्थान सूचक" msgstr "कार्यस्थान सूचक"
#: extensions/workspace-indicator/prefs.js:62 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names"
msgstr "कार्यस्थल नाम"
#: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "कार्यस्थल %d" msgstr "कार्यस्थल %d"
#: extensions/workspace-indicator/prefs.js:129 #: extensions/workspace-indicator/prefs.js:218
msgid "Workspace Names"
msgstr "कार्यस्थल नाम"
#: extensions/workspace-indicator/prefs.js:255
msgid "Add Workspace" msgid "Add Workspace"
msgstr "कार्यस्थल थप्नुहोस्" msgstr "कार्यस्थल थप्नुहोस्"

View File

@@ -2,47 +2,38 @@
# Copyright (C) 2013 gnome-shell-extensions's COPYRIGHT HOLDER # Copyright (C) 2013 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package. # This file is distributed under the same license as the gnome-shell-extensions package.
# Reinout van Schouwen <reinouts@gnome.org>, 2013, 2014. # Reinout van Schouwen <reinouts@gnome.org>, 2013, 2014.
# Nathan Follens <nfollens@gnome.org>, 2015-2017, 2019-2020, 2022. # Nathan Follens <nthn@unseen.is>, 2015-2017, 2019-2020.
# Hannie Dumoleyn <hannie@ubuntu-nl.org>, 2015. # Hannie Dumoleyn <hannie@ubuntu-nl.org>, 2015.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2022-03-25 12:43+0100\n" "PO-Revision-Date: 2020-08-25 17:37+0200\n"
"Last-Translator: Nathan Follens <nfollens@gnome.org>\n" "Last-Translator: Nathan Follens <nthn@unseen.is>\n"
"Language-Team: Dutch <gnome-nl-list@gnome.org>\n" "Language-Team: Dutch <gnome-nl-list@gnome.org>\n"
"Language: nl\n" "Language: nl\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 2.4.1\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "Gnome klassiek" msgstr "Gnome klassiek"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Deze sessie meldt u aan bij Gnome klassiek" msgstr "Deze sessie meldt u aan bij Gnome klassiek"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "Gnome klassiek op Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "Gnome klassiek op Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favorieten" msgstr "Favorieten"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Toepassingen" msgstr "Toepassingen"
@@ -58,26 +49,26 @@ msgstr ""
"Een lijst van tekenreeksen, elk bestaande uit een toepassings-id (desktop-" "Een lijst van tekenreeksen, elk bestaande uit een toepassings-id (desktop-"
"bestandsnaam), gevolgd door een dubbele punt en het werkbladnummer" "bestandsnaam), gevolgd door een dubbele punt en het werkbladnummer"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Werkbladregels" msgstr "Werkbladregels"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Regel toevoegen" msgstr "Regel toevoegen"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "Uitwerpen van station %s mislukt:" msgstr "Uitwerpen van station %s mislukt:"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Verwijderbare apparaten" msgstr "Verwijderbare apparaten"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Bestanden openen" msgstr "Bestanden openen"
@@ -111,8 +102,8 @@ msgstr ""
"wordt. Het wijzigen van deze instelling vereist het herstarten van de shell " "wordt. Het wijzigen van deze instelling vereist het herstarten van de shell "
"om effect te sorteren." "om effect te sorteren."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Locaties" msgstr "Locaties"
@@ -155,47 +146,47 @@ msgstr "Themanaam"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "De naam van het thema, te laden vanuit ~/.themes/name/gnome-shell" msgstr "De naam van het thema, te laden vanuit ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Sluiten" msgstr "Sluiten"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Zichtbaar maken" msgstr "Zichtbaar maken"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Minimaliseren" msgstr "Minimaliseren"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Herstellen" msgstr "Herstellen"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximaliseren" msgstr "Maximaliseren"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Alles minimaliseren" msgstr "Alles minimaliseren"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Alles zichtbaar maken" msgstr "Alles zichtbaar maken"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Alles maximaliseren" msgstr "Alles maximaliseren"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Alles herstellen" msgstr "Alles herstellen"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Alles sluiten" msgstr "Alles sluiten"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Vensterlijst" msgstr "Vensterlijst"
@@ -213,7 +204,7 @@ msgstr ""
"always (altijd)." "always (altijd)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Vensters van alle werkbladen tonen" msgstr "Vensters van alle werkbladen tonen"
@@ -235,41 +226,41 @@ msgstr ""
"Bepaalt of de vensterlijst op alle verbonden beeldschermen of enkel op het " "Bepaalt of de vensterlijst op alle verbonden beeldschermen of enkel op het "
"primaire beeldscherm wordt weergegeven." "primaire beeldscherm wordt weergegeven."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Venstergroepering" msgstr "Venstergroepering"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Vensters nooit groeperen" msgstr "Vensters nooit groeperen"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Vensters groeperen wanneer de ruimte beperkt is" msgstr "Vensters groeperen wanneer de ruimte beperkt is"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Vensters altijd groeperen" msgstr "Vensters altijd groeperen"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Tonen op alle beeldschermen" msgstr "Tonen op alle beeldschermen"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Werkbladindicator" msgstr "Werkbladindicator"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Werkbladnamen" msgstr "Werkbladnamen"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Werkblad %d" msgstr "Werkblad %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Werkblad toevoegen" msgstr "Werkblad toevoegen"

View File

@@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n" "Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
"issues\n" "issues\n"
"POT-Creation-Date: 2021-11-06 14:08+0000\n" "POT-Creation-Date: 2020-05-28 00:55+0000\n"
"PO-Revision-Date: 2021-11-07 20:53+0100\n" "PO-Revision-Date: 2021-05-10 22:04+0200\n"
"Last-Translator: Quentin PAGÈS\n" "Last-Translator: Quentin PAGÈS\n"
"Language-Team: Tot En Òc\n" "Language-Team: Tot En Òc\n"
"Language: oc\n" "Language: oc\n"
@@ -17,31 +17,22 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 2.4.3\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
msgstr "GNOME Classic" msgstr "GNOME Classic"
#: data/gnome-classic.desktop.in:4 data/gnome-classic-wayland.desktop.in:4 #: data/gnome-classic.desktop.in:4
#: data/gnome-classic-xorg.desktop.in:4
msgid "This session logs you into GNOME Classic" msgid "This session logs you into GNOME Classic"
msgstr "Aquesta session vos connècta a GNOME Classic" msgstr "Aquesta session vos connècta a GNOME Classic"
#: data/gnome-classic-wayland.desktop.in:3 #: extensions/apps-menu/extension.js:113
msgid "GNOME Classic on Wayland"
msgstr "GNOME Classic sus Wayland"
#: data/gnome-classic-xorg.desktop.in:3
msgid "GNOME Classic on Xorg"
msgstr "GNOME Classic sus Xorg"
#: extensions/apps-menu/extension.js:112
msgid "Favorites" msgid "Favorites"
msgstr "Favorits" msgstr "Favorits"
#: extensions/apps-menu/extension.js:366 #: extensions/apps-menu/extension.js:369
msgid "Applications" msgid "Applications"
msgstr "Aplicacions" msgstr "Aplicacions"
@@ -58,26 +49,26 @@ msgstr ""
"d'aplicacion (nom de fichièr desktop), seguit per un dos-punts e lo numèro " "d'aplicacion (nom de fichièr desktop), seguit per un dos-punts e lo numèro "
"de l'espaci de trabalh" "de l'espaci de trabalh"
#: extensions/auto-move-windows/prefs.js:34 #: extensions/auto-move-windows/prefs.js:35
msgid "Workspace Rules" msgid "Workspace Rules"
msgstr "Règlas dels espacis de trabalh" msgstr "Règlas dels espacis de trabalh"
#: extensions/auto-move-windows/prefs.js:236 #: extensions/auto-move-windows/prefs.js:243
msgid "Add Rule" msgid "Add Rule"
msgstr "Apondre una règla" msgstr "Apondre una règla"
#. TRANSLATORS: %s is the filesystem name #. TRANSLATORS: %s is the filesystem name
#: extensions/drive-menu/extension.js:133 #: extensions/drive-menu/extension.js:112
#: extensions/places-menu/placeDisplay.js:233 #: extensions/places-menu/placeDisplay.js:233
#, javascript-format #, javascript-format
msgid "Ejecting drive “%s” failed:" msgid "Ejecting drive “%s” failed:"
msgstr "L'ejeccion del disc « %s » a fracassat :" msgstr "L'ejeccion del disc « %s » a fracassat :"
#: extensions/drive-menu/extension.js:149 #: extensions/drive-menu/extension.js:128
msgid "Removable devices" msgid "Removable devices"
msgstr "Periferics amovibles" msgstr "Periferics amovibles"
#: extensions/drive-menu/extension.js:171 #: extensions/drive-menu/extension.js:155
msgid "Open Files" msgid "Open Files"
msgstr "Dobrir Fichièrs" msgstr "Dobrir Fichièrs"
@@ -110,8 +101,8 @@ msgstr ""
"correspondenta, aquò remplaça lo comportament per defaut que los plaça en " "correspondenta, aquò remplaça lo comportament per defaut que los plaça en "
"dejós. Per qu'aqueste paramètre siá pres en compte, cal reaviar lo Shell." "dejós. Per qu'aqueste paramètre siá pres en compte, cal reaviar lo Shell."
#: extensions/places-menu/extension.js:88 #: extensions/places-menu/extension.js:89
#: extensions/places-menu/extension.js:91 #: extensions/places-menu/extension.js:93
msgid "Places" msgid "Places"
msgstr "Emplaçaments" msgstr "Emplaçaments"
@@ -154,47 +145,47 @@ msgstr "Nom del tèma"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell" msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Lo nom del tèma, de cargar a partir de ~/.themes/name/gnome-shell" msgstr "Lo nom del tèma, de cargar a partir de ~/.themes/name/gnome-shell"
#: extensions/window-list/extension.js:72 #: extensions/window-list/extension.js:98
msgid "Close" msgid "Close"
msgstr "Tampar" msgstr "Tampar"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Unminimize" msgid "Unminimize"
msgstr "Restablir" msgstr "Restablir"
#: extensions/window-list/extension.js:92 #: extensions/window-list/extension.js:118
msgid "Minimize" msgid "Minimize"
msgstr "Reduire" msgstr "Reduire"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Restablir" msgstr "Restablir"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:125
msgid "Maximize" msgid "Maximize"
msgstr "Maximizar" msgstr "Maximizar"
#: extensions/window-list/extension.js:434 #: extensions/window-list/extension.js:428
msgid "Minimize all" msgid "Minimize all"
msgstr "Reduire tot" msgstr "Reduire tot"
#: extensions/window-list/extension.js:440 #: extensions/window-list/extension.js:434
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Restablir tot" msgstr "Restablir tot"
#: extensions/window-list/extension.js:446 #: extensions/window-list/extension.js:440
msgid "Maximize all" msgid "Maximize all"
msgstr "Maximizar tot" msgstr "Maximizar tot"
#: extensions/window-list/extension.js:454 #: extensions/window-list/extension.js:448
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Restablir tot" msgstr "Restablir tot"
#: extensions/window-list/extension.js:462 #: extensions/window-list/extension.js:456
msgid "Close all" msgid "Close all"
msgstr "Tampar tot" msgstr "Tampar tot"
#: extensions/window-list/extension.js:741 #: extensions/window-list/extension.js:734
msgid "Window List" msgid "Window List"
msgstr "Lista de fenèstras" msgstr "Lista de fenèstras"
@@ -212,7 +203,7 @@ msgstr ""
"« always » (totjorn)." "« always » (totjorn)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
#: extensions/window-list/prefs.js:86 #: extensions/window-list/prefs.js:100
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Afichar las fenèstras de totes los espacis de trabalh" msgstr "Afichar las fenèstras de totes los espacis de trabalh"
@@ -234,41 +225,41 @@ msgstr ""
"Indica se cal afichar la lista de las fenèstras sus totes los ecrans " "Indica se cal afichar la lista de las fenèstras sus totes los ecrans "
"connectats o solament l'ecran principal." "connectats o solament l'ecran principal."
#: extensions/window-list/prefs.js:39 #: extensions/window-list/prefs.js:29
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Regropament de fenèstras" msgstr "Regropament de fenèstras"
#: extensions/window-list/prefs.js:63 #: extensions/window-list/prefs.js:58
msgid "Never group windows" msgid "Never group windows"
msgstr "Regropar pas jamai las fenèstras" msgstr "Regropar pas jamai las fenèstras"
#: extensions/window-list/prefs.js:64 #: extensions/window-list/prefs.js:59
msgid "Group windows when space is limited" msgid "Group windows when space is limited"
msgstr "Regropar las fenèstras quand l'espaci es limitat" msgstr "Regropar las fenèstras quand l'espaci es limitat"
#: extensions/window-list/prefs.js:65 #: extensions/window-list/prefs.js:60
msgid "Always group windows" msgid "Always group windows"
msgstr "Regropar totjorn las fenèstras" msgstr "Regropar totjorn las fenèstras"
#: extensions/window-list/prefs.js:81 #: extensions/window-list/prefs.js:94
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Afichar sus totes los ecrans" msgstr "Afichar sus totes los ecrans"
#: extensions/window-list/workspaceIndicator.js:249 #: extensions/window-list/workspaceIndicator.js:207
#: extensions/workspace-indicator/extension.js:254 #: extensions/workspace-indicator/extension.js:213
msgid "Workspace Indicator" msgid "Workspace Indicator"
msgstr "Indicator d'espaci de trabalh" msgstr "Indicator d'espaci de trabalh"
#: extensions/workspace-indicator/prefs.js:33 #: extensions/workspace-indicator/prefs.js:34
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Noms dels espacis de trabalh" msgstr "Noms dels espacis de trabalh"
#: extensions/workspace-indicator/prefs.js:66 #: extensions/workspace-indicator/prefs.js:67
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Espaci de trabalh %d" msgstr "Espaci de trabalh %d"
#: extensions/workspace-indicator/prefs.js:207 #: extensions/workspace-indicator/prefs.js:218
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Apondre un espaci de trabalh" msgstr "Apondre un espaci de trabalh"

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