Compare commits

...

21 Commits

Author SHA1 Message Date
4baa091bc5 Bump version to 3.36.0
Update NEWS.
2020-03-07 23:30:33 +01:00
cb7d1925ef Update Dutch translation 2020-03-07 21:50:08 +00:00
3ddae9d815 slider: Include handle border radius when calculating center offset
Since 38da479ee we correctly ceil the non-integer radius of the slider
handle when calculating the offset for drawing the circle. Since the
handle also has a border with a width of 1px by default, we should also
factor that in when calculating the offset.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1569
2020-03-06 19:29:06 +00:00
ub
e22421a25a Theme: colorize .folder-namel-label
- so it receives the correct color, independent from the theme $variant (light/dark)

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1059
2020-03-06 19:22:08 +00:00
09a1e61c63 location: Update desktop file name for privacy settings
The location settings have been moved to their own panel with a
different desktop file:
https://gitlab.gnome.org/GNOME/gnome-control-center/-/commit/f92f6f5c

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/2316
2020-03-06 19:16:47 +00:00
7345a6f276 main: Get the theme resource name from sessionMode
Along the lines of `styleSheetName`, a session mode may want to provide its
own gresource file, so make this possible via a `themeResourceName` session
mode parameter, defaulted to gnome-shell-theme.gresource

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1063
2020-03-06 19:09:25 +00:00
fda938175e shellDBus: Add new OpenExtensionPrefs method
Unlike any other methods in the Extensions API, LaunchExtensionPrefs()
opens what appears to be an application dialog, except that it is
really a separate application that the caller has no control over.

In order to address that, add a new OpenExtensionPrefs() method that
takes additional parameters (modelled after the desktop portal APIs)
that will make it possible to improve the behavior in the future.

The new parameters are ignored for now, but pushing the API out now
will allow us to fill in the functionality post the .0 release.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1074
2020-03-06 19:03:02 +00:00
3a39fb5ab8 shellDBus: Add UserExtensionsEnabled property
The 'disable-user-extensions' GSettings key is the last extensions-related
setting that isn't exposed over D-Bus, and therefore requires consumers
to access the GSettings directly.

Expose the setting as UserExtensionsEnabled readwrite property in the
org.gnome.Shell.Extensions interface to allow consumers to manage
extensions purely via D-Bus.

The 'disable-user-extensions' setting is the last extension-related
bit from the org.gnome.shell GSettings schema that is not exposed
via D-Bus.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1074
2020-03-06 19:03:02 +00:00
1a0ec782b5 ibusManager: Ensure to spawn --xim on non-wayland sessions
This (mistakenly) now only depends on signals triggered on Wayland
sessions. Hardcoding the XIM support on X11 sessions will make input
in some clients work again.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/issues/1690
2020-03-06 18:57:23 +00:00
a96753f085 windowManager: X11 can work without gsd-xsettings
Currently, a failure to start the Systemd unit `gsd-xsettings.target`
would be considered a failure to start Xwayland.

That means that if `gsd-xsettings.target` fails to start for whatever
reason, no X11 client can be used on Wayland.

However, XSettings is by no mean mandatory for X11 clients and many
legacy X11 clients do not implement XSettings. Those who do always have
a fallback path and therefore can still work without XSettings.

Make a failure to start the Systemd unit `gsd-xsettings.target` non
blocking for Xwayland, and just log a warning message.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1065
2020-03-06 18:50:52 +00:00
4ff94f80a0 shell/tray-manager: Delay managing screen if necessary
Now that Xwayland startup is asynchronous, the function may be called
before X11 is available, resulting in a crash.

Fix this by only managing the tray immediately if we already have an
X11 display, and wait for it to be set up otherwise.

Likewise, unmanage the screen when X11 becomes unavailable.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2308
2020-03-06 18:45:21 +00:00
e6d4581959 shell/tray-manager: Allow to unmanage screen
Since support for legacy status icons is implemented by extensions
nowadays, they need to undo the call to manage_screen() when they
are disabled.

Right now that means bypassing garbage collection with an explicit
call to run_dispose() on the Shell.TrayManager. That works, but is
rather ugly.

An explicit unmanage_screen() method is a nicer option, and will be
useful to us as well to deal with X11 going away (once Xwayland
crashes don't bring down the entire session).

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2308
2020-03-06 18:45:21 +00:00
07bbcb1b48 shell/tray-manager: Only create resources when needed
NaTrayManager in particular is deeply tied to X11. We currently assume
that X11 support is always available, but that is already not true
anymore - Xwayland startup is now asynchronous.

It will be even less true once we handle Xwayland crashes gracefully.

Start addressing that by not creating the corresponding resources once
and assume they exist for the lifetime of Shell.TrayManager, but make
sure they exist when actually needed.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2308
2020-03-06 18:45:21 +00:00
f4ea9074d0 Updated Czech translation 2020-03-06 18:25:26 +01:00
d4ee2e8bbf Update Japanese translation 2020-03-04 21:53:07 +00:00
cf82d5ba85 Update Ukrainian translation 2020-03-04 16:47:03 +00:00
5e04f6eb23 Update Italian translation 2020-03-03 08:09:27 +00:00
0dd171a7c8 environment: Fix date conversion
This is a regression from commit 06b690ff21:

GLib.DateTime.new() expects the full four-digit year, so passing
the abbreviated year from Date() will result in a bogus datetime.

Today is *not* Saturday March 2nd, 120 ...

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1061
2020-03-02 13:54:23 +01:00
837fbbf417 Updated Lithuanian translation 2020-03-01 20:41:32 +02:00
d7b61e7281 Update Croatian translation 2020-03-01 15:47:17 +00:00
073da0806c Update Punjabi translation 2020-03-01 09:18:00 +00:00
22 changed files with 4780 additions and 5020 deletions

21
NEWS
View File

@ -1,3 +1,24 @@
3.36.0
======
* Fix off-by-1900 error in date conversions [Florian; !1061]
* Fix crash on startup with topIcons* extension enabled [Florian; #2308]
* Don't require gsd-xsettings for X11 support on wayland [Olivier; !1065]
* Fix ibus support in Xorg session [Carlos; #1690]
* Improve Extensions D-Bus API [Florian; !1074]
* Allow session modes to specify alternative resource name [Marco; !1063]
* Fix link to location settings in aggregate menu [Sebastian; #2316]
* Fix illegible app folder titles with light theme [ub; !1059]
* Really fix visual glitch in sliders [Jonas; #1569]
Contributors:
Marco Trevisan (Treviño), Jonas Dreßler, Olivier Fourdan, Carlos Garnacho,
Sebastian Keller, Florian Müllner, ub
Translators:
Aman Alam [pa], Goran Vidović [hr], Aurimas Černius [lt],
Milo Casagrande [it], Daniel Korostil [uk], sicklylife [ja],
Marek Černocký [cs], Nathan Follens [nl]
3.35.92
=======
* Plug a memory leak [Jonas D.; !1015]

View File

@ -199,14 +199,37 @@
<!--
LaunchExtensionPrefs:
@uuid: The UUID of the extension
Launch preferences of an extension.
Deprecated for OpenExtensionPrefs
-->
<method name="LaunchExtensionPrefs">
<arg type="s" direction="in" name="uuid"/>
</method>
<!--
OpenExtensionPrefs:
@uuid: The UUID of the extension
@parent_window: Identifier for the application window
@options: Vardict with further options
Opens the prefs dialog of extension @uuid.
The following @options are recognized:
<variablelist>
<varlistentry>
<term>modal b</term>
<listitem>
<para>Whether the prefs window should be modal, default: false</para>
</listitem>
</varlistentry>
</variablelist>
-->
<method name="OpenExtensionPrefs">
<arg type="s" direction="in" name="uuid"/>
<arg type="s" direction="in" name="parent_window"/>
<arg type="a{sv}" direction="in" name="options"/>
</method>
<!--
CheckForUpdates:
Update all extensions for which updates are available
@ -234,5 +257,11 @@
-->
<property name="ShellVersion" type="s" access="read"/>
<!--
UserExtensionsEnabled:
Whether user extensions are enabled
-->
<property name="UserExtensionsEnabled" type="b" access="readwrite"/>
</interface>
</node>

View File

@ -60,7 +60,7 @@ $app_grid_fg_color: #fff;
& .folder-name-entry { width: 300px }
/* FIXME: this is to keep the label in sync with the entry */
& .folder-name-label { padding: 5px 7px }
& .folder-name-label { padding: 5px 7px; color: $osd_fg_color; }
& .edit-folder-button {
@extend %button;

View File

@ -1,7 +1,7 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
/* exported getIBusManager */
const { Gio, GLib, IBus } = imports.gi;
const { Gio, GLib, IBus, Meta } = imports.gi;
const Signals = imports.signals;
const IBusCandidatePopup = imports.ui.ibusCandidatePopup;
@ -55,7 +55,7 @@ var IBusManager = class {
this._ibus.set_watch_ibus_signal(true);
this._ibus.connect('global-engine-changed', this._engineChanged.bind(this));
this._spawn();
this._spawn(Meta.is_wayland_compositor() ? [] : ['--xim']);
}
_spawn(extraArgs = []) {

View File

@ -320,7 +320,7 @@ function init() {
_localTimeZone = GLib.TimeZone.new_local();
let dt = GLib.DateTime.new(_localTimeZone,
this.getYear(),
this.getFullYear(),
this.getMonth() + 1,
this.getDate(),
this.getHours(),

View File

@ -361,7 +361,8 @@ function reloadThemeResource() {
if (_themeResource)
_themeResource._unregister();
_themeResource = Gio.Resource.load('%s/gnome-shell-theme.gresource'.format(global.datadir));
_themeResource = Gio.Resource.load('%s/%s'.format(global.datadir,
sessionMode.themeResourceName));
_themeResource._register();
}

View File

@ -15,6 +15,7 @@ const _modes = {
'restrictive': {
parentMode: null,
stylesheetName: 'gnome-shell.css',
themeResourceName: 'gnome-shell-theme.gresource',
hasOverview: false,
showCalendarEvents: false,
allowSettings: false,

View File

@ -255,6 +255,17 @@ var GnomeShellExtensions = class {
constructor() {
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(GnomeShellExtensionsIface, this);
this._dbusImpl.export(Gio.DBus.session, '/org/gnome/Shell');
this._userExtensionsEnabled = this.UserExtensionsEnabled;
global.settings.connect('changed::disable-user-extensions', () => {
if (this._userExtensionsEnabled === this.UserExtensionsEnabled)
return;
this._userExtensionsEnabled = this.UserExtensionsEnabled;
this._dbusImpl.emit_property_changed('UserExtensionsEnabled',
new GLib.Variant('b', this._userExtensionsEnabled));
});
Main.extensionManager.connect('extension-state-changed',
this._extensionStateChanged.bind(this));
}
@ -301,6 +312,10 @@ var GnomeShellExtensions = class {
}
LaunchExtensionPrefs(uuid) {
this.OpenExtensionPrefs(uuid, '', {});
}
OpenExtensionPrefs(uuid, _parentWindow, _options) {
let appSys = Shell.AppSystem.get_default();
let app = appSys.lookup_app('org.gnome.Extensions.desktop');
let info = app.get_app_info();
@ -325,6 +340,14 @@ var GnomeShellExtensions = class {
return Config.PACKAGE_VERSION;
}
get UserExtensionsEnabled() {
return !global.settings.get_boolean('disable-user-extensions');
}
set UserExtensionsEnabled(enable) {
global.settings.set_boolean('disable-user-extensions', !enable);
}
_extensionStateChanged(_, newState) {
let state = ExtensionUtils.serializeExtension(newState);
this._dbusImpl.emit_signal('ExtensionStateChanged',

View File

@ -43,10 +43,10 @@ var Slider = GObject.registerClass({
let [hasHandleColor, handleBorderColor] =
themeNode.lookup_color('-slider-handle-border-color', false);
let wholeHandleRadius = Math.ceil(handleRadius);
let handleX = wholeHandleRadius +
(width - 2 * wholeHandleRadius) * this._value / this._maxValue;
let handleY = height / 2;
const ceiledHandleRadius = Math.ceil(handleRadius + handleBorderWidth);
const handleX = ceiledHandleRadius +
(width - 2 * ceiledHandleRadius) * this._value / this._maxValue;
const handleY = height / 2;
let color = themeNode.get_foreground_color();
Clutter.cairo_set_source_color(cr, color);

View File

@ -64,7 +64,7 @@ class Indicator extends PanelMenu.SystemIndicator {
this._item.label.text = _("Location Enabled");
this._onOffAction = this._item.menu.addAction(_("Disable"), this._onOnOffAction.bind(this));
this._item.menu.addSettingsAction(_("Privacy Settings"), 'gnome-privacy-panel.desktop');
this._item.menu.addSettingsAction(_('Privacy Settings'), 'gnome-location-panel.desktop');
this.menu.addMenuItem(this._item);

View File

@ -903,7 +903,8 @@ var WindowManager = class {
/* Leave this watchdog timeout so don't block indefinitely here */
let timeoutId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 5, () => {
Gio.DBus.session.unwatch_name(watchId);
task.return_boolean(false);
log('Warning: Failed to start gsd-xsettings');
task.return_boolean(true);
timeoutId = 0;
return GLib.SOURCE_REMOVE;
});

View File

@ -1,5 +1,5 @@
project('gnome-shell', 'c',
version: '3.35.92',
version: '3.36.0',
meson_version: '>= 0.47.0',
license: 'GPLv2+'
)
@ -25,12 +25,12 @@ gio_req = '>= 2.56.0'
gi_req = '>= 1.49.1'
gjs_req = '>= 1.63.2'
gtk_req = '>= 3.15.0'
mutter_req = '>= 3.35.92'
mutter_req = '>= 3.36.0'
polkit_req = '>= 0.100'
schemas_req = '>= 3.33.1'
startup_req = '>= 0.11'
ibus_req = '>= 1.5.2'
gnome_desktop_req = '>= 3.34.2'
gnome_desktop_req = '>= 3.35.90'
bt_req = '>= 3.9.0'
gst_req = '>= 0.11.92'

1631
po/cs.po

File diff suppressed because it is too large Load Diff

589
po/hr.po

File diff suppressed because it is too large Load Diff

1680
po/it.po

File diff suppressed because it is too large Load Diff

View File

@ -16,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2020-02-27 21:57+0000\n"
"PO-Revision-Date: 2020-02-29 20:28+0900\n"
"POT-Creation-Date: 2020-02-29 16:06+0000\n"
"PO-Revision-Date: 2020-03-05 06:30+0900\n"
"Last-Translator: sicklylife <translation@sicklylife.jp>\n"
"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
"Language: ja\n"
@ -1037,7 +1037,7 @@ msgstr "イベントなし"
#: js/ui/calendar.js:1153
msgid "Do Not Disturb"
msgstr "通知ポップアップしない"
msgstr "通知ポップアップを表示しない"
#: js/ui/calendar.js:1167
msgid "Clear"

257
po/lt.po
View File

@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2020-02-17 11:08+0000\n"
"PO-Revision-Date: 2020-02-17 22:38+0200\n"
"POT-Creation-Date: 2020-02-27 21:57+0000\n"
"PO-Revision-Date: 2020-03-01 20:41+0200\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@ -410,11 +410,11 @@ msgstr ""
"Jei pašalinsite plėtinį, reikės grįžti prie jo atsisiuntimo, jei norėsite jį "
"vėl įjungti"
#: js/extensionPrefs/main.js:144 js/ui/audioDeviceSelection.js:57
#: js/ui/components/networkAgent.js:107 js/ui/components/polkitAgent.js:139
#: js/ui/endSessionDialog.js:374 js/ui/extensionDownloader.js:166
#: js/ui/shellMountOperation.js:376 js/ui/shellMountOperation.js:386
#: js/ui/status/network.js:910
#: js/extensionPrefs/main.js:144 js/gdm/authPrompt.js:135
#: js/ui/audioDeviceSelection.js:57 js/ui/components/networkAgent.js:107
#: js/ui/components/polkitAgent.js:139 js/ui/endSessionDialog.js:374
#: js/ui/extensionDownloader.js:165 js/ui/shellMountOperation.js:376
#: js/ui/shellMountOperation.js:386 js/ui/status/network.js:913
msgid "Cancel"
msgstr "Atsisakyti"
@ -546,12 +546,11 @@ msgid "Log Out…"
msgstr "Atsijungti…"
#. Cisco LEAP
#: js/gdm/authPrompt.js:235 js/ui/components/networkAgent.js:202
#: js/ui/components/networkAgent.js:214 js/ui/components/networkAgent.js:238
#: js/ui/components/networkAgent.js:259 js/ui/components/networkAgent.js:279
#: js/ui/components/networkAgent.js:289 js/ui/components/polkitAgent.js:277
#: js/gdm/authPrompt.js:237 js/ui/components/networkAgent.js:202
#: js/ui/components/networkAgent.js:218 js/ui/components/networkAgent.js:242
#: js/ui/components/networkAgent.js:263 js/ui/components/networkAgent.js:283
#: js/ui/components/networkAgent.js:293 js/ui/components/polkitAgent.js:277
#: js/ui/shellMountOperation.js:326
#| msgid "Password:"
msgid "Password"
msgstr "Slaptažodis"
@ -573,9 +572,8 @@ msgstr "(pvz., naudotojas arba %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: js/gdm/loginDialog.js:917 js/ui/components/networkAgent.js:234
#: js/ui/components/networkAgent.js:257 js/ui/components/networkAgent.js:275
#| msgid "Username: "
#: js/gdm/loginDialog.js:917 js/ui/components/networkAgent.js:238
#: js/ui/components/networkAgent.js:261 js/ui/components/networkAgent.js:279
msgid "Username"
msgstr "Naudotojo vardas"
@ -810,11 +808,11 @@ msgid "%B %-d %Y, %l%M %p"
msgstr "%Y %m %-d, %l%M %p"
#. TRANSLATORS: this is the title of the wifi captive portal login window
#: js/portalHelper/main.js:42
#: js/portalHelper/main.js:41
msgid "Hotspot Login"
msgstr "Prisijungimas prie prieigos taško"
#: js/portalHelper/main.js:88
#: js/portalHelper/main.js:87
msgid ""
"Your connection to this hotspot login is not secure. Passwords or other "
"information you enter on this page can be viewed by people nearby."
@ -849,27 +847,27 @@ msgid "All"
msgstr "Visos"
#. Translators: This is the heading of a list of open windows
#: js/ui/appDisplay.js:2454 js/ui/panel.js:75
#: js/ui/appDisplay.js:2450 js/ui/panel.js:75
msgid "Open Windows"
msgstr "Atverti langai"
#: js/ui/appDisplay.js:2474 js/ui/panel.js:82
#: js/ui/appDisplay.js:2470 js/ui/panel.js:82
msgid "New Window"
msgstr "Naujas langas"
#: js/ui/appDisplay.js:2485
#: js/ui/appDisplay.js:2481
msgid "Launch using Dedicated Graphics Card"
msgstr "Paleisti naudojant dedikuotą grafikos kortą"
#: js/ui/appDisplay.js:2513 js/ui/dash.js:239
#: js/ui/appDisplay.js:2509 js/ui/dash.js:239
msgid "Remove from Favorites"
msgstr "Pašalinti iš mėgstamų"
#: js/ui/appDisplay.js:2519
#: js/ui/appDisplay.js:2515
msgid "Add to Favorites"
msgstr "Pridėti prie mėgstamų"
#: js/ui/appDisplay.js:2529 js/ui/panel.js:93
#: js/ui/appDisplay.js:2525 js/ui/panel.js:93
msgid "Show Details"
msgstr "Rodyti detalią informaciją"
@ -1094,37 +1092,32 @@ msgstr ""
"Taip pat galite prisijungti paspausdami „WPS“ mygtuką savo maršrutizatoriuje."
#: js/ui/components/networkAgent.js:101 js/ui/status/network.js:223
#: js/ui/status/network.js:314 js/ui/status/network.js:913
#: js/ui/status/network.js:314 js/ui/status/network.js:916
msgid "Connect"
msgstr "Prisijungti"
#. static WEP
#: js/ui/components/networkAgent.js:207
#| msgid "Key: "
#: js/ui/components/networkAgent.js:208
msgid "Key"
msgstr "Raktas"
#: js/ui/components/networkAgent.js:242 js/ui/components/networkAgent.js:265
#| msgid "Private key password: "
#: js/ui/components/networkAgent.js:246 js/ui/components/networkAgent.js:269
msgid "Private key password"
msgstr "Privataus rakto slaptažodis"
#: js/ui/components/networkAgent.js:263
#| msgid "Identity: "
#: js/ui/components/networkAgent.js:267
msgid "Identity"
msgstr "Tapatybė"
#: js/ui/components/networkAgent.js:277
#| msgid "Service: "
#: js/ui/components/networkAgent.js:281
msgid "Service"
msgstr "Tarnyba"
#: js/ui/components/networkAgent.js:306 js/ui/components/networkAgent.js:334
#: js/ui/components/networkAgent.js:681 js/ui/components/networkAgent.js:702
#: js/ui/components/networkAgent.js:310 js/ui/components/networkAgent.js:338
#: js/ui/components/networkAgent.js:685 js/ui/components/networkAgent.js:706
msgid "Authentication required"
msgstr "Reikia patvirtinti tapatybę"
#: js/ui/components/networkAgent.js:307 js/ui/components/networkAgent.js:682
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:686
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -1133,44 +1126,42 @@ msgstr ""
"Slaptažodžiai arba šifravimo raktai yra būtini priėjimui prie belaidžio "
"tinklo „%s“."
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:686
#: js/ui/components/networkAgent.js:315 js/ui/components/networkAgent.js:690
msgid "Wired 802.1X authentication"
msgstr "Laidinis 802.1X tapatybės patvirtinimas"
#: js/ui/components/networkAgent.js:313
#| msgid "Network name: "
#: js/ui/components/networkAgent.js:317
msgid "Network name"
msgstr "Tinklo vardas"
#: js/ui/components/networkAgent.js:318 js/ui/components/networkAgent.js:690
#: js/ui/components/networkAgent.js:322 js/ui/components/networkAgent.js:694
msgid "DSL authentication"
msgstr "DSL tapatybės patvirtinimas"
#: js/ui/components/networkAgent.js:325 js/ui/components/networkAgent.js:695
#: js/ui/components/networkAgent.js:329 js/ui/components/networkAgent.js:699
msgid "PIN code required"
msgstr "Reikalingas PIN kodas"
#: js/ui/components/networkAgent.js:326 js/ui/components/networkAgent.js:696
#: js/ui/components/networkAgent.js:330 js/ui/components/networkAgent.js:700
msgid "PIN code is needed for the mobile broadband device"
msgstr "Reikalingas PIN kodas mobiliajam plačiajuosčiam įrenginiui"
#: js/ui/components/networkAgent.js:327
#| msgid "PIN: "
#: js/ui/components/networkAgent.js:331
msgid "PIN"
msgstr "PIN"
#: js/ui/components/networkAgent.js:335 js/ui/components/networkAgent.js:687
#: js/ui/components/networkAgent.js:691 js/ui/components/networkAgent.js:703
#: js/ui/components/networkAgent.js:707
#: js/ui/components/networkAgent.js:339 js/ui/components/networkAgent.js:691
#: js/ui/components/networkAgent.js:695 js/ui/components/networkAgent.js:707
#: js/ui/components/networkAgent.js:711
#, javascript-format
msgid "A password is required to connect to “%s”."
msgstr "Būtinas slaptažodis norint prisijungti prie „%s“."
#: js/ui/components/networkAgent.js:670 js/ui/status/network.js:1688
#: js/ui/components/networkAgent.js:674 js/ui/status/network.js:1691
msgid "Network Manager"
msgstr "Tinklo tvarkymas"
#: js/ui/components/networkAgent.js:706
#: js/ui/components/networkAgent.js:710
msgid "VPN password"
msgstr "VPN slaptažodis"
@ -1414,15 +1405,15 @@ msgstr "%s (nutolęs)"
msgid "%s (console)"
msgstr "%s (komandų eilutė)"
#: js/ui/extensionDownloader.js:170
#: js/ui/extensionDownloader.js:169
msgid "Install"
msgstr "Įdiegti"
#: js/ui/extensionDownloader.js:176
#: js/ui/extensionDownloader.js:175
msgid "Install Extension"
msgstr "Išdiegti plėtinį"
#: js/ui/extensionDownloader.js:177
#: js/ui/extensionDownloader.js:176
#, javascript-format
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Parsiųsti ir įdiegti „%s“ iš extensions.gnome.org?"
@ -1510,13 +1501,13 @@ msgid "Leave On"
msgstr "Palikti įjungtą"
#: js/ui/kbdA11yDialog.js:55 js/ui/status/bluetooth.js:135
#: js/ui/status/network.js:1285
#: js/ui/status/network.js:1288
msgid "Turn On"
msgstr "Įjungti"
#: js/ui/kbdA11yDialog.js:63 js/ui/status/bluetooth.js:135
#: js/ui/status/network.js:131 js/ui/status/network.js:315
#: js/ui/status/network.js:1285 js/ui/status/network.js:1397
#: js/ui/status/network.js:1288 js/ui/status/network.js:1400
#: js/ui/status/nightLight.js:41 js/ui/status/rfkill.js:81
#: js/ui/status/rfkill.js:108
msgid "Turn Off"
@ -1530,59 +1521,59 @@ msgstr "Palikti išjungtą"
msgid "Region & Language Settings"
msgstr "Regiono ir kalbos nustatymai"
#: js/ui/lookingGlass.js:659
#: js/ui/lookingGlass.js:665
msgid "No extensions installed"
msgstr "Nėra įdiegtų plėtinių"
#. Translators: argument is an extension UUID.
#: js/ui/lookingGlass.js:714
#: js/ui/lookingGlass.js:720
#, javascript-format
msgid "%s has not emitted any errors."
msgstr "%s nepranešė apie jokias klaidas."
#: js/ui/lookingGlass.js:720
#: js/ui/lookingGlass.js:726
msgid "Hide Errors"
msgstr "Slėpti klaidas"
#: js/ui/lookingGlass.js:724 js/ui/lookingGlass.js:789
#: js/ui/lookingGlass.js:730 js/ui/lookingGlass.js:795
msgid "Show Errors"
msgstr "Rodyti klaidas"
#: js/ui/lookingGlass.js:733
#: js/ui/lookingGlass.js:739
msgid "Enabled"
msgstr "Įjungta"
#. translators:
#. * The device has been disabled
#: js/ui/lookingGlass.js:736 subprojects/gvc/gvc-mixer-control.c:1892
#: js/ui/lookingGlass.js:742 subprojects/gvc/gvc-mixer-control.c:1892
msgid "Disabled"
msgstr "Išjungta"
#: js/ui/lookingGlass.js:738
#: js/ui/lookingGlass.js:744
msgid "Error"
msgstr "Klaida"
#: js/ui/lookingGlass.js:740
#: js/ui/lookingGlass.js:746
msgid "Out of date"
msgstr "Pasenęs"
#: js/ui/lookingGlass.js:742
#: js/ui/lookingGlass.js:748
msgid "Downloading"
msgstr "Atsiunčiama"
#: js/ui/lookingGlass.js:771
#: js/ui/lookingGlass.js:777
msgid "View Source"
msgstr "Žiūrėti šaltinį"
#: js/ui/lookingGlass.js:780
#: js/ui/lookingGlass.js:786
msgid "Web Page"
msgstr "Tinklalapis"
#: js/ui/main.js:267
#: js/ui/main.js:269
msgid "Logged in as a privileged user"
msgstr "Prisijungta privilegijuotu naudotoju"
#: js/ui/main.js:268
#: js/ui/main.js:270
msgid ""
"Running a session as a privileged user should be avoided for security "
"reasons. If possible, you should log in as a normal user."
@ -1590,15 +1581,15 @@ msgstr ""
"Saugumo sumetimais turėtų būti vengiama vykdyti seansus privilegijuotais "
"naudotojais. Jei įmanoma, turėtumėt visada prisjungti normaliu naudotoju."
#: js/ui/main.js:274
#: js/ui/main.js:276
msgid "Screen Lock disabled"
msgstr "Ekrano užraktas išjungtas"
#: js/ui/main.js:275
#: js/ui/main.js:277
msgid "Screen Locking requires the GNOME display manager."
msgstr "Ekrano užrakinimas reikalaujas GNOME vaizduoklio valdyklės."
#: js/ui/messageTray.js:1552
#: js/ui/messageTray.js:1554
msgid "System Information"
msgstr "Sistemos informacija"
@ -1625,7 +1616,6 @@ msgstr "Apžvalga"
#. active; it should not exceed ~30
#. characters.
#: js/ui/overview.js:107
#| msgid "Type to search…"
msgid "Type to search"
msgstr "Rašykite, ko ieškote"
@ -1653,23 +1643,23 @@ msgstr "Priskirti klavišų kombinaciją"
msgid "Done"
msgstr "Atlikta"
#: js/ui/padOsd.js:747
#: js/ui/padOsd.js:745
msgid "Edit…"
msgstr "Keisti…"
#: js/ui/padOsd.js:789 js/ui/padOsd.js:912
#: js/ui/padOsd.js:787 js/ui/padOsd.js:910
msgid "None"
msgstr "Nėra"
#: js/ui/padOsd.js:865
#: js/ui/padOsd.js:863
msgid "Press a button to configure"
msgstr "Spauskite mygtuką konfigūravimui"
#: js/ui/padOsd.js:866
#: js/ui/padOsd.js:864
msgid "Press Esc to exit"
msgstr "Spauskit Esc išėjimui"
#: js/ui/padOsd.js:869
#: js/ui/padOsd.js:867
msgid "Press any key to exit"
msgstr "Išėjimui spauskite bet kurį klavišą"
@ -1683,12 +1673,12 @@ msgstr "Užverti"
msgid "Activities"
msgstr "Apžvalga"
#: js/ui/panel.js:707
#: js/ui/panel.js:713
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: js/ui/panel.js:820
#: js/ui/panel.js:826
msgid "Top Bar"
msgstr "Viršutinė juosta"
@ -1719,11 +1709,11 @@ msgstr "GNOME aplinkai reikia užrakinti ekraną"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: js/ui/screenShield.js:244 js/ui/screenShield.js:602
#: js/ui/screenShield.js:244 js/ui/screenShield.js:598
msgid "Unable to lock"
msgstr "Nepavyksta užrakinti"
#: js/ui/screenShield.js:245 js/ui/screenShield.js:603
#: js/ui/screenShield.js:245 js/ui/screenShield.js:599
msgid "Lock was blocked by an application"
msgstr "Programa užblokavo užrakinimą"
@ -1785,7 +1775,6 @@ msgstr ""
"įrankį."
#: js/ui/shellMountOperation.js:306
#| msgid "Enter PIM Number…"
msgid "PIM Number"
msgstr "PIM numeris"
@ -1867,7 +1856,7 @@ msgstr "Didelis tekstas"
msgid "Bluetooth"
msgstr "Bluetooth"
#: js/ui/status/bluetooth.js:49 js/ui/status/network.js:590
#: js/ui/status/bluetooth.js:49 js/ui/status/network.js:591
msgid "Bluetooth Settings"
msgstr "Bluetooth nustatymai"
@ -1912,11 +1901,11 @@ msgstr "Antrinis paspaudimas"
msgid "Dwell Click"
msgstr "Uždelstas paspaudimas"
#: js/ui/status/keyboard.js:825
#: js/ui/status/keyboard.js:826
msgid "Keyboard"
msgstr "Klaviatūra"
#: js/ui/status/keyboard.js:847
#: js/ui/status/keyboard.js:848
msgid "Show Keyboard Layout"
msgstr "Rodyti klaviatūros išdėstymą"
@ -1963,7 +1952,7 @@ msgid "<unknown>"
msgstr "<nežinoma>"
#. Translators: %s is a network identifier
#: js/ui/status/network.js:420 js/ui/status/network.js:1314
#: js/ui/status/network.js:420 js/ui/status/network.js:1317
#, javascript-format
msgid "%s Off"
msgstr "%s išjungtas"
@ -1989,7 +1978,7 @@ msgid "%s Disconnecting"
msgstr "Atsijungiama nuo %s"
#. Translators: %s is a network identifier
#: js/ui/status/network.js:438 js/ui/status/network.js:1306
#: js/ui/status/network.js:438 js/ui/status/network.js:1309
#, javascript-format
msgid "%s Connecting"
msgstr "Jungiamasi prie %s"
@ -2029,7 +2018,7 @@ msgid "Mobile Broadband Settings"
msgstr "Mobiliojo plačiajuosčio tinklo nustatymai"
#. Translators: %s is a network identifier
#: js/ui/status/network.js:558 js/ui/status/network.js:1311
#: js/ui/status/network.js:558 js/ui/status/network.js:1314
#, javascript-format
msgid "%s Hardware Disabled"
msgstr "%s aparatinė įranga išjungta"
@ -2041,100 +2030,100 @@ msgstr "%s aparatinė įranga išjungta"
msgid "%s Disabled"
msgstr "%s išjungtas"
#: js/ui/status/network.js:602
#: js/ui/status/network.js:603
msgid "Connect to Internet"
msgstr "Prisijungti prie interneto"
#: js/ui/status/network.js:805
#: js/ui/status/network.js:808
msgid "Airplane Mode is On"
msgstr "Skrydžio veiksena įjungta"
#: js/ui/status/network.js:806
#: js/ui/status/network.js:809
msgid "Wi-Fi is disabled when airplane mode is on."
msgstr "Belaidis ryšys yra išjungta skrydžio veiksenoje."
#: js/ui/status/network.js:807
#: js/ui/status/network.js:810
msgid "Turn Off Airplane Mode"
msgstr "Išjungti skrydžio veikseną"
#: js/ui/status/network.js:816
#: js/ui/status/network.js:819
msgid "Wi-Fi is Off"
msgstr "Belaidžio ryšys išjungtas"
#: js/ui/status/network.js:817
#: js/ui/status/network.js:820
msgid "Wi-Fi needs to be turned on in order to connect to a network."
msgstr "Norint prisijungti prie tinklo reikia įjungti belaidį ryšį."
#: js/ui/status/network.js:818
#: js/ui/status/network.js:821
msgid "Turn On Wi-Fi"
msgstr "Įjungti belaidį ryšį"
#: js/ui/status/network.js:843
#: js/ui/status/network.js:846
msgid "Wi-Fi Networks"
msgstr "Wi-Fi tinklai"
#: js/ui/status/network.js:845
#: js/ui/status/network.js:848
msgid "Select a network"
msgstr "Pasirinkite tinklą"
#: js/ui/status/network.js:877
#: js/ui/status/network.js:880
msgid "No Networks"
msgstr "Nėra tinklų"
#: js/ui/status/network.js:898 js/ui/status/rfkill.js:106
#: js/ui/status/network.js:901 js/ui/status/rfkill.js:106
msgid "Use hardware switch to turn off"
msgstr "Išjungimui naudoti aparatinį jungiklį"
#: js/ui/status/network.js:1175
#: js/ui/status/network.js:1178
msgid "Select Network"
msgstr "Pasirinkite tinklą"
#: js/ui/status/network.js:1181
#: js/ui/status/network.js:1184
msgid "Wi-Fi Settings"
msgstr "Belaidžio ryšio nustatymai"
#. Translators: %s is a network identifier
#: js/ui/status/network.js:1302
#: js/ui/status/network.js:1305
#, javascript-format
msgid "%s Hotspot Active"
msgstr "Prieigos taškas %s aktyvus"
#. Translators: %s is a network identifier
#: js/ui/status/network.js:1317
#: js/ui/status/network.js:1320
#, javascript-format
msgid "%s Not Connected"
msgstr "Neprisijungta prie %s"
#: js/ui/status/network.js:1414
#: js/ui/status/network.js:1417
msgid "connecting…"
msgstr "jungiamasi…"
#. Translators: this is for network connections that require some kind of key or password
#: js/ui/status/network.js:1417
#: js/ui/status/network.js:1420
msgid "authentication required"
msgstr "reikia patvirtinti tapatybę"
#: js/ui/status/network.js:1419
#: js/ui/status/network.js:1422
msgid "connection failed"
msgstr "nepavyko prisijungti"
#: js/ui/status/network.js:1470
#: js/ui/status/network.js:1473
msgid "VPN Settings"
msgstr "VPN nustatymai"
#: js/ui/status/network.js:1487
#: js/ui/status/network.js:1490
msgid "VPN"
msgstr "VPN"
#: js/ui/status/network.js:1497
#: js/ui/status/network.js:1500
msgid "VPN Off"
msgstr "VPN išjungtas"
#: js/ui/status/network.js:1558 js/ui/status/rfkill.js:84
#: js/ui/status/network.js:1561 js/ui/status/rfkill.js:84
msgid "Network Settings"
msgstr "Tinklo nustatymai"
#: js/ui/status/network.js:1587
#: js/ui/status/network.js:1590
#, javascript-format
msgid "%s Wired Connection"
msgid_plural "%s Wired Connections"
@ -2142,7 +2131,7 @@ msgstr[0] "%s laidinis ryšys"
msgstr[1] "%s laidiniai ryšiai"
msgstr[2] "%s laidinių ryšių"
#: js/ui/status/network.js:1591
#: js/ui/status/network.js:1594
#, javascript-format
msgid "%s Wi-Fi Connection"
msgid_plural "%s Wi-Fi Connections"
@ -2150,7 +2139,7 @@ msgstr[0] "%s belaidis ryšys"
msgstr[1] "%s belaidžiai ryšiai"
msgstr[2] "%s belaidžių ryšių"
#: js/ui/status/network.js:1595
#: js/ui/status/network.js:1598
#, javascript-format
msgid "%s Modem Connection"
msgid_plural "%s Modem Connections"
@ -2158,11 +2147,11 @@ msgstr[0] "%s modemo ryšys"
msgstr[1] "%s modemo ryšiai"
msgstr[2] "%s modemo ryšių"
#: js/ui/status/network.js:1729
#: js/ui/status/network.js:1732
msgid "Connection failed"
msgstr "Nepavyko prisijungti"
#: js/ui/status/network.js:1730
#: js/ui/status/network.js:1733
msgid "Activation of network connection failed"
msgstr "Tinklo ryšio nepavyko aktyvuoti"
@ -2260,11 +2249,11 @@ msgstr "Išjungti…"
msgid "Thunderbolt"
msgstr "Thunderbolt"
#: js/ui/status/thunderbolt.js:324
#: js/ui/status/thunderbolt.js:325
msgid "Unknown Thunderbolt device"
msgstr "Nežinoma Thunderbolt įrenginys"
#: js/ui/status/thunderbolt.js:325
#: js/ui/status/thunderbolt.js:326
msgid ""
"New device has been detected while you were away. Please disconnect and "
"reconnect the device to start using it."
@ -2272,20 +2261,20 @@ msgstr ""
"Jums nesant aptiktas naujas įrenginys. Atjunkite ir vėl prijunkite įrenginį, "
"jei norite jį naudoti."
#: js/ui/status/thunderbolt.js:328
#: js/ui/status/thunderbolt.js:329
msgid "Unauthorized Thunderbolt device"
msgstr "Neleidžiamas Thunderbolt įrenginys"
#: js/ui/status/thunderbolt.js:329
#: js/ui/status/thunderbolt.js:330
msgid ""
"New device has been detected and needs to be authorized by an administrator."
msgstr "Buvo aptiktas naujas įrenginys, kurį turi leisti administratorius."
#: js/ui/status/thunderbolt.js:335
#: js/ui/status/thunderbolt.js:336
msgid "Thunderbolt authorization error"
msgstr "Thunderbolt autorizacijos klaida"
#: js/ui/status/thunderbolt.js:336
#: js/ui/status/thunderbolt.js:337
#, javascript-format
msgid "Could not authorize the Thunderbolt device: %s"
msgstr "Nepavyko autorizuoti Thunderbolt įrenginio: %s"
@ -2326,10 +2315,30 @@ msgstr "Tik išorinis"
msgid "Built-in Only"
msgstr "Tik vidinis"
#: js/ui/unlockDialog.js:552
#. Translators: This is a time format for a date in
#. long format
#: js/ui/unlockDialog.js:370
#| msgctxt "calendar heading"
#| msgid "%A, %B %-d"
msgid "%A %B %-d"
msgstr "%A %B %-d"
#: js/ui/unlockDialog.js:376
msgid "Swipe up to unlock"
msgstr "Atrakinkite perbraukdami"
#: js/ui/unlockDialog.js:377
msgid "Click or press a key to unlock"
msgstr "Atrakinkite mygtuko ar klavišo paspaudimu"
#: js/ui/unlockDialog.js:549
msgid "Unlock Window"
msgstr "Atrakinimo langas"
#: js/ui/unlockDialog.js:558
msgid "Log in as another user"
msgstr "Prisijungti kitu naudotoju"
#: js/ui/viewSelector.js:181
msgid "Applications"
msgstr "Programos"
@ -2369,7 +2378,7 @@ msgstr[2] "Pakeitimai bus grąžinti po %d sekundžių"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height.
#: js/ui/windowManager.js:542
#: js/ui/windowManager.js:544
#, javascript-format
msgid "%d × %d"
msgstr "%d × %d"
@ -2630,7 +2639,6 @@ msgid "Show extensions with preferences"
msgstr "Rodyti plėtinius su nuostatomis"
#: subprojects/extensions-tool/src/command-list.c:140
#| msgid "Show extensions with preferences"
msgid "Show extensions with updates"
msgstr "Rodyti plėtinius su atnaujinimais"
@ -2851,9 +2859,6 @@ msgstr "Sistemos garsai"
#~ msgstr[1] "%d nauji pranešimai"
#~ msgstr[2] "%d naujų pranešimų"
#~ msgid "Log in as another user"
#~ msgstr "Prisijungti kitu naudotoju"
#~ msgid "Logout…"
#~ msgstr "Atsijungti…"

1686
po/nl.po

File diff suppressed because it is too large Load Diff

1821
po/pa.po

File diff suppressed because it is too large Load Diff

1938
po/uk.po

File diff suppressed because it is too large Load Diff

View File

@ -29,6 +29,7 @@ struct _ShellTrayManagerPrivate {
ClutterColor bg_color;
GHashTable *icons;
StWidget *theme_widget;
};
typedef struct {
@ -58,6 +59,8 @@ static guint shell_tray_manager_signals [LAST_SIGNAL] = { 0 };
static const ClutterColor default_color = { 0x00, 0x00, 0x00, 0xff };
static void shell_tray_manager_release_resources (ShellTrayManager *manager);
static void na_tray_icon_added (NaTrayManager *na_manager, GtkWidget *child, gpointer manager);
static void na_tray_icon_removed (NaTrayManager *na_manager, GtkWidget *child, gpointer manager);
@ -125,16 +128,7 @@ shell_tray_manager_init (ShellTrayManager *manager)
{
manager->priv = shell_tray_manager_get_instance_private (manager);
manager->priv->na_manager = na_tray_manager_new ();
manager->priv->icons = g_hash_table_new_full (NULL, NULL,
NULL, free_tray_icon);
manager->priv->bg_color = default_color;
g_signal_connect (manager->priv->na_manager, "tray-icon-added",
G_CALLBACK (na_tray_icon_added), manager);
g_signal_connect (manager->priv->na_manager, "tray-icon-removed",
G_CALLBACK (na_tray_icon_removed), manager);
}
static void
@ -142,8 +136,7 @@ shell_tray_manager_finalize (GObject *object)
{
ShellTrayManager *manager = SHELL_TRAY_MANAGER (object);
g_object_unref (manager->priv->na_manager);
g_hash_table_destroy (manager->priv->icons);
shell_tray_manager_release_resources (manager);
G_OBJECT_CLASS (shell_tray_manager_parent_class)->finalize (object);
}
@ -193,6 +186,30 @@ shell_tray_manager_new (void)
return g_object_new (SHELL_TYPE_TRAY_MANAGER, NULL);
}
static void
shell_tray_manager_ensure_resources (ShellTrayManager *manager)
{
if (manager->priv->na_manager != NULL)
return;
manager->priv->icons = g_hash_table_new_full (NULL, NULL,
NULL, free_tray_icon);
manager->priv->na_manager = na_tray_manager_new ();
g_signal_connect (manager->priv->na_manager, "tray-icon-added",
G_CALLBACK (na_tray_icon_added), manager);
g_signal_connect (manager->priv->na_manager, "tray-icon-removed",
G_CALLBACK (na_tray_icon_removed), manager);
}
static void
shell_tray_manager_release_resources (ShellTrayManager *manager)
{
g_clear_object (&manager->priv->na_manager);
g_clear_pointer (&manager->priv->icons, g_hash_table_destroy);
}
static void
shell_tray_manager_style_changed (StWidget *theme_widget,
gpointer user_data)
@ -201,6 +218,9 @@ shell_tray_manager_style_changed (StWidget *theme_widget,
StThemeNode *theme_node;
StIconColors *icon_colors;
if (manager->priv->na_manager == NULL)
return;
theme_node = st_widget_get_theme_node (theme_widget);
icon_colors = st_theme_node_get_icon_colors (theme_node);
na_tray_manager_set_colors (manager->priv->na_manager,
@ -208,11 +228,30 @@ shell_tray_manager_style_changed (StWidget *theme_widget,
&icon_colors->error, &icon_colors->success);
}
static void
shell_tray_manager_manage_screen_internal (ShellTrayManager *manager)
{
shell_tray_manager_ensure_resources (manager);
na_tray_manager_manage_screen (manager->priv->na_manager);
}
void
shell_tray_manager_manage_screen (ShellTrayManager *manager,
StWidget *theme_widget)
{
na_tray_manager_manage_screen (manager->priv->na_manager);
MetaDisplay *display = shell_global_get_display (shell_global_get ());
g_set_weak_pointer (&manager->priv->theme_widget, theme_widget);
if (meta_display_get_x11_display (display) != NULL)
shell_tray_manager_manage_screen_internal (manager);
g_signal_connect_object (display, "x11-display-setup",
G_CALLBACK (shell_tray_manager_manage_screen_internal),
manager, G_CONNECT_SWAPPED);
g_signal_connect_object (display, "x11-display-closing",
G_CALLBACK (shell_tray_manager_release_resources),
manager, G_CONNECT_SWAPPED);
g_signal_connect_object (theme_widget, "style-changed",
G_CALLBACK (shell_tray_manager_style_changed),
@ -220,6 +259,24 @@ shell_tray_manager_manage_screen (ShellTrayManager *manager,
shell_tray_manager_style_changed (theme_widget, manager);
}
void
shell_tray_manager_unmanage_screen (ShellTrayManager *manager)
{
MetaDisplay *display = shell_global_get_display (shell_global_get ());
g_signal_handlers_disconnect_by_data (display, manager);
if (manager->priv->theme_widget != NULL)
{
g_signal_handlers_disconnect_by_func (manager->priv->theme_widget,
G_CALLBACK (shell_tray_manager_style_changed),
manager);
}
g_set_weak_pointer (&manager->priv->theme_widget, NULL);
shell_tray_manager_release_resources (manager);
}
static void
shell_tray_manager_child_on_realize (GtkWidget *widget,
ShellTrayManagerChild *child)

View File

@ -15,6 +15,7 @@ G_DECLARE_FINAL_TYPE (ShellTrayManager, shell_tray_manager,
ShellTrayManager *shell_tray_manager_new (void);
void shell_tray_manager_manage_screen (ShellTrayManager *manager,
StWidget *theme_widget);
void shell_tray_manager_unmanage_screen (ShellTrayManager *manager);
G_END_DECLS