Compare commits

...

27 Commits
48.3 ... 47.2

Author SHA1 Message Date
Florian Müllner
70e2a02e69 Bump version to 47.2
Update NEWS.
2024-11-25 16:14:41 +01:00
Florian Müllner
079daac9bb screenshot-window-sizer: Mention shortcut in description
Loosely based on the README entry, so users know how to actually use the
extension.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/541
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/358>
2024-11-25 15:43:54 +01:00
Florian Müllner
99d49c1800 places-menu: Inherit from PopupImageMenuItem
PopupImageMenuItems used to position the icon after the label,
so we ended up with our own icon+label items.

However the icon position was changed years ago in the shell, so
inherit from PopupImageMenuItem instead.

This does not only simplify the code a bit, but also pulls in
features we are currently missing, like a11y labelling.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/542
(cherry picked from commit 568826e489)
2024-11-25 14:19:07 +01:00
Florian Müllner
95c4bc5d87 build: Sync check-version script with gnome-shell
The script was updated to not require appstream-util to check for
a corresponding release element in metainfo.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/354>
(cherry picked from commit 1218aee87f)
2024-11-25 14:18:56 +01:00
Florian Müllner
451a12d1fd cleanup: Use consistent line break style in meson.build
Either have all arguments on the same line, or have a separate
line for every argument (that is, don't special-case the first
arg).

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 265935e14b)
2024-11-25 14:18:35 +01:00
Florian Müllner
48b917ab86 cleanup: Fix indent errors in meson.build
We are supposed to use a 2-space indent, but some inconsistencies
sneaked in over time.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit b903618050)
2024-11-25 14:18:00 +01:00
Florian Müllner
d273dc4e59 cleanup: Always use dangling commas in meson.build
This is meson's default formatting, and matches what we already
do in JS.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 720933b08e)
2024-11-25 14:17:53 +01:00
Florian Müllner
683080441f cleanup: Use format strings in meson.build
Those are a bit more concise than ''.format(), and have been
in meson for a long time.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 85ee8829bf)
2024-11-25 14:17:45 +01:00
Florian Müllner
5bbf7f5c6c build: Use SPDX identifier for license
Meson strongly recommends to use SPDX identifiers for the license
string, and there's no reason for us to not do so.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 6df4905286)
2024-11-25 14:17:35 +01:00
Florian Müllner
f30990535f extensions: Remove modelines
We already include an .editorconfig that is supported by many
editors, including emacs, so no need to repeat an emacs-specific
modeline in every source file.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 253ddb8642)
2024-11-25 14:17:25 +01:00
Florian Müllner
d14885f96d Add .editorconfig
This should ensure that all editors which support
https://editorconfig.org/ use the correct indentation
with spaces (not tabs) by default.

This is hardly a full specification of our coding style,
but it's a correct subset and better than nothing.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/353>
(cherry picked from commit 0ca156a2b6)
2024-11-25 14:15:52 +01:00
Марко Костић
0a153b78f9 Update Serbian translation 2024-11-04 07:15:02 +00:00
Nathan Follens
598007f994 Update Dutch translation 2024-10-27 22:37:35 +00:00
Fabio Tomat
06caed8c0c Update Friulian translation 2024-10-20 20:01:51 +00:00
Florian Müllner
9991f90804 Bump version to 47.1
Update NEWS.
2024-10-18 21:54:13 +02:00
Florian Müllner
0bc77ef7c9 build: Rename meson_options.txt to meson.options
The name is a bit cleaner, and has been the preferred option(!)
since meson 1.1.

Mutter recently updated the name, so follow suite.

The meson version bump shouldn't be an issue, given that several
hard dependencies like mutter and glib already require higher
versions.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/349>
(cherry picked from commit 1088435120)
2024-10-18 19:15:44 +02:00
Florian Müllner
099b2eeb49 cleanup: Use null for nick/blurb in ParamSpecs
As they are only used by gstreamer for gst-inspect & other tools.
Projects like mutter and gtk have already completely dropped them,
so follow their lead.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/347>
(cherry picked from commit 46a4fa0976)
2024-10-18 19:15:02 +02:00
Florian Müllner
b13984a752 export-zips: Use --destdir instead of custom prefix
meson skips some steps like schema compilation when DESTDIR is
set, so this is slightly more efficient.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/345>
(cherry picked from commit 8f75ccae34)
2024-10-17 20:59:07 +02:00
Florian Müllner
67cdd0bea2 window-list: Remove outdated style
A long time ago, the window list used to embed the bottom message
tray, which caused notifications to inherit the window-list's
font style.

Since that's no longer the case, we have no business in messing
with notification styling, so stop doing that.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/338>
(cherry picked from commit f1671bc206)
2024-10-17 20:56:38 +02:00
Florian Müllner
87a849c5af window-list: Switch to Adw.SwitchRow
libadwaita fixed the actionable implementation of Adw.SwitchRow,
so can use the convenience widget instead of composing our own.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/341>
(cherry picked from commit 548d7659e1)
2024-10-17 20:56:26 +02:00
Florian Müllner
f0bff952be window-list: Remove superfluous bindings
The setting is already bound to the switch via the corresponding action,
no need to also set up a binding.

In fact, the second binding is actively harmful, as it keeps the
connection alive until dispose, so the setting is reset on
garbage collection.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/341>
(cherry picked from commit 0162644041)
2024-10-17 20:56:18 +02:00
Florian Müllner
b3ff771a1d window-list: Add missing action
Commit 24ba03fe9 added a new setting, but forgot to create the
corresponding action.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/341>
(cherry picked from commit 062a3d21ab)
2024-10-17 20:56:09 +02:00
Florian Müllner
3ef718d34c window-list: Fix active state
Commit c72b8b21 fixed the styling of the active window's button,
but missed that the `active` property uses the style information
as well.

Adjust it to use the correct actor when checking for the style class.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/342>
(cherry picked from commit a5a92026ac)
2024-10-17 20:55:59 +02:00
Florian Müllner
fb2d87c1da window-list: Fix minimized styling
Commit 039c66e7b7 wrapped the button in a container to
animate transitions, but didn't adjust the `.minimized`
styling to still apply to the button (where it is
expected) rather than the wrapper.

Fix this just like commit c72b8b21 did for the
`.focused` styling.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/342>
(cherry picked from commit 28fd210f28)
2024-10-17 20:55:52 +02:00
Florian Müllner
6d3fbceec9 classic: Add missing top bar indicators
The only intended difference from the regular session is that the
date menu moves to the right. However in the meantime, gnome-shell
added a couple more (usually hidden) indicators, but we never
updated the session mode definition.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/339>
(cherry picked from commit 81aade6659)
2024-10-17 20:55:43 +02:00
Florian Müllner
4da312040b window-list: Don't recreate icons on theme changes
All icons use `StIcon`, which already updates itself correctly
on icon theme changes.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/337>
(cherry picked from commit d43abe0869)
2024-10-17 20:55:22 +02:00
Florian Müllner
89276cc184 window-list: Small stylesheet cleanup
The light stylesheet duplicates some declarations, and the
last occurrence matches what we already inherit from the
dark stylesheet.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/merge_requests/337>
(cherry picked from commit 860c56f83e)
2024-10-17 20:55:07 +02:00
28 changed files with 289 additions and 284 deletions

17
.editorconfig Normal file
View File

@@ -0,0 +1,17 @@
# SPDX-FileCopyrightText: 2024 Florian Müllner <fmuellner@gnome.org>
# SPDX-License-Identifier: CC0-1.0
root = true
[*]
charset = utf-8
end_of_line = lf
indent_style = space
trim_trailing_whitespace = true
[*.js]
indent_size = 4
[meson.build]
indent_size = 2

View File

@@ -20,9 +20,6 @@ need in gnome-shell.
Generally, we follow [GJS coding style][coding-style], which in short is: Generally, we follow [GJS coding style][coding-style], which in short is:
indent 4 spaces, no tabs, space after comma, no space after function call. indent 4 spaces, no tabs, space after comma, no space after function call.
The Emacs mode line for this
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
Imports should be at the top, in two groups, one for standard Imports should be at the top, in two groups, one for standard
imports (like imports.lang or imports.dbus) and introspection, 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

22
NEWS
View File

@@ -1,3 +1,25 @@
47.2
====
* places-menu: Fix a11y labelling [Florian; #542]
* screenshot-window-sizer: Mention shortcut in description [Florian; !358]
* Misc. bug fixes and cleanups [Florian; !353, !354]
Contributors:
Florian Müllner
Translators:
Fabio Tomat [fur], Nathan Follens [nl], Марко Костић [sr]
47.1
====
* classic: Add missing top-bar indicators [Florian; !339]
* window-list: Fix window state styling [Florian; !342]
* window-list: Fix "ignore-workspace" setting getting reset [Florian; !341]
* Misc. bug fixes and cleanups [Florian; !337, !338, !345, !347, !349]
Contributors:
Florian Müllner
47.0 47.0
==== ====

View File

@@ -5,6 +5,6 @@
"enabledExtensions": [@CLASSIC_EXTENSIONS@], "enabledExtensions": [@CLASSIC_EXTENSIONS@],
"panel": { "left": ["activities"], "panel": { "left": ["activities"],
"center": [], "center": [],
"right": ["a11y", "keyboard", "dateMenu", "quickSettings"] "right": ["screenRecording", "screenSharing", "dwellClick", "a11y", "keyboard", "dateMenu", "quickSettings"]
} }
} }

View File

@@ -10,33 +10,33 @@ session_desktops = [
session_desktop_base + '-wayland', session_desktop_base + '-wayland',
] ]
foreach name: session_desktops foreach name : session_desktops
session_desktop = name + '.desktop' session_desktop = name + '.desktop'
if name.endswith('-xorg') if name.endswith('-xorg')
session_instdir = xsessiondir session_instdir = xsessiondir
elif name.endswith('-wayland') elif name.endswith('-wayland')
session_instdir = wlsessiondir session_instdir = wlsessiondir
else else
# FIXME: The same target can not be copied into two directories. # FIXME: The same target can not be copied into two directories.
# There is a workaround in meson/session-post-install.py until proper # There is a workaround in meson/session-post-install.py until proper
# solution arises: # solution arises:
# https://github.com/mesonbuild/meson/issues/2416 # https://github.com/mesonbuild/meson/issues/2416
session_instdir = xsessiondir session_instdir = xsessiondir
#session_instdir = [ xesssiondir, wlsessiondir ] #session_instdir = [ xesssiondir, wlsessiondir ]
endif endif
i18n.merge_file( i18n.merge_file(
input: session_desktop + '.in', input: session_desktop + '.in',
output: session_desktop, output: session_desktop,
po_dir: '../po', po_dir: '../po',
install: true, install: true,
install_dir: session_instdir, install_dir: session_instdir,
type: 'desktop' type: 'desktop',
) )
endforeach endforeach
classic_uuids = [] classic_uuids = []
foreach e : classic_extensions foreach e : classic_extensions
classic_uuids += e + uuid_suffix classic_uuids += e + uuid_suffix
endforeach endforeach
mode_conf = configuration_data() mode_conf = configuration_data()
@@ -47,7 +47,7 @@ configure_file(
input: mode_file + '.in', input: mode_file + '.in',
output: mode_file, output: mode_file,
configuration: mode_conf, configuration: mode_conf,
install_dir: modedir install_dir: modedir,
) )
classic_override = '00_org.gnome.shell.extensions.classic.gschema.override' classic_override = '00_org.gnome.shell.extensions.classic.gschema.override'

View File

@@ -8,16 +8,16 @@ srcdir=`dirname $0`
srcdir=`(cd $srcdir && pwd)` srcdir=`(cd $srcdir && pwd)`
builddir=`mktemp -p $srcdir -d _build.XXXXXX` || exit 1 builddir=`mktemp -p $srcdir -d _build.XXXXXX` || exit 1
installdir=`mktemp -p $srcdir -d _install.XXXXXX` || exit 1 destdir=`mktemp -p $srcdir -d _dest.XXXXXX` || exit 1
meson setup --prefix=$installdir -Dextension_set=all $srcdir $builddir meson setup --prefix=/usr -Dextension_set=all $srcdir $builddir
meson install -C $builddir meson install --destdir $destdir -C $builddir
rm -rf $srcdir/zip-files rm -rf $srcdir/zip-files
mkdir $srcdir/zip-files mkdir $srcdir/zip-files
extensiondir=$installdir/share/gnome-shell/extensions extensiondir=$destdir/usr/share/gnome-shell/extensions
schemadir=$installdir/share/glib-2.0/schemas schemadir=$destdir/usr/share/glib-2.0/schemas
for f in $extensiondir/*; do for f in $extensiondir/*; do
name=`basename ${f%%@*}` name=`basename ${f%%@*}`
@@ -50,4 +50,4 @@ for f in $extensiondir/*; do
done done
rm -rf $builddir rm -rf $builddir
rm -rf $installdir rm -rf $destdir

View File

@@ -5,7 +5,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Atk from 'gi://Atk'; import Atk from 'gi://Atk';
import Clutter from 'gi://Clutter'; import Clutter from 'gi://Clutter';
import Gio from 'gi://Gio'; import Gio from 'gi://Gio';

View File

@@ -4,9 +4,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Start apps on custom workspaces
import Shell from 'gi://Shell'; import Shell from 'gi://Shell';
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js';

View File

@@ -3,9 +3,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Start apps on custom workspaces
import Adw from 'gi://Adw'; import Adw from 'gi://Adw';
import Gio from 'gi://Gio'; import Gio from 'gi://Gio';
import GLib from 'gi://GLib'; import GLib from 'gi://GLib';
@@ -45,11 +42,11 @@ class NewItemModel extends GObject.Object {
class Rule extends GObject.Object { class Rule extends GObject.Object {
static [GObject.properties] = { static [GObject.properties] = {
'app-info': GObject.ParamSpec.object( 'app-info': GObject.ParamSpec.object(
'app-info', 'app-info', 'app-info', 'app-info', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
Gio.DesktopAppInfo), Gio.DesktopAppInfo),
'workspace': GObject.ParamSpec.uint( 'workspace': GObject.ParamSpec.uint(
'workspace', 'workspace', 'workspace', 'workspace', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
1, WORKSPACE_MAX, 1), 1, WORKSPACE_MAX, 1),
}; };
@@ -196,7 +193,7 @@ class AutoMoveSettingsWidget extends Adw.PreferencesGroup {
class WorkspaceSelector extends Gtk.Widget { class WorkspaceSelector extends Gtk.Widget {
static [GObject.properties] = { static [GObject.properties] = {
'number': GObject.ParamSpec.uint( 'number': GObject.ParamSpec.uint(
'number', 'number', 'number', 'number', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
1, WORKSPACE_MAX, 1), 1, WORKSPACE_MAX, 1),
}; };

View File

@@ -16,18 +16,20 @@ foreach e : enabled_extensions
metadata_conf.set('gschemaname', 'org.gnome.shell.extensions.' + e) metadata_conf.set('gschemaname', 'org.gnome.shell.extensions.' + e)
metadata_conf.set('gettext_domain', gettext_domain) metadata_conf.set('gettext_domain', gettext_domain)
metadata_conf.set('shell_current', shell_version) metadata_conf.set('shell_current', shell_version)
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 = []
subdir(e) subdir(e)
install_data (extension_sources + extension_data, install_data(
install_dir: join_paths(extensiondir, uuid) extension_sources + extension_data,
install_dir: join_paths(extensiondir, uuid),
) )
endforeach endforeach
install_data (extension_schemas, install_data(extension_schemas, install_dir: schemadir)
install_dir: schemadir
)

View File

@@ -5,7 +5,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Clutter from 'gi://Clutter'; import Clutter from 'gi://Clutter';
import {Extension, InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js'; import {Extension, InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js';

View File

@@ -5,7 +5,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Clutter from 'gi://Clutter'; import Clutter from 'gi://Clutter';
import GObject from 'gi://GObject'; import GObject from 'gi://GObject';
import St from 'gi://St'; import St from 'gi://St';
@@ -20,32 +19,17 @@ import {PlacesManager} from './placeDisplay.js';
const N_ = x => x; const N_ = x => x;
const PLACE_ICON_SIZE = 16; class PlaceMenuItem extends PopupMenu.PopupImageMenuItem {
class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem {
static { static {
GObject.registerClass(this); GObject.registerClass(this);
} }
constructor(info) { constructor(info) {
super({ super(info.name, info.icon, {
style_class: 'place-menu-item', style_class: 'place-menu-item',
}); });
this._info = info; this._info = info;
this._icon = new St.Icon({
gicon: info.icon,
icon_size: PLACE_ICON_SIZE,
});
this.add_child(this._icon);
this._label = new St.Label({
text: info.name,
x_expand: true,
y_align: Clutter.ActorAlign.CENTER,
});
this.add_child(this._label);
if (info.isRemovable()) { if (info.isRemovable()) {
this._ejectIcon = new St.Icon({ this._ejectIcon = new St.Icon({
icon_name: 'media-eject-symbolic', icon_name: 'media-eject-symbolic',
@@ -70,8 +54,8 @@ class PlaceMenuItem extends PopupMenu.PopupBaseMenuItem {
} }
_propertiesChanged(info) { _propertiesChanged(info) {
this._icon.gicon = info.icon; this.setIcon(info.icon);
this._label.text = info.name; this.label.text = info.name;
} }
} }

View File

@@ -4,7 +4,7 @@
"settings-schema": "@gschemaname@", "settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@", "gettext-domain": "@gettext_domain@",
"name": "Screenshot Window Sizer", "name": "Screenshot Window Sizer",
"description": "Resize windows for GNOME Software screenshots", "description": "Resize windows for GNOME Software screenshots with Ctrl+Alt+s shortcut",
"shell-version": [ "@shell_current@" ], "shell-version": [ "@shell_current@" ],
"url": "@url@" "url": "@url@"
} }

View File

@@ -5,9 +5,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Load shell theme from ~/.local/share/themes/name/gnome-shell
import Gio from 'gi://Gio'; import Gio from 'gi://Gio';
import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js';

View File

@@ -2,8 +2,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// 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 */

View File

@@ -125,10 +125,6 @@ class WindowTitle extends St.BoxLayout {
this.label_actor.clutter_text.single_line_mode = true; this.label_actor.clutter_text.single_line_mode = true;
this.add_child(this.label_actor); this.add_child(this.label_actor);
this._textureCache = St.TextureCache.get_default();
this._textureCache.connectObject('icon-theme-changed',
() => this._updateIcon(), this);
this._metaWindow.connectObject( this._metaWindow.connectObject(
'notify::wm-class', 'notify::wm-class',
() => this._updateIcon(), GObject.ConnectFlags.AFTER, () => this._updateIcon(), GObject.ConnectFlags.AFTER,
@@ -176,7 +172,7 @@ class BaseButton extends DashItemContainer {
GTypeFlags: GObject.TypeFlags.ABSTRACT, GTypeFlags: GObject.TypeFlags.ABSTRACT,
Properties: { Properties: {
'ignore-workspace': GObject.ParamSpec.boolean( 'ignore-workspace': GObject.ParamSpec.boolean(
'ignore-workspace', 'ignore-workspace', 'ignore-workspace', 'ignore-workspace', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
false), false),
}, },
@@ -227,7 +223,7 @@ class BaseButton extends DashItemContainer {
} }
get active() { get active() {
return this.has_style_class_name('focused'); return this._button.has_style_class_name('focused');
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
@@ -453,9 +449,9 @@ class WindowButton extends BaseButton {
super._updateStyle(); super._updateStyle();
if (this.metaWindow.minimized) if (this.metaWindow.minimized)
this.add_style_class_name('minimized'); this._button.add_style_class_name('minimized');
else else
this.remove_style_class_name('minimized'); this._button.remove_style_class_name('minimized');
} }
_windowEnteredOrLeftMonitor(metaDisplay, monitorIndex, metaWindow) { _windowEnteredOrLeftMonitor(metaDisplay, monitorIndex, metaWindow) {
@@ -591,11 +587,6 @@ class AppButton extends BaseButton {
this._appContextMenu.actor.hide(); this._appContextMenu.actor.hide();
Main.uiGroup.add_child(this._appContextMenu.actor); Main.uiGroup.add_child(this._appContextMenu.actor);
this._textureCache = St.TextureCache.get_default();
this._textureCache.connectObject('icon-theme-changed', () => {
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
}, this);
this.app.connectObject('windows-changed', this.app.connectObject('windows-changed',
() => this._windowsChanged(), this); () => this._windowsChanged(), this);
this._windowsChanged(); this._windowsChanged();

View File

@@ -3,7 +3,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Adw from 'gi://Adw'; import Adw from 'gi://Adw';
import Gio from 'gi://Gio'; import Gio from 'gi://Gio';
import GLib from 'gi://GLib'; import GLib from 'gi://GLib';
@@ -30,6 +29,8 @@ class WindowListPrefsWidget extends Adw.PreferencesPage {
this._settings.create_action('show-on-all-monitors')); this._settings.create_action('show-on-all-monitors'));
this._actionGroup.add_action( this._actionGroup.add_action(
this._settings.create_action('display-all-workspaces')); this._settings.create_action('display-all-workspaces'));
this._actionGroup.add_action(
this._settings.create_action('embed-previews'));
const groupingGroup = new Adw.PreferencesGroup({ const groupingGroup = new Adw.PreferencesGroup({
title: _('Window Grouping'), title: _('Window Grouping'),
@@ -58,41 +59,22 @@ class WindowListPrefsWidget extends Adw.PreferencesPage {
const miscGroup = new Adw.PreferencesGroup(); const miscGroup = new Adw.PreferencesGroup();
this.add(miscGroup); this.add(miscGroup);
let toggle = new Gtk.Switch({ let row = new Adw.SwitchRow({
action_name: 'window-list.show-on-all-monitors',
valign: Gtk.Align.CENTER,
});
let row = new Adw.ActionRow({
title: _('Show on all monitors'), title: _('Show on all monitors'),
activatable_widget: toggle, action_name: 'window-list.show-on-all-monitors',
}); });
row.add_suffix(toggle);
miscGroup.add(row); miscGroup.add(row);
toggle = new Gtk.Switch({ row = new Adw.SwitchRow({
action_name: 'window-list.display-all-workspaces',
valign: Gtk.Align.CENTER,
});
this._settings.bind('display-all-workspaces',
toggle, 'active', Gio.SettingsBindFlags.DEFAULT);
row = new Adw.ActionRow({
title: _('Show windows from all workspaces'), title: _('Show windows from all workspaces'),
activatable_widget: toggle, action_name: 'window-list.display-all-workspaces',
}); });
row.add_suffix(toggle);
miscGroup.add(row); miscGroup.add(row);
toggle = new Gtk.Switch({ row = new Adw.SwitchRow({
action_name: 'window-list.embed-previews',
valign: Gtk.Align.CENTER,
});
this._settings.bind('embed-previews',
toggle, 'active', Gio.SettingsBindFlags.DEFAULT);
row = new Adw.ActionRow({
title: _('Show workspace previews'), title: _('Show workspace previews'),
activatable_widget: toggle, action_name: 'window-list.embed-previews',
}); });
row.add_suffix(toggle);
miscGroup.add(row); miscGroup.add(row);
} }
} }

View File

@@ -81,7 +81,3 @@
width: 24px; width: 24px;
height: 24px; height: 24px;
} }
.notification {
font-weight: normal;
}

View File

@@ -21,21 +21,11 @@
text-shadow: none; text-shadow: none;
} }
.bottom-panel .window-button > StWidget {
-st-natural-width: 18.7em;
max-width: 18.75em;
}
.window-button > StWidget { .window-button > StWidget {
color: #000; color: #000;
background-color: transparent; background-color: transparent;
} }
.window-button > StWidget {
-st-natural-width: 18.75em;
max-width: 18.75em;
}
.window-button:hover > StWidget { .window-button:hover > StWidget {
background-color: st-darken(#eee,5%); background-color: st-darken(#eee,5%);
} }

View File

@@ -6,7 +6,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
import Clutter from 'gi://Clutter'; import Clutter from 'gi://Clutter';
import Graphene from 'gi://Graphene'; import Graphene from 'gi://Graphene';
import St from 'gi://St'; import St from 'gi://St';

View File

@@ -3,7 +3,6 @@
// //
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
import Adw from 'gi://Adw'; import Adw from 'gi://Adw';
import Gio from 'gi://Gio'; import Gio from 'gi://Gio';
import GLib from 'gi://GLib'; import GLib from 'gi://GLib';

View File

@@ -113,11 +113,11 @@ class WorkspaceLayout extends Clutter.LayoutManager {
class WorkspaceThumbnail extends St.Button { class WorkspaceThumbnail extends St.Button {
static [GObject.properties] = { static [GObject.properties] = {
'active': GObject.ParamSpec.boolean( 'active': GObject.ParamSpec.boolean(
'active', '', '', 'active', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
false), false),
'show-label': GObject.ParamSpec.boolean( 'show-label': GObject.ParamSpec.boolean(
'show-label', '', '', 'show-label', null, null,
GObject.ParamFlags.READWRITE, GObject.ParamFlags.READWRITE,
false), false),
}; };
@@ -311,7 +311,7 @@ class WorkspaceThumbnail extends St.Button {
class WorkspacePreviews extends Clutter.Actor { class WorkspacePreviews extends Clutter.Actor {
static [GObject.properties] = { static [GObject.properties] = {
'show-labels': GObject.ParamSpec.boolean( 'show-labels': GObject.ParamSpec.boolean(
'show-labels', '', '', 'show-labels', null, null,
GObject.ParamFlags.READWRITE | GObject.ParamFlags.CONSTRUCT_ONLY, GObject.ParamFlags.READWRITE | GObject.ParamFlags.CONSTRUCT_ONLY,
false), false),
}; };

View File

@@ -2,10 +2,11 @@
# #
# SPDX-License-Identifier: GPL-2.0-or-later # SPDX-License-Identifier: GPL-2.0-or-later
project('gnome-shell-extensions', project(
version: '47.0', 'gnome-shell-extensions',
meson_version: '>= 0.58.0', version: '47.2',
license: 'GPL2+' meson_version: '>= 1.1.0',
license: 'GPL-2.0-or-later',
) )
gettext_domain = meson.project_name() gettext_domain = meson.project_name()
@@ -34,7 +35,7 @@ classic_extensions = [
'apps-menu', 'apps-menu',
'places-menu', 'places-menu',
'launch-new-instance', 'launch-new-instance',
'window-list' 'window-list',
] ]
default_extensions = classic_extensions default_extensions = classic_extensions
@@ -45,15 +46,11 @@ default_extensions += [
'status-icons', 'status-icons',
'system-monitor', 'system-monitor',
'windowsNavigator', 'windowsNavigator',
'workspace-indicator' 'workspace-indicator',
] ]
all_extensions = default_extensions all_extensions = default_extensions
all_extensions += [ all_extensions += ['auto-move-windows', 'native-window-placement', 'user-theme']
'auto-move-windows',
'native-window-placement',
'user-theme'
]
enabled_extensions = get_option('enable_extensions') enabled_extensions = get_option('enable_extensions')
@@ -72,11 +69,10 @@ endif
classic_mode_enabled = get_option('classic_mode') classic_mode_enabled = get_option('classic_mode')
if classic_mode_enabled if classic_mode_enabled
# Sanity check: Make sure all classic extensions are enabled # Sanity check: Make sure all classic extensions are enabled
foreach e : classic_extensions foreach e : classic_extensions
if not enabled_extensions.contains(e) if not enabled_extensions.contains(e)
error('Classic mode is enabled, ' + error(f'Classic mode is enabled, but the required extension @e@ is not')
'but the required extension @0@ is not.'.format(e))
endif endif
endforeach endforeach
endif endif
@@ -84,7 +80,7 @@ endif
# Sanity check: Make sure enabled extensions are valid # Sanity check: Make sure enabled extensions are valid
foreach e : enabled_extensions foreach e : enabled_extensions
if not all_extensions.contains(e) if not all_extensions.contains(e)
error('Invalid extension @0@.'.format(e)) error(f'Invalid extension @e@.')
endif endif
endforeach endforeach
@@ -92,24 +88,20 @@ if classic_mode_enabled
subdir('data') subdir('data')
meson.add_install_script( meson.add_install_script(
'meson/session-post-install.py', 'meson/session-post-install.py',
join_paths(get_option('prefix'), datadir) join_paths(get_option('prefix'), datadir),
) )
endif endif
subdir('extensions') subdir('extensions')
subdir('po') subdir('po')
gnome.post_install( gnome.post_install(glib_compile_schemas: true)
glib_compile_schemas: true,
)
meson.add_dist_script('meson/check-version.py', meson.add_dist_script('meson/check-version.py', meson.project_version(), 'NEWS')
meson.project_version(),
'NEWS')
summary_options = { summary_options = {
'extensions': enabled_extensions, 'extensions': enabled_extensions,
'classic_mode': get_option('classic_mode'), 'classic_mode': get_option('classic_mode'),
} }
summary_dirs = { summary_dirs = {

View File

@@ -6,7 +6,8 @@
import os, sys import os, sys
from pathlib import Path from pathlib import Path
import argparse, subprocess from xml.etree.ElementTree import ElementTree
import argparse
def check_version(version, file, type='news'): def check_version(version, file, type='news'):
if type == 'news': if type == 'news':
@@ -16,8 +17,11 @@ def check_version(version, file, type='news'):
if not ok: if not ok:
raise Exception("{} does not start with {}".format(file, version)) raise Exception("{} does not start with {}".format(file, version))
elif type == 'metainfo': elif type == 'metainfo':
subprocess.run(['appstream-util', 'validate-version', file, version], query = './releases/release[@version="{}"]'.format(version)
check=True) ok = ElementTree(file=file).find(query) is not None
print("{}: {}".format(file, "OK" if ok else "FAILED"))
if not ok:
raise Exception("{} does not contain release {}".format(file, version))
else: else:
raise Exception('Not implemented') raise Exception('Not implemented')

129
po/fur.po
View File

@@ -6,16 +6,16 @@
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: 2024-10-18 19:45+0000\n"
"POT-Creation-Date: 2024-02-06 18:43+0000\n" "PO-Revision-Date: 2024-10-20 20:01+0000\n"
"PO-Revision-Date: 2024-04-16 21:02+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 <f.t.public@gmail.com>\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-Editor: HaiPO 2.1 beta\n"
"X-Generator: Poedit 3.4.2\n" "X-Generator: Poedit 3.4.2\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
@@ -39,7 +39,7 @@ msgstr "GNOME Classic su Xorg"
msgid "Favorites" msgid "Favorites"
msgstr "Preferîts" msgstr "Preferîts"
#: extensions/apps-menu/extension.js:397 #: extensions/apps-menu/extension.js:400
msgid "Apps" msgid "Apps"
msgstr "Aplicazions" msgstr "Aplicazions"
@@ -52,8 +52,8 @@ msgid ""
"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"
msgstr "" 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:159 #: extensions/auto-move-windows/prefs.js:159
msgid "Workspace Rules" msgid "Workspace Rules"
@@ -89,8 +89,8 @@ msgid ""
"This setting applies only with the natural placement strategy." "This setting applies only with the natural placement strategy."
msgstr "" msgstr ""
"Cîr di doprâ plui schermi par plaçâ lis miniaturis dai barcons, adatant il " "Cîr di doprâ plui schermi par plaçâ lis miniaturis dai barcons, adatant il "
"rapuart di aspiet dal visôr e consolidant ancjemo di plui lis miniaturis par " "rapuart di aspiet dal visôr e consolidant ancjemo di plui lis miniaturis par"
"ridusi il spazi complessîf. Cheste impostazion si apliche dome se " " ridusi il spazi complessîf. Cheste impostazion si apliche dome se "
"l'algoritmi di plaçament al è naturâl." "l'algoritmi di plaçament al è naturâl."
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:17 #: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:17
@@ -155,43 +155,43 @@ msgstr "Statistichis memorie"
msgid "Swap stats" msgid "Swap stats"
msgstr "Statistichis memorie di scambi" msgstr "Statistichis memorie di scambi"
#: extensions/system-monitor/extension.js:327 #: extensions/system-monitor/extension.js:336
msgid "Upload stats" msgid "Upload stats"
msgstr "Statistichis cjariament in rêt" msgstr "Statistichis cjariament in rêt"
#: extensions/system-monitor/extension.js:341 #: extensions/system-monitor/extension.js:350
msgid "Download stats" msgid "Download stats"
msgstr "Statistichis discjariaments" msgstr "Statistichis discjariaments"
#: extensions/system-monitor/extension.js:355 #: extensions/system-monitor/extension.js:364
msgid "System stats" msgid "System stats"
msgstr "Statistichis di sisteme" msgstr "Statistichis di sisteme"
#: extensions/system-monitor/extension.js:403 #: extensions/system-monitor/extension.js:412
msgid "Show" msgid "Show"
msgstr "Mostre" msgstr "Mostre"
#: extensions/system-monitor/extension.js:405 #: extensions/system-monitor/extension.js:414
msgid "CPU" msgid "CPU"
msgstr "CPU" msgstr "CPU"
#: extensions/system-monitor/extension.js:407 #: extensions/system-monitor/extension.js:416
msgid "Memory" msgid "Memory"
msgstr "Memorie" msgstr "Memorie"
#: extensions/system-monitor/extension.js:409 #: extensions/system-monitor/extension.js:418
msgid "Swap" msgid "Swap"
msgstr "Memorie di scambi" msgstr "Memorie di scambi"
#: extensions/system-monitor/extension.js:411 #: extensions/system-monitor/extension.js:420
msgid "Upload" msgid "Upload"
msgstr "Cjariaments in rêt" msgstr "Cjariaments in rêt"
#: extensions/system-monitor/extension.js:413 #: extensions/system-monitor/extension.js:422
msgid "Download" msgid "Download"
msgstr "Discjariaments" msgstr "Discjariaments"
#: extensions/system-monitor/extension.js:418 #: extensions/system-monitor/extension.js:427
msgid "Open System Monitor" msgid "Open System Monitor"
msgstr "Vierç monitor di sisteme" msgstr "Vierç monitor di sisteme"
@@ -223,47 +223,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:71 #: extensions/window-list/extension.js:70
msgid "Close" msgid "Close"
msgstr "Siere" msgstr "Siere"
#: extensions/window-list/extension.js:98 #: extensions/window-list/extension.js:97
msgid "Unminimize" msgid "Unminimize"
msgstr "Gjave minimizazion" msgstr "Gjave minimizazion"
#: extensions/window-list/extension.js:98 #: extensions/window-list/extension.js:97
msgid "Minimize" msgid "Minimize"
msgstr "Minimize" msgstr "Minimize"
#: extensions/window-list/extension.js:105 #: extensions/window-list/extension.js:104
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Gjave massimizazion" msgstr "Gjave massimizazion"
#: extensions/window-list/extension.js:105 #: extensions/window-list/extension.js:104
msgid "Maximize" msgid "Maximize"
msgstr "Massimize" msgstr "Massimize"
#: extensions/window-list/extension.js:470 #: extensions/window-list/extension.js:485
msgid "Minimize all" msgid "Minimize all"
msgstr "Minimize ducj" msgstr "Minimize ducj"
#: extensions/window-list/extension.js:476 #: extensions/window-list/extension.js:491
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Gjave a ducj la minimizazion" msgstr "Gjave a ducj la minimizazion"
#: extensions/window-list/extension.js:482 #: extensions/window-list/extension.js:497
msgid "Maximize all" msgid "Maximize all"
msgstr "Massimize ducj" msgstr "Massimize ducj"
#: extensions/window-list/extension.js:490 #: extensions/window-list/extension.js:505
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Gjave a ducj la massimizazion" msgstr "Gjave a ducj la massimizazion"
#: extensions/window-list/extension.js:498 #: extensions/window-list/extension.js:513
msgid "Close all" msgid "Close all"
msgstr "Siere ducj" msgstr "Siere ducj"
#: extensions/window-list/extension.js:772 #: extensions/window-list/extension.js:780
msgid "Window List" msgid "Window List"
msgstr "Liste barcons" msgstr "Liste barcons"
@@ -280,7 +280,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:26 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:26
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:70
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"
@@ -301,44 +301,59 @@ 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:35 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:41
msgid "Show workspace previews in window list"
msgstr "Mostre lis anteprimis dai spazis di lavôr te liste dai barcons"
#: extensions/window-list/prefs.js:37
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Intropament di barcons" msgstr "Intropament di barcons"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:42
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:41 #: extensions/window-list/prefs.js:43
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:42 #: extensions/window-list/prefs.js:44
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:66 #: extensions/window-list/prefs.js:64
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:253 #: extensions/window-list/prefs.js:76
#: extensions/workspace-indicator/extension.js:259 msgid "Show workspace previews"
msgid "Workspace Indicator" msgstr "Mostre anteprimis dai spazis di lavôr"
msgstr "Indicadôr spazi di lavôr"
#: extensions/workspace-indicator/prefs.js:69 #: extensions/workspace-indicator/prefs.js:30
msgid "Show Previews In Top Bar"
msgstr "Mostre anteprimis te sbare superiôr"
#: extensions/workspace-indicator/prefs.js:88
#, 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:136 #: extensions/workspace-indicator/prefs.js:155
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:262 #: extensions/workspace-indicator/prefs.js:281
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Zonte spazi di lavôr" msgstr "Zonte spazi di lavôr"
#: extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml:12
msgid "Show workspace previews in top bar"
msgstr "Mostre anteprimis dai spazis di lavôr te sbare superiôr"
#: extensions/workspace-indicator/workspaceIndicator.js:430
msgid "Workspace Indicator"
msgstr "Indicadôr spazi di lavôr"
#~ msgid "Applications" #~ msgid "Applications"
#~ msgstr "Aplicazions" #~ msgstr "Aplicazions"
@@ -367,24 +382,24 @@ msgstr "Zonte spazi di lavôr"
#~ msgstr "Disposizion dai botons te sbare dal titul" #~ msgstr "Disposizion dai botons te sbare dal titul"
#~ msgid "" #~ msgid ""
#~ "This key overrides the key in org.gnome.desktop.wm.preferences when " #~ "This key overrides the key in org.gnome.desktop.wm.preferences when running "
#~ "running GNOME Shell." #~ "GNOME Shell."
#~ msgstr "" #~ msgstr ""
#~ "Cheste clâf a sorplante chê in org.gnome.desktop.wm.preferences cuant che " #~ "Cheste clâf a sorplante chê in org.gnome.desktop.wm.preferences cuant che al"
#~ "al è in esecuzion GNOME Shell." #~ " è in esecuzion GNOME Shell."
#~ msgid "Enable edge tiling when dropping windows on screen edges" #~ msgid "Enable edge tiling when dropping windows on screen edges"
#~ msgstr "" #~ msgstr ""
#~ "Abilite la tasseladure sul ôr cuant che i balcons a vegnin molâts sul ôr " #~ "Abilite la tasseladure sul ôr cuant che i balcons a vegnin molâts sul ôr dal"
#~ "dal visôr" #~ " visôr"
#~ msgid "Workspaces only on primary monitor" #~ msgid "Workspaces only on primary monitor"
#~ msgstr "Spazis di lavôr dome sul visôr principâl" #~ msgstr "Spazis di lavôr dome sul visôr principâl"
#~ msgid "Delay focus changes in mouse mode until the pointer stops moving" #~ msgid "Delay focus changes in mouse mode until the pointer stops moving"
#~ msgstr "" #~ msgstr ""
#~ "Tarde la mude dal focus te modalitât mouse fintremai che il pontadôr no " #~ "Tarde la mude dal focus te modalitât mouse fintremai che il pontadôr no si "
#~ "si ferme" #~ "ferme"
#~ msgid "Thumbnail only" #~ msgid "Thumbnail only"
#~ msgstr "Dome miniaturis" #~ msgstr "Dome miniaturis"
@@ -408,8 +423,8 @@ msgstr "Zonte spazi di lavôr"
#~ msgstr "Test di benvignût alternatîf" #~ msgstr "Test di benvignût alternatîf"
#~ msgid "" #~ msgid ""
#~ "If not empty, it contains the text that will be shown when clicking on " #~ "If not empty, it contains the text that will be shown when clicking on the "
#~ "the panel." #~ "panel."
#~ msgstr "" #~ msgstr ""
#~ "Se no vueit, al ten il test che al vegnarà mostrât scliçant sul panel." #~ "Se no vueit, al ten il test che al vegnarà mostrât scliçant sul panel."
@@ -417,12 +432,10 @@ msgstr "Zonte spazi di lavôr"
#~ msgstr "Messaç" #~ msgstr "Messaç"
#~ msgid "" #~ msgid ""
#~ "Example aims to show how to build well behaved extensions for the Shell " #~ "Example aims to show how to build well behaved extensions for the Shell and as such it has little functionality on its own.\n"
#~ "and as such it has little functionality on its own.\n"
#~ "Nevertheless its possible to customize the greeting message." #~ "Nevertheless its possible to customize the greeting message."
#~ msgstr "" #~ msgstr ""
#~ "Example al ponte a mostrâ cemût imbastî estensions de Shell che si " #~ "Example al ponte a mostrâ cemût imbastî estensions de Shell che si compuartedin ben e par chest no 'ndi à tantis funzions.\n"
#~ "compuartedin ben e par chest no 'ndi à tantis funzions.\n"
#~ "Ad ogni mût al è pussibil personalizâ il messaç di benvignût." #~ "Ad ogni mût al è pussibil personalizâ il messaç di benvignût."
#~ msgid "GNOME Shell Classic" #~ msgid "GNOME Shell Classic"

View File

@@ -9,8 +9,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: 2024-02-06 18:43+0000\n" "POT-Creation-Date: 2024-10-15 16:32+0000\n"
"PO-Revision-Date: 2024-02-18 17:17+0100\n" "PO-Revision-Date: 2024-10-27 23:36+0100\n"
"Last-Translator: Nathan Follens <nfollens@gnome.org>\n" "Last-Translator: Nathan Follens <nfollens@gnome.org>\n"
"Language-Team: GNOME-NL https://matrix.to/#/#nl:gnome.org\n" "Language-Team: GNOME-NL https://matrix.to/#/#nl:gnome.org\n"
"Language: nl\n" "Language: nl\n"
@@ -18,7 +18,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.4.2\n" "X-Generator: Poedit 3.4.4\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
@@ -42,7 +42,7 @@ msgstr "GNOME klassiek op Xorg"
msgid "Favorites" msgid "Favorites"
msgstr "Favorieten" msgstr "Favorieten"
#: extensions/apps-menu/extension.js:397 #: extensions/apps-menu/extension.js:400
msgid "Apps" msgid "Apps"
msgstr "Toepassingen" msgstr "Toepassingen"
@@ -159,43 +159,43 @@ msgstr "Geheugenstatistieken"
msgid "Swap stats" msgid "Swap stats"
msgstr "Wisselgeheugenstatistieken" msgstr "Wisselgeheugenstatistieken"
#: extensions/system-monitor/extension.js:327 #: extensions/system-monitor/extension.js:336
msgid "Upload stats" msgid "Upload stats"
msgstr "Uploadstatistieken" msgstr "Uploadstatistieken"
#: extensions/system-monitor/extension.js:341 #: extensions/system-monitor/extension.js:350
msgid "Download stats" msgid "Download stats"
msgstr "Downloadstatistieken" msgstr "Downloadstatistieken"
#: extensions/system-monitor/extension.js:355 #: extensions/system-monitor/extension.js:364
msgid "System stats" msgid "System stats"
msgstr "Systeemstatistieken" msgstr "Systeemstatistieken"
#: extensions/system-monitor/extension.js:403 #: extensions/system-monitor/extension.js:412
msgid "Show" msgid "Show"
msgstr "Tonen" msgstr "Tonen"
#: extensions/system-monitor/extension.js:405 #: extensions/system-monitor/extension.js:414
msgid "CPU" msgid "CPU"
msgstr "CPU" msgstr "CPU"
#: extensions/system-monitor/extension.js:407 #: extensions/system-monitor/extension.js:416
msgid "Memory" msgid "Memory"
msgstr "Geheugen" msgstr "Geheugen"
#: extensions/system-monitor/extension.js:409 #: extensions/system-monitor/extension.js:418
msgid "Swap" msgid "Swap"
msgstr "Wisselgeheugen" msgstr "Wisselgeheugen"
#: extensions/system-monitor/extension.js:411 #: extensions/system-monitor/extension.js:420
msgid "Upload" msgid "Upload"
msgstr "Upload" msgstr "Upload"
#: extensions/system-monitor/extension.js:413 #: extensions/system-monitor/extension.js:422
msgid "Download" msgid "Download"
msgstr "Download" msgstr "Download"
#: extensions/system-monitor/extension.js:418 #: extensions/system-monitor/extension.js:427
msgid "Open System Monitor" msgid "Open System Monitor"
msgstr "Systeemmonitor openen" msgstr "Systeemmonitor openen"
@@ -227,47 +227,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:71 #: extensions/window-list/extension.js:70
msgid "Close" msgid "Close"
msgstr "Sluiten" msgstr "Sluiten"
#: extensions/window-list/extension.js:98 #: extensions/window-list/extension.js:97
msgid "Unminimize" msgid "Unminimize"
msgstr "Zichtbaar maken" msgstr "Zichtbaar maken"
#: extensions/window-list/extension.js:98 #: extensions/window-list/extension.js:97
msgid "Minimize" msgid "Minimize"
msgstr "Minimaliseren" msgstr "Minimaliseren"
#: extensions/window-list/extension.js:105 #: extensions/window-list/extension.js:104
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Herstellen" msgstr "Herstellen"
#: extensions/window-list/extension.js:105 #: extensions/window-list/extension.js:104
msgid "Maximize" msgid "Maximize"
msgstr "Maximaliseren" msgstr "Maximaliseren"
#: extensions/window-list/extension.js:470 #: extensions/window-list/extension.js:489
msgid "Minimize all" msgid "Minimize all"
msgstr "Alles minimaliseren" msgstr "Alles minimaliseren"
#: extensions/window-list/extension.js:476 #: extensions/window-list/extension.js:495
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Alles zichtbaar maken" msgstr "Alles zichtbaar maken"
#: extensions/window-list/extension.js:482 #: extensions/window-list/extension.js:501
msgid "Maximize all" msgid "Maximize all"
msgstr "Alles maximaliseren" msgstr "Alles maximaliseren"
#: extensions/window-list/extension.js:490 #: extensions/window-list/extension.js:509
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Alles herstellen" msgstr "Alles herstellen"
#: extensions/window-list/extension.js:498 #: extensions/window-list/extension.js:517
msgid "Close all" msgid "Close all"
msgstr "Alles sluiten" msgstr "Alles sluiten"
#: extensions/window-list/extension.js:772 #: extensions/window-list/extension.js:789
msgid "Window List" msgid "Window List"
msgstr "Vensterlijst" msgstr "Vensterlijst"
@@ -281,8 +281,8 @@ msgid ""
"Possible values are “never”, “auto” and “always”." "Possible values are “never”, “auto” and “always”."
msgstr "" msgstr ""
"Beslist wanneer vensters van dezelfde toepassing in de vensterlijst te " "Beslist wanneer vensters van dezelfde toepassing in de vensterlijst te "
"groeperen. Mogelijke waarden zijn never (nooit), auto en " "groeperen. Mogelijke waarden zijn never (nooit), auto en always "
"always (altijd)." "(altijd)."
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:26 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:26
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:79
@@ -307,6 +307,10 @@ 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/org.gnome.shell.extensions.window-list.gschema.xml:41
msgid "Show workspace previews in window list"
msgstr "Voorbeelden van werkbladen tonen in vensterlijst"
#: extensions/window-list/prefs.js:35 #: extensions/window-list/prefs.js:35
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Venstergroepering" msgstr "Venstergroepering"
@@ -327,24 +331,35 @@ msgstr "Vensters altijd groeperen"
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:253 #: extensions/window-list/prefs.js:92
#: extensions/workspace-indicator/extension.js:259 msgid "Show workspace previews"
msgid "Workspace Indicator" msgstr "Voorbeelden van werkbladen tonen"
msgstr "Werkbladindicator"
#: extensions/workspace-indicator/prefs.js:69 #: extensions/workspace-indicator/prefs.js:30
msgid "Show Previews In Top Bar"
msgstr "Voorbeelden tonen in bovenste balk"
#: extensions/workspace-indicator/prefs.js:88
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Werkblad %d" msgstr "Werkblad %d"
#: extensions/workspace-indicator/prefs.js:136 #: extensions/workspace-indicator/prefs.js:155
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Werkbladnamen" msgstr "Werkbladnamen"
#: extensions/workspace-indicator/prefs.js:262 #: extensions/workspace-indicator/prefs.js:281
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Werkblad toevoegen" msgstr "Werkblad toevoegen"
#: extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml:12
msgid "Show workspace previews in top bar"
msgstr "Voorbeelden van werkbladen tonen in bovenste balk"
#: extensions/workspace-indicator/workspaceIndicator.js:430
msgid "Workspace Indicator"
msgstr "Werkbladindicator"
#~ msgid "Applications" #~ msgid "Applications"
#~ msgstr "Toepassingen" #~ msgstr "Toepassingen"

View File

@@ -10,8 +10,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: 2024-04-29 14:28+0000\n" "POT-Creation-Date: 2024-10-27 22:37+0000\n"
"PO-Revision-Date: 2024-06-20 01:27+0200\n" "PO-Revision-Date: 2024-11-04 08:14+0100\n"
"Last-Translator: Марко М. Костић <marko.m.kostic@gmail.com>\n" "Last-Translator: Марко М. Костић <marko.m.kostic@gmail.com>\n"
"Language-Team: Serbian <gnome-sr@googlegroups.org>\n" "Language-Team: Serbian <gnome-sr@googlegroups.org>\n"
"Language: sr\n" "Language: sr\n"
@@ -21,7 +21,7 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : " "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
"X-Generator: Gtranslator 45.3\n" "X-Generator: Poedit 3.4.4\n"
#: data/gnome-classic.desktop.in:3 #: data/gnome-classic.desktop.in:3
msgid "GNOME Classic" msgid "GNOME Classic"
@@ -44,7 +44,7 @@ msgstr "Класичан Гном на Икс серверу"
msgid "Favorites" msgid "Favorites"
msgstr "Омиљено" msgstr "Омиљено"
#: extensions/apps-menu/extension.js:397 #: extensions/apps-menu/extension.js:400
msgid "Apps" msgid "Apps"
msgstr "Апликације" msgstr "Апликације"
@@ -227,47 +227,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:70
msgid "Close" msgid "Close"
msgstr "Затвори" msgstr "Затвори"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:97
msgid "Unminimize" msgid "Unminimize"
msgstr "Поништи умањење" msgstr "Поништи умањење"
#: extensions/window-list/extension.js:99 #: extensions/window-list/extension.js:97
msgid "Minimize" msgid "Minimize"
msgstr "Умањи" msgstr "Умањи"
#: extensions/window-list/extension.js:106 #: extensions/window-list/extension.js:104
msgid "Unmaximize" msgid "Unmaximize"
msgstr "Поништи увећање" msgstr "Поништи увећање"
#: extensions/window-list/extension.js:106 #: extensions/window-list/extension.js:104
msgid "Maximize" msgid "Maximize"
msgstr "Увећај" msgstr "Увећај"
#: extensions/window-list/extension.js:471 #: extensions/window-list/extension.js:485
msgid "Minimize all" msgid "Minimize all"
msgstr "Умањи све" msgstr "Умањи све"
#: extensions/window-list/extension.js:477 #: extensions/window-list/extension.js:491
msgid "Unminimize all" msgid "Unminimize all"
msgstr "Поништи умањење свега" msgstr "Поништи умањење свега"
#: extensions/window-list/extension.js:483 #: extensions/window-list/extension.js:497
msgid "Maximize all" msgid "Maximize all"
msgstr "Увећај све" msgstr "Увећај све"
#: extensions/window-list/extension.js:491 #: extensions/window-list/extension.js:505
msgid "Unmaximize all" msgid "Unmaximize all"
msgstr "Поништи увећање свега" msgstr "Поништи увећање свега"
#: extensions/window-list/extension.js:499 #: extensions/window-list/extension.js:513
msgid "Close all" msgid "Close all"
msgstr "Затвори све" msgstr "Затвори све"
#: extensions/window-list/extension.js:773 #: extensions/window-list/extension.js:780
msgid "Window List" msgid "Window List"
msgstr "Списак прозора" msgstr "Списак прозора"
@@ -281,11 +281,11 @@ msgid ""
"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:26 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:26
#: extensions/window-list/prefs.js:79 #: extensions/window-list/prefs.js:70
msgid "Show windows from all workspaces" msgid "Show windows from all workspaces"
msgstr "Прикажи прозоре свих радних простора" msgstr "Прикажи прозоре свих радних простора"
@@ -305,44 +305,59 @@ msgstr ""
"Да ли да прикаже списак прозора на свим прикљученим мониторима или само на " "Да ли да прикаже списак прозора на свим прикљученим мониторима или само на "
"главном." "главном."
#: extensions/window-list/prefs.js:35 #: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:41
msgid "Show workspace previews in window list"
msgstr "Прикажи прегледе радних простора у списку прозора"
#: extensions/window-list/prefs.js:37
msgid "Window Grouping" msgid "Window Grouping"
msgstr "Груписање прозора" msgstr "Груписање прозора"
#: extensions/window-list/prefs.js:40 #: extensions/window-list/prefs.js:42
msgid "Never group windows" msgid "Never group windows"
msgstr "Никад не групиши прозоре" msgstr "Никад не групиши прозоре"
#: extensions/window-list/prefs.js:41 #: extensions/window-list/prefs.js:43
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:44
msgid "Always group windows" msgid "Always group windows"
msgstr "Увек групиши прозоре" msgstr "Увек групиши прозоре"
#: extensions/window-list/prefs.js:66 #: extensions/window-list/prefs.js:64
msgid "Show on all monitors" msgid "Show on all monitors"
msgstr "Прикажи на свим мониторима" msgstr "Прикажи на свим мониторима"
#: extensions/window-list/workspaceIndicator.js:255 #: extensions/window-list/prefs.js:76
#: extensions/workspace-indicator/extension.js:261 msgid "Show workspace previews"
msgid "Workspace Indicator" msgstr "Прикажи прегледе радних простора"
msgstr "Показатељ радних простора"
#: extensions/workspace-indicator/prefs.js:69 #: extensions/workspace-indicator/prefs.js:30
msgid "Show Previews In Top Bar"
msgstr "Прикажи прегледе у горњој траци"
#: extensions/workspace-indicator/prefs.js:88
#, javascript-format #, javascript-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. радни простор" msgstr "%d. радни простор"
#: extensions/workspace-indicator/prefs.js:136 #: extensions/workspace-indicator/prefs.js:155
msgid "Workspace Names" msgid "Workspace Names"
msgstr "Називи радних простора" msgstr "Називи радних простора"
#: extensions/workspace-indicator/prefs.js:262 #: extensions/workspace-indicator/prefs.js:281
msgid "Add Workspace" msgid "Add Workspace"
msgstr "Додај радни простор" msgstr "Додај радни простор"
#: extensions/workspace-indicator/schemas/org.gnome.shell.extensions.workspace-indicator.gschema.xml:12
msgid "Show workspace previews in top bar"
msgstr "Прикажи прегледе радних простора у горњој траци"
#: extensions/workspace-indicator/workspaceIndicator.js:430
msgid "Workspace Indicator"
msgstr "Показатељ радних простора"
#~ msgid "Applications" #~ msgid "Applications"
#~ msgstr "Програми" #~ msgstr "Програми"