Compare commits

..

11 Commits

Author SHA1 Message Date
Carlos Garnacho
9a13882a95 clutter: Make ClutterText request toggling the input panel
So gnome-shell is able to show the OSK for it.
2017-12-22 17:16:57 +01:00
Carlos Garnacho
4f6a3cd874 clutter: Add clutter_text_has_preedit()
This function returns TRUE if there is any preedit going on.
2017-12-22 17:01:14 +01:00
Carlos Garnacho
59e89f0d63 clutter: Add input-purpose/hint properties to ClutterText
So those properties can be changed or queried within shell UI.
2017-12-22 17:01:14 +01:00
Carlos Garnacho
8ec46e8021 wayland: Bolt MetaWaylandTextInput in.
Offer the text-input interface global, so it can be used by clients. The
MetaWaylandSeat will also let MetaWaylandTextInput intercept key events
before the keyboard interface handles those.
2017-12-22 17:01:14 +01:00
Carlos Garnacho
92ce68d257 wayland: Let IM-processed key events go through MetaWaylandKeyboard
Those have the "synthetic" flag as set by Clutter guts, but should be
processed anyway. Perhaps a "key-repeat" flat would make sense...
2017-12-22 17:01:13 +01:00
Carlos Garnacho
ff79e651f0 wayland: Implement text input protocol 2017-12-22 17:01:13 +01:00
Carlos Garnacho
0f9b388526 protocol: Add internal text input protocol 2017-12-22 17:00:35 +01:00
Carlos Garnacho
d7cb3da324 clutter: Make ClutterText implement ClutterInputFocus
This only applies when the actor is editable. Implementing this interface
will allow it to interact with the input method.
2017-12-22 16:59:50 +01:00
Carlos Garnacho
ca654ac544 clutter: Add ClutterBackend IM setter/getter
The input method will be global to Clutter, these methods allow setting
one up.
2017-12-22 16:59:50 +01:00
Carlos Garnacho
6e3b0eb430 clutter: Add ClutterInputMethod and ClutterInputFocus 2017-12-22 16:59:50 +01:00
Carlos Garnacho
3483cc8831 Clutter: Add special event flag for events that went through an IM
This will be useful to let Clutter know whether those should be or have
already been dispatched through an input method.
2017-12-22 16:59:50 +01:00
147 changed files with 6115 additions and 11900 deletions

8
.gitignore vendored
View File

@@ -92,14 +92,6 @@ src/xdg-output-unstable-v1-protocol.c
src/xdg-output-unstable-v1-server-protocol.h src/xdg-output-unstable-v1-server-protocol.h
src/xwayland-keyboard-grab-unstable-v1-protocol.c src/xwayland-keyboard-grab-unstable-v1-protocol.c
src/xwayland-keyboard-grab-unstable-v1-server-protocol.h src/xwayland-keyboard-grab-unstable-v1-server-protocol.h
src/tablet-unstable-v*-protocol.c
src/tablet-unstable-v*-server-protocol.h
src/keyboard-shortcuts-inhibit-unstable-v*-protocol.c
src/keyboard-shortcuts-inhibit-unstable-v*-server-protocol.h
src/linux-dmabuf-unstable-v*-protocol.c
src/linux-dmabuf-unstable-v*-server-protocol.h
src/xdg-shell-protocol.c
src/xdg-shell-server-protocol.h
src/meta/meta-version.h src/meta/meta-version.h
src/libmutter-*.pc src/libmutter-*.pc
doc/reference/*.args doc/reference/*.args

78
NEWS
View File

@@ -1,81 +1,3 @@
3.28.0
======
* Fix xdg-foreign regression [Carlos; #63]
Contributors:
Carlos Garnacho, Georges Basile Stavracas Neto
Translators:
Marek Cernocky [cs], Ask Hjorth Larsen [da], Chao-Hsiung Liao [zh_TW],
Anders Jonsson [sv], Mart Raudsepp [et]
3.27.92
=======
* Fix use of modifiers with multi-GPU systems [Louis-Francis; #18]
* Add xdg-shell stable support [Jonas; #791938]
* Fix scaling of icons in titlebar buttons [Egmont; #23]
* Implement missing wacom functionality on X11 [Carlos; #48]
* Force 8-bit RGB config [Jonas; #2]
* Misc. bug fixes [Jonas, Olivier, Robert; #6, #27, #792203]
Contributors:
Jonas Ådahl, Olivier Fourdan, Carlos Garnacho, Egmont Koblinger, Robert Mader,
Bastien Nocera, Louis-Francis Ratté-Boulianne
Translators:
Daniel Mustieles [es], Марко Костић [sr], Милош Поповић [sr@latin],
Fran Dieguez [gl], Balázs Úr [hu], Gwan-gyeong Mun [ko], Rūdolfs Mazurs [lv],
Milo Casagrande [it], Mario Blättermann [de], GNOME Translation Robot [gd,
nl], Claude Paroz [fr], Aurimas Černius [lt]
3.27.91
=======
* Fix handling of trackball settings on wayland [Carlos; #787804]
* Apply font settings on wayland [Daniel; #645433]
* Fix keybindings getting mixed up with some layouts [Jonas; #789300]
* Fix bluetooth mouse cursor disappearing after idle [Benoit; #761067]
* Support platforms that export EGL_KHR_platform_gbm [memeka; #780668]
* Add keyboard accessibility support on wayland [Olivier; #788564]
* Fix missing cursor when using screen magnifier [Carlos; #754806]
* Fix external monitor shutting off on wayland when lid closes [Jonas; #788915]
* Add xdg-output support [Olivier; #787363]
* Add Xwayland grab keyboard support [Olivier; #783342]
* Allow shortcut inhibition of the super key [Olivier; #790627]
* Take "panel orientation" drm_connector property into account [Hans; #782294]
* Fix focus window ending up below other windows on wayland [Olivier; #780820]
* Fix maximized windows restoring to a tiny size on wayland [Olivier; #783901]
* Fix tap-and-drag setting on X11 [Jonas; #775755]
* Fix handling of single-touch devices on wayland [Carlos; #792005]
* Support tiled/compressed buffers [Daniel; #785779]
* Port screencast support to pipewire 0.1.8 [Jonas; #792854]
* Add support for third stylus button on newer tablets [Jason; #790033]
* Fix background corruption regression on nvidia [Jonas; #739178]
* Misc. bug fixes [Jonas, Rui, Michael, Marco, Carlos, Olivier, Philip, Piotr,
Ting-Wei, Daniel, Jeremy, Hans, Florian, Ray, Jeff, George, Gwan-gyeong;
#789153, #788493, #784314, #789227, #789223, #789277, #782344, #789552,
#789553, #788695, #789984, #788764, #789386, #784545, #790336, #790358,
#791022, #791006, #789070, #772218, #791383, #791809, #776220, #791916,
#792281, #790309, #791371, #792527, #792599, #788834, #792765, #792062,
#645460, #792853, !2, #792818, #8, #12, #789501, #10, #789961, #13, !15, #1,
#26, #28, #35, #36, #38]
Contributors:
Jonas Ådahl, Jeremy Bicha, Michael Catanzaro, Piotr Drąg, Olivier Fourdan,
Carlos Garnacho, Jason Gerecke, Hans de Goede, Benoit Gschwind,
Peter Hutterer, George Kiagiadakis, Ting-Wei Lan, Rui Matos, memeka,
Florian Müllner, Gwan-gyeong Mun, Jeremy Nickurak, Marc-Antoine Perennou,
Jeff Smith, Daniel Stone, Ray Strode, Marco Trevisan (Treviño),
Daniel van Vugt, Philip Withnall
Translators:
Khaled Hosny [ar], Kjartan Maraas [nb], Piotr Drąg [pl],
Rafael Fontenelle [pt_BR], Christian Kirbach [de], Anders Jonsson [sv],
Charles Monzat [fr], Marek Cernocky [cs], Muhammet Kara [tr],
Milo Casagrande [it], Pawan Chitrakar [ne], Yosef Or Boczko [he],
Kukuh Syafaat [id], Daniel Mustieles [es], Fabio Tomat [fur],
Kristjan SCHMIDT [eo], Balázs Úr [hu], Andika Triwidada [id],
Fran Dieguez [gl], gogo [hr]
3.27.1 3.27.1
====== ======
* Work with clients that require older linux_dmabuf protocol [Daniel; #788558] * Work with clients that require older linux_dmabuf protocol [Daniel; #788558]

View File

@@ -233,8 +233,6 @@ source_h_priv = \
clutter-flatten-effect.h \ clutter-flatten-effect.h \
clutter-gesture-action-private.h \ clutter-gesture-action-private.h \
clutter-id-pool.h \ clutter-id-pool.h \
clutter-input-focus-private.h \
clutter-input-method-private.h \
clutter-master-clock.h \ clutter-master-clock.h \
clutter-master-clock-default.h \ clutter-master-clock-default.h \
clutter-offscreen-effect-private.h \ clutter-offscreen-effect-private.h \

View File

@@ -516,21 +516,6 @@ clutter_device_manager_create_virtual_device (ClutterDeviceManager *device_man
device_type); device_type);
} }
/**
* clutter_device_manager_supported_virtua_device_types: (skip)
*/
ClutterVirtualDeviceType
clutter_device_manager_get_supported_virtual_device_types (ClutterDeviceManager *device_manager)
{
ClutterDeviceManagerClass *manager_class;
g_return_val_if_fail (CLUTTER_IS_DEVICE_MANAGER (device_manager),
CLUTTER_VIRTUAL_DEVICE_TYPE_NONE);
manager_class = CLUTTER_DEVICE_MANAGER_GET_CLASS (device_manager);
return manager_class->get_supported_virtual_device_types (device_manager);
}
void void
_clutter_device_manager_compress_motion (ClutterDeviceManager *device_manager, _clutter_device_manager_compress_motion (ClutterDeviceManager *device_manager,
ClutterEvent *event, ClutterEvent *event,

View File

@@ -44,16 +44,6 @@ typedef struct _ClutterDeviceManager ClutterDeviceManager;
typedef struct _ClutterDeviceManagerPrivate ClutterDeviceManagerPrivate; typedef struct _ClutterDeviceManagerPrivate ClutterDeviceManagerPrivate;
typedef struct _ClutterDeviceManagerClass ClutterDeviceManagerClass; typedef struct _ClutterDeviceManagerClass ClutterDeviceManagerClass;
/**
* ClutterVirtualDeviceType:
*/
typedef enum _ClutterVirtualDeviceType
{
CLUTTER_VIRTUAL_DEVICE_TYPE_NONE = 0,
CLUTTER_VIRTUAL_DEVICE_TYPE_KEYBOARD = 1 << 0,
CLUTTER_VIRTUAL_DEVICE_TYPE_POINTER = 1 << 1,
CLUTTER_VIRTUAL_DEVICE_TYPE_TOUCHSCREEN = 1 << 2,
} ClutterVirtualDeviceType;
/** /**
* ClutterKbdA11ySettings: * ClutterKbdA11ySettings:
@@ -114,7 +104,6 @@ struct _ClutterDeviceManagerClass
ClutterStage *stage); ClutterStage *stage);
ClutterVirtualInputDevice *(* create_virtual_device) (ClutterDeviceManager *device_manager, ClutterVirtualInputDevice *(* create_virtual_device) (ClutterDeviceManager *device_manager,
ClutterInputDeviceType device_type); ClutterInputDeviceType device_type);
ClutterVirtualDeviceType (* get_supported_virtual_device_types) (ClutterDeviceManager *device_manager);
void (* compress_motion) (ClutterDeviceManager *device_manger, void (* compress_motion) (ClutterDeviceManager *device_manger,
ClutterEvent *event, ClutterEvent *event,
const ClutterEvent *to_discard); const ClutterEvent *to_discard);
@@ -146,9 +135,6 @@ CLUTTER_AVAILABLE_IN_ALL
ClutterVirtualInputDevice *clutter_device_manager_create_virtual_device (ClutterDeviceManager *device_manager, ClutterVirtualInputDevice *clutter_device_manager_create_virtual_device (ClutterDeviceManager *device_manager,
ClutterInputDeviceType device_type); ClutterInputDeviceType device_type);
CLUTTER_AVAILABLE_IN_ALL
ClutterVirtualDeviceType clutter_device_manager_get_supported_virtual_device_types (ClutterDeviceManager *device_manager);
CLUTTER_AVAILABLE_IN_ALL CLUTTER_AVAILABLE_IN_ALL
void clutter_device_manager_set_kbd_a11y_settings (ClutterDeviceManager *device_manager, void clutter_device_manager_set_kbd_a11y_settings (ClutterDeviceManager *device_manager,
ClutterKbdA11ySettings *settings); ClutterKbdA11ySettings *settings);

View File

@@ -1,40 +0,0 @@
/*
* Copyright (C) 2017,2018 Red Hat
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* Author: Carlos Garnacho <carlosg@gnome.org>
*/
#ifndef __CLUTTER_INPUT_FOCUS_PRIVATE_H__
#define __CLUTTER_INPUT_FOCUS_PRIVATE_H__
void clutter_input_focus_focus_in (ClutterInputFocus *focus,
ClutterInputMethod *method);
void clutter_input_focus_focus_out (ClutterInputFocus *focus);
void clutter_input_focus_commit (ClutterInputFocus *focus,
const gchar *text);
void clutter_input_focus_delete_surrounding (ClutterInputFocus *focus,
guint offset,
guint len);
void clutter_input_focus_request_surrounding (ClutterInputFocus *focus);
void clutter_input_focus_set_preedit_text (ClutterInputFocus *focus,
const gchar *preedit,
guint cursor);
#endif /* __CLUTTER_INPUT_FOCUS_PRIVATE_H__ */

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2017,2018 Red Hat * Copyright (C) 2017 Red Hat
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
@@ -22,84 +22,95 @@
#include "clutter-build-config.h" #include "clutter-build-config.h"
#include "clutter/clutter-input-focus.h" #include "clutter/clutter-input-focus.h"
#include "clutter/clutter-input-focus-private.h"
#include "clutter/clutter-input-method-private.h"
typedef struct _ClutterInputFocusPrivate ClutterInputFocusPrivate; enum {
FOCUS_IN,
struct _ClutterInputFocusPrivate FOCUS_OUT,
{ COMMIT,
ClutterInputMethod *im; DELETE_SURROUNDING,
REQUEST_SURROUNDING,
SET_PREEDIT_TEXT,
N_SIGNALS,
}; };
G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (ClutterInputFocus, clutter_input_focus, G_TYPE_OBJECT) static guint signals[N_SIGNALS] = { 0 };
G_DEFINE_INTERFACE (ClutterInputFocus, clutter_input_focus, G_TYPE_OBJECT)
static void static void
clutter_input_focus_real_focus_in (ClutterInputFocus *focus, clutter_input_focus_default_init (ClutterInputFocusInterface *iface)
ClutterInputMethod *im)
{ {
ClutterInputFocusPrivate *priv; signals[FOCUS_IN] =
g_signal_new ("focus-in",
priv = clutter_input_focus_get_instance_private (focus); CLUTTER_TYPE_INPUT_FOCUS,
priv->im = im; G_SIGNAL_RUN_LAST,
} G_STRUCT_OFFSET (ClutterInputFocusInterface, focus_in),
NULL, NULL, NULL,
static void G_TYPE_NONE, 1, CLUTTER_TYPE_INPUT_METHOD);
clutter_input_focus_real_focus_out (ClutterInputFocus *focus) signals[FOCUS_OUT] =
{ g_signal_new ("focus-out",
ClutterInputFocusPrivate *priv; CLUTTER_TYPE_INPUT_FOCUS,
G_SIGNAL_RUN_LAST,
priv = clutter_input_focus_get_instance_private (focus); G_STRUCT_OFFSET (ClutterInputFocusInterface, focus_out),
priv->im = NULL; NULL, NULL, NULL,
} G_TYPE_NONE, 0);
signals[COMMIT] =
static void g_signal_new ("commit",
clutter_input_focus_class_init (ClutterInputFocusClass *klass) CLUTTER_TYPE_INPUT_FOCUS,
{ G_SIGNAL_RUN_LAST,
klass->focus_in = clutter_input_focus_real_focus_in; G_STRUCT_OFFSET (ClutterInputFocusInterface, commit_text),
klass->focus_out = clutter_input_focus_real_focus_out; NULL, NULL, NULL,
} G_TYPE_NONE, 1, G_TYPE_STRING);
signals[DELETE_SURROUNDING] =
static void g_signal_new ("delete-surrounding",
clutter_input_focus_init (ClutterInputFocus *focus) CLUTTER_TYPE_INPUT_FOCUS,
{ G_SIGNAL_RUN_LAST,
} G_STRUCT_OFFSET (ClutterInputFocusInterface, delete_surrounding),
NULL, NULL, NULL,
gboolean G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_UINT);
clutter_input_focus_is_focused (ClutterInputFocus *focus) signals[REQUEST_SURROUNDING] =
{ g_signal_new ("request-surrounding",
ClutterInputFocusPrivate *priv; CLUTTER_TYPE_INPUT_FOCUS,
G_SIGNAL_RUN_LAST,
priv = clutter_input_focus_get_instance_private (focus); G_STRUCT_OFFSET (ClutterInputFocusInterface, request_surrounding),
NULL, NULL, NULL,
return !!priv->im; G_TYPE_NONE, 0);
signals[SET_PREEDIT_TEXT] =
g_signal_new ("set-preedit-text",
CLUTTER_TYPE_INPUT_FOCUS,
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (ClutterInputFocusInterface, set_preedit_text),
NULL, NULL, NULL,
G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_UINT);
} }
void void
clutter_input_focus_reset (ClutterInputFocus *focus) clutter_input_focus_reset (ClutterInputFocus *focus)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (clutter_input_focus_is_focused (focus));
priv = clutter_input_focus_get_instance_private (focus); if (clutter_input_method_get_focus (method) != focus)
return;
clutter_input_method_reset (priv->im); CLUTTER_INPUT_METHOD_GET_CLASS (method)->reset (method);
} }
void void
clutter_input_focus_set_cursor_location (ClutterInputFocus *focus, clutter_input_focus_set_cursor_location (ClutterInputFocus *focus,
const ClutterRect *rect) const ClutterRect *rect)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (clutter_input_focus_is_focused (focus));
priv = clutter_input_focus_get_instance_private (focus); if (clutter_input_method_get_focus (method) != focus)
return;
clutter_input_method_set_cursor_location (priv->im, rect); CLUTTER_INPUT_METHOD_GET_CLASS (method)->set_cursor_location (method, rect);
} }
void void
@@ -108,136 +119,111 @@ clutter_input_focus_set_surrounding (ClutterInputFocus *focus,
guint cursor, guint cursor,
guint anchor) guint anchor)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (clutter_input_focus_is_focused (focus));
priv = clutter_input_focus_get_instance_private (focus); if (clutter_input_method_get_focus (method) != focus)
return;
clutter_input_method_set_surrounding (priv->im, text, cursor, anchor); CLUTTER_INPUT_METHOD_GET_CLASS (method)->set_surrounding (method, text, cursor, anchor);
} }
void void
clutter_input_focus_set_content_hints (ClutterInputFocus *focus, clutter_input_focus_set_content_hints (ClutterInputFocus *focus,
ClutterInputContentHintFlags hints) ClutterInputContentHintFlags hints)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (clutter_input_focus_is_focused (focus));
priv = clutter_input_focus_get_instance_private (focus); if (clutter_input_method_get_focus (method) != focus)
return;
clutter_input_method_set_content_hints (priv->im, hints); g_object_set (G_OBJECT (method), "content-hints", hints, NULL);
} }
void void
clutter_input_focus_set_content_purpose (ClutterInputFocus *focus, clutter_input_focus_set_content_purpose (ClutterInputFocus *focus,
ClutterInputContentPurpose purpose) ClutterInputContentPurpose purpose)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (clutter_input_focus_is_focused (focus));
priv = clutter_input_focus_get_instance_private (focus); if (clutter_input_method_get_focus (method) != focus)
return;
clutter_input_method_set_content_purpose (priv->im, purpose); g_object_set (G_OBJECT (method), "content-purpose", purpose, NULL);
}
void
clutter_input_focus_focus_in (ClutterInputFocus *focus)
{
ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
clutter_input_method_focus_in (method, focus);
}
void
clutter_input_focus_focus_out (ClutterInputFocus *focus)
{
ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
if (clutter_input_method_get_focus (method) == focus)
clutter_input_method_focus_out (method);
} }
gboolean gboolean
clutter_input_focus_filter_key_event (ClutterInputFocus *focus, clutter_input_focus_filter_key_event (ClutterInputFocus *focus,
const ClutterKeyEvent *key) const ClutterKeyEvent *key)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_val_if_fail (CLUTTER_IS_INPUT_FOCUS (focus), FALSE); g_return_val_if_fail (CLUTTER_IS_INPUT_METHOD (method), FALSE);
g_return_val_if_fail (clutter_input_focus_is_focused (focus), FALSE);
priv = clutter_input_focus_get_instance_private (focus); if (clutter_event_get_flags ((ClutterEvent *) key) & CLUTTER_EVENT_FLAG_INPUT_METHOD)
return FALSE;
return clutter_input_method_filter_key_event (priv->im, key); if (clutter_input_method_get_focus (method) == focus)
{
ClutterInputMethodClass *im_class = CLUTTER_INPUT_METHOD_GET_CLASS (method);
if (im_class->filter_key_event)
return im_class->filter_key_event (method, (const ClutterEvent *) key);
}
return FALSE;
} }
void void
clutter_input_focus_set_can_show_preedit (ClutterInputFocus *focus, clutter_input_focus_set_can_show_preedit (ClutterInputFocus *focus,
gboolean can_show_preedit) gboolean can_show_preedit)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); if (clutter_input_method_get_focus (method) == focus)
g_return_if_fail (clutter_input_focus_is_focused (focus)); g_object_set (G_OBJECT (method), "can-show-preedit", can_show_preedit, NULL);
priv = clutter_input_focus_get_instance_private (focus);
clutter_input_method_set_can_show_preedit (priv->im, can_show_preedit);
} }
void void
clutter_input_focus_request_toggle_input_panel (ClutterInputFocus *focus) clutter_input_focus_request_toggle_input_panel (ClutterInputFocus *focus)
{ {
ClutterInputFocusPrivate *priv; ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); if (clutter_input_method_get_focus (method) == focus)
g_return_if_fail (clutter_input_focus_is_focused (focus)); {
g_signal_emit_by_name (method, "input-panel-state",
priv = clutter_input_focus_get_instance_private (focus); CLUTTER_INPUT_PANEL_STATE_TOGGLE);
}
clutter_input_method_toggle_input_panel (priv->im);
}
void
clutter_input_focus_focus_in (ClutterInputFocus *focus,
ClutterInputMethod *im)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->focus_in (focus, im);
}
void
clutter_input_focus_focus_out (ClutterInputFocus *focus)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->focus_out (focus);
}
void
clutter_input_focus_commit (ClutterInputFocus *focus,
const gchar *text)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->commit_text (focus, text);
}
void
clutter_input_focus_delete_surrounding (ClutterInputFocus *focus,
guint offset,
guint len)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->delete_surrounding (focus, offset, len);
}
void
clutter_input_focus_request_surrounding (ClutterInputFocus *focus)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->request_surrounding (focus);
}
void
clutter_input_focus_set_preedit_text (ClutterInputFocus *focus,
const gchar *preedit,
guint cursor)
{
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
CLUTTER_INPUT_FOCUS_GET_CLASS (focus)->set_preedit_text (focus, preedit, cursor);
} }

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2017,2018 Red Hat * Copyright (C) 2017 Red Hat
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
@@ -27,12 +27,13 @@
#define CLUTTER_TYPE_INPUT_FOCUS (clutter_input_focus_get_type ()) #define CLUTTER_TYPE_INPUT_FOCUS (clutter_input_focus_get_type ())
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
G_DECLARE_DERIVABLE_TYPE (ClutterInputFocus, clutter_input_focus, G_DECLARE_INTERFACE (ClutterInputFocus, clutter_input_focus,
CLUTTER, INPUT_FOCUS, GObject) CLUTTER, INPUT_FOCUS, GObject)
struct _ClutterInputFocusClass typedef struct _ClutterInputFocusInterface ClutterInputFocusInterface;
struct _ClutterInputFocusInterface
{ {
GObjectClass parent_class;
GTypeInterface iface; GTypeInterface iface;
void (* focus_in) (ClutterInputFocus *focus, void (* focus_in) (ClutterInputFocus *focus,
@@ -52,7 +53,9 @@ struct _ClutterInputFocusClass
}; };
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
gboolean clutter_input_focus_is_focused (ClutterInputFocus *focus); void clutter_input_focus_focus_in (ClutterInputFocus *focus);
CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_focus_focus_out (ClutterInputFocus *focus);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_focus_reset (ClutterInputFocus *focus); void clutter_input_focus_reset (ClutterInputFocus *focus);

View File

@@ -1,46 +0,0 @@
/*
* Copyright (C) 2017,2018 Red Hat
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* Author: Carlos Garnacho <carlosg@gnome.org>
*/
#ifndef __CLUTTER_INPUT_METHOD_PRIVATE_H__
#define __CLUTTER_INPUT_METHOD_PRIVATE_H__
ClutterInputFocus * clutter_input_method_get_focus (ClutterInputMethod *method);
void clutter_input_method_reset (ClutterInputMethod *method);
void clutter_input_method_set_cursor_location (ClutterInputMethod *method,
const ClutterRect *rect);
void clutter_input_method_set_surrounding (ClutterInputMethod *method,
const gchar *text,
guint cursor,
guint anchor);
void clutter_input_method_set_content_hints (ClutterInputMethod *method,
ClutterInputContentHintFlags hints);
void clutter_input_method_set_content_purpose (ClutterInputMethod *method,
ClutterInputContentPurpose purpose);
void clutter_input_method_set_can_show_preedit (ClutterInputMethod *method,
gboolean can_show_preedit);
gboolean clutter_input_method_filter_key_event (ClutterInputMethod *method,
const ClutterKeyEvent *key);
void clutter_input_method_toggle_input_panel (ClutterInputMethod *method);
#endif /* __CLUTTER_INPUT_METHOD_PRIVATE_H__ */

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2017,2018 Red Hat * Copyright (C) 2017 Red Hat
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
@@ -23,8 +23,6 @@
#include "clutter-private.h" #include "clutter-private.h"
#include "clutter/clutter-input-method.h" #include "clutter/clutter-input-method.h"
#include "clutter/clutter-input-method-private.h"
#include "clutter/clutter-input-focus-private.h"
typedef struct _ClutterInputMethodPrivate ClutterInputMethodPrivate; typedef struct _ClutterInputMethodPrivate ClutterInputMethodPrivate;
@@ -41,7 +39,6 @@ enum {
DELETE_SURROUNDING, DELETE_SURROUNDING,
REQUEST_SURROUNDING, REQUEST_SURROUNDING,
INPUT_PANEL_STATE, INPUT_PANEL_STATE,
CURSOR_LOCATION_CHANGED,
N_SIGNALS, N_SIGNALS,
}; };
@@ -59,35 +56,36 @@ static GParamSpec *pspecs[N_PROPS] = { 0 };
G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (ClutterInputMethod, clutter_input_method, G_TYPE_OBJECT) G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (ClutterInputMethod, clutter_input_method, G_TYPE_OBJECT)
static void static void
set_content_hints (ClutterInputMethod *im, set_content_hints (ClutterInputMethod *method,
ClutterInputContentHintFlags content_hints) ClutterInputContentHintFlags content_hints)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
priv->content_hints = content_hints; priv->content_hints = content_hints;
CLUTTER_INPUT_METHOD_GET_CLASS (im)->update_content_hints (im, content_hints); CLUTTER_INPUT_METHOD_GET_CLASS (method)->update_content_hints (method,
content_hints);
} }
static void static void
set_content_purpose (ClutterInputMethod *im, set_content_purpose (ClutterInputMethod *method,
ClutterInputContentPurpose content_purpose) ClutterInputContentPurpose content_purpose)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
priv->content_purpose = content_purpose; priv->content_purpose = content_purpose;
CLUTTER_INPUT_METHOD_GET_CLASS (im)->update_content_purpose (im, CLUTTER_INPUT_METHOD_GET_CLASS (method)->update_content_purpose (method,
content_purpose); content_purpose);
} }
static void static void
set_can_show_preedit (ClutterInputMethod *im, set_can_show_preedit (ClutterInputMethod *method,
gboolean can_show_preedit) gboolean can_show_preedit)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
priv->can_show_preedit = can_show_preedit; priv->can_show_preedit = can_show_preedit;
} }
@@ -124,10 +122,10 @@ clutter_input_method_get_property (GObject *object,
GParamSpec *pspec) GParamSpec *pspec)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
ClutterInputMethod *im; ClutterInputMethod *method;
im = CLUTTER_INPUT_METHOD (object); method = CLUTTER_INPUT_METHOD (object);
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
switch (prop_id) switch (prop_id)
{ {
@@ -179,12 +177,6 @@ clutter_input_method_class_init (ClutterInputMethodClass *klass)
0, NULL, NULL, NULL, 0, NULL, NULL, NULL,
G_TYPE_NONE, 1, G_TYPE_NONE, 1,
CLUTTER_TYPE_INPUT_PANEL_STATE); CLUTTER_TYPE_INPUT_PANEL_STATE);
signals[CURSOR_LOCATION_CHANGED] =
g_signal_new ("cursor-location-changed",
G_TYPE_FROM_CLASS (object_class),
G_SIGNAL_RUN_LAST,
0, NULL, NULL, NULL,
G_TYPE_NONE, 1, CLUTTER_TYPE_RECT);
pspecs[PROP_CONTENT_HINTS] = pspecs[PROP_CONTENT_HINTS] =
g_param_spec_flags ("content-hints", g_param_spec_flags ("content-hints",
@@ -212,134 +204,142 @@ clutter_input_method_class_init (ClutterInputMethodClass *klass)
} }
static void static void
clutter_input_method_init (ClutterInputMethod *im) clutter_input_method_init (ClutterInputMethod *method)
{ {
} }
void void
clutter_input_method_focus_in (ClutterInputMethod *im, clutter_input_method_focus_in (ClutterInputMethod *method,
ClutterInputFocus *focus) ClutterInputFocus *focus)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
ClutterInputMethodClass *klass; ClutterInputMethodClass *klass;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus)); g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (priv->focus == focus) if (priv->focus == focus)
return; return;
if (priv->focus) if (priv->focus)
clutter_input_method_focus_out (im); clutter_input_method_focus_out (method);
g_set_object (&priv->focus, focus); g_set_object (&priv->focus, focus);
if (focus) if (focus)
{ {
klass = CLUTTER_INPUT_METHOD_GET_CLASS (im); klass = CLUTTER_INPUT_METHOD_GET_CLASS (method);
klass->focus_in (im, focus); klass->focus_in (method, focus);
clutter_input_focus_focus_in (priv->focus, im); g_signal_emit_by_name (priv->focus, "focus-in", method);
} }
} }
void void
clutter_input_method_focus_out (ClutterInputMethod *im) clutter_input_method_focus_out (ClutterInputMethod *method)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
ClutterInputMethodClass *klass; ClutterInputMethodClass *klass;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (!priv->focus) if (!priv->focus)
return; return;
clutter_input_focus_focus_out (priv->focus); g_signal_emit_by_name (priv->focus, "focus-out");
g_clear_object (&priv->focus); g_clear_object (&priv->focus);
klass = CLUTTER_INPUT_METHOD_GET_CLASS (im); klass = CLUTTER_INPUT_METHOD_GET_CLASS (method);
klass->focus_out (im); klass->focus_out (method);
g_signal_emit (im, signals[INPUT_PANEL_STATE], g_signal_emit (method, signals[INPUT_PANEL_STATE],
0, CLUTTER_INPUT_PANEL_STATE_OFF); 0, CLUTTER_INPUT_PANEL_STATE_OFF);
} }
/**
* clutter_input_method_get_focus:
* @method: the #ClutterInputMethod
*
* Retrieves the current focus of the input method, or %NULL
* if there is none.
*
* Returns: (transfer none) (nullable): the current focus
**/
ClutterInputFocus * ClutterInputFocus *
clutter_input_method_get_focus (ClutterInputMethod *im) clutter_input_method_get_focus (ClutterInputMethod *method)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
return priv->focus; return priv->focus;
} }
void void
clutter_input_method_commit (ClutterInputMethod *im, clutter_input_method_commit (ClutterInputMethod *method,
const gchar *text) const gchar *text)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (priv->focus) if (priv->focus)
clutter_input_focus_commit (priv->focus, text); g_signal_emit_by_name (priv->focus, "commit", text);
} }
void void
clutter_input_method_delete_surrounding (ClutterInputMethod *im, clutter_input_method_delete_surrounding (ClutterInputMethod *method,
guint offset, guint offset,
guint len) guint len)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (priv->focus) if (priv->focus)
clutter_input_focus_delete_surrounding (priv->focus, offset, len); g_signal_emit_by_name (priv->focus, "delete-surrounding", offset, len);
} }
void void
clutter_input_method_request_surrounding (ClutterInputMethod *im) clutter_input_method_request_surrounding (ClutterInputMethod *method)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (priv->focus) if (priv->focus)
clutter_input_focus_request_surrounding (priv->focus); g_signal_emit_by_name (priv->focus, "request-surrounding");
} }
/** /**
* clutter_input_method_set_preedit_text: * clutter_input_method_set_preedit_text:
* @im: a #ClutterInputMethod * @method: a #ClutterInputMethod
* @preedit: (nullable): the preedit text, or %NULL * @preedit: (nullable): the preedit text, or %NULL
* @cursor: the cursor
* *
* Sets the preedit text on the current input focus. * Sets the preedit text on the current input focus.
**/ **/
void void
clutter_input_method_set_preedit_text (ClutterInputMethod *im, clutter_input_method_set_preedit_text (ClutterInputMethod *method,
const gchar *preedit, const gchar *preedit,
guint cursor) guint cursor)
{ {
ClutterInputMethodPrivate *priv; ClutterInputMethodPrivate *priv;
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im)); g_return_if_fail (CLUTTER_IS_INPUT_METHOD (method));
priv = clutter_input_method_get_instance_private (im); priv = clutter_input_method_get_instance_private (method);
if (priv->focus) if (priv->focus)
clutter_input_focus_set_preedit_text (priv->focus, preedit, cursor); g_signal_emit_by_name (priv->focus, "set-preedit-text", preedit, cursor);
} }
void void
clutter_input_method_notify_key_event (ClutterInputMethod *im, clutter_input_method_notify_key_event (ClutterInputMethod *method,
const ClutterEvent *event, const ClutterEvent *event,
gboolean filtered) gboolean filtered)
{ {
@@ -357,87 +357,3 @@ clutter_input_method_notify_key_event (ClutterInputMethod *im,
clutter_event_free (copy); clutter_event_free (copy);
} }
} }
void
clutter_input_method_toggle_input_panel (ClutterInputMethod *im)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
g_signal_emit (im, signals[INPUT_PANEL_STATE], 0,
CLUTTER_INPUT_PANEL_STATE_TOGGLE);
}
void
clutter_input_method_reset (ClutterInputMethod *im)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
CLUTTER_INPUT_METHOD_GET_CLASS (im)->reset (im);
}
void
clutter_input_method_set_cursor_location (ClutterInputMethod *im,
const ClutterRect *rect)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
CLUTTER_INPUT_METHOD_GET_CLASS (im)->set_cursor_location (im, rect);
g_signal_emit (im, signals[CURSOR_LOCATION_CHANGED], 0, rect);
}
void
clutter_input_method_set_surrounding (ClutterInputMethod *im,
const gchar *text,
guint cursor,
guint anchor)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
CLUTTER_INPUT_METHOD_GET_CLASS (im)->set_surrounding (im, text,
cursor, anchor);
}
void
clutter_input_method_set_content_hints (ClutterInputMethod *im,
ClutterInputContentHintFlags hints)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
g_object_set (G_OBJECT (im), "content-hints", hints, NULL);
}
void
clutter_input_method_set_content_purpose (ClutterInputMethod *im,
ClutterInputContentPurpose purpose)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
g_object_set (G_OBJECT (im), "content-purpose", purpose, NULL);
}
void
clutter_input_method_set_can_show_preedit (ClutterInputMethod *im,
gboolean can_show_preedit)
{
g_return_if_fail (CLUTTER_IS_INPUT_METHOD (im));
g_object_set (G_OBJECT (im), "can-show-preedit", can_show_preedit, NULL);
}
gboolean
clutter_input_method_filter_key_event (ClutterInputMethod *im,
const ClutterKeyEvent *key)
{
ClutterInputMethodClass *im_class = CLUTTER_INPUT_METHOD_GET_CLASS (im);
g_return_val_if_fail (CLUTTER_IS_INPUT_METHOD (im), FALSE);
g_return_val_if_fail (key != NULL, FALSE);
if (clutter_event_get_flags ((ClutterEvent *) key) & CLUTTER_EVENT_FLAG_INPUT_METHOD)
return FALSE;
if (!im_class->filter_key_event)
return FALSE;
return im_class->filter_key_event (im, (const ClutterEvent *) key);
}

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2017,2018 Red Hat * Copyright (C) 2017 Red Hat
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
@@ -36,53 +36,54 @@ struct _ClutterInputMethodClass
{ {
GObjectClass parent_class; GObjectClass parent_class;
void (* focus_in) (ClutterInputMethod *im, void (* focus_in) (ClutterInputMethod *method,
ClutterInputFocus *actor); ClutterInputFocus *actor);
void (* focus_out) (ClutterInputMethod *im); void (* focus_out) (ClutterInputMethod *method);
void (* reset) (ClutterInputMethod *im); void (* reset) (ClutterInputMethod *method);
void (* set_cursor_location) (ClutterInputMethod *im, void (* set_cursor_location) (ClutterInputMethod *method,
const ClutterRect *rect); const ClutterRect *rect);
void (* set_surrounding) (ClutterInputMethod *im, void (* set_surrounding) (ClutterInputMethod *method,
const gchar *text, const gchar *text,
guint cursor, guint cursor,
guint anchor); guint anchor);
void (* update_content_hints) (ClutterInputMethod *im, void (* update_content_hints) (ClutterInputMethod *method,
ClutterInputContentHintFlags hint); ClutterInputContentHintFlags hint);
void (* update_content_purpose) (ClutterInputMethod *im, void (* update_content_purpose) (ClutterInputMethod *method,
ClutterInputContentPurpose purpose); ClutterInputContentPurpose purpose);
gboolean (* filter_key_event) (ClutterInputMethod *im, gboolean (* filter_key_event) (ClutterInputMethod *method,
const ClutterEvent *key); const ClutterEvent *key);
}; };
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_focus_in (ClutterInputMethod *im, void clutter_input_method_focus_in (ClutterInputMethod *method,
ClutterInputFocus *focus); ClutterInputFocus *focus);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_focus_out (ClutterInputMethod *im); void clutter_input_method_focus_out (ClutterInputMethod *method);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_commit (ClutterInputMethod *im, ClutterInputFocus * clutter_input_method_get_focus (ClutterInputMethod *method);
CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_commit (ClutterInputMethod *method,
const gchar *text); const gchar *text);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_delete_surrounding (ClutterInputMethod *im, void clutter_input_method_delete_surrounding (ClutterInputMethod *method,
guint offset, guint offset,
guint len); guint len);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_request_surrounding (ClutterInputMethod *im); void clutter_input_method_request_surrounding (ClutterInputMethod *method);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_set_preedit_text (ClutterInputMethod *im, void clutter_input_method_set_preedit_text (ClutterInputMethod *method,
const gchar *preedit, const gchar *preedit,
guint cursor); guint cursor);
CLUTTER_AVAILABLE_IN_MUTTER CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_notify_key_event (ClutterInputMethod *im, void clutter_input_method_notify_key_event (ClutterInputMethod *method,
const ClutterEvent *event, const ClutterEvent *event,
gboolean filtered); gboolean filtered);
CLUTTER_AVAILABLE_IN_MUTTER
void clutter_input_method_request_toggle_input_panel (ClutterInputMethod *im);
#endif /* __CLUTTER_INPUT_METHOD_H__ */ #endif /* __CLUTTER_INPUT_METHOD_H__ */

View File

@@ -1486,11 +1486,10 @@ _clutter_stage_do_pick_on_view (ClutterStage *stage,
priv->viewport[1] * fb_scale - viewport_offset_y, priv->viewport[1] * fb_scale - viewport_offset_y,
priv->viewport[2] * fb_scale, priv->viewport[2] * fb_scale,
priv->viewport[3] * fb_scale); priv->viewport[3] * fb_scale);
cogl_framebuffer_set_viewport (fb, cogl_set_viewport (priv->viewport[0] * fb_scale - viewport_offset_x,
priv->viewport[0] * fb_scale - viewport_offset_x, priv->viewport[1] * fb_scale - viewport_offset_y,
priv->viewport[1] * fb_scale - viewport_offset_y, priv->viewport[2] * fb_scale,
priv->viewport[2] * fb_scale, priv->viewport[3] * fb_scale);
priv->viewport[3] * fb_scale);
read_x = dirty_x * fb_scale; read_x = dirty_x * fb_scale;
read_y = dirty_y * fb_scale; read_y = dirty_y * fb_scale;
@@ -3618,7 +3617,6 @@ _clutter_stage_maybe_setup_viewport (ClutterStage *stage,
ClutterStageView *view) ClutterStageView *view)
{ {
ClutterStagePrivate *priv = stage->priv; ClutterStagePrivate *priv = stage->priv;
CoglFramebuffer *fb = clutter_stage_view_get_framebuffer (view);
if (clutter_stage_view_is_dirty_viewport (view)) if (clutter_stage_view_is_dirty_viewport (view))
{ {
@@ -3639,11 +3637,10 @@ _clutter_stage_maybe_setup_viewport (ClutterStage *stage,
viewport_offset_x = view_layout.x * fb_scale; viewport_offset_x = view_layout.x * fb_scale;
viewport_offset_y = view_layout.y * fb_scale; viewport_offset_y = view_layout.y * fb_scale;
cogl_framebuffer_set_viewport (fb, cogl_set_viewport (priv->viewport[0] * fb_scale - viewport_offset_x,
priv->viewport[0] * fb_scale - viewport_offset_x, priv->viewport[1] * fb_scale - viewport_offset_y,
priv->viewport[1] * fb_scale - viewport_offset_y, priv->viewport[2] * fb_scale,
priv->viewport[2] * fb_scale, priv->viewport[3] * fb_scale);
priv->viewport[3] * fb_scale);
perspective = priv->perspective; perspective = priv->perspective;
@@ -3682,7 +3679,7 @@ _clutter_stage_maybe_setup_viewport (ClutterStage *stage,
if (clutter_stage_view_is_dirty_projection (view)) if (clutter_stage_view_is_dirty_projection (view))
{ {
cogl_framebuffer_set_projection_matrix (fb, &priv->projection); cogl_set_projection_matrix (&priv->projection);
clutter_stage_view_set_dirty_projection (view, FALSE); clutter_stage_view_set_dirty_projection (view, FALSE);
} }

View File

@@ -99,12 +99,6 @@ struct _LayoutCache
guint age; guint age;
}; };
struct _ClutterTextInputFocus
{
ClutterInputFocus parent_instance;
ClutterText *text;
};
struct _ClutterTextPrivate struct _ClutterTextPrivate
{ {
PangoFontDescription *font_desc; PangoFontDescription *font_desc;
@@ -183,7 +177,6 @@ struct _ClutterTextPrivate
/* Signal handler for when the :text-direction changes */ /* Signal handler for when the :text-direction changes */
guint direction_changed_id; guint direction_changed_id;
ClutterInputFocus *input_focus;
ClutterInputContentHintFlags input_hints; ClutterInputContentHintFlags input_hints;
ClutterInputContentPurpose input_purpose; ClutterInputContentPurpose input_purpose;
@@ -282,18 +275,25 @@ static const ClutterColor default_selected_text_color = { 0, 0, 0, 255 };
static ClutterAnimatableIface *parent_animatable_iface = NULL; static ClutterAnimatableIface *parent_animatable_iface = NULL;
static ClutterScriptableIface *parent_scriptable_iface = NULL; static ClutterScriptableIface *parent_scriptable_iface = NULL;
/* ClutterTextInputFocus */ static void clutter_input_focus_iface_init (ClutterInputFocusInterface *iface);
#define CLUTTER_TYPE_TEXT_INPUT_FOCUS (clutter_text_input_focus_get_type ()) static void clutter_scriptable_iface_init (ClutterScriptableIface *iface);
static void clutter_animatable_iface_init (ClutterAnimatableIface *iface);
G_DECLARE_FINAL_TYPE (ClutterTextInputFocus, clutter_text_input_focus, G_DEFINE_TYPE_WITH_CODE (ClutterText,
CLUTTER, TEXT_INPUT_FOCUS, ClutterInputFocus) clutter_text,
G_DEFINE_TYPE (ClutterTextInputFocus, clutter_text_input_focus, CLUTTER_TYPE_ACTOR,
CLUTTER_TYPE_INPUT_FOCUS) G_ADD_PRIVATE (ClutterText)
G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_INPUT_FOCUS,
clutter_input_focus_iface_init)
G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_SCRIPTABLE,
clutter_scriptable_iface_init)
G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_ANIMATABLE,
clutter_animatable_iface_init));
static void static void
clutter_text_input_focus_request_surrounding (ClutterInputFocus *focus) clutter_text_input_focus_request_surrounding (ClutterInputFocus *focus)
{ {
ClutterText *clutter_text = CLUTTER_TEXT_INPUT_FOCUS (focus)->text; ClutterText *clutter_text = CLUTTER_TEXT (focus);
ClutterTextBuffer *buffer; ClutterTextBuffer *buffer;
const gchar *text; const gchar *text;
gint anchor_pos, cursor_pos; gint anchor_pos, cursor_pos;
@@ -319,7 +319,7 @@ clutter_text_input_focus_delete_surrounding (ClutterInputFocus *focus,
guint offset, guint offset,
guint len) guint len)
{ {
ClutterText *clutter_text = CLUTTER_TEXT_INPUT_FOCUS (focus)->text; ClutterText *clutter_text = CLUTTER_TEXT (focus);
if (clutter_text_get_editable (clutter_text)) if (clutter_text_get_editable (clutter_text))
clutter_text_delete_text (clutter_text, offset, len); clutter_text_delete_text (clutter_text, offset, len);
@@ -329,14 +329,13 @@ static void
clutter_text_input_focus_commit_text (ClutterInputFocus *focus, clutter_text_input_focus_commit_text (ClutterInputFocus *focus,
const gchar *text) const gchar *text)
{ {
ClutterText *clutter_text = CLUTTER_TEXT_INPUT_FOCUS (focus)->text; ClutterText *clutter_text = CLUTTER_TEXT (focus);
if (clutter_text_get_editable (clutter_text)) if (clutter_text_get_editable (clutter_text))
{ {
clutter_text_delete_selection (clutter_text); clutter_text_delete_selection (clutter_text);
clutter_text_insert_text (clutter_text, text, clutter_text_insert_text (clutter_text, text,
clutter_text_get_cursor_position (clutter_text)); clutter_text_get_cursor_position (clutter_text));
clutter_text_set_preedit_string (clutter_text, NULL, NULL, 0);
} }
} }
@@ -345,7 +344,7 @@ clutter_text_input_focus_set_preedit_text (ClutterInputFocus *focus,
const gchar *preedit_text, const gchar *preedit_text,
guint cursor_pos) guint cursor_pos)
{ {
ClutterText *clutter_text = CLUTTER_TEXT_INPUT_FOCUS (focus)->text; ClutterText *clutter_text = CLUTTER_TEXT (focus);
if (clutter_text_get_editable (clutter_text)) if (clutter_text_get_editable (clutter_text))
{ {
@@ -361,45 +360,14 @@ clutter_text_input_focus_set_preedit_text (ClutterInputFocus *focus,
} }
static void static void
clutter_text_input_focus_class_init (ClutterTextInputFocusClass *klass) clutter_input_focus_iface_init (ClutterInputFocusInterface *iface)
{ {
ClutterInputFocusClass *focus_class = CLUTTER_INPUT_FOCUS_CLASS (klass); iface->request_surrounding = clutter_text_input_focus_request_surrounding;
iface->delete_surrounding = clutter_text_input_focus_delete_surrounding;
focus_class->request_surrounding = clutter_text_input_focus_request_surrounding; iface->commit_text = clutter_text_input_focus_commit_text;
focus_class->delete_surrounding = clutter_text_input_focus_delete_surrounding; iface->set_preedit_text = clutter_text_input_focus_set_preedit_text;
focus_class->commit_text = clutter_text_input_focus_commit_text;
focus_class->set_preedit_text = clutter_text_input_focus_set_preedit_text;
} }
static void
clutter_text_input_focus_init (ClutterTextInputFocus *focus)
{
}
static ClutterInputFocus *
clutter_text_input_focus_new (ClutterText *text)
{
ClutterTextInputFocus *focus;
focus = g_object_new (CLUTTER_TYPE_TEXT_INPUT_FOCUS, NULL);
focus->text = text;
return CLUTTER_INPUT_FOCUS (focus);
}
/* ClutterText */
static void clutter_scriptable_iface_init (ClutterScriptableIface *iface);
static void clutter_animatable_iface_init (ClutterAnimatableIface *iface);
G_DEFINE_TYPE_WITH_CODE (ClutterText,
clutter_text,
CLUTTER_TYPE_ACTOR,
G_ADD_PRIVATE (ClutterText)
G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_SCRIPTABLE,
clutter_scriptable_iface_init)
G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_ANIMATABLE,
clutter_animatable_iface_init));
static inline void static inline void
clutter_text_dirty_paint_volume (ClutterText *text) clutter_text_dirty_paint_volume (ClutterText *text)
{ {
@@ -1141,7 +1109,7 @@ update_cursor_location (ClutterText *self)
rect = priv->cursor_rect; rect = priv->cursor_rect;
clutter_actor_get_transformed_position (CLUTTER_ACTOR (self), &x, &y); clutter_actor_get_transformed_position (CLUTTER_ACTOR (self), &x, &y);
clutter_rect_offset (&rect, x, y); clutter_rect_offset (&rect, x, y);
clutter_input_focus_set_cursor_location (priv->input_focus, &rect); clutter_input_focus_set_cursor_location (CLUTTER_INPUT_FOCUS (self), &rect);
} }
static inline void static inline void
@@ -1640,8 +1608,6 @@ clutter_text_finalize (GObject *gobject)
clutter_text_set_buffer (self, NULL); clutter_text_set_buffer (self, NULL);
g_free (priv->font_name); g_free (priv->font_name);
g_clear_object (&priv->input_focus);
G_OBJECT_CLASS (clutter_text_parent_class)->finalize (gobject); G_OBJECT_CLASS (clutter_text_parent_class)->finalize (gobject);
} }
@@ -1998,7 +1964,7 @@ clutter_text_press (ClutterActor *actor,
return CLUTTER_EVENT_PROPAGATE; return CLUTTER_EVENT_PROPAGATE;
clutter_actor_grab_key_focus (actor); clutter_actor_grab_key_focus (actor);
clutter_input_focus_request_toggle_input_panel (priv->input_focus); clutter_input_focus_request_toggle_input_panel (CLUTTER_INPUT_FOCUS (self));
/* if the actor is empty we just reset everything and not /* if the actor is empty we just reset everything and not
* set up the dragging of the selection since there's nothing * set up the dragging of the selection since there's nothing
@@ -2247,8 +2213,7 @@ clutter_text_key_press (ClutterActor *actor,
{ {
gunichar key_unichar; gunichar key_unichar;
if (clutter_input_focus_is_focused (priv->input_focus) && if (clutter_input_focus_filter_key_event (CLUTTER_INPUT_FOCUS (actor), event))
clutter_input_focus_filter_key_event (priv->input_focus, event))
return CLUTTER_EVENT_STOP; return CLUTTER_EVENT_STOP;
/* Skip keys when control is pressed */ /* Skip keys when control is pressed */
@@ -2291,11 +2256,7 @@ static gboolean
clutter_text_key_release (ClutterActor *actor, clutter_text_key_release (ClutterActor *actor,
ClutterKeyEvent *event) ClutterKeyEvent *event)
{ {
ClutterText *self = CLUTTER_TEXT (actor); if (clutter_input_focus_filter_key_event (CLUTTER_INPUT_FOCUS (actor), event))
ClutterTextPrivate *priv = self->priv;
if (clutter_input_focus_is_focused (priv->input_focus) &&
clutter_input_focus_filter_key_event (priv->input_focus, event))
return CLUTTER_EVENT_STOP; return CLUTTER_EVENT_STOP;
return CLUTTER_EVENT_PROPAGATE; return CLUTTER_EVENT_PROPAGATE;
@@ -2823,14 +2784,9 @@ static void
clutter_text_key_focus_in (ClutterActor *actor) clutter_text_key_focus_in (ClutterActor *actor)
{ {
ClutterTextPrivate *priv = CLUTTER_TEXT (actor)->priv; ClutterTextPrivate *priv = CLUTTER_TEXT (actor)->priv;
ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
if (method && priv->editable) if (priv->editable)
{ clutter_input_focus_focus_in (CLUTTER_INPUT_FOCUS (actor));
clutter_input_method_focus_in (method, priv->input_focus);
update_cursor_location (CLUTTER_TEXT (actor));
}
priv->has_focus = TRUE; priv->has_focus = TRUE;
@@ -2841,16 +2797,11 @@ static void
clutter_text_key_focus_out (ClutterActor *actor) clutter_text_key_focus_out (ClutterActor *actor)
{ {
ClutterTextPrivate *priv = CLUTTER_TEXT (actor)->priv; ClutterTextPrivate *priv = CLUTTER_TEXT (actor)->priv;
ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
priv->has_focus = FALSE; priv->has_focus = FALSE;
if (priv->editable && clutter_input_focus_is_focused (priv->input_focus)) if (priv->editable)
{ clutter_input_focus_focus_out (CLUTTER_INPUT_FOCUS (actor));
clutter_text_set_preedit_string (CLUTTER_TEXT (actor), NULL, NULL, 0);
clutter_input_method_focus_out (method);
}
clutter_text_queue_redraw (actor); clutter_text_queue_redraw (actor);
} }
@@ -4362,8 +4313,6 @@ clutter_text_init (ClutterText *self)
g_signal_connect (self, "notify::text-direction", g_signal_connect (self, "notify::text-direction",
G_CALLBACK (clutter_text_direction_changed_cb), G_CALLBACK (clutter_text_direction_changed_cb),
NULL); NULL);
priv->input_focus = clutter_text_input_focus_new (self);
} }
/** /**
@@ -4654,8 +4603,6 @@ void
clutter_text_set_editable (ClutterText *self, clutter_text_set_editable (ClutterText *self,
gboolean editable) gboolean editable)
{ {
ClutterBackend *backend = clutter_get_default_backend ();
ClutterInputMethod *method = clutter_backend_get_input_method (backend);
ClutterTextPrivate *priv; ClutterTextPrivate *priv;
g_return_if_fail (CLUTTER_IS_TEXT (self)); g_return_if_fail (CLUTTER_IS_TEXT (self));
@@ -4666,13 +4613,10 @@ clutter_text_set_editable (ClutterText *self,
{ {
priv->editable = editable; priv->editable = editable;
if (method) if (!priv->editable)
{ clutter_input_focus_focus_out (CLUTTER_INPUT_FOCUS (self));
if (!priv->editable && clutter_input_focus_is_focused (priv->input_focus)) else if (priv->has_focus)
clutter_input_method_focus_out (method); clutter_input_focus_focus_in (CLUTTER_INPUT_FOCUS (self));
else if (priv->has_focus)
clutter_input_method_focus_in (method, priv->input_focus);
}
clutter_text_queue_redraw (CLUTTER_ACTOR (self)); clutter_text_queue_redraw (CLUTTER_ACTOR (self));
@@ -6511,7 +6455,7 @@ clutter_text_set_input_hints (ClutterText *self,
g_return_if_fail (CLUTTER_IS_TEXT (self)); g_return_if_fail (CLUTTER_IS_TEXT (self));
self->priv->input_hints = hints; self->priv->input_hints = hints;
clutter_input_focus_set_content_hints (self->priv->input_focus, hints); clutter_input_focus_set_content_hints (CLUTTER_INPUT_FOCUS (self), hints);
g_object_notify_by_pspec (G_OBJECT (self), obj_props[PROP_INPUT_HINTS]); g_object_notify_by_pspec (G_OBJECT (self), obj_props[PROP_INPUT_HINTS]);
} }
@@ -6530,7 +6474,7 @@ clutter_text_set_input_purpose (ClutterText *self,
g_return_if_fail (CLUTTER_IS_TEXT (self)); g_return_if_fail (CLUTTER_IS_TEXT (self));
self->priv->input_purpose = purpose; self->priv->input_purpose = purpose;
clutter_input_focus_set_content_purpose (self->priv->input_focus, purpose); clutter_input_focus_set_content_purpose (CLUTTER_INPUT_FOCUS (self), purpose);
g_object_notify_by_pspec (G_OBJECT (self), obj_props[PROP_INPUT_PURPOSE]); g_object_notify_by_pspec (G_OBJECT (self), obj_props[PROP_INPUT_PURPOSE]);
} }

View File

@@ -128,61 +128,6 @@ clutter_virtual_input_device_notify_discrete_scroll (ClutterVirtualInputDevice *
direction, scroll_source); direction, scroll_source);
} }
void
clutter_virtual_input_device_notify_scroll_continuous (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
double dx,
double dy,
ClutterScrollSource scroll_source,
ClutterScrollFinishFlags finish_flags)
{
ClutterVirtualInputDeviceClass *klass =
CLUTTER_VIRTUAL_INPUT_DEVICE_GET_CLASS (virtual_device);
klass->notify_scroll_continuous (virtual_device, time_us,
dx, dy, scroll_source, finish_flags);
}
void
clutter_virtual_input_device_notify_touch_down (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y)
{
ClutterVirtualInputDeviceClass *klass =
CLUTTER_VIRTUAL_INPUT_DEVICE_GET_CLASS (virtual_device);
klass->notify_touch_down (virtual_device, time_us,
slot, x, y);
}
void
clutter_virtual_input_device_notify_touch_motion (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y)
{
ClutterVirtualInputDeviceClass *klass =
CLUTTER_VIRTUAL_INPUT_DEVICE_GET_CLASS (virtual_device);
klass->notify_touch_motion (virtual_device, time_us,
slot, x, y);
}
void
clutter_virtual_input_device_notify_touch_up (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot)
{
ClutterVirtualInputDeviceClass *klass =
CLUTTER_VIRTUAL_INPUT_DEVICE_GET_CLASS (virtual_device);
klass->notify_touch_up (virtual_device, time_us,
slot);
}
/** /**
* clutter_virtual_input_device_get_manager: * clutter_virtual_input_device_get_manager:
* @virtual_device: a virtual device * @virtual_device: a virtual device

View File

@@ -81,29 +81,6 @@ struct _ClutterVirtualInputDeviceClass
uint64_t time_us, uint64_t time_us,
ClutterScrollDirection direction, ClutterScrollDirection direction,
ClutterScrollSource scroll_source); ClutterScrollSource scroll_source);
void (*notify_scroll_continuous) (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
double dx,
double dy,
ClutterScrollSource scroll_source,
ClutterScrollFinishFlags finish_flags);
void (*notify_touch_down) (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y);
void (*notify_touch_motion) (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y);
void (*notify_touch_up) (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot);
}; };
CLUTTER_AVAILABLE_IN_ALL CLUTTER_AVAILABLE_IN_ALL
@@ -142,32 +119,6 @@ void clutter_virtual_input_device_notify_discrete_scroll (ClutterVirtualInputDev
ClutterScrollDirection direction, ClutterScrollDirection direction,
ClutterScrollSource scroll_source); ClutterScrollSource scroll_source);
CLUTTER_AVAILABLE_IN_ALL
void clutter_virtual_input_device_notify_scroll_continuous (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
double dx,
double dy,
ClutterScrollSource scroll_source,
ClutterScrollFinishFlags finish_flags);
CLUTTER_AVAILABLE_IN_ALL
void clutter_virtual_input_device_notify_touch_down (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y);
CLUTTER_AVAILABLE_IN_ALL
void clutter_virtual_input_device_notify_touch_motion (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot,
double x,
double y);
CLUTTER_AVAILABLE_IN_ALL
void clutter_virtual_input_device_notify_touch_up (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int slot);
CLUTTER_AVAILABLE_IN_ALL CLUTTER_AVAILABLE_IN_ALL
ClutterDeviceManager * clutter_virtual_input_device_get_manager (ClutterVirtualInputDevice *virtual_device); ClutterDeviceManager * clutter_virtual_input_device_get_manager (ClutterVirtualInputDevice *virtual_device);

View File

@@ -397,6 +397,54 @@ notify_relative_tool_motion (ClutterInputDevice *input_device,
queue_event (event); queue_event (event);
} }
static void
notify_touch_event (ClutterInputDevice *input_device,
ClutterEventType evtype,
guint64 time_us,
gint32 slot,
gdouble x,
gdouble y)
{
ClutterInputDeviceEvdev *device_evdev;
ClutterSeatEvdev *seat;
ClutterStage *stage;
ClutterEvent *event = NULL;
/* We can drop the event on the floor if no stage has been
* associated with the device yet. */
stage = _clutter_input_device_get_stage (input_device);
if (stage == NULL)
return;
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (input_device);
seat = _clutter_input_device_evdev_get_seat (device_evdev);
event = clutter_event_new (evtype);
_clutter_evdev_event_set_time_usec (event, time_us);
event->touch.time = us2ms (time_us);
event->touch.stage = CLUTTER_STAGE (stage);
event->touch.device = seat->core_pointer;
event->touch.x = x;
event->touch.y = y;
clutter_input_device_evdev_translate_coordinates (input_device, stage,
&event->touch.x,
&event->touch.y);
/* "NULL" sequences are special cased in clutter */
event->touch.sequence = GINT_TO_POINTER (slot + 1);
_clutter_xkb_translate_state (event, seat->xkb, seat->button_state);
if (evtype == CLUTTER_TOUCH_BEGIN ||
evtype == CLUTTER_TOUCH_UPDATE)
event->touch.modifier_state |= CLUTTER_BUTTON1_MASK;
clutter_event_set_device (event, seat->core_pointer);
clutter_event_set_source_device (event, input_device);
queue_event (event);
}
static void static void
notify_pinch_gesture_event (ClutterInputDevice *input_device, notify_pinch_gesture_event (ClutterInputDevice *input_device,
ClutterTouchpadGesturePhase phase, ClutterTouchpadGesturePhase phase,
@@ -1204,7 +1252,6 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
gboolean handled = TRUE; gboolean handled = TRUE;
struct libinput_device *libinput_device = libinput_event_get_device(event); struct libinput_device *libinput_device = libinput_event_get_device(event);
ClutterInputDevice *device; ClutterInputDevice *device;
ClutterInputDeviceEvdev *device_evdev;
switch (libinput_event_get_type (event)) switch (libinput_event_get_type (event))
{ {
@@ -1361,7 +1408,7 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
case LIBINPUT_EVENT_TOUCH_DOWN: case LIBINPUT_EVENT_TOUCH_DOWN:
{ {
int device_slot; gint32 slot;
guint64 time_us; guint64 time_us;
double x, y; double x, y;
gfloat stage_width, stage_height; gfloat stage_width, stage_height;
@@ -1372,8 +1419,7 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
libinput_event_get_touch_event (event); libinput_event_get_touch_event (event);
device = libinput_device_get_user_data (libinput_device); device = libinput_device_get_user_data (libinput_device);
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device); seat = _clutter_input_device_evdev_get_seat (CLUTTER_INPUT_DEVICE_EVDEV (device));
seat = _clutter_input_device_evdev_get_seat (device_evdev);
stage = _clutter_input_device_get_stage (device); stage = _clutter_input_device_get_stage (device);
if (stage == NULL) if (stage == NULL)
@@ -1382,31 +1428,25 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
stage_width = clutter_actor_get_width (CLUTTER_ACTOR (stage)); stage_width = clutter_actor_get_width (CLUTTER_ACTOR (stage));
stage_height = clutter_actor_get_height (CLUTTER_ACTOR (stage)); stage_height = clutter_actor_get_height (CLUTTER_ACTOR (stage));
device_slot = libinput_event_touch_get_slot (touch_event); slot = libinput_event_touch_get_slot (touch_event);
time_us = libinput_event_touch_get_time_usec (touch_event); time_us = libinput_event_touch_get_time_usec (touch_event);
x = libinput_event_touch_get_x_transformed (touch_event, x = libinput_event_touch_get_x_transformed (touch_event,
stage_width); stage_width);
y = libinput_event_touch_get_y_transformed (touch_event, y = libinput_event_touch_get_y_transformed (touch_event,
stage_height); stage_height);
touch_state = touch_state = clutter_seat_evdev_add_touch (seat, slot);
clutter_input_device_evdev_acquire_touch_state (device_evdev,
device_slot);
touch_state->coords.x = x; touch_state->coords.x = x;
touch_state->coords.y = y; touch_state->coords.y = y;
clutter_seat_evdev_notify_touch_event (seat, device, notify_touch_event (device, CLUTTER_TOUCH_BEGIN, time_us, slot,
CLUTTER_TOUCH_BEGIN, touch_state->coords.x, touch_state->coords.y);
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
break; break;
} }
case LIBINPUT_EVENT_TOUCH_UP: case LIBINPUT_EVENT_TOUCH_UP:
{ {
int device_slot; gint32 slot;
guint64 time_us; guint64 time_us;
ClutterSeatEvdev *seat; ClutterSeatEvdev *seat;
ClutterTouchState *touch_state; ClutterTouchState *touch_state;
@@ -1414,30 +1454,22 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
libinput_event_get_touch_event (event); libinput_event_get_touch_event (event);
device = libinput_device_get_user_data (libinput_device); device = libinput_device_get_user_data (libinput_device);
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device); seat = _clutter_input_device_evdev_get_seat (CLUTTER_INPUT_DEVICE_EVDEV (device));
seat = _clutter_input_device_evdev_get_seat (device_evdev);
device_slot = libinput_event_touch_get_slot (touch_event); slot = libinput_event_touch_get_slot (touch_event);
time_us = libinput_event_touch_get_time_usec (touch_event); time_us = libinput_event_touch_get_time_usec (touch_event);
touch_state = touch_state = clutter_seat_evdev_get_touch (seat, slot);
clutter_input_device_evdev_lookup_touch_state (device_evdev,
device_slot); notify_touch_event (device, CLUTTER_TOUCH_END, time_us, slot,
if (!touch_state) touch_state->coords.x, touch_state->coords.y);
break; clutter_seat_evdev_remove_touch (seat, slot);
clutter_seat_evdev_notify_touch_event (seat, device,
CLUTTER_TOUCH_END, time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
clutter_input_device_evdev_release_touch_state (device_evdev,
touch_state);
break; break;
} }
case LIBINPUT_EVENT_TOUCH_MOTION: case LIBINPUT_EVENT_TOUCH_MOTION:
{ {
int device_slot; gint32 slot;
guint64 time_us; guint64 time_us;
double x, y; double x, y;
gfloat stage_width, stage_height; gfloat stage_width, stage_height;
@@ -1448,8 +1480,7 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
libinput_event_get_touch_event (event); libinput_event_get_touch_event (event);
device = libinput_device_get_user_data (libinput_device); device = libinput_device_get_user_data (libinput_device);
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device); seat = _clutter_input_device_evdev_get_seat (CLUTTER_INPUT_DEVICE_EVDEV (device));
seat = _clutter_input_device_evdev_get_seat (device_evdev);
stage = _clutter_input_device_get_stage (device); stage = _clutter_input_device_get_stage (device);
if (stage == NULL) if (stage == NULL)
@@ -1458,41 +1489,42 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
stage_width = clutter_actor_get_width (CLUTTER_ACTOR (stage)); stage_width = clutter_actor_get_width (CLUTTER_ACTOR (stage));
stage_height = clutter_actor_get_height (CLUTTER_ACTOR (stage)); stage_height = clutter_actor_get_height (CLUTTER_ACTOR (stage));
device_slot = libinput_event_touch_get_slot (touch_event); slot = libinput_event_touch_get_slot (touch_event);
time_us = libinput_event_touch_get_time_usec (touch_event); time_us = libinput_event_touch_get_time_usec (touch_event);
x = libinput_event_touch_get_x_transformed (touch_event, x = libinput_event_touch_get_x_transformed (touch_event,
stage_width); stage_width);
y = libinput_event_touch_get_y_transformed (touch_event, y = libinput_event_touch_get_y_transformed (touch_event,
stage_height); stage_height);
touch_state = touch_state = clutter_seat_evdev_get_touch (seat, slot);
clutter_input_device_evdev_lookup_touch_state (device_evdev,
device_slot);
if (!touch_state)
break;
touch_state->coords.x = x; touch_state->coords.x = x;
touch_state->coords.y = y; touch_state->coords.y = y;
clutter_seat_evdev_notify_touch_event (seat, device, notify_touch_event (device, CLUTTER_TOUCH_UPDATE, time_us, slot,
CLUTTER_TOUCH_UPDATE, touch_state->coords.x, touch_state->coords.y);
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
break; break;
} }
case LIBINPUT_EVENT_TOUCH_CANCEL: case LIBINPUT_EVENT_TOUCH_CANCEL:
{ {
ClutterTouchState *touch_state;
GHashTableIter iter;
guint64 time_us; guint64 time_us;
struct libinput_event_touch *touch_event = struct libinput_event_touch *touch_event =
libinput_event_get_touch_event (event); libinput_event_get_touch_event (event);
ClutterSeatEvdev *seat;
device = libinput_device_get_user_data (libinput_device); device = libinput_device_get_user_data (libinput_device);
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device);
time_us = libinput_event_touch_get_time_usec (touch_event); time_us = libinput_event_touch_get_time_usec (touch_event);
seat = _clutter_input_device_evdev_get_seat (CLUTTER_INPUT_DEVICE_EVDEV (device));
g_hash_table_iter_init (&iter, seat->touches);
clutter_input_device_evdev_release_touch_slots (device_evdev, time_us); while (g_hash_table_iter_next (&iter, NULL, (gpointer*) &touch_state))
{
notify_touch_event (device, CLUTTER_TOUCH_CANCEL,
time_us, touch_state->id,
touch_state->coords.x, touch_state->coords.y);
g_hash_table_iter_remove (&iter);
}
break; break;
} }
@@ -1866,14 +1898,6 @@ clutter_device_manager_evdev_create_virtual_device (ClutterDeviceManager *manag
NULL); NULL);
} }
static ClutterVirtualDeviceType
clutter_device_manager_evdev_get_supported_virtual_device_types (ClutterDeviceManager *device_manager)
{
return (CLUTTER_VIRTUAL_DEVICE_TYPE_KEYBOARD |
CLUTTER_VIRTUAL_DEVICE_TYPE_POINTER |
CLUTTER_VIRTUAL_DEVICE_TYPE_TOUCHSCREEN);
}
static void static void
clutter_device_manager_evdev_compress_motion (ClutterDeviceManager *device_manger, clutter_device_manager_evdev_compress_motion (ClutterDeviceManager *device_manger,
ClutterEvent *event, ClutterEvent *event,
@@ -2052,7 +2076,6 @@ clutter_device_manager_evdev_class_init (ClutterDeviceManagerEvdevClass *klass)
manager_class->get_core_device = clutter_device_manager_evdev_get_core_device; manager_class->get_core_device = clutter_device_manager_evdev_get_core_device;
manager_class->get_device = clutter_device_manager_evdev_get_device; manager_class->get_device = clutter_device_manager_evdev_get_device;
manager_class->create_virtual_device = clutter_device_manager_evdev_create_virtual_device; manager_class->create_virtual_device = clutter_device_manager_evdev_create_virtual_device;
manager_class->get_supported_virtual_device_types = clutter_device_manager_evdev_get_supported_virtual_device_types;
manager_class->compress_motion = clutter_device_manager_evdev_compress_motion; manager_class->compress_motion = clutter_device_manager_evdev_compress_motion;
manager_class->apply_kbd_a11y_settings = clutter_device_manager_evdev_apply_kbd_a11y_settings; manager_class->apply_kbd_a11y_settings = clutter_device_manager_evdev_apply_kbd_a11y_settings;
} }

View File

@@ -81,9 +81,6 @@ clutter_input_device_evdev_finalize (GObject *object)
if (device_evdev->libinput_device) if (device_evdev->libinput_device)
libinput_device_unref (device_evdev->libinput_device); libinput_device_unref (device_evdev->libinput_device);
clutter_input_device_evdev_release_touch_slots (device_evdev,
g_get_monotonic_time ());
_clutter_device_manager_evdev_release_device_id (manager_evdev, device); _clutter_device_manager_evdev_release_device_id (manager_evdev, device);
clear_slow_keys (device_evdev); clear_slow_keys (device_evdev);
@@ -1218,44 +1215,6 @@ clutter_input_device_evdev_apply_kbd_a11y_settings (ClutterInputDeviceEvdev *dev
device->a11y_flags = settings->controls; device->a11y_flags = settings->controls;
} }
static void
release_device_touch_slot (gpointer value)
{
ClutterTouchState *touch_state = value;
clutter_seat_evdev_release_touch_state (touch_state->seat, touch_state);
}
ClutterTouchState *
clutter_input_device_evdev_acquire_touch_state (ClutterInputDeviceEvdev *device,
int device_slot)
{
ClutterTouchState *touch_state;
touch_state = clutter_seat_evdev_acquire_touch_state (device->seat,
device_slot);
g_hash_table_insert (device->touches,
GINT_TO_POINTER (device_slot),
touch_state);
return touch_state;
}
ClutterTouchState *
clutter_input_device_evdev_lookup_touch_state (ClutterInputDeviceEvdev *device,
int device_slot)
{
return g_hash_table_lookup (device->touches, GINT_TO_POINTER (device_slot));
}
void
clutter_input_device_evdev_release_touch_state (ClutterInputDeviceEvdev *device,
ClutterTouchState *touch_state)
{
g_hash_table_remove (device->touches,
GINT_TO_POINTER (touch_state->device_slot));
}
static void static void
clutter_input_device_evdev_class_init (ClutterInputDeviceEvdevClass *klass) clutter_input_device_evdev_class_init (ClutterInputDeviceEvdevClass *klass)
{ {
@@ -1294,9 +1253,6 @@ clutter_input_device_evdev_init (ClutterInputDeviceEvdev *self)
cairo_matrix_init_identity (&self->device_matrix); cairo_matrix_init_identity (&self->device_matrix);
self->device_aspect_ratio = 0; self->device_aspect_ratio = 0;
self->output_ratio = 0; self->output_ratio = 0;
self->touches = g_hash_table_new_full (NULL, NULL,
NULL, release_device_touch_slot);
} }
/* /*
@@ -1393,9 +1349,6 @@ _clutter_input_device_evdev_new_virtual (ClutterDeviceManager *manager,
case CLUTTER_POINTER_DEVICE: case CLUTTER_POINTER_DEVICE:
name = "Virtual pointer device for seat"; name = "Virtual pointer device for seat";
break; break;
case CLUTTER_TOUCHSCREEN_DEVICE:
name = "Virtual touchscreen device for seat";
break;
default: default:
name = "Virtual device for seat"; name = "Virtual device for seat";
break; break;
@@ -1533,24 +1486,3 @@ clutter_input_device_evdev_translate_coordinates (ClutterInputDevice *device,
*x = CLAMP (x_d, MIN (min_x, max_x), MAX (min_x, max_x)) * stage_width; *x = CLAMP (x_d, MIN (min_x, max_x), MAX (min_x, max_x)) * stage_width;
*y = CLAMP (y_d, MIN (min_y, max_y), MAX (min_y, max_y)) * stage_height; *y = CLAMP (y_d, MIN (min_y, max_y), MAX (min_y, max_y)) * stage_height;
} }
void
clutter_input_device_evdev_release_touch_slots (ClutterInputDeviceEvdev *device_evdev,
uint64_t time_us)
{
GHashTableIter iter;
ClutterTouchState *touch_state;
g_hash_table_iter_init (&iter, device_evdev->touches);
while (g_hash_table_iter_next (&iter, NULL, (gpointer *) &touch_state))
{
clutter_seat_evdev_notify_touch_event (touch_state->seat,
CLUTTER_INPUT_DEVICE (device_evdev),
CLUTTER_TOUCH_CANCEL,
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
g_hash_table_iter_remove (&iter);
}
}

View File

@@ -71,8 +71,6 @@ struct _ClutterInputDeviceEvdev
gdouble device_aspect_ratio; /* w:h */ gdouble device_aspect_ratio; /* w:h */
gdouble output_ratio; /* w:h */ gdouble output_ratio; /* w:h */
GHashTable *touches;
/* Keyboard a11y */ /* Keyboard a11y */
ClutterKeyboardA11yFlags a11y_flags; ClutterKeyboardA11yFlags a11y_flags;
GList *slow_keys_list; GList *slow_keys_list;
@@ -139,19 +137,6 @@ void clutter_input_device_evdev_translate_coordinates (Clut
void clutter_input_device_evdev_apply_kbd_a11y_settings (ClutterInputDeviceEvdev *device, void clutter_input_device_evdev_apply_kbd_a11y_settings (ClutterInputDeviceEvdev *device,
ClutterKbdA11ySettings *settings); ClutterKbdA11ySettings *settings);
ClutterTouchState * clutter_input_device_evdev_acquire_touch_state (ClutterInputDeviceEvdev *device,
int device_slot);
ClutterTouchState * clutter_input_device_evdev_lookup_touch_state (ClutterInputDeviceEvdev *device,
int device_slot);
void clutter_input_device_evdev_release_touch_state (ClutterInputDeviceEvdev *device,
ClutterTouchState *touch_state);
void clutter_input_device_evdev_release_touch_slots (ClutterInputDeviceEvdev *device_evdev,
uint64_t time_us);
G_END_DECLS G_END_DECLS
#endif /* __CLUTTER_INPUT_DEVICE_EVDEV_H__ */ #endif /* __CLUTTER_INPUT_DEVICE_EVDEV_H__ */

View File

@@ -45,10 +45,6 @@
#define DISCRETE_SCROLL_STEP 10.0 #define DISCRETE_SCROLL_STEP 10.0
#ifndef BTN_STYLUS3
#define BTN_STYLUS3 0x149 /* Linux 4.15 */
#endif
void void
clutter_seat_evdev_set_libinput_seat (ClutterSeatEvdev *seat, clutter_seat_evdev_set_libinput_seat (ClutterSeatEvdev *seat,
struct libinput_seat *libinput_seat) struct libinput_seat *libinput_seat)
@@ -92,57 +88,32 @@ clutter_touch_state_free (ClutterTouchState *touch_state)
g_slice_free (ClutterTouchState, touch_state); g_slice_free (ClutterTouchState, touch_state);
} }
static void
ensure_seat_slot_allocated (ClutterSeatEvdev *seat,
int seat_slot)
{
if (seat_slot >= seat->n_alloc_touch_states)
{
const int size_increase = 5;
int i;
seat->n_alloc_touch_states += size_increase;
seat->touch_states = g_realloc_n (seat->touch_states,
seat->n_alloc_touch_states,
sizeof (ClutterTouchState *));
for (i = 0; i < size_increase; i++)
seat->touch_states[seat->n_alloc_touch_states - (i + 1)] = NULL;
}
}
ClutterTouchState * ClutterTouchState *
clutter_seat_evdev_acquire_touch_state (ClutterSeatEvdev *seat, clutter_seat_evdev_add_touch (ClutterSeatEvdev *seat,
int device_slot) guint32 id)
{ {
ClutterTouchState *touch_state; ClutterTouchState *touch;
int seat_slot;
for (seat_slot = 0; seat_slot < seat->n_alloc_touch_states; seat_slot++) touch = g_slice_new0 (ClutterTouchState);
{ touch->id = id;
if (!seat->touch_states[seat_slot])
break;
}
ensure_seat_slot_allocated (seat, seat_slot); g_hash_table_insert (seat->touches, GUINT_TO_POINTER (id), touch);
touch_state = g_slice_new0 (ClutterTouchState); return touch;
*touch_state = (ClutterTouchState) {
.seat = seat,
.seat_slot = seat_slot,
.device_slot = device_slot,
};
seat->touch_states[seat_slot] = touch_state;
return touch_state;
} }
void void
clutter_seat_evdev_release_touch_state (ClutterSeatEvdev *seat, clutter_seat_evdev_remove_touch (ClutterSeatEvdev *seat,
ClutterTouchState *touch_state) guint32 id)
{ {
g_clear_pointer (&seat->touch_states[touch_state->seat_slot], g_hash_table_remove (seat->touches, GUINT_TO_POINTER (id));
(GDestroyNotify) clutter_touch_state_free); }
ClutterTouchState *
clutter_seat_evdev_get_touch (ClutterSeatEvdev *seat,
guint32 id)
{
return g_hash_table_lookup (seat->touches, GUINT_TO_POINTER (id));
} }
ClutterSeatEvdev * ClutterSeatEvdev *
@@ -179,6 +150,9 @@ clutter_seat_evdev_new (ClutterDeviceManagerEvdev *manager_evdev)
_clutter_device_manager_add_device (manager, device); _clutter_device_manager_add_device (manager, device);
seat->core_keyboard = device; seat->core_keyboard = device;
seat->touches = g_hash_table_new_full (NULL, NULL, NULL,
(GDestroyNotify) clutter_touch_state_free);
seat->repeat = TRUE; seat->repeat = TRUE;
seat->repeat_delay = 250; /* ms */ seat->repeat_delay = 250; /* ms */
seat->repeat_interval = 33; /* ms */ seat->repeat_interval = 33; /* ms */
@@ -518,10 +492,6 @@ clutter_seat_evdev_notify_button (ClutterSeatEvdev *seat,
button_nr = CLUTTER_BUTTON_MIDDLE; button_nr = CLUTTER_BUTTON_MIDDLE;
break; break;
case 0x149: /* BTN_STYLUS3 */
button_nr = 8;
break;
default: default:
/* For compatibility reasons, all additional buttons go after the old 4-7 scroll ones */ /* For compatibility reasons, all additional buttons go after the old 4-7 scroll ones */
if (clutter_input_device_get_device_type (input_device) == CLUTTER_TABLET_DEVICE) if (clutter_input_device_get_device_type (input_device) == CLUTTER_TABLET_DEVICE)
@@ -790,50 +760,6 @@ clutter_seat_evdev_notify_discrete_scroll (ClutterSeatEvdev *seat,
} }
void
clutter_seat_evdev_notify_touch_event (ClutterSeatEvdev *seat,
ClutterInputDevice *input_device,
ClutterEventType evtype,
uint64_t time_us,
int slot,
double x,
double y)
{
ClutterStage *stage;
ClutterEvent *event = NULL;
/* We can drop the event on the floor if no stage has been
* associated with the device yet. */
stage = _clutter_input_device_get_stage (input_device);
if (stage == NULL)
return;
event = clutter_event_new (evtype);
_clutter_evdev_event_set_time_usec (event, time_us);
event->touch.time = us2ms (time_us);
event->touch.stage = CLUTTER_STAGE (stage);
event->touch.device = seat->core_pointer;
event->touch.x = x;
event->touch.y = y;
clutter_input_device_evdev_translate_coordinates (input_device, stage,
&event->touch.x,
&event->touch.y);
/* "NULL" sequences are special cased in clutter */
event->touch.sequence = GINT_TO_POINTER (MAX (1, slot + 1));
_clutter_xkb_translate_state (event, seat->xkb, seat->button_state);
if (evtype == CLUTTER_TOUCH_BEGIN ||
evtype == CLUTTER_TOUCH_UPDATE)
event->touch.modifier_state |= CLUTTER_BUTTON1_MASK;
clutter_event_set_device (event, seat->core_pointer);
clutter_event_set_source_device (event, input_device);
queue_event (event);
}
void void
clutter_seat_evdev_free (ClutterSeatEvdev *seat) clutter_seat_evdev_free (ClutterSeatEvdev *seat)
{ {
@@ -846,7 +772,7 @@ clutter_seat_evdev_free (ClutterSeatEvdev *seat)
g_object_unref (device); g_object_unref (device);
} }
g_slist_free (seat->devices); g_slist_free (seat->devices);
g_free (seat->touch_states); g_hash_table_unref (seat->touches);
xkb_state_unref (seat->xkb); xkb_state_unref (seat->xkb);

View File

@@ -38,10 +38,7 @@ typedef struct _ClutterTouchState ClutterTouchState;
struct _ClutterTouchState struct _ClutterTouchState
{ {
ClutterSeatEvdev *seat; guint32 id;
int device_slot;
int seat_slot;
ClutterPoint coords; ClutterPoint coords;
}; };
@@ -55,8 +52,7 @@ struct _ClutterSeatEvdev
ClutterInputDevice *core_pointer; ClutterInputDevice *core_pointer;
ClutterInputDevice *core_keyboard; ClutterInputDevice *core_keyboard;
ClutterTouchState **touch_states; GHashTable *touches;
int n_alloc_touch_states;
struct xkb_state *xkb; struct xkb_state *xkb;
xkb_led_index_t caps_lock_led; xkb_led_index_t caps_lock_led;
@@ -126,24 +122,16 @@ void clutter_seat_evdev_notify_discrete_scroll (ClutterSeatEvdev *seat,
double discrete_dy, double discrete_dy,
ClutterScrollSource source); ClutterScrollSource source);
void clutter_seat_evdev_notify_touch_event (ClutterSeatEvdev *seat,
ClutterInputDevice *input_device,
ClutterEventType evtype,
uint64_t time_us,
int slot,
double x,
double y);
void clutter_seat_evdev_set_libinput_seat (ClutterSeatEvdev *seat, void clutter_seat_evdev_set_libinput_seat (ClutterSeatEvdev *seat,
struct libinput_seat *libinput_seat); struct libinput_seat *libinput_seat);
void clutter_seat_evdev_sync_leds (ClutterSeatEvdev *seat); void clutter_seat_evdev_sync_leds (ClutterSeatEvdev *seat);
ClutterTouchState * clutter_seat_evdev_acquire_touch_state (ClutterSeatEvdev *seat, ClutterTouchState * clutter_seat_evdev_add_touch (ClutterSeatEvdev *seat,
int device_slot); guint32 id);
void clutter_seat_evdev_release_touch_state (ClutterSeatEvdev *seat, void clutter_seat_evdev_remove_touch (ClutterSeatEvdev *seat,
ClutterTouchState *touch_state); guint32 id);
ClutterTouchState * clutter_seat_evdev_get_touch (ClutterSeatEvdev *seat, ClutterTouchState * clutter_seat_evdev_get_touch (ClutterSeatEvdev *seat,
guint32 id); guint32 id);

View File

@@ -448,124 +448,6 @@ clutter_virtual_input_device_evdev_notify_discrete_scroll (ClutterVirtualInputDe
scroll_source); scroll_source);
} }
static void
clutter_virtual_input_device_evdev_notify_scroll_continuous (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
double dx,
double dy,
ClutterScrollSource scroll_source,
ClutterScrollFinishFlags finish_flags)
{
ClutterVirtualInputDeviceEvdev *virtual_evdev =
CLUTTER_VIRTUAL_INPUT_DEVICE_EVDEV (virtual_device);
if (time_us == CLUTTER_CURRENT_TIME)
time_us = g_get_monotonic_time ();
clutter_seat_evdev_notify_scroll_continuous (virtual_evdev->seat,
virtual_evdev->device,
time_us,
dx, dy,
scroll_source,
CLUTTER_SCROLL_FINISHED_NONE);
}
static void
clutter_virtual_input_device_evdev_notify_touch_down (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot,
double x,
double y)
{
ClutterVirtualInputDeviceEvdev *virtual_evdev =
CLUTTER_VIRTUAL_INPUT_DEVICE_EVDEV (virtual_device);
ClutterInputDeviceEvdev *device_evdev =
CLUTTER_INPUT_DEVICE_EVDEV (virtual_evdev->device);
ClutterTouchState *touch_state;
if (time_us == CLUTTER_CURRENT_TIME)
time_us = g_get_monotonic_time ();
touch_state = clutter_input_device_evdev_acquire_touch_state (device_evdev,
device_slot);
if (!touch_state)
return;
touch_state->coords.x = x;
touch_state->coords.y = y;
clutter_seat_evdev_notify_touch_event (virtual_evdev->seat,
virtual_evdev->device,
CLUTTER_TOUCH_BEGIN,
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
}
static void
clutter_virtual_input_device_evdev_notify_touch_motion (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot,
double x,
double y)
{
ClutterVirtualInputDeviceEvdev *virtual_evdev =
CLUTTER_VIRTUAL_INPUT_DEVICE_EVDEV (virtual_device);
ClutterInputDeviceEvdev *device_evdev =
CLUTTER_INPUT_DEVICE_EVDEV (virtual_evdev->device);
ClutterTouchState *touch_state;
if (time_us == CLUTTER_CURRENT_TIME)
time_us = g_get_monotonic_time ();
touch_state = clutter_input_device_evdev_lookup_touch_state (device_evdev,
device_slot);
if (!touch_state)
return;
touch_state->coords.x = x;
touch_state->coords.y = y;
clutter_seat_evdev_notify_touch_event (virtual_evdev->seat,
virtual_evdev->device,
CLUTTER_TOUCH_BEGIN,
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
}
static void
clutter_virtual_input_device_evdev_notify_touch_up (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot)
{
ClutterVirtualInputDeviceEvdev *virtual_evdev =
CLUTTER_VIRTUAL_INPUT_DEVICE_EVDEV (virtual_device);
ClutterInputDeviceEvdev *device_evdev =
CLUTTER_INPUT_DEVICE_EVDEV (virtual_evdev->device);
ClutterTouchState *touch_state;
if (time_us == CLUTTER_CURRENT_TIME)
time_us = g_get_monotonic_time ();
touch_state = clutter_input_device_evdev_lookup_touch_state (device_evdev,
device_slot);
if (!touch_state)
return;
clutter_seat_evdev_notify_touch_event (virtual_evdev->seat,
virtual_evdev->device,
CLUTTER_TOUCH_BEGIN,
time_us,
touch_state->seat_slot,
touch_state->coords.x,
touch_state->coords.y);
clutter_input_device_evdev_release_touch_state (device_evdev, touch_state);
}
static void static void
clutter_virtual_input_device_evdev_get_property (GObject *object, clutter_virtual_input_device_evdev_get_property (GObject *object,
guint prop_id, guint prop_id,
@@ -670,10 +552,6 @@ clutter_virtual_input_device_evdev_class_init (ClutterVirtualInputDeviceEvdevCla
virtual_input_device_class->notify_key = clutter_virtual_input_device_evdev_notify_key; virtual_input_device_class->notify_key = clutter_virtual_input_device_evdev_notify_key;
virtual_input_device_class->notify_keyval = clutter_virtual_input_device_evdev_notify_keyval; virtual_input_device_class->notify_keyval = clutter_virtual_input_device_evdev_notify_keyval;
virtual_input_device_class->notify_discrete_scroll = clutter_virtual_input_device_evdev_notify_discrete_scroll; virtual_input_device_class->notify_discrete_scroll = clutter_virtual_input_device_evdev_notify_discrete_scroll;
virtual_input_device_class->notify_scroll_continuous = clutter_virtual_input_device_evdev_notify_scroll_continuous;
virtual_input_device_class->notify_touch_down = clutter_virtual_input_device_evdev_notify_touch_down;
virtual_input_device_class->notify_touch_motion = clutter_virtual_input_device_evdev_notify_touch_motion;
virtual_input_device_class->notify_touch_up = clutter_virtual_input_device_evdev_notify_touch_up;
obj_props[PROP_SEAT] = g_param_spec_pointer ("seat", obj_props[PROP_SEAT] = g_param_spec_pointer ("seat",
P_("ClutterSeatEvdev"), P_("ClutterSeatEvdev"),

View File

@@ -109,6 +109,7 @@ static const gchar *atom_names[] = {
#define N_ATOM_NAMES G_N_ELEMENTS (atom_names) #define N_ATOM_NAMES G_N_ELEMENTS (atom_names)
/* various flags corresponding to pre init setup calls */ /* various flags corresponding to pre init setup calls */
static gboolean _want_reset_on_video_memory_purge = FALSE;
static gboolean _no_xevent_retrieval = FALSE; static gboolean _no_xevent_retrieval = FALSE;
static gboolean clutter_enable_xinput = TRUE; static gboolean clutter_enable_xinput = TRUE;
static gboolean clutter_enable_argb = FALSE; static gboolean clutter_enable_argb = FALSE;
@@ -681,7 +682,8 @@ clutter_backend_x11_get_renderer (ClutterBackend *backend,
/* set the display object we're using */ /* set the display object we're using */
cogl_xlib_renderer_set_foreign_display (renderer, xdisplay); cogl_xlib_renderer_set_foreign_display (renderer, xdisplay);
cogl_xlib_renderer_request_reset_on_video_memory_purge (renderer,
_want_reset_on_video_memory_purge);
return renderer; return renderer;
} }
@@ -1026,6 +1028,30 @@ clutter_x11_has_event_retrieval (void)
return !_no_xevent_retrieval; return !_no_xevent_retrieval;
} }
/**
* clutter_x11_request_reset_on_video_memory_purge:
*
* If the GL driver supports the NV_robustness_video_memory_purge
* extension, this call lets applications request that it gets
* initialized, thus allowing cogl_get_graphics_reset_status() to
* report memory purged errors if they happen. Checking for the
* graphics reset status is the application's responsibility.
*
* This function can only be called before calling clutter_init().
*/
void
clutter_x11_request_reset_on_video_memory_purge (void)
{
if (_clutter_context_is_initialized ())
{
g_warning ("%s() can only be used before calling clutter_init()",
G_STRFUNC);
return;
}
_want_reset_on_video_memory_purge = TRUE;
}
/** /**
* clutter_x11_get_default_screen: * clutter_x11_get_default_screen:
* *

View File

@@ -490,13 +490,6 @@ clutter_device_manager_x11_create_virtual_device (ClutterDeviceManager *device_
return g_object_new (CLUTTER_TYPE_VIRTUAL_INPUT_DEVICE_X11, NULL); return g_object_new (CLUTTER_TYPE_VIRTUAL_INPUT_DEVICE_X11, NULL);
} }
static ClutterVirtualDeviceType
clutter_device_manager_x11_get_supported_virtual_device_types (ClutterDeviceManager *device_manager)
{
return (CLUTTER_VIRTUAL_DEVICE_TYPE_KEYBOARD |
CLUTTER_VIRTUAL_DEVICE_TYPE_POINTER);
}
static void static void
clutter_device_manager_x11_set_property (GObject *gobject, clutter_device_manager_x11_set_property (GObject *gobject,
guint prop_id, guint prop_id,
@@ -544,7 +537,6 @@ clutter_device_manager_x11_class_init (ClutterDeviceManagerX11Class *klass)
manager_class->get_core_device = clutter_device_manager_x11_get_core_device; manager_class->get_core_device = clutter_device_manager_x11_get_core_device;
manager_class->get_device = clutter_device_manager_x11_get_device; manager_class->get_device = clutter_device_manager_x11_get_device;
manager_class->create_virtual_device = clutter_device_manager_x11_create_virtual_device; manager_class->create_virtual_device = clutter_device_manager_x11_create_virtual_device;
manager_class->get_supported_virtual_device_types = clutter_device_manager_x11_get_supported_virtual_device_types;
manager_class->apply_kbd_a11y_settings = clutter_device_manager_x11_apply_kbd_a11y_settings; manager_class->apply_kbd_a11y_settings = clutter_device_manager_x11_apply_kbd_a11y_settings;
} }

View File

@@ -495,21 +495,13 @@ create_device (ClutterDeviceManagerXI2 *manager_xi2,
"device-node", node_path, "device-node", node_path,
"n-rings", num_rings, "n-rings", num_rings,
"n-strips", num_strips, "n-strips", num_strips,
"n-mode-groups", MAX (num_rings, num_strips),
NULL); NULL);
translate_device_classes (backend_x11->xdpy, retval, translate_device_classes (backend_x11->xdpy, retval,
info->classes, info->classes,
info->num_classes); info->num_classes);
#ifdef HAVE_LIBWACOM
if (source == CLUTTER_PAD_DEVICE)
clutter_input_device_xi2_ensure_wacom_info (retval, manager_xi2->wacom_db);
#endif
g_free (vendor_id); g_free (vendor_id);
g_free (product_id); g_free (product_id);
g_free (node_path);
CLUTTER_NOTE (BACKEND, "Created device '%s' (id: %d, has-cursor: %s)", CLUTTER_NOTE (BACKEND, "Created device '%s' (id: %d, has-cursor: %s)",
info->name, info->name,
@@ -1134,7 +1126,7 @@ translate_pad_event (ClutterEvent *event,
ClutterInputDevice *device) ClutterInputDevice *device)
{ {
gdouble value; gdouble value;
guint number, mode = 0; guint number;
if (!translate_pad_axis (device, &xev->valuators, if (!translate_pad_axis (device, &xev->valuators,
&event->any.type, &event->any.type,
@@ -1148,21 +1140,15 @@ translate_pad_event (ClutterEvent *event,
if (xev->evtype == XI_Motion) if (xev->evtype == XI_Motion)
value = -1; value = -1;
#ifdef HAVE_LIBWACOM
mode = clutter_input_device_xi2_get_pad_group_mode (device, number);
#endif
if (event->any.type == CLUTTER_PAD_RING) if (event->any.type == CLUTTER_PAD_RING)
{ {
event->pad_ring.ring_number = number; event->pad_ring.ring_number = number;
event->pad_ring.angle = value; event->pad_ring.angle = value;
event->pad_ring.mode = mode;
} }
else else
{ {
event->pad_strip.strip_number = number; event->pad_strip.strip_number = number;
event->pad_strip.value = value; event->pad_strip.value = value;
event->pad_strip.mode = mode;
} }
event->any.time = xev->time; event->any.time = xev->time;
@@ -1389,13 +1375,6 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
/* Pad buttons are 0-indexed */ /* Pad buttons are 0-indexed */
event->pad_button.button = xev->detail - 1; event->pad_button.button = xev->detail - 1;
#ifdef HAVE_LIBWACOM
clutter_input_device_xi2_update_pad_state (device,
event->pad_button.button,
(xi_event->evtype == XI_ButtonPress),
&event->pad_button.group,
&event->pad_button.mode);
#endif
clutter_event_set_device (event, device); clutter_event_set_device (event, device);
clutter_event_set_source_device (event, source_device); clutter_event_set_source_device (event, source_device);
@@ -2045,13 +2024,6 @@ clutter_device_manager_xi2_create_virtual_device (ClutterDeviceManager *manage
NULL); NULL);
} }
static ClutterVirtualDeviceType
clutter_device_manager_xi2_get_supported_virtual_device_types (ClutterDeviceManager *device_manager)
{
return (CLUTTER_VIRTUAL_DEVICE_TYPE_KEYBOARD |
CLUTTER_VIRTUAL_DEVICE_TYPE_POINTER);
}
static void static void
clutter_device_manager_xi2_class_init (ClutterDeviceManagerXI2Class *klass) clutter_device_manager_xi2_class_init (ClutterDeviceManagerXI2Class *klass)
{ {
@@ -2080,7 +2052,6 @@ clutter_device_manager_xi2_class_init (ClutterDeviceManagerXI2Class *klass)
manager_class->get_device = clutter_device_manager_xi2_get_device; manager_class->get_device = clutter_device_manager_xi2_get_device;
manager_class->select_stage_events = clutter_device_manager_xi2_select_stage_events; manager_class->select_stage_events = clutter_device_manager_xi2_select_stage_events;
manager_class->create_virtual_device = clutter_device_manager_xi2_create_virtual_device; manager_class->create_virtual_device = clutter_device_manager_xi2_create_virtual_device;
manager_class->get_supported_virtual_device_types = clutter_device_manager_xi2_get_supported_virtual_device_types;
manager_class->apply_kbd_a11y_settings = clutter_device_manager_x11_apply_kbd_a11y_settings; manager_class->apply_kbd_a11y_settings = clutter_device_manager_x11_apply_kbd_a11y_settings;
} }
@@ -2092,8 +2063,4 @@ clutter_device_manager_xi2_init (ClutterDeviceManagerXI2 *self)
(GDestroyNotify) g_object_unref); (GDestroyNotify) g_object_unref);
self->tools_by_serial = g_hash_table_new_full (NULL, NULL, NULL, self->tools_by_serial = g_hash_table_new_full (NULL, NULL, NULL,
(GDestroyNotify) g_object_unref); (GDestroyNotify) g_object_unref);
#ifdef HAVE_LIBWACOM
self->wacom_db = libwacom_database_new ();
#endif
} }

View File

@@ -26,10 +26,6 @@
#include <clutter/clutter-device-manager.h> #include <clutter/clutter-device-manager.h>
#ifdef HAVE_LIBWACOM
#include <libwacom/libwacom.h>
#endif
G_BEGIN_DECLS G_BEGIN_DECLS
#define CLUTTER_TYPE_DEVICE_MANAGER_XI2 (_clutter_device_manager_xi2_get_type ()) #define CLUTTER_TYPE_DEVICE_MANAGER_XI2 (_clutter_device_manager_xi2_get_type ())
@@ -55,10 +51,6 @@ struct _ClutterDeviceManagerXI2
GList *slave_devices; GList *slave_devices;
int opcode; int opcode;
#ifdef HAVE_LIBWACOM
WacomDeviceDatabase *wacom_db;
#endif
}; };
struct _ClutterDeviceManagerXI2Class struct _ClutterDeviceManagerXI2Class

View File

@@ -45,11 +45,6 @@ struct _ClutterInputDeviceXI2
gint device_id; gint device_id;
ClutterInputDeviceTool *current_tool; ClutterInputDeviceTool *current_tool;
#ifdef HAVE_LIBWACOM
WacomDevice *wacom_device;
GArray *group_modes;
#endif
}; };
#define N_BUTTONS 5 #define N_BUTTONS 5
@@ -69,15 +64,6 @@ clutter_input_device_xi2_constructed (GObject *gobject)
if (G_OBJECT_CLASS (clutter_input_device_xi2_parent_class)->constructed) if (G_OBJECT_CLASS (clutter_input_device_xi2_parent_class)->constructed)
G_OBJECT_CLASS (clutter_input_device_xi2_parent_class)->constructed (gobject); G_OBJECT_CLASS (clutter_input_device_xi2_parent_class)->constructed (gobject);
#ifdef HAVE_LIBWACOM
if (clutter_input_device_get_device_type (CLUTTER_INPUT_DEVICE (gobject)) == CLUTTER_PAD_DEVICE)
{
device_xi2->group_modes = g_array_new (FALSE, TRUE, sizeof (guint));
g_array_set_size (device_xi2->group_modes,
clutter_input_device_get_n_mode_groups (CLUTTER_INPUT_DEVICE (gobject)));
}
#endif
} }
static gboolean static gboolean
@@ -101,84 +87,6 @@ clutter_input_device_xi2_is_grouped (ClutterInputDevice *device,
return FALSE; return FALSE;
} }
static void
clutter_input_device_xi2_finalize (GObject *object)
{
#ifdef HAVE_LIBWACOM
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (object);
if (device_xi2->wacom_device)
libwacom_destroy (device_xi2->wacom_device);
g_array_unref (device_xi2->group_modes);
#endif
G_OBJECT_CLASS (clutter_input_device_xi2_parent_class)->finalize (object);
}
static gint
clutter_input_device_xi2_get_group_n_modes (ClutterInputDevice *device,
gint group)
{
#ifdef HAVE_LIBWACOM
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
if (device_xi2->wacom_device)
{
if (group == 0)
{
if (libwacom_has_ring (device_xi2->wacom_device))
return libwacom_get_ring_num_modes (device_xi2->wacom_device);
else if (libwacom_get_num_strips (device_xi2->wacom_device) >= 1)
return libwacom_get_strips_num_modes (device_xi2->wacom_device);
}
else if (group == 1)
{
if (libwacom_has_ring2 (device_xi2->wacom_device))
return libwacom_get_ring2_num_modes (device_xi2->wacom_device);
else if (libwacom_get_num_strips (device_xi2->wacom_device) >= 2)
return libwacom_get_strips_num_modes (device_xi2->wacom_device);
}
}
#endif
return -1;
}
#ifdef HAVE_LIBWACOM
static int
clutter_input_device_xi2_get_button_group (ClutterInputDevice *device,
guint button)
{
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
if (device_xi2->wacom_device)
{
if (button >= libwacom_get_num_buttons (device_xi2->wacom_device))
return -1;
return libwacom_get_button_led_group (device_xi2->wacom_device,
'A' + button);
}
else
return -1;
}
#endif
static gboolean
clutter_input_device_xi2_is_mode_switch_button (ClutterInputDevice *device,
guint group,
guint button)
{
int button_group = -1;
#ifdef HAVE_LIBWACOM
button_group = clutter_input_device_xi2_get_button_group (device, button);
#endif
return button_group == (int) group;
}
static void static void
clutter_input_device_xi2_class_init (ClutterInputDeviceXI2Class *klass) clutter_input_device_xi2_class_init (ClutterInputDeviceXI2Class *klass)
{ {
@@ -186,12 +94,9 @@ clutter_input_device_xi2_class_init (ClutterInputDeviceXI2Class *klass)
ClutterInputDeviceClass *device_class = CLUTTER_INPUT_DEVICE_CLASS (klass); ClutterInputDeviceClass *device_class = CLUTTER_INPUT_DEVICE_CLASS (klass);
gobject_class->constructed = clutter_input_device_xi2_constructed; gobject_class->constructed = clutter_input_device_xi2_constructed;
gobject_class->finalize = clutter_input_device_xi2_finalize;
device_class->keycode_to_evdev = clutter_input_device_xi2_keycode_to_evdev; device_class->keycode_to_evdev = clutter_input_device_xi2_keycode_to_evdev;
device_class->is_grouped = clutter_input_device_xi2_is_grouped; device_class->is_grouped = clutter_input_device_xi2_is_grouped;
device_class->get_group_n_modes = clutter_input_device_xi2_get_group_n_modes;
device_class->is_mode_switch_button = clutter_input_device_xi2_is_mode_switch_button;
} }
static void static void
@@ -291,66 +196,3 @@ clutter_input_device_xi2_get_current_tool (ClutterInputDevice *device)
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device); ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
return device_xi2->current_tool; return device_xi2->current_tool;
} }
#ifdef HAVE_LIBWACOM
void
clutter_input_device_xi2_ensure_wacom_info (ClutterInputDevice *device,
WacomDeviceDatabase *wacom_db)
{
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
const gchar *node_path;
node_path = clutter_input_device_get_device_node (device);
device_xi2->wacom_device = libwacom_new_from_path (wacom_db, node_path,
WFALLBACK_NONE, NULL);
}
guint
clutter_input_device_xi2_get_pad_group_mode (ClutterInputDevice *device,
guint group)
{
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
if (group >= device_xi2->group_modes->len)
return 0;
return g_array_index (device_xi2->group_modes, guint, group);
}
void
clutter_input_device_xi2_update_pad_state (ClutterInputDevice *device,
guint button,
guint state,
guint *group,
guint *mode)
{
ClutterInputDeviceXI2 *device_xi2 = CLUTTER_INPUT_DEVICE_XI2 (device);
guint button_group, *group_mode;
gboolean is_mode_switch = FALSE;
button_group = clutter_input_device_xi2_get_button_group (device, button);
is_mode_switch = button_group >= 0;
/* Assign all non-mode-switch buttons to group 0 so far */
button_group = MAX (0, button_group);
if (button_group >= device_xi2->group_modes->len)
return;
group_mode = &g_array_index (device_xi2->group_modes, guint, button_group);
if (is_mode_switch && state)
{
guint next, n_modes;
n_modes = clutter_input_device_get_group_n_modes (device, button_group);
next = (*group_mode + 1) % n_modes;
*group_mode = next;
}
if (group)
*group = button_group;
if (mode)
*mode = *group_mode;
}
#endif

View File

@@ -27,10 +27,6 @@
#include <clutter/clutter-input-device.h> #include <clutter/clutter-input-device.h>
#include <X11/extensions/XInput2.h> #include <X11/extensions/XInput2.h>
#ifdef HAVE_LIBWACOM
#include <libwacom/libwacom.h>
#endif
G_BEGIN_DECLS G_BEGIN_DECLS
#define CLUTTER_TYPE_INPUT_DEVICE_XI2 (_clutter_input_device_xi2_get_type ()) #define CLUTTER_TYPE_INPUT_DEVICE_XI2 (_clutter_input_device_xi2_get_type ())
@@ -49,21 +45,6 @@ void clutter_input_device_xi2_update_tool (ClutterInputDevice *device,
ClutterInputDeviceTool *tool); ClutterInputDeviceTool *tool);
ClutterInputDeviceTool * clutter_input_device_xi2_get_current_tool (ClutterInputDevice *device); ClutterInputDeviceTool * clutter_input_device_xi2_get_current_tool (ClutterInputDevice *device);
#ifdef HAVE_LIBWACOM
void clutter_input_device_xi2_ensure_wacom_info (ClutterInputDevice *device,
WacomDeviceDatabase *wacom_db);
guint clutter_input_device_xi2_get_pad_group_mode (ClutterInputDevice *device,
guint group);
void clutter_input_device_xi2_update_pad_state (ClutterInputDevice *device,
guint button,
guint state,
guint *group,
guint *mode);
#endif
G_END_DECLS G_END_DECLS
#endif /* __CLUTTER_INPUT_DEVICE_XI2_H__ */ #endif /* __CLUTTER_INPUT_DEVICE_XI2_H__ */

View File

@@ -48,10 +48,6 @@ clutter_virtual_input_device_x11_notify_relative_motion (ClutterVirtualInputDevi
double dx, double dx,
double dy) double dy)
{ {
XTestFakeRelativeMotionEvent (clutter_x11_get_default_display (),
(int) dx,
(int) dy,
0);
} }
static void static void
@@ -60,11 +56,6 @@ clutter_virtual_input_device_x11_notify_absolute_motion (ClutterVirtualInputDevi
double x, double x,
double y) double y)
{ {
XTestFakeMotionEvent (clutter_x11_get_default_display (),
clutter_x11_get_default_screen (),
(int) x,
(int) y,
0);
} }
static void static void
@@ -77,48 +68,6 @@ clutter_virtual_input_device_x11_notify_button (ClutterVirtualInputDevice *virtu
button, button_state == CLUTTER_BUTTON_STATE_PRESSED, 0); button, button_state == CLUTTER_BUTTON_STATE_PRESSED, 0);
} }
static void
clutter_virtual_input_device_x11_notify_discrete_scroll (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
ClutterScrollDirection direction,
ClutterScrollSource scroll_source)
{
Display *xdisplay = clutter_x11_get_default_display ();
int button;
switch (direction)
{
case CLUTTER_SCROLL_UP:
button = 4;
break;
case CLUTTER_SCROLL_DOWN:
button = 5;
break;
case CLUTTER_SCROLL_LEFT:
button = 6;
break;
case CLUTTER_SCROLL_RIGHT:
button = 7;
break;
default:
g_warn_if_reached ();
return;
}
XTestFakeButtonEvent (xdisplay, button, True, 0);
XTestFakeButtonEvent (xdisplay, button, False, 0);
}
static void
clutter_virtual_input_device_x11_notify_scroll_continuous (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
double dx,
double dy,
ClutterScrollSource scroll_source,
ClutterScrollFinishFlags finish_flags)
{
}
static void static void
clutter_virtual_input_device_x11_notify_key (ClutterVirtualInputDevice *virtual_device, clutter_virtual_input_device_x11_notify_key (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us, uint64_t time_us,
@@ -142,34 +91,6 @@ clutter_virtual_input_device_x11_notify_keyval (ClutterVirtualInputDevice *virtu
keycode, key_state == CLUTTER_KEY_STATE_PRESSED, 0); keycode, key_state == CLUTTER_KEY_STATE_PRESSED, 0);
} }
static void
clutter_virtual_input_device_x11_notify_touch_down (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot,
double x,
double y)
{
g_warning ("Virtual touch motion not implemented under X11");
}
static void
clutter_virtual_input_device_x11_notify_touch_motion (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot,
double x,
double y)
{
g_warning ("Virtual touch motion not implemented under X11");
}
static void
clutter_virtual_input_device_x11_notify_touch_up (ClutterVirtualInputDevice *virtual_device,
uint64_t time_us,
int device_slot)
{
g_warning ("Virtual touch motion not implemented under X11");
}
static void static void
clutter_virtual_input_device_x11_init (ClutterVirtualInputDeviceX11 *virtual_device_x11) clutter_virtual_input_device_x11_init (ClutterVirtualInputDeviceX11 *virtual_device_x11)
{ {
@@ -184,11 +105,6 @@ clutter_virtual_input_device_x11_class_init (ClutterVirtualInputDeviceX11Class *
virtual_input_device_class->notify_relative_motion = clutter_virtual_input_device_x11_notify_relative_motion; virtual_input_device_class->notify_relative_motion = clutter_virtual_input_device_x11_notify_relative_motion;
virtual_input_device_class->notify_absolute_motion = clutter_virtual_input_device_x11_notify_absolute_motion; virtual_input_device_class->notify_absolute_motion = clutter_virtual_input_device_x11_notify_absolute_motion;
virtual_input_device_class->notify_button = clutter_virtual_input_device_x11_notify_button; virtual_input_device_class->notify_button = clutter_virtual_input_device_x11_notify_button;
virtual_input_device_class->notify_discrete_scroll = clutter_virtual_input_device_x11_notify_discrete_scroll;
virtual_input_device_class->notify_scroll_continuous = clutter_virtual_input_device_x11_notify_scroll_continuous;
virtual_input_device_class->notify_key = clutter_virtual_input_device_x11_notify_key; virtual_input_device_class->notify_key = clutter_virtual_input_device_x11_notify_key;
virtual_input_device_class->notify_keyval = clutter_virtual_input_device_x11_notify_keyval; virtual_input_device_class->notify_keyval = clutter_virtual_input_device_x11_notify_keyval;
virtual_input_device_class->notify_touch_down = clutter_virtual_input_device_x11_notify_touch_down;
virtual_input_device_class->notify_touch_motion = clutter_virtual_input_device_x11_notify_touch_motion;
virtual_input_device_class->notify_touch_up = clutter_virtual_input_device_x11_notify_touch_up;
} }

View File

@@ -161,6 +161,9 @@ gint clutter_x11_event_get_key_group (const ClutterEvent *event);
CLUTTER_AVAILABLE_IN_ALL CLUTTER_AVAILABLE_IN_ALL
guint clutter_x11_event_sequence_get_touch_detail (const ClutterEventSequence *sequence); guint clutter_x11_event_sequence_get_touch_detail (const ClutterEventSequence *sequence);
CLUTTER_AVAILABLE_IN_ALL
void clutter_x11_request_reset_on_video_memory_purge (void);
G_END_DECLS G_END_DECLS
#endif /* __CLUTTER_X11_H__ */ #endif /* __CLUTTER_X11_H__ */

View File

@@ -121,7 +121,6 @@ m4_define([xcomposite_req_version], [0.4])
m4_define([gdk_req_version], [3.3.18]) m4_define([gdk_req_version], [3.3.18])
m4_define([libinput_req_version], [1.4.0]) m4_define([libinput_req_version], [1.4.0])
m4_define([libudev_req_version], [136]) m4_define([libudev_req_version], [136])
m4_define([libwacom_req_version], [0.13])
AC_SUBST([GLIB_REQ_VERSION], [glib_req_version]) AC_SUBST([GLIB_REQ_VERSION], [glib_req_version])
AC_SUBST([COGL_REQ_VERSION], [cogl_req_version]) AC_SUBST([COGL_REQ_VERSION], [cogl_req_version])
@@ -134,7 +133,6 @@ AC_SUBST([XCOMPOSITE_REQ_VERSION], [xcomposite_req_version])
AC_SUBST([GDK_REQ_VERSION], [gdk_req_version]) AC_SUBST([GDK_REQ_VERSION], [gdk_req_version])
AC_SUBST([LIBINPUT_REQ_VERSION], [libinput_req_version]) AC_SUBST([LIBINPUT_REQ_VERSION], [libinput_req_version])
AC_SUBST([LIBUDEV_REQ_VERSION], [libudev_req_version]) AC_SUBST([LIBUDEV_REQ_VERSION], [libudev_req_version])
AC_SUBST([LIBWACOM_REQ_VERSION], [libwacom_req_version])
# Checks for typedefs, structures, and compiler characteristics. # Checks for typedefs, structures, and compiler characteristics.
AM_PATH_GLIB_2_0([glib_req_version], AM_PATH_GLIB_2_0([glib_req_version],
@@ -510,32 +508,6 @@ X11_EXTS=${X11_EXTS#* }
AC_CACHE_SAVE AC_CACHE_SAVE
dnl === Libwacom support for X11 ===============================================
AC_ARG_WITH(libwacom,
AC_HELP_STRING([--without-libwacom],
[disable the use of libwacom for advanced tablet management]),,
with_libwacom=auto)
have_libwacom=no
AC_MSG_CHECKING([libwacom])
if test x$with_libwacom = xno ; then
AC_MSG_RESULT([disabled])
else
if $PKG_CONFIG --exists libwacom '>=' $LIBWACOM_REQ_VERSION; then
have_libwacom=yes
AC_MSG_RESULT(yes)
PKG_CHECK_MODULES([LIBWACOM], [libwacom])
AC_SUBST(LIBWACOM_CFLAGS)
AC_SUBST(LIBWACOM_LIBS)
AC_DEFINE([HAVE_LIBWACOM], 1, [Building with libwacom for advanced tablet management])
else
AC_MSG_RESULT(no)
if test x$with_libwacom = xyes ; then
AC_MSG_ERROR([libwacom forced but not found])
fi
fi
fi
dnl === Enable GDK-Pixbuf in tests ============================================ dnl === Enable GDK-Pixbuf in tests ============================================
m4_define([pixbuf_default], [yes]) m4_define([pixbuf_default], [yes])
@@ -707,8 +679,8 @@ AS_IF([test "x$CLUTTER_BASE_PC_FILES_PRIVATE" = "x" && test "x$BACKEND_PC_FILES_
AC_SUBST(CLUTTER_REQUIRES) AC_SUBST(CLUTTER_REQUIRES)
AC_SUBST(CLUTTER_REQUIRES_PRIVATE) AC_SUBST(CLUTTER_REQUIRES_PRIVATE)
CLUTTER_CFLAGS="$FLAVOUR_CFLAGS $CLUTTER_DEPS_CFLAGS $CLUTTER_DEPS_PRIVATE_CFLAGS $GLIB_CFLAGS $LIBWACOM_CFLAGS" CLUTTER_CFLAGS="$FLAVOUR_CFLAGS $CLUTTER_DEPS_CFLAGS $CLUTTER_DEPS_PRIVATE_CFLAGS $GLIB_CFLAGS"
CLUTTER_LIBS="$FLAVOUR_LIBS $CLUTTER_DEPS_LIBS $CLUTTER_DEPS_PRIVATE_LIBS $GLIB_LIBS $LIBWACOM_LIBS" CLUTTER_LIBS="$FLAVOUR_LIBS $CLUTTER_DEPS_LIBS $CLUTTER_DEPS_PRIVATE_LIBS $GLIB_LIBS"
AC_SUBST(CLUTTER_CFLAGS) AC_SUBST(CLUTTER_CFLAGS)
AC_SUBST(CLUTTER_LIBS) AC_SUBST(CLUTTER_LIBS)

View File

@@ -542,6 +542,285 @@ cogl_texture_set_data (CoglTexture *texture,
error); error);
} }
/* Reads back the contents of a texture by rendering it to the framebuffer
* and reading back the resulting pixels.
*
* It will perform multiple renders if the texture is larger than the
* current glViewport.
*
* It assumes the projection and modelview have already been setup so
* that rendering to 0,0 with the same width and height of the viewport
* will exactly cover the viewport.
*
* NB: Normally this approach isn't normally used since we can just use
* glGetTexImage, but may be used as a fallback in some circumstances.
*/
static CoglBool
do_texture_draw_and_read (CoglFramebuffer *fb,
CoglPipeline *pipeline,
CoglTexture *texture,
CoglBitmap *target_bmp,
float *viewport,
CoglError **error)
{
float rx1, ry1;
float rx2, ry2;
float tx1, ty1;
float tx2, ty2;
int bw, bh;
CoglBitmap *rect_bmp;
unsigned int tex_width, tex_height;
CoglContext *ctx = fb->context;
tex_width = cogl_texture_get_width (texture);
tex_height = cogl_texture_get_height (texture);
ry2 = 0;
ty2 = 0;
/* Walk Y axis until whole bitmap height consumed */
for (bh = tex_height; bh > 0; bh -= viewport[3])
{
/* Rectangle Y coords */
ry1 = ry2;
ry2 += (bh < viewport[3]) ? bh : viewport[3];
/* Normalized texture Y coords */
ty1 = ty2;
ty2 = (ry2 / (float) tex_height);
rx2 = 0;
tx2 = 0;
/* Walk X axis until whole bitmap width consumed */
for (bw = tex_width; bw > 0; bw-=viewport[2])
{
int width;
int height;
/* Rectangle X coords */
rx1 = rx2;
rx2 += (bw < viewport[2]) ? bw : viewport[2];
width = rx2 - rx1;
height = ry2 - ry1;
/* Normalized texture X coords */
tx1 = tx2;
tx2 = (rx2 / (float) tex_width);
/* Draw a portion of texture */
cogl_framebuffer_draw_textured_rectangle (fb,
pipeline,
0, 0,
rx2 - rx1,
ry2 - ry1,
tx1, ty1,
tx2, ty2);
/* Read into a temporary bitmap */
rect_bmp = _cogl_bitmap_new_with_malloc_buffer
(ctx,
width, height,
COGL_PIXEL_FORMAT_RGBA_8888_PRE,
error);
if (!rect_bmp)
return FALSE;
if (!_cogl_framebuffer_read_pixels_into_bitmap
(fb,
viewport[0], viewport[1],
COGL_READ_PIXELS_COLOR_BUFFER,
rect_bmp,
error))
{
cogl_object_unref (rect_bmp);
return FALSE;
}
/* Copy to target bitmap */
if (!_cogl_bitmap_copy_subregion (rect_bmp,
target_bmp,
0, 0,
rx1, ry1,
width,
height,
error))
{
cogl_object_unref (rect_bmp);
return FALSE;
}
/* Free temp bitmap */
cogl_object_unref (rect_bmp);
}
}
return TRUE;
}
/* Reads back the contents of a texture by rendering it to the framebuffer
* and reading back the resulting pixels.
*
* NB: Normally this approach isn't normally used since we can just use
* glGetTexImage, but may be used as a fallback in some circumstances.
*/
static CoglBool
_cogl_texture_draw_and_read (CoglTexture *texture,
CoglBitmap *target_bmp,
GLuint target_gl_format,
GLuint target_gl_type,
CoglError **error)
{
CoglFramebuffer *framebuffer = cogl_get_draw_framebuffer ();
CoglContext *ctx = framebuffer->context;
float save_viewport[4];
float viewport[4];
CoglBool status = FALSE;
viewport[0] = 0;
viewport[1] = 0;
viewport[2] = cogl_framebuffer_get_width (framebuffer);
viewport[3] = cogl_framebuffer_get_height (framebuffer);
cogl_framebuffer_get_viewport4fv (framebuffer, save_viewport);
_cogl_framebuffer_push_projection (framebuffer);
cogl_framebuffer_orthographic (framebuffer,
0, 0,
viewport[2],
viewport[3],
0, 100);
cogl_framebuffer_push_matrix (framebuffer);
cogl_framebuffer_identity_matrix (framebuffer);
/* Direct copy operation */
if (ctx->texture_download_pipeline == NULL)
{
ctx->texture_download_pipeline = cogl_pipeline_new (ctx);
cogl_pipeline_set_blend (ctx->texture_download_pipeline,
"RGBA = ADD (SRC_COLOR, 0)",
NULL);
}
cogl_pipeline_set_layer_texture (ctx->texture_download_pipeline, 0, texture);
cogl_pipeline_set_layer_combine (ctx->texture_download_pipeline,
0, /* layer */
"RGBA = REPLACE (TEXTURE)",
NULL);
cogl_pipeline_set_layer_filters (ctx->texture_download_pipeline, 0,
COGL_PIPELINE_FILTER_NEAREST,
COGL_PIPELINE_FILTER_NEAREST);
if (!do_texture_draw_and_read (framebuffer,
ctx->texture_download_pipeline,
texture, target_bmp, viewport,
error))
return FALSE;
/* XXX: As an alleged PowerVR driver bug workaround where the driver
* is apparently not maintaining the alpha component of some
* framebuffers we render the alpha component of the texture
* separately to be sure we retrieve all components of the texture.
*
* TODO: verify if this is still an issue
*/
if ((_cogl_texture_get_format (texture) & COGL_A_BIT)/* && a_bits == 0*/)
{
uint8_t *srcdata;
uint8_t *dstdata;
uint8_t *srcpixel;
uint8_t *dstpixel;
int target_width = cogl_bitmap_get_width (target_bmp);
int target_height = cogl_bitmap_get_height (target_bmp);
int target_rowstride = cogl_bitmap_get_rowstride (target_bmp);
int bpp = _cogl_pixel_format_get_bytes_per_pixel (COGL_PIXEL_FORMAT_RGBA_8888);
int alpha_rowstride = bpp * target_width;
CoglBitmap *alpha_bmp;
int x,y;
if ((dstdata = _cogl_bitmap_map (target_bmp,
COGL_BUFFER_ACCESS_WRITE,
COGL_BUFFER_MAP_HINT_DISCARD,
error)) == NULL)
goto EXIT;
/* Create temp bitmap for alpha values */
alpha_bmp =
_cogl_bitmap_new_with_malloc_buffer (ctx,
target_width,
target_height,
COGL_PIXEL_FORMAT_RGBA_8888,
error);
if (!alpha_bmp)
{
_cogl_bitmap_unmap (target_bmp);
goto EXIT;
}
/* Draw alpha values into RGB channels */
cogl_pipeline_set_layer_combine (ctx->texture_download_pipeline,
0, /* layer */
"RGBA = REPLACE (TEXTURE[A])",
NULL);
if (!do_texture_draw_and_read (framebuffer,
ctx->texture_download_pipeline,
texture, alpha_bmp, viewport,
error))
{
cogl_object_unref (alpha_bmp);
_cogl_bitmap_unmap (target_bmp);
goto EXIT;
}
/* Copy temp R to target A */
/* Note: we don't try to catch errors since "mapping" an
* malloc buffer should never fail */
srcdata = _cogl_bitmap_map (alpha_bmp,
COGL_BUFFER_ACCESS_READ,
0 /* hints */,
NULL);
for (y=0; y<target_height; ++y)
{
for (x=0; x<target_width; ++x)
{
srcpixel = srcdata + x*bpp;
dstpixel = dstdata + x*bpp;
dstpixel[3] = srcpixel[0];
}
srcdata += alpha_rowstride;
dstdata += target_rowstride;
}
_cogl_bitmap_unmap (alpha_bmp);
_cogl_bitmap_unmap (target_bmp);
cogl_object_unref (alpha_bmp);
}
status = TRUE;
EXIT:
/* Restore old state */
cogl_framebuffer_pop_matrix (framebuffer);
_cogl_framebuffer_pop_projection (framebuffer);
cogl_framebuffer_set_viewport (framebuffer,
save_viewport[0],
save_viewport[1],
save_viewport[2],
save_viewport[3]);
return status;
}
static CoglBool static CoglBool
get_texture_bits_via_offscreen (CoglTexture *meta_texture, get_texture_bits_via_offscreen (CoglTexture *meta_texture,
CoglTexture *sub_texture, CoglTexture *sub_texture,
@@ -877,13 +1156,25 @@ cogl_texture_get_data (CoglTexture *texture,
tg_data.success = FALSE; tg_data.success = FALSE;
} }
/* XXX: In some cases this api may fail to read back the texture /* XXX: In some cases _cogl_texture_2d_download_from_gl may fail
* data; such as for GLES which doesn't support glGetTexImage * to read back the texture data; such as for GLES which doesn't
*/ * support glGetTexImage, so here we fallback to drawing the
* texture and reading the pixels from the framebuffer. */
if (!tg_data.success) if (!tg_data.success)
{ {
cogl_object_unref (target_bmp); if (!_cogl_texture_draw_and_read (texture, target_bmp,
return 0; closest_gl_format,
closest_gl_type,
&ignore_error))
{
/* We have no more fallbacks so we just give up and
* hope for the best */
g_warning ("Failed to read texture since draw-and-read "
"fallback failed: %s", ignore_error->message);
cogl_error_free (ignore_error);
cogl_object_unref (target_bmp);
return 0;
}
} }
/* Was intermediate used? */ /* Was intermediate used? */

View File

@@ -168,7 +168,7 @@ cogl_xlib_renderer_set_event_retrieval_enabled (CoglRenderer *renderer,
CoglBool enable); CoglBool enable);
/** /**
* cogl_xlib_renderer_set_threaded_swap_wait_enabled: (skip) * cogl_xlib_renderer_set_threaded_swap_wait_enabled:
* @renderer: a #CoglRenderer * @renderer: a #CoglRenderer
* @enable: The new value * @enable: The new value
* *

View File

@@ -90,11 +90,6 @@ typedef struct _CoglWinsysEGLVtable
(* add_config_attributes) (CoglDisplay *display, (* add_config_attributes) (CoglDisplay *display,
CoglFramebufferConfig *config, CoglFramebufferConfig *config,
EGLint *attributes); EGLint *attributes);
CoglBool
(* choose_config) (CoglDisplay *display,
EGLint *attributes,
EGLConfig *out_config,
CoglError **error);
} CoglWinsysEGLVtable; } CoglWinsysEGLVtable;
typedef enum _CoglEGLWinsysFeature typedef enum _CoglEGLWinsysFeature

View File

@@ -336,32 +336,6 @@ _cogl_winsys_egl_add_config_attributes (CoglDisplay *display,
return i; return i;
} }
static CoglBool
_cogl_winsys_egl_choose_config (CoglDisplay *display,
EGLint *attributes,
EGLConfig *out_config,
CoglError **error)
{
CoglRenderer *renderer = display->renderer;
CoglRendererEGL *egl_renderer = renderer->winsys;
EGLint config_count = 0;
EGLBoolean status;
status = eglChooseConfig (egl_renderer->edpy,
attributes,
out_config, 1,
&config_count);
if (status != EGL_TRUE || config_count == 0)
{
_cogl_set_error (error, COGL_WINSYS_ERROR,
COGL_WINSYS_ERROR_CREATE_CONTEXT,
"No compatible EGL configs found");
return FALSE;
}
return TRUE;
}
static CoglBool static CoglBool
_cogl_winsys_egl_display_setup (CoglDisplay *display, _cogl_winsys_egl_display_setup (CoglDisplay *display,
CoglError **error) CoglError **error)
@@ -867,7 +841,6 @@ static const CoglWinsysEGLVtable
_cogl_winsys_egl_vtable = _cogl_winsys_egl_vtable =
{ {
.add_config_attributes = _cogl_winsys_egl_add_config_attributes, .add_config_attributes = _cogl_winsys_egl_add_config_attributes,
.choose_config = _cogl_winsys_egl_choose_config,
.display_setup = _cogl_winsys_egl_display_setup, .display_setup = _cogl_winsys_egl_display_setup,
.display_destroy = _cogl_winsys_egl_display_destroy, .display_destroy = _cogl_winsys_egl_display_destroy,
.context_created = _cogl_winsys_egl_context_created, .context_created = _cogl_winsys_egl_context_created,

View File

@@ -338,9 +338,10 @@ try_create_context (CoglDisplay *display,
CoglRendererEGL *egl_renderer = renderer->winsys; CoglRendererEGL *egl_renderer = renderer->winsys;
EGLDisplay edpy; EGLDisplay edpy;
EGLConfig config; EGLConfig config;
EGLint config_count = 0;
EGLBoolean status;
EGLint attribs[9]; EGLint attribs[9];
EGLint cfg_attribs[MAX_EGL_CONFIG_ATTRIBS]; EGLint cfg_attribs[MAX_EGL_CONFIG_ATTRIBS];
GError *config_error = NULL;
const char *error_message; const char *error_message;
_COGL_RETURN_VAL_IF_FAIL (egl_display->egl_context == NULL, TRUE); _COGL_RETURN_VAL_IF_FAIL (egl_display->egl_context == NULL, TRUE);
@@ -355,16 +356,14 @@ try_create_context (CoglDisplay *display,
edpy = egl_renderer->edpy; edpy = egl_renderer->edpy;
if (!egl_renderer->platform_vtable->choose_config (display, status = eglChooseConfig (edpy,
cfg_attribs, cfg_attribs,
&config, &config, 1,
&config_error)) &config_count);
if (status != EGL_TRUE || config_count == 0)
{ {
_cogl_set_error (error, COGL_WINSYS_ERROR, error_message = "Unable to find a usable EGL configuration";
COGL_WINSYS_ERROR_CREATE_CONTEXT, goto fail;
"Couldn't choose config: %s", config_error->message);
g_error_free (config_error);
goto err;
} }
egl_display->egl_config = config; egl_display->egl_config = config;
@@ -420,7 +419,6 @@ fail:
COGL_WINSYS_ERROR_CREATE_CONTEXT, COGL_WINSYS_ERROR_CREATE_CONTEXT,
"%s", error_message); "%s", error_message);
err:
cleanup_context (display); cleanup_context (display);
return FALSE; return FALSE;

View File

@@ -1,15 +1,15 @@
AC_PREREQ(2.62) AC_PREREQ(2.62)
m4_define([mutter_major_version], [3]) m4_define([mutter_major_version], [3])
m4_define([mutter_minor_version], [28]) m4_define([mutter_minor_version], [27])
m4_define([mutter_micro_version], [0]) m4_define([mutter_micro_version], [1])
m4_define([mutter_version], m4_define([mutter_version],
[mutter_major_version.mutter_minor_version.mutter_micro_version]) [mutter_major_version.mutter_minor_version.mutter_micro_version])
m4_define([mutter_plugin_api_version], [3]) m4_define([mutter_plugin_api_version], [3])
m4_define([libmutter_api_version], [2]) m4_define([libmutter_api_version], [1])
AC_INIT([mutter], [mutter_version], AC_INIT([mutter], [mutter_version],
[http://bugzilla.gnome.org/enter_bug.cgi?product=mutter]) [http://bugzilla.gnome.org/enter_bug.cgi?product=mutter])
@@ -245,7 +245,11 @@ AC_ARG_ENABLE(remote-desktop,
enable_remote_desktop=no enable_remote_desktop=no
) )
AS_IF([test "$enable_remote_desktop" = "yes"], [ AS_IF([test "$enable_remote_desktop" = "yes"], [
MUTTER_PC_MODULES="$MUTTER_PC_MODULES libpipewire-0.1 >= 0.1.8" MUTTER_PC_MODULES="$MUTTER_PC_MODULES libpipewire-0.1 >= 0.1.4"
PKG_CHECK_EXISTS([libpipewire-0.1], [
pw_micro=`$PKG_CONFIG --modversion libpipewire-0.1 | cut -d. -f3`
AC_DEFINE_UNQUOTED([PIPEWIRE_VERSION_MICRO],[$pw_micro], [Pipewire micro version used])
])
AC_DEFINE([HAVE_REMOTE_DESKTOP],[1], [Defined if screen cast and remote desktop support is enabled]) AC_DEFINE([HAVE_REMOTE_DESKTOP],[1], [Defined if screen cast and remote desktop support is enabled])
]) ])
AM_CONDITIONAL([HAVE_REMOTE_DESKTOP],[test "$enable_remote_desktop" = "yes"]) AM_CONDITIONAL([HAVE_REMOTE_DESKTOP],[test "$enable_remote_desktop" = "yes"])
@@ -262,7 +266,7 @@ AC_SUBST(XWAYLAND_PATH)
PKG_CHECK_MODULES(MUTTER, $MUTTER_PC_MODULES) PKG_CHECK_MODULES(MUTTER, $MUTTER_PC_MODULES)
MUTTER_NATIVE_BACKEND_MODULES="libdrm >= 2.4.83 libsystemd libinput >= 1.4 gudev-1.0 gbm >= 17.1" MUTTER_NATIVE_BACKEND_MODULES="libdrm libsystemd libinput >= 1.4 gudev-1.0 gbm >= 10.3"
AC_ARG_ENABLE(native-backend, AC_ARG_ENABLE(native-backend,
AS_HELP_STRING([--disable-native-backend], [disable mutter native (KMS) backend]),, AS_HELP_STRING([--disable-native-backend], [disable mutter native (KMS) backend]),,
@@ -303,7 +307,7 @@ AS_IF([test "$have_wayland" = "yes"], [
AC_SUBST([WAYLAND_SCANNER]) AC_SUBST([WAYLAND_SCANNER])
AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support]) AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support])
PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.12], PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.10],
[ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`]) [ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`])
AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir) AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir)
]) ])

View File

@@ -20,6 +20,12 @@
<KeyListEntry name="move-to-workspace-last" <KeyListEntry name="move-to-workspace-last"
description="Move window to last workspace" /> description="Move window to last workspace" />
<KeyListEntry name="move-to-workspace-left"
description="Move window one workspace to the left" />
<KeyListEntry name="move-to-workspace-right"
description="Move window one workspace to the right" />
<KeyListEntry name="move-to-workspace-up" <KeyListEntry name="move-to-workspace-up"
description="Move window one workspace up" /> description="Move window one workspace up" />
@@ -119,6 +125,12 @@
<KeyListEntry name="switch-to-workspace-last" <KeyListEntry name="switch-to-workspace-last"
description="Switch to last workspace" /> description="Switch to last workspace" />
<KeyListEntry name="switch-to-workspace-left"
description="Move to workspace left" />
<KeyListEntry name="switch-to-workspace-right"
description="Move to workspace right" />
<KeyListEntry name="switch-to-workspace-up" <KeyListEntry name="switch-to-workspace-up"
description="Move to workspace above" /> description="Move to workspace above" />

View File

@@ -15,6 +15,8 @@
<KeyListEntry name="unmaximize" description="Restore window"/> <KeyListEntry name="unmaximize" description="Restore window"/>
<KeyListEntry name="toggle-shaded" description="Toggle shaded state"/>
<KeyListEntry name="close" description="Close window"/> <KeyListEntry name="close" description="Close window"/>
<KeyListEntry name="minimize" description="Hide window"/> <KeyListEntry name="minimize" description="Hide window"/>

View File

@@ -28,7 +28,6 @@ clutter/clutter/clutter-grid-layout.c
clutter/clutter/clutter-image.c clutter/clutter/clutter-image.c
clutter/clutter/clutter-input-device.c clutter/clutter/clutter-input-device.c
clutter/clutter/clutter-input-device-tool.c clutter/clutter/clutter-input-device-tool.c
clutter/clutter/clutter-input-method.c
clutter/clutter/clutter-interval.c clutter/clutter/clutter-interval.c
clutter/clutter/clutter-layout-manager.c clutter/clutter/clutter-layout-manager.c
clutter/clutter/clutter-layout-meta.c clutter/clutter/clutter-layout-meta.c

201
po/cs.po
View File

@@ -6,14 +6,15 @@
# Petr Tomeš <ptomes@gmail.com>, 2006. # Petr Tomeš <ptomes@gmail.com>, 2006.
# Jakub Friedl <jfriedl@suse.cz>, 2006, 2007. # Jakub Friedl <jfriedl@suse.cz>, 2006, 2007.
# Petr Kovar <pknbe@volny.cz>, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014. # Petr Kovar <pknbe@volny.cz>, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014.
# Marek Černocký <marek@manet.cz>, 2012, 2013, 2014, 2016, 2017, 2018. # Marek Černocký <marek@manet.cz>, 2012, 2013, 2014, 2016, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-03-01 10:47+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-07 19:28+0100\n" "POT-Creation-Date: 2017-11-10 18:16+0000\n"
"PO-Revision-Date: 2017-11-15 13:31+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n" "Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: čeština <gnome-cs-list@gnome.org>\n" "Language-Team: čeština <gnome-cs-list@gnome.org>\n"
"Language: cs\n" "Language: cs\n"
@@ -49,114 +50,130 @@ msgid "Move window to last workspace"
msgstr "Přesunout okno na poslední pracovní plochu" msgstr "Přesunout okno na poslední pracovní plochu"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Přesunout okno o jednu pracovní plochu doleva"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Přesunout okno o jednu pracovní plochu doprava"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Přesunout okno o jednu pracovní plochu nahoru" msgstr "Přesunout okno o jednu pracovní plochu nahoru"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Přesunout okno o jednu pracovní plochu dolů" msgstr "Přesunout okno o jednu pracovní plochu dolů"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Přesunout okno o jeden monitor doleva" msgstr "Přesunout okno o jeden monitor doleva"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Přesunout okno o jeden monitor doprava" msgstr "Přesunout okno o jeden monitor doprava"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Přesunout okno o jeden monitor nahoru" msgstr "Přesunout okno o jeden monitor nahoru"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Přesunout okno o jeden monitor dolů" msgstr "Přesunout okno o jeden monitor dolů"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Přepnout do jiné aplikace" msgstr "Přepnout do jiné aplikace"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Přepnout do předchozí aplikaci" msgstr "Přepnout do předchozí aplikaci"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Přepnout do jiného okna" msgstr "Přepnout do jiného okna"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Přepnout do minulého okna" msgstr "Přepnout do minulého okna"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Přepnout do jiného okna aplikace" msgstr "Přepnout do jiného okna aplikace"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Přepnout do předchozího okna aplikace" msgstr "Přepnout do předchozího okna aplikace"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Přepnout na systémový ovládací prvek" msgstr "Přepnout na systémový ovládací prvek"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Přepnout na minulý systémový ovládací prvek" msgstr "Přepnout na minulý systémový ovládací prvek"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Přepnout do minulého okna" msgstr "Přepnout do minulého okna"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Přepnout přímo na předchozí okno" msgstr "Přepnout přímo na předchozí okno"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Přepnout do jiného okna aplikace" msgstr "Přepnout do jiného okna aplikace"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Přepnout do předchozího okna aplikace" msgstr "Přepnout do předchozího okna aplikace"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Přepnout na minulý systémový ovládací prvek" msgstr "Přepnout na minulý systémový ovládací prvek"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Přepnout přímo na předchozí systémové ovládací prvky" msgstr "Přepnout přímo na předchozí systémové ovládací prvky"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Skrýt všechna běžná okna" msgstr "Skrýt všechna běžná okna"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Přepnout na plochu 1" msgstr "Přepnout na plochu 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Přepnout na plochu 2" msgstr "Přepnout na plochu 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Přepnout na plochu 3" msgstr "Přepnout na plochu 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Přepnout na plochu 4" msgstr "Přepnout na plochu 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Přepnout na poslední plochu" msgstr "Přepnout na poslední plochu"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Přesunout na plochu vlevo"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Přesunout na plochu vpravo"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Přesunout na plochu nad" msgstr "Přesunout na plochu nad"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Přesunout na plochu pod" msgstr "Přesunout na plochu pod"
@@ -201,50 +218,54 @@ msgid "Restore window"
msgstr "Obnovit velikost okna" msgstr "Obnovit velikost okna"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Přepnout stav svinutí"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Zavřít okno" msgstr "Zavřít okno"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Skrýt okno" msgstr "Skrýt okno"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Přesunout okno" msgstr "Přesunout okno"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Změnit velikost okna" msgstr "Změnit velikost okna"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Přepnout okno na všechny/jednu pracovní plochu" msgstr "Přepnout okno na všechny/jednu pracovní plochu"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Když je okno zakryté vynést jej do popředí, jinak odsunout do pozadí" msgstr "Když je okno zakryté vynést jej do popředí, jinak odsunout do pozadí"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Vynést okno do popředí nad ostatní okna" msgstr "Vynést okno do popředí nad ostatní okna"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Odsunout okno do pozadí za ostatní okna" msgstr "Odsunout okno do pozadí za ostatní okna"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximalizovat okno svisle" msgstr "Maximalizovat okno svisle"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximalizovat okno vodorovně" msgstr "Maximalizovat okno vodorovně"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Rozdělit okno přes levou půlku obrazovky" msgstr "Rozdělit okno přes levou půlku obrazovky"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Rozdělit okno přes pravou půlku obrazovky" msgstr "Rozdělit okno přes pravou půlku obrazovky"
@@ -482,57 +503,10 @@ msgstr "Přepnout na VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Znovu povolit klávesové zkratky" msgstr "Znovu povolit klávesové zkratky"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Povolit zachytávání pomocí Xwaylandu"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Povolit, aby bylo bráno v úvahu zachytávání kláves, o které se stará "
"aplikace X11 běžící v Xwaylandu. Aby bylo pod Waylandem zachytávání bráno v "
"úvahu, musí klient navíc buď poslat specifickou zprávu X11 ClientMessage do "
"kořenového okna, nebo být mezi aplikacemi na bílé listině v klíči „xwayland-"
"grab-access-rules“."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr ""
"Aplikace pod Xwaylandem mají povoleno se starat o zachytávání klávesnice"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Seznam názvů prostředků nebo tříd prostředků oken X11, které buď mají nebo "
"nemají povolené se starat o zachytávání klávesnice X11 pod Xwaylandem. Název "
"nebo třída prostředku daného okna X11 se dá zjistit pomocí příkazu „xprop "
"WM_CLASS“. V názvech jsou podporované divoké znaky „*“ a „?“. Hodnoty "
"začínající „!“ jsou na černé listině, což má přednost před bílou listinou, "
"aby se daly aplikace odvolat z výchozího systémového seznamu. Do výchozího "
"systémového seznamu patří následující aplikace: "
"„@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@“. Uživatel může přerušit existující "
"zachytávání pomocí speciální klávesové zkratky definované klíčem „restore-"
"shortcuts“."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Přepínač režimu (skupina %d)" msgstr "Přepínač režimu (skupina %d)"
@@ -540,11 +514,11 @@ msgstr "Přepínač režimu (skupina %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Přepnout monitor" msgstr "Přepnout monitor"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Zobrazit nápovědu na obrazovce" msgstr "Zobrazit nápovědu na obrazovce"
@@ -570,7 +544,7 @@ msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -585,46 +559,42 @@ msgstr "Událost zvonku"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Nelze otevřít displej X Window System „%s“\n" msgstr "Nelze otevřít displej X Window System „%s“\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Zakáže připojení ke správci sezení" msgstr "Zakáže připojení ke správci sezení"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Nahradí běžícího správce oken" msgstr "Nahradí běžícího správce oken"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Určení ID správy sezení" msgstr "Určení ID správy sezení"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Displej X, který použije" msgstr "Displej X, který použije"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Spustí sezení z uloženého souboru" msgstr "Spustí sezení z uloženého souboru"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Provede volání X synchronně" msgstr "Provede volání X synchronně"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Spustit jako kompozitor protokolu Wayland" msgstr "Spustit jako kompozitor protokolu Wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Spustit jako podkladový kompozitor" msgstr "Spustit jako podkladový kompozitor"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Spustit jako plnohodnotný server displeje, nikoliv vnořeně" msgstr "Spustit jako plnohodnotný server displeje, nikoliv vnořeně"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Spustit se serverem X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -698,12 +668,12 @@ msgstr "Obrazovka %d na displeji „%s“ je neplatná\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter bylo přeloženo bez podpory podrobného režimu\n" msgstr "Mutter bylo přeloženo bez podpory podrobného režimu\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Přepínač režimu: režim %d" msgstr "Přepínač režimu: režim %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -715,18 +685,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (na %s)" msgstr "%s (na %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Přesunout okno o jednu pracovní plochu doleva"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Přesunout okno o jednu pracovní plochu doprava"
#~ msgid "Move to workspace left"
#~ msgstr "Přesunout na plochu vlevo"
#~ msgid "Move to workspace right"
#~ msgstr "Přesunout na plochu vpravo"
#~ msgid "Toggle shaded state"
#~ msgstr "Přepnout stav svinutí"

216
po/da.po
View File

@@ -1,5 +1,5 @@
# Danish translation of Mutter. # Danish translation of Mutter.
# Copyright (C) 2002-2009, 2012-2018. # Copyright (C) 2002-2009, 2012-2017.
# This file is distributed under the same license as the metacity package. # This file is distributed under the same license as the metacity package.
# Kjartan Maraas <kmaraas@gnome.org>, 2002 # Kjartan Maraas <kmaraas@gnome.org>, 2002
# Keld simonsen <keld@dkuug.dk>, 2002 # Keld simonsen <keld@dkuug.dk>, 2002
@@ -8,7 +8,7 @@
# Lasse Bang Mikkelsen <lbm@fatalerror.dk>, 2006. # Lasse Bang Mikkelsen <lbm@fatalerror.dk>, 2006.
# Kenneth Nielsen <k.nielsen81@gmail.com>, 2008. # Kenneth Nielsen <k.nielsen81@gmail.com>, 2008.
# Joe Hansen <joedalton2@yahoo.dk>, 2011. # Joe Hansen <joedalton2@yahoo.dk>, 2011.
# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 09, 10, 12, 13, 14, 15, 16, 17, 18. # Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 09, 10, 12, 13, 14, 15, 16, 17.
# #
# Ordliste: # Ordliste:
# #
@@ -19,9 +19,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-07 22:29+0100\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-09-03 20:29+0200\n"
"Last-Translator: Ask Hjorth Larsen <asklarsen@gmail.com>\n" "Last-Translator: Ask Hjorth Larsen <asklarsen@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n" "Language: da\n"
@@ -54,118 +55,134 @@ msgid "Move window to last workspace"
msgstr "Flyt vindue til sidste arbejdsområde" msgstr "Flyt vindue til sidste arbejdsområde"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Flyt vindue et arbejdsområde til venstre"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Flyt vindue et arbejdsområde til højre"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Flyt vindue et arbejdsområde op" msgstr "Flyt vindue et arbejdsområde op"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Flyt vindue et arbejdsområde ned" msgstr "Flyt vindue et arbejdsområde ned"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Flyt vindue en skærm til venstre" msgstr "Flyt vindue en skærm til venstre"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Flyt vindue en skærm til højre" msgstr "Flyt vindue en skærm til højre"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Flyt vindue en skærm op" msgstr "Flyt vindue en skærm op"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Flyt vindue en skærm ned" msgstr "Flyt vindue en skærm ned"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Skift mellem programmer" msgstr "Skift mellem programmer"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Skift til forrige program" msgstr "Skift til forrige program"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Skift mellem vinduer" msgstr "Skift mellem vinduer"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Skift til forrige vindue" msgstr "Skift til forrige vindue"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Skift mellem vinduer i et program" msgstr "Skift mellem vinduer i et program"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Skift til forrige vindue af et program" msgstr "Skift til forrige vindue af et program"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Skift mellem systemkontroller" msgstr "Skift mellem systemkontroller"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Skift til forrige systemkontrol" msgstr "Skift til forrige systemkontrol"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Skift direkte mellem vinduer" msgstr "Skift direkte mellem vinduer"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Skift direkte til forrige vindue" msgstr "Skift direkte til forrige vindue"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Skift direkte mellem vinduer i et program" msgstr "Skift direkte mellem vinduer i et program"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Skift direkte til forrige vindue af et program" msgstr "Skift direkte til forrige vindue af et program"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Skift direkte mellem systemkontroller" msgstr "Skift direkte mellem systemkontroller"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Skift direkte til forrige systemkontrol" msgstr "Skift direkte til forrige systemkontrol"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Skjul alle normale vinduer" msgstr "Skjul alle normale vinduer"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Skift til arbejdsområde 1" msgstr "Skift til arbejdsområde 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Skift til arbejdsområde 2" msgstr "Skift til arbejdsområde 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Skift til arbejdsområde 3" msgstr "Skift til arbejdsområde 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Skift til arbejdsområde 4" msgstr "Skift til arbejdsområde 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Skift til sidste arbejdsområde" msgstr "Skift til sidste arbejdsområde"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Flyt til arbejdsområdet til venstre"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Flyt til arbejdsområdet til højre"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Flyt til arbejdsområdet ovenover" msgstr "Flyt til arbejdsområdet ovenover"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Flyt til arbejdsområdet nedenunder" msgstr "Flyt til arbejdsområdet nedenunder"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "System" msgstr "System"
@@ -177,10 +194,6 @@ msgstr "Vis “kør kommando”-prompten"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Vis aktivitetsoversigten" msgstr "Vis aktivitetsoversigten"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Gendan tastaturgenvejene"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Vinduer" msgstr "Vinduer"
@@ -206,50 +219,54 @@ msgid "Restore window"
msgstr "Gendan vindue" msgstr "Gendan vindue"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Slå vinduesoprulning til/fra"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Luk vindue" msgstr "Luk vindue"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Skjul vindue" msgstr "Skjul vindue"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Flyt vindue" msgstr "Flyt vindue"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ændr vinduesstørrelse" msgstr "Ændr vinduesstørrelse"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Slå visning af vindue på alle arbejdsområder til/fra" msgstr "Slå visning af vindue på alle arbejdsområder til/fra"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Hæv vindue hvis det er dækket, ellers sænk det" msgstr "Hæv vindue hvis det er dækket, ellers sænk det"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Hæv vindue over andre vinduer" msgstr "Hæv vindue over andre vinduer"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Sænk vindue under andre vinduer" msgstr "Sænk vindue under andre vinduer"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maksimér vindue lodret" msgstr "Maksimér vindue lodret"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maksimér vindue vandret" msgstr "Maksimér vindue vandret"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Delt visning venstre" msgstr "Delt visning venstre"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Delt visning højre" msgstr "Delt visning højre"
@@ -407,18 +424,7 @@ msgid ""
"enables remote desktop support. To support remote desktop with screen " "enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables " "sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support." "screen cast support."
msgstr "" msgstr "For at slå eksperimentelle funktioner til, skal du tilføje funktionsnøgleordet til listen. Om funktionen kræver genstart af kompositoren afhænger af den givne funktion. Der er ingen garanti for at eksperimentelle funktion forbliver tilgængelige eller mulige at konfigurere. Forvent ikke at noget i denne indstilling nødvendigvis fungerer i fremtiden. Mulige nøgleord i øjeblikket: • “scale-monitor-framebuffer” — får mutter til som standard at arrangere logiske skærme i et logisk pixelkoordinatrum, mens skærmes framebuffere skaleres frem for vinduesindholdet for at håndtere HiDPI-skærme. Fjernskrivebord med skærmdeling understøttes hvis “screen-cast” også er aktiveret. • “screen-cast” — aktiverer understøttelse af skærmoptagelse."
"For at slå eksperimentelle funktioner til, skal du tilføje "
"funktionsnøgleordet til listen. Om funktionen kræver genstart af "
"kompositoren afhænger af den givne funktion. Der er ingen garanti for at "
"eksperimentelle funktion forbliver tilgængelige eller mulige at konfigurere. "
"Forvent ikke at noget i denne indstilling nødvendigvis fungerer i fremtiden. "
"Mulige nøgleord i øjeblikket: • “scale-monitor-framebuffer” — får mutter til "
"som standard at arrangere logiske skærme i et logisk pixelkoordinatrum, mens "
"skærmes framebuffere skaleres frem for vinduesindholdet for at håndtere "
"HiDPI-skærme. Fjernskrivebord med skærmdeling understøttes hvis “screen-"
"cast” også er aktiveret. • “screen-cast” — aktiverer understøttelse af "
"skærmoptagelse."
#: data/org.gnome.mutter.gschema.xml.in:145 #: data/org.gnome.mutter.gschema.xml.in:145
msgid "Select window from tab popup" msgid "Select window from tab popup"
@@ -489,41 +495,10 @@ msgstr "Skift til VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Genaktivér genveje" msgstr "Genaktivér genveje"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Tillad indfangelse med Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr "Tillad tastaturindfangelse af X11-programmer, som kører i Xwayland. For at en X11-tastaturindfangelse behandles i Wayland, skal klienten også enten sende en specifik X11-ClientMessage til rodvinduet eller være blandt de godkendte programmer i nøglen “xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland-programmer, som må indfange tastatur"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr "Anfør navne på ressourcer eller ressourceklasser for X11-vinduer som tillades eller ikke tillades at udføre X11-tastaturindfangelse under Xwayland. Ressourcenavnet eller ressourceklassen for et givent X11-vindue kan findes med kommandoen “xprop WM_CLASS”. Værdierne understøtter jokertegnene “*” og “?”. Værdier som begynder med “!” forbydes, hvilket har præcedens over godkendelse, og dette tillader at fjerne programmer som ellers findes i systemets standardliste. Denne liste inkluderer følgende programmer: “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@”. Brugere kan afbryde en eksisterende indfangelse ved hjælp af den særlige tastaturgenvej defineret ved nøglen “restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Tilstandsskift (Gruppe %d)" msgstr "Tilstandsskift (Gruppe %d)"
@@ -531,37 +506,37 @@ msgstr "Tilstandsskift (Gruppe %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Skift skærm" msgstr "Skift skærm"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Vis integreret hjælp" msgstr "Vis integreret hjælp"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Indbygget terminal" msgstr "Indbygget terminal"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Ukendt" msgstr "Ukendt"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Ukendt terminal" msgstr "Ukendt terminal"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -577,46 +552,42 @@ msgstr "Bip-hændelse"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Kunne ikke åbne X Window System-terminalen “%s”\n" msgstr "Kunne ikke åbne X Window System-terminalen “%s”\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Deaktivér forbindelse til sessionshåndtering" msgstr "Deaktivér forbindelse til sessionshåndtering"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Erstat den kørende vindueshåndtering" msgstr "Erstat den kørende vindueshåndtering"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Angiv sessionhåndterings-id" msgstr "Angiv sessionhåndterings-id"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "X-terminal som bruges" msgstr "X-terminal som bruges"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Initialisér session fra gemt fil" msgstr "Initialisér session fra gemt fil"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Gør kald til X synkrone" msgstr "Gør kald til X synkrone"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Kør som en wayland-kompositor" msgstr "Kør som en wayland-kompositor"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Kør som en indlejret kompositor" msgstr "Kør som en indlejret kompositor"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Kør som fuld terminalserver, frem for indlejret" msgstr "Kør som fuld terminalserver, frem for indlejret"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Kør med X11-motor"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -671,7 +642,7 @@ msgstr "Mutter-udvidelsesmodul der skal bruges"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Arbejdsområde %d" msgstr "Arbejdsområde %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -680,7 +651,7 @@ msgstr ""
"Terminalen “%s” har allerede en vindueshåndtering; prøv tilvalget --replace " "Terminalen “%s” har allerede en vindueshåndtering; prøv tilvalget --replace "
"for at erstatte den aktuelle vindueshåndtering." "for at erstatte den aktuelle vindueshåndtering."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Skærm %d på terminal “%s” er ugyldig\n" msgstr "Skærm %d på terminal “%s” er ugyldig\n"
@@ -694,7 +665,7 @@ msgstr "Mutter blev kompileret uden understøttelse for uddybende tilstand\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Tilstandsskift: Tilstand %d" msgstr "Tilstandsskift: Tilstand %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -708,21 +679,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (på %s)" msgstr "%s (på %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Flyt vindue et arbejdsområde til venstre"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Flyt vindue et arbejdsområde til højre"
#~ msgid "Move to workspace left"
#~ msgstr "Flyt til arbejdsområdet til venstre"
#~ msgid "Move to workspace right"
#~ msgstr "Flyt til arbejdsområdet til højre"
#~ msgid "Toggle shaded state"
#~ msgstr "Slå vinduesoprulning til/fra"
#~ msgid "Failed to scan themes directory: %s\n" #~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Kunne ikke skanne temamappe: %s\n" #~ msgstr "Kunne ikke skanne temamappe: %s\n"

205
po/de.po
View File

@@ -3,26 +3,26 @@
# Matthias Warkus <mawarkus@gnome.org>, 2002. # Matthias Warkus <mawarkus@gnome.org>, 2002.
# Christian Neumair <chris@gnome-de.org>, 2002-2004. # Christian Neumair <chris@gnome-de.org>, 2002-2004.
# Hendrik Richter <hendrikr@gnome.org>, 2005, 2006, 2007, 2008. # Hendrik Richter <hendrikr@gnome.org>, 2005, 2006, 2007, 2008.
# Mario Blättermann <mario.blaettermann@gmail.com>, 2010-2013, 2016-2018. # Mario Blättermann <mario.blaettermann@gmail.com>, 2010-2013, 2016-2017.
# Christian Kirbach <Christian.Kirbach@googlemail.com>, 2009, 2011, 2012. # Christian Kirbach <Christian.Kirbach@googlemail.com>, 2009, 2011, 2012.
# Wolfgang Stöggl <c72578@yahoo.de> 2011, 2017. # Wolfgang Stöggl <c72578@yahoo.de> 2011, 2017.
# Tobias Endrigkeit <tobiasendrigkeit@googlemail.com>, 2012. # Tobias Endrigkeit <tobiasendrigkeit@googlemail.com>, 2012.
# Tim Sabsch <timæsabsch.com>, 2018.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-26 07:59+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-26 21:26+0100\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"Last-Translator: Tim Sabsch <tim@sabsch.com>\n" "PO-Revision-Date: 2017-11-11 17:57+0100\n"
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n" "Language-Team: Deutsch <gnome-de@gnome.org>\n"
"Language: de\n" "Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.4\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -49,114 +49,130 @@ msgid "Move window to last workspace"
msgstr "Fenster auf letzte Arbeitsfläche verschieben" msgstr "Fenster auf letzte Arbeitsfläche verschieben"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Fenster eine Arbeitsfläche nach links verschieben"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Fenster eine Arbeitsfläche nach rechts verschieben"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Fenster eine Arbeitsfläche nach oben verschieben" msgstr "Fenster eine Arbeitsfläche nach oben verschieben"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Fenster eine Arbeitsfläche nach unten verschieben" msgstr "Fenster eine Arbeitsfläche nach unten verschieben"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Fenster einen Bildschirm nach links verschieben" msgstr "Fenster einen Bildschirm nach links verschieben"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Fenster einen Bildschirm nach rechts verschieben" msgstr "Fenster einen Bildschirm nach rechts verschieben"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Fenster einen Bildschirm nach oben verschieben" msgstr "Fenster einen Bildschirm nach oben verschieben"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Fenster einen Bildschirm nach unten verschieben" msgstr "Fenster einen Bildschirm nach unten verschieben"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Anwendungen wechseln" msgstr "Anwendungen wechseln"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Zur vorherigen Anwendung wechseln" msgstr "Zur vorherigen Anwendung wechseln"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Fenster wechseln" msgstr "Fenster wechseln"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Zum vorherigen Fenster wechseln" msgstr "Zum vorherigen Fenster wechseln"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Zwischen den Fenstern einer Anwendung wechseln" msgstr "Zwischen den Fenstern einer Anwendung wechseln"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Zum vorherigen Fenster einer Anwendung wechseln" msgstr "Zum vorherigen Fenster einer Anwendung wechseln"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Systemsteuerungen umschalten" msgstr "Systemsteuerungen umschalten"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Zur vorherigen Systemsteuerungen wechseln" msgstr "Zur vorherigen Systemsteuerungen wechseln"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Fenster sofort wechseln" msgstr "Fenster sofort wechseln"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Direkt zum vorherigen Fenster wechseln" msgstr "Direkt zum vorherigen Fenster wechseln"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Sofort zwischen den Fenstern einer Anwendung wechseln" msgstr "Sofort zwischen den Fenstern einer Anwendung wechseln"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Direkt zum vorherigen Fenster einer Anwendung wechseln" msgstr "Direkt zum vorherigen Fenster einer Anwendung wechseln"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Systemsteuerungen sofort umschalten" msgstr "Systemsteuerungen sofort umschalten"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Direkt zur vorherigen Systemsteuerungen wechseln" msgstr "Direkt zur vorherigen Systemsteuerungen wechseln"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Alle normalen Fenster verbergen" msgstr "Alle normalen Fenster verbergen"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Zur Arbeitsfläche 1 wechseln" msgstr "Zur Arbeitsfläche 1 wechseln"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Zur Arbeitsfläche 2 wechseln" msgstr "Zur Arbeitsfläche 2 wechseln"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Zur Arbeitsfläche 3 wechseln" msgstr "Zur Arbeitsfläche 3 wechseln"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Zur Arbeitsfläche 4 wechseln" msgstr "Zur Arbeitsfläche 4 wechseln"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Zur letzten Arbeitsfläche wechseln" msgstr "Zur letzten Arbeitsfläche wechseln"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Auf Arbeitsfläche links verschieben"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Auf Arbeitsfläche rechts verschieben"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Auf Arbeitsfläche darüber verschieben" msgstr "Auf Arbeitsfläche darüber verschieben"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Auf Arbeitsfläche darunter verschieben" msgstr "Auf Arbeitsfläche darunter verschieben"
@@ -201,51 +217,55 @@ msgid "Restore window"
msgstr "Fenstergröße wiederherstellen" msgstr "Fenstergröße wiederherstellen"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Fenster ein-/ausrollen"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Fenster schließen" msgstr "Fenster schließen"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Fenster verbergen" msgstr "Fenster verbergen"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Fenster verschieben" msgstr "Fenster verschieben"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Fenstergröße ändern" msgstr "Fenstergröße ändern"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "" msgstr ""
"Festlegen, ob das Fenster auf allen oder nur einer Arbeitsfläche sichtbar ist" "Festlegen, ob das Fenster auf allen oder nur einer Arbeitsfläche sichtbar ist"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Fenster anheben, falls es verdeckt ist, andernfalls absenken" msgstr "Fenster anheben, falls es verdeckt ist, andernfalls absenken"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Fenster vor die anderen Fenster anheben" msgstr "Fenster vor die anderen Fenster anheben"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Fenster hinter die anderen Fenster absenken" msgstr "Fenster hinter die anderen Fenster absenken"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Fenster vertikal maximieren" msgstr "Fenster vertikal maximieren"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Fenster horizontal maximieren" msgstr "Fenster horizontal maximieren"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Ansicht links teilen" msgstr "Ansicht links teilen"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Ansicht rechts teilen" msgstr "Ansicht rechts teilen"
@@ -303,7 +323,7 @@ msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:40 #: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically" msgid "Workspaces are managed dynamically"
msgstr "Arbeitsflächen sollen dynamisch verwaltet werden" msgstr "Arbeitsflächen sollen dynamisch verwaltet werden "
#: data/org.gnome.mutter.gschema.xml.in:41 #: data/org.gnome.mutter.gschema.xml.in:41
msgid "" msgid ""
@@ -389,7 +409,7 @@ msgid ""
"screen of the monitor." "screen of the monitor."
msgstr "" msgstr ""
"Falls wahr, so werden neue Fenster immer in der Mitte des aktiven " "Falls wahr, so werden neue Fenster immer in der Mitte des aktiven "
"Bildschirms platziert." "Bildschirms platziert"
#: data/org.gnome.mutter.gschema.xml.in:107 #: data/org.gnome.mutter.gschema.xml.in:107
msgid "Enable experimental features" msgid "Enable experimental features"
@@ -493,59 +513,10 @@ msgstr "Zum virtuellen Terminal 12 wechseln"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Tastenkombinationen erneut aktivieren" msgstr "Tastenkombinationen erneut aktivieren"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Tastatur-Kontrollübernahmen in Xwayland erlauben"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Erlauben, dass in Xwayland laufende X11-Anwendungen Kontrolle über die "
"Tastatur übernehmen dürfen. Damit eine X11-Kontrollübernahme unter Wayland "
"durchgeführt werden kann, muss der Client auch entweder eine spezifische X11-"
"ClientMessage an das Root-Fenster senden oder in den als »whitelisted« im "
"Schlüssel »xwayland-grab-access-rules« aufgelisteten Anwendungen enthalten "
"sein."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland-Anwendungen mit Erlaubnis zur Kontrollübernahme der Tastatur"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Listet die Ressourcennamen oder -klassen von X11-Fenstern auf, die unter "
"Xwayland X11-Tastatur-Kontrollübernahmen durchführen dürfen. Ressourcenname "
"oder -klasse eines bestimmten X11-Fensters kann mit dem Befehl »xprop "
"WM_CLASS« ermittelt werden. Dabei werden »*« als Platzhalter und »?« als "
"Joker in den Wertangaben unterstützt. Mit »!« beginnende Werte gelten als "
"»blacklisted« und werden gegenüber den als »whitelisted« markierten Werten "
"bevorzugt, um in der Standardliste des Systems aufgeführte Anwendungen außer "
"Kraft zu setzen. Die Standardliste des Systems enthält die folgenden "
"Anwendungen: »@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@« Benutzer können eine "
"existierende Kontrollübernahme unterbrechen, indem sie das spezifische "
"Tastenkürzel verwenden, wie es im Schlüssel »restore-shortcuts« angegeben "
"ist."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Moduswechsel (Gruppe %d)" msgstr "Moduswechsel (Gruppe %d)"
@@ -553,37 +524,37 @@ msgstr "Moduswechsel (Gruppe %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Bildschirm wechseln" msgstr "Bildschirm wechseln"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Bildschirmhilfe anzeigen" msgstr "Bildschirmhilfe anzeigen"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Eingebaute Anzeige" msgstr "Eingebaute Anzeige"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Unbekannt" msgstr "Unbekannt"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Unbekannte Anzeige" msgstr "Unbekannte Anzeige"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -600,46 +571,42 @@ msgstr "Klangereignis"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "X-Window-Systemanzeige »%s« konnte nicht geöffnet werden\n" msgstr "X-Window-Systemanzeige »%s« konnte nicht geöffnet werden\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Verbindung zur Sitzungsverwaltung deaktivieren" msgstr "Verbindung zur Sitzungsverwaltung deaktivieren"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Den aktuellen Fensterverwalter ersetzen" msgstr "Den aktuellen Fensterverwalter ersetzen"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Kennung der Sitzungsverwaltung angeben" msgstr "Kennung der Sitzungsverwaltung angeben"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Zu verwendende X-Anzeige" msgstr "Zu verwendende X-Anzeige"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Sitzung anhand gespeicherter Datei starten" msgstr "Sitzung anhand gespeicherter Datei starten"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "X-Aufrufe abgleichen" msgstr "X-Aufrufe abgleichen"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Als Wayland-Compositor ausführen" msgstr "Als Wayland-Compositor ausführen"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Als eingebetteten Compositor ausführen" msgstr "Als eingebetteten Compositor ausführen"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Als vollwertigen Display-Server verwenden (nicht eingebettet)" msgstr "Als vollwertigen Display-Server verwenden (nicht eingebettet)"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Mit X11-Backend ausführen"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -715,12 +682,12 @@ msgstr "Bildschirm %d auf Anzeige »%s« ist ungültig\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter wurde ohne Unterstützung für den redseligen Modus kompiliert\n" msgstr "Mutter wurde ohne Unterstützung für den redseligen Modus kompiliert\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Moduswechsel: Modus %d" msgstr "Moduswechsel: Modus %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."

518
po/eo.po
View File

@@ -2,16 +2,16 @@
# Copyright (C) 2011 Free Software Foundation, Inc. # Copyright (C) 2011 Free Software Foundation, Inc.
# This file is distributed under the same license as the mutter package. # This file is distributed under the same license as the mutter package.
# Michael MORONI < >, 2011. # Michael MORONI < >, 2011.
# Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>, 2011, 2012, 2015, 2018. # Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>, 2011, 2012, 2015.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"&keywords=I18N+L10N&component=general\n" "&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2017-12-18 16:24+0000\n" "POT-Creation-Date: 2015-02-14 11:06+0000\n"
"PO-Revision-Date: 2018-01-22 20:12+0200\n" "PO-Revision-Date: 2015-02-14 22:34+0200\n"
"Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n" "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
"Language-Team: Esperanto <gnome-eo-list@gnome.org>\n" "Language-Team: Esperanto <gnome-l10n-eo@lists.launchpad.net>\n"
"Language: eo\n" "Language: eo\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"
@@ -20,675 +20,553 @@ msgstr ""
"X-Generator: Virtaal 0.7.1\n" "X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/50-mutter-navigation.xml:6 #: ../data/50-mutter-navigation.xml.in.h:1
msgid "Navigation" msgid "Navigation"
msgstr "Navigado" msgstr "Navigado"
#: data/50-mutter-navigation.xml:9 #: ../data/50-mutter-navigation.xml.in.h:2
msgid "Move window to workspace 1" msgid "Move window to workspace 1"
msgstr "Movi la fenestron al laborspaco 1" msgstr "Movi la fenestron al laborspaco 1"
#: data/50-mutter-navigation.xml:12 #: ../data/50-mutter-navigation.xml.in.h:3
msgid "Move window to workspace 2" msgid "Move window to workspace 2"
msgstr "Movi la fenestron al laborspaco 2" msgstr "Movi la fenestron al laborspaco 2"
#: data/50-mutter-navigation.xml:15 #: ../data/50-mutter-navigation.xml.in.h:4
msgid "Move window to workspace 3" msgid "Move window to workspace 3"
msgstr "Movi la fenestron al laborspaco 3" msgstr "Movi la fenestron al laborspaco 3"
#: data/50-mutter-navigation.xml:18 #: ../data/50-mutter-navigation.xml.in.h:5
msgid "Move window to workspace 4" msgid "Move window to workspace 4"
msgstr "Movi la fenestron al laborspaco 4" msgstr "Movi la fenestron al laborspaco 4"
#: data/50-mutter-navigation.xml:21 #: ../data/50-mutter-navigation.xml.in.h:6
msgid "Move window to last workspace" msgid "Move window to last workspace"
msgstr "Movi la fenestron al lasta laborspaco" msgstr "Movi la fenestron al lasta laborspaco"
#: data/50-mutter-navigation.xml:24 #: ../data/50-mutter-navigation.xml.in.h:7
msgid "Move window one workspace to the left" msgid "Move window one workspace to the left"
msgstr "Movi la fenestron al la maldekstra laborspaco" msgstr "Movi la fenestron al la maldekstra laborspaco"
#: data/50-mutter-navigation.xml:27 #: ../data/50-mutter-navigation.xml.in.h:8
msgid "Move window one workspace to the right" msgid "Move window one workspace to the right"
msgstr "Movi la fenestron al la dekstra laborspaco" msgstr "Movi la fenestron al la dekstra laborspaco"
#: data/50-mutter-navigation.xml:30 #: ../data/50-mutter-navigation.xml.in.h:9
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Movi la fenestron al la supra laborspaco" msgstr "Movi la fenestron al la supra laborspaco"
#: data/50-mutter-navigation.xml:33 #: ../data/50-mutter-navigation.xml.in.h:10
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Movi la fenestron al la suba laborspaco" msgstr "Movi la fenestron al la suba laborspaco"
#: data/50-mutter-navigation.xml:36 #: ../data/50-mutter-navigation.xml.in.h:11
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Movi la fenestron al la maldekstra ekrano" msgstr "Movi la fenestron al la maldekstra ekrano"
#: data/50-mutter-navigation.xml:39 #: ../data/50-mutter-navigation.xml.in.h:12
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Movi la fenestron al la dekstra ekrano" msgstr "Movi la fenestron al la dekstra ekrano"
#: data/50-mutter-navigation.xml:42 #: ../data/50-mutter-navigation.xml.in.h:13
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Movi la fenestron al la supra ekrano" msgstr "Movi la fenestron al la supra ekrano"
#: data/50-mutter-navigation.xml:45 #: ../data/50-mutter-navigation.xml.in.h:14
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Movi la fenestron al la suba ekrano" msgstr "Movi la fenestron al la suba ekrano"
#: data/50-mutter-navigation.xml:49 #: ../data/50-mutter-navigation.xml.in.h:15
msgid "Switch applications" msgid "Switch applications"
msgstr "Ŝanĝi aplikaĵojn" msgstr "Ŝanĝi aplikaĵojn"
#: data/50-mutter-navigation.xml:54 #: ../data/50-mutter-navigation.xml.in.h:16
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Ŝalti al antaŭa aplikaĵo" msgstr "Ŝalti al antaŭa aplikaĵo"
#: data/50-mutter-navigation.xml:58 #: ../data/50-mutter-navigation.xml.in.h:17
msgid "Switch windows" msgid "Switch windows"
msgstr "Ŝanĝi fenestrojn" msgstr "Ŝanĝi fenestrojn"
#: data/50-mutter-navigation.xml:63 #: ../data/50-mutter-navigation.xml.in.h:18
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Ŝalti al antaŭa fenestro" msgstr "Ŝalti al antaŭa fenestro"
#: data/50-mutter-navigation.xml:67 #: ../data/50-mutter-navigation.xml.in.h:19
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Ŝanĝi fenestrojn de aplikaĵo" msgstr "Ŝanĝi fenestrojn de aplikaĵo"
#: data/50-mutter-navigation.xml:72 #: ../data/50-mutter-navigation.xml.in.h:20
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Ŝalti al antaŭa fenestro de aplikaĵo" msgstr "Ŝalti al antaŭa fenestro de aplikaĵo"
#: data/50-mutter-navigation.xml:76 #: ../data/50-mutter-navigation.xml.in.h:21
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Ŝanĝi sistem-kontrolojn" msgstr "Ŝanĝi sistem-kontrolojn"
#: data/50-mutter-navigation.xml:81 #: ../data/50-mutter-navigation.xml.in.h:22
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Ŝalti al antaŭa sistem-kontrolo" msgstr "Ŝalti al antaŭa sistem-kontrolo"
#: data/50-mutter-navigation.xml:85 #: ../data/50-mutter-navigation.xml.in.h:23
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Ŝanĝi rekte fenestrojn" msgstr "Ŝanĝi rekte fenestrojn"
#: data/50-mutter-navigation.xml:90 #: ../data/50-mutter-navigation.xml.in.h:24
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Ŝalti rekte al antaŭa fenestro" msgstr "Ŝalti rekte al antaŭa fenestro"
#: data/50-mutter-navigation.xml:94 #: ../data/50-mutter-navigation.xml.in.h:25
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Ŝanĝi rekte fenestrojn de aplikaĵo" msgstr "Ŝanĝi rekte fenestrojn de aplikaĵo"
#: data/50-mutter-navigation.xml:99 #: ../data/50-mutter-navigation.xml.in.h:26
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Ŝalti rekte al antaŭa fenestro de aplikaĵo" msgstr "Ŝalti rekte al antaŭa fenestro de aplikaĵo"
#: data/50-mutter-navigation.xml:103 #: ../data/50-mutter-navigation.xml.in.h:27
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Ŝalti rekte sistem-kontrolojn" msgstr "Ŝalti rekte sistem-kontrolojn"
#: data/50-mutter-navigation.xml:108 #: ../data/50-mutter-navigation.xml.in.h:28
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Ŝalti rekte al antaŭa sistem-kontrolo" msgstr "Ŝalti rekte al antaŭa sistem-kontrolo"
#: data/50-mutter-navigation.xml:111 #: ../data/50-mutter-navigation.xml.in.h:29
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Kaŝi ĉiujn normalajn fenestrojn" msgstr "Kaŝi ĉiujn normalajn fenestrojn"
#: data/50-mutter-navigation.xml:114 #: ../data/50-mutter-navigation.xml.in.h:30
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Ŝalti al laborspaco 1" msgstr "Ŝalti al laborspaco 1"
#: data/50-mutter-navigation.xml:117 #: ../data/50-mutter-navigation.xml.in.h:31
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Ŝalti al laborspaco 2" msgstr "Ŝalti al laborspaco 2"
#: data/50-mutter-navigation.xml:120 #: ../data/50-mutter-navigation.xml.in.h:32
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Ŝalti al laborspaco 3" msgstr "Ŝalti al laborspaco 3"
#: data/50-mutter-navigation.xml:123 #: ../data/50-mutter-navigation.xml.in.h:33
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Ŝalti al laborspaco 4" msgstr "Ŝalti al laborspaco 4"
#: data/50-mutter-navigation.xml:126 #: ../data/50-mutter-navigation.xml.in.h:34
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Ŝalti al lasta laborspaco" msgstr "Ŝalti al lasta laborspaco"
#: data/50-mutter-navigation.xml:129 #: ../data/50-mutter-navigation.xml.in.h:35
msgid "Move to workspace left" msgid "Move to workspace left"
msgstr "Movi al la maldekstra laborspaco" msgstr "Movi al la maldekstra laborspaco"
#: data/50-mutter-navigation.xml:132 #: ../data/50-mutter-navigation.xml.in.h:36
msgid "Move to workspace right" msgid "Move to workspace right"
msgstr "Movi al la dekstra laborspaco" msgstr "Movi al la dekstra laborspaco"
#: data/50-mutter-navigation.xml:135 #: ../data/50-mutter-navigation.xml.in.h:37
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Movi al la supra laborspaco" msgstr "Movi al la supra laborspaco"
#: data/50-mutter-navigation.xml:138 #: ../data/50-mutter-navigation.xml.in.h:38
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Movi al la malsupra laborspaco" msgstr "Movi al la malsupra laborspaco"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: ../data/50-mutter-system.xml.in.h:1
msgid "System" msgid "System"
msgstr "Sistemo" msgstr "Sistemo"
#: data/50-mutter-system.xml:8 #: ../data/50-mutter-system.xml.in.h:2
msgid "Show the run command prompt" msgid "Show the run command prompt"
msgstr "" msgstr ""
#: data/50-mutter-system.xml:10 #: ../data/50-mutter-system.xml.in.h:3
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "" msgstr ""
#: data/50-mutter-wayland.xml:8 #: ../data/50-mutter-windows.xml.in.h:1
msgid "Restore the keyboard shortcuts"
msgstr ""
#: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Fenestroj" msgstr "Fenestroj"
#: data/50-mutter-windows.xml:8 #: ../data/50-mutter-windows.xml.in.h:2
msgid "Activate the window menu" msgid "Activate the window menu"
msgstr "Aktivigi la fenestromenuon" msgstr "Aktivigi la fenestromenuon"
#: data/50-mutter-windows.xml:10 #: ../data/50-mutter-windows.xml.in.h:3
msgid "Toggle fullscreen mode" msgid "Toggle fullscreen mode"
msgstr "Baskuligi tutekranan reĝimon" msgstr "Baskuligi tutekranan reĝimon"
#: data/50-mutter-windows.xml:12 #: ../data/50-mutter-windows.xml.in.h:4
msgid "Toggle maximization state" msgid "Toggle maximization state"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:14 #: ../data/50-mutter-windows.xml.in.h:5
msgid "Maximize window" msgid "Maximize window"
msgstr "Maksimumigi la fenestron" msgstr "Maksimumigi la fenestron"
#: data/50-mutter-windows.xml:16 #: ../data/50-mutter-windows.xml.in.h:6
msgid "Restore window" msgid "Restore window"
msgstr "Restaŭri la fenestron" msgstr "Restaŭri la fenestron"
#: data/50-mutter-windows.xml:18 #: ../data/50-mutter-windows.xml.in.h:7
msgid "Toggle shaded state" msgid "Toggle shaded state"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:20 #: ../data/50-mutter-windows.xml.in.h:8
msgid "Close window" msgid "Close window"
msgstr "Fermi la fenestron" msgstr "Fermi la fenestron"
#: data/50-mutter-windows.xml:22 #: ../data/50-mutter-windows.xml.in.h:9
msgid "Hide window" msgid "Hide window"
msgstr "Kaŝi la fenestron" msgstr "Kaŝi la fenestron"
#: data/50-mutter-windows.xml:24 #: ../data/50-mutter-windows.xml.in.h:10
msgid "Move window" msgid "Move window"
msgstr "Movi la fenestron" msgstr "Movi la fenestron"
#: data/50-mutter-windows.xml:26 #: ../data/50-mutter-windows.xml.in.h:11
msgid "Resize window" msgid "Resize window"
msgstr "Ŝanĝi la fenestrograndon" msgstr "Ŝanĝi la fenestrograndon"
#: data/50-mutter-windows.xml:29 #: ../data/50-mutter-windows.xml.in.h:12
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:31 #: ../data/50-mutter-windows.xml.in.h:13
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:33 #: ../data/50-mutter-windows.xml.in.h:14
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:35 #: ../data/50-mutter-windows.xml.in.h:15
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:37 #: ../data/50-mutter-windows.xml.in.h:16
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Vertikale maksimumigi la fenestron" msgstr "Vertikale maksimumigi la fenestron"
#: data/50-mutter-windows.xml:39 #: ../data/50-mutter-windows.xml.in.h:17
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Horizontale maksimumigi la fenestron" msgstr "Horizontale maksimumigi la fenestron"
#: data/50-mutter-windows.xml:43 #: ../data/50-mutter-windows.xml.in.h:18
msgid "View split on left" msgid "View split on left"
msgstr "" msgstr ""
#: data/50-mutter-windows.xml:47 #: ../data/50-mutter-windows.xml.in.h:19
msgid "View split on right" msgid "View split on right"
msgstr "" msgstr ""
#: data/mutter.desktop.in:4 #: ../data/mutter.desktop.in.h:1
msgid "Mutter" msgid "Mutter"
msgstr "Mutero" msgstr "Mutero"
#: data/org.gnome.mutter.gschema.xml.in:7 #: ../data/org.gnome.mutter.gschema.xml.in.h:1
msgid "Modifier to use for extended window management operations" msgid "Modifier to use for extended window management operations"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:8 #: ../data/org.gnome.mutter.gschema.xml.in.h:2
msgid "" msgid ""
"This key will initiate the overlay, which is a combination window overview " "This key will initiate the \"overlay\", which is a combination window "
"and application launching system. The default is intended to be the “Windows " "overview and application launching system. The default is intended to be the "
"key on PC hardware. Its expected that this binding either the default or " "\"Windows key\" on PC hardware. It's expected that this binding either the "
"set to the empty string." "default or set to the empty string."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:20 #: ../data/org.gnome.mutter.gschema.xml.in.h:3
msgid "Attach modal dialogs" msgid "Attach modal dialogs"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:21 #: ../data/org.gnome.mutter.gschema.xml.in.h:4
msgid "" msgid ""
"When true, instead of having independent titlebars, modal dialogs appear " "When true, instead of having independent titlebars, modal dialogs appear "
"attached to the titlebar of the parent window and are moved together with " "attached to the titlebar of the parent window and are moved together with "
"the parent window." "the parent window."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:30 #: ../data/org.gnome.mutter.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges" msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:31 #: ../data/org.gnome.mutter.gschema.xml.in.h:6
msgid "" msgid ""
"If enabled, dropping windows on vertical screen edges maximizes them " "If enabled, dropping windows on vertical screen edges maximizes them "
"vertically and resizes them horizontally to cover half of the available " "vertically and resizes them horizontally to cover half of the available "
"area. Dropping windows on the top screen edge maximizes them completely." "area. Dropping windows on the top screen edge maximizes them completely."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:40 #: ../data/org.gnome.mutter.gschema.xml.in.h:7
msgid "Workspaces are managed dynamically" msgid "Workspaces are managed dynamically"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:41 #: ../data/org.gnome.mutter.gschema.xml.in.h:8
msgid "" msgid ""
"Determines whether workspaces are managed dynamically or whether theres a " "Determines whether workspaces are managed dynamically or whether there's a "
"static number of workspaces (determined by the num-workspaces key in org." "static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)." "gnome.desktop.wm.preferences)."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:50 #: ../data/org.gnome.mutter.gschema.xml.in.h:9
msgid "Workspaces only on primary" msgid "Workspaces only on primary"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:51 #: ../data/org.gnome.mutter.gschema.xml.in.h:10
msgid "" msgid ""
"Determines whether workspace switching should happen for windows on all " "Determines whether workspace switching should happen for windows on all "
"monitors or only for windows on the primary monitor." "monitors or only for windows on the primary monitor."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:59 #: ../data/org.gnome.mutter.gschema.xml.in.h:11
msgid "No tab popup" msgid "No tab popup"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:60 #: ../data/org.gnome.mutter.gschema.xml.in.h:12
msgid "" msgid ""
"Determines whether the use of popup and highlight frame should be disabled " "Determines whether the use of popup and highlight frame should be disabled "
"for window cycling." "for window cycling."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:68 #: ../data/org.gnome.mutter.gschema.xml.in.h:13
msgid "Delay focus changes until the pointer stops moving" msgid "Delay focus changes until the pointer stops moving"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:69 #: ../data/org.gnome.mutter.gschema.xml.in.h:14
msgid "" msgid ""
"If set to true, and the focus mode is either sloppy or mouse then the " "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
"focus will not be changed immediately when entering a window, but only after " "the focus will not be changed immediately when entering a window, but only "
"the pointer stops moving." "after the pointer stops moving."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:79 #: ../data/org.gnome.mutter.gschema.xml.in.h:15
msgid "Draggable border width" msgid "Draggable border width"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:80 #: ../data/org.gnome.mutter.gschema.xml.in.h:16
msgid "" msgid ""
"The amount of total draggable borders. If the themes visible borders are " "The amount of total draggable borders. If the theme's visible borders are "
"not enough, invisible borders will be added to meet this value." "not enough, invisible borders will be added to meet this value."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:89 #: ../data/org.gnome.mutter.gschema.xml.in.h:17
msgid "Auto maximize nearly monitor sized windows" msgid "Auto maximize nearly monitor sized windows"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:90 #: ../data/org.gnome.mutter.gschema.xml.in.h:18
msgid "" msgid ""
"If enabled, new windows that are initially the size of the monitor " "If enabled, new windows that are initially the size of the monitor "
"automatically get maximized." "automatically get maximized."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:98 #: ../data/org.gnome.mutter.gschema.xml.in.h:19
msgid "Place new windows in the center" msgid "Place new windows in the center"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:99 #: ../data/org.gnome.mutter.gschema.xml.in.h:20
msgid "" msgid ""
"When true, the new windows will always be put in the center of the active " "When true, the new windows will always be put in the center of the active "
"screen of the monitor." "screen of the monitor."
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:107 #: ../data/org.gnome.mutter.gschema.xml.in.h:21
msgid "Enable experimental features"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:108
msgid ""
"To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given "
"feature. Any experimental feature is not required to still be available, or "
"configurable. Dont expect adding anything in this setting to be future "
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:145
msgid "Select window from tab popup" msgid "Select window from tab popup"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:150 #: ../data/org.gnome.mutter.gschema.xml.in.h:22
msgid "Cancel tab popup" msgid "Cancel tab popup"
msgstr "" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:155 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#, fuzzy #, fuzzy
#| msgid "Switch applications"
msgid "Switch monitor configurations"
msgstr "Ŝanĝi aplikaĵojn"
#: data/org.gnome.mutter.gschema.xml.in:160
msgid "Rotates the built-in monitor configuration"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1" msgid "Switch to VT 1"
msgstr "Ŝalti al virtuala terminalo 1" msgstr "Ŝalti al VT 1"
#: data/org.gnome.mutter.wayland.gschema.xml.in:10 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#, fuzzy
msgid "Switch to VT 2" msgid "Switch to VT 2"
msgstr "Ŝalti al virtuala terminalo 2" msgstr "Ŝalti al VT 2"
#: data/org.gnome.mutter.wayland.gschema.xml.in:14 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#, fuzzy
msgid "Switch to VT 3" msgid "Switch to VT 3"
msgstr "Ŝalti al virtuala terminalo 3" msgstr "Ŝalti al VT 3"
#: data/org.gnome.mutter.wayland.gschema.xml.in:18 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#, fuzzy
msgid "Switch to VT 4" msgid "Switch to VT 4"
msgstr "Ŝalti al virtuala terminalo 4" msgstr "Ŝalti al VT 4"
#: data/org.gnome.mutter.wayland.gschema.xml.in:22 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#, fuzzy
#| msgid "Switch to workspace 5" #| msgid "Switch to workspace 5"
msgid "Switch to VT 5" msgid "Switch to VT 5"
msgstr "Ŝalti al virtuala terminalo 5" msgstr "Ŝalti al VT 5"
#: data/org.gnome.mutter.wayland.gschema.xml.in:26 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#, fuzzy
#| msgid "Switch to workspace 6" #| msgid "Switch to workspace 6"
msgid "Switch to VT 6" msgid "Switch to VT 6"
msgstr "Ŝalti al virtuala terminalo 6" msgstr "Ŝalti al VT 6"
#: data/org.gnome.mutter.wayland.gschema.xml.in:30 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#, fuzzy
#| msgid "Switch to workspace 7" #| msgid "Switch to workspace 7"
msgid "Switch to VT 7" msgid "Switch to VT 7"
msgstr "Ŝalti al virtuala terminalo 7" msgstr "Ŝalti al VT 7"
#: data/org.gnome.mutter.wayland.gschema.xml.in:34 #: ../src/backends/meta-monitor-manager.c:364
msgid "Switch to VT 8"
msgstr "Ŝalti al virtuala terminalo 8"
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr "Ŝalti al virtuala terminalo 9"
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr "Ŝalti al virtuala terminalo 10"
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr "Ŝalti al virtuala terminalo 11"
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr "Ŝalti al virtuala terminalo 12"
#: data/org.gnome.mutter.wayland.gschema.xml.in:54
msgid "Re-enable shortcuts"
msgstr "Re-ŝalti klavkombinojn"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:2260
#, c-format
msgid "Mode Switch (Group %d)"
msgstr ""
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:2283
#, fuzzy
#| msgid "Switch system controls"
msgid "Switch monitor"
msgstr "Ŝanĝi sistem-kontrolojn"
#: src/backends/meta-input-settings.c:2285
msgid "Show on-screen help"
msgstr "Montri ekranhelpon"
#: src/backends/meta-monitor-manager.c:900
msgid "Built-in display" msgid "Built-in display"
msgstr "" msgstr ""
#: src/backends/meta-monitor-manager.c:923 #: ../src/backends/meta-monitor-manager.c:391
msgid "Unknown" msgid "Unknown"
msgstr "Nekonate" msgstr "Nekonate"
#: src/backends/meta-monitor-manager.c:925 #: ../src/backends/meta-monitor-manager.c:393
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nekonata ekrano" msgstr "Nekonata ekrano"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: ../src/backends/meta-monitor-manager.c:401
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:479 #: ../src/compositor/compositor.c:456
#, fuzzy, c-format #, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display \"%s"
msgstr "Alia kunmetanta administrilo jam rulas sur ekrano %i de montrilo “%s”." "\"."
msgstr "Alia kunmetanta administrilo jam rulas sur ekrano %i de montrilo \"%s\"."
#: src/core/bell.c:194 #: ../src/core/bell.c:185
msgid "Bell event" msgid "Bell event"
msgstr "Sonoril-evento" msgstr "Sonoril-evento"
#: src/core/display.c:608 #: ../src/core/delete.c:127
#, fuzzy, c-format
#| msgid "Failed to open X Window System display '%s'\n"
msgid "Failed to open X Window System display “%s”\n"
msgstr "Malsukcesis malfermi jenan vidigon de fenestra sistemo X “%s”\n"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Elŝalti konekton al la seancoadministrilo"
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Anstataŭigi la nun ruliĝantan fenestromastrumilon"
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Specifi identigilon de la seancoadministrilo"
#: src/core/main.c:206
#, fuzzy
msgid "X Display to use"
msgstr "X-Vidigo uzenda"
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Pravalorizi la seancon el konservita dosiero"
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Fari X-vokojn sinkrone"
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr ""
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr ""
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr ""
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
#| msgid "<tt>%s</tt> is not responding."
msgid "“%s” is not responding." msgid "“%s” is not responding."
msgstr "“%s” ne respondas." msgstr "“%s” ne respondas."
#: src/core/meta-close-dialog-default.c:149 #: ../src/core/delete.c:129
msgid "Application is not responding." msgid "Application is not responding."
msgstr "Aplikaĵo ne respondas." msgstr "Aplikaĵo ne respondas."
#: src/core/meta-close-dialog-default.c:154 #: ../src/core/delete.c:134
msgid "" msgid ""
"You may choose to wait a short while for it to continue or force the " "You may choose to wait a short while for it to continue or force the "
"application to quit entirely." "application to quit entirely."
msgstr "Vi povas elekti ĉu atendi iomete por la aplikaĵo aŭ perforte ĉesi ĝin." msgstr "Vi povas elekti ĉu atendi iomete por la aplikaĵo aŭ perforte ĉesi ĝin."
#: src/core/meta-close-dialog-default.c:161 #: ../src/core/delete.c:141
msgid "_Force Quit"
msgstr "Per_forta eliro"
#: src/core/meta-close-dialog-default.c:161
msgid "_Wait" msgid "_Wait"
msgstr "_Atendi" msgstr "_Atendi"
#: src/core/mutter.c:39 #: ../src/core/delete.c:141
msgid "_Force Quit"
msgstr "Per_forta eliro"
#: ../src/core/display.c:562
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Malsukcesis malfermi jenan vidigon de fenestra sistemo X: '%s'\n"
#: ../src/core/main.c:176
msgid "Disable connection to session manager"
msgstr "Elŝalti konekton al la seancoadministrilo"
#: ../src/core/main.c:182
msgid "Replace the running window manager"
msgstr "Anstataŭigi la nun ruliĝantan fenestromastrumilon"
#: ../src/core/main.c:188
msgid "Specify session management ID"
msgstr "Specifi identigilon de la seancoadministrilo"
#: ../src/core/main.c:193
#, fuzzy
msgid "X Display to use"
msgstr "X-Vidigo uzenda"
#: ../src/core/main.c:199
msgid "Initialize session from savefile"
msgstr "Pravalorizi la seancon el konservita dosiero"
#: ../src/core/main.c:205
msgid "Make X calls synchronous"
msgstr "Fari X-vokojn sinkrone"
#: ../src/core/main.c:212
msgid "Run as a wayland compositor"
msgstr ""
#: ../src/core/main.c:220
msgid "Run as a full display server, rather than nested"
msgstr ""
#: ../src/core/mutter.c:39
#, c-format #, c-format
#| msgid ""
#| "mutter %s\n"
#| "Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
#| "This is free software; see the source for copying conditions.\n"
#| "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
#| "PARTICULAR PURPOSE.\n"
msgid "" msgid ""
"mutter %s\n" "mutter %s\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., and others\n" "Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"This is free software; see the source for copying conditions.\n" "This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A " "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
"PARTICULAR PURPOSE.\n" "PARTICULAR PURPOSE.\n"
msgstr "" msgstr ""
"Mutero %s\n" "Mutero %s\n"
"Kopirajto © 2001-%d Havoc PENNIGTON, Red Hat, Inc., kaj aliaj\n" "Kopirajto (C) 2001-%d Havoc PENNIGTON, Red Hat, Inc., kaj aliaj\n"
"Ĉi tio estas libera programaro; rigardu la fontkodon por kondiĉoj pri " "Ĉi tio estas libera programaro; rigardu la fontkodon por pli da informoj.\n"
"kopiado.\n" "Ekzistas neniu GARANTIO; nek por NEGOCEBLO nek por ADAPTADO AL IU APARTA "
"Ekzistas NENIU garantio; nek por NEGOCEBLO nek por ADAPTADO AL IU APARTA "
"CELO.\n" "CELO.\n"
#: src/core/mutter.c:53 #: ../src/core/mutter.c:53
msgid "Print version" msgid "Print version"
msgstr "Motri version" msgstr "Motri version"
#: src/core/mutter.c:59 #: ../src/core/mutter.c:59
msgid "Mutter plugin to use" msgid "Mutter plugin to use"
msgstr "" msgstr ""
#: src/core/prefs.c:1997 #: ../src/core/prefs.c:2004
#, c-format #, c-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Laborspaco %d" msgstr "Laborspaco %d"
#: src/core/screen.c:583 #: ../src/core/screen.c:525
#, c-format #, c-format
#| msgid "" #| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace " #| "Screen %d on display \"%s\" already has a window manager; try using the --"
#| "option to replace the current window manager." #| "replace option to replace the current window manager.\n"
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display \"%s\" already has a window manager; try using the --replace option "
"replace the current window manager." "to replace the current window manager."
msgstr "" msgstr ""
"Ekrano “%s” jam havas fenestroadministrilon; provu uzi la opcion --replace " "Ekrano \"%s\" jam havas fenestroadministrilon; provu uzi opcion --replace por "
"por anstataŭigi la nunan fenestroadministrilon." "anstataŭigi la nunan fenestroadministrilon."
#: src/core/screen.c:668 #: ../src/core/screen.c:607
#, fuzzy, c-format #, c-format
#| msgid "Screen %d on display '%s' is invalid\n" msgid "Screen %d on display '%s' is invalid\n"
msgid "Screen %d on display “%s” is invalid\n" msgstr "Ekrano %d en vidigilo '%s' estas nevalida\n"
msgstr "Ekrano %d en vidigilo “%s” estas nevalida\n"
#: src/core/util.c:120 #: ../src/core/util.c:118
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutero estis kompilita sen subteno por eksplicita reĝimo\n" msgstr "Mutero estis kompilita sen subteno por eksplicita reĝimo\n"
#: src/wayland/meta-wayland-tablet-pad.c:563 #: ../src/x11/session.c:1815
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Reĝim-ŝaltilo: Reĝimo %d"
#: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support save current setup and will have to be " "These windows do not support &quot;save current setup&quot; and will have to "
"restarted manually next time you log in." "be restarted manually next time you log in."
msgstr "" msgstr ""
#: src/x11/window-props.c:559 #: ../src/x11/window-props.c:549
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (ĉe %s)" msgstr "%s (ĉe %s)"

191
po/es.po
View File

@@ -7,14 +7,15 @@
# Pablo Gonzalo del Campo <pablodc@bigfoot.com>,2002,2003. # Pablo Gonzalo del Campo <pablodc@bigfoot.com>,2002,2003.
# Francisco Javier F. Serrador <serrador@cvs.gnome.org>, 2004, 2005, 2006. # Francisco Javier F. Serrador <serrador@cvs.gnome.org>, 2004, 2005, 2006.
# Jorge González <jorgegonz@svn.gnome.org>, 2007, 2008, 2009, 2010, 2011. # Jorge González <jorgegonz@svn.gnome.org>, 2007, 2008, 2009, 2010, 2011.
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018. # Daniel Mustieles <daniel.mustieles@gmail.com>, 2011, 2012, 2013, 2014, 2015, 2016, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter.master\n" "Project-Id-Version: mutter.master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-07 18:39+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-22 12:34+0100\n" "POT-Creation-Date: 2017-11-17 16:03+0000\n"
"PO-Revision-Date: 2017-12-14 13:02+0100\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n" "Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: es <gnome-es-list@gnome.org>\n" "Language-Team: es <gnome-es-list@gnome.org>\n"
"Language: es\n" "Language: es\n"
@@ -49,114 +50,130 @@ msgid "Move window to last workspace"
msgstr "Mover la ventana a la última área de trabajo" msgstr "Mover la ventana a la última área de trabajo"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Mover la ventana un área de trabajo a la izquierda"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Mover la ventana un área de trabajo a la derecha"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Subir la ventana un área de trabajo" msgstr "Subir la ventana un área de trabajo"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Bajar la ventana un área de trabajo" msgstr "Bajar la ventana un área de trabajo"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Mover la ventana una pantalla a la izquierda" msgstr "Mover la ventana una pantalla a la izquierda"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Mover la ventana una pantalla a la derecha" msgstr "Mover la ventana una pantalla a la derecha"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Subir la ventana una pantalla" msgstr "Subir la ventana una pantalla"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Bajar la ventana una pantalla" msgstr "Bajar la ventana una pantalla"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Cambiar entre aplicaciones" msgstr "Cambiar entre aplicaciones"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Cambiar a la aplicación anterior" msgstr "Cambiar a la aplicación anterior"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Cambiar entre ventanas" msgstr "Cambiar entre ventanas"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Cambiar a la ventana anterior" msgstr "Cambiar a la ventana anterior"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Cambiar entre ventanas de una aplicación" msgstr "Cambiar entre ventanas de una aplicación"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Cambiar a la ventana anterior de una aplicación" msgstr "Cambiar a la ventana anterior de una aplicación"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Cambiar entre controles del sistema" msgstr "Cambiar entre controles del sistema"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Cambiar al control del sistema anterior" msgstr "Cambiar al control del sistema anterior"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Cambiar entre ventanas directamente" msgstr "Cambiar entre ventanas directamente"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Cambiar directamente a la ventana anterior" msgstr "Cambiar directamente a la ventana anterior"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Cambiar entre ventanas de una aplicación directamente" msgstr "Cambiar entre ventanas de una aplicación directamente"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Cambiar directamente a la ventana anterior de una aplicación" msgstr "Cambiar directamente a la ventana anterior de una aplicación"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Cambiar entre controles del sistema directamente" msgstr "Cambiar entre controles del sistema directamente"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Cambiar directamente al control del sistema anterior" msgstr "Cambiar directamente al control del sistema anterior"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Ocultar todas las ventanas normales" msgstr "Ocultar todas las ventanas normales"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Cambiar al área de trabajo 1" msgstr "Cambiar al área de trabajo 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Cambiar al área de trabajo 2" msgstr "Cambiar al área de trabajo 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Cambiar al área de trabajo 3" msgstr "Cambiar al área de trabajo 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Cambiar al área de trabajo 4" msgstr "Cambiar al área de trabajo 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Cambiar a la útima área de trabajo" msgstr "Cambiar a la útima área de trabajo"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Mover al área de trabajo de la izquierda"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Mover al área de trabajo de la derecha"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Mover al área de trabajo de la arriba" msgstr "Mover al área de trabajo de la arriba"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Mover al área de trabajo de abajo" msgstr "Mover al área de trabajo de abajo"
@@ -201,50 +218,54 @@ msgid "Restore window"
msgstr "Restaurar la ventana" msgstr "Restaurar la ventana"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Cambiar el estado de enrollado"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Cerrar la ventana" msgstr "Cerrar la ventana"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ocultar la ventana" msgstr "Ocultar la ventana"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Mover la ventana" msgstr "Mover la ventana"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Redimensionar la ventana" msgstr "Redimensionar la ventana"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Conmutar la ventana en todas las áreas de trabajo o sólo en una" msgstr "Conmutar la ventana en todas las áreas de trabajo o sólo en una"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Elevar la ventana si está cubierta, de lo contrario, bajarla" msgstr "Elevar la ventana si está cubierta, de lo contrario, bajarla"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Elevar la ventana sobre las otras ventanas" msgstr "Elevar la ventana sobre las otras ventanas"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Bajar la ventana por debajo de otras ventanas" msgstr "Bajar la ventana por debajo de otras ventanas"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximizar la ventana verticalmente" msgstr "Maximizar la ventana verticalmente"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximizar la ventana horizontalmente" msgstr "Maximizar la ventana horizontalmente"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Ver división a la izquierda" msgstr "Ver división a la izquierda"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Ver división a la derecha" msgstr "Ver división a la derecha"
@@ -397,6 +418,20 @@ msgid "Enable experimental features"
msgstr "Activar las características experimentales" msgstr "Activar las características experimentales"
#: data/org.gnome.mutter.gschema.xml.in:108 #: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “monitor-config-"
#| "manager” — use the new monitor configuration system, aimed to replace the "
#| "old one. This enables a higher level configuration API to be used by "
#| "configuration applications, as well as the ability to configure per "
#| "logical monitor scale. • “scale-monitor-framebuffer” — makes mutter "
#| "default to layout logical monitors in a logical pixel coordinate space, "
#| "while scaling monitor framebuffers instead of window content, to manage "
#| "HiDPI monitors. Does not require a restart. Also enabling “monitor-config-"
#| "manager” is required for this feature to be enabled."
msgid "" msgid ""
"To enable experimental features, add the feature keyword to the list. " "To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
@@ -491,37 +526,6 @@ msgstr "Cambiar al VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Volver a activar los atajos" msgstr "Volver a activar los atajos"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Permitir capturas con Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Aplicaciones de Xwayland que pueden capturar el teclado"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
@@ -563,7 +567,7 @@ msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:479
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -580,46 +584,42 @@ msgstr "Evento de campana"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Ocurrió un error al abrir la pantalla de X Window System «%s»\n" msgstr "Ocurrió un error al abrir la pantalla de X Window System «%s»\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Desactivar conexión al gestor de sesión" msgstr "Desactivar conexión al gestor de sesión"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Reemplazar el gestor de ventanas en ejecución" msgstr "Reemplazar el gestor de ventanas en ejecución"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Especificar el ID se gestión de sesión" msgstr "Especificar el ID se gestión de sesión"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Pantalla X que usar" msgstr "Pantalla X que usar"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicializar sesión desde el archivo de salvaguarda" msgstr "Inicializar sesión desde el archivo de salvaguarda"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Hacer que las llamadas a las X sean síncronas" msgstr "Hacer que las llamadas a las X sean síncronas"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Ejecutar como compositor Wayland" msgstr "Ejecutar como compositor Wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Ejecutar como compositor anidado" msgstr "Ejecutar como compositor anidado"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Ejecutar como servidor completo, en lugar de anidado" msgstr "Ejecutar como servidor completo, en lugar de anidado"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Ejecutar con «backend» de X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -698,7 +698,7 @@ msgstr "Mutter fue compilado sin soporte para modo prolijo\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Cambiar modo: modo %d" msgstr "Cambiar modo: modo %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -711,21 +711,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (on %s)" msgstr "%s (on %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Mover la ventana un área de trabajo a la izquierda"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Mover la ventana un área de trabajo a la derecha"
#~ msgid "Move to workspace left"
#~ msgstr "Mover al área de trabajo de la izquierda"
#~ msgid "Move to workspace right"
#~ msgstr "Mover al área de trabajo de la derecha"
#~ msgid "Toggle shaded state"
#~ msgstr "Cambiar el estado de enrollado"
#~ msgid "background texture could not be created from file" #~ msgid "background texture could not be created from file"
#~ msgstr "no se pudo crear la textura de fondo a partir de archivo" #~ msgstr "no se pudo crear la textura de fondo a partir de archivo"

2155
po/et.po

File diff suppressed because it is too large Load Diff

211
po/fr.po
View File

@@ -1,5 +1,5 @@
# French translation of mutter. # French translation of mutter.
# Copyright (C) 2002-2018 Free Software Foundation, Inc. # Copyright (C) 2002-2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the metacity package. # This file is distributed under the same license as the metacity package.
# #
# Christophe Fergeau <teuf@users.sourceforge.net>, 2002. # Christophe Fergeau <teuf@users.sourceforge.net>, 2002.
@@ -11,7 +11,7 @@
# Cyprien Le Pannérer <cyplp@free.fr>, 2006. # Cyprien Le Pannérer <cyplp@free.fr>, 2006.
# Robert-André Mauchin <zebob.m@gmail.com>, 2007. # Robert-André Mauchin <zebob.m@gmail.com>, 2007.
# Stéphane Raimbault <stephane.raimbault@gmail.com>, 2007. # Stéphane Raimbault <stephane.raimbault@gmail.com>, 2007.
# Claude Paroz <claude@2xlibre.net>, 2008-2018. # Claude Paroz <claude@2xlibre.net>, 2008-2017.
# Bruno Brouard <annoa.b@gmail.com>, 2011-12. # Bruno Brouard <annoa.b@gmail.com>, 2011-12.
# Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2017. # Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2017.
# Charles Monzat <superboa@hotmail.fr>, 2016, 2017. # Charles Monzat <superboa@hotmail.fr>, 2016, 2017.
@@ -19,16 +19,18 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-03 11:18+0100\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"Last-Translator: Claude Paroz <claude@2xlibre.net>\n" "PO-Revision-Date: 2017-11-10 23:07+0100\n"
"Last-Translator: Charles Monzat <superboa@hotmail.fr>\n"
"Language-Team: français <gnomefr@traduc.org>\n" "Language-Team: français <gnomefr@traduc.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Gtranslator 2.91.7\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -55,114 +57,130 @@ msgid "Move window to last workspace"
msgstr "Déplacer la fenêtre vers le dernier espace de travail" msgstr "Déplacer la fenêtre vers le dernier espace de travail"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Déplacer la fenêtre dun espace de travail vers la gauche"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Déplacer la fenêtre dun espace de travail vers la droite"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Déplacer la fenêtre dun espace de travail vers le haut" msgstr "Déplacer la fenêtre dun espace de travail vers le haut"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Déplacer la fenêtre dun espace de travail vers le bas" msgstr "Déplacer la fenêtre dun espace de travail vers le bas"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Déplacer la fenêtre dun écran vers la gauche" msgstr "Déplacer la fenêtre dun écran vers la gauche"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Déplacer la fenêtre dun écran vers la droite" msgstr "Déplacer la fenêtre dun écran vers la droite"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Déplacer la fenêtre dun écran vers le haut" msgstr "Déplacer la fenêtre dun écran vers le haut"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Déplacer la fenêtre dun écran vers le bas" msgstr "Déplacer la fenêtre dun écran vers le bas"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Changer dapplication" msgstr "Changer dapplication"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Passer à lapplication précédente" msgstr "Passer à lapplication précédente"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Changer de fenêtre" msgstr "Changer de fenêtre"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Passer à la fenêtre précédente" msgstr "Passer à la fenêtre précédente"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Changer de fenêtre dune application" msgstr "Changer de fenêtre dune application"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Passer à la fenêtre précédente dune application" msgstr "Passer à la fenêtre précédente dune application"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Changer les contrôles système" msgstr "Changer les contrôles système"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Passer au contrôle système précédent" msgstr "Passer au contrôle système précédent"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Changer de fenêtre directement" msgstr "Changer de fenêtre directement"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Passer directement à la fenêtre précédente" msgstr "Passer directement à la fenêtre précédente"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Changer de fenêtre dune application directement" msgstr "Changer de fenêtre dune application directement"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Passer directement à la fenêtre précédente dune application" msgstr "Passer directement à la fenêtre précédente dune application"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Changer les contrôles système directement" msgstr "Changer les contrôles système directement"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Passer directement au contrôle système précédent" msgstr "Passer directement au contrôle système précédent"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Masquer toutes les fenêtres normales" msgstr "Masquer toutes les fenêtres normales"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Passer à lespace de travail 1" msgstr "Passer à lespace de travail 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Passer à lespace de travail 2" msgstr "Passer à lespace de travail 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Passer à lespace de travail 3" msgstr "Passer à lespace de travail 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Passer à lespace de travail 4" msgstr "Passer à lespace de travail 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Passer au dernier espace de travail" msgstr "Passer au dernier espace de travail"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Déplacer vers lespace de travail de gauche"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Déplacer vers lespace de travail de droite"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Déplacer vers lespace de travail du dessus" msgstr "Déplacer vers lespace de travail du dessus"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Déplacer vers lespace de travail du dessous" msgstr "Déplacer vers lespace de travail du dessous"
@@ -207,51 +225,55 @@ msgid "Restore window"
msgstr "Restaurer la fenêtre" msgstr "Restaurer la fenêtre"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Basculer létat de repli"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Fermer la fenêtre" msgstr "Fermer la fenêtre"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Masquer la fenêtre" msgstr "Masquer la fenêtre"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Déplacer la fenêtre" msgstr "Déplacer la fenêtre"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Redimensionner la fenêtre" msgstr "Redimensionner la fenêtre"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Placer la fenêtre sur tous les espaces de travail, ou sur un seul" msgstr "Placer la fenêtre sur tous les espaces de travail, ou sur un seul"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "" msgstr ""
"Mettre la fenêtre au premier plan si elle est cachée, sinon à larrière-plan" "Mettre la fenêtre au premier plan si elle est cachée, sinon à larrière-plan"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Mettre la fenêtre au premier plan" msgstr "Mettre la fenêtre au premier plan"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Mettre la fenêtre sous les autres fenêtres" msgstr "Mettre la fenêtre sous les autres fenêtres"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximiser la fenêtre verticalement" msgstr "Maximiser la fenêtre verticalement"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximiser la fenêtre horizontalement" msgstr "Maximiser la fenêtre horizontalement"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Vue divisée sur la gauche" msgstr "Vue divisée sur la gauche"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Vue divisée sur la droite" msgstr "Vue divisée sur la droite"
@@ -498,56 +520,10 @@ msgstr "Passer à lémulateur de terminal 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Réactiver les raccourcis" msgstr "Réactiver les raccourcis"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Autoriser les captures clavier avec Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Permettre aux captures de clavier émises par les applications X11 tournant "
"dans Xwayland dêtre prises en compte. Pour que ceci puisse arriver, le "
"client doit aussi soit envoyer un ClientMessage X11 spécifique à la "
"fenêtre racine, soit figurer dans les applications autorisées dans la clé "
 xwayland-access-rules »."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Applications Xwayland autorisées à émettre des captures clavier"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Liste de noms de ressources ou de classes de ressources de fenêtres X11 "
"autorisées ou non à émettre des captures clavier sous Xwayland. Le nom ou "
"la classe de ressource dune fenêtre X11 donnée peut être obtenue à laide "
"de la commande « xprop WM_CLASS ». Les caractères joker « * » et « ? » sont "
"acceptées dans les valeurs. Les valeurs commençant pas « ! » sont en liste "
"noire, qui a priorité sur la liste blanche, pour révoquer les applications "
"de la liste système par défaut. Celle-ci contient les applications suivantes : "
"« @XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@ ». Les utilisateurs peuvent casser une "
"capture existante en utilisant le raccourci clavier spécifique défini par "
"la combinaison de touches « restore-shortcuts »."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Changement de mode (groupe %d)" msgstr "Changement de mode (groupe %d)"
@@ -555,37 +531,37 @@ msgstr "Changement de mode (groupe %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Changer de moniteur" msgstr "Changer de moniteur"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Afficher laide à lécran" msgstr "Afficher laide à lécran"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Affichage intégré" msgstr "Affichage intégré"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Inconnu" msgstr "Inconnu"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Affichage inconnu" msgstr "Affichage inconnu"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -602,46 +578,42 @@ msgstr "Évènement sonore"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Impossible douvrir laffichage « %s » du système X Window\n" msgstr "Impossible douvrir laffichage « %s » du système X Window\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Désactiver la connexion au gestionnaire de sessions" msgstr "Désactiver la connexion au gestionnaire de sessions"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Remplacer le gestionnaire de fenêtres en cours de fonctionnement" msgstr "Remplacer le gestionnaire de fenêtres en cours de fonctionnement"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Indiquer lID de gestion de sessions" msgstr "Indiquer lID de gestion de sessions"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Affichage X à utiliser" msgstr "Affichage X à utiliser"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Initialiser la session depuis le fichier de sauvegarde" msgstr "Initialiser la session depuis le fichier de sauvegarde"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Rendre synchrones les appels à X" msgstr "Rendre synchrones les appels à X"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Lancer comme un compositeur wayland" msgstr "Lancer comme un compositeur wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Lancer comme un compositeur imbriqué" msgstr "Lancer comme un compositeur imbriqué"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Lancer comme un serveur daffichage complet, plutôt quimbriqué" msgstr "Lancer comme un serveur daffichage complet, plutôt quimbriqué"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Lancer avec le moteur X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -720,7 +692,7 @@ msgstr "Mutter a été compilé sans la prise en charge du mode bavard\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Changement de mode : mode %d" msgstr "Changement de mode : mode %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -733,18 +705,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (sur %s)" msgstr "%s (sur %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Déplacer la fenêtre dun espace de travail vers la gauche"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Déplacer la fenêtre dun espace de travail vers la droite"
#~ msgid "Move to workspace left"
#~ msgstr "Déplacer vers lespace de travail de gauche"
#~ msgid "Move to workspace right"
#~ msgstr "Déplacer vers lespace de travail de droite"
#~ msgid "Toggle shaded state"
#~ msgstr "Basculer létat de repli"

264
po/fur.po
View File

@@ -6,16 +6,17 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-06 22:43+0100\n" "POT-Creation-Date: 2017-07-22 09:45+0000\n"
"PO-Revision-Date: 2017-07-22 22:53+0200\n"
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n" "Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
"Language-Team: Friulian <fur@li.org>\n" "Language-Team: Friulian <fur@li.org>\n"
"Language: fur\n" "Language: fur\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.3\n" "X-Generator: Poedit 2.0.2\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -42,133 +43,145 @@ msgid "Move window to last workspace"
msgstr "Sposte barcon tal ultin spazi di lavôr" msgstr "Sposte barcon tal ultin spazi di lavôr"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Sposte barcon tal spazi di lavôr a çampe"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Sposte barcon tal spazi di lavôr a drete"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Sposte barcon tal spazi di lavôr parsore" msgstr "Sposte barcon tal spazi di lavôr parsore"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Sposte barcon tal spazi di lavôr sot" msgstr "Sposte barcon tal spazi di lavôr sot"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Sposte barcon tal visôr a çampe" msgstr "Sposte barcon tal visôr a çampe"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Sposte barcon tal visôr a drete" msgstr "Sposte barcon tal visôr a drete"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Sposte barcon tal visôr parsore" msgstr "Sposte barcon tal visôr parsore"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Sposte barcon tal visôr sot" msgstr "Sposte barcon tal visôr sot"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Passâ di une aplicazion in chê altre" msgstr "Passâ di une aplicazion in chê altre"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Passe ae aplicazion prime" msgstr "Passe ae aplicazion prime"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Passâ di un barcon in chel altri" msgstr "Passâ di un barcon in chel altri"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Passe al barcon prime" msgstr "Passe al barcon prime"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Passâ di un barcon in chel altri di une aplicazion" msgstr "Passâ di un barcon in chel altri di une aplicazion"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Passe al barcon prime di une aplicazion" msgstr "Passe al barcon prime di une aplicazion"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Passâ di un control di sisteme in chel altri" msgstr "Passâ di un control di sisteme in chel altri"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Passe al control di sisteme precedent" msgstr "Passe al control di sisteme precedent"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Passe dret ai barcons" msgstr "Passe dret ai barcons"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Passe dret al barcon precedent" msgstr "Passe dret al barcon precedent"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Passe dret a un barcon di une aplicazion" msgstr "Passe dret a un barcon di une aplicazion"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Passe dret al barcon precedent di une aplicazion" msgstr "Passe dret al barcon precedent di une aplicazion"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Passe dret ai controi dal sisteme" msgstr "Passe dret ai controi dal sisteme"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Passe dret al control precedent dal sisteme" msgstr "Passe dret al control precedent dal sisteme"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Plate ducj i barcons normâi" msgstr "Plate ducj i barcons normâi"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Passe al spazi di lavôr 1" msgstr "Passe al spazi di lavôr 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Passe al spazi di lavôr 2" msgstr "Passe al spazi di lavôr 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Passe al spazi di lavôr 3" msgstr "Passe al spazi di lavôr 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Passe al spazi di lavôr 4" msgstr "Passe al spazi di lavôr 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Passe al ultin spazi di lavôr" msgstr "Passe al ultin spazi di lavôr"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Sposte il spazi di lavôr a çampe"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Sposte il spazi di lavôr a drete"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Sposte il spazi di lavôr parsore" msgstr "Sposte il spazi di lavôr parsore"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Sposte il spazi di lavôr sot" msgstr "Sposte il spazi di lavôr sot"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sisteme" msgstr "Sisteme"
#: data/50-mutter-system.xml:8 #: data/50-mutter-system.xml:8
msgid "Show the run command prompt" msgid "Show the run command prompt"
msgstr "Mostre la richieste eseguìs comant" msgstr "Mostre la richieste \"eseguìs comant\""
#: data/50-mutter-system.xml:10 #: data/50-mutter-system.xml:10
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Mostre la panoramiche ativitâts" msgstr "Mostre la panoramiche ativitâts"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Ripristine lis scurtis di tastiere"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Barcons" msgstr "Barcons"
@@ -194,50 +207,54 @@ msgid "Restore window"
msgstr "Ripristine barcon" msgstr "Ripristine barcon"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Ative/Disative stât inrodolât"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Siere il barcon" msgstr "Siere il barcon"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Plate il barcon" msgstr "Plate il barcon"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Sposte il barcon" msgstr "Sposte il barcon"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ridimensione barcon" msgstr "Ridimensione barcon"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Ative/Disative barcon su ducj i spazis di lavôr o nome un" msgstr "Ative/Disative barcon su ducj i spazis di lavôr o nome un"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Tire sù il barcon se al è cuviert, se no sbassilu" msgstr "Tire sù il barcon se al è cuviert, se no sbassilu"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Met il barcon parsore di chei altris" msgstr "Met il barcon parsore di chei altris"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Bute il barcon sot di chei altris" msgstr "Bute il barcon sot di chei altris"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Slargje il barcon par verticâl" msgstr "Slargje il barcon par verticâl"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Slargje il barcon par orizontâl" msgstr "Slargje il barcon par orizontâl"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Slargje dividint ae çampe" msgstr "Slargje dividint ae çampe"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Slargje dividint ae drete" msgstr "Slargje dividint ae drete"
@@ -388,13 +405,14 @@ msgid ""
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
"feature. Any experimental feature is not required to still be available, or " "feature. Any experimental feature is not required to still be available, or "
"configurable. Dont expect adding anything in this setting to be future " "configurable. Dont expect adding anything in this setting to be future "
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes " "proof. Currently possible keywords: • “monitor-config-manager” — use the new "
"mutter default to layout logical monitors in a logical pixel coordinate " "monitor configuration system, aimed to replace the old one. This enables a "
"space, while scaling monitor framebuffers instead of window content, to " "higher level configuration API to be used by configuration applications, as "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — " "well as the ability to configure per logical monitor scale. • “scale-monitor-"
"enables remote desktop support. To support remote desktop with screen " "framebuffer” — makes mutter default to layout logical monitors in a logical "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables " "pixel coordinate space, while scaling monitor framebuffers instead of window "
"screen cast support." "content, to manage HiDPI monitors. Does not require a restart. Also enabling "
"“monitor-config-manager” is required for this feature to be enabled."
msgstr "" msgstr ""
"Par abilitâ lis funzionalitâts sperimentâls, zonte la peraule clâf de " "Par abilitâ lis funzionalitâts sperimentâls, zonte la peraule clâf de "
"funzionalitât ae liste. Il fat che la funzionalitât e vedi bisugne di tornâ " "funzionalitât ae liste. Il fat che la funzionalitât e vedi bisugne di tornâ "
@@ -402,28 +420,30 @@ msgstr ""
"funzionalitât sperimentâl no je necessarie che e sedi disponibile o " "funzionalitât sperimentâl no je necessarie che e sedi disponibile o "
"configurabile. No sta spietâti di zontâ alc in cheste impostazion e pensâ " "configurabile. No sta spietâti di zontâ alc in cheste impostazion e pensâ "
"che e duredi tal timp. Atualmentri lis peraulis clâf pussibilis a son: • " "che e duredi tal timp. Atualmentri lis peraulis clâf pussibilis a son: • "
"“scale-monitor-framebuffer” — al rint come predefinît par mutter, la " "“monitor-config-manager” — al dopre il gnûf sisteme di configurazion dal "
"disposizion logjiche dai visôrs intun spazi logjic di coordenadis di pixel, " "visôr, fat par sostituî chel vecjo. Chest al abilite une API di nivel "
"in plui si fâs il scjalâ dai framebuffer dai visôrs invezit che il contignût " "superiôr che e pues jessi doprade di aplicazions di configurazion, cussì "
"dal barcon; dut chest par gjestî i visôrs HiDPI. Nol covente tornâ a inviâ. " "come la capacitât di configurâ par scjale di monitor logjic. • “scale-"
"• “remote-desktop” — al abilite il supuart pal scritori rimot. Par podê " "monitor-framebuffer” — al rint come predefinît par mutter la disposizion dai "
"supuartâ il scritori rimot cun la condivision dal schermi si scugne abilitâ " "visôrs logjics intun spazi logjic di coordenadis dai pixel, intant i "
"ancje “screen-cast”. • “screen-cast” — al abilite il supuart pe trasmission " "framebuffer dai visôrs par scjalâ, invezit dal contignût dal barcon, a "
"dal schermi." "gjestissin i visôrs HiDPI. Nol covente tornâ a inviâ. In plui al è necessari "
"abilitâ “monitor-config-manager” par fâ in mût che cheste funzionalitât e "
"sedi abilitade."
#: data/org.gnome.mutter.gschema.xml.in:145 #: data/org.gnome.mutter.gschema.xml.in:151
msgid "Select window from tab popup" msgid "Select window from tab popup"
msgstr "Selezione barcon dal tab popup" msgstr "Selezione barcon dal tab popup"
#: data/org.gnome.mutter.gschema.xml.in:150 #: data/org.gnome.mutter.gschema.xml.in:156
msgid "Cancel tab popup" msgid "Cancel tab popup"
msgstr "Anule tab popup" msgstr "Anule tab popup"
#: data/org.gnome.mutter.gschema.xml.in:155 #: data/org.gnome.mutter.gschema.xml.in:161
msgid "Switch monitor configurations" msgid "Switch monitor configurations"
msgstr "Cambie configurazions visôr" msgstr "Cambie configurazions visôr"
#: data/org.gnome.mutter.gschema.xml.in:160 #: data/org.gnome.mutter.gschema.xml.in:166
msgid "Rotates the built-in monitor configuration" msgid "Rotates the built-in monitor configuration"
msgstr "Al volte la configurazion dal visôr integrât" msgstr "Al volte la configurazion dal visôr integrât"
@@ -475,61 +495,10 @@ msgstr "Passe al VT 11"
msgid "Switch to VT 12" msgid "Switch to VT 12"
msgstr "Passe al VT 12" msgstr "Passe al VT 12"
#: data/org.gnome.mutter.wayland.gschema.xml.in:54
msgid "Re-enable shortcuts"
msgstr "Torne abilite lis scurtis"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Permet cjapadis di control cun Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Permet che il cjapâ il control de tastiere emetût di aplicazions X11 che a "
"zirin in Xwayland, di jessi tignûts in considerazion. Par une cjapade di "
"control di X11, par che e sedi tignude in considerazion sot Wayland, il "
"client al scugne ancje inviâ un specific messaç (X11 ClientMessage) al "
"barcon lidrîs o jessi tra lis aplicazions metudis te liste blancje inte clâf "
"“xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Aplicazions Xwayland che a puedin cjapâ la tastiere"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Liste di nons di risorsis o classis di risorsis di barcons X11 che a puedin "
"o no puedin cjapâ i segnâi di tastiere X11 sot di Xwayland. Il non de "
"risorse o la classe de risorse di un dât barcon X11 al pues jessi otignût "
"doprant il comant “xprop WM_CLASS”. I caratars “*” e “?” tai valôrs a son "
"supuartâts. I valôrs che a tachin cun “!” a son metûts te liste nere, che e "
"à precedence su la liste blancje, par revocâ lis aplicazions de liste di "
"sisteme predefinide. La liste di sisteme predefinide e inclût lis "
"aplicazions chi daurman: “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” I utents a "
"puedin interompi il control cjapât doprant la specifiche scurte di tastiere "
"definide de clâf di associazion tast “restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2118
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Cambie mût (Grup %d)" msgstr "Cambie mût (Grup %d)"
@@ -537,37 +506,37 @@ msgstr "Cambie mût (Grup %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2141
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Cambie visôr" msgstr "Cambie visôr"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2143
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Mostre jutori a schermi" msgstr "Mostre jutori a schermi"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:925
msgid "Built-in display" msgid "Built-in display"
msgstr "Display integrât" msgstr "Display integrât"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:948
msgid "Unknown" msgid "Unknown"
msgstr "No cognossût" msgstr "No cognossût"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:950
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Display no cognossût" msgstr "Display no cognossût"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:958
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -584,46 +553,42 @@ msgstr "Event cjampane"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Impussibil vierzi il display “%s” di X Window System\n" msgstr "Impussibil vierzi il display “%s” di X Window System\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Disabilite la conession al gjestôr de session" msgstr "Disabilite la conession al gjestôr de session"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Rimplace il window manager in vore" msgstr "Rimplace il window manager in vore"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Specifiche il ID di gjestion session" msgstr "Specifiche il ID di gjestion session"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Display X di doprâ" msgstr "Display X di doprâ"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inizialize session da file salvât" msgstr "Inizialize session da file salvât"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Fâs lis clamadis X sincronis" msgstr "Fâs lis clamadis X sincronis"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Eseguìs come compositor wayland" msgstr "Eseguìs come compositor wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Eseguìs come compositor nidiât" msgstr "Eseguìs come compositor nidiât"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Eseguìs come servidôr display complet, invezit che nidiât" msgstr "Eseguìs come servidôr display complet, invezit che nidiât"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Eseguìs cul backend X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -678,7 +643,7 @@ msgstr "Plugin Mutter di doprâ"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Spazi di lavôr %d" msgstr "Spazi di lavôr %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -687,7 +652,7 @@ msgstr ""
"Il display “%s” al à za un window manager; prove dopre la opzion --replace " "Il display “%s” al à za un window manager; prove dopre la opzion --replace "
"par rimplaçâ chel atuâl." "par rimplaçâ chel atuâl."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Schermi %d su display “%s” no valit\n" msgstr "Schermi %d su display “%s” no valit\n"
@@ -701,7 +666,7 @@ msgstr "Mutter al è stât compilât cence supuart pe modalitât fetose\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Cambie mût: mût %d" msgstr "Cambie mût: mût %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -713,18 +678,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (su %s)" msgstr "%s (su %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Sposte barcon tal spazi di lavôr a çampe"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Sposte barcon tal spazi di lavôr a drete"
#~ msgid "Move to workspace left"
#~ msgstr "Sposte il spazi di lavôr a çampe"
#~ msgid "Move to workspace right"
#~ msgstr "Sposte il spazi di lavôr a drete"
#~ msgid "Toggle shaded state"
#~ msgstr "Ative/Disative stât inrodolât"

335
po/gd.po
View File

@@ -1,13 +1,14 @@
# Scottish Gaelic translation for mutter. # Scottish Gaelic translation for mutter.
# Copyright (C) 2016 mutter's COPYRIGHT HOLDER # Copyright (C) 2016 mutter's COPYRIGHT HOLDER
# This file is distributed under the same license as the mutter package. # This file is distributed under the same license as the mutter package.
# GunChleoc <fios@foramnagaidhlig.net>, 2016, 2017, 2018. # GunChleoc <fios@foramnagaidhlig.net>, 2016, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutte"
"POT-Creation-Date: 2018-01-27 08:02+0000\n" "r&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-01 10:45+0100\n" "POT-Creation-Date: 2017-03-02 11:37+0000\n"
"PO-Revision-Date: 2017-03-07 11:59+0100\n"
"Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n" "Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n"
"Language-Team: Fòram na Gàidhlig\n" "Language-Team: Fòram na Gàidhlig\n"
"Language: gd\n" "Language: gd\n"
@@ -17,7 +18,6 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : " "Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : "
"(n > 2 && n < 20) ? 2 : 3;\n" "(n > 2 && n < 20) ? 2 : 3;\n"
"X-Generator: Virtaal 0.7.1\n" "X-Generator: Virtaal 0.7.1\n"
"(n > 2 && n < 20) ? 2: 3;\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
@@ -166,13 +166,13 @@ msgstr "Gluais dhan rum-obrach air an taobh deas"
#: data/50-mutter-navigation.xml:135 #: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Gluais dhan rum-obrach aig a bharr" msgstr "Gluais dhan rum-obrach aig a' bharr"
#: data/50-mutter-navigation.xml:138 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Gluais dhan rum-obrach aig a bhonn" msgstr "Gluais dhan rum-obrach aig a' bhonn"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "An siostam" msgstr "An siostam"
@@ -184,10 +184,6 @@ msgstr ""
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Foir-shealladh air na gnìomhachdan" msgstr "Foir-shealladh air na gnìomhachdan"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Aisig ath-ghoiridean a mheur-chlàir"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Uinneagan" msgstr "Uinneagan"
@@ -254,7 +250,7 @@ msgstr "Làn-mheudaich an uinneag gu h-ingearach"
#: data/50-mutter-windows.xml:39 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Làn-mheudaich an uinneag air a chòmhnard" msgstr "Làn-mheudaich an uinneag air a' chòmhnard"
#: data/50-mutter-windows.xml:43 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
@@ -266,135 +262,284 @@ msgstr "Sgoilt an t-sealladh air an taobh deas"
#: data/mutter.desktop.in:4 #: data/mutter.desktop.in:4
msgid "Mutter" msgid "Mutter"
msgstr "Mutter" msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:155 #: data/org.gnome.mutter.gschema.xml.in:7
#| msgid "Switch monitor" msgid "Modifier to use for extended window management operations"
msgid "Switch monitor configurations" msgstr ""
msgstr "Gearr leum eadar rèiteachaidhean monatair"
#. TRANSLATORS: This string refers to a button that switches between #: data/org.gnome.mutter.gschema.xml.in:8
#. * different modes. msgid ""
#. "This key will initiate the \"overlay\", which is a combination window "
#: src/backends/meta-input-settings.c:2167 "overview and application launching system. The default is intended to be the "
#, c-format "\"Windows key\" on PC hardware. It's expected that this binding either the "
#| msgid "Mode Switch: Mode %d" "default or set to the empty string."
msgid "Mode Switch (Group %d)" msgstr ""
msgstr "Suidse nam modh (Buidheann %d)"
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:21
msgid ""
"When true, instead of having independent titlebars, modal dialogs appear "
"attached to the titlebar of the parent window and are moved together with "
"the parent window."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:30
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:31
msgid ""
"If enabled, dropping windows on vertical screen edges maximizes them "
"vertically and resizes them horizontally to cover half of the available "
"area. Dropping windows on the top screen edge maximizes them completely."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:51
msgid ""
"Determines whether workspace switching should happen for windows on all "
"monitors or only for windows on the primary monitor."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:60
msgid ""
"Determines whether the use of popup and highlight frame should be disabled "
"for window cycling."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:68
msgid "Delay focus changes until the pointer stops moving"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:69
msgid ""
"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
"the focus will not be changed immediately when entering a window, but only "
"after the pointer stops moving."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:90
msgid ""
"If enabled, new windows that are initially the size of the monitor "
"automatically get maximized."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:99
msgid ""
"When true, the new windows will always be put in the center of the active "
"screen of the monitor."
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr ""
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr ""
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2190 #: src/backends/meta-input-settings.c:1913
#| msgid "Switch system controls"
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Gearr leum gu monatair eile" msgstr "Gearr leum gu monatair eile"
#: src/backends/meta-input-settings.c:2192 #: src/backends/meta-input-settings.c:1915
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Seall a chobhair air an sgrìn" msgstr "Seall a' chobhair air an sgrìn"
#: src/backends/meta-monitor-manager.c:908 #: src/backends/meta-monitor-manager.c:515
msgid "Built-in display" msgid "Built-in display"
msgstr "Uidheam-taisbeanaidh na broinn" msgstr "Uidheam-taisbeanaidh 'na broinn"
#: src/backends/meta-monitor-manager.c:931 #: src/backends/meta-monitor-manager.c:538
msgid "Unknown" msgid "Unknown"
msgstr "Chan eil fhios" msgstr "Chan eil fhios"
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:540
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Uidheam-taisbeanaidh nach aithne dhuinn" msgstr "Uidheam-taisbeanaidh nach aithne dhuinn"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:941 #: src/backends/meta-monitor-manager.c:548
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:479 #: src/compositor/compositor.c:471
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display \"%s"
"\"."
msgstr "" msgstr ""
#: src/core/bell.c:194 #: src/core/bell.c:194
msgid "Bell event" msgid "Bell event"
msgstr "" msgstr ""
#: src/core/display.c:608 #: src/core/delete.c:127
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr ""
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr ""
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr ""
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr ""
#: src/core/main.c:206
msgid "X Display to use"
msgstr ""
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr ""
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr ""
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr ""
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr ""
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr ""
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
msgid "“%s” is not responding." msgid "“%s” is not responding."
msgstr "" msgstr ""
#: src/core/meta-close-dialog-default.c:149 #: src/core/delete.c:129
msgid "Application is not responding." msgid "Application is not responding."
msgstr "" msgstr ""
#: src/core/meta-close-dialog-default.c:154 #: src/core/delete.c:134
msgid "" msgid ""
"You may choose to wait a short while for it to continue or force the " "You may choose to wait a short while for it to continue or force the "
"application to quit entirely." "application to quit entirely."
msgstr "" msgstr ""
#: src/core/meta-close-dialog-default.c:161 #: src/core/delete.c:141
msgid "_Wait"
msgstr "_Fuirich"
#: src/core/delete.c:141
msgid "_Force Quit" msgid "_Force Quit"
msgstr "Sparr _fàgail air" msgstr "Sparr _fàgail air"
#: src/core/meta-close-dialog-default.c:161 #: src/core/display.c:590
msgid "_Wait" #, c-format
msgstr "_Fuirich" msgid "Failed to open X Window System display '%s'\n"
msgstr ""
#: src/core/main.c:182
msgid "Disable connection to session manager"
msgstr ""
#: src/core/main.c:188
msgid "Replace the running window manager"
msgstr ""
#: src/core/main.c:194
msgid "Specify session management ID"
msgstr ""
#: src/core/main.c:199
msgid "X Display to use"
msgstr ""
#: src/core/main.c:205
msgid "Initialize session from savefile"
msgstr ""
#: src/core/main.c:211
msgid "Make X calls synchronous"
msgstr ""
#: src/core/main.c:218
msgid "Run as a wayland compositor"
msgstr ""
#: src/core/main.c:224
msgid "Run as a nested compositor"
msgstr ""
#: src/core/main.c:232
msgid "Run as a full display server, rather than nested"
msgstr ""
#: src/core/mutter.c:39 #: src/core/mutter.c:39
#, c-format #, c-format
msgid "" msgid ""
"mutter %s\n" "mutter %s\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., and others\n" "Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"This is free software; see the source for copying conditions.\n" "This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A " "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
"PARTICULAR PURPOSE.\n" "PARTICULAR PURPOSE.\n"
@@ -413,34 +558,34 @@ msgstr ""
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Rum-obrach %d" msgstr "Rum-obrach %d"
#: src/core/screen.c:583 #: src/core/screen.c:521
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display \"%s\" already has a window manager; try using the --replace option "
"replace the current window manager." "to replace the current window manager."
msgstr "" msgstr ""
#: src/core/screen.c:668 #: src/core/screen.c:606
#, c-format #, c-format
msgid "Screen %d on display %s is invalid\n" msgid "Screen %d on display '%s' is invalid\n"
msgstr "" msgstr ""
#: src/core/util.c:120 #: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "" msgstr ""
#: src/wayland/meta-wayland-tablet-pad.c:563 #: src/wayland/meta-wayland-tablet-pad.c:595
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Suidse nam modh: Modh %d" msgstr "Suidse nam modh: Modh %d"
#: src/x11/session.c:1815 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support save current setup and will have to be " "These windows do not support &quot;save current setup&quot; and will have to "
"restarted manually next time you log in." "be restarted manually next time you log in."
msgstr "" msgstr ""
#: src/x11/window-props.c:559 #: src/x11/window-props.c:548
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (air %s)" msgstr "%s (air %s)"

228
po/gl.po
View File

@@ -9,13 +9,14 @@
# Mancomún - Centro de Referencia e Servizos de Software Libre <g11n@mancomun.org>, 2009. # Mancomún - Centro de Referencia e Servizos de Software Libre <g11n@mancomun.org>, 2009.
# Fran Diéguez <frandieguez@gnome.org>, 2009, 2010, 2011, 2012. # Fran Diéguez <frandieguez@gnome.org>, 2009, 2010, 2011, 2012.
# Leandro Regueiro <leandro.regueiro@gmail.com>, 2012. # Leandro Regueiro <leandro.regueiro@gmail.com>, 2012.
# Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015, 2016, 2017, 2018. # Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015, 2016, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: gl\n" "Project-Id-Version: gl\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"POT-Creation-Date: 2018-03-01 10:47+0000\n" "&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-03 14:18+0200\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-08-30 22:29+0200\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n" "Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: Galician\n" "Language-Team: Galician\n"
"Language: gl\n" "Language: gl\n"
@@ -51,118 +52,134 @@ msgid "Move window to last workspace"
msgstr "Mover xanela ao último espazo de traballo" msgstr "Mover xanela ao último espazo de traballo"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Mover xanela un espazo de traballo cara á esquerda"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Mover xanela un espazo de traballo cara á dereita"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Mover xanela un espazo de traballo cara a arriba" msgstr "Mover xanela un espazo de traballo cara a arriba"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Mover xanela un espazo de traballo cara a abaixo" msgstr "Mover xanela un espazo de traballo cara a abaixo"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Mover xanela un monitor á esquerda" msgstr "Mover xanela un monitor á esquerda"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Mover xanela un monitor á dereita" msgstr "Mover xanela un monitor á dereita"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Mover xanela un monitor arriba" msgstr "Mover xanela un monitor arriba"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Mover xanela un espazo de traballo abaixo" msgstr "Mover xanela un espazo de traballo abaixo"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Cambiar entre aplicativos" msgstr "Cambiar entre aplicativos"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Cambiar ao aplicativo aplicativos" msgstr "Cambiar ao aplicativo aplicativos"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Cambiar xanelas" msgstr "Cambiar xanelas"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Cambiar á xanela anterior" msgstr "Cambiar á xanela anterior"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Cambiar entre as xanelas dun aplicativo" msgstr "Cambiar entre as xanelas dun aplicativo"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Cambia á xanela anterior dun aplicativo" msgstr "Cambia á xanela anterior dun aplicativo"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Cambiar entre os controles do sistema" msgstr "Cambiar entre os controles do sistema"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Cambia ao control do sistema anterior" msgstr "Cambia ao control do sistema anterior"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Cambiar xanelas directamente" msgstr "Cambiar xanelas directamente"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Cambia directamente á xanela anterior" msgstr "Cambia directamente á xanela anterior"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Cambiar entre as xanelas dun aplicativo directamente" msgstr "Cambiar entre as xanelas dun aplicativo directamente"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Cambia directamente á xanela anterior do aplicativo" msgstr "Cambia directamente á xanela anterior do aplicativo"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Cambiar entre os controles do sistema directamente" msgstr "Cambiar entre os controles do sistema directamente"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Cambiar directamente ao control do sistema anterior" msgstr "Cambiar directamente ao control do sistema anterior"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Ocultar todas as xanelas normais" msgstr "Ocultar todas as xanelas normais"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Cambiar ao espazo de traballo 1" msgstr "Cambiar ao espazo de traballo 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Cambiar ao espazo de traballo 2" msgstr "Cambiar ao espazo de traballo 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Cambiar ao espazo de traballo 3" msgstr "Cambiar ao espazo de traballo 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Cambiar ao espazo de traballo 4" msgstr "Cambiar ao espazo de traballo 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Cambiar ao último espazo de traballo" msgstr "Cambiar ao último espazo de traballo"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Mover ao espazo da esquerda"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Mover ao espazo da dereita"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Mover ao espazo de arriba" msgstr "Mover ao espazo de arriba"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Mover ao espazo de traballo de abaixo" msgstr "Mover ao espazo de traballo de abaixo"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sistema" msgstr "Sistema"
@@ -174,10 +191,6 @@ msgstr "Mostrar o diálogo de executar orde"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Mostrar a vista xeral de actividades" msgstr "Mostrar a vista xeral de actividades"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Restaurar os atallos de teclado"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Xanelas" msgstr "Xanelas"
@@ -203,50 +216,54 @@ msgid "Restore window"
msgstr "Restaurar xanela" msgstr "Restaurar xanela"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Trocar o estado ensombrecido"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Pechar xanela" msgstr "Pechar xanela"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ocultar xanela" msgstr "Ocultar xanela"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Mover xanela" msgstr "Mover xanela"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Redimensionar xanela" msgstr "Redimensionar xanela"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Trocar que a xanela apareza en tódolos espazos de traballo ou nun" msgstr "Trocar que a xanela apareza en tódolos espazos de traballo ou nun"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Elevar a xanela se está cuberta por outra, en caso contrario baixala" msgstr "Elevar a xanela se está cuberta por outra, en caso contrario baixala"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Subir a xanela por enriba doutras xanelas" msgstr "Subir a xanela por enriba doutras xanelas"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Baixar xanela debaixo doutras xanelas" msgstr "Baixar xanela debaixo doutras xanelas"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximizar xanela verticalmente" msgstr "Maximizar xanela verticalmente"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximizar xanela horizontalmente" msgstr "Maximizar xanela horizontalmente"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Dividir vista á esquerda" msgstr "Dividir vista á esquerda"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Dividir vista á dereita" msgstr "Dividir vista á dereita"
@@ -394,6 +411,16 @@ msgid "Enable experimental features"
msgstr "Activar as características experimentais" msgstr "Activar as características experimentais"
#: data/org.gnome.mutter.gschema.xml.in:108 #: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “scale-monitor-"
#| "framebuffer” — makes mutter default to layout logical monitors in a "
#| "logical pixel coordinate space, while scaling monitor framebuffers "
#| "instead of window content, to manage HiDPI monitors. Does not require a "
#| "restart."
msgid "" msgid ""
"To enable experimental features, add the feature keyword to the list. " "To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
@@ -489,56 +516,10 @@ msgstr "Cambiar á VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Reactivar os atallos" msgstr "Reactivar os atallos"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Permitir capturas con Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Permitir que se teña en conta a captura do teclado desde aplicativos X11 "
"executándose en Xwayland. Para que a captura X11 se teña en conta baixo "
"Wayland, o cliente debe enviar un ClientMessage de X11 específico á xanela "
"principal ou estar entre os aplicatios na lista blanca da chave «xwayland-"
"grab-access-rules»."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Aplicaciones de Xwayland que poden capturar o teclado"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Lista de nomes de recursos ou clases de recursos para as xanelas X11 tanto "
"permitidas como non permitidas para a captura do teclado en X11 baixo "
"Xwayland. O nome do recurso ou a clase do recurso da xanela X11 dada pode "
"obterse usando a orde «xprop WM_CLASS». Admítense os comodíns «*» e os "
"jokers \"?\" nos valores. Os valores comezando con «!» incluiranse na lista "
"negra, que ten precedencia sobre a lista branca, para revogar aplicativos "
"desde a lista por omisión do sistema. A lista por omisión do sitema inclúe "
"os seguintes aplicativos “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Os usuarios "
"poden romper unha captura existente usando un atallo de teclado específico "
"definido na chave de atallo «restore-shortcuts»."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Modo conmutador (Grupo %d)" msgstr "Modo conmutador (Grupo %d)"
@@ -546,37 +527,37 @@ msgstr "Modo conmutador (Grupo %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Cambiar monitor" msgstr "Cambiar monitor"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Mostrar axuda en pantalla" msgstr "Mostrar axuda en pantalla"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Pantalla embebida" msgstr "Pantalla embebida"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Descoñecido" msgstr "Descoñecido"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Pantalla descoñecida" msgstr "Pantalla descoñecida"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -593,46 +574,42 @@ msgstr "Evento de campá"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Produciuse un erro ao abrir a visualización do X Window System «%s»\n" msgstr "Produciuse un erro ao abrir a visualización do X Window System «%s»\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Desactivar a conexión ao xestor de sesión" msgstr "Desactivar a conexión ao xestor de sesión"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Substituír o xestor de xanelas en execución" msgstr "Substituír o xestor de xanelas en execución"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Especificar o ID de xestión de sesión" msgstr "Especificar o ID de xestión de sesión"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Pantalla X que se vai usar" msgstr "Pantalla X que se vai usar"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicializar sesión desde o ficheiro de salvagarda" msgstr "Inicializar sesión desde o ficheiro de salvagarda"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Facer que as chamadas a X sexan sincrónicas" msgstr "Facer que as chamadas a X sexan sincrónicas"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Executar como compositor de wayland" msgstr "Executar como compositor de wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Executar como compositor anidado" msgstr "Executar como compositor anidado"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Executar como un servidor de pantalla completo, fronte a un aniñado" msgstr "Executar como un servidor de pantalla completo, fronte a un aniñado"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Executar coa infraestructura de X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -687,7 +664,7 @@ msgstr "Engadido de mutter que usar"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Espazo de traballo %d" msgstr "Espazo de traballo %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -696,7 +673,7 @@ msgstr ""
"A pantalla «%s» ten xa un xestor de xanelas, tente usar a opción --replace " "A pantalla «%s» ten xa un xestor de xanelas, tente usar a opción --replace "
"para substituír o xestor de xanelas." "para substituír o xestor de xanelas."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "A pantalla %d na visualización «%s» non é válida\n" msgstr "A pantalla %d na visualización «%s» non é válida\n"
@@ -705,12 +682,12 @@ msgstr "A pantalla %d na visualización «%s» non é válida\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter foi compilado sen compatibilidade para o modo detallado\n" msgstr "Mutter foi compilado sen compatibilidade para o modo detallado\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Modo conmutador: Modo %d" msgstr "Modo conmutador: Modo %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -723,21 +700,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (en %s)" msgstr "%s (en %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Mover xanela un espazo de traballo cara á esquerda"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Mover xanela un espazo de traballo cara á dereita"
#~ msgid "Move to workspace left"
#~ msgstr "Mover ao espazo da esquerda"
#~ msgid "Move to workspace right"
#~ msgstr "Mover ao espazo da dereita"
#~ msgid "Toggle shaded state"
#~ msgstr "Trocar o estado ensombrecido"
#~ msgid "background texture could not be created from file" #~ msgid "background texture could not be created from file"
#~ msgstr "a textura do fondo non puido crearse desde o ficheiro" #~ msgstr "a textura do fondo non puido crearse desde o ficheiro"

215
po/hr.po
View File

@@ -4,9 +4,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: metacity 0\n" "Project-Id-Version: metacity 0\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-17 16:00+0100\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-09-22 20:51+0200\n"
"Last-Translator: gogo <trebelnik2@gmail.com>\n" "Last-Translator: gogo <trebelnik2@gmail.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n" "Language-Team: Croatian <lokalizacija@linux.hr>\n"
"Language: hr\n" "Language: hr\n"
@@ -16,7 +17,7 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Launchpad-Export-Date: 2008-05-28 13:28+0000\n" "X-Launchpad-Export-Date: 2008-05-28 13:28+0000\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.3\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -43,118 +44,134 @@ msgid "Move window to last workspace"
msgstr "Premjesti prozor posljednji radni prostor" msgstr "Premjesti prozor posljednji radni prostor"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Premjesti prozor jedan radni prostor nalijevo"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Premjesti prozor jedan radni prostor udesno"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Premjesti prozor jedan radni prostor gore" msgstr "Premjesti prozor jedan radni prostor gore"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Premjesti prozor jedan radni prostor dolje" msgstr "Premjesti prozor jedan radni prostor dolje"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Premjesti prozor jedan zaslon nalijevo" msgstr "Premjesti prozor jedan zaslon nalijevo"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Premjesti prozor jedan zaslon udesno" msgstr "Premjesti prozor jedan zaslon udesno"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Premjesti prozor jedan zaslon gore" msgstr "Premjesti prozor jedan zaslon gore"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Premjesti prozor jedan zaslon dolje" msgstr "Premjesti prozor jedan zaslon dolje"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Prebacivanje aplikacija" msgstr "Prebacivanje aplikacija"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Prebaci na prijašnju aplikaciju" msgstr "Prebaci na prijašnju aplikaciju"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Prebacivanje prozora" msgstr "Prebacivanje prozora"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Prebaci na prijašnji prozor" msgstr "Prebaci na prijašnji prozor"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Prebacivanje prozora aplikacija" msgstr "Prebacivanje prozora aplikacija"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Prebaci na prijašnji prozor aplikacije" msgstr "Prebaci na prijašnji prozor aplikacije"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Prebacivanje upravljanja sustavom" msgstr "Prebacivanje upravljanja sustavom"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Prebaci na prijašnje upravljanje sustavom" msgstr "Prebaci na prijašnje upravljanje sustavom"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Prebacivanje izravno na prozor" msgstr "Prebacivanje izravno na prozor"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Prebaci izravno na prijašnji prozor" msgstr "Prebaci izravno na prijašnji prozor"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Prebacivanje prozora aplikacije izravno" msgstr "Prebacivanje prozora aplikacije izravno"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Prebaci izravno na prijašnji prozor aplikacije" msgstr "Prebaci izravno na prijašnji prozor aplikacije"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Prebacivanje upravljanja sustavom izravno" msgstr "Prebacivanje upravljanja sustavom izravno"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Prebaci izravno na prijašnje upravljanje sustavom" msgstr "Prebaci izravno na prijašnje upravljanje sustavom"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Sakrij sve normalne prozore" msgstr "Sakrij sve normalne prozore"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Prebaci se na radni prostor 1" msgstr "Prebaci se na radni prostor 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Prebaci se na radni prostor 2" msgstr "Prebaci se na radni prostor 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Prebaci se na radni prostor 3" msgstr "Prebaci se na radni prostor 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Prebaci se na radni prostor 4" msgstr "Prebaci se na radni prostor 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Prebaci na prijašnji radni prostor" msgstr "Prebaci na prijašnji radni prostor"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Premjesti na lijevi radni prostor"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Premjesti na desni radni prostor"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Premjesti na gornji radni prostor" msgstr "Premjesti na gornji radni prostor"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Premjesti na donji radni prostor" msgstr "Premjesti na donji radni prostor"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sustav" msgstr "Sustav"
@@ -166,10 +183,6 @@ msgstr "Prikaži dijalog pokretanja naredbe"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Prikaži pregled aktivnosti" msgstr "Prikaži pregled aktivnosti"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Vrati izvorne prečace tipkovnice"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Prozori" msgstr "Prozori"
@@ -195,50 +208,54 @@ msgid "Restore window"
msgstr "Vrati prozor" msgstr "Vrati prozor"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Uklj/Isklj stanje zasjenjenosti"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Zatvori prozor" msgstr "Zatvori prozor"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Sakrij prozor" msgstr "Sakrij prozor"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Premjesti prozor" msgstr "Premjesti prozor"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Promijeni veličinu prozora" msgstr "Promijeni veličinu prozora"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Uklj/Isklj prozor na svim radnim prostorima" msgstr "Uklj/Isklj prozor na svim radnim prostorima"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Podigni prekriven prozor, u suprotnome smanji" msgstr "Podigni prekriven prozor, u suprotnome smanji"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Podigni prozor iznad ostalih prozora" msgstr "Podigni prozor iznad ostalih prozora"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Spusti prozor ispod ostalih prozora" msgstr "Spusti prozor ispod ostalih prozora"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Uvećaj prozor okomito" msgstr "Uvećaj prozor okomito"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Uvećaj prozor vodoravno" msgstr "Uvećaj prozor vodoravno"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Podijeli pogled ulijevo" msgstr "Podijeli pogled ulijevo"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Podijeli pogled udesno" msgstr "Podijeli pogled udesno"
@@ -476,55 +493,10 @@ msgstr "Prebaci na VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Ponovno omogući prečace" msgstr "Ponovno omogući prečace"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Dopusti hvatanje sa Xwaylandom"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Dopusti hvatanje tipkovnicom aplikacije izdane za X11 pokrenute u Xwaylandu "
"kako bi se obuhvatile u računu. Kako bi X11 hvatanje bilo obuhvaćeno računom "
"u Waylandu, klijent mora poslati ili određenu X11 poruku klijenta u "
"korijenski prozor ili mora biti naveden među aplikacijama dopuštenim u "
"ključu “xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland aplikacije dopuštene za izdavanje hvatanja tipkovnice"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Popis naziva ili razreda resursa X11 prozora koji dopuštaju ili nedopuštaju "
"izdavanje X11 hvatanja tipkovnice u Xwaylandu. Popis naziva ili razreda "
"resursa danog X11 prozora može se omogućiti naredbom “xprop WM_CLASS”. "
"Zvjezdice “*” i upitnici “?” u vrijednostima su podržani. Vrijednosti koje "
"počinju sa “!” nisu dopuštene, a imaju prednost nad dopuštenim, kako bi "
"opozvali aplikaciju iz zadanog popisa sustavom. Zadani popis sustava "
"uključuje sljedeće aplikacije: “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” "
"Korisnici mogu prekinuti postojeće hvatanje koristeći određeni prečac "
"tipkovnice određen ključem prečaca tipkovnice “restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Način prebacivanja (Grupa %d)" msgstr "Način prebacivanja (Grupa %d)"
@@ -532,37 +504,37 @@ msgstr "Način prebacivanja (Grupa %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Prebaci zaslon" msgstr "Prebaci zaslon"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Prikaži zaslonsku pomoć" msgstr "Prikaži zaslonsku pomoć"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Ugrađeni zaslon" msgstr "Ugrađeni zaslon"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Nepoznat" msgstr "Nepoznat"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nepoznat zaslon" msgstr "Nepoznat zaslon"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -578,46 +550,42 @@ msgstr "Događaj zvona"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Neuspjelo otvaranje sustava prikaza X prozora \"%s\"\n" msgstr "Neuspjelo otvaranje sustava prikaza X prozora \"%s\"\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Onemogući povezivanje sa upraviteljem sesija" msgstr "Onemogući povezivanje sa upraviteljem sesija"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Zamijeni pokrenutoga upravitelja porozora" msgstr "Zamijeni pokrenutoga upravitelja porozora"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Odredite ID upravljanja sesijama" msgstr "Odredite ID upravljanja sesijama"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "X Prikaz za korištenje" msgstr "X Prikaz za korištenje"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Pokreni sesiju iz spremljene datoteke" msgstr "Pokreni sesiju iz spremljene datoteke"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Napravi X pozive usklađenim" msgstr "Napravi X pozive usklađenim"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Pokreni wayland kompozitor" msgstr "Pokreni wayland kompozitor"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Pokreni kao ugrađeni kompozitor" msgstr "Pokreni kao ugrađeni kompozitor"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Pokreni kao potpuni poslužitelj zaslona, radije nego ugrađeni" msgstr "Pokreni kao potpuni poslužitelj zaslona, radije nego ugrađeni"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Pokreni s X11 pozadinskim programom"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -672,7 +640,7 @@ msgstr "Mutter priključak koji se koristi"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Radni prostor %d" msgstr "Radni prostor %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -681,7 +649,7 @@ msgstr ""
"Prikaz \"%s\" već ima upravitelja prozora; pokušajte koristiti --replace " "Prikaz \"%s\" već ima upravitelja prozora; pokušajte koristiti --replace "
"mogućnost za zamjenu trenutnog upravitelja prozora." "mogućnost za zamjenu trenutnog upravitelja prozora."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Zaslon %d na prikazu '%s' je neispravan\n" msgstr "Zaslon %d na prikazu '%s' je neispravan\n"
@@ -695,7 +663,7 @@ msgstr "Mutter je kompiliran bez podrške za opširan način rada\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Način prebacivanja: Način %d" msgstr "Način prebacivanja: Način %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -708,21 +676,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (na %s)" msgstr "%s (na %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Premjesti prozor jedan radni prostor nalijevo"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Premjesti prozor jedan radni prostor udesno"
#~ msgid "Move to workspace left"
#~ msgstr "Premjesti na lijevi radni prostor"
#~ msgid "Move to workspace right"
#~ msgstr "Premjesti na desni radni prostor"
#~ msgid "Toggle shaded state"
#~ msgstr "Uklj/Isklj stanje zasjenjenosti"
#~ msgid "Desktop" #~ msgid "Desktop"
#~ msgstr "Radna površina" #~ msgstr "Radna površina"

231
po/hu.po
View File

@@ -1,18 +1,19 @@
# Hungarian translation for mutter. # Hungarian translation of mutter.
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Free Software Foundation, Inc. # Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the mutter package. # This file is distributed under the same license as the mutter package.
# #
# Andras Timar <timar at gnome dot hu>, 2002, 2003. # Andras Timar <timar at gnome dot hu>, 2002, 2003.
# Gabor Sari <saga at externet dot hu>, 2003. # Gabor Sari <saga at externet dot hu>, 2003.
# Laszlo Dvornik <dvornik at gnome dot hu>, 2004. # Laszlo Dvornik <dvornik at gnome dot hu>, 2004.
# Gabor Kelemen <kelemeng at gnome dot hu>, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013. # Gabor Kelemen <kelemeng at gnome dot hu>, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013.
# Balázs Úr <urbalazs at gmail dot com>, 2013, 2014, 2015, 2016, 2017, 2018. # Balázs Úr <urbalazs at gmail dot com>, 2013, 2014, 2015, 2016, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-07 18:39+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-23 23:53+0100\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-09-05 17:35+0200\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n" "Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n" "Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\n" "Language: hu\n"
@@ -47,118 +48,134 @@ msgid "Move window to last workspace"
msgstr "Ablak áthelyezése az utolsó munkaterületre" msgstr "Ablak áthelyezése az utolsó munkaterületre"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Ablak áthelyezése a balra lévő munkaterületre"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Ablak áthelyezése a jobbra lévő munkaterületre"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Ablak áthelyezése egy munkaterülettel feljebb" msgstr "Ablak áthelyezése egy munkaterülettel feljebb"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Ablak áthelyezése egy munkaterülettel lejjebb" msgstr "Ablak áthelyezése egy munkaterülettel lejjebb"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Ablak áthelyezése a balra lévő monitorra" msgstr "Ablak áthelyezése a balra lévő monitorra"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Ablak áthelyezése a jobbra lévő monitorra" msgstr "Ablak áthelyezése a jobbra lévő monitorra"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Ablak áthelyezése egy monitorral feljebb" msgstr "Ablak áthelyezése egy monitorral feljebb"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Ablak áthelyezése egy monitorral lejjebb" msgstr "Ablak áthelyezése egy monitorral lejjebb"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Alkalmazásváltás" msgstr "Alkalmazásváltás"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Váltás az előző alkalmazásra" msgstr "Váltás az előző alkalmazásra"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Ablakváltás" msgstr "Ablakváltás"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Váltás az előző ablakra" msgstr "Váltás az előző ablakra"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Váltás egy alkalmazás ablakai között" msgstr "Váltás egy alkalmazás ablakai között"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Váltás egy alkalmazás előző ablakára" msgstr "Váltás egy alkalmazás előző ablakára"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Váltás a rendszer vezérlői közt" msgstr "Váltás a rendszer vezérlői közt"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Váltás az előző rendszervezérlőre" msgstr "Váltás az előző rendszervezérlőre"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Váltás az ablakok közt közvetlenül" msgstr "Váltás az ablakok közt közvetlenül"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Váltás közvetlenül az előző ablakra" msgstr "Váltás közvetlenül az előző ablakra"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Váltás egy alkalmazás ablakai között közvetlenül" msgstr "Váltás egy alkalmazás ablakai között közvetlenül"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Váltás közvetlenül egy alkalmazás előző ablakára" msgstr "Váltás közvetlenül egy alkalmazás előző ablakára"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Váltás a rendszer vezérlői közt közvetlenül" msgstr "Váltás a rendszer vezérlői közt közvetlenül"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Váltás közvetlenül az előző rendszervezérlőre" msgstr "Váltás közvetlenül az előző rendszervezérlőre"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Minden normál ablak elrejtése" msgstr "Minden normál ablak elrejtése"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Váltás az 1. munkaterületre" msgstr "Váltás az 1. munkaterületre"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Váltás a 2. munkaterületre" msgstr "Váltás a 2. munkaterületre"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Váltás a 3. munkaterületre" msgstr "Váltás a 3. munkaterületre"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Váltás a 4. munkaterületre" msgstr "Váltás a 4. munkaterületre"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Váltás az utolsó munkaterületre" msgstr "Váltás az utolsó munkaterületre"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Áthelyezés a bal oldali munkaterületre"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Áthelyezés a jobb oldali munkaterületre"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Áthelyezés a felső munkaterületre" msgstr "Áthelyezés a felső munkaterületre"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Áthelyezés az alsó munkaterületre" msgstr "Áthelyezés az alsó munkaterületre"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Rendszer" msgstr "Rendszer"
@@ -170,10 +187,6 @@ msgstr "A parancs futtatása ablak megjelenítése"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "A tevékenységek áttekintés megjelenítése" msgstr "A tevékenységek áttekintés megjelenítése"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Gyorsbillentyűk helyreállítása"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Ablakok" msgstr "Ablakok"
@@ -199,50 +212,54 @@ msgid "Restore window"
msgstr "Ablak visszaállítása" msgstr "Ablak visszaállítása"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Felgördített állapot átváltása"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Ablak bezárása" msgstr "Ablak bezárása"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ablak elrejtése" msgstr "Ablak elrejtése"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Ablak áthelyezése" msgstr "Ablak áthelyezése"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ablak átméretezése" msgstr "Ablak átméretezése"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Ablak megjelenítése minden munkaterületen vagy csak az egyiken" msgstr "Ablak megjelenítése minden munkaterületen vagy csak az egyiken"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Fedett ablak előtérbe hozása, egyébként háttérbe küldése" msgstr "Fedett ablak előtérbe hozása, egyébként háttérbe küldése"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Ablak más ablakok elé hozása" msgstr "Ablak más ablakok elé hozása"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Ablak más ablakok mögé küldése" msgstr "Ablak más ablakok mögé küldése"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Ablak függőleges maximalizálása" msgstr "Ablak függőleges maximalizálása"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Ablak vízszintes maximalizálása" msgstr "Ablak vízszintes maximalizálása"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Bal oldali felosztás megjelenítése" msgstr "Bal oldali felosztás megjelenítése"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Jobb oldali felosztás megjelenítése" msgstr "Jobb oldali felosztás megjelenítése"
@@ -387,6 +404,20 @@ msgid "Enable experimental features"
msgstr "Kísérleti funkciók engedélyezése" msgstr "Kísérleti funkciók engedélyezése"
#: data/org.gnome.mutter.gschema.xml.in:108 #: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “monitor-config-"
#| "manager” — use the new monitor configuration system, aimed to replace the "
#| "old one. This enables a higher level configuration API to be used by "
#| "configuration applications, as well as the ability to configure per "
#| "logical monitor scale. • “scale-monitor-framebuffer” — makes mutter "
#| "default to layout logical monitors in a logical pixel coordinate space, "
#| "while scaling monitor framebuffers instead of window content, to manage "
#| "HiDPI monitors. Does not require a restart. Also enabling “monitor-config-"
#| "manager” is required for this feature to be enabled."
msgid "" msgid ""
"To enable experimental features, add the feature keyword to the list. " "To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
@@ -401,12 +432,12 @@ msgid ""
"screen cast support." "screen cast support."
msgstr "" msgstr ""
"A kísérleti funkciók engedélyezéséhez adja hozzá a funkció kulcsszavát a " "A kísérleti funkciók engedélyezéséhez adja hozzá a funkció kulcsszavát a "
"listához. A funkció a betűszedő újraindítását igényelheti az adott " "listához. A funkció a betűszedő újraindítását igényelheti az adott funkciótól "
"funkciótól függően. Egyik kísérleti funkciónál sem szükséges, hogy továbbra " "függően. Egyik kísérleti funkciónál sem szükséges, hogy továbbra is elérhető "
"is elérhető vagy beállítható legyen. Ne várja el azt, hogy ha bármit hozzáad " "vagy beállítható legyen. Ne várja el azt, hogy ha bármit hozzáad ehhez a "
"ehhez a beállításhoz, akkor az a jövőben is elérhető lesz. Jelenleg " "beállításhoz, akkor az a jövőben is elérhető lesz. Jelenleg lehetséges "
"lehetséges kulcsszavak: • „scale-monitor-framebuffer” — alapértelmezetté " "kulcsszavak: • „scale-monitor-framebuffer” — alapértelmezetté teszi a mutter "
"teszi a mutter programot a logikai monitorok elrendezéséhez egy logikai " "programot a logikai monitorok elrendezéséhez egy logikai "
"képpontkoordináta-térben, miközben átméretezi a monitor keretpufferét az " "képpontkoordináta-térben, miközben átméretezi a monitor keretpufferét az "
"ablaktartalom helyett azért, hogy kezelje a HiDPI monitorokat. Nem igényel " "ablaktartalom helyett azért, hogy kezelje a HiDPI monitorokat. Nem igényel "
"újraindítást. • „remote-desktop” — engedélyezi a távoli asztal támogatást. A " "újraindítást. • „remote-desktop” — engedélyezi a távoli asztal támogatást. A "
@@ -482,56 +513,10 @@ msgstr "Váltás a 12. VT-re"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Gyorsbillentyűk újraengedélyezése" msgstr "Gyorsbillentyűk újraengedélyezése"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Xwayland megragadások engedélyezése"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Engedélyezi az Xwayland alatti X11 alkalmazások által kért billentyűzet "
"megragadások figyelembe vételét. Ahhoz, hogy Wayland alatt figyelembe "
"legyenek véve az X11 megragadások, a kliensnek vagy küldenie kell egy "
"meghatározott X11 ClientMessage üzenetet a gyökérablaknak, vagy az „xwayland-"
"grab-access-rules” kulcsban megadott fehérlistában kell szerepelnie."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland alkalmazások, amelyek kérhetnek billentyűzet megragadást"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Felsorolja azokat az X11 ablak erőforrásneveket vagy erőforrásosztályokat, "
"amelyek Xwayland alatt vagy kiadhatnak X11 billentyűzet megragadásokat, vagy "
"sem. A megadott X11 ablak erőforrásneve vagy erőforrásosztálya az „xprop "
"WM_CLASS” paranccsal kérhető le. Az értékekben a „*” vagy „?” helyettesítő "
"karakterek támogatottak. A „!” karakterrel kezdődő értékek feketelistára "
"kerülnek, és a fehérlista előtt lesznek figyelembe véve, így felülbírálva az "
"alapértelmezett rendszerlistát. Az alapértelmezett rendszerlistán a "
"következő alkalmazások szerepelnek: „@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@”. "
"A felhasználók megszakíthatják a létező megragadásokat a „restore-shortcuts” "
"kulcsban megadott gyorsbillentyűvel."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Módkapcsoló (%d. csoport)" msgstr "Módkapcsoló (%d. csoport)"
@@ -539,37 +524,37 @@ msgstr "Módkapcsoló (%d. csoport)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Monitorváltás" msgstr "Monitorváltás"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Képernyősúgó megjelenítése" msgstr "Képernyősúgó megjelenítése"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Beépített kijelző" msgstr "Beépített kijelző"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Ismeretlen" msgstr "Ismeretlen"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Ismeretlen kijelző" msgstr "Ismeretlen kijelző"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -586,47 +571,43 @@ msgstr "Csengetés esemény"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Nem sikerült megnyitni a(z) „%s” X Window rendszer képernyőt\n" msgstr "Nem sikerült megnyitni a(z) „%s” X Window rendszer képernyőt\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "A munkamenet-kezelőhöz való csatlakozás tiltása" msgstr "A munkamenet-kezelőhöz való csatlakozás tiltása"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "A futó ablakkezelő helyettesítése" msgstr "A futó ablakkezelő helyettesítése"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "A munkamenet-kezelő azonosítójának megadása" msgstr "A munkamenet-kezelő azonosítójának megadása"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "A használandó X megjelenítő" msgstr "A használandó X megjelenítő"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "A munkamenet előkészítése a mentési fájlból" msgstr "A munkamenet előkészítése a mentési fájlból"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Az X-hívások szinkronná tétele" msgstr "Az X-hívások szinkronná tétele"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Futtatás wayland betűszedőként" msgstr "Futtatás wayland betűszedőként"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Futtatás beágyazott betűszedőként" msgstr "Futtatás beágyazott betűszedőként"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "" msgstr ""
"Futtatás teljes megjelenítő kiszolgálóként az egymásba ágyazott helyett" "Futtatás teljes megjelenítő kiszolgálóként az egymásba ágyazott helyett"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Futtatás X11 háttérprogrammal"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -681,7 +662,7 @@ msgstr "Használandó Mutter bővítmény"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. munkaterület" msgstr "%d. munkaterület"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -690,7 +671,7 @@ msgstr ""
"A(z) „%s” kijelző már rendelkezik ablakkezelővel; próbálja a --replace " "A(z) „%s” kijelző már rendelkezik ablakkezelővel; próbálja a --replace "
"kapcsolóval helyettesíteni a jelenlegi ablakkezelőt." "kapcsolóval helyettesíteni a jelenlegi ablakkezelőt."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "A(z) %d. képernyő a(z) „%s” megjelenítőn érvénytelen\n" msgstr "A(z) %d. képernyő a(z) „%s” megjelenítőn érvénytelen\n"
@@ -704,7 +685,7 @@ msgstr "A Mutter ablakkezelőt a részletes mód támogatása nélkül fordítot
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Módkapcsoló: %d. mód" msgstr "Módkapcsoló: %d. mód"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."

201
po/id.po
View File

@@ -9,16 +9,17 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter master\n" "Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-07 18:39+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-09 17:00+0700\n" "POT-Creation-Date: 2017-11-10 18:16+0000\n"
"PO-Revision-Date: 2017-11-16 11:36+0700\n"
"Last-Translator: Kukuh Syafaat <syafaatkukuh@gmail.com>\n" "Last-Translator: Kukuh Syafaat <syafaatkukuh@gmail.com>\n"
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n" "Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
"Language: id\n" "Language: id\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.4\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
@@ -46,114 +47,130 @@ msgid "Move window to last workspace"
msgstr "Pindahkan jendela ke ruang kerja terakhir" msgstr "Pindahkan jendela ke ruang kerja terakhir"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Pindahkan jendela satu ruang kerja ke kiri"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Pindahkan jendela satu ruang kerja ke kanan"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Pindahkan jendela satu ruang kerja ke atas" msgstr "Pindahkan jendela satu ruang kerja ke atas"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Pindahkan jendela satu ruang kerja ke bawah" msgstr "Pindahkan jendela satu ruang kerja ke bawah"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Pindahkan jendela satu monitor ke kiri" msgstr "Pindahkan jendela satu monitor ke kiri"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Pindahkan jendela satu monitor ke kanan" msgstr "Pindahkan jendela satu monitor ke kanan"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Pindahkan jendela satu monitor ke atas" msgstr "Pindahkan jendela satu monitor ke atas"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Pindahkan jendela satu monitor ke bawah" msgstr "Pindahkan jendela satu monitor ke bawah"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Bertukar aplikasi" msgstr "Bertukar aplikasi"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Bertukar ke aplikasi sebelumnya" msgstr "Bertukar ke aplikasi sebelumnya"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Bertukar jendela" msgstr "Bertukar jendela"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Bertukar ke jendela sebelumnya" msgstr "Bertukar ke jendela sebelumnya"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Bertukar jendela dari suatu aplikasi" msgstr "Bertukar jendela dari suatu aplikasi"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Bertukar ke jendela aplikasi sebelumnya" msgstr "Bertukar ke jendela aplikasi sebelumnya"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Bertukar kendali sistem" msgstr "Bertukar kendali sistem"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Bertukar ke kendali sistem sebelumnya" msgstr "Bertukar ke kendali sistem sebelumnya"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Bertukar jendela secara langsung" msgstr "Bertukar jendela secara langsung"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Bertukar secara langsung ke jendela sebelumnya" msgstr "Bertukar secara langsung ke jendela sebelumnya"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Bertukar jendela dari suatu app secara langsung" msgstr "Bertukar jendela dari suatu app secara langsung"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Bertukar secara langsung ke jendela sebelumnya dari suatu app" msgstr "Bertukar secara langsung ke jendela sebelumnya dari suatu app"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Bertukar kendali sistem secara langsung" msgstr "Bertukar kendali sistem secara langsung"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Bertukar secara langsung ke kendali sistem sebelumnya" msgstr "Bertukar secara langsung ke kendali sistem sebelumnya"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Sembunyikan semua jendela normal" msgstr "Sembunyikan semua jendela normal"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Bertukar ke ruang kerja 1" msgstr "Bertukar ke ruang kerja 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Bertukar ke ruang kerja 2" msgstr "Bertukar ke ruang kerja 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Bertukar ke ruang kerja 3" msgstr "Bertukar ke ruang kerja 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Bertukar ke ruang kerja 4" msgstr "Bertukar ke ruang kerja 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Bertukar ke ruang kerja terakhir" msgstr "Bertukar ke ruang kerja terakhir"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Pindahkan ke ruang kerja kiri"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Pindahkan ke ruang kerja kanan"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Pindahkan ke ruang kerja di atas" msgstr "Pindahkan ke ruang kerja di atas"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Pindahkan ke ruang kerja di bawah" msgstr "Pindahkan ke ruang kerja di bawah"
@@ -198,50 +215,54 @@ msgid "Restore window"
msgstr "Pulihkan jendela" msgstr "Pulihkan jendela"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Jungkitkan keadaan berbayang"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Tutup jendela" msgstr "Tutup jendela"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Sembunyikan jendela" msgstr "Sembunyikan jendela"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Pindahkan jendela" msgstr "Pindahkan jendela"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ubah ukuran jendela" msgstr "Ubah ukuran jendela"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Jungkitkan jendela pada semua atau satu area kerja" msgstr "Jungkitkan jendela pada semua atau satu area kerja"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Naikkan jendela bila tertutup jendela lain, sebaliknya turunkan" msgstr "Naikkan jendela bila tertutup jendela lain, sebaliknya turunkan"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Naikkan jendela di atas jendela-jendela lain" msgstr "Naikkan jendela di atas jendela-jendela lain"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Turunkan jendela di bawah jendela-jendela lain" msgstr "Turunkan jendela di bawah jendela-jendela lain"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maksimalkan ukuran jendela secara vertikal" msgstr "Maksimalkan ukuran jendela secara vertikal"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maksimalkan ukuran jendela secara horisontal" msgstr "Maksimalkan ukuran jendela secara horisontal"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Tilik belah di kiri" msgstr "Tilik belah di kiri"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Tilik belah di kanan" msgstr "Tilik belah di kanan"
@@ -480,59 +501,10 @@ msgstr "Bertukar ke VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Aktifkan kembali pintasan" msgstr "Aktifkan kembali pintasan"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Izinkan menggenggam dengan Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Mengizinkan pengambilalihan papan ketik yang dikeluarkan oleh aplikasi X11 "
"yang berjalan di Xwayland untuk diperhitungkan. Agar pengambilalihan X11 "
"diperhitungkan di bawah Wayland, klien juga harus mengirimkan ClientMessage "
"X11 tertentu ke jendela root atau berada di antara aplikasi yang tercantum "
"dalam daftar putih \"xwayland-grab-access-rules\"."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr ""
"Aplikasi Xwayland yang diizinkan untuk mengeluarkan pengambilalihan papan "
"ketik"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Buat daftar nama sumber daya atau kelas sumber daya dari jendela X11 yang "
"diizinkan atau tidak diizinkan untuk melakukan pengambilalihan papan ketik "
"X11 di bawah Xwayland. Nama sumber daya atau kelas sumber daya dari jendela "
"X11 yang diberikan dapat diperoleh memakai perintah \"xprop WM_CLASS\". "
"Wildcard \"*\" dan joker \"?\" dalam nilai didukung. Nilai yang dimulai "
"dengan \"!\" masuk daftar hitam, yang punya preseden atas daftar putih, "
"untuk mencabut aplikasi dari daftar sistem bawaan. Daftar sistem bawaan "
"termasuk aplikasi-aplikasi berikut: \"@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@"
"\". Pengguna dapat memutus pengambilalihan yang ada dengan memakai pintasan "
"papan ketik spesifik yang didefinisikan oleh tombol pengikatan \"restore-"
"shortcuts\"."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Tukar Mode: (Grup %d)" msgstr "Tukar Mode: (Grup %d)"
@@ -540,11 +512,11 @@ msgstr "Tukar Mode: (Grup %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Berpindah monitor" msgstr "Berpindah monitor"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Tampilkan bantuan pada layar" msgstr "Tampilkan bantuan pada layar"
@@ -570,7 +542,7 @@ msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -586,46 +558,42 @@ msgstr "Bel peristiwa"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Gagal membuka tampilan X Window System \"%s\"\n" msgstr "Gagal membuka tampilan X Window System \"%s\"\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Menonaktifkan koneksi ke manajer sesi" msgstr "Menonaktifkan koneksi ke manajer sesi"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Mengganti manajer jendela yang tengah berjalan" msgstr "Mengganti manajer jendela yang tengah berjalan"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Tentukan kode pengaturan sesi" msgstr "Tentukan kode pengaturan sesi"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Tampilan X yang digunakna" msgstr "Tampilan X yang digunakna"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Aktifkan sesi dari berkas simpanan" msgstr "Aktifkan sesi dari berkas simpanan"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Buat panggilan X selaras" msgstr "Buat panggilan X selaras"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Jalankan sebagai kompositor wayland" msgstr "Jalankan sebagai kompositor wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Jalankan sebagai kompositor bersarang" msgstr "Jalankan sebagai kompositor bersarang"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Jalankan sebagai server tampilan penuh, ketimbang tampilan bersarang" msgstr "Jalankan sebagai server tampilan penuh, ketimbang tampilan bersarang"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Jalankan dengan backend X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -703,7 +671,7 @@ msgstr "Muter dikompilasi tanpa dukungan mode riuh\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Tukar Mode: Mode %d" msgstr "Tukar Mode: Mode %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -715,18 +683,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (pada %s)" msgstr "%s (pada %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Pindahkan jendela satu ruang kerja ke kiri"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Pindahkan jendela satu ruang kerja ke kanan"
#~ msgid "Move to workspace left"
#~ msgstr "Pindahkan ke ruang kerja kiri"
#~ msgid "Move to workspace right"
#~ msgstr "Pindahkan ke ruang kerja kanan"
#~ msgid "Toggle shaded state"
#~ msgstr "Jungkitkan keadaan berbayang"

208
po/it.po
View File

@@ -2,18 +2,18 @@
# Based on Italian translation for Metacity # Based on Italian translation for Metacity
# This file is distributed under the same license as metacity package # This file is distributed under the same license as metacity package
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc. # Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
# Copyright (C) 2018 Free Software Foundation, Inc.
# Pier Luigi Fiorini <plfiorini@libero.it>, 2002. # Pier Luigi Fiorini <plfiorini@libero.it>, 2002.
# Lapo Calamandrei <lapo.calamandrei@virgilio.it>, 2003. # Lapo Calamandrei <lapo.calamandrei@virgilio.it>, 2003.
# Luca Ferretti <lferrett@gnome.org>, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012. # Luca Ferretti <lferrett@gnome.org>, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012.
# Milo Casagrande <milo@milo.name>, 2012, 2013, 2014, 2015, 2016, 2017, 2018. # Milo Casagrande <milo@milo.name>, 2012, 2013, 2014, 2015, 2016, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-09 16:49+0100\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"PO-Revision-Date: 2017-11-17 14:30+0100\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n" "Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italian <tp@lists.linux.it>\n" "Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n" "Language: it\n"
@@ -48,114 +48,130 @@ msgid "Move window to last workspace"
msgstr "Sposta la finestra sull'ultimo spazio di lavoro" msgstr "Sposta la finestra sull'ultimo spazio di lavoro"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Sposta la finestra sullo spazio di lavoro a sinistra"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Sposta la finestra sullo spazio di lavoro a destra"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Sposta la finestra sullo spazio di lavoro in alto" msgstr "Sposta la finestra sullo spazio di lavoro in alto"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Sposta la finestra sullo spazio di lavoro in basso" msgstr "Sposta la finestra sullo spazio di lavoro in basso"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Sposta la finestra un monitor a sinistra" msgstr "Sposta la finestra un monitor a sinistra"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Sposta la finestra un monitor a destra" msgstr "Sposta la finestra un monitor a destra"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Sposta la finestra un monitor in su" msgstr "Sposta la finestra un monitor in su"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Sposta la finestra un monitor in giù" msgstr "Sposta la finestra un monitor in giù"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Evidenzia le applicazioni" msgstr "Evidenzia le applicazioni"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Evidenzia l'applicazione precedente" msgstr "Evidenzia l'applicazione precedente"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Evidenzia direttamente le finestre" msgstr "Evidenzia direttamente le finestre"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Evidenzia la finestra precedente" msgstr "Evidenzia la finestra precedente"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Evidenzia le finestre di un'applicazione" msgstr "Evidenzia le finestre di un'applicazione"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Evidenzia la finestra precedente di un'applicazione" msgstr "Evidenzia la finestra precedente di un'applicazione"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Evidenzia i controlli di sistema" msgstr "Evidenzia i controlli di sistema"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Evidenzia i controlli di sistema precedenti" msgstr "Evidenzia i controlli di sistema precedenti"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Evidenzia direttamente le finestre" msgstr "Evidenzia direttamente le finestre"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Evidenzia direttamente la finestra precedente" msgstr "Evidenzia direttamente la finestra precedente"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Evidenzia direttamente le finestre di una applicazione" msgstr "Evidenzia direttamente le finestre di una applicazione"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Evidenzia direttamente la finestra precedente di un'applicazione" msgstr "Evidenzia direttamente la finestra precedente di un'applicazione"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Evidenzia direttamente i controlli di sistema" msgstr "Evidenzia direttamente i controlli di sistema"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Evidenzia direttamente i controlli di sistema precedenti" msgstr "Evidenzia direttamente i controlli di sistema precedenti"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Nasconde tutte le finestre normali" msgstr "Nasconde tutte le finestre normali"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Passa allo spazio di lavoro 1" msgstr "Passa allo spazio di lavoro 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Passa allo spazio di lavoro 2" msgstr "Passa allo spazio di lavoro 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Passa allo spazio di lavoro 3" msgstr "Passa allo spazio di lavoro 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Passa allo spazio di lavoro 4" msgstr "Passa allo spazio di lavoro 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Passa all'ultimo spazio di lavoro" msgstr "Passa all'ultimo spazio di lavoro"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Sposta su spazio di lavoro a sinistra"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Sposta su spazio di lavoro a destra"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Sposta su spazio di lavoro in alto" msgstr "Sposta su spazio di lavoro in alto"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Sposta su spazio di lavoro in basso" msgstr "Sposta su spazio di lavoro in basso"
@@ -200,54 +216,58 @@ msgid "Restore window"
msgstr "Ripristina la finestra" msgstr "Ripristina la finestra"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Attiva/Disattiva lo stato arrotolato"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Chiudi la finestra" msgstr "Chiudi la finestra"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ridimensiona la finestra" msgstr "Ridimensiona la finestra"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Muovi la finestra" msgstr "Muovi la finestra"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ridimensiona la finestra" msgstr "Ridimensiona la finestra"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "" msgstr ""
"Attiva/Disattiva la stato «su tutti gli spazi di lavoro» per la finestra" "Attiva/Disattiva la stato «su tutti gli spazi di lavoro» per la finestra"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Solleva la finestra se è coperta, in caso contrario l'abbassa" msgstr "Solleva la finestra se è coperta, in caso contrario l'abbassa"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Solleva la finestra sopra le altre" msgstr "Solleva la finestra sopra le altre"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Abbassa la finestra sotto le altre" msgstr "Abbassa la finestra sotto le altre"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Massimizza verticalmente la finestra" msgstr "Massimizza verticalmente la finestra"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Massimizza orizzontalmente la finestra" msgstr "Massimizza orizzontalmente la finestra"
# scorciatoia per mettere la finestra a mezzo schermo intero sulla sinistra # scorciatoia per mettere la finestra a mezzo schermo intero sulla sinistra
# #
# traduzione infedele, ma "frazionamento della vista a sn/ds" mi pare peggio # traduzione infedele, ma "frazionamento della vista a sn/ds" mi pare peggio
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Massimizza a sinistra" msgstr "Massimizza a sinistra"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Massimizza a destra" msgstr "Massimizza a destra"
@@ -494,57 +514,10 @@ msgstr "Passa al VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Riabilita scorciatoie" msgstr "Riabilita scorciatoie"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Consente la cattura con Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Consente la cattura della tastiera da applicazioni X11 in esecuzione su "
"Xwayland. Affinché la cattura X11 venga considerata da Wayland, il client "
"deve inviare uno specifico messaggio ClientMessage X11 alla finestra "
"principale o essere nell'elenco di applicazioni autorizzate tramite la "
"chiave \"xwayland-grab-access-rules\"."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr ""
"Applicazioni Xwayland autorizzare a inizializzare catture della tastiera"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Lista di nomi o classi delle risorse di finestre X11 autorizzate o meno a "
"inizializzare la cattura della tastiera X11 su Xwayland. Per ottenere i nomi "
"o le classi delle risorse di una finestra X11 è possibile utilizzare il "
"comando \"xprop WM_CLASS\". Sono consentiti i caratteri \"*\" e \"?"
"\" (asterisco e punto di domanda) nei valori. Valori che iniziano con \"!\" "
"indicano una risorsa da escludere che ha priorità più alta rispetto alle "
"applicazioni autorizzate. La lista predefinita di sistema include le "
"seguenti applicazioni: \"@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@\" Gli utenti "
"possono interrompere una cattura esistente utilizzando la scorciatoia "
"definita nella chiave \"restore-shortcuts\"."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Cambio modalità (gruppo %d)" msgstr "Cambio modalità (gruppo %d)"
@@ -552,37 +525,37 @@ msgstr "Cambio modalità (gruppo %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Cambia monitor" msgstr "Cambia monitor"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Mostra aiuto sullo schermo" msgstr "Mostra aiuto sullo schermo"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Display integrato" msgstr "Display integrato"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Sconosciuto" msgstr "Sconosciuto"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Display sconosciuto" msgstr "Display sconosciuto"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -599,46 +572,42 @@ msgstr "Evento campanella"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Apertura del display «%s» di X Window System non riuscita\n" msgstr "Apertura del display «%s» di X Window System non riuscita\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Disabilita la connessione al gestore di sessione" msgstr "Disabilita la connessione al gestore di sessione"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Sostituisce il window manager in esecuzione" msgstr "Sostituisce il window manager in esecuzione"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Specifica l'ID di gestione sessione" msgstr "Specifica l'ID di gestione sessione"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Display X da usare" msgstr "Display X da usare"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inizializza la sessione da file salvato" msgstr "Inizializza la sessione da file salvato"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Rende le chiamate X sincrone" msgstr "Rende le chiamate X sincrone"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Esegui come compositor Wayland" msgstr "Esegui come compositor Wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Esegui come compositor annidato" msgstr "Esegui come compositor annidato"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Esegui come display server invece che annidato" msgstr "Esegui come display server invece che annidato"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Esegui con sistema X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -717,7 +686,7 @@ msgstr ""
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Cambio modalità: modalità %d" msgstr "Cambio modalità: modalità %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -729,18 +698,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (su %s)" msgstr "%s (su %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Sposta la finestra sullo spazio di lavoro a sinistra"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Sposta la finestra sullo spazio di lavoro a destra"
#~ msgid "Move to workspace left"
#~ msgstr "Sposta su spazio di lavoro a sinistra"
#~ msgid "Move to workspace right"
#~ msgstr "Sposta su spazio di lavoro a destra"
#~ msgid "Toggle shaded state"
#~ msgstr "Attiva/Disattiva lo stato arrotolato"

226
po/ko.po
View File

@@ -7,7 +7,6 @@
# #
# Updated in mutter: # Updated in mutter:
# Changwoo Ryu <cwryu@debian.org>, 2011-2017. # Changwoo Ryu <cwryu@debian.org>, 2011-2017.
# Gwan-gyeong Mun <elongbug@gmail.com>, 2018.
# #
# #
# 주의: # 주의:
@@ -17,10 +16,11 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-24 16:14+0900\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"Last-Translator: Gwan-gyeong Mun <elongbug@gmail.com>\n" "PO-Revision-Date: 2017-09-02 12:57+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n" "Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
"Language: ko\n" "Language: ko\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -53,118 +53,134 @@ msgid "Move window to last workspace"
msgstr "창을 최근 작업 공간으로 옮기기" msgstr "창을 최근 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "창을 한칸 왼쪽 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "창을 한칸 오른쪽 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "창을 한칸 위 작업 공간으로 옮기기" msgstr "창을 한칸 위 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "창을 한칸 아래 작업 공간으로 옮기기" msgstr "창을 한칸 아래 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "창을 한칸 왼쪽 모니터로 옮기기" msgstr "창을 한칸 왼쪽 모니터로 옮기기"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "창을 한칸 오른쪽 모니터로 옮기기" msgstr "창을 한칸 오른쪽 모니터로 옮기기"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "창을 한칸 위 모니터로 옮기기" msgstr "창을 한칸 위 모니터로 옮기기"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "창을 한칸 아래 모니터로 옮기기" msgstr "창을 한칸 아래 모니터로 옮기기"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "프로그램 전환" msgstr " 전환"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "이전 프로그램으로 전환" msgstr "이전 으로 전환"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "창 전환" msgstr "창 전환"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "이전 창으로 전환" msgstr "이전 창으로 전환"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "한 프로그램의 창 전환" msgstr "한 의 창 전환"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "한 프로그램의 이전 창으로 전환" msgstr "한 의 이전 창으로 전환"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "시스템 조작 전환" msgstr "시스템 조작 전환"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "이전 시스템 조작으로 전환" msgstr "이전 시스템 조작으로 전환"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "직접 창 전환" msgstr "직접 창 전환"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "직접 이전 창으로 전환" msgstr "직접 이전 창으로 전환"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "직접 한 앱의 창 전환" msgstr "직접 한 앱의 창 전환"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "직접 한 앱의 이전 창으로 전환" msgstr "직접 한 앱의 이전 창으로 전환"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "직접 시스템 조작 전환" msgstr "직접 시스템 조작 전환"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "직접 이전 시스템 조작으로 전환" msgstr "직접 이전 시스템 조작으로 전환"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "모든 일반 창 감추기" msgstr "모든 일반 창 감추기"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "작업 공간 1로 이동" msgstr "작업 공간 1로 이동"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "작업 공간 2로 이동" msgstr "작업 공간 2로 이동"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "작업 공간 3으로 이동" msgstr "작업 공간 3으로 이동"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "작업 공간 4로 이동" msgstr "작업 공간 4로 이동"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "최근 작업 공간으로 이동" msgstr "최근 작업 공간으로 이동"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "왼쪽 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "오른쪽 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "위 작업 공간으로 옮기기" msgstr "위 작업 공간으로 옮기기"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "아래 작업 공간으로 옮기기" msgstr "아래 작업 공간으로 옮기기"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "시스템" msgstr "시스템"
@@ -176,10 +192,6 @@ msgstr "실행 명령 프롬프트 보이기"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "현재 활동 보이기" msgstr "현재 활동 보이기"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "키보드 바로 가기 복구"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "창" msgstr "창"
@@ -205,50 +217,54 @@ msgid "Restore window"
msgstr "창 복구" msgstr "창 복구"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "그림자 상태 토글"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "창 닫기" msgstr "창 닫기"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "창 감추기" msgstr "창 감추기"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "창 옮기기" msgstr "창 옮기기"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "창 크기 조정" msgstr "창 크기 조정"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "창을 모든/하나의 작업 공간에 두기 토글" msgstr "창을 모든/하나의 작업 공간에 두기 토글"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "창이 가려 있으면 올리고 아니면 내리기" msgstr "창이 가려 있으면 올리고 아니면 내리기"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "창을 다른 창 위로 올리기" msgstr "창을 다른 창 위로 올리기"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "창을 다른 창 아래로 내리기" msgstr "창을 다른 창 아래로 내리기"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "창을 세로 방향으로 최대화" msgstr "창을 세로 방향으로 최대화"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "창을 가로 방향으로 최대화" msgstr "창을 가로 방향으로 최대화"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "왼쪽 나눔창 보기" msgstr "왼쪽 나눔창 보기"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "오른쪽 나눔창 보기" msgstr "오른쪽 나눔창 보기"
@@ -477,53 +493,10 @@ msgstr "가상 터미널 12로 이동"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "바로 가기 다시 사용하기" msgstr "바로 가기 다시 사용하기"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "X웨일랜드에서 잡기 허용"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"X웨일랜드 환경에서 실행하는 X11 프로그램의 키보드 잡기 허용을 고려합니다. 웨"
"일랜드에서 X11 잡기를 고려하려면, 클라이언트는 특정 X11 클라이언트메시지를 루"
"트 창에 보내거나 \"xwayland-grab-access-rules\"의 허용 목록에 있는 프로그램 "
"중 하나여야 합니다."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "X웨일랜드 프로그램에서 키보드 잡기 허용"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"X웨일랜드에서 X11 키보드 잡기를 허용하거나 허용하지 않는 X11 창의 리소스 이"
"름 또는 리소스 클래스를 나열하세요. X11 창의 리소스 이름 또는 리소스 클래스"
"는 “xprop WM_CLASS\" 명령을 사용하여 얻을 수 있습니다. 와일드카드 \"*\"와 \"?"
"\"를 값에서 사용할 수 있습니다. \"!\"로 시작하는 값은 허용 목록보다 높은 우선"
"순위로 블랙리스트 처리되어, 프로그램이 기본 시스템 목록에서 빠지게 됩니다. 기"
"본 시스템 목록에 포함된 프로그램: “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” 사용"
"자는 “restore-shortcuts” 키 바인딩에 정의된 특정 키보드 바로 가기를 사용하여 "
"기존 잡기를 중단할 수 있습니다."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "모드 전환 (그룹 %d)" msgstr "모드 전환 (그룹 %d)"
@@ -531,37 +504,37 @@ msgstr "모드 전환 (그룹 %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "모니터 전환" msgstr "모니터 전환"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "화면 도움말 표시" msgstr "화면 도움말 표시"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "내장 디스플레이" msgstr "내장 디스플레이"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "알 수 없음" msgstr "알 수 없음"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "알 수 없는 디스플레이" msgstr "알 수 없는 디스플레이"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -578,45 +551,41 @@ msgstr "삑소리 이벤트"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "X 윈도 시스템 디스플레이 “%s”을(를) 여는데 실패하였습니다\n" msgstr "X 윈도 시스템 디스플레이 “%s”을(를) 여는데 실패하였습니다\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "세션 관리자와 연결 하지 않습니다" msgstr "세션 관리자와 연결 하지 않습니다"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "실행 중인 창 관리자를 바꿉니다" msgstr "실행 중인 창 관리자를 바꿉니다"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "세션 관리 ID를 지정합니다" msgstr "세션 관리 ID를 지정합니다"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "사용할 X 디스플레이" msgstr "사용할 X 디스플레이"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "저장 파일에서 세션을 초기화 합니다" msgstr "저장 파일에서 세션을 초기화 합니다"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "동기 X 호출을 합니다" msgstr "동기 X 호출을 합니다"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "웨일랜드 컴포지터로 실행합니다" msgstr "웨일랜드 컴포지터로 실행합니다"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "중첩 컴포지터로 실행합니다" msgstr "내장 컴포지터로 실행합니다"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "전체 디스플레이 서버로 실행, 중첩 컴포지터가 아님" msgstr "전체 디스플레이 서버로 실행, 내장 프로그램 아님"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "X11 백 엔드로 실행 합니다"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
@@ -670,7 +639,7 @@ msgstr "사용할 머터 플러그인"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "작업 공간 %d" msgstr "작업 공간 %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -679,7 +648,7 @@ msgstr ""
"디스플레이 “%s”에 이미 창 관리자가 있습니다. 현재 창 관리자를 바꾸려면 --" "디스플레이 “%s”에 이미 창 관리자가 있습니다. 현재 창 관리자를 바꾸려면 --"
"replace 옵션을 써보십시오." "replace 옵션을 써보십시오."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "디스플레이 “%2$s”의 화면 %1$d은(는) 잘못되었습니다\n" msgstr "디스플레이 “%2$s”의 화면 %1$d은(는) 잘못되었습니다\n"
@@ -693,7 +662,7 @@ msgstr "머터가 자세한 모드 지원 없이 컴파일 되었습니다\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "모드 전환: 모드 %d" msgstr "모드 전환: 모드 %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -706,18 +675,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (%s에서)" msgstr "%s (%s에서)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "창을 한칸 왼쪽 작업 공간으로 옮기기"
#~ msgid "Move window one workspace to the right"
#~ msgstr "창을 한칸 오른쪽 작업 공간으로 옮기기"
#~ msgid "Move to workspace left"
#~ msgstr "왼쪽 작업 공간으로 옮기기"
#~ msgid "Move to workspace right"
#~ msgstr "오른쪽 작업 공간으로 옮기기"
#~ msgid "Toggle shaded state"
#~ msgstr "그림자 상태 토글"

228
po/lt.po
View File

@@ -6,14 +6,15 @@
# Tomas Kuliavas <tokul@users.sourceforge.net>, 2003. # Tomas Kuliavas <tokul@users.sourceforge.net>, 2003.
# Žygimantas Beručka <zygis@gnome.org>, 2004-2007. # Žygimantas Beručka <zygis@gnome.org>, 2004-2007.
# Gintautas Miliauskas <gintautas@miliauskas.lt>, 2007-2009, 2010. # Gintautas Miliauskas <gintautas@miliauskas.lt>, 2007-2009, 2010.
# Aurimas Černius <aurisc4@gmail.com>, 2013, 2014, 2015, 2016, 2017, 2018. # Aurimas Černius <aurisc4@gmail.com>, 2013, 2014, 2015, 2016, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: lt\n" "Project-Id-Version: lt\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-03-01 18:57+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-03 13:37+0200\n" "POT-Creation-Date: 2017-08-29 06:41+0000\n"
"PO-Revision-Date: 2017-08-29 15:57+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n" "Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n" "Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n" "Language: lt\n"
@@ -49,118 +50,134 @@ msgid "Move window to last workspace"
msgstr "Perkelti langą į pastarąją darbo sritį" msgstr "Perkelti langą į pastarąją darbo sritį"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Perkelti langą į kairiau esančią darbo sritį"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Perkelti langą į dešiniau esančią darbo sritį"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Perkelti langą į aukščiau esančią darbo sritį" msgstr "Perkelti langą į aukščiau esančią darbo sritį"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Perkelti langą į žemiau esančią darbo sritį" msgstr "Perkelti langą į žemiau esančią darbo sritį"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Perkelti langą į kairiau esantį monitorių" msgstr "Perkelti langą į kairiau esantį monitorių"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Perkelti langą į dešiniau esantį monitorių" msgstr "Perkelti langą į dešiniau esantį monitorių"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Perkelti langą į aukščiau esantį monitorių" msgstr "Perkelti langą į aukščiau esantį monitorių"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Perkelti langą į žemiau esantį monitorių" msgstr "Perkelti langą į žemiau esantį monitorių"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Pereiti tarp programų" msgstr "Pereiti tarp programų"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Pereiti į ankstesnę programą" msgstr "Pereiti į ankstesnę programą"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Pereiti tarp langų" msgstr "Pereiti tarp langų"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Pereiti į ankstesnį langą" msgstr "Pereiti į ankstesnį langą"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Pereiti tarp programos langų" msgstr "Pereiti tarp programos langų"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Pereiti į ankstesnį programos langą" msgstr "Pereiti į ankstesnį programos langą"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Pereiti tarp sistemos valdiklių" msgstr "Pereiti tarp sistemos valdiklių"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Pereiti prie ankstesnio sistemos valdiklio" msgstr "Pereiti prie ankstesnio sistemos valdiklio"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Tiesiogiai pereiti tarp langų" msgstr "Tiesiogiai pereiti tarp langų"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Tiesiogiai pereiti į ankstesnį langą" msgstr "Tiesiogiai pereiti į ankstesnį langą"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Tiesiogiai pereiti tarp programos langų" msgstr "Tiesiogiai pereiti tarp programos langų"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Tiesiogiai pereiti prie ankstesnio programos lango" msgstr "Tiesiogiai pereiti prie ankstesnio programos lango"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Tiesiogiai pereiti tarp sistemos valdiklių" msgstr "Tiesiogiai pereiti tarp sistemos valdiklių"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Tiesiogiai pereiti prie ankstesnio sistemos valdiklio" msgstr "Tiesiogiai pereiti prie ankstesnio sistemos valdiklio"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Paslėpti visus įprastinius langus" msgstr "Paslėpti visus įprastinius langus"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Persijungti į darbo sritį Nr.1" msgstr "Persijungti į darbo sritį Nr.1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Persijungti į darbo sritį Nr.2" msgstr "Persijungti į darbo sritį Nr.2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Persijungti į darbo sritį Nr.3" msgstr "Persijungti į darbo sritį Nr.3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Persijungti į darbo sritį Nr.4" msgstr "Persijungti į darbo sritį Nr.4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Persijungti į pastarąją darbo sritį" msgstr "Persijungti į pastarąją darbo sritį"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Perkelti į darbo sritį kairėje"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Perkelti į darbo sritį dešinėje"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Perkelti į darbo sritį viršuje" msgstr "Perkelti į darbo sritį viršuje"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Perkelti į darbo sritį apačioje" msgstr "Perkelti į darbo sritį apačioje"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sistema" msgstr "Sistema"
@@ -172,10 +189,6 @@ msgstr "Rodyti komandų paleidimo langelį"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Rodyti veiklų apžvalgą" msgstr "Rodyti veiklų apžvalgą"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Atkurti klaviatūros trumpinius"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Langai" msgstr "Langai"
@@ -201,51 +214,55 @@ msgid "Restore window"
msgstr "Atkurti lango dydį" msgstr "Atkurti lango dydį"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Perjungti lango sutraukimo būseną"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Užverti langą" msgstr "Užverti langą"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Slėpti langą" msgstr "Slėpti langą"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Perkelti langą" msgstr "Perkelti langą"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Keisti lango dydį" msgstr "Keisti lango dydį"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Perjungti lango buvimo visose darbo srityse būseną" msgstr "Perjungti lango buvimo visose darbo srityse būseną"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "" msgstr ""
"Iškelti langą, jei jis uždengtas kito lango, priešingu atveju jį nuleisti" "Iškelti langą, jei jis uždengtas kito lango, priešingu atveju jį nuleisti"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Iškelti langą virš kitų langų" msgstr "Iškelti langą virš kitų langų"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Nuleisti langą žemiau kitų langų" msgstr "Nuleisti langą žemiau kitų langų"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Išdidinti langą vertikaliai" msgstr "Išdidinti langą vertikaliai"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Išdidinti langą horizontaliai" msgstr "Išdidinti langą horizontaliai"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Rodyti skyrimą kairėje" msgstr "Rodyti skyrimą kairėje"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Rodyti skyrimą dešinėje" msgstr "Rodyti skyrimą dešinėje"
@@ -389,6 +406,16 @@ msgid "Enable experimental features"
msgstr "Įjungti eksperimentines savybes" msgstr "Įjungti eksperimentines savybes"
#: data/org.gnome.mutter.gschema.xml.in:108 #: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “scale-monitor-"
#| "framebuffer” — makes mutter default to layout logical monitors in a "
#| "logical pixel coordinate space, while scaling monitor framebuffers "
#| "instead of window content, to manage HiDPI monitors. Does not require a "
#| "restart."
msgid "" msgid ""
"To enable experimental features, add the feature keyword to the list. " "To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
@@ -483,56 +510,10 @@ msgstr "Persijungti į VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Iš naujo įjungti trumpinius" msgstr "Iš naujo įjungti trumpinius"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Leisti pagriebimus su XWayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Leisti turėti omenyje X11 programų, veikiančių Xwayland, išduotus "
"klaviatūros pagriebimus. Tam, kad X11 pagriebimas būtų turimas omenyje "
"naudojant Wayland, klientas privalo arba siųsti tam tikrą X11 ClientMessage "
"į šakninį langą arba būti tarp programų, esančių rakto „xwayland-grab-access-"
"rules“ baltajame sąraše."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland programos, kurioms leidžiama išduoti klaviatūros pagriebimus"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Išvardyti X11 langų, kuriems naudojant Wayland leidžiama ar neleidžiama "
"išduoti X11 klaviatūros pagriebimus, išteklių pavadinimus ar išteklių "
"klases. Nurodyto lango ištekliaus pavadinimas ar ištekliaus klasė gali būti "
"gauta naudojant komandą „xprop WM_CLASS“. Reikšmėse yra palaikomi pakaitos "
"simboliai „*“ ir „?“. Reikšmės prasidedančios „!“ yra įtraukiamos į juodąjį "
"sąrašą (tam, kad būtų panaikintos iš numatytojo sistemos sąrašo) ir turi "
"pirmumo teisę baltojo sąrašo atžvilgiu. Į numatytąjį sistemos sąrašą įeina "
"šios programos: „@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@“. Naudotojai gali "
"panaikinti esamą pagriebimą, naudodami tam tikrą klaviatūros trumpinį, kuris "
"apibrėžtas rakto susiejimo raktu „restore-shortcuts“."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Veiksenos perjungimas (Grupė %d)" msgstr "Veiksenos perjungimas (Grupė %d)"
@@ -540,37 +521,37 @@ msgstr "Veiksenos perjungimas (Grupė %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Perjungti monitorių" msgstr "Perjungti monitorių"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Rodyti pagalbą ekrane" msgstr "Rodyti pagalbą ekrane"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Integruotas vaizduoklis" msgstr "Integruotas vaizduoklis"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Nežinomas" msgstr "Nežinomas"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nežinomas vaizduoklis" msgstr "Nežinomas vaizduoklis"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -585,46 +566,42 @@ msgstr "Skambučio įvykis"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Nepavyko atverti X Window sistemos vaizduoklio „%s“\n" msgstr "Nepavyko atverti X Window sistemos vaizduoklio „%s“\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Išjungti susijungimą su sesijos tvarkytuve" msgstr "Išjungti susijungimą su sesijos tvarkytuve"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Pakeisti veikiančią langų tvarkytuvę" msgstr "Pakeisti veikiančią langų tvarkytuvę"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Nurodyti sesijos tvarkymo ID" msgstr "Nurodyti sesijos tvarkymo ID"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Naudotinas X ekranas" msgstr "Naudotinas X ekranas"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicializuoti sesiją iš išsaugojimo failo" msgstr "Inicializuoti sesiją iš išsaugojimo failo"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Sinchronizuoti X iškvietimus" msgstr "Sinchronizuoti X iškvietimus"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Vykdyti kaip wayland kompozitorių" msgstr "Vykdyti kaip wayland kompozitorių"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Vykdyti kaip įdėtinį kompozitorių" msgstr "Vykdyti kaip įdėtinį kompozitorių"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Vykdyti kaip visą vaizduoklio serverį, o ne įdėtinį" msgstr "Vykdyti kaip visą vaizduoklio serverį, o ne įdėtinį"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Paleisti su X11 realizacija"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -678,7 +655,7 @@ msgstr "Naudojamas Mutter įskiepis"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Darbo sritis %d" msgstr "Darbo sritis %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -687,7 +664,7 @@ msgstr ""
"Vaizduoklis „%s“ jau turi langų tvarkytuvę; pabandykite pakeisti esamą langų " "Vaizduoklis „%s“ jau turi langų tvarkytuvę; pabandykite pakeisti esamą langų "
"tvarkytuvę, naudodami parametrą --replace." "tvarkytuvę, naudodami parametrą --replace."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n" msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n"
@@ -696,12 +673,12 @@ msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter buvo sukompiliuota be išsamaus veikimo veiksenos\n" msgstr "Mutter buvo sukompiliuota be išsamaus veikimo veiksenos\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Veiksenos perjungimas: veiksena %d" msgstr "Veiksenos perjungimas: veiksena %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -714,21 +691,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (kompiuteryje %s)" msgstr "%s (kompiuteryje %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Perkelti langą į kairiau esančią darbo sritį"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Perkelti langą į dešiniau esančią darbo sritį"
#~ msgid "Move to workspace left"
#~ msgstr "Perkelti į darbo sritį kairėje"
#~ msgid "Move to workspace right"
#~ msgstr "Perkelti į darbo sritį dešinėje"
#~ msgid "Toggle shaded state"
#~ msgstr "Perjungti lango sutraukimo būseną"
#~ msgid "Failed to scan themes directory: %s\n" #~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Nepavyko nuskanuoti temų aplanko: %s\n" #~ msgstr "Nepavyko nuskanuoti temų aplanko: %s\n"

220
po/lv.po
View File

@@ -7,13 +7,14 @@
# Raivis Dejus <orvils@gmail.com>, 2006, 2007, 2009. # Raivis Dejus <orvils@gmail.com>, 2006, 2007, 2009.
# Rudolfs <rudolfs.mazurs@gmail.com>, 2011. # Rudolfs <rudolfs.mazurs@gmail.com>, 2011.
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012. # Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2016, 2017, 2018. # Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2016, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: lv\n" "Project-Id-Version: lv\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-25 15:45+0200\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-09-03 19:25+0200\n"
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n" "Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n" "Language: lv\n"
@@ -49,118 +50,134 @@ msgid "Move window to last workspace"
msgstr "Pārvietot logu uz pēdējo darbvietu" msgstr "Pārvietot logu uz pēdējo darbvietu"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Pārvietot logu uz darbvietu pa kreisi"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Pārvietot logu uz darbvietu pa labi"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Pārvietot logu uz darbvietu augšup" msgstr "Pārvietot logu uz darbvietu augšup"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Pārvietot logu uz darbvietu lejup" msgstr "Pārvietot logu uz darbvietu lejup"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Pārvietot logu uz monitoru pa kreisi" msgstr "Pārvietot logu uz monitoru pa kreisi"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Pārvietot logu uz monitoru pa labi" msgstr "Pārvietot logu uz monitoru pa labi"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Pārvietot logu uz monitoru augšup" msgstr "Pārvietot logu uz monitoru augšup"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Pārvietot logu uz monitoru lejup" msgstr "Pārvietot logu uz monitoru lejup"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Pārslēgt lietotnes" msgstr "Pārslēgt lietotnes"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Pārslēgties uz iepriekšējo lietotni" msgstr "Pārslēgties uz iepriekšējo lietotni"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Pārslēgt logus" msgstr "Pārslēgt logus"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Pārslēgties uz iepriekšējo logu" msgstr "Pārslēgties uz iepriekšējo logu"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Pārslēgt vienas lietotnes logus" msgstr "Pārslēgt vienas lietotnes logus"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Pārslēgties uz lietotnes iepriekšējo logu" msgstr "Pārslēgties uz lietotnes iepriekšējo logu"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Pārslēgt sistēmas vadīklas" msgstr "Pārslēgt sistēmas vadīklas"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Pārslēgties uz iepriekšējo sistēmas vadīklu" msgstr "Pārslēgties uz iepriekšējo sistēmas vadīklu"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Pārslēgties starp logiem tieši" msgstr "Pārslēgties starp logiem tieši"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Pārslēgties tieši uz iepriekšējo logu" msgstr "Pārslēgties tieši uz iepriekšējo logu"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Pārslēgties starp lietotnes logiem tieši" msgstr "Pārslēgties starp lietotnes logiem tieši"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Pārslēgties tieši uz iepriekšējo lietotnes logu" msgstr "Pārslēgties tieši uz iepriekšējo lietotnes logu"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Pārslēgt sistēmas vadīklas tieši" msgstr "Pārslēgt sistēmas vadīklas tieši"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Pārslēgties tieši uz iepriekšējo sistēmas vadīklu" msgstr "Pārslēgties tieši uz iepriekšējo sistēmas vadīklu"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Slēpt visus parastos logus" msgstr "Slēpt visus parastos logus"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Pārslēgties uz 1. darbvietu" msgstr "Pārslēgties uz 1. darbvietu"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Pārslēgties uz 2. darbvietu" msgstr "Pārslēgties uz 2. darbvietu"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Pārslēgties uz 3. darbvietu" msgstr "Pārslēgties uz 3. darbvietu"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Pārslēgties uz 4. darbvietu" msgstr "Pārslēgties uz 4. darbvietu"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Pārslēgties uz pēdējo darbvietu" msgstr "Pārslēgties uz pēdējo darbvietu"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Pāriet uz darbvietu pa kreisi"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Pāriet uz darbvietu pa labi"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Pāriet uz darbvietu augšup" msgstr "Pāriet uz darbvietu augšup"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Pāriet uz darbvietu lejup" msgstr "Pāriet uz darbvietu lejup"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sistēma" msgstr "Sistēma"
@@ -172,10 +189,6 @@ msgstr "Rādīt palaišanas komandrindu"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Rādīt aktivitāšu pārskatu" msgstr "Rādīt aktivitāšu pārskatu"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Atjaunot tastatūras saīsnes"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Logi" msgstr "Logi"
@@ -201,50 +214,54 @@ msgid "Restore window"
msgstr "Atjaunot loga izmēru" msgstr "Atjaunot loga izmēru"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Pārslēgt ēnoto stāvokli"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Aizvērt logu" msgstr "Aizvērt logu"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Paslēpt logu" msgstr "Paslēpt logu"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Pārvietot logu" msgstr "Pārvietot logu"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Mainīt loga izmēru" msgstr "Mainīt loga izmēru"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Pārslēgt, vai logam jābūt visās darbvietās vai vienā" msgstr "Pārslēgt, vai logam jābūt visās darbvietās vai vienā"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Pacelt logu, ja to aizsedz, citādi pazemināt" msgstr "Pacelt logu, ja to aizsedz, citādi pazemināt"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Pacelt logu virs citiem logiem" msgstr "Pacelt logu virs citiem logiem"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Pazemināt logu zem citiem logiem" msgstr "Pazemināt logu zem citiem logiem"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maksimizēt logu vertikāli" msgstr "Maksimizēt logu vertikāli"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maksimizēt logu horizontāli" msgstr "Maksimizēt logu horizontāli"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Izvietot kreisajā ekrāna pusē" msgstr "Izvietot kreisajā ekrāna pusē"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Izvietot labajā ekrāna pusē" msgstr "Izvietot labajā ekrāna pusē"
@@ -388,6 +405,16 @@ msgid "Enable experimental features"
msgstr "Ieslēgt eksperimentālās iespējas" msgstr "Ieslēgt eksperimentālās iespējas"
#: data/org.gnome.mutter.gschema.xml.in:108 #: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “scale-monitor-"
#| "framebuffer” — makes mutter default to layout logical monitors in a "
#| "logical pixel coordinate space, while scaling monitor framebuffers "
#| "instead of window content, to manage HiDPI monitors. Does not require a "
#| "restart."
msgid "" msgid ""
"To enable experimental features, add the feature keyword to the list. " "To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given " "Whether the feature requires restarting the compositor depends on the given "
@@ -408,10 +435,11 @@ msgstr ""
"nākotnē strādās. Pašlaik pieejamie atslēgvārdi: • “scale-monitor-" "nākotnē strādās. Pašlaik pieejamie atslēgvārdi: • “scale-monitor-"
"framebuffer” — liek mutter pēc noklusējuma izkārtot loģiskos monitorus " "framebuffer” — liek mutter pēc noklusējuma izkārtot loģiskos monitorus "
"loģisko pikseļu koordināšu telpā, kamēr mērogo monitora kadru buferus, nevis " "loģisko pikseļu koordināšu telpā, kamēr mērogo monitora kadru buferus, nevis "
"loga saturu, lai pārvaldītu HiDPI monitorus. Pārstartēšana nav nepieciešama. " "loga saturu, lai pārvaldītu HiDPI monitorus. Pārstartēšana nav nepieciešama."
"• “remote-desktop” — ieslēdz attālinātās darbvirsmas atbalstu. Lai " " • “remote-desktop” — "
"atbalstītu attālināto darbvirsmu ar ekrāna koplietošanu, jābūt arī ieslēgtam " "ieslēdz attālinātās darbvirsmas atbalstu. Lai atbalstītu attālināto"
"“screen-cast”. • “screen-cast” — ieslēdz ekrānraides atbalstu." " darbvirsmu ar ekrāna koplietošanu, jābūt arī ieslēgtam “screen-cast”. •"
" “screen-cast” — ieslēdz ekrānraides atbalstu."
#: data/org.gnome.mutter.gschema.xml.in:145 #: data/org.gnome.mutter.gschema.xml.in:145
msgid "Select window from tab popup" msgid "Select window from tab popup"
@@ -481,55 +509,10 @@ msgstr "Pārslēgties uz VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Atkal ieslēdz saīsnes" msgstr "Atkal ieslēdz saīsnes"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Atļaut Xwayland satvērienus"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Atļaut ņemt vērā tastatūras satveršanu, ko pieprasa X11 lietotnes, kas"
" darbojas Xwayland vidē. Lai ņemtu vērā X11 tvērienus Wayland vidē, klientam"
" arī jāsūta specifisks X11 ClientMessage uz root (saknes) logu, vai arī jābūt"
" lietotņu baltajā sarakstā atslēgā “xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland lietotnes, kuras drīkst pieprasīt tastatūras satveršanu"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Saraksts ar resursu nosaukumiem vai resursu klasi X11 logiem, kuri vai nu"
" drīkst, vai nedrīkst pieprasīt X11 tastatūras satveršanu zem Xwayland."
" Resursa nosaukumu vai resursa klasi dotajam X11 logam var iegūt, izmantojot"
" komandu “xprop WM_CLASS”. Vērtībās ir atbalstītas aizstājējzīmes “*” un “?”."
" Vērtības, ka sākas ar “!”, ir melnajā sarakstā, kam ir prioritāte pār balto"
" sarakstu, kad atsauc lietotnes no noklusējuma sistēmas saraksta. Noklusējuma"
" sistēmas sarakstā iekļauj sekojošās lietotnes: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Lietotāji var pārtraukt esošo"
" tvērienu, izmantojot noteiktus tastatūras īsinājumtaustiņus, kas ir noteikti"
" “restore-shortcuts” atslēgā."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Režīma slēdzis (grupa %d)" msgstr "Režīma slēdzis (grupa %d)"
@@ -537,37 +520,37 @@ msgstr "Režīma slēdzis (grupa %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Pārslēgt monitoru" msgstr "Pārslēgt monitoru"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Rādīt palīdzību uz ekrāna" msgstr "Rādīt palīdzību uz ekrāna"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Iebūvēts displejs" msgstr "Iebūvēts displejs"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Nezināms" msgstr "Nezināms"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nezināms displejs" msgstr "Nezināms displejs"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -582,46 +565,42 @@ msgstr "Zvana notikums"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Neizdevās atvērt X logu sistēmas displeju “%s”\n" msgstr "Neizdevās atvērt X logu sistēmas displeju “%s”\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Deaktivēt savienojumu ar sesiju pārvaldnieku" msgstr "Deaktivēt savienojumu ar sesiju pārvaldnieku"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Aizvietot darbojošos logu pārvaldnieku" msgstr "Aizvietot darbojošos logu pārvaldnieku"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Norādiet sesiju pārvaldības ID" msgstr "Norādiet sesiju pārvaldības ID"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Lietojamais X displejs" msgstr "Lietojamais X displejs"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicializēt sesiju no saglabātās datnes" msgstr "Inicializēt sesiju no saglabātās datnes"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Padarīt X izsaukumus sinhronus" msgstr "Padarīt X izsaukumus sinhronus"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Palaist kā wayland kompozitoru" msgstr "Palaist kā wayland kompozitoru"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Palaist kā ligzdotu kompozitoru" msgstr "Palaist kā ligzdotu kompozitoru"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Palaist kā pilnu attēlošanas serveri, nevis iegultu" msgstr "Palaist kā pilnu attēlošanas serveri, nevis iegultu"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Palaist ar X11 aizmuguri"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -676,7 +655,7 @@ msgstr "Izmantojamais mutter spraudnis"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Darbvieta %d" msgstr "Darbvieta %d"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -685,7 +664,7 @@ msgstr ""
"Displejam “%s” jau ir logu pārvaldnieks; mēģiniet lietot --replace iespēju, " "Displejam “%s” jau ir logu pārvaldnieks; mēģiniet lietot --replace iespēju, "
"lai aizvietotu pašreizējo logu pārvaldnieku." "lai aizvietotu pašreizējo logu pārvaldnieku."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Ekrāna %d displejs “%s“ nav derīgs\n" msgstr "Ekrāna %d displejs “%s“ nav derīgs\n"
@@ -699,7 +678,7 @@ msgstr "Mutter tika kompilēts bez detalizētas izvades režīma atbalsta\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Režīma slēdzis: režīms %d" msgstr "Režīma slēdzis: režīms %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -711,3 +690,4 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (uz %s)" msgstr "%s (uz %s)"

518
po/nl.po
View File

@@ -5,14 +5,13 @@
# Michiel Sikkes <michiels@gnome.org>, 2005. # Michiel Sikkes <michiels@gnome.org>, 2005.
# Wouter Bolsterlee <wbolster@gnome.org>, 20062012. # Wouter Bolsterlee <wbolster@gnome.org>, 20062012.
# Hannie Dumoleyn <hannie@ubuntu-nl.org>, 2016. # Hannie Dumoleyn <hannie@ubuntu-nl.org>, 2016.
# Nathan Follens <nthn@unseen.is>, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-26 07:59+0000\n" "POT-Creation-Date: 2016-03-23 22:41+0100\n"
"PO-Revision-Date: 2018-02-26 22:05+0100\n" "PO-Revision-Date: 2016-10-17 18:24+0200\n"
"Last-Translator: Justin van Steijn <jvs@fsfe.org>\n" "Last-Translator: Hannie Dumoleyn <hannie@ubuntu-nl.org>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n" "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
"Language: nl\n" "Language: nl\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -20,257 +19,273 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Project-Style: gnome\n" "X-Project-Style: gnome\n"
"X-Generator: Poedit 1.8.11\n" "X-Generator: Lokalize 1.5\n"
#: data/50-mutter-navigation.xml:6 #: ../data/50-mutter-navigation.xml.in.h:1
msgid "Navigation" msgid "Navigation"
msgstr "Navigatie" msgstr "Navigatie"
#: data/50-mutter-navigation.xml:9 #: ../data/50-mutter-navigation.xml.in.h:2
msgid "Move window to workspace 1" msgid "Move window to workspace 1"
msgstr "Venster verplaatsen naar werkblad 1" msgstr "Venster verplaatsen naar werkblad 1"
#: data/50-mutter-navigation.xml:12 #: ../data/50-mutter-navigation.xml.in.h:3
msgid "Move window to workspace 2" msgid "Move window to workspace 2"
msgstr "Venster verplaatsen naar werkblad 2" msgstr "Venster verplaatsen naar werkblad 2"
#: data/50-mutter-navigation.xml:15 #: ../data/50-mutter-navigation.xml.in.h:4
msgid "Move window to workspace 3" msgid "Move window to workspace 3"
msgstr "Venster verplaatsen naar werkblad 3" msgstr "Venster verplaatsen naar werkblad 3"
#: data/50-mutter-navigation.xml:18 #: ../data/50-mutter-navigation.xml.in.h:5
msgid "Move window to workspace 4" msgid "Move window to workspace 4"
msgstr "Venster verplaatsen naar werkblad 4" msgstr "Venster verplaatsen naar werkblad 4"
#: data/50-mutter-navigation.xml:21 #: ../data/50-mutter-navigation.xml.in.h:6
msgid "Move window to last workspace" msgid "Move window to last workspace"
msgstr "Venster verplaatsen naar laatste werkblad" msgstr "Venster verplaatsen naar laatste werkblad"
#: data/50-mutter-navigation.xml:24 #: ../data/50-mutter-navigation.xml.in.h:7
msgid "Move window one workspace to the left"
msgstr "Venster één werkblad naar links verplaatsen"
#: ../data/50-mutter-navigation.xml.in.h:8
msgid "Move window one workspace to the right"
msgstr "Venster één werkblad naar rechts verplaatsen"
#: ../data/50-mutter-navigation.xml.in.h:9
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Venster één werkblad naar boven verplaatsen" msgstr "Venster één werkblad naar boven verplaatsen"
#: data/50-mutter-navigation.xml:27 #: ../data/50-mutter-navigation.xml.in.h:10
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Venster één werkblad naar beneden verplaatsen" msgstr "Venster één werkblad naar beneden verplaatsen"
#: data/50-mutter-navigation.xml:30 #: ../data/50-mutter-navigation.xml.in.h:11
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Venster één monitor naar links verplaatsen" msgstr "Venster één monitor naar links verplaatsen"
#: data/50-mutter-navigation.xml:33 #: ../data/50-mutter-navigation.xml.in.h:12
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Venster één monitor naar rechts verplaatsen" msgstr "Venster één monitor naar rechts verplaatsen"
#: data/50-mutter-navigation.xml:36 #: ../data/50-mutter-navigation.xml.in.h:13
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Venster één monitor naar boven verplaatsen" msgstr "Venster één monitor naar boven verplaatsen"
#: data/50-mutter-navigation.xml:39 #: ../data/50-mutter-navigation.xml.in.h:14
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Venster één monitor naar beneden verplaatsen" msgstr "Venster één monitor naar beneden verplaatsen"
#: data/50-mutter-navigation.xml:43 #: ../data/50-mutter-navigation.xml.in.h:15
msgid "Switch applications" msgid "Switch applications"
msgstr "Tussen toepassingen schakelen" msgstr "Tussen toepassingen schakelen"
#: data/50-mutter-navigation.xml:48 #: ../data/50-mutter-navigation.xml.in.h:16
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Schakelen naar vorige toepassing" msgstr "Schakelen naar vorige toepassing"
#: data/50-mutter-navigation.xml:52 #: ../data/50-mutter-navigation.xml.in.h:17
msgid "Switch windows" msgid "Switch windows"
msgstr "Tussen vensters schakelen" msgstr "Tussen vensters schakelen"
#: data/50-mutter-navigation.xml:57 #: ../data/50-mutter-navigation.xml.in.h:18
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Schakelen naar vorig venster" msgstr "Schakelen naar vorig venster"
#: data/50-mutter-navigation.xml:61 #: ../data/50-mutter-navigation.xml.in.h:19
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Wisselen van venster binnen een toepassing" msgstr "Wisselen van venster binnen een toepassing"
#: data/50-mutter-navigation.xml:66 #: ../data/50-mutter-navigation.xml.in.h:20
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Wisselen naar vorig gebruikte venster van een toepassing" msgstr "Wisselen naar vorig gebruikte venster van een toepassing"
#: data/50-mutter-navigation.xml:70 #: ../data/50-mutter-navigation.xml.in.h:21
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Systeemschermen wisselen" msgstr "Systeemschermen wisselen"
#: data/50-mutter-navigation.xml:75 #: ../data/50-mutter-navigation.xml.in.h:22
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Schakelen naar vorige systeemregelaar" msgstr "Schakelen naar vorige systeemregelaar"
#: data/50-mutter-navigation.xml:79 #: ../data/50-mutter-navigation.xml.in.h:23
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Direct tussen vensters schakelen" msgstr "Direct tussen vensters schakelen"
#: data/50-mutter-navigation.xml:84 #: ../data/50-mutter-navigation.xml.in.h:24
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Schakel direct naar vorig venster" msgstr "Schakel direct naar vorig venster"
#: data/50-mutter-navigation.xml:88 #: ../data/50-mutter-navigation.xml.in.h:25
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Direct wisselen van venster binnen een toepassing" msgstr "Direct wisselen van venster binnen een toepassing"
#: data/50-mutter-navigation.xml:93 #: ../data/50-mutter-navigation.xml.in.h:26
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Direct wisselen naar vorig venster van een toepassing" msgstr "Direct wisselen naar vorig venster van een toepassing"
#: data/50-mutter-navigation.xml:97 #: ../data/50-mutter-navigation.xml.in.h:27
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Direct tussen systeemschermen wisselen" msgstr "Direct tussen systeemschermen wisselen"
#: data/50-mutter-navigation.xml:102 #: ../data/50-mutter-navigation.xml.in.h:28
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Direct schakelen naar vorige systeemregelaar" msgstr "Direct schakelen naar vorige systeemregelaar"
#: data/50-mutter-navigation.xml:105 #: ../data/50-mutter-navigation.xml.in.h:29
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Alle normale vensters verbergen" msgstr "Alle normale vensters verbergen"
#: data/50-mutter-navigation.xml:108 #: ../data/50-mutter-navigation.xml.in.h:30
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Schakelen naar werkblad 1" msgstr "Schakelen naar werkblad 1"
#: data/50-mutter-navigation.xml:111 #: ../data/50-mutter-navigation.xml.in.h:31
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Schakelen naar werkblad 2" msgstr "Schakelen naar werkblad 2"
#: data/50-mutter-navigation.xml:114 #: ../data/50-mutter-navigation.xml.in.h:32
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Schakelen naar werkblad 3" msgstr "Schakelen naar werkblad 3"
#: data/50-mutter-navigation.xml:117 #: ../data/50-mutter-navigation.xml.in.h:33
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Schakelen naar werkblad 4" msgstr "Schakelen naar werkblad 4"
#: data/50-mutter-navigation.xml:120 #: ../data/50-mutter-navigation.xml.in.h:34
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Overschakelen naar laatste werkblad" msgstr "Overschakelen naar laatste werkblad"
#: data/50-mutter-navigation.xml:123 #: ../data/50-mutter-navigation.xml.in.h:35
msgid "Move to workspace left"
msgstr "Verplaatsen naar werkblad links"
#: ../data/50-mutter-navigation.xml.in.h:36
msgid "Move to workspace right"
msgstr "Verplaatsen naar werkblad rechts"
#: ../data/50-mutter-navigation.xml.in.h:37
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Verplaatsen naar werkblad hierboven" msgstr "Verplaatsen naar werkblad hierboven"
#: data/50-mutter-navigation.xml:126 #: ../data/50-mutter-navigation.xml.in.h:38
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Verplaatsen naar werkblad hieronder" msgstr "Verplaatsen naar werkblad hieronder"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: ../data/50-mutter-system.xml.in.h:1
msgid "System" msgid "System"
msgstr "Systeem" msgstr "Systeem"
#: data/50-mutter-system.xml:8 #: ../data/50-mutter-system.xml.in.h:2
msgid "Show the run command prompt" msgid "Show the run command prompt"
msgstr "Het opdrachtregelvenster tonen" msgstr "Het opdrachtregelvenster tonen"
#: data/50-mutter-system.xml:10 #: ../data/50-mutter-system.xml.in.h:3
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Het activiteitenoverzicht tonen" msgstr "Het activiteitenoverzicht tonen"
#: data/50-mutter-wayland.xml:8 #: ../data/50-mutter-windows.xml.in.h:1
msgid "Restore the keyboard shortcuts"
msgstr "Sneltoetsen opnieuw instellen"
#: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Vensters" msgstr "Vensters"
#: data/50-mutter-windows.xml:8 #: ../data/50-mutter-windows.xml.in.h:2
msgid "Activate the window menu" msgid "Activate the window menu"
msgstr "Venstermenu activeren" msgstr "Venstermenu activeren"
#: data/50-mutter-windows.xml:10 #: ../data/50-mutter-windows.xml.in.h:3
msgid "Toggle fullscreen mode" msgid "Toggle fullscreen mode"
msgstr "Volledig-schermmodus omschakelen" msgstr "Volledig-schermmodus omschakelen"
#: data/50-mutter-windows.xml:12 #: ../data/50-mutter-windows.xml.in.h:4
msgid "Toggle maximization state" msgid "Toggle maximization state"
msgstr "Maximalisatie in- of uitschakelen" msgstr "Maximalisatie in- of uitschakelen"
#: data/50-mutter-windows.xml:14 #: ../data/50-mutter-windows.xml.in.h:5
msgid "Maximize window" msgid "Maximize window"
msgstr "Venster maximaliseren" msgstr "Venster maximaliseren"
#: data/50-mutter-windows.xml:16 #: ../data/50-mutter-windows.xml.in.h:6
msgid "Restore window" msgid "Restore window"
msgstr "Venster herstellen" msgstr "Venster herstellen"
#: data/50-mutter-windows.xml:18 #: ../data/50-mutter-windows.xml.in.h:7
msgid "Toggle shaded state"
msgstr "Oprollen in- of uitschakelen"
#: ../data/50-mutter-windows.xml.in.h:8
msgid "Close window" msgid "Close window"
msgstr "Venster sluiten" msgstr "Venster sluiten"
#: data/50-mutter-windows.xml:20 #: ../data/50-mutter-windows.xml.in.h:9
msgid "Hide window" msgid "Hide window"
msgstr "Venster verbergen" msgstr "Venster verbergen"
#: data/50-mutter-windows.xml:22 #: ../data/50-mutter-windows.xml.in.h:10
msgid "Move window" msgid "Move window"
msgstr "Venster verplaatsen" msgstr "Venster verplaatsen"
#: data/50-mutter-windows.xml:24 #: ../data/50-mutter-windows.xml.in.h:11
msgid "Resize window" msgid "Resize window"
msgstr "Vensterafmetingen veranderen" msgstr "Vensterafmetingen veranderen"
#: data/50-mutter-windows.xml:27 #: ../data/50-mutter-windows.xml.in.h:12
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Schakelen tussen venster op alle werkbladen zichtbaar of op één" msgstr "Schakelen tussen venster op alle werkbladen zichtbaar of op één"
#: data/50-mutter-windows.xml:29 #: ../data/50-mutter-windows.xml.in.h:13
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Vensters naar voren halen indien bedekt of anders naar achter brengen" msgstr "Vensters naar voren halen indien bedekt of anders naar achter brengen"
#: data/50-mutter-windows.xml:31 #: ../data/50-mutter-windows.xml.in.h:14
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Venster voor andere vensters halen" msgstr "Venster voor andere vensters halen"
#: data/50-mutter-windows.xml:33 #: ../data/50-mutter-windows.xml.in.h:15
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Venster achter andere vensters brengen" msgstr "Venster achter andere vensters brengen"
#: data/50-mutter-windows.xml:35 #: ../data/50-mutter-windows.xml.in.h:16
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Venster verticaal maximaliseren" msgstr "Venster verticaal maximaliseren"
#: data/50-mutter-windows.xml:37 #: ../data/50-mutter-windows.xml.in.h:17
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Venster horizontaal maximaliseren" msgstr "Venster horizontaal maximaliseren"
#: data/50-mutter-windows.xml:41 #: ../data/50-mutter-windows.xml.in.h:18
msgid "View split on left" msgid "View split on left"
msgstr "Weergave gesplitst op links" msgstr "Weergave gesplitst op links"
#: data/50-mutter-windows.xml:45 #: ../data/50-mutter-windows.xml.in.h:19
msgid "View split on right" msgid "View split on right"
msgstr "Weergave gesplitst op rechts" msgstr "Weergave gesplitst op rechts"
#: data/mutter.desktop.in:4 #: ../data/mutter.desktop.in.h:1
msgid "Mutter" msgid "Mutter"
msgstr "Mutter" msgstr "Mutter"
#: data/org.gnome.mutter.gschema.xml.in:7 #: ../data/org.gnome.mutter.gschema.xml.in.h:1
msgid "Modifier to use for extended window management operations" msgid "Modifier to use for extended window management operations"
msgstr "Controletoets voor uitgebreide vensterbeheerfunctionaliteit" msgstr "Controletoets voor uitgebreide vensterbeheerfunctionaliteit"
#: data/org.gnome.mutter.gschema.xml.in:8 #: ../data/org.gnome.mutter.gschema.xml.in.h:2
msgid "" msgid ""
"This key will initiate the overlay, which is a combination window overview " "This key will initiate the \"overlay\", which is a combination window "
"and application launching system. The default is intended to be the “Windows " "overview and application launching system. The default is intended to be the "
"key on PC hardware. Its expected that this binding either the default or " "\"Windows key\" on PC hardware. It's expected that this binding either the "
"set to the empty string." "default or set to the empty string."
msgstr "" msgstr ""
"Deze sleutel activeert de overlay, een combinatie van een vensteroverzicht " "Deze sleutel activeert de overlay, een combinatie van een vensteroverzicht "
"en een systeem om toepassingen te starten. Standaard is dit de Windows-" "en een systeem om toepassingen te starten. Standaard is dit de Windows-"
"toets en de bedoeling is dat deze sneltoets ofwel de standaardwaarde bevat " "toets en de bedoeling is dat deze sneltoets ofwel de standaardwaarde bevat "
"ofwel leeggemaakt is." "ofwel leeggemaakt is."
#: data/org.gnome.mutter.gschema.xml.in:20 #: ../data/org.gnome.mutter.gschema.xml.in.h:3
msgid "Attach modal dialogs" msgid "Attach modal dialogs"
msgstr "Blokkerende dialoogvensters vastmaken" msgstr "Blokkerende dialoogvensters vastmaken"
#: data/org.gnome.mutter.gschema.xml.in:21 #: ../data/org.gnome.mutter.gschema.xml.in.h:4
msgid "" msgid ""
"When true, instead of having independent titlebars, modal dialogs appear " "When true, instead of having independent titlebars, modal dialogs appear "
"attached to the titlebar of the parent window and are moved together with " "attached to the titlebar of the parent window and are moved together with "
@@ -280,28 +295,28 @@ msgstr ""
"maar vastgekoppeld aan het achterliggende venster en bewegen daardoor ook " "maar vastgekoppeld aan het achterliggende venster en bewegen daardoor ook "
"mee met het achterliggende venster." "mee met het achterliggende venster."
#: data/org.gnome.mutter.gschema.xml.in:30 #: ../data/org.gnome.mutter.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges" msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Randtegels inschakelen bij het slepen van vensters naar schermranden" msgstr "Randtegels inschakelen bij het slepen van vensters naar schermranden"
#: data/org.gnome.mutter.gschema.xml.in:31 #: ../data/org.gnome.mutter.gschema.xml.in.h:6
msgid "" msgid ""
"If enabled, dropping windows on vertical screen edges maximizes them " "If enabled, dropping windows on vertical screen edges maximizes them "
"vertically and resizes them horizontally to cover half of the available " "vertically and resizes them horizontally to cover half of the available "
"area. Dropping windows on the top screen edge maximizes them completely." "area. Dropping windows on the top screen edge maximizes them completely."
msgstr "" msgstr ""
"Indien ingeschakeld, zal het laten vallen van vensters op verticale " "Indien ingeschakeld dan zal het laten vallen van vensters op verticale "
"schermranden ze verticaal maximaliseren en horizontaal op halve " "schermranden ze verticaal maximaliseren en horizontaal op halve "
"schermgrootte brengen. Het laten vallen van vensters op de bovenrand van het " "schermgrootte brengen. Het laten vallen van vensters op de bovenrand van het "
"scherm maximaliseert ze helemaal." "scherm maximaliseert ze helemaal. "
#: data/org.gnome.mutter.gschema.xml.in:40 #: ../data/org.gnome.mutter.gschema.xml.in.h:7
msgid "Workspaces are managed dynamically" msgid "Workspaces are managed dynamically"
msgstr "Werkbladen worden dynamisch beheerd" msgstr "Werkbladen worden dynamisch beheerd"
#: data/org.gnome.mutter.gschema.xml.in:41 #: ../data/org.gnome.mutter.gschema.xml.in.h:8
msgid "" msgid ""
"Determines whether workspaces are managed dynamically or whether theres a " "Determines whether workspaces are managed dynamically or whether there's a "
"static number of workspaces (determined by the num-workspaces key in org." "static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)." "gnome.desktop.wm.preferences)."
msgstr "" msgstr ""
@@ -309,11 +324,11 @@ msgstr ""
"werkbladen is (gegeven door de sleutel num-workspaces in org.gnome.desktop." "werkbladen is (gegeven door de sleutel num-workspaces in org.gnome.desktop."
"wm.preferences)." "wm.preferences)."
#: data/org.gnome.mutter.gschema.xml.in:50 #: ../data/org.gnome.mutter.gschema.xml.in.h:9
msgid "Workspaces only on primary" msgid "Workspaces only on primary"
msgstr "Werkbladen alleen voor primaire venster" msgstr "Werkbladen alleen voor primaire venster"
#: data/org.gnome.mutter.gschema.xml.in:51 #: ../data/org.gnome.mutter.gschema.xml.in.h:10
msgid "" msgid ""
"Determines whether workspace switching should happen for windows on all " "Determines whether workspace switching should happen for windows on all "
"monitors or only for windows on the primary monitor." "monitors or only for windows on the primary monitor."
@@ -321,11 +336,11 @@ msgstr ""
"Geeft aan of wisselen van werkblad voor vensters op alle schermen of alleen " "Geeft aan of wisselen van werkblad voor vensters op alle schermen of alleen "
"voor vensters op het hoofdscherm moet gebeuren." "voor vensters op het hoofdscherm moet gebeuren."
#: data/org.gnome.mutter.gschema.xml.in:59 #: ../data/org.gnome.mutter.gschema.xml.in.h:11
msgid "No tab popup" msgid "No tab popup"
msgstr "Geen tab-pop-up" msgstr "Geen tab-pop-up"
#: data/org.gnome.mutter.gschema.xml.in:60 #: ../data/org.gnome.mutter.gschema.xml.in.h:12
msgid "" msgid ""
"Determines whether the use of popup and highlight frame should be disabled " "Determines whether the use of popup and highlight frame should be disabled "
"for window cycling." "for window cycling."
@@ -333,38 +348,38 @@ msgstr ""
"Bepaalt of het gebruik van pop-up en markering van het kader uitgeschakeld " "Bepaalt of het gebruik van pop-up en markering van het kader uitgeschakeld "
"wordt voor het vensterbladeren." "wordt voor het vensterbladeren."
#: data/org.gnome.mutter.gschema.xml.in:68 #: ../data/org.gnome.mutter.gschema.xml.in.h:13
msgid "Delay focus changes until the pointer stops moving" msgid "Delay focus changes until the pointer stops moving"
msgstr "Aandacht vertragen totdat de muispijl stopt met bewegen" msgstr "Aandacht vertragen totdat de muispijl stopt met bewegen"
#: data/org.gnome.mutter.gschema.xml.in:69 #: ../data/org.gnome.mutter.gschema.xml.in.h:14
msgid "" msgid ""
"If set to true, and the focus mode is either sloppy or mouse then the " "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
"focus will not be changed immediately when entering a window, but only after " "the focus will not be changed immediately when entering a window, but only "
"the pointer stops moving." "after the pointer stops moving."
msgstr "" msgstr ""
"Indien op true ingesteld en de aandachtsmodus is ofwel sloppy of " "Indien op true ingesteld en de aandachtsmodus is ofwel sloppy of "
"mouse, dan zal de aandacht niet direct veranderd worden bij het binnengaan " "mouse, dan zal de aandacht niet direct veranderd worden bij het binnengaan "
"van een venster, maar slechts wanneer de muispijl stopt met bewegen." "van een venster, maar slechts wanneer de muispijl stopt met bewegen."
#: data/org.gnome.mutter.gschema.xml.in:79 #: ../data/org.gnome.mutter.gschema.xml.in.h:15
msgid "Draggable border width" msgid "Draggable border width"
msgstr "Sleepbare randbreedte" msgstr "Sleepbare randbreedte"
#: data/org.gnome.mutter.gschema.xml.in:80 #: ../data/org.gnome.mutter.gschema.xml.in.h:16
msgid "" msgid ""
"The amount of total draggable borders. If the themes visible borders are " "The amount of total draggable borders. If the theme's visible borders are "
"not enough, invisible borders will be added to meet this value." "not enough, invisible borders will be added to meet this value."
msgstr "" msgstr ""
"Het totaal aantal sleepbare randen. Als de zichtbare randen in het thema " "Het totaal aantal sleepbare randen. Als de zichtbare randen in het thema "
"onvoldoende zijn, worden onzichtbare randen toegevoegd om deze waarde te " "onvoldoende zijn, worden onzichtbare randen toegevoegd om deze waarde te "
"bereiken." "bereiken."
#: data/org.gnome.mutter.gschema.xml.in:89 #: ../data/org.gnome.mutter.gschema.xml.in.h:17
msgid "Auto maximize nearly monitor sized windows" msgid "Auto maximize nearly monitor sized windows"
msgstr "Vensters van bijna-monitorformaat auto-maximaliseren" msgstr "Vensters van bijna-monitorformaat auto-maximaliseren"
#: data/org.gnome.mutter.gschema.xml.in:90 #: ../data/org.gnome.mutter.gschema.xml.in.h:18
msgid "" msgid ""
"If enabled, new windows that are initially the size of the monitor " "If enabled, new windows that are initially the size of the monitor "
"automatically get maximized." "automatically get maximized."
@@ -372,11 +387,11 @@ msgstr ""
"Indien ingeschakeld, worden vensters die initieel ongeveer even groot zijn " "Indien ingeschakeld, worden vensters die initieel ongeveer even groot zijn "
"als de monitor automatisch gemaximaliseerd." "als de monitor automatisch gemaximaliseerd."
#: data/org.gnome.mutter.gschema.xml.in:98 #: ../data/org.gnome.mutter.gschema.xml.in.h:19
msgid "Place new windows in the center" msgid "Place new windows in the center"
msgstr "Plaats nieuwe vensters in het midden" msgstr "Plaats nieuwe vensters in het midden"
#: data/org.gnome.mutter.gschema.xml.in:99 #: ../data/org.gnome.mutter.gschema.xml.in.h:20
msgid "" msgid ""
"When true, the new windows will always be put in the center of the active " "When true, the new windows will always be put in the center of the active "
"screen of the monitor." "screen of the monitor."
@@ -384,251 +399,107 @@ msgstr ""
"Indien waar zullen nieuwe vensters steeds in het midden van het actieve " "Indien waar zullen nieuwe vensters steeds in het midden van het actieve "
"scherm van de monitor geplaatst worden." "scherm van de monitor geplaatst worden."
#: data/org.gnome.mutter.gschema.xml.in:107 #: ../data/org.gnome.mutter.gschema.xml.in.h:21
msgid "Enable experimental features"
msgstr "Experimentele functies inschakelen"
#: data/org.gnome.mutter.gschema.xml.in:108
msgid ""
"To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given "
"feature. Any experimental feature is not required to still be available, or "
"configurable. Dont expect adding anything in this setting to be future "
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
msgstr ""
"Voeg het sleutelwoord van een experimentele functie toe aan de lijst om deze "
"in te schakelen. Of de compositor herstart moet worden vooraleer de functie "
"gebruikt kan worden is afhankelijk van de functie. Experimentele functies "
"die u aan deze lijst toevoegt kunnen op een later moment weer verwijderd of "
"op een andere manier ingesteld worden, waardoor het mogelijk is dat ze dan "
"niet meer werken. Momenteel bruikbare sleutelwoorden: • scale-monitor-"
"framebuffer — zorgt dat mutter standaard logische beeldschermen indeelt in "
"een logische pixelcoördinaatruimte, en beeldschermframebuffers schaalt in "
"plaats van vensterinhoud, om HiDPI-beeldschermen te beheren. Hiervoor is "
"opnieuw opstarten niet vereist. • remote-desktop — schakelt ondersteuning "
"voor bureaubladen op afstand in. Om extern bureaublad met scherm delen in te "
"schakelen, moet screen-cast ook ingeschakeld zijn. • screen-cast — "
"schakelt ondersteuning voor casten van scherm in."
#: data/org.gnome.mutter.gschema.xml.in:145
msgid "Select window from tab popup" msgid "Select window from tab popup"
msgstr "Venster selecteren uit tab-pop-up" msgstr "Venster selecteren uit tab-pop-up"
#: data/org.gnome.mutter.gschema.xml.in:150 #: ../data/org.gnome.mutter.gschema.xml.in.h:22
msgid "Cancel tab popup" msgid "Cancel tab popup"
msgstr "Tab-pop-up annuleren" msgstr "Tab-pop-up annuleren"
#: data/org.gnome.mutter.gschema.xml.in:155 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
msgid "Switch monitor configurations"
msgstr "Tussen beeldschermconfiguraties schakelen"
#: data/org.gnome.mutter.gschema.xml.in:160
msgid "Rotates the built-in monitor configuration"
msgstr "Roteert de ingebouwde beeldschermconfiguratie"
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1" msgid "Switch to VT 1"
msgstr "Schakelen naar VT 1" msgstr "Schakelen naar VT 1"
#: data/org.gnome.mutter.wayland.gschema.xml.in:10 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
msgid "Switch to VT 2" msgid "Switch to VT 2"
msgstr "Schakelen naar VT 2" msgstr "Schakelen naar VT 2"
#: data/org.gnome.mutter.wayland.gschema.xml.in:14 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
msgid "Switch to VT 3" msgid "Switch to VT 3"
msgstr "Schakelen naar VT 3" msgstr "Schakelen naar VT 3"
#: data/org.gnome.mutter.wayland.gschema.xml.in:18 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
msgid "Switch to VT 4" msgid "Switch to VT 4"
msgstr "Schakelen naar VT 4" msgstr "Schakelen naar VT 4"
#: data/org.gnome.mutter.wayland.gschema.xml.in:22 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
msgid "Switch to VT 5" msgid "Switch to VT 5"
msgstr "Schakelen naar VT 5" msgstr "Schakelen naar VT 5"
#: data/org.gnome.mutter.wayland.gschema.xml.in:26 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
msgid "Switch to VT 6" msgid "Switch to VT 6"
msgstr "Schakelen naar VT 6" msgstr "Schakelen naar VT 6"
#: data/org.gnome.mutter.wayland.gschema.xml.in:30 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
msgid "Switch to VT 7" msgid "Switch to VT 7"
msgstr "Schakelen naar VT 7" msgstr "Schakelen naar VT 7"
#: data/org.gnome.mutter.wayland.gschema.xml.in:34 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
msgid "Switch to VT 8" msgid "Switch to VT 8"
msgstr "Schakelen naar VT 8" msgstr "Schakelen naar VT 8"
#: data/org.gnome.mutter.wayland.gschema.xml.in:38 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
msgid "Switch to VT 9" msgid "Switch to VT 9"
msgstr "Schakelen naar VT 9" msgstr "Schakelen naar VT 9"
#: data/org.gnome.mutter.wayland.gschema.xml.in:42 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
msgid "Switch to VT 10" msgid "Switch to VT 10"
msgstr "Schakelen naar VT 10" msgstr "Schakelen naar VT 10"
#: data/org.gnome.mutter.wayland.gschema.xml.in:46 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
msgid "Switch to VT 11" msgid "Switch to VT 11"
msgstr "Schakelen naar VT 11" msgstr "Schakelen naar VT 11"
#: data/org.gnome.mutter.wayland.gschema.xml.in:50 #: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
msgid "Switch to VT 12" msgid "Switch to VT 12"
msgstr "Schakelen naar VT 12" msgstr "Schakelen naar VT 12"
#: data/org.gnome.mutter.wayland.gschema.xml.in:54 #: ../src/backends/meta-monitor-manager.c:518
msgid "Re-enable shortcuts"
msgstr "Sneltoetsen opnieuw inschakelen"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Grabs met Xwayland toestaan"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Toestaan dat rekening wordt gehouden met toetsenbord-grabs door X11-"
"toepassingen die in Xwayland draaien. Om rekening te houden met een X11-grab "
"onder Wayland, moet de client ook: óf een specifieke X11-ClientMessage naar "
"het root-venster sturen, óf vermeld staan in de witte lijst van toepassingen "
"in de sleutel xwayland-grab-access-rules."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland-toepassingen mogen toetsenbord-grabs doen"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:2325
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Moduswisselaar (groep %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:2348
msgid "Switch monitor"
msgstr "Van beeldscherm wisselen"
#: src/backends/meta-input-settings.c:2350
msgid "Show on-screen help"
msgstr "Hulptekst op scherm tonen"
#: src/backends/meta-monitor-manager.c:900
msgid "Built-in display" msgid "Built-in display"
msgstr "Ingebouwd beeldscherm" msgstr "Ingebouwd beeldscherm"
#: src/backends/meta-monitor-manager.c:923 #: ../src/backends/meta-monitor-manager.c:544
msgid "Unknown" msgid "Unknown"
msgstr "Onbekend" msgstr "Onbekend"
#: src/backends/meta-monitor-manager.c:925 #: ../src/backends/meta-monitor-manager.c:546
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Onbekend beeldscherm" msgstr "Onbekend beeldscherm"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: ../src/backends/meta-monitor-manager.c:554
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: ../src/compositor/compositor.c:456
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display \"%s"
"\"."
msgstr "" msgstr ""
"Er is al een andere compositing manager actief op scherm %i van " "Er is al een andere compositing manager actief op scherm %i van "
"beeldscherm %s." "beeldscherm %s."
#: src/core/bell.c:194 #: ../src/core/bell.c:194
msgid "Bell event" msgid "Bell event"
msgstr "Bel-gebeurtenis" msgstr "Bel-gebeurtenis"
#: src/core/display.c:608 #: ../src/core/delete.c:127
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Openen van X Window System display %s mislukt\n"
#: src/core/main.c:190
msgid "Disable connection to session manager"
msgstr "Schakel de verbinding met het sessiebeheer uit"
#: src/core/main.c:196
msgid "Replace the running window manager"
msgstr "De huidige toepassing voor vensterbeheer vervangen"
#: src/core/main.c:202
msgid "Specify session management ID"
msgstr "Specificeer de ID van het sessiebeheer"
#: src/core/main.c:207
msgid "X Display to use"
msgstr "De te gebruiken X-weergave"
#: src/core/main.c:213
msgid "Initialize session from savefile"
msgstr "Initialiseer de sessie middels een opslagbestand"
#: src/core/main.c:219
msgid "Make X calls synchronous"
msgstr "X-aanroepen synchroon maken"
#: src/core/main.c:226
msgid "Run as a wayland compositor"
msgstr "Uitvoeren als een wayland compositor"
#: src/core/main.c:232
msgid "Run as a nested compositor"
msgstr "Uitvoeren als een geneste compositor"
#: src/core/main.c:240
msgid "Run as a full display server, rather than nested"
msgstr "Uitvoeren als een volledige displayserver, in plaats van genest"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Uitvoeren met X11-backend"
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
msgid "“%s” is not responding." msgid "“%s” is not responding."
msgstr "%s reageert niet." msgstr "%s reageert niet."
#: src/core/meta-close-dialog-default.c:149 #: ../src/core/delete.c:129
msgid "Application is not responding." msgid "Application is not responding."
msgstr "De toepassing reageert niet." msgstr "De toepassing reageert niet."
#: src/core/meta-close-dialog-default.c:154 #: ../src/core/delete.c:134
msgid "" msgid ""
"You may choose to wait a short while for it to continue or force the " "You may choose to wait a short while for it to continue or force the "
"application to quit entirely." "application to quit entirely."
@@ -636,19 +507,60 @@ msgstr ""
"U kunt ervoor kiezen even te wachten totdat het doorgaat of de toepassing " "U kunt ervoor kiezen even te wachten totdat het doorgaat of de toepassing "
"dwingen om helemaal af te sluiten." "dwingen om helemaal af te sluiten."
#: src/core/meta-close-dialog-default.c:161 #: ../src/core/delete.c:141
msgid "_Force Quit"
msgstr "Ge_forceerd afsluiten"
#: src/core/meta-close-dialog-default.c:161
msgid "_Wait" msgid "_Wait"
msgstr "_Wachten" msgstr "_Wachten"
#: src/core/mutter.c:39 #: ../src/core/delete.c:141
msgid "_Force Quit"
msgstr "Ge_forceerd afsluiten"
#: ../src/core/display.c:555
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Openen van X Window System display '%s' mislukt\n"
#: ../src/core/main.c:181
msgid "Disable connection to session manager"
msgstr "Schakel de verbinding met het sessiebeheer uit"
#: ../src/core/main.c:187
msgid "Replace the running window manager"
msgstr "De huidige toepassing voor vensterbeheer vervangen"
#: ../src/core/main.c:193
msgid "Specify session management ID"
msgstr "Specificeer de ID van het sessiebeheer"
#: ../src/core/main.c:198
msgid "X Display to use"
msgstr "De te gebruiken X-weergave"
#: ../src/core/main.c:204
msgid "Initialize session from savefile"
msgstr "Initialiseer de sessie middels een opslagbestand"
#: ../src/core/main.c:210
msgid "Make X calls synchronous"
msgstr "X-aanroepen synchroon maken"
#: ../src/core/main.c:217
msgid "Run as a wayland compositor"
msgstr "Uitvoeren als een wayland compositor"
#: ../src/core/main.c:223
msgid "Run as a nested compositor"
msgstr "Uitvoeren als een geneste compositor"
#: ../src/core/main.c:231
msgid "Run as a full display server, rather than nested"
msgstr "Uitvoeren als een volledige display server, in plaats van genest"
#: ../src/core/mutter.c:39
#, c-format #, c-format
msgid "" msgid ""
"mutter %s\n" "mutter %s\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., and others\n" "Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"This is free software; see the source for copying conditions.\n" "This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A " "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
"PARTICULAR PURPOSE.\n" "PARTICULAR PURPOSE.\n"
@@ -659,70 +571,50 @@ msgstr ""
"Er is GEEN garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR " "Er is GEEN garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR "
"EEN BEPAALD DOEL.\n" "EEN BEPAALD DOEL.\n"
#: src/core/mutter.c:53 #: ../src/core/mutter.c:53
msgid "Print version" msgid "Print version"
msgstr "Versie-informatie tonen" msgstr "Versie-informatie tonen"
#: src/core/mutter.c:59 #: ../src/core/mutter.c:59
msgid "Mutter plugin to use" msgid "Mutter plugin to use"
msgstr "Te gebruiken Mutter-plug-in" msgstr "Te gebruiken Mutter-plug-in"
#: src/core/prefs.c:1997 #: ../src/core/prefs.c:1997
#, c-format #, c-format
msgid "Workspace %d" msgid "Workspace %d"
msgstr "Werkblad %d" msgstr "Werkblad %d"
#: src/core/screen.c:583 #: ../src/core/screen.c:521
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display \"%s\" already has a window manager; try using the --replace option "
"replace the current window manager." "to replace the current window manager."
msgstr "" msgstr ""
"Beeldscherm %s heeft al een vensterbeheerder; probeer de optie: --replace " "Beeldscherm %s heeft al een window manager; probeer de optie: --replace te "
"te gebruiken om de huidige vensterbeheerder te vervangen." "gebruiken om de huidige window manager te vervangen."
#: src/core/screen.c:668 #: ../src/core/screen.c:603
#, c-format #, c-format
msgid "Screen %d on display %s is invalid\n" msgid "Screen %d on display '%s' is invalid\n"
msgstr "Scherm %d op beeldscherm %s is ongeldig\n" msgstr "Scherm %d op beeldscherm '%s' is ongeldig\n"
#: src/core/util.c:120 #: ../src/core/util.c:121
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter is gecompileerd zonder ondersteuning voor verbose-mode\n" msgstr "Mutter is gecompileerd zonder ondersteuning voor verbose-mode\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: ../src/x11/session.c:1815
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Moduswisselaar: modus %d"
#: src/x11/session.c:1818
msgid "" msgid ""
"These windows do not support save current setup and will have to be " "These windows do not support &quot;save current setup&quot; and will have to "
"restarted manually next time you log in." "be restarted manually next time you log in."
msgstr "" msgstr ""
"Deze vensters ondersteunen het opslaan van de huidige instellingen niet en " "Deze vensters ondersteunen het opslaan van de huidige instellingen niet en "
"zullen bij een volgende sessie opnieuw moeten worden opgestart." "zullen bij een volgende sessie opnieuw moeten worden opgestart."
#: src/x11/window-props.c:559 #: ../src/x11/window-props.c:549
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (op %s)" msgstr "%s (op %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Venster één werkblad naar links verplaatsen"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Venster één werkblad naar rechts verplaatsen"
#~ msgid "Move to workspace left"
#~ msgstr "Verplaatsen naar werkblad links"
#~ msgid "Move to workspace right"
#~ msgstr "Verplaatsen naar werkblad rechts"
#~ msgid "Toggle shaded state"
#~ msgstr "Oprollen in- of uitschakelen"
#~ msgid "background texture could not be created from file" #~ msgid "background texture could not be created from file"
#~ msgstr "aanmaken achtergrondstructuur uit bestand mislukt" #~ msgstr "aanmaken achtergrondstructuur uit bestand mislukt"

194
po/pl.po
View File

@@ -1,20 +1,21 @@
# Polish translation for mutter. # Polish translation for mutter.
# Copyright © 2002-2018 the mutter authors. # Copyright © 2002-2017 the mutter authors.
# This file is distributed under the same license as the mutter package. # This file is distributed under the same license as the mutter package.
# Zbigniew Chyla <chyla@alice.ci.pwr.wroc.pl>, 2002-2003. # Zbigniew Chyla <chyla@alice.ci.pwr.wroc.pl>, 2002-2003.
# Artur Flinta <aflinta@at.kernel.pl>, 2003-2005. # Artur Flinta <aflinta@at.kernel.pl>, 2003-2005.
# Marek Stępień <marcoos@aviary.pl>, 2007. # Marek Stępień <marcoos@aviary.pl>, 2007.
# Wadim Dziedzic <wdziedzic@aviary.pl>, 2007. # Wadim Dziedzic <wdziedzic@aviary.pl>, 2007.
# Tomasz Dominikowski <dominikowski@gmail.com>, 2008-2009. # Tomasz Dominikowski <dominikowski@gmail.com>, 2008-2009.
# Piotr Drąg <piotrdrag@gmail.com>, 2010-2018. # Piotr Drąg <piotrdrag@gmail.com>, 2010-2017.
# Aviary.pl <community-poland@mozilla.org>, 2007-2018. # Aviary.pl <community-poland@mozilla.org>, 2007-2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-08 02:05+0100\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"PO-Revision-Date: 2017-11-10 18:30+0100\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n" "Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
"Language-Team: Polish <community-poland@mozilla.org>\n" "Language-Team: Polish <community-poland@mozilla.org>\n"
"Language: pl\n" "Language: pl\n"
@@ -49,114 +50,130 @@ msgid "Move window to last workspace"
msgstr "Przeniesienie okna na ostatni obszar roboczy" msgstr "Przeniesienie okna na ostatni obszar roboczy"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Przeniesienie okna o obszar roboczy w lewo"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Przeniesienie okna o obszar roboczy w prawo"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Przeniesienie okna o obszar roboczy w górę" msgstr "Przeniesienie okna o obszar roboczy w górę"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Przeniesienie okna o obszar roboczy w dół" msgstr "Przeniesienie okna o obszar roboczy w dół"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Przeniesienie okna na monitor po lewej" msgstr "Przeniesienie okna na monitor po lewej"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Przeniesienie okna na monitor po prawej" msgstr "Przeniesienie okna na monitor po prawej"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Przeniesienie okna na monitor na górze" msgstr "Przeniesienie okna na monitor na górze"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Przeniesienie okna na monitor na dole" msgstr "Przeniesienie okna na monitor na dole"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Przełączenie programów" msgstr "Przełączenie programów"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Przełączenie na poprzedni program" msgstr "Przełączenie na poprzedni program"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Przełączenie okien" msgstr "Przełączenie okien"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Przełączenie na poprzednie okno" msgstr "Przełączenie na poprzednie okno"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Przełączenie między oknami programu" msgstr "Przełączenie między oknami programu"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Przełączenie na poprzednie okno programu" msgstr "Przełączenie na poprzednie okno programu"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Przełączenie kontroli systemowej" msgstr "Przełączenie kontroli systemowej"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Przełączenie na poprzednią kontrolę systemową" msgstr "Przełączenie na poprzednią kontrolę systemową"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Bezpośrednie przełączenie między oknami" msgstr "Bezpośrednie przełączenie między oknami"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Bezpośrednie przełączenie na poprzednie okno" msgstr "Bezpośrednie przełączenie na poprzednie okno"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Bezpośrednie przełączenie między oknami programu" msgstr "Bezpośrednie przełączenie między oknami programu"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Bezpośrednie przełączenie na poprzednie okno programu" msgstr "Bezpośrednie przełączenie na poprzednie okno programu"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Bezpośrednie przełączenie kontroli systemowej" msgstr "Bezpośrednie przełączenie kontroli systemowej"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Bezpośrednie przełączenie na poprzednią kontrolę systemową" msgstr "Bezpośrednie przełączenie na poprzednią kontrolę systemową"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Ukrycie wszystkich zwykłych okien" msgstr "Ukrycie wszystkich zwykłych okien"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Przełączenie na 1. obszar roboczy" msgstr "Przełączenie na 1. obszar roboczy"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Przełączenie na 2. obszar roboczy" msgstr "Przełączenie na 2. obszar roboczy"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Przełączenie na 3. obszar roboczy" msgstr "Przełączenie na 3. obszar roboczy"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Przełączenie na 4. obszar roboczy" msgstr "Przełączenie na 4. obszar roboczy"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Przełączenie na ostatni obszar roboczy" msgstr "Przełączenie na ostatni obszar roboczy"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Przeniesienie na lewy obszar roboczy"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Przeniesienie na prawy obszar roboczy"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Przeniesienie na górny obszar roboczy" msgstr "Przeniesienie na górny obszar roboczy"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Przeniesienie na dolny obszar roboczy" msgstr "Przeniesienie na dolny obszar roboczy"
@@ -201,52 +218,56 @@ msgid "Restore window"
msgstr "Przywrócenie okna" msgstr "Przywrócenie okna"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Przełączenie trybu zwinięcia"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Zamknięcie okna" msgstr "Zamknięcie okna"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ukrycie okna" msgstr "Ukrycie okna"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Przeniesienie okna" msgstr "Przeniesienie okna"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Zmiana rozmiaru okna" msgstr "Zmiana rozmiaru okna"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "" msgstr ""
"Przełączenie obecności okna na wszystkich obszarach roboczych lub jednym" "Przełączenie obecności okna na wszystkich obszarach roboczych lub jednym"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "" msgstr ""
"Wysunięcie okna, jeśli jest zasłonięte, odsunięcie w przeciwnym wypadku" "Wysunięcie okna, jeśli jest zasłonięte, odsunięcie w przeciwnym wypadku"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Wysunięcie okna przed pozostałe" msgstr "Wysunięcie okna przed pozostałe"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Odsunięcie okna pod pozostałe" msgstr "Odsunięcie okna pod pozostałe"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Pionowa maksymalizacja okna" msgstr "Pionowa maksymalizacja okna"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Pozioma maksymalizacja okna" msgstr "Pozioma maksymalizacja okna"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Podział widoku po lewej" msgstr "Podział widoku po lewej"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Podział widoku po prawej" msgstr "Podział widoku po prawej"
@@ -490,55 +511,10 @@ msgstr "Przełączenie na 12. konsolę wirtualną"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Ponowne włączenie skrótów" msgstr "Ponowne włączenie skrótów"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Zezwolenie na przechwycenia za pomocą Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Zezwolenie na uwzględnianie przechwyceń klawiatury wywoływanych przez "
"programy X11 działające w systemie Xwayland. Aby przechwycenie X11 zostało "
"uwzględnione w systemie Wayland, klient musi także wysłać konkretny "
"komunikat ClientMessage systemu X11 do głównego okna lub być na liście "
"programów w kluczu „xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Programy Xwayland, które mogą wywoływać przechwycenia klawiatury"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Lista nazw zasobów lub klas zasobów okien X11, które mogą lub nie mogą "
"wywoływać przechwyceń klawiatury X11 w systemie Xwayland. Można uzyskać "
"nazwę zasobu lub klasę zasobów danego okna X11 za pomocą polecenia „xprop "
"WM_CLASS”. W wartościach obsługiwane są wieloznaczniki „*” i „?”. Wartości "
"zaczynające się od znaku „!” nie mają zezwolenia, co ma pierwszeństwo przed "
"zezwoleniami, aby usunąć je z domyślnej listy systemu. Domyślna lista "
"systemu zawiera te programy: „@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@”. "
"Użytkownicy mogą przerwać istniejące przechwycenie za pomocą skrótu "
"klawiszowego określonego w kluczu „restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Przełącznik trybu (%d. grupa)" msgstr "Przełącznik trybu (%d. grupa)"
@@ -546,37 +522,37 @@ msgstr "Przełącznik trybu (%d. grupa)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Przełączenie monitora" msgstr "Przełączenie monitora"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Ekran pomocy" msgstr "Ekran pomocy"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Wbudowany ekran" msgstr "Wbudowany ekran"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Nieznany" msgstr "Nieznany"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nieznany ekran" msgstr "Nieznany ekran"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -592,46 +568,42 @@ msgstr "Zdarzenie sygnału dźwiękowego"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Otwarcie połączenia z ekranem „%s” systemu X Window się nie powiodło\n" msgstr "Otwarcie połączenia z ekranem „%s” systemu X Window się nie powiodło\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Rozłącza połączenie z menedżerem sesji" msgstr "Rozłącza połączenie z menedżerem sesji"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Zastępuje uruchomionego menedżera okien" msgstr "Zastępuje uruchomionego menedżera okien"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Podaje identyfikator zarządzania sesją" msgstr "Podaje identyfikator zarządzania sesją"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Używany ekran X" msgstr "Używany ekran X"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicjuje sesję z zapisanego pliku" msgstr "Inicjuje sesję z zapisanego pliku"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Synchroniczne wywołania X" msgstr "Synchroniczne wywołania X"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Uruchamia jako menedżer składania Wayland" msgstr "Uruchamia jako menedżer składania Wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Uruchamia jako osadzony menedżer składania" msgstr "Uruchamia jako osadzony menedżer składania"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Uruchamia jako pełny serwer wyświetlania zamiast osadzonego" msgstr "Uruchamia jako pełny serwer wyświetlania zamiast osadzonego"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Uruchamia za pomocą mechanizmu X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -709,7 +681,7 @@ msgstr ""
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Przełącznik trybu: %d. tryb" msgstr "Przełącznik trybu: %d. tryb"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."

View File

@@ -1,5 +1,5 @@
# Brazilian Portuguese translation of mutter. # Brazilian Portuguese translation of mutter.
# Copyright (C) 2002-2018 Free Software Foundation, Inc. # Copyright (C) 2002-2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the mutter package. # This file is distributed under the same license as the mutter package.
# Sun G11n <gnome_int_l10n@ireland.sun.com>, 2002. # Sun G11n <gnome_int_l10n@ireland.sun.com>, 2002.
# Evandro Fernandes Giovanini <evandrofg@ig.com.br>, 2002, 2003, 2006. # Evandro Fernandes Giovanini <evandrofg@ig.com.br>, 2002, 2003, 2006.
@@ -14,14 +14,15 @@
# Antonio Fernandes C. Neto <fernandes@pelivre.org>, 2010. # Antonio Fernandes C. Neto <fernandes@pelivre.org>, 2010.
# Rodrigo Padula de Oliveira <contato@rodrigopadula.com>, 2011. # Rodrigo Padula de Oliveira <contato@rodrigopadula.com>, 2011.
# Artur de Aquino Morais <artur.morais93@outlook.com>, 2016. # Artur de Aquino Morais <artur.morais93@outlook.com>, 2016.
# Enrico Nicoletto <liverig@gmail.com>, 2012-2016. # Enrico Nicoletto <liverig@gmail.com>, 2012, 2014, 2016.
# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2018. # Rafael Fontenelle <rafaelff@gnome.org>, 2013, 2014, 2016, 2017.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-16 15:02-0200\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"PO-Revision-Date: 2017-11-11 16:55-0200\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n" "Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n" "Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n" "Language: pt_BR\n"
@@ -57,118 +58,134 @@ msgid "Move window to last workspace"
msgstr "Mover a janela para o último espaço de trabalho" msgstr "Mover a janela para o último espaço de trabalho"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Mover a janela um espaço de trabalho à esquerda"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Mover a janela um espaço de trabalho à direita"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Mover a janela um espaço de trabalho acima" msgstr "Mover a janela um espaço de trabalho acima"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Mover a janela um espaço de trabalho abaixo" msgstr "Mover a janela um espaço de trabalho abaixo"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico # Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Mover janela para o monitor da esquerda" msgstr "Mover janela para o monitor da esquerda"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico # Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Mover janela para o monitor da direita" msgstr "Mover janela para o monitor da direita"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico # Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Mover janela para o monitor acima" msgstr "Mover janela para o monitor acima"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico # Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Mover janela para o monitor abaixo" msgstr "Mover janela para o monitor abaixo"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Alternar aplicativos" msgstr "Alternar aplicativos"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Alternar para o aplicativo anterior" msgstr "Alternar para o aplicativo anterior"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Alternar janelas" msgstr "Alternar janelas"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Alternar para a janela anterior" msgstr "Alternar para a janela anterior"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Alternar as janelas de um aplicativo" msgstr "Alternar as janelas de um aplicativo"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Alternar para a janela anterior de um aplicativo" msgstr "Alternar para a janela anterior de um aplicativo"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Alternar controles do sistema" msgstr "Alternar controles do sistema"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Alternar para o controle de sistema anterior" msgstr "Alternar para o controle de sistema anterior"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Alternar as janelas diretamente" msgstr "Alternar as janelas diretamente"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Alternar diretamente para a janela anterior" msgstr "Alternar diretamente para a janela anterior"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Alternar as janelas de um aplicativo diretamente" msgstr "Alternar as janelas de um aplicativo diretamente"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Alternar diretamente para a janela anterior de um aplicativo" msgstr "Alternar diretamente para a janela anterior de um aplicativo"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Alternar os controles de sistema diretamente" msgstr "Alternar os controles de sistema diretamente"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Alternar diretamente para o controle de sistema anterior" msgstr "Alternar diretamente para o controle de sistema anterior"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Ocultar todas as janelas normais" msgstr "Ocultar todas as janelas normais"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Trocar para o espaço de trabalho 1" msgstr "Trocar para o espaço de trabalho 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Trocar para o espaço de trabalho 2" msgstr "Trocar para o espaço de trabalho 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Trocar para o espaço de trabalho 3" msgstr "Trocar para o espaço de trabalho 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Trocar para o espaço de trabalho 4" msgstr "Trocar para o espaço de trabalho 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Trocar para o último espaço de trabalho" msgstr "Trocar para o último espaço de trabalho"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Move para o espaço de trabalho à esquerda"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Move para o espaço de trabalho à direita"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Mover para o espaço de trabalho acima" msgstr "Mover para o espaço de trabalho acima"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Mover para o espaço de trabalho abaixo" msgstr "Mover para o espaço de trabalho abaixo"
@@ -213,50 +230,54 @@ msgid "Restore window"
msgstr "Restaurar janela" msgstr "Restaurar janela"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Alternar estado sombreado"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Fechar janela" msgstr "Fechar janela"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Ocultar janela" msgstr "Ocultar janela"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Mover janela" msgstr "Mover janela"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Redimensionar janela" msgstr "Redimensionar janela"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Alternar a janela em todos os espaços de trabalho ou em apenas um" msgstr "Alternar a janela em todos os espaços de trabalho ou em apenas um"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Elevar a janela se estiver coberta; caso contrário, a abaixa" msgstr "Elevar a janela se estiver coberta; caso contrário, a abaixa"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Elevar a janela para frente das outras" msgstr "Elevar a janela para frente das outras"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Colocar a janela atrás das outras" msgstr "Colocar a janela atrás das outras"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximizar a janela verticalmente" msgstr "Maximizar a janela verticalmente"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximizar a janela horizontalmente" msgstr "Maximizar a janela horizontalmente"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Visualizar divisão à esquerda" msgstr "Visualizar divisão à esquerda"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Visualizar divisão à direita" msgstr "Visualizar divisão à direita"
@@ -499,56 +520,10 @@ msgstr "Trocar para o VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Reabilita atalhos" msgstr "Reabilita atalhos"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Permitir capturas com Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Permite capturas de teclado emitidas por aplicativos X11 em execução no "
"Xwayland para serem levadas em consideração. Para que uma captura de X11 "
"seja levada em consideração no Wayland, o cliente também deve enviar um X11 "
"ClientMessage específica para a janela raiz ou estar entre os aplicativos "
"listados em branco na chave “xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Aplicativos Xwayland com permissão para emitir capturas de teclado"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Lista os nomes dos recursos ou classe de recursos do janelas X11 com ou sem "
"permissão para emitir capturas de teclado X11 no Xwayland. O nome do recurso "
"ou a classe de recurso de uma determinada janela X11 podem ser obtidos "
"usando o comando “xprop WM_CLASS”. Há suporte a curingas “*” e “?” nos "
"valores. Os valores que começam com “!” são colocados em uma lista negra, "
"que tem precedência sobre a lista branca, para revogar aplicativos da lista "
"padrão do sistema. A lista de sistema padrão inclui os seguintes "
"aplicativos: “@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@”. Os usuários podem "
"quebrar uma captura existente usando o atalho de teclado específico definido "
"pela chave de associação de tecla “restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Alternador de modo (Grupo %d)" msgstr "Alternador de modo (Grupo %d)"
@@ -556,37 +531,37 @@ msgstr "Alternador de modo (Grupo %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Trocar monitor" msgstr "Trocar monitor"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Mostrar ajuda na tela" msgstr "Mostrar ajuda na tela"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Tela embutida" msgstr "Tela embutida"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Desconhecido" msgstr "Desconhecido"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Monitor desconhecido" msgstr "Monitor desconhecido"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s de %s" msgstr "%s de %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -601,46 +576,42 @@ msgstr "Evento de som"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Falha ao abrir a exibição “%s” do sistema de janelas X\n" msgstr "Falha ao abrir a exibição “%s” do sistema de janelas X\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Desabilitar a conexão com o gerenciador de sessões" msgstr "Desabilitar a conexão com o gerenciador de sessões"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Substituir o gerenciador de janelas em execução" msgstr "Substituir o gerenciador de janelas em execução"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Especificar o ID do gerenciador de sessões" msgstr "Especificar o ID do gerenciador de sessões"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Exibição do X a ser utilizada" msgstr "Exibição do X a ser utilizada"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Inicializar a sessão a partir do arquivo salvo" msgstr "Inicializar a sessão a partir do arquivo salvo"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Fazer X chamadas síncronas" msgstr "Fazer X chamadas síncronas"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Executar como um compositor wayland" msgstr "Executar como um compositor wayland"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Executar como um compositor aninhado" msgstr "Executar como um compositor aninhado"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Executar como um servidor de tela cheia, ao invés de aninhado" msgstr "Executar como um servidor de tela cheia, ao invés de aninhado"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Executar com backend X11"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -719,7 +690,7 @@ msgstr "O Mutter foi compilado sem suporte para modo detalhado\n"
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Alternador de modo: Modo %d" msgstr "Alternador de modo: Modo %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -732,21 +703,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (em %s)" msgstr "%s (em %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Mover a janela um espaço de trabalho à esquerda"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Mover a janela um espaço de trabalho à direita"
#~ msgid "Move to workspace left"
#~ msgstr "Move para o espaço de trabalho à esquerda"
#~ msgid "Move to workspace right"
#~ msgstr "Move para o espaço de trabalho à direita"
#~ msgid "Toggle shaded state"
#~ msgstr "Alternar estado sombreado"
#~ msgid "background texture could not be created from file" #~ msgid "background texture could not be created from file"
#~ msgstr "textura de plano de fundo não pôde ser criado de arquivo" #~ msgstr "textura de plano de fundo não pôde ser criado de arquivo"

215
po/sr.po
View File

@@ -9,9 +9,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-06 04:14+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-21 21:58+0100\n" "POT-Creation-Date: 2017-08-29 16:09+0000\n"
"PO-Revision-Date: 2017-08-29 20:46+0200\n"
"Last-Translator: Марко М. Костић <marko.m.kostic@gmail.com>\n" "Last-Translator: Марко М. Костић <marko.m.kostic@gmail.com>\n"
"Language-Team: српски <gnome-sr@googlegroups.org>\n" "Language-Team: српски <gnome-sr@googlegroups.org>\n"
"Language: sr\n" "Language: sr\n"
@@ -21,7 +22,7 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" "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" "%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: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.3\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -48,118 +49,134 @@ msgid "Move window to last workspace"
msgstr "Премешта прозор на последњи радни простор" msgstr "Премешта прозор на последњи радни простор"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Премешта прозор један радни простор на лево"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Премешта прозор један радни простор на десно"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Премешта прозор један радни простор на горе" msgstr "Премешта прозор један радни простор на горе"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Премешта прозор један радни простор на доле" msgstr "Премешта прозор један радни простор на доле"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Премешта прозор један монитор на лево" msgstr "Премешта прозор један монитор на лево"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Премешта прозор један монитор на десно" msgstr "Премешта прозор један монитор на десно"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Премешта прозор један монитор на горе" msgstr "Премешта прозор један монитор на горе"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Премешта прозор један монитор на доле" msgstr "Премешта прозор један монитор на доле"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Пребацује програме" msgstr "Пребацује програме"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Пребацује на претходни програм" msgstr "Пребацује на претходни програм"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Пребацује прозоре" msgstr "Пребацује прозоре"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Пребацује на претходни прозор" msgstr "Пребацује на претходни прозор"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Пребацује прозоре програма" msgstr "Пребацује прозоре програма"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Пребацује на претходни прозор програма" msgstr "Пребацује на претходни прозор програма"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Пребацује контроле система" msgstr "Пребацује контроле система"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Пребацује на претходну контролу система" msgstr "Пребацује на претходну контролу система"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Пребацује прозоре директно" msgstr "Пребацује прозоре директно"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Пребацује непосредно на претходни прозор" msgstr "Пребацује непосредно на претходни прозор"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Пребацује прозоре програма директно" msgstr "Пребацује прозоре програма директно"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Пребацује непосредно на претходни прозор програма" msgstr "Пребацује непосредно на претходни прозор програма"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Пребацује контроле система директно" msgstr "Пребацује контроле система директно"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Пребацује непосредно на претходну контролу система" msgstr "Пребацује непосредно на претходну контролу система"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Скрива све обичне прозоре" msgstr "Скрива све обичне прозоре"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Пребацује се на радни простор 1" msgstr "Пребацује се на радни простор 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Пребацује се на радни простор 2" msgstr "Пребацује се на радни простор 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Пребацује се на радни простор 3" msgstr "Пребацује се на радни простор 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Пребацује се на радни простор 4" msgstr "Пребацује се на радни простор 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Пребацује се на последњи радни простор" msgstr "Пребацује се на последњи радни простор"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Премешта на радни простор лево"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Премешта на радни простор десно"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Премешта на радни простор изнад" msgstr "Премешта на радни простор изнад"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Премешта на радни простор испод" msgstr "Премешта на радни простор испод"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Систем" msgstr "Систем"
@@ -171,10 +188,6 @@ msgstr "Приказује упит за извршавање наредбе"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Приказује преглед активности" msgstr "Приказује преглед активности"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Поврати пречице на тастатури"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Прозори" msgstr "Прозори"
@@ -200,50 +213,54 @@ msgid "Restore window"
msgstr "Враћа величину прозора" msgstr "Враћа величину прозора"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Искључује или укључује стање засенчености"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Затвара прозор" msgstr "Затвара прозор"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Скрива прозор" msgstr "Скрива прозор"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Премешта прозор" msgstr "Премешта прозор"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Мења величину прозора" msgstr "Мења величину прозора"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Приказује прозор на свим радним просторима или само на једном" msgstr "Приказује прозор на свим радним просторима или само на једном"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Издиже прозор уколико га други прозор заклања, у противном га спушта" msgstr "Издиже прозор уколико га други прозор заклања, у противном га спушта"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Издиже прозор изнад осталих прозора" msgstr "Издиже прозор изнад осталих прозора"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Спушта прозор испод осталих прозора" msgstr "Спушта прозор испод осталих прозора"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Увећава прозор вертикално" msgstr "Увећава прозор вертикално"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Увећава прозор хоризонтално" msgstr "Увећава прозор хоризонтално"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Прикажите поделу на лево" msgstr "Прикажите поделу на лево"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Прикажите поделу на десно" msgstr "Прикажите поделу на десно"
@@ -483,55 +500,10 @@ msgstr "Прелазак на ВТ 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Поново укључивање пречица" msgstr "Поново укључивање пречица"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Дозволи грабљење на Икс-вејленду"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Дозволи да се узму у обзир грабљења од стране Икс11 програма унутар Икс-"
"вејленда. Да би се Икс11 грабљење узело у обзир под Вејлендом, клијент мора "
"такође послати специфичну Икс11 клијентску поруку ка кореном прозору или "
"мора бити на белом списку програма у кључу „xwayland-grab-access-rules“."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Икс-вејленд програми којима је дозвољено да раде грабљења на тастатури"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Списак назива ресурса или класи ресурса Икс11 прозора којима је дозвољено "
"или забрањено да раде грабљења на тастатури под Икс-вејлендом. Назив ресурса "
"или класа ресурса датог Икс11 прозора се може наћи преко наредбе \"xprop "
"WM_CLASS\". Џокер знакови „*“ и „?“ унутар вредности су подржани. Вредности "
"које почињу са „!“ се стављају на црни списак, који има предност у односу на "
"бели списак, за опозив програма за подразумеваног системског списка. "
"Подразумевани системски списак садржи следеће програме: "
"\"@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@\" Корисници могу сломити постојеће "
"грабљење тако што ће употребити посебну пречицу на тастатури која је "
"наведена у кључу за везивање тастера са називом \"restore-shortcuts\"."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2260 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Режим прекидача (група %d)" msgstr "Режим прекидача (група %d)"
@@ -539,37 +511,37 @@ msgstr "Режим прекидача (група %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2283 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Промени монитор" msgstr "Промени монитор"
#: src/backends/meta-input-settings.c:2285 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Прикажи помоћ на екрану" msgstr "Прикажи помоћ на екрану"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Уграђени дисплеј" msgstr "Уграђени дисплеј"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Непознато" msgstr "Непознато"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Непознат дисплеј" msgstr "Непознат дисплеј"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -585,46 +557,42 @@ msgstr "Звонца"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Нисам успео да отворим екран „%s“ Икс система прозора\n" msgstr "Нисам успео да отворим екран „%s“ Икс система прозора\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Искључује везу са управником сесије" msgstr "Искључује везу са управником сесије"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Мења текућег управника прозорима" msgstr "Мења текућег управника прозорима"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Наводи ИБ управника сесије" msgstr "Наводи ИБ управника сесије"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Икс екран који ће бити коришћен" msgstr "Икс екран који ће бити коришћен"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Покреће сесију из датотеке чувања" msgstr "Покреће сесију из датотеке чувања"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Чини Икс позиве усклађеним" msgstr "Чини Икс позиве усклађеним"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Ради као вајландов саставник" msgstr "Ради као вајландов саставник"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Ради као угнеждени саставник" msgstr "Ради као угнеждени саставник"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Ради као пуни сервер приказа, уместо као угнеждени" msgstr "Ради као пуни сервер приказа, уместо као угнеждени"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Покрени на Икс11 позадинцу"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -679,7 +647,7 @@ msgstr "Прикључци Матера за коришћење"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. радни простор" msgstr "%d. радни простор"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -688,7 +656,7 @@ msgstr ""
"Приказ „%s“ већ има управника прозора; пробајте да користите опцију „--" "Приказ „%s“ већ има управника прозора; пробајте да користите опцију „--"
"replace“ да замените тренутног управника прозора." "replace“ да замените тренутног управника прозора."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Приказ „%d“ на екрану „%s“ није исправан\n" msgstr "Приказ „%d“ на екрану „%s“ није исправан\n"
@@ -702,7 +670,7 @@ msgstr "Матер је преведен без подршке за опшира
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Режим прекидача: Режим %d" msgstr "Режим прекидача: Режим %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -715,21 +683,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (на %s)" msgstr "%s (на %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Премешта прозор један радни простор на лево"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Премешта прозор један радни простор на десно"
#~ msgid "Move to workspace left"
#~ msgstr "Премешта на радни простор лево"
#~ msgid "Move to workspace right"
#~ msgstr "Премешта на радни простор десно"
#~ msgid "Toggle shaded state"
#~ msgstr "Искључује или укључује стање засенчености"
#~ msgid "Failed to scan themes directory: %s\n" #~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Нисам успео да прочитам директоријум тема: %s\n" #~ msgstr "Нисам успео да прочитам директоријум тема: %s\n"

View File

@@ -9,9 +9,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-21 15:53+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-21 21:58+0100\n" "POT-Creation-Date: 2017-08-29 16:15+0000\n"
"PO-Revision-Date: 2017-08-29 20:46+0200\n"
"Last-Translator: Marko M. Kostić <marko.m.kostic@gmail.com>\n" "Last-Translator: Marko M. Kostić <marko.m.kostic@gmail.com>\n"
"Language-Team: srpski <gnome-sr@googlegroups.org>\n" "Language-Team: srpski <gnome-sr@googlegroups.org>\n"
"Language: sr\n" "Language: sr\n"
@@ -21,7 +22,7 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" "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" "%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: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.3\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -48,118 +49,134 @@ msgid "Move window to last workspace"
msgstr "Premešta prozor na poslednji radni prostor" msgstr "Premešta prozor na poslednji radni prostor"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Premešta prozor jedan radni prostor na levo"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Premešta prozor jedan radni prostor na desno"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Premešta prozor jedan radni prostor na gore" msgstr "Premešta prozor jedan radni prostor na gore"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Premešta prozor jedan radni prostor na dole" msgstr "Premešta prozor jedan radni prostor na dole"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Premešta prozor jedan monitor na levo" msgstr "Premešta prozor jedan monitor na levo"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Premešta prozor jedan monitor na desno" msgstr "Premešta prozor jedan monitor na desno"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Premešta prozor jedan monitor na gore" msgstr "Premešta prozor jedan monitor na gore"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Premešta prozor jedan monitor na dole" msgstr "Premešta prozor jedan monitor na dole"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Prebacuje programe" msgstr "Prebacuje programe"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Prebacuje na prethodni program" msgstr "Prebacuje na prethodni program"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Prebacuje prozore" msgstr "Prebacuje prozore"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Prebacuje na prethodni prozor" msgstr "Prebacuje na prethodni prozor"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Prebacuje prozore programa" msgstr "Prebacuje prozore programa"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Prebacuje na prethodni prozor programa" msgstr "Prebacuje na prethodni prozor programa"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Prebacuje kontrole sistema" msgstr "Prebacuje kontrole sistema"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Prebacuje na prethodnu kontrolu sistema" msgstr "Prebacuje na prethodnu kontrolu sistema"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Prebacuje prozore direktno" msgstr "Prebacuje prozore direktno"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Prebacuje neposredno na prethodni prozor" msgstr "Prebacuje neposredno na prethodni prozor"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Prebacuje prozore programa direktno" msgstr "Prebacuje prozore programa direktno"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Prebacuje neposredno na prethodni prozor programa" msgstr "Prebacuje neposredno na prethodni prozor programa"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Prebacuje kontrole sistema direktno" msgstr "Prebacuje kontrole sistema direktno"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Prebacuje neposredno na prethodnu kontrolu sistema" msgstr "Prebacuje neposredno na prethodnu kontrolu sistema"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Skriva sve obične prozore" msgstr "Skriva sve obične prozore"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Prebacuje se na radni prostor 1" msgstr "Prebacuje se na radni prostor 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Prebacuje se na radni prostor 2" msgstr "Prebacuje se na radni prostor 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Prebacuje se na radni prostor 3" msgstr "Prebacuje se na radni prostor 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Prebacuje se na radni prostor 4" msgstr "Prebacuje se na radni prostor 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Prebacuje se na poslednji radni prostor" msgstr "Prebacuje se na poslednji radni prostor"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Premešta na radni prostor levo"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Premešta na radni prostor desno"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Premešta na radni prostor iznad" msgstr "Premešta na radni prostor iznad"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Premešta na radni prostor ispod" msgstr "Premešta na radni prostor ispod"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "Sistem" msgstr "Sistem"
@@ -171,10 +188,6 @@ msgstr "Prikazuje upit za izvršavanje naredbe"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "Prikazuje pregled aktivnosti" msgstr "Prikazuje pregled aktivnosti"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "Povrati prečice na tastaturi"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "Prozori" msgstr "Prozori"
@@ -200,50 +213,54 @@ msgid "Restore window"
msgstr "Vraća veličinu prozora" msgstr "Vraća veličinu prozora"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Isključuje ili uključuje stanje zasenčenosti"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Zatvara prozor" msgstr "Zatvara prozor"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Skriva prozor" msgstr "Skriva prozor"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Premešta prozor" msgstr "Premešta prozor"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Menja veličinu prozora" msgstr "Menja veličinu prozora"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Prikazuje prozor na svim radnim prostorima ili samo na jednom" msgstr "Prikazuje prozor na svim radnim prostorima ili samo na jednom"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Izdiže prozor ukoliko ga drugi prozor zaklanja, u protivnom ga spušta" msgstr "Izdiže prozor ukoliko ga drugi prozor zaklanja, u protivnom ga spušta"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Izdiže prozor iznad ostalih prozora" msgstr "Izdiže prozor iznad ostalih prozora"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Spušta prozor ispod ostalih prozora" msgstr "Spušta prozor ispod ostalih prozora"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Uvećava prozor vertikalno" msgstr "Uvećava prozor vertikalno"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Uvećava prozor horizontalno" msgstr "Uvećava prozor horizontalno"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Prikažite podelu na levo" msgstr "Prikažite podelu na levo"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Prikažite podelu na desno" msgstr "Prikažite podelu na desno"
@@ -483,55 +500,10 @@ msgstr "Prelazak na VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Ponovo uključivanje prečica" msgstr "Ponovo uključivanje prečica"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Dozvoli grabljenje na Iks-vejlendu"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Dozvoli da se uzmu u obzir grabljenja od strane Iks11 programa unutar Iks-"
"vejlenda. Da bi se Iks11 grabljenje uzelo u obzir pod Vejlendom, klijent mora "
"takođe poslati specifičnu Iks11 klijentsku poruku ka korenom prozoru ili "
"mora biti na belom spisku programa u ključu „xwayland-grab-access-rules“."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Iks-vejlend programi kojima je dozvoljeno da rade grabljenja na tastaturi"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Spisak naziva resursa ili klasi resursa Iks11 prozora kojima je dozvoljeno "
"ili zabranjeno da rade grabljenja na tastaturi pod Iks-vejlendom. Naziv resursa "
"ili klasa resursa datog Iks11 prozora se može naći preko naredbe \"xprop "
"WM_CLASS\". Džoker znakovi „*“ i „?“ unutar vrednosti su podržani. Vrednosti "
"koje počinju sa „!“ se stavljaju na crni spisak, koji ima prednost u odnosu na "
"beli spisak, za opoziv programa za podrazumevanog sistemskog spiska. "
"Podrazumevani sistemski spisak sadrži sledeće programe: "
"\"@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@\" Korisnici mogu slomiti postojeće "
"grabljenje tako što će upotrebiti posebnu prečicu na tastaturi koja je "
"navedena u ključu za vezivanje tastera sa nazivom \"restore-shortcuts\"."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2151
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Režim prekidača (grupa %d)" msgstr "Režim prekidača (grupa %d)"
@@ -539,37 +511,37 @@ msgstr "Režim prekidača (grupa %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2174
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Promeni monitor" msgstr "Promeni monitor"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2176
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Prikaži pomoć na ekranu" msgstr "Prikaži pomoć na ekranu"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:903
msgid "Built-in display" msgid "Built-in display"
msgstr "Ugrađeni displej" msgstr "Ugrađeni displej"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:926
msgid "Unknown" msgid "Unknown"
msgstr "Nepoznato" msgstr "Nepoznato"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:928
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Nepoznat displej" msgstr "Nepoznat displej"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:936
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -585,46 +557,42 @@ msgstr "Zvonca"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Nisam uspeo da otvorim ekran „%s“ Iks sistema prozora\n" msgstr "Nisam uspeo da otvorim ekran „%s“ Iks sistema prozora\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Isključuje vezu sa upravnikom sesije" msgstr "Isključuje vezu sa upravnikom sesije"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Menja tekućeg upravnika prozorima" msgstr "Menja tekućeg upravnika prozorima"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Navodi IB upravnika sesije" msgstr "Navodi IB upravnika sesije"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "Iks ekran koji će biti korišćen" msgstr "Iks ekran koji će biti korišćen"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Pokreće sesiju iz datoteke čuvanja" msgstr "Pokreće sesiju iz datoteke čuvanja"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Čini Iks pozive usklađenim" msgstr "Čini Iks pozive usklađenim"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Radi kao vajlandov sastavnik" msgstr "Radi kao vajlandov sastavnik"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Radi kao ugneždeni sastavnik" msgstr "Radi kao ugneždeni sastavnik"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Radi kao puni server prikaza, umesto kao ugneždeni" msgstr "Radi kao puni server prikaza, umesto kao ugneždeni"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Pokreni na Iks11 pozadincu"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -679,7 +647,7 @@ msgstr "Priključci Matera za korišćenje"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "%d. radni prostor" msgstr "%d. radni prostor"
#: src/core/screen.c:583 #: src/core/screen.c:580
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -688,7 +656,7 @@ msgstr ""
"Prikaz „%s“ već ima upravnika prozora; probajte da koristite opciju „--" "Prikaz „%s“ već ima upravnika prozora; probajte da koristite opciju „--"
"replace“ da zamenite trenutnog upravnika prozora." "replace“ da zamenite trenutnog upravnika prozora."
#: src/core/screen.c:668 #: src/core/screen.c:665
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "Prikaz „%d“ na ekranu „%s“ nije ispravan\n" msgstr "Prikaz „%d“ na ekranu „%s“ nije ispravan\n"
@@ -697,12 +665,12 @@ msgstr "Prikaz „%d“ na ekranu „%s“ nije ispravan\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mater je preveden bez podrške za opširan režim\n" msgstr "Mater je preveden bez podrške za opširan režim\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Režim prekidača: Režim %d" msgstr "Režim prekidača: Režim %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -715,21 +683,6 @@ msgstr ""
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (na %s)" msgstr "%s (na %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Premešta prozor jedan radni prostor na levo"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Premešta prozor jedan radni prostor na desno"
#~ msgid "Move to workspace left"
#~ msgstr "Premešta na radni prostor levo"
#~ msgid "Move to workspace right"
#~ msgstr "Premešta na radni prostor desno"
#~ msgid "Toggle shaded state"
#~ msgstr "Isključuje ili uključuje stanje zasenčenosti"
#~ msgid "Failed to scan themes directory: %s\n" #~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Nisam uspeo da pročitam direktorijum tema: %s\n" #~ msgstr "Nisam uspeo da pročitam direktorijum tema: %s\n"

212
po/sv.po
View File

@@ -1,24 +1,25 @@
# Swedish messages for mutter. # Swedish messages for mutter.
# Copyright © 2001-2018 Free Software Foundation, Inc. # Copyright © 2001-2017 Free Software Foundation, Inc.
# Christian Rose <menthos@menthos.com>, 2001, 2002, 2003, 2004, 2005. # Christian Rose <menthos@menthos.com>, 2001, 2002, 2003, 2004, 2005.
# Daniel Nylander <po@danielnylander.se>, 2006, 2007, 2008, 2009, 2010, 2011, 2012. # Daniel Nylander <po@danielnylander.se>, 2006, 2007, 2008, 2009, 2010, 2011, 2012.
# Mattias Eriksson <snaggen@gmail.com>, 2014. # Mattias Eriksson <snaggen@gmail.com>, 2014.
# Anders Jonsson <anders.jonsson@norsjovallen.se>, 2015, 2016, 2017, 2018. # Anders Jonsson <anders.jonsson@norsjovallen.se>, 2015, 2016, 2017.
# Sebastian Rasmussen <sebras@gmail.com>, 2016. # Sebastian Rasmussen <sebras@gmail.com>, 2016.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: mutter\n" "Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-02-20 20:33+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-02-22 15:54+0100\n" "POT-Creation-Date: 2017-11-10 18:18+0000\n"
"PO-Revision-Date: 2017-11-14 00:43+0100\n"
"Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n" "Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n" "Language: sv\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.4\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -45,114 +46,130 @@ msgid "Move window to last workspace"
msgstr "Flytta fönster till sista arbetsyta" msgstr "Flytta fönster till sista arbetsyta"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Flytta fönster en arbetsyta åt vänster"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Flytta fönster en arbetsyta åt höger"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "Flytta fönster en arbetsyta uppåt" msgstr "Flytta fönster en arbetsyta uppåt"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "Flytta fönster en arbetsyta nedåt" msgstr "Flytta fönster en arbetsyta nedåt"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "Flytta fönster en skärm åt vänster" msgstr "Flytta fönster en skärm åt vänster"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "Flytta fönster en skärm åt höger" msgstr "Flytta fönster en skärm åt höger"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "Flytta fönster en skärm uppåt" msgstr "Flytta fönster en skärm uppåt"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "Flytta fönster en skärm nedåt" msgstr "Flytta fönster en skärm nedåt"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "Växla program" msgstr "Växla program"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "Växla till föregående program" msgstr "Växla till föregående program"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "Växla fönster" msgstr "Växla fönster"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "Växla till föregående fönster" msgstr "Växla till föregående fönster"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "Växla fönster för ett program" msgstr "Växla fönster för ett program"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "Växla till föregående fönster för ett program" msgstr "Växla till föregående fönster för ett program"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "Växla systemkontroller" msgstr "Växla systemkontroller"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "Växla till föregående systemkontroll" msgstr "Växla till föregående systemkontroll"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "Växla fönster direkt" msgstr "Växla fönster direkt"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "Växla direkt till föregående fönster" msgstr "Växla direkt till föregående fönster"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "Växla fönster för ett program direkt" msgstr "Växla fönster för ett program direkt"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "Växla direkt till föregående fönster för ett program" msgstr "Växla direkt till föregående fönster för ett program"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "Växla systemkontroller direkt" msgstr "Växla systemkontroller direkt"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "Växla direkt till föregående systemkontroll" msgstr "Växla direkt till föregående systemkontroll"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "Dölj alla normala fönster" msgstr "Dölj alla normala fönster"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "Växla till arbetsyta 1" msgstr "Växla till arbetsyta 1"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "Växla till arbetsyta 2" msgstr "Växla till arbetsyta 2"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "Växla till arbetsyta 3" msgstr "Växla till arbetsyta 3"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "Växla till arbetsyta 4" msgstr "Växla till arbetsyta 4"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "Växla till sista arbetsyta" msgstr "Växla till sista arbetsyta"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Flytta till arbetsyta till vänster"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Flytta till arbetsyta till höger"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "Flytta till arbetsyta ovanför" msgstr "Flytta till arbetsyta ovanför"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "Flytta till arbetsyta nedanför" msgstr "Flytta till arbetsyta nedanför"
@@ -197,50 +214,54 @@ msgid "Restore window"
msgstr "Återställ fönster" msgstr "Återställ fönster"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Växla upprullat tillstånd"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "Stäng fönster" msgstr "Stäng fönster"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "Dölj fönster" msgstr "Dölj fönster"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "Flytta fönster" msgstr "Flytta fönster"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "Ändra storlek på fönster" msgstr "Ändra storlek på fönster"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "Växla fönster på alla arbetsytor eller bara en" msgstr "Växla fönster på alla arbetsytor eller bara en"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "Höj fönstret om det skyms av ett annat fönster, sänk det annars" msgstr "Höj fönstret om det skyms av ett annat fönster, sänk det annars"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "Höj fönstret över andra fönster" msgstr "Höj fönstret över andra fönster"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "Sänk fönster under andra fönster" msgstr "Sänk fönster under andra fönster"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "Maximera fönster vertikalt" msgstr "Maximera fönster vertikalt"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "Maximera fönster horisontellt" msgstr "Maximera fönster horisontellt"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "Vy delad till vänster" msgstr "Vy delad till vänster"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "Vy delad till höger" msgstr "Vy delad till höger"
@@ -480,56 +501,10 @@ msgstr "Växla till VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "Återaktivera genvägar" msgstr "Återaktivera genvägar"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "Tillåt fångster med Xwayland"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"Tillåt tangentbordsfångster utfärdade av X11-program som körs i Xwayland att "
"tas i beräkning. För att en X11-fångst ska tas i beräkning under Wayland "
"måste klienten också antingen sända ett specifikt X11-ClientMessage till "
"root-fönstret eller finnas bland programmen som vitlistats i nyckeln "
"”xwayland-grab-access-rules”."
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland-program tillåts utfärda tangentbordsfångster"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"Lista resursnamnen eller resursklassen för X11-fönster som antingen tillåts "
"eller inte tillåts att utfärda X11-tangentbordsfångster under Xwayland. "
"Resursnamnet eller resursklassen för ett givet X11-fönster kan erhållas "
"genom att använda kommandot ”xprop WM_CLASS”. Stöd finns för att använda "
"jokertecknen ”*” och ”?” i värdena. Värden som startar med ”!” svartlistas, "
"vilket företräde över vitlistan, för att upphäva program i "
"standardsystemlistan. Standardsystemlistan innehåller följande program: "
"”@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Användare kan bryta en befintlig "
"fångst genom att använda den specifika tangentbordsgenvägen som definieras "
"av tangentbindningsnyckeln ”restore-shortcuts”."
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2167
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "Lägesväxel (grupp %d)" msgstr "Lägesväxel (grupp %d)"
@@ -537,37 +512,37 @@ msgstr "Lägesväxel (grupp %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2190
msgid "Switch monitor" msgid "Switch monitor"
msgstr "Växla skärm" msgstr "Växla skärm"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2192
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "Visa hjälp på skärmen" msgstr "Visa hjälp på skärmen"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:908
msgid "Built-in display" msgid "Built-in display"
msgstr "Inbyggd display" msgstr "Inbyggd display"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:931
msgid "Unknown" msgid "Unknown"
msgstr "Okänd" msgstr "Okänd"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:933
msgid "Unknown Display" msgid "Unknown Display"
msgstr "Okänd display" msgstr "Okänd display"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:941
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -582,46 +557,42 @@ msgstr "Ljudsignalhändelse"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "Misslyckades med att öppna X Window System-displayen ”%s”\n" msgstr "Misslyckades med att öppna X Window System-displayen ”%s”\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "Inaktivera anslutning till sessionshanteraren" msgstr "Inaktivera anslutning till sessionshanteraren"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "Ersätt körande fönsterhanteraren" msgstr "Ersätt körande fönsterhanteraren"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "Ange sessionshanteringsid" msgstr "Ange sessionshanteringsid"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "X-display att använda" msgstr "X-display att använda"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "Initiera session från sparandefil" msgstr "Initiera session från sparandefil"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "Gör X-anrop synkrona" msgstr "Gör X-anrop synkrona"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "Kör som en wayland-kompositionshanterare" msgstr "Kör som en wayland-kompositionshanterare"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "Kör som en nästlad kompositionshanterare" msgstr "Kör som en nästlad kompositionshanterare"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "Kör som en full display-tjänst, i stället för nästlad" msgstr "Kör som en full display-tjänst, i stället för nästlad"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "Kör med X11-gränssnitt"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -694,12 +665,12 @@ msgstr "Skärm %d på display ”%s” är ogiltig\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter kompilerades utan stöd för utförligt läge\n" msgstr "Mutter kompilerades utan stöd för utförligt läge\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "Lägesväxel: Läge %d" msgstr "Lägesväxel: Läge %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -711,18 +682,3 @@ msgstr ""
#, c-format #, c-format
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s (på %s)" msgstr "%s (på %s)"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Flytta fönster en arbetsyta åt vänster"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Flytta fönster en arbetsyta åt höger"
#~ msgid "Move to workspace left"
#~ msgstr "Flytta till arbetsyta till vänster"
#~ msgid "Move to workspace right"
#~ msgstr "Flytta till arbetsyta till höger"
#~ msgid "Toggle shaded state"
#~ msgstr "Växla upprullat tillstånd"

View File

@@ -8,9 +8,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: metacity 3.3.4\n" "Project-Id-Version: metacity 3.3.4\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n" "Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"POT-Creation-Date: 2018-03-01 18:57+0000\n" "product=mutter&keywords=I18N+L10N&component=general\n"
"PO-Revision-Date: 2018-03-03 15:20+0800\n" "POT-Creation-Date: 2017-09-29 14:36+0000\n"
"PO-Revision-Date: 2017-10-01 22:57+0800\n"
"Last-Translator: Cheng-Chia Tseng <pswo10680@gmail.com>\n" "Last-Translator: Cheng-Chia Tseng <pswo10680@gmail.com>\n"
"Language-Team: Chinese (Taiwan) <zh-l10n@lists.linux.org.tw>\n" "Language-Team: Chinese (Taiwan) <zh-l10n@lists.linux.org.tw>\n"
"Language: zh_TW\n" "Language: zh_TW\n"
@@ -18,7 +19,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=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.3\n"
#: data/50-mutter-navigation.xml:6 #: data/50-mutter-navigation.xml:6
msgid "Navigation" msgid "Navigation"
@@ -45,118 +46,134 @@ msgid "Move window to last workspace"
msgstr "將視窗移至上一個工作區" msgstr "將視窗移至上一個工作區"
#: data/50-mutter-navigation.xml:24 #: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "將視窗移至左方的工作區"
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "將視窗移至右方的工作區"
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up" msgid "Move window one workspace up"
msgstr "將視窗移至上方的工作區" msgstr "將視窗移至上方的工作區"
#: data/50-mutter-navigation.xml:27 #: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down" msgid "Move window one workspace down"
msgstr "將視窗移至下方的工作區" msgstr "將視窗移至下方的工作區"
#: data/50-mutter-navigation.xml:30 #: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left" msgid "Move window one monitor to the left"
msgstr "將視窗移至左方的螢幕" msgstr "將視窗移至左方的螢幕"
#: data/50-mutter-navigation.xml:33 #: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right" msgid "Move window one monitor to the right"
msgstr "將視窗移至右方的螢幕" msgstr "將視窗移至右方的螢幕"
#: data/50-mutter-navigation.xml:36 #: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up" msgid "Move window one monitor up"
msgstr "將視窗移至上方的螢幕" msgstr "將視窗移至上方的螢幕"
#: data/50-mutter-navigation.xml:39 #: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down" msgid "Move window one monitor down"
msgstr "將視窗移至下方的螢幕" msgstr "將視窗移至下方的螢幕"
#: data/50-mutter-navigation.xml:43 #: data/50-mutter-navigation.xml:49
msgid "Switch applications" msgid "Switch applications"
msgstr "切換程式" msgstr "切換程式"
#: data/50-mutter-navigation.xml:48 #: data/50-mutter-navigation.xml:54
msgid "Switch to previous application" msgid "Switch to previous application"
msgstr "切換至上一個應用程式" msgstr "切換至上一個應用程式"
#: data/50-mutter-navigation.xml:52 #: data/50-mutter-navigation.xml:58
msgid "Switch windows" msgid "Switch windows"
msgstr "切換視窗" msgstr "切換視窗"
#: data/50-mutter-navigation.xml:57 #: data/50-mutter-navigation.xml:63
msgid "Switch to previous window" msgid "Switch to previous window"
msgstr "切換至上一個視窗" msgstr "切換至上一個視窗"
#: data/50-mutter-navigation.xml:61 #: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application" msgid "Switch windows of an application"
msgstr "切換程式的視窗" msgstr "切換程式的視窗"
#: data/50-mutter-navigation.xml:66 #: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application" msgid "Switch to previous window of an application"
msgstr "切換至上一個應用程式的視窗" msgstr "切換至上一個應用程式的視窗"
#: data/50-mutter-navigation.xml:70 #: data/50-mutter-navigation.xml:76
msgid "Switch system controls" msgid "Switch system controls"
msgstr "切換系統控制" msgstr "切換系統控制"
#: data/50-mutter-navigation.xml:75 #: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control" msgid "Switch to previous system control"
msgstr "切換至上一個系統控制" msgstr "切換至上一個系統控制"
#: data/50-mutter-navigation.xml:79 #: data/50-mutter-navigation.xml:85
msgid "Switch windows directly" msgid "Switch windows directly"
msgstr "直接切換視窗" msgstr "直接切換視窗"
#: data/50-mutter-navigation.xml:84 #: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window" msgid "Switch directly to previous window"
msgstr "直接切換至上一個視窗" msgstr "直接切換至上一個視窗"
#: data/50-mutter-navigation.xml:88 #: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly" msgid "Switch windows of an app directly"
msgstr "直接切換程式的視窗" msgstr "直接切換程式的視窗"
#: data/50-mutter-navigation.xml:93 #: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app" msgid "Switch directly to previous window of an app"
msgstr "直接切換至上一個程式視窗" msgstr "直接切換至上一個程式視窗"
#: data/50-mutter-navigation.xml:97 #: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly" msgid "Switch system controls directly"
msgstr "直接切換系統控制" msgstr "直接切換系統控制"
#: data/50-mutter-navigation.xml:102 #: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control" msgid "Switch directly to previous system control"
msgstr "直接切換至上一個系統控制" msgstr "直接切換至上一個系統控制"
#: data/50-mutter-navigation.xml:105 #: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows" msgid "Hide all normal windows"
msgstr "隱藏所有一般視窗" msgstr "隱藏所有一般視窗"
#: data/50-mutter-navigation.xml:108 #: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1" msgid "Switch to workspace 1"
msgstr "切換至第 1 個工作區" msgstr "切換至第 1 個工作區"
#: data/50-mutter-navigation.xml:111 #: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2" msgid "Switch to workspace 2"
msgstr "切換至第 2 個工作區" msgstr "切換至第 2 個工作區"
#: data/50-mutter-navigation.xml:114 #: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3" msgid "Switch to workspace 3"
msgstr "切換至第 3 個工作區" msgstr "切換至第 3 個工作區"
#: data/50-mutter-navigation.xml:117 #: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4" msgid "Switch to workspace 4"
msgstr "切換至第 4 個工作區" msgstr "切換至第 4 個工作區"
#: data/50-mutter-navigation.xml:120 #: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace" msgid "Switch to last workspace"
msgstr "切換至上一個工作區" msgstr "切換至上一個工作區"
#: data/50-mutter-navigation.xml:123 #: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "移至左方的工作區"
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "移至右方的工作區"
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above" msgid "Move to workspace above"
msgstr "移至上方的工作區" msgstr "移至上方的工作區"
#: data/50-mutter-navigation.xml:126 #: data/50-mutter-navigation.xml:138
msgid "Move to workspace below" msgid "Move to workspace below"
msgstr "移至下方的工作區" msgstr "移至下方的工作區"
#: data/50-mutter-system.xml:6 data/50-mutter-wayland.xml:6 #: data/50-mutter-system.xml:6
msgid "System" msgid "System"
msgstr "系統" msgstr "系統"
@@ -168,10 +185,6 @@ msgstr "顯示執行指令提示"
msgid "Show the activities overview" msgid "Show the activities overview"
msgstr "顯示活動概覽" msgstr "顯示活動概覽"
#: data/50-mutter-wayland.xml:8
msgid "Restore the keyboard shortcuts"
msgstr "重設鍵盤快捷鍵"
#: data/50-mutter-windows.xml:6 #: data/50-mutter-windows.xml:6
msgid "Windows" msgid "Windows"
msgstr "視窗" msgstr "視窗"
@@ -197,50 +210,54 @@ msgid "Restore window"
msgstr "還原視窗" msgstr "還原視窗"
#: data/50-mutter-windows.xml:18 #: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "切換視窗捲起/放下狀態"
#: data/50-mutter-windows.xml:20
msgid "Close window" msgid "Close window"
msgstr "關閉視窗" msgstr "關閉視窗"
#: data/50-mutter-windows.xml:20 #: data/50-mutter-windows.xml:22
msgid "Hide window" msgid "Hide window"
msgstr "隱藏視窗" msgstr "隱藏視窗"
#: data/50-mutter-windows.xml:22 #: data/50-mutter-windows.xml:24
msgid "Move window" msgid "Move window"
msgstr "移動視窗" msgstr "移動視窗"
#: data/50-mutter-windows.xml:24 #: data/50-mutter-windows.xml:26
msgid "Resize window" msgid "Resize window"
msgstr "調整視窗大小" msgstr "調整視窗大小"
#: data/50-mutter-windows.xml:27 #: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one" msgid "Toggle window on all workspaces or one"
msgstr "切換視窗顯示在所有工作區或是只顯示於其中之一" msgstr "切換視窗顯示在所有工作區或是只顯示於其中之一"
#: data/50-mutter-windows.xml:29 #: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it" msgid "Raise window if covered, otherwise lower it"
msgstr "若被其他視窗遮蔽就抬升它,否則將它降下" msgstr "若被其他視窗遮蔽就抬升它,否則將它降下"
#: data/50-mutter-windows.xml:31 #: data/50-mutter-windows.xml:33
msgid "Raise window above other windows" msgid "Raise window above other windows"
msgstr "令某個視窗覆蓋其它視窗" msgstr "令某個視窗覆蓋其它視窗"
#: data/50-mutter-windows.xml:33 #: data/50-mutter-windows.xml:35
msgid "Lower window below other windows" msgid "Lower window below other windows"
msgstr "遮蔽某個視窗" msgstr "遮蔽某個視窗"
#: data/50-mutter-windows.xml:35 #: data/50-mutter-windows.xml:37
msgid "Maximize window vertically" msgid "Maximize window vertically"
msgstr "將視窗縱向最大化" msgstr "將視窗縱向最大化"
#: data/50-mutter-windows.xml:37 #: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally" msgid "Maximize window horizontally"
msgstr "將視窗橫向最大化" msgstr "將視窗橫向最大化"
#: data/50-mutter-windows.xml:41 #: data/50-mutter-windows.xml:43
msgid "View split on left" msgid "View split on left"
msgstr "檢視分割於左側" msgstr "檢視分割於左側"
#: data/50-mutter-windows.xml:45 #: data/50-mutter-windows.xml:47
msgid "View split on right" msgid "View split on right"
msgstr "檢視分割於右側" msgstr "檢視分割於右側"
@@ -460,51 +477,10 @@ msgstr "切換至 VT 12"
msgid "Re-enable shortcuts" msgid "Re-enable shortcuts"
msgstr "重新啟用快捷鍵" msgstr "重新啟用快捷鍵"
#: data/org.gnome.mutter.wayland.gschema.xml.in:64
msgid "Allow grabs with Xwayland"
msgstr "在 Xwayland 允許抓取"
#: data/org.gnome.mutter.wayland.gschema.xml.in:65
msgid ""
"Allow keyboard grabs issued by X11 applications running in Xwayland to be "
"taken into account. For a X11 grab to be taken into account under Wayland, "
"the client must also either send a specific X11 ClientMessage to the root "
"window or be among the applications white-listed in key “xwayland-grab-"
"access-rules”."
msgstr ""
"考慮到在 Xwayland 中執行的 X11 應用程序發出的鍵盤抓取。對於在 Wayland 下考慮"
"的 X11 抓取,客戶端也必須送出一個特定的 X11 ClientMessage 到 root 視窗或者在 "
"xwayland-grab-access-rules 鍵白名單其中的應用程式。"
#: data/org.gnome.mutter.wayland.gschema.xml.in:77
msgid "Xwayland applications allowed to issue keyboard grabs"
msgstr "Xwayland 應用程式允許發出鍵盤抓取"
#: data/org.gnome.mutter.wayland.gschema.xml.in:78
msgid ""
"List the resource names or resource class of X11 windows either allowed or "
"not allowed to issue X11 keyboard grabs under Xwayland. The resource name or "
"resource class of a given X11 window can be obtained using the command "
"“xprop WM_CLASS”. Wildcards “*” and jokers “?” in the values are supported. "
"Values starting with “!” are blacklisted, which has precedence over the "
"whitelist, to revoke applications from the default system list. The default "
"system list includes the following applications: "
"“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@” Users can break an existing grab by "
"using the specific keyboard shortcut defined by the keybinding key “restore-"
"shortcuts”."
msgstr ""
"列出在 X11 視窗中的這些資源名稱或資源 class 允許或不允許在 Xwayland 底下發出 "
"X11 鍵盤抓取。在已提供的 X11 視窗中的資源名稱或資源 class 可以獲得,只要使用"
"這個指令 xprop WM_CLASS。在數值內的 Wildcard \"*\" 或 joker \"?\" 是受支援"
"的。開始於 \"!\" 的數值會被加入黑名單,優先於白名單,去取消授權來自預設系統清"
"單的應用程式。這個預設的系統清單包含了以下的應用程"
"序:“@XWAYLAND_GRAB_DEFAULT_ACCESS_RULES@”,用戶可以取消一個存在的抓取,透過"
"使用一個具體的鍵盤快捷鍵定義透過這個綁定鍵 restore-shortcuts。"
#. TRANSLATORS: This string refers to a button that switches between #. TRANSLATORS: This string refers to a button that switches between
#. * different modes. #. * different modes.
#. #.
#: src/backends/meta-input-settings.c:2325 #: src/backends/meta-input-settings.c:2157
#, c-format #, c-format
msgid "Mode Switch (Group %d)" msgid "Mode Switch (Group %d)"
msgstr "模式切換( 群組 %d)" msgstr "模式切換( 群組 %d)"
@@ -512,30 +488,30 @@ msgstr "模式切換( 群組 %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets' #. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs. #. * mapping through the available outputs.
#. #.
#: src/backends/meta-input-settings.c:2348 #: src/backends/meta-input-settings.c:2180
msgid "Switch monitor" msgid "Switch monitor"
msgstr "切換螢幕" msgstr "切換螢幕"
#: src/backends/meta-input-settings.c:2350 #: src/backends/meta-input-settings.c:2182
msgid "Show on-screen help" msgid "Show on-screen help"
msgstr "顯示螢幕求助" msgstr "顯示螢幕求助"
#: src/backends/meta-monitor-manager.c:900 #: src/backends/meta-monitor-manager.c:894
msgid "Built-in display" msgid "Built-in display"
msgstr "內建顯示" msgstr "內建顯示"
#: src/backends/meta-monitor-manager.c:923 #: src/backends/meta-monitor-manager.c:917
msgid "Unknown" msgid "Unknown"
msgstr "不明" msgstr "不明"
#: src/backends/meta-monitor-manager.c:925 #: src/backends/meta-monitor-manager.c:919
msgid "Unknown Display" msgid "Unknown Display"
msgstr "不明的顯示器" msgstr "不明的顯示器"
#. TRANSLATORS: this is a monitor vendor name, followed by a #. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"' #. * size in inches, like 'Dell 15"'
#. #.
#: src/backends/meta-monitor-manager.c:933 #: src/backends/meta-monitor-manager.c:927
#, c-format #, c-format
msgid "%s %s" msgid "%s %s"
msgstr "%s %s" msgstr "%s %s"
@@ -543,7 +519,7 @@ msgstr "%s %s"
# FIXME: I'm still unclear about the meaning of XGetSelectionOwner -- Abel # FIXME: I'm still unclear about the meaning of XGetSelectionOwner -- Abel
#. This probably means that a non-WM compositor like xcompmgr is running; #. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit #. * we have no way to get it to exit
#: src/compositor/compositor.c:481 #: src/compositor/compositor.c:476
#, c-format #, c-format
msgid "" msgid ""
"Another compositing manager is already running on screen %i on display “%s”." "Another compositing manager is already running on screen %i on display “%s”."
@@ -558,46 +534,42 @@ msgstr "響鈴事件"
msgid "Failed to open X Window System display “%s”\n" msgid "Failed to open X Window System display “%s”\n"
msgstr "無法開啟 X Window 系統畫面「%s」\n" msgstr "無法開啟 X Window 系統畫面「%s」\n"
#: src/core/main.c:190 #: src/core/main.c:189
msgid "Disable connection to session manager" msgid "Disable connection to session manager"
msgstr "停用到作業階段管理員的連線" msgstr "停用到作業階段管理員的連線"
#: src/core/main.c:196 #: src/core/main.c:195
msgid "Replace the running window manager" msgid "Replace the running window manager"
msgstr "取代執行中的視窗管理員" msgstr "取代執行中的視窗管理員"
#: src/core/main.c:202 #: src/core/main.c:201
msgid "Specify session management ID" msgid "Specify session management ID"
msgstr "指定作業階段管理 ID" msgstr "指定作業階段管理 ID"
#: src/core/main.c:207 #: src/core/main.c:206
msgid "X Display to use" msgid "X Display to use"
msgstr "使用的 X 畫面" msgstr "使用的 X 畫面"
#: src/core/main.c:213 #: src/core/main.c:212
msgid "Initialize session from savefile" msgid "Initialize session from savefile"
msgstr "以 savefile 初始化作業階段" msgstr "以 savefile 初始化作業階段"
#: src/core/main.c:219 #: src/core/main.c:218
msgid "Make X calls synchronous" msgid "Make X calls synchronous"
msgstr "使用同步方式調用 X 函式" msgstr "使用同步方式調用 X 函式"
#: src/core/main.c:226 #: src/core/main.c:225
msgid "Run as a wayland compositor" msgid "Run as a wayland compositor"
msgstr "以 wayland 組合器執行" msgstr "以 wayland 組合器執行"
#: src/core/main.c:232 #: src/core/main.c:231
msgid "Run as a nested compositor" msgid "Run as a nested compositor"
msgstr "以巢狀組合器執行" msgstr "以巢狀組合器執行"
#: src/core/main.c:240 #: src/core/main.c:239
msgid "Run as a full display server, rather than nested" msgid "Run as a full display server, rather than nested"
msgstr "以完全顯示伺服器執行,而非巢狀" msgstr "以完全顯示伺服器執行,而非巢狀"
#: src/core/main.c:246
msgid "Run with X11 backend"
msgstr "透過 X11 後端執行"
#. Translators: %s is a window title #. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147 #: src/core/meta-close-dialog-default.c:147
#, c-format #, c-format
@@ -650,7 +622,7 @@ msgstr "要使用的 Mutter 外掛程式"
msgid "Workspace %d" msgid "Workspace %d"
msgstr "工作區 %d" msgstr "工作區 %d"
#: src/core/screen.c:583 #: src/core/screen.c:582
#, c-format #, c-format
msgid "" msgid ""
"Display “%s” already has a window manager; try using the --replace option to " "Display “%s” already has a window manager; try using the --replace option to "
@@ -659,7 +631,7 @@ msgstr ""
"畫面「%s」已經有了視窗管理員請嘗試使用 --replace 選項來替換目前的視窗管理" "畫面「%s」已經有了視窗管理員請嘗試使用 --replace 選項來替換目前的視窗管理"
"員。" "員。"
#: src/core/screen.c:668 #: src/core/screen.c:667
#, c-format #, c-format
msgid "Screen %d on display “%s” is invalid\n" msgid "Screen %d on display “%s” is invalid\n"
msgstr "畫面「%2$s」中的第 %1$d 個螢幕無效\n" msgstr "畫面「%2$s」中的第 %1$d 個螢幕無效\n"
@@ -668,12 +640,12 @@ msgstr "畫面「%2$s」中的第 %1$d 個螢幕無效\n"
msgid "Mutter was compiled without support for verbose mode\n" msgid "Mutter was compiled without support for verbose mode\n"
msgstr "編譯 Mutter 時並沒有加入詳細偵錯模式的支援\n" msgstr "編譯 Mutter 時並沒有加入詳細偵錯模式的支援\n"
#: src/wayland/meta-wayland-tablet-pad.c:567 #: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format #, c-format
msgid "Mode Switch: Mode %d" msgid "Mode Switch: Mode %d"
msgstr "模式切換:模式 %d" msgstr "模式切換:模式 %d"
#: src/x11/session.c:1818 #: src/x11/session.c:1815
msgid "" msgid ""
"These windows do not support “save current setup” and will have to be " "These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in." "restarted manually next time you log in."
@@ -684,21 +656,6 @@ msgstr "這些視窗不支援「儲存目前的設定」,必須在下次登入
msgid "%s (on %s)" msgid "%s (on %s)"
msgstr "%s在 %s" msgstr "%s在 %s"
#~ msgid "Move window one workspace to the left"
#~ msgstr "將視窗移至左方的工作區"
#~ msgid "Move window one workspace to the right"
#~ msgstr "將視窗移至右方的工作區"
#~ msgid "Move to workspace left"
#~ msgstr "移至左方的工作區"
#~ msgid "Move to workspace right"
#~ msgstr "移至右方的工作區"
#~ msgid "Toggle shaded state"
#~ msgstr "切換視窗捲起/放下狀態"
#~ msgid "background texture could not be created from file" #~ msgid "background texture could not be created from file"
#~ msgstr "背景材質無法從檔案建立" #~ msgstr "背景材質無法從檔案建立"

View File

@@ -68,8 +68,6 @@ mutter_built_sources += \
gtk-shell-server-protocol.h \ gtk-shell-server-protocol.h \
gtk-primary-selection-protocol.c \ gtk-primary-selection-protocol.c \
gtk-primary-selection-server-protocol.h \ gtk-primary-selection-server-protocol.h \
xdg-shell-protocol.c \
xdg-shell-server-protocol.h \
xdg-shell-unstable-v6-protocol.c \ xdg-shell-unstable-v6-protocol.c \
xdg-shell-unstable-v6-server-protocol.h \ xdg-shell-unstable-v6-server-protocol.h \
relative-pointer-unstable-v1-protocol.c \ relative-pointer-unstable-v1-protocol.c \
@@ -96,7 +94,6 @@ endif
wayland_protocols = \ wayland_protocols = \
wayland/protocol/gtk-shell.xml \ wayland/protocol/gtk-shell.xml \
wayland/protocol/gtk-primary-selection.xml \ wayland/protocol/gtk-primary-selection.xml \
wayland/protocol/gtk-text-input.xml \
$(NULL) $(NULL)
libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES = \ libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES = \
@@ -436,12 +433,6 @@ libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES += \
wayland/meta-wayland-surface-role-cursor.h \ wayland/meta-wayland-surface-role-cursor.h \
wayland/meta-wayland-surface-role-tablet-cursor.c \ wayland/meta-wayland-surface-role-tablet-cursor.c \
wayland/meta-wayland-surface-role-tablet-cursor.h \ wayland/meta-wayland-surface-role-tablet-cursor.h \
wayland/meta-wayland-actor-surface.c \
wayland/meta-wayland-actor-surface.h \
wayland/meta-wayland-subsurface.c \
wayland/meta-wayland-subsurface.h \
wayland/meta-wayland-shell-surface.c \
wayland/meta-wayland-shell-surface.h \
wayland/meta-wayland-text-input.c \ wayland/meta-wayland-text-input.c \
wayland/meta-wayland-text-input.h \ wayland/meta-wayland-text-input.h \
wayland/meta-wayland-types.h \ wayland/meta-wayland-types.h \
@@ -456,8 +447,6 @@ libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES += \
wayland/meta-window-xwayland.h \ wayland/meta-window-xwayland.h \
wayland/meta-wayland-xdg-shell.c \ wayland/meta-wayland-xdg-shell.c \
wayland/meta-wayland-xdg-shell.h \ wayland/meta-wayland-xdg-shell.h \
wayland/meta-wayland-legacy-xdg-shell.c \
wayland/meta-wayland-legacy-xdg-shell.h \
wayland/meta-wayland-wl-shell.c \ wayland/meta-wayland-wl-shell.c \
wayland/meta-wayland-wl-shell.h \ wayland/meta-wayland-wl-shell.h \
wayland/meta-wayland-gtk-shell.c \ wayland/meta-wayland-gtk-shell.c \
@@ -746,7 +735,7 @@ backends/native/meta-default-modes.h: backends/native/gen-default-modes.py Makef
.SECONDEXPANSION: .SECONDEXPANSION:
define protostability define protostability
$(if $(findstring unstable,$1),unstable,stable) $(shell echo $1 | sed 's/.*\(\<unstable\>\|\<stable\>\).*/\1/')
endef endef
define protoname define protoname
@@ -761,3 +750,14 @@ endef
$(AM_V_GEN)$(WAYLAND_SCANNER) code $< $@ $(AM_V_GEN)$(WAYLAND_SCANNER) code $< $@
%-server-protocol.h : $(srcdir)/wayland/protocol/%.xml %-server-protocol.h : $(srcdir)/wayland/protocol/%.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) server-header $< $@ $(AM_V_GEN)$(WAYLAND_SCANNER) server-header $< $@
keyboard-shortcuts-inhibit-unstable-v1-protocol.c : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/keyboard-shortcuts-inhibit/keyboard-shortcuts-inhibit-unstable-v1.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) code < $< > $@
keyboard-shortcuts-inhibit-unstable-v1-server-protocol.h : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/keyboard-shortcuts-inhibit/keyboard-shortcuts-inhibit-unstable-v1.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) server-header < $< > $@
xdg-output-unstable-v1-protocol.c : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/xdg-output/xdg-output-unstable-v1.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) code < $< > $@
xdg-output-unstable-v1-server-protocol.h : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/xdg-output/xdg-output-unstable-v1.xml
xwayland-keyboard-grab-unstable-v1-protocol.c : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/xwayland-keyboard-grab/xwayland-keyboard-grab-unstable-v1.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) code < $< > $@
xwayland-keyboard-grab-unstable-v1-server-protocol.h : $(WAYLAND_PROTOCOLS_DATADIR)/unstable/xwayland-keyboard-grab/xwayland-keyboard-grab-unstable-v1.xml
$(AM_V_GEN)$(WAYLAND_SCANNER) server-header < $< > $@

View File

@@ -266,31 +266,11 @@ meta_egl_get_proc_address (MetaEgl *egl,
} }
gboolean gboolean
meta_egl_get_config_attrib (MetaEgl *egl, meta_egl_choose_config (MetaEgl *egl,
EGLDisplay display, EGLDisplay display,
EGLConfig config, const EGLint *attrib_list,
EGLint attribute, EGLConfig *chosen_config,
EGLint *value, GError **error)
GError **error)
{
if (!eglGetConfigAttrib (display,
config,
attribute,
value))
{
set_egl_error (error);
return FALSE;
}
return TRUE;
}
EGLConfig *
meta_egl_choose_all_configs (MetaEgl *egl,
EGLDisplay display,
const EGLint *attrib_list,
EGLint *out_num_configs,
GError **error)
{ {
EGLint num_configs; EGLint num_configs;
EGLConfig *configs; EGLConfig *configs;
@@ -319,60 +299,6 @@ meta_egl_choose_all_configs (MetaEgl *egl,
return FALSE; return FALSE;
} }
if (num_matches == 0)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"No matching EGL configs");
g_free (configs);
return NULL;
}
*out_num_configs = num_configs;
return configs;
}
gboolean
meta_egl_choose_first_config (MetaEgl *egl,
EGLDisplay display,
const EGLint *attrib_list,
EGLConfig *chosen_config,
GError **error)
{
EGLint num_configs;
EGLConfig *configs;
EGLint num_matches;
if (!eglGetConfigs (display, NULL, 0, &num_configs))
{
set_egl_error (error);
return FALSE;
}
if (num_configs < 1)
{
g_set_error (error, G_IO_ERROR,
G_IO_ERROR_FAILED,
"No EGL configurations available");
return FALSE;
}
configs = g_new0 (EGLConfig, num_configs);
if (!eglChooseConfig (display, attrib_list, configs, num_configs, &num_matches))
{
g_free (configs);
set_egl_error (error);
return FALSE;
}
if (num_matches == 0)
{
g_free (configs);
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"No matching EGLConfig found");
return FALSE;
}
/* /*
* We don't have any preference specified yet, so lets choose the first one. * We don't have any preference specified yet, so lets choose the first one.
*/ */

View File

@@ -56,24 +56,11 @@ gpointer meta_egl_get_proc_address (MetaEgl *egl,
const char *procname, const char *procname,
GError **error); GError **error);
gboolean meta_egl_choose_first_config (MetaEgl *egl, gboolean meta_egl_choose_config (MetaEgl *egl,
EGLDisplay display, EGLDisplay display,
const EGLint *attrib_list, const EGLint *attrib_list,
EGLConfig *chosen_config, EGLConfig *chosen_config,
GError **error); GError **error);
gboolean meta_egl_get_config_attrib (MetaEgl *egl,
EGLDisplay display,
EGLConfig config,
EGLint attribute,
EGLint *value,
GError **error);
EGLConfig * meta_egl_choose_all_configs (MetaEgl *egl,
EGLDisplay display,
const EGLint *attrib_list,
EGLint *out_num_configs,
GError **error);
EGLContext meta_egl_create_context (MetaEgl *egl, EGLContext meta_egl_create_context (MetaEgl *egl,
EGLDisplay display, EGLDisplay display,

View File

@@ -111,8 +111,7 @@ struct _MetaInputSettingsClass
ClutterInputDevice *device, ClutterInputDevice *device,
ClutterInputDeviceTool *tool, ClutterInputDeviceTool *tool,
GDesktopStylusButtonAction primary, GDesktopStylusButtonAction primary,
GDesktopStylusButtonAction secondary, GDesktopStylusButtonAction secondary);
GDesktopStylusButtonAction tertiary);
gboolean (* has_two_finger_scroll) (MetaInputSettings *settings, gboolean (* has_two_finger_scroll) (MetaInputSettings *settings,
ClutterInputDevice *device); ClutterInputDevice *device);
}; };

View File

@@ -41,16 +41,6 @@ static GQuark quark_tool_settings = 0;
typedef struct _MetaInputSettingsPrivate MetaInputSettingsPrivate; typedef struct _MetaInputSettingsPrivate MetaInputSettingsPrivate;
typedef struct _DeviceMappingInfo DeviceMappingInfo; typedef struct _DeviceMappingInfo DeviceMappingInfo;
typedef struct _CurrentToolInfo CurrentToolInfo;
struct _CurrentToolInfo
{
MetaInputSettings *input_settings;
ClutterInputDevice *device;
ClutterInputDeviceTool *tool;
GSettings *settings;
guint changed_id;
};
struct _DeviceMappingInfo struct _DeviceMappingInfo
{ {
@@ -79,8 +69,6 @@ struct _MetaInputSettingsPrivate
GHashTable *mappable_devices; GHashTable *mappable_devices;
GHashTable *current_tools;
ClutterVirtualInputDevice *virtual_pad_keyboard; ClutterVirtualInputDevice *virtual_pad_keyboard;
#ifdef HAVE_LIBWACOM #ifdef HAVE_LIBWACOM
@@ -158,7 +146,6 @@ meta_input_settings_dispose (GObject *object)
g_clear_object (&priv->gsd_settings); g_clear_object (&priv->gsd_settings);
g_clear_object (&priv->a11y_settings); g_clear_object (&priv->a11y_settings);
g_clear_pointer (&priv->mappable_devices, g_hash_table_unref); g_clear_pointer (&priv->mappable_devices, g_hash_table_unref);
g_clear_pointer (&priv->current_tools, g_hash_table_unref);
if (priv->monitors_changed_id && priv->monitor_manager) if (priv->monitors_changed_id && priv->monitor_manager)
{ {
@@ -785,11 +772,12 @@ update_keyboard_repeat (MetaInputSettings *input_settings)
repeat, delay, interval); repeat, delay, interval);
} }
static MetaMonitor * static gboolean
logical_monitor_find_monitor (MetaLogicalMonitor *logical_monitor, logical_monitor_has_monitor (MetaMonitorManager *monitor_manager,
const char *vendor, MetaLogicalMonitor *logical_monitor,
const char *product, const char *vendor,
const char *serial) const char *product,
const char *serial)
{ {
GList *monitors; GList *monitors;
GList *l; GList *l;
@@ -802,22 +790,20 @@ logical_monitor_find_monitor (MetaLogicalMonitor *logical_monitor,
if (g_strcmp0 (meta_monitor_get_vendor (monitor), vendor) == 0 && if (g_strcmp0 (meta_monitor_get_vendor (monitor), vendor) == 0 &&
g_strcmp0 (meta_monitor_get_product (monitor), product) == 0 && g_strcmp0 (meta_monitor_get_product (monitor), product) == 0 &&
g_strcmp0 (meta_monitor_get_serial (monitor), serial) == 0) g_strcmp0 (meta_monitor_get_serial (monitor), serial) == 0)
return monitor; return TRUE;
} }
return NULL; return FALSE;
} }
static void static MetaLogicalMonitor *
meta_input_settings_find_monitor (MetaInputSettings *input_settings, meta_input_settings_find_logical_monitor (MetaInputSettings *input_settings,
GSettings *settings, GSettings *settings,
ClutterInputDevice *device, ClutterInputDevice *device)
MetaMonitor **out_monitor,
MetaLogicalMonitor **out_logical_monitor)
{ {
MetaInputSettingsPrivate *priv; MetaInputSettingsPrivate *priv;
MetaMonitorManager *monitor_manager; MetaMonitorManager *monitor_manager;
MetaMonitor *monitor; MetaLogicalMonitor *ret = NULL;
guint n_values; guint n_values;
GList *logical_monitors; GList *logical_monitors;
GList *l; GList *l;
@@ -845,20 +831,20 @@ meta_input_settings_find_monitor (MetaInputSettings *input_settings,
{ {
MetaLogicalMonitor *logical_monitor = l->data; MetaLogicalMonitor *logical_monitor = l->data;
monitor = logical_monitor_find_monitor (logical_monitor, if (logical_monitor_has_monitor (monitor_manager,
edid[0], edid[1], edid[2]); logical_monitor,
if (monitor) edid[0],
edid[1],
edid[2]))
{ {
if (out_monitor) ret = logical_monitor;
*out_monitor = monitor;
if (out_logical_monitor)
*out_logical_monitor = logical_monitor;
break; break;
} }
} }
out: out:
g_strfreev (edid); g_strfreev (edid);
return ret;
} }
static void static void
@@ -894,8 +880,9 @@ update_tablet_keep_aspect (MetaInputSettings *input_settings,
CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE) CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE)
{ {
keep_aspect = g_settings_get_boolean (settings, "keep-aspect"); keep_aspect = g_settings_get_boolean (settings, "keep-aspect");
meta_input_settings_find_monitor (input_settings, settings, device, logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
NULL, &logical_monitor); settings,
device);
} }
else else
{ {
@@ -914,8 +901,7 @@ update_device_display (MetaInputSettings *input_settings,
MetaInputSettingsClass *input_settings_class; MetaInputSettingsClass *input_settings_class;
MetaInputSettingsPrivate *priv; MetaInputSettingsPrivate *priv;
gfloat matrix[6] = { 1, 0, 0, 0, 1, 0 }; gfloat matrix[6] = { 1, 0, 0, 0, 1, 0 };
MetaMonitor *monitor = NULL; MetaLogicalMonitor *logical_monitor;
MetaLogicalMonitor *logical_monitor = NULL;
if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE &&
clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE &&
@@ -930,12 +916,15 @@ update_device_display (MetaInputSettings *input_settings,
if (clutter_input_device_get_device_type (device) == CLUTTER_TOUCHSCREEN_DEVICE || if (clutter_input_device_get_device_type (device) == CLUTTER_TOUCHSCREEN_DEVICE ||
clutter_input_device_get_mapping_mode (device) == clutter_input_device_get_mapping_mode (device) ==
CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE) CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE)
meta_input_settings_find_monitor (input_settings, settings, device, logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
&monitor, &logical_monitor); settings,
device);
else
logical_monitor = NULL;
if (monitor) if (logical_monitor)
meta_monitor_manager_get_monitor_matrix (priv->monitor_manager, meta_monitor_manager_get_monitor_matrix (priv->monitor_manager,
monitor, logical_monitor, matrix); logical_monitor, matrix);
input_settings_class->set_matrix (input_settings, device, matrix); input_settings_class->set_matrix (input_settings, device, matrix);
@@ -1538,7 +1527,7 @@ update_stylus_buttonmap (MetaInputSettings *input_settings,
ClutterInputDeviceTool *tool) ClutterInputDeviceTool *tool)
{ {
MetaInputSettingsClass *input_settings_class; MetaInputSettingsClass *input_settings_class;
GDesktopStylusButtonAction primary, secondary, tertiary; GDesktopStylusButtonAction primary, secondary;
GSettings *tool_settings; GSettings *tool_settings;
if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE &&
@@ -1553,11 +1542,10 @@ update_stylus_buttonmap (MetaInputSettings *input_settings,
primary = g_settings_get_enum (tool_settings, "button-action"); primary = g_settings_get_enum (tool_settings, "button-action");
secondary = g_settings_get_enum (tool_settings, "secondary-button-action"); secondary = g_settings_get_enum (tool_settings, "secondary-button-action");
tertiary = g_settings_get_enum (tool_settings, "tertiary-button-action");
input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings); input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
input_settings_class->set_stylus_button_map (input_settings, device, tool, input_settings_class->set_stylus_button_map (input_settings, device, tool,
primary, secondary, tertiary); primary, secondary);
} }
static void static void
@@ -1609,71 +1597,22 @@ meta_input_settings_device_removed (ClutterDeviceManager *device_manager,
priv = meta_input_settings_get_instance_private (input_settings); priv = meta_input_settings_get_instance_private (input_settings);
g_hash_table_remove (priv->mappable_devices, device); g_hash_table_remove (priv->mappable_devices, device);
g_hash_table_remove (priv->current_tools, device);
if (g_hash_table_remove (priv->two_finger_devices, device) && if (g_hash_table_remove (priv->two_finger_devices, device) &&
g_hash_table_size (priv->two_finger_devices) == 0) g_hash_table_size (priv->two_finger_devices) == 0)
apply_device_settings (input_settings, NULL); apply_device_settings (input_settings, NULL);
} }
static void
current_tool_changed_cb (GSettings *settings,
const char *key,
gpointer user_data)
{
CurrentToolInfo *info = user_data;
apply_stylus_settings (info->input_settings, info->device, info->tool);
}
static CurrentToolInfo *
current_tool_info_new (MetaInputSettings *input_settings,
ClutterInputDevice *device,
ClutterInputDeviceTool *tool)
{
CurrentToolInfo *info;
info = g_new0 (CurrentToolInfo, 1);
info->input_settings = input_settings;
info->device = device;
info->tool = tool;
info->settings = lookup_tool_settings (tool, device);
info->changed_id =
g_signal_connect (info->settings, "changed",
G_CALLBACK (current_tool_changed_cb),
info);
return info;
}
static void
current_tool_info_free (CurrentToolInfo *info)
{
g_signal_handler_disconnect (info->settings, info->changed_id);
g_free (info);
}
static void static void
meta_input_settings_tool_changed (ClutterDeviceManager *device_manager, meta_input_settings_tool_changed (ClutterDeviceManager *device_manager,
ClutterInputDevice *device, ClutterInputDevice *device,
ClutterInputDeviceTool *tool, ClutterInputDeviceTool *tool,
MetaInputSettings *input_settings) MetaInputSettings *input_settings)
{ {
MetaInputSettingsPrivate *priv; if (!tool)
return;
priv = meta_input_settings_get_instance_private (input_settings); apply_stylus_settings (input_settings, device, tool);
if (tool)
{
CurrentToolInfo *current_tool;
current_tool = current_tool_info_new (input_settings, device, tool);
g_hash_table_insert (priv->current_tools, device, current_tool);
apply_stylus_settings (input_settings, device, tool);
}
else
{
g_hash_table_remove (priv->current_tools, device);
}
} }
static void static void
@@ -1770,9 +1709,6 @@ meta_input_settings_init (MetaInputSettings *settings)
priv->mappable_devices = priv->mappable_devices =
g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) device_mapping_info_free); g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) device_mapping_info_free);
priv->current_tools =
g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) current_tool_info_free);
priv->monitor_manager = g_object_ref (meta_monitor_manager_get ()); priv->monitor_manager = g_object_ref (meta_monitor_manager_get ());
g_signal_connect (priv->monitor_manager, "monitors-changed-internal", g_signal_connect (priv->monitor_manager, "monitors-changed-internal",
G_CALLBACK (monitors_changed_cb), settings); G_CALLBACK (monitors_changed_cb), settings);
@@ -1809,7 +1745,6 @@ MetaLogicalMonitor *
meta_input_settings_get_tablet_logical_monitor (MetaInputSettings *settings, meta_input_settings_get_tablet_logical_monitor (MetaInputSettings *settings,
ClutterInputDevice *device) ClutterInputDevice *device)
{ {
MetaLogicalMonitor *logical_monitor = NULL;
MetaInputSettingsPrivate *priv; MetaInputSettingsPrivate *priv;
DeviceMappingInfo *info; DeviceMappingInfo *info;
@@ -1821,9 +1756,9 @@ meta_input_settings_get_tablet_logical_monitor (MetaInputSettings *settings,
if (!info) if (!info)
return NULL; return NULL;
meta_input_settings_find_monitor (settings, info->settings, device, return meta_input_settings_find_logical_monitor (settings,
NULL, &logical_monitor); info->settings,
return logical_monitor; device);
} }
GDesktopTabletMapping GDesktopTabletMapping
@@ -1927,7 +1862,7 @@ meta_input_settings_cycle_tablet_output (MetaInputSettings *input_settings,
{ {
MetaInputSettingsPrivate *priv; MetaInputSettingsPrivate *priv;
DeviceMappingInfo *info; DeviceMappingInfo *info;
MetaLogicalMonitor *logical_monitor = NULL; MetaLogicalMonitor *logical_monitor;
const gchar *edid[4] = { 0 }, *pretty_name = NULL; const gchar *edid[4] = { 0 }, *pretty_name = NULL;
g_return_if_fail (META_IS_INPUT_SETTINGS (input_settings)); g_return_if_fail (META_IS_INPUT_SETTINGS (input_settings));
@@ -1950,9 +1885,9 @@ meta_input_settings_cycle_tablet_output (MetaInputSettings *input_settings,
} }
#endif #endif
meta_input_settings_find_monitor (input_settings, info->settings, device, logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
NULL, &logical_monitor); info->settings,
device);
if (!cycle_logical_monitors (input_settings, if (!cycle_logical_monitors (input_settings,
logical_monitor, logical_monitor,
&logical_monitor)) &logical_monitor))

View File

@@ -103,8 +103,7 @@ derive_monitor_transform (MetaMonitor *monitor)
main_output = meta_monitor_get_main_output (monitor); main_output = meta_monitor_get_main_output (monitor);
return meta_monitor_crtc_to_logical_transform (monitor, return main_output->crtc->transform;
main_output->crtc->transform);
} }
MetaLogicalMonitor * MetaLogicalMonitor *

View File

@@ -152,10 +152,11 @@ assign_monitor_crtc (MetaMonitor *monitor,
} }
transform = data->logical_monitor_config->transform; transform = data->logical_monitor_config->transform;
crtc_transform = meta_monitor_logical_to_crtc_transform (monitor, transform); if (meta_monitor_manager_is_transform_handled (data->monitor_manager,
if (!meta_monitor_manager_is_transform_handled (data->monitor_manager, crtc,
crtc, transform))
crtc_transform)) crtc_transform = transform;
else
crtc_transform = META_MONITOR_TRANSFORM_NORMAL; crtc_transform = META_MONITOR_TRANSFORM_NORMAL;
meta_monitor_calculate_crtc_pos (monitor, mode, output, crtc_transform, meta_monitor_calculate_crtc_pos (monitor, mode, output, crtc_transform,
@@ -754,20 +755,6 @@ create_for_builtin_display_rotation (MetaMonitorConfigManager *config_manager,
if (rotate) if (rotate)
transform = (current_logical_monitor_config->transform + 1) % META_MONITOR_TRANSFORM_FLIPPED; transform = (current_logical_monitor_config->transform + 1) % META_MONITOR_TRANSFORM_FLIPPED;
else
{
/*
* The transform coming from the accelerometer should be applied to
* the crtc as is, without taking panel-orientation into account, this
* is done so that non panel-orientation aware desktop environments do the
* right thing. Mutter corrects for panel-orientation when applying the
* transform from a logical-monitor-config, so we must convert here.
*/
MetaMonitor *panel =
meta_monitor_manager_get_laptop_panel (config_manager->monitor_manager);
transform = meta_monitor_crtc_to_logical_transform (panel, transform);
}
if (current_logical_monitor_config->transform == transform) if (current_logical_monitor_config->transform == transform)
return NULL; return NULL;

View File

@@ -316,7 +316,6 @@ void meta_monitor_manager_read_current_state (MetaMonitorManager *
void meta_monitor_manager_on_hotplug (MetaMonitorManager *manager); void meta_monitor_manager_on_hotplug (MetaMonitorManager *manager);
gboolean meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager, gboolean meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager,
MetaMonitor *monitor,
MetaLogicalMonitor *logical_monitor, MetaLogicalMonitor *logical_monitor,
gfloat matrix[6]); gfloat matrix[6]);
@@ -385,11 +384,4 @@ meta_monitor_transform_is_rotated (MetaMonitorTransform transform)
return (transform % 2); return (transform % 2);
} }
/* Returns true if transform involves flipping */
static inline gboolean
meta_monitor_transform_is_flipped (MetaMonitorTransform transform)
{
return (transform >= META_MONITOR_TRANSFORM_FLIPPED);
}
#endif /* META_MONITOR_MANAGER_PRIVATE_H */ #endif /* META_MONITOR_MANAGER_PRIVATE_H */

View File

@@ -2856,7 +2856,6 @@ multiply_matrix (float a[6],
gboolean gboolean
meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager, meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager,
MetaMonitor *monitor,
MetaLogicalMonitor *logical_monitor, MetaLogicalMonitor *logical_monitor,
gfloat matrix[6]) gfloat matrix[6])
{ {
@@ -2866,9 +2865,7 @@ meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager,
if (!calculate_viewport_matrix (manager, logical_monitor, viewport)) if (!calculate_viewport_matrix (manager, logical_monitor, viewport))
return FALSE; return FALSE;
/* Get transform corrected for LCD panel-orientation. */
transform = logical_monitor->transform; transform = logical_monitor->transform;
transform = meta_monitor_logical_to_crtc_transform (monitor, transform);
multiply_matrix (viewport, transform_matrices[transform], multiply_matrix (viewport, transform_matrices[transform],
matrix); matrix);
return TRUE; return TRUE;

View File

@@ -34,7 +34,7 @@
#define MINIMUM_SCALE_FACTOR 1.0f #define MINIMUM_SCALE_FACTOR 1.0f
#define MAXIMUM_SCALE_FACTOR 4.0f #define MAXIMUM_SCALE_FACTOR 4.0f
#define MINIMUM_LOGICAL_WIDTH 800 #define MINIMUM_LOGICAL_WIDTH 800
#define MINIMUM_LOGICAL_HEIGHT 480 #define MINIMUM_LOGICAL_HEIGHT 600
#define MAXIMUM_REFRESH_RATE_DIFF 0.001 #define MAXIMUM_REFRESH_RATE_DIFF 0.001
typedef struct _MetaMonitorMode typedef struct _MetaMonitorMode
@@ -354,37 +354,6 @@ meta_monitor_get_connector_type (MetaMonitor *monitor)
return output->connector_type; return output->connector_type;
} }
MetaMonitorTransform
meta_monitor_logical_to_crtc_transform (MetaMonitor *monitor,
MetaMonitorTransform transform)
{
MetaOutput *output = meta_monitor_get_main_output (monitor);
MetaMonitorTransform new_transform;
new_transform = (transform + output->panel_orientation_transform) %
META_MONITOR_TRANSFORM_FLIPPED;
if (meta_monitor_transform_is_flipped (transform))
new_transform += META_MONITOR_TRANSFORM_FLIPPED;
return new_transform;
}
MetaMonitorTransform
meta_monitor_crtc_to_logical_transform (MetaMonitor *monitor,
MetaMonitorTransform transform)
{
MetaOutput *output = meta_monitor_get_main_output (monitor);
MetaMonitorTransform new_transform;
new_transform = (transform + META_MONITOR_TRANSFORM_FLIPPED -
output->panel_orientation_transform) %
META_MONITOR_TRANSFORM_FLIPPED;
if (meta_monitor_transform_is_flipped (transform))
new_transform += META_MONITOR_TRANSFORM_FLIPPED;
return new_transform;
}
static void static void
meta_monitor_finalize (GObject *object) meta_monitor_finalize (GObject *object)
{ {
@@ -454,29 +423,6 @@ meta_monitor_add_mode (MetaMonitor *monitor,
return TRUE; return TRUE;
} }
static MetaMonitorModeSpec
meta_monitor_create_spec (MetaMonitor *monitor,
int width,
int height,
MetaCrtcMode *crtc_mode)
{
MetaOutput *output = meta_monitor_get_main_output (monitor);
if (meta_monitor_transform_is_rotated (output->panel_orientation_transform))
{
int temp = width;
width = height;
height = temp;
}
return (MetaMonitorModeSpec) {
.width = width,
.height = height,
.refresh_rate = crtc_mode->refresh_rate,
.flags = crtc_mode->flags & HANDLED_CRTC_MODE_FLAGS
};
}
static void static void
meta_monitor_normal_generate_modes (MetaMonitorNormal *monitor_normal) meta_monitor_normal_generate_modes (MetaMonitorNormal *monitor_normal)
{ {
@@ -497,10 +443,12 @@ meta_monitor_normal_generate_modes (MetaMonitorNormal *monitor_normal)
gboolean replace; gboolean replace;
mode = g_new0 (MetaMonitorMode, 1); mode = g_new0 (MetaMonitorMode, 1);
mode->spec = meta_monitor_create_spec (monitor, mode->spec = (MetaMonitorModeSpec) {
crtc_mode->width, .width = crtc_mode->width,
crtc_mode->height, .height = crtc_mode->height,
crtc_mode); .refresh_rate = crtc_mode->refresh_rate,
.flags = crtc_mode->flags & HANDLED_CRTC_MODE_FLAGS
},
mode->id = generate_mode_id (&mode->spec); mode->id = generate_mode_id (&mode->spec);
mode->crtc_modes = g_new (MetaMonitorCrtcMode, 1); mode->crtc_modes = g_new (MetaMonitorCrtcMode, 1);
mode->crtc_modes[0] = (MetaMonitorCrtcMode) { mode->crtc_modes[0] = (MetaMonitorCrtcMode) {
@@ -832,8 +780,12 @@ create_tiled_monitor_mode (MetaMonitorTiled *monitor_tiled,
mode->is_tiled = TRUE; mode->is_tiled = TRUE;
meta_monitor_tiled_calculate_tiled_size (monitor, &width, &height); meta_monitor_tiled_calculate_tiled_size (monitor, &width, &height);
mode->parent.spec = mode->parent.spec = (MetaMonitorModeSpec) {
meta_monitor_create_spec (monitor, width, height, reference_crtc_mode); .width = width,
.height = height,
.refresh_rate = reference_crtc_mode->refresh_rate,
.flags = reference_crtc_mode->flags & HANDLED_CRTC_MODE_FLAGS
};
mode->parent.id = generate_mode_id (&mode->parent.spec); mode->parent.id = generate_mode_id (&mode->parent.spec);
mode->parent.crtc_modes = g_new0 (MetaMonitorCrtcMode, mode->parent.crtc_modes = g_new0 (MetaMonitorCrtcMode,
@@ -943,10 +895,12 @@ create_untiled_monitor_mode (MetaMonitorTiled *monitor_tiled,
mode = g_new0 (MetaMonitorModeTiled, 1); mode = g_new0 (MetaMonitorModeTiled, 1);
mode->is_tiled = FALSE; mode->is_tiled = FALSE;
mode->parent.spec = meta_monitor_create_spec (monitor, mode->parent.spec = (MetaMonitorModeSpec) {
crtc_mode->width, .width = crtc_mode->width,
crtc_mode->height, .height = crtc_mode->height,
crtc_mode); .refresh_rate = crtc_mode->refresh_rate,
.flags = crtc_mode->flags & HANDLED_CRTC_MODE_FLAGS
};
mode->parent.id = generate_mode_id (&mode->parent.spec); mode->parent.id = generate_mode_id (&mode->parent.spec);
mode->parent.crtc_modes = g_new0 (MetaMonitorCrtcMode, mode->parent.crtc_modes = g_new0 (MetaMonitorCrtcMode,
g_list_length (monitor_priv->outputs)); g_list_length (monitor_priv->outputs));
@@ -1202,8 +1156,8 @@ meta_monitor_tiled_get_main_output (MetaMonitor *monitor)
} }
static void static void
meta_monitor_tiled_derive_layout (MetaMonitor *monitor, meta_monitor_derived_derive_layout (MetaMonitor *monitor,
MetaRectangle *layout) MetaRectangle *layout)
{ {
MetaMonitorPrivate *monitor_priv = MetaMonitorPrivate *monitor_priv =
meta_monitor_get_instance_private (monitor); meta_monitor_get_instance_private (monitor);
@@ -1294,7 +1248,7 @@ meta_monitor_tiled_class_init (MetaMonitorTiledClass *klass)
object_class->finalize = meta_monitor_tiled_finalize; object_class->finalize = meta_monitor_tiled_finalize;
monitor_class->get_main_output = meta_monitor_tiled_get_main_output; monitor_class->get_main_output = meta_monitor_tiled_get_main_output;
monitor_class->derive_layout = meta_monitor_tiled_derive_layout; monitor_class->derive_layout = meta_monitor_derived_derive_layout;
monitor_class->calculate_crtc_pos = meta_monitor_tiled_calculate_crtc_pos; monitor_class->calculate_crtc_pos = meta_monitor_tiled_calculate_crtc_pos;
monitor_class->get_suggested_position = meta_monitor_tiled_get_suggested_position; monitor_class->get_suggested_position = meta_monitor_tiled_get_suggested_position;
} }

View File

@@ -145,16 +145,6 @@ const char * meta_monitor_get_serial (MetaMonitor *monitor);
MetaConnectorType meta_monitor_get_connector_type (MetaMonitor *monitor); MetaConnectorType meta_monitor_get_connector_type (MetaMonitor *monitor);
/* This function returns the transform corrected for the panel orientation */
MetaMonitorTransform meta_monitor_logical_to_crtc_transform (MetaMonitor *monitor,
MetaMonitorTransform transform);
/*
* This function converts a transform corrected for the panel orientation
* to its logical (user-visible) transform.
*/
MetaMonitorTransform meta_monitor_crtc_to_logical_transform (MetaMonitor *monitor,
MetaMonitorTransform transform);
uint32_t meta_monitor_tiled_get_tile_group_id (MetaMonitorTiled *monitor_tiled); uint32_t meta_monitor_tiled_get_tile_group_id (MetaMonitorTiled *monitor_tiled);
gboolean meta_monitor_get_suggested_position (MetaMonitor *monitor, gboolean meta_monitor_get_suggested_position (MetaMonitor *monitor,

View File

@@ -78,7 +78,6 @@ struct _MetaOutput
CoglSubpixelOrder subpixel_order; CoglSubpixelOrder subpixel_order;
MetaConnectorType connector_type; MetaConnectorType connector_type;
MetaMonitorTransform panel_orientation_transform;
MetaCrtcMode *preferred_mode; MetaCrtcMode *preferred_mode;
MetaCrtcMode **modes; MetaCrtcMode **modes;

View File

@@ -26,7 +26,6 @@
#include <linux/input.h> #include <linux/input.h>
#include <xkbcommon/xkbcommon.h> #include <xkbcommon/xkbcommon.h>
#include <stdlib.h>
#include "backends/meta-dbus-session-watcher.h" #include "backends/meta-dbus-session-watcher.h"
#include "backends/meta-screen-cast-session.h" #include "backends/meta-screen-cast-session.h"
@@ -39,11 +38,6 @@
#define META_REMOTE_DESKTOP_SESSION_DBUS_PATH "/org/gnome/Mutter/RemoteDesktop/Session" #define META_REMOTE_DESKTOP_SESSION_DBUS_PATH "/org/gnome/Mutter/RemoteDesktop/Session"
enum _MetaRemoteDesktopNotifyAxisFlags
{
META_REMOTE_DESKTOP_NOTIFY_AXIS_FLAGS_FINISH = 1 << 0,
} MetaRemoteDesktopNotifyAxisFlags;
struct _MetaRemoteDesktopSession struct _MetaRemoteDesktopSession
{ {
MetaDBusRemoteDesktopSessionSkeleton parent; MetaDBusRemoteDesktopSessionSkeleton parent;
@@ -58,7 +52,6 @@ struct _MetaRemoteDesktopSession
ClutterVirtualInputDevice *virtual_pointer; ClutterVirtualInputDevice *virtual_pointer;
ClutterVirtualInputDevice *virtual_keyboard; ClutterVirtualInputDevice *virtual_keyboard;
ClutterVirtualInputDevice *virtual_touchscreen;
}; };
static void static void
@@ -103,10 +96,6 @@ meta_remote_desktop_session_start (MetaRemoteDesktopSession *session,
clutter_device_manager_create_virtual_device (device_manager, clutter_device_manager_create_virtual_device (device_manager,
CLUTTER_KEYBOARD_DEVICE); CLUTTER_KEYBOARD_DEVICE);
session->virtual_touchscreen =
clutter_device_manager_create_virtual_device (device_manager,
CLUTTER_TOUCHSCREEN_DEVICE);
return TRUE; return TRUE;
} }
@@ -265,38 +254,6 @@ handle_stop (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
static gboolean
handle_notify_keyboard_keycode (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
unsigned int keycode,
gboolean pressed)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
ClutterKeyState state;
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
if (pressed)
state = CLUTTER_KEY_STATE_PRESSED;
else
state = CLUTTER_KEY_STATE_RELEASED;
clutter_virtual_input_device_notify_key (session->virtual_keyboard,
CLUTTER_CURRENT_TIME,
keycode,
state);
meta_dbus_remote_desktop_session_complete_notify_keyboard_keycode (skeleton,
invocation);
return TRUE;
}
static gboolean static gboolean
handle_notify_keyboard_keysym (MetaDBusRemoteDesktopSession *skeleton, handle_notify_keyboard_keysym (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation, GDBusMethodInvocation *invocation,
@@ -386,42 +343,6 @@ handle_notify_pointer_button (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
static gboolean
handle_notify_pointer_axis (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
double dx,
double dy,
uint32_t flags)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
ClutterScrollFinishFlags finish_flags = CLUTTER_SCROLL_FINISHED_NONE;
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
if (flags & META_REMOTE_DESKTOP_NOTIFY_AXIS_FLAGS_FINISH)
{
finish_flags |= (CLUTTER_SCROLL_FINISHED_HORIZONTAL |
CLUTTER_SCROLL_FINISHED_VERTICAL);
}
clutter_virtual_input_device_notify_scroll_continuous (session->virtual_pointer,
CLUTTER_CURRENT_TIME,
dx, dy,
CLUTTER_SCROLL_SOURCE_FINGER,
finish_flags);
meta_dbus_remote_desktop_session_complete_notify_pointer_axis (skeleton,
invocation);
return TRUE;
}
static ClutterScrollDirection static ClutterScrollDirection
discrete_steps_to_scroll_direction (unsigned int axis, discrete_steps_to_scroll_direction (unsigned int axis,
int steps) int steps)
@@ -446,7 +367,6 @@ handle_notify_pointer_axis_discrete (MetaDBusRemoteDesktopSession *skeleton,
{ {
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton); MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
ClutterScrollDirection direction; ClutterScrollDirection direction;
int step_count;
if (!check_permission (session, invocation)) if (!check_permission (session, invocation))
{ {
@@ -456,7 +376,7 @@ handle_notify_pointer_axis_discrete (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
if (axis > 1) if (axis <= 1)
{ {
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED, G_DBUS_ERROR_FAILED,
@@ -472,18 +392,19 @@ handle_notify_pointer_axis_discrete (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
if (steps != -1 || steps != 1)
g_warning ("Multiple steps at at once not yet implemented, treating as one.");
/* /*
* We don't have the actual scroll source, but only know they should be * We don't have the actual scroll source, but only know they should be
* considered as discrete steps. The device that produces such scroll events * considered as discrete steps. The device that produces such scroll events
* is the scroll wheel, so pretend that is the scroll source. * is the scroll wheel, so pretend that is the scroll source.
*/ */
direction = discrete_steps_to_scroll_direction (axis, steps); direction = discrete_steps_to_scroll_direction (axis, steps);
clutter_virtual_input_device_notify_discrete_scroll (session->virtual_pointer,
for (step_count = 0; step_count < abs (steps); step_count++) CLUTTER_CURRENT_TIME,
clutter_virtual_input_device_notify_discrete_scroll (session->virtual_pointer, direction,
CLUTTER_CURRENT_TIME, CLUTTER_SCROLL_SOURCE_WHEEL);
direction,
CLUTTER_SCROLL_SOURCE_WHEEL);
meta_dbus_remote_desktop_session_complete_notify_pointer_axis_discrete (skeleton, meta_dbus_remote_desktop_session_complete_notify_pointer_axis_discrete (skeleton,
invocation); invocation);
@@ -491,32 +412,6 @@ handle_notify_pointer_axis_discrete (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
static gboolean
handle_notify_pointer_motion_relative (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
double dx,
double dy)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
clutter_virtual_input_device_notify_relative_motion (session->virtual_pointer,
CLUTTER_CURRENT_TIME,
dx, dy);
meta_dbus_remote_desktop_session_complete_notify_pointer_motion_relative (skeleton,
invocation);
return TRUE;
}
static gboolean static gboolean
handle_notify_pointer_motion_absolute (MetaDBusRemoteDesktopSession *skeleton, handle_notify_pointer_motion_absolute (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation, GDBusMethodInvocation *invocation,
@@ -525,8 +420,6 @@ handle_notify_pointer_motion_absolute (MetaDBusRemoteDesktopSession *skeleton,
double y) double y)
{ {
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton); MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
MetaScreenCastStream *stream;
double abs_x, abs_y;
if (!check_permission (session, invocation)) if (!check_permission (session, invocation))
{ {
@@ -536,29 +429,9 @@ handle_notify_pointer_motion_absolute (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
if (!session->screen_cast_session)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"No screen cast active");
return TRUE;
}
stream = meta_screen_cast_session_get_stream (session->screen_cast_session,
stream_path);
if (!stream)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"Unknown stream");
return TRUE;
}
meta_screen_cast_stream_transform_position (stream, x, y, &abs_x, &abs_y);
clutter_virtual_input_device_notify_absolute_motion (session->virtual_pointer, clutter_virtual_input_device_notify_absolute_motion (session->virtual_pointer,
CLUTTER_CURRENT_TIME, CLUTTER_CURRENT_TIME,
abs_x, abs_y); x, y);
meta_dbus_remote_desktop_session_complete_notify_pointer_motion_absolute (skeleton, meta_dbus_remote_desktop_session_complete_notify_pointer_motion_absolute (skeleton,
invocation); invocation);
@@ -566,148 +439,15 @@ handle_notify_pointer_motion_absolute (MetaDBusRemoteDesktopSession *skeleton,
return TRUE; return TRUE;
} }
static gboolean
handle_notify_touch_down (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
const char *stream_path,
unsigned int slot,
double x,
double y)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
MetaScreenCastStream *stream;
double abs_x, abs_y;
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
if (!session->screen_cast_session)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"No screen cast active");
return TRUE;
}
stream = meta_screen_cast_session_get_stream (session->screen_cast_session,
stream_path);
if (!stream)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"Unknown stream");
return TRUE;
}
meta_screen_cast_stream_transform_position (stream, x, y, &abs_x, &abs_y);
clutter_virtual_input_device_notify_touch_down (session->virtual_touchscreen,
CLUTTER_CURRENT_TIME,
slot,
abs_x, abs_y);
meta_dbus_remote_desktop_session_complete_notify_touch_down (skeleton,
invocation);
return TRUE;
}
static gboolean
handle_notify_touch_motion (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
const char *stream_path,
unsigned int slot,
double x,
double y)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
MetaScreenCastStream *stream;
double abs_x, abs_y;
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
if (!session->screen_cast_session)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"No screen cast active");
return TRUE;
}
stream = meta_screen_cast_session_get_stream (session->screen_cast_session,
stream_path);
if (!stream)
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_FAILED,
"Unknown stream");
return TRUE;
}
meta_screen_cast_stream_transform_position (stream, x, y, &abs_x, &abs_y);
clutter_virtual_input_device_notify_touch_motion (session->virtual_touchscreen,
CLUTTER_CURRENT_TIME,
slot,
abs_x, abs_y);
meta_dbus_remote_desktop_session_complete_notify_touch_motion (skeleton,
invocation);
return TRUE;
}
static gboolean
handle_notify_touch_up (MetaDBusRemoteDesktopSession *skeleton,
GDBusMethodInvocation *invocation,
unsigned int slot)
{
MetaRemoteDesktopSession *session = META_REMOTE_DESKTOP_SESSION (skeleton);
if (!check_permission (session, invocation))
{
g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR,
G_DBUS_ERROR_ACCESS_DENIED,
"Permission denied");
return TRUE;
}
clutter_virtual_input_device_notify_touch_up (session->virtual_touchscreen,
CLUTTER_CURRENT_TIME,
slot);
meta_dbus_remote_desktop_session_complete_notify_touch_up (skeleton,
invocation);
return TRUE;
}
static void static void
meta_remote_desktop_session_init_iface (MetaDBusRemoteDesktopSessionIface *iface) meta_remote_desktop_session_init_iface (MetaDBusRemoteDesktopSessionIface *iface)
{ {
iface->handle_start = handle_start; iface->handle_start = handle_start;
iface->handle_stop = handle_stop; iface->handle_stop = handle_stop;
iface->handle_notify_keyboard_keycode = handle_notify_keyboard_keycode;
iface->handle_notify_keyboard_keysym = handle_notify_keyboard_keysym; iface->handle_notify_keyboard_keysym = handle_notify_keyboard_keysym;
iface->handle_notify_pointer_button = handle_notify_pointer_button; iface->handle_notify_pointer_button = handle_notify_pointer_button;
iface->handle_notify_pointer_axis = handle_notify_pointer_axis;
iface->handle_notify_pointer_axis_discrete = handle_notify_pointer_axis_discrete; iface->handle_notify_pointer_axis_discrete = handle_notify_pointer_axis_discrete;
iface->handle_notify_pointer_motion_relative = handle_notify_pointer_motion_relative;
iface->handle_notify_pointer_motion_absolute = handle_notify_pointer_motion_absolute; iface->handle_notify_pointer_motion_absolute = handle_notify_pointer_motion_absolute;
iface->handle_notify_touch_down = handle_notify_touch_down;
iface->handle_notify_touch_motion = handle_notify_touch_motion;
iface->handle_notify_touch_up = handle_notify_touch_up;
} }
static void static void

View File

@@ -42,15 +42,6 @@
#define META_REMOTE_DESKTOP_DBUS_SERVICE "org.gnome.Mutter.RemoteDesktop" #define META_REMOTE_DESKTOP_DBUS_SERVICE "org.gnome.Mutter.RemoteDesktop"
#define META_REMOTE_DESKTOP_DBUS_PATH "/org/gnome/Mutter/RemoteDesktop" #define META_REMOTE_DESKTOP_DBUS_PATH "/org/gnome/Mutter/RemoteDesktop"
#define META_REMOTE_DESKTOP_API_VERSION 1
typedef enum _MetaRemoteDesktopDeviceTypes
{
META_REMOTE_DESKTOP_DEVICE_TYPE_NONE = 0,
META_REMOTE_DESKTOP_DEVICE_TYPE_KEYBOARD = 1 << 0,
META_REMOTE_DESKTOP_DEVICE_TYPE_POINTER = 1 << 1,
META_REMOTE_DESKTOP_DEVICE_TYPE_TOUCHSCREEN = 1 << 2,
} MetaRemoteDesktopDeviceTypes;
struct _MetaRemoteDesktop struct _MetaRemoteDesktop
{ {
@@ -233,39 +224,10 @@ meta_remote_desktop_new (MetaDbusSessionWatcher *session_watcher)
return remote_desktop; return remote_desktop;
} }
static MetaRemoteDesktopDeviceTypes
calculate_supported_device_types (void)
{
ClutterDeviceManager *device_manager =
clutter_device_manager_get_default ();
ClutterVirtualDeviceType device_types;
MetaRemoteDesktopDeviceTypes supported_devices =
META_REMOTE_DESKTOP_DEVICE_TYPE_NONE;
device_types =
clutter_device_manager_get_supported_virtual_device_types (device_manager);
if (device_types & CLUTTER_VIRTUAL_DEVICE_TYPE_KEYBOARD)
supported_devices |= META_REMOTE_DESKTOP_DEVICE_TYPE_KEYBOARD;
if (device_types & CLUTTER_VIRTUAL_DEVICE_TYPE_POINTER)
supported_devices |= META_REMOTE_DESKTOP_DEVICE_TYPE_POINTER;
if (device_types & CLUTTER_VIRTUAL_DEVICE_TYPE_TOUCHSCREEN)
supported_devices |= META_REMOTE_DESKTOP_DEVICE_TYPE_TOUCHSCREEN;
return supported_devices;
}
static void static void
meta_remote_desktop_init (MetaRemoteDesktop *remote_desktop) meta_remote_desktop_init (MetaRemoteDesktop *remote_desktop)
{ {
remote_desktop->sessions = g_hash_table_new (g_str_hash, g_str_equal); remote_desktop->sessions = g_hash_table_new (g_str_hash, g_str_equal);
meta_dbus_remote_desktop_set_supported_device_types (
META_DBUS_REMOTE_DESKTOP (remote_desktop),
calculate_supported_device_types ());
meta_dbus_remote_desktop_set_version (
META_DBUS_REMOTE_DESKTOP (remote_desktop),
META_REMOTE_DESKTOP_API_VERSION);
} }
static void static void

View File

@@ -176,24 +176,6 @@ meta_screen_cast_monitor_stream_set_parameters (MetaScreenCastStream *stream,
logical_monitor_layout.height)); logical_monitor_layout.height));
} }
static void
meta_screen_cast_monitor_stream_transform_position (MetaScreenCastStream *stream,
double stream_x,
double stream_y,
double *x,
double *y)
{
MetaScreenCastMonitorStream *monitor_stream =
META_SCREEN_CAST_MONITOR_STREAM (stream);
MetaRectangle logical_monitor_layout;
logical_monitor_layout =
meta_logical_monitor_get_layout (monitor_stream->logical_monitor);
*x = logical_monitor_layout.x + stream_x;
*y = logical_monitor_layout.y + stream_y;
}
static void static void
meta_screen_cast_monitor_stream_set_property (GObject *object, meta_screen_cast_monitor_stream_set_property (GObject *object,
guint prop_id, guint prop_id,
@@ -265,7 +247,6 @@ meta_screen_cast_monitor_stream_class_init (MetaScreenCastMonitorStreamClass *kl
stream_class->create_src = meta_screen_cast_monitor_stream_create_src; stream_class->create_src = meta_screen_cast_monitor_stream_create_src;
stream_class->set_parameters = meta_screen_cast_monitor_stream_set_parameters; stream_class->set_parameters = meta_screen_cast_monitor_stream_set_parameters;
stream_class->transform_position = meta_screen_cast_monitor_stream_transform_position;
g_object_class_install_property (object_class, g_object_class_install_property (object_class,
PROP_MONITOR, PROP_MONITOR,

View File

@@ -97,24 +97,6 @@ meta_screen_cast_session_close (MetaScreenCastSession *session)
g_object_unref (session); g_object_unref (session);
} }
MetaScreenCastStream *
meta_screen_cast_session_get_stream (MetaScreenCastSession *session,
const char *path)
{
GList *l;
for (l = session->streams; l; l = l->next)
{
MetaScreenCastStream *stream = l->data;
if (g_strcmp0 (meta_screen_cast_stream_get_object_path (stream),
path) == 0)
return stream;
}
return NULL;
}
char * char *
meta_screen_cast_session_get_object_path (MetaScreenCastSession *session) meta_screen_cast_session_get_object_path (MetaScreenCastSession *session)
{ {

View File

@@ -25,8 +25,6 @@
#include "backends/meta-screen-cast.h" #include "backends/meta-screen-cast.h"
#include "backends/meta-screen-cast-stream.h"
typedef enum _MetaScreenCastSessionType typedef enum _MetaScreenCastSessionType
{ {
META_SCREEN_CAST_SESSION_TYPE_NORMAL, META_SCREEN_CAST_SESSION_TYPE_NORMAL,
@@ -50,7 +48,4 @@ gboolean meta_screen_cast_session_start (MetaScreenCastSession *session,
void meta_screen_cast_session_close (MetaScreenCastSession *session); void meta_screen_cast_session_close (MetaScreenCastSession *session);
MetaScreenCastStream * meta_screen_cast_session_get_stream (MetaScreenCastSession *session,
const char *path);
#endif /* META_SCREEN_CAST_SESSION_H */ #endif /* META_SCREEN_CAST_SESSION_H */

View File

@@ -26,9 +26,11 @@
#include <errno.h> #include <errno.h>
#include <pipewire/pipewire.h> #include <pipewire/pipewire.h>
#include <spa/param/props.h> #include <spa/format-builder.h>
#include <spa/param/format-utils.h> #include <spa/format-utils.h>
#include <spa/param/video/format-utils.h> #include <spa/props.h>
#include <spa/type-map.h>
#include <spa/video/format-utils.h>
#include <stdint.h> #include <stdint.h>
#include <sys/mman.h> #include <sys/mman.h>
@@ -59,6 +61,10 @@ static guint signals[N_SIGNALS];
typedef struct _MetaSpaType typedef struct _MetaSpaType
{ {
uint32_t format;
uint32_t props;
struct spa_type_meta meta;
struct spa_type_data data;
struct spa_type_media_type media_type; struct spa_type_media_type media_type;
struct spa_type_media_subtype media_subtype; struct spa_type_media_subtype media_subtype;
struct spa_type_format_video format_video; struct spa_type_format_video format_video;
@@ -88,6 +94,7 @@ typedef struct _MetaScreenCastStreamSrcPrivate
struct spa_hook pipewire_stream_listener; struct spa_hook pipewire_stream_listener;
MetaSpaType spa_type; MetaSpaType spa_type;
uint8_t params_buffer[1024];
struct spa_video_info_raw video_format; struct spa_video_info_raw video_format;
uint64_t last_frame_timestamp_us; uint64_t last_frame_timestamp_us;
@@ -103,7 +110,12 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
meta_screen_cast_stream_src_init_initable_iface) meta_screen_cast_stream_src_init_initable_iface)
G_ADD_PRIVATE (MetaScreenCastStreamSrc)) G_ADD_PRIVATE (MetaScreenCastStreamSrc))
#define PROP_RANGE(min, max) 2, (min), (max) #define PROP(f, key, type, ...) \
SPA_POD_PROP (f, key, 0, type, 1, __VA_ARGS__)
#define PROP_U_MM(f, key, type, ...) \
SPA_POD_PROP (f, key, (SPA_POD_PROP_FLAG_UNSET | \
SPA_POD_PROP_RANGE_MIN_MAX), \
type, 3, __VA_ARGS__)
static void static void
meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src, meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
@@ -154,7 +166,7 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
buffer = pw_stream_peek_buffer (priv->pipewire_stream, buffer_id); buffer = pw_stream_peek_buffer (priv->pipewire_stream, buffer_id);
if (buffer->datas[0].type == priv->pipewire_type->data.MemFd) if (buffer->datas[0].type == priv->spa_type.data.MemFd)
{ {
map = mmap (NULL, buffer->datas[0].maxsize + buffer->datas[0].mapoffset, map = mmap (NULL, buffer->datas[0].maxsize + buffer->datas[0].mapoffset,
PROT_READ | PROT_WRITE, MAP_SHARED, PROT_READ | PROT_WRITE, MAP_SHARED,
@@ -168,7 +180,7 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
data = SPA_MEMBER (map, buffer->datas[0].mapoffset, uint8_t); data = SPA_MEMBER (map, buffer->datas[0].mapoffset, uint8_t);
} }
else if (buffer->datas[0].type == priv->pipewire_type->data.MemPtr) else if (buffer->datas[0].type == priv->spa_type.data.MemPtr)
{ {
data = buffer->datas[0].data; data = buffer->datas[0].data;
} }
@@ -183,8 +195,6 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
if (map) if (map)
munmap (map, buffer->datas[0].maxsize + buffer->datas[0].mapoffset); munmap (map, buffer->datas[0].maxsize + buffer->datas[0].mapoffset);
buffer->datas[0].chunk->size = buffer->datas[0].maxsize;
pw_stream_send_buffer (priv->pipewire_stream, buffer_id); pw_stream_send_buffer (priv->pipewire_stream, buffer_id);
} }
@@ -261,22 +271,23 @@ on_stream_state_changed (void *data,
} }
static void static void
on_stream_format_changed (void *data, on_stream_format_changed (void *data,
struct spa_pod *format) struct spa_format *format)
{ {
MetaScreenCastStreamSrc *src = data; MetaScreenCastStreamSrc *src = data;
MetaScreenCastStreamSrcPrivate *priv = MetaScreenCastStreamSrcPrivate *priv =
meta_screen_cast_stream_src_get_instance_private (src); meta_screen_cast_stream_src_get_instance_private (src);
struct pw_type *pipewire_type = priv->pipewire_type; struct pw_type *pipewire_type = priv->pipewire_type;
uint8_t params_buffer[1024]; struct spa_type_param_alloc_buffers *param_alloc_buffers;
int32_t width, height, stride, size; struct spa_pod_builder pod_builder = { NULL };
struct spa_pod_builder pod_builder; struct spa_pod_frame object_frame;
struct spa_pod *params[1]; struct spa_pod_frame prop_frame;
struct spa_param *params[1];
const int bpp = 4; const int bpp = 4;
if (!format) if (!format)
{ {
pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0); pw_stream_finish_format (priv->pipewire_stream, SPA_RESULT_OK, NULL, 0);
return; return;
} }
@@ -284,22 +295,31 @@ on_stream_format_changed (void *data,
&priv->video_format, &priv->video_format,
&priv->spa_type.format_video); &priv->spa_type.format_video);
width = priv->video_format.size.width; spa_pod_builder_init (&pod_builder,
height = priv->video_format.size.height; priv->params_buffer,
stride = SPA_ROUND_UP_N (width * bpp, 4); sizeof (priv->params_buffer));
size = height * stride;
pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer)); param_alloc_buffers = &pipewire_type->param_alloc_buffers;
spa_pod_builder_object (&pod_builder, &object_frame, 0,
param_alloc_buffers->Buffers,
PROP (&prop_frame, param_alloc_buffers->size,
SPA_POD_TYPE_INT,
(priv->video_format.size.width *
priv->video_format.size.height *
bpp)),
PROP (&prop_frame, param_alloc_buffers->stride,
SPA_POD_TYPE_INT,
priv->video_format.size.width * bpp),
PROP_U_MM (&prop_frame, param_alloc_buffers->buffers,
SPA_POD_TYPE_INT,
16, 2, 16),
PROP (&prop_frame, param_alloc_buffers->align,
SPA_POD_TYPE_INT,
16));
params[0] = SPA_POD_BUILDER_DEREF (&pod_builder, object_frame.ref,
struct spa_param);
params[0] = spa_pod_builder_object ( pw_stream_finish_format (priv->pipewire_stream, SPA_RESULT_OK,
&pod_builder,
pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
":", pipewire_type->param_buffers.size, "i", size,
":", pipewire_type->param_buffers.stride, "i", stride,
":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
":", pipewire_type->param_buffers.align, "i", 16);
pw_stream_finish_format (priv->pipewire_stream, 0,
params, G_N_ELEMENTS (params)); params, G_N_ELEMENTS (params));
} }
@@ -316,17 +336,16 @@ create_pipewire_stream (MetaScreenCastStreamSrc *src,
MetaScreenCastStreamSrcPrivate *priv = MetaScreenCastStreamSrcPrivate *priv =
meta_screen_cast_stream_src_get_instance_private (src); meta_screen_cast_stream_src_get_instance_private (src);
struct pw_stream *pipewire_stream; struct pw_stream *pipewire_stream;
const struct spa_format *format;
uint8_t buffer[1024]; uint8_t buffer[1024];
struct spa_pod_builder pod_builder = struct spa_pod_builder pod_builder =
SPA_POD_BUILDER_INIT (buffer, sizeof (buffer)); SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
struct spa_pod_frame format_frame;
struct spa_pod_frame prop_frame;
MetaSpaType *spa_type = &priv->spa_type; MetaSpaType *spa_type = &priv->spa_type;
struct pw_type *pipewire_type = priv->pipewire_type;
int width, height; int width, height;
float frame_rate; float frame_rate;
MetaFraction frame_rate_fraction; MetaFraction frame_rate_fraction;
struct spa_fraction max_framerate;
struct spa_fraction min_framerate;
const struct spa_pod *params[1];
pipewire_stream = pw_stream_new (priv->pipewire_remote, pipewire_stream = pw_stream_new (priv->pipewire_remote,
"meta-screen-cast-src", "meta-screen-cast-src",
@@ -335,32 +354,42 @@ create_pipewire_stream (MetaScreenCastStreamSrc *src,
meta_screen_cast_stream_src_get_specs (src, &width, &height, &frame_rate); meta_screen_cast_stream_src_get_specs (src, &width, &height, &frame_rate);
frame_rate_fraction = meta_fraction_from_double (frame_rate); frame_rate_fraction = meta_fraction_from_double (frame_rate);
min_framerate = SPA_FRACTION (1, 1); spa_pod_builder_format (&pod_builder, &format_frame,
max_framerate = SPA_FRACTION (frame_rate_fraction.num, spa_type->format,
frame_rate_fraction.denom); spa_type->media_type.video,
spa_type->media_subtype.raw,
params[0] = spa_pod_builder_object ( PROP (&prop_frame,
&pod_builder, spa_type->format_video.format,
pipewire_type->param.idEnumFormat, pipewire_type->spa_format, SPA_POD_TYPE_ID, spa_type->video_format.BGRx),
"I", spa_type->media_type.video, PROP (&prop_frame,
"I", spa_type->media_subtype.raw, spa_type->format_video.size,
":", spa_type->format_video.format, "I", spa_type->video_format.BGRx, SPA_POD_TYPE_RECTANGLE,
":", spa_type->format_video.size, "R", &SPA_RECTANGLE (width, height), width, height),
":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1), PROP (&prop_frame,
":", spa_type->format_video.max_framerate, "Fr", &max_framerate, spa_type->format_video.framerate,
PROP_RANGE (&min_framerate, SPA_POD_TYPE_FRACTION,
&max_framerate)); 0, 1),
PROP_U_MM (&prop_frame,
spa_type->format_video.max_framerate,
SPA_POD_TYPE_FRACTION,
frame_rate_fraction.num,
frame_rate_fraction.denom,
1, 1,
frame_rate_fraction.num,
frame_rate_fraction.denom));
format = SPA_POD_BUILDER_DEREF (&pod_builder, format_frame.ref, struct spa_format);
pw_stream_add_listener (pipewire_stream, pw_stream_add_listener (pipewire_stream,
&priv->pipewire_stream_listener, &priv->pipewire_stream_listener,
&stream_events, &stream_events,
src); src);
if (pw_stream_connect (pipewire_stream, if (!pw_stream_connect (pipewire_stream,
PW_DIRECTION_OUTPUT, PW_DIRECTION_OUTPUT,
NULL, PW_STREAM_MODE_BUFFER,
PW_STREAM_FLAG_NONE, NULL,
params, G_N_ELEMENTS (&params)) != 0) PW_STREAM_FLAG_NONE,
1, &format))
{ {
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"Could not connect"); "Could not connect");
@@ -424,8 +453,10 @@ pipewire_loop_source_dispatch (GSource *source,
int result; int result;
result = pw_loop_iterate (pipewire_source->pipewire_loop, 0); result = pw_loop_iterate (pipewire_source->pipewire_loop, 0);
if (result < 0) if (result == SPA_RESULT_ERRNO)
g_warning ("pipewire_loop_iterate failed: %s", spa_strerror (result)); g_warning ("pipewire_loop_iterate failed: %s", strerror (errno));
else if (result != SPA_RESULT_OK)
g_warning ("pipewire_loop_iterate failed: %d", result);
return TRUE; return TRUE;
} }
@@ -451,6 +482,10 @@ static void
init_spa_type (MetaSpaType *type, init_spa_type (MetaSpaType *type,
struct spa_type_map *map) struct spa_type_map *map)
{ {
type->format = spa_type_map_get_id (map, SPA_TYPE__Format);
type->props = spa_type_map_get_id (map, SPA_TYPE__Props);
spa_type_meta_map (map, &type->meta);
spa_type_data_map (map, &type->data);
spa_type_media_type_map (map, &type->media_type); spa_type_media_type_map (map, &type->media_type);
spa_type_media_subtype_map (map, &type->media_subtype); spa_type_media_subtype_map (map, &type->media_subtype);
spa_type_format_video_map (map, &type->format_video); spa_type_format_video_map (map, &type->format_video);
@@ -500,7 +535,13 @@ meta_screen_cast_stream_src_initable_init (GInitable *initable,
return FALSE; return FALSE;
} }
#if PIPEWIRE_VERSION_MICRO == 4
priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL);
#elif PIPEWIRE_VERSION_MICRO >= 5
priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0); priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
#else
priv->pipewire_remote = NULL;
#endif
if (!priv->pipewire_remote) if (!priv->pipewire_remote)
{ {
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,

View File

@@ -136,20 +136,6 @@ meta_screen_cast_stream_get_object_path (MetaScreenCastStream *stream)
return priv->object_path; return priv->object_path;
} }
void
meta_screen_cast_stream_transform_position (MetaScreenCastStream *stream,
double stream_x,
double stream_y,
double *x,
double *y)
{
META_SCREEN_CAST_STREAM_GET_CLASS (stream)->transform_position (stream,
stream_x,
stream_y,
x,
y);
}
static void static void
meta_screen_cast_stream_set_property (GObject *object, meta_screen_cast_stream_set_property (GObject *object,
guint prop_id, guint prop_id,

View File

@@ -41,11 +41,6 @@ struct _MetaScreenCastStreamClass
GError **error); GError **error);
void (* set_parameters) (MetaScreenCastStream *stream, void (* set_parameters) (MetaScreenCastStream *stream,
GVariantBuilder *parameters_builder); GVariantBuilder *parameters_builder);
void (* transform_position) (MetaScreenCastStream *stream,
double stream_x,
double stream_y,
double *x,
double *y);
}; };
gboolean meta_screen_cast_stream_start (MetaScreenCastStream *stream, gboolean meta_screen_cast_stream_start (MetaScreenCastStream *stream,
@@ -55,10 +50,4 @@ void meta_screen_cast_stream_close (MetaScreenCastStream *stream);
char * meta_screen_cast_stream_get_object_path (MetaScreenCastStream *stream); char * meta_screen_cast_stream_get_object_path (MetaScreenCastStream *stream);
void meta_screen_cast_stream_transform_position (MetaScreenCastStream *stream,
double stream_x,
double stream_y,
double *x,
double *y);
#endif /* META_SCREEN_CAST_STREAM_H */ #endif /* META_SCREEN_CAST_STREAM_H */

View File

@@ -32,7 +32,6 @@
#define META_SCREEN_CAST_DBUS_SERVICE "org.gnome.Mutter.ScreenCast" #define META_SCREEN_CAST_DBUS_SERVICE "org.gnome.Mutter.ScreenCast"
#define META_SCREEN_CAST_DBUS_PATH "/org/gnome/Mutter/ScreenCast" #define META_SCREEN_CAST_DBUS_PATH "/org/gnome/Mutter/ScreenCast"
#define META_SCREEN_CAST_API_VERSION 1
struct _MetaScreenCast struct _MetaScreenCast
{ {
@@ -265,9 +264,6 @@ meta_screen_cast_init (MetaScreenCast *screen_cast)
pw_init (NULL, NULL); pw_init (NULL, NULL);
is_pipewire_initialized = TRUE; is_pipewire_initialized = TRUE;
} }
meta_dbus_screen_cast_set_version (META_DBUS_SCREEN_CAST (screen_cast),
META_SCREEN_CAST_API_VERSION);
} }
static void static void

View File

@@ -348,13 +348,11 @@ update_xwayland_grab_access_rules (MetaSettings *settings)
int i; int i;
/* Free previous patterns and create new arrays */ /* Free previous patterns and create new arrays */
g_clear_pointer (&settings->xwayland_grab_whitelist_patterns, g_ptr_array_free (settings->xwayland_grab_whitelist_patterns, TRUE);
g_ptr_array_unref);
settings->xwayland_grab_whitelist_patterns = settings->xwayland_grab_whitelist_patterns =
g_ptr_array_new_with_free_func ((GDestroyNotify) g_pattern_spec_free); g_ptr_array_new_with_free_func ((GDestroyNotify) g_pattern_spec_free);
g_clear_pointer (&settings->xwayland_grab_blacklist_patterns, g_ptr_array_free (settings->xwayland_grab_blacklist_patterns, TRUE);
g_ptr_array_unref);
settings->xwayland_grab_blacklist_patterns = settings->xwayland_grab_blacklist_patterns =
g_ptr_array_new_with_free_func ((GDestroyNotify) g_pattern_spec_free); g_ptr_array_new_with_free_func ((GDestroyNotify) g_pattern_spec_free);

View File

@@ -51,7 +51,7 @@ common_resolutions = [
output_lines = [ output_lines = [
"/* Generated by gen-default-modes.py */\n", "/* Generated by gen-default-modes.py */\n",
"static const drmModeModeInfo meta_default_landscape_drm_mode_infos[] = {", "static const drmModeModeInfo meta_default_drm_mode_infos[] = {",
] ]
def sync_flags(hsync, vsync): def sync_flags(hsync, vsync):
@@ -76,21 +76,6 @@ def drm_mode_info_from_modeline(line):
sync_flags(sline[11], sline[12]), sync_flags(sline[11], sline[12]),
sline[1]) sline[1])
def portrait_drm_mode_info_from_modeline(line):
sline = line.split()
return "{ %d, %d, %d, %d, %d, 0, %d, %d, %d, %d, 0, 0, %s, DRM_MODE_TYPE_DEFAULT, \"%dx%d_60.00\" }," % \
(int(float(sline[2]) * 1000),
int(sline[7]),
int(sline[8]),
int(sline[9]),
int(sline[10]),
int(sline[3]),
int(sline[4]),
int(sline[5]),
int(sline[6]),
sync_flags(sline[12], sline[11]),
int(sline[7]), int(sline[3]))
for resolution in common_resolutions: for resolution in common_resolutions:
cvt = os.popen("%s %s %s" % ('cvt', resolution[0], resolution[1])) cvt = os.popen("%s %s %s" % ('cvt', resolution[0], resolution[1]))
cvt.readline() # discard comment line cvt.readline() # discard comment line
@@ -99,16 +84,6 @@ for resolution in common_resolutions:
cvt.close() cvt.close()
output_lines.append("};") output_lines.append("};")
output_lines.append("")
output_lines.append("static const drmModeModeInfo meta_default_portrait_drm_mode_infos[] = {")
for resolution in common_resolutions:
cvt = os.popen("%s %s %s" % ('cvt', resolution[0], resolution[1]))
cvt.readline() # discard comment line
line = cvt.readline()
output_lines.append(portrait_drm_mode_info_from_modeline(line))
cvt.close()
output_lines.append("};")
for line in output_lines: for line in output_lines:
sys.stdout.write(line + "\n") sys.stdout.write(line + "\n")
sys.stdout.flush() sys.stdout.flush()

View File

@@ -23,14 +23,9 @@
#include "backends/native/meta-crtc-kms.h" #include "backends/native/meta-crtc-kms.h"
#include <drm_fourcc.h>
#include <drm_mode.h>
#include "backends/meta-backend-private.h" #include "backends/meta-backend-private.h"
#include "backends/native/meta-gpu-kms.h" #include "backends/native/meta-gpu-kms.h"
#include <drm_fourcc.h>
#define ALL_TRANSFORMS (META_MONITOR_TRANSFORM_FLIPPED_270 + 1) #define ALL_TRANSFORMS (META_MONITOR_TRANSFORM_FLIPPED_270 + 1)
#define ALL_TRANSFORMS_MASK ((1 << ALL_TRANSFORMS) - 1) #define ALL_TRANSFORMS_MASK ((1 << ALL_TRANSFORMS) - 1)
@@ -41,12 +36,9 @@ typedef struct _MetaCrtcKms
uint32_t underscan_hborder_prop_id; uint32_t underscan_hborder_prop_id;
uint32_t underscan_vborder_prop_id; uint32_t underscan_vborder_prop_id;
uint32_t primary_plane_id; uint32_t primary_plane_id;
uint32_t formats_prop_id;
uint32_t rotation_prop_id; uint32_t rotation_prop_id;
uint32_t rotation_map[ALL_TRANSFORMS]; uint32_t rotation_map[ALL_TRANSFORMS];
uint32_t all_hw_transforms; uint32_t all_hw_transforms;
GArray *modifiers_xrgb8888;
} MetaCrtcKms; } MetaCrtcKms;
gboolean gboolean
@@ -176,101 +168,6 @@ find_property_index (MetaGpu *gpu,
return -1; return -1;
} }
GArray *
meta_crtc_kms_get_modifiers (MetaCrtc *crtc,
uint32_t format)
{
MetaCrtcKms *crtc_kms = crtc->driver_private;
if (format != DRM_FORMAT_XRGB8888)
return NULL;
return crtc_kms->modifiers_xrgb8888;
}
static inline uint32_t *
formats_ptr (struct drm_format_modifier_blob *blob)
{
return (uint32_t *) (((char *) blob) + blob->formats_offset);
}
static inline struct drm_format_modifier *
modifiers_ptr (struct drm_format_modifier_blob *blob)
{
return (struct drm_format_modifier *) (((char *) blob) +
blob->modifiers_offset);
}
static void
parse_formats (MetaCrtc *crtc,
int kms_fd,
uint32_t blob_id)
{
MetaCrtcKms *crtc_kms = crtc->driver_private;
drmModePropertyBlobPtr blob;
struct drm_format_modifier_blob *blob_fmt;
uint32_t *formats;
struct drm_format_modifier *modifiers;
unsigned int i;
unsigned int xrgb_idx = UINT_MAX;
if (blob_id == 0)
return;
blob = drmModeGetPropertyBlob (kms_fd, blob_id);
if (!blob)
return;
if (blob->length < sizeof (struct drm_format_modifier_blob))
{
drmModeFreePropertyBlob (blob);
return;
}
blob_fmt = blob->data;
/* Find the index of our XRGB8888 format. */
formats = formats_ptr (blob_fmt);
for (i = 0; i < blob_fmt->count_formats; i++)
{
if (formats[i] == DRM_FORMAT_XRGB8888)
{
xrgb_idx = i;
break;
}
}
if (xrgb_idx == UINT_MAX)
{
drmModeFreePropertyBlob (blob);
return;
}
modifiers = modifiers_ptr (blob_fmt);
crtc_kms->modifiers_xrgb8888 = g_array_new (FALSE, FALSE, sizeof (uint64_t));
for (i = 0; i < blob_fmt->count_modifiers; i++)
{
/* The modifier advertisement blob is partitioned into groups of
* 64 formats. */
if (xrgb_idx < modifiers[i].offset ||
xrgb_idx > modifiers[i].offset + 63)
continue;
if (!(modifiers[i].formats & (1 << (xrgb_idx - modifiers[i].offset))))
continue;
g_array_append_val (crtc_kms->modifiers_xrgb8888, modifiers[i].modifier);
}
if (crtc_kms->modifiers_xrgb8888->len == 0)
{
g_array_free (crtc_kms->modifiers_xrgb8888, TRUE);
crtc_kms->modifiers_xrgb8888 = NULL;
}
drmModeFreePropertyBlob (blob);
}
static void static void
parse_transforms (MetaCrtc *crtc, parse_transforms (MetaCrtc *crtc,
drmModePropertyPtr prop) drmModePropertyPtr prop)
@@ -349,7 +246,7 @@ init_crtc_rotations (MetaCrtc *crtc,
if (props && is_primary_plane (gpu, props)) if (props && is_primary_plane (gpu, props))
{ {
int rotation_idx, fmts_idx; int rotation_idx;
crtc_kms->primary_plane_id = drm_plane->plane_id; crtc_kms->primary_plane_id = drm_plane->plane_id;
rotation_idx = find_property_index (gpu, props, rotation_idx = find_property_index (gpu, props,
@@ -360,15 +257,6 @@ init_crtc_rotations (MetaCrtc *crtc,
parse_transforms (crtc, prop); parse_transforms (crtc, prop);
drmModeFreeProperty (prop); drmModeFreeProperty (prop);
} }
fmts_idx = find_property_index (gpu, props,
"IN_FORMATS", &prop);
if (fmts_idx >= 0)
{
crtc_kms->formats_prop_id = props->props[fmts_idx];
parse_formats (crtc, kms_fd, props->prop_values[fmts_idx]);
drmModeFreeProperty (prop);
}
} }
if (props) if (props)
@@ -423,10 +311,6 @@ find_crtc_properties (MetaCrtc *crtc,
static void static void
meta_crtc_destroy_notify (MetaCrtc *crtc) meta_crtc_destroy_notify (MetaCrtc *crtc)
{ {
MetaCrtcKms *crtc_kms = crtc->driver_private;
if (crtc_kms->modifiers_xrgb8888)
g_array_free (crtc_kms->modifiers_xrgb8888, TRUE);
g_free (crtc->driver_private); g_free (crtc->driver_private);
} }

View File

@@ -37,9 +37,6 @@ void meta_crtc_kms_apply_transform (MetaCrtc *crtc);
void meta_crtc_kms_set_underscan (MetaCrtc *crtc, void meta_crtc_kms_set_underscan (MetaCrtc *crtc,
gboolean is_underscanning); gboolean is_underscanning);
GArray * meta_crtc_kms_get_modifiers (MetaCrtc *crtc,
uint32_t format);
MetaCrtc * meta_create_kms_crtc (MetaGpuKms *gpu_kms, MetaCrtc * meta_create_kms_crtc (MetaGpuKms *gpu_kms,
drmModeCrtc *drm_crtc, drmModeCrtc *drm_crtc,
unsigned int crtc_index); unsigned int crtc_index);

View File

@@ -465,7 +465,6 @@ cursor_over_transformed_logical_monitor (MetaCursorRenderer *renderer,
MetaRectangle logical_monitor_layout; MetaRectangle logical_monitor_layout;
ClutterRect logical_monitor_rect; ClutterRect logical_monitor_rect;
MetaMonitorTransform transform; MetaMonitorTransform transform;
GList *monitors, *l_mon;
logical_monitor_layout = logical_monitor_layout =
meta_logical_monitor_get_layout (logical_monitor); meta_logical_monitor_get_layout (logical_monitor);
@@ -476,17 +475,9 @@ cursor_over_transformed_logical_monitor (MetaCursorRenderer *renderer,
NULL)) NULL))
continue; continue;
monitors = meta_logical_monitor_get_monitors (logical_monitor); transform = meta_logical_monitor_get_transform (logical_monitor);
for (l_mon = monitors; l_mon; l_mon = l_mon->next) if (transform != META_MONITOR_TRANSFORM_NORMAL)
{ return TRUE;
MetaMonitor *monitor = l_mon->data;
transform = meta_logical_monitor_get_transform (logical_monitor);
/* Get transform corrected for LCD panel-orientation. */
transform = meta_monitor_logical_to_crtc_transform (monitor, transform);
if (transform != META_MONITOR_TRANSFORM_NORMAL)
return TRUE;
}
} }
return FALSE; return FALSE;

View File

@@ -1,6 +1,6 @@
/* Generated by gen-default-modes.py */ /* Generated by gen-default-modes.py */
static const drmModeModeInfo meta_default_landscape_drm_mode_infos[] = { static const drmModeModeInfo meta_default_drm_mode_infos[] = {
{ 38250, 800, 832, 912, 1024, 0, 600, 603, 607, 624, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "800x600_60.00" }, { 38250, 800, 832, 912, 1024, 0, 600, 603, 607, 624, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "800x600_60.00" },
{ 63500, 1024, 1072, 1176, 1328, 0, 768, 771, 775, 798, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "1024x768_60.00" }, { 63500, 1024, 1072, 1176, 1328, 0, 768, 771, 775, 798, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "1024x768_60.00" },
{ 81750, 1152, 1216, 1336, 1520, 0, 864, 867, 871, 897, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "1152x864_60.00" }, { 81750, 1152, 1216, 1336, 1520, 0, 864, 867, 871, 897, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "1152x864_60.00" },
@@ -27,31 +27,3 @@ static const drmModeModeInfo meta_default_landscape_drm_mode_infos[] = {
{ 813000, 4096, 4440, 4888, 5680, 0, 2304, 2307, 2312, 2386, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "4096x2304_60.00" }, { 813000, 4096, 4440, 4888, 5680, 0, 2304, 2307, 2312, 2386, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "4096x2304_60.00" },
{ 1276500, 5120, 5560, 6128, 7136, 0, 2880, 2883, 2888, 2982, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "5120x2880_60.00" }, { 1276500, 5120, 5560, 6128, 7136, 0, 2880, 2883, 2888, 2982, 0, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_PVSYNC, DRM_MODE_TYPE_DEFAULT, "5120x2880_60.00" },
}; };
static const drmModeModeInfo meta_default_portrait_drm_mode_infos[] = {
{ 38250, 600, 603, 607, 624, 0, 800, 832, 912, 1024, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "600x800_60.00" },
{ 63500, 768, 771, 775, 798, 0, 1024, 1072, 1176, 1328, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "768x1024_60.00" },
{ 81750, 864, 867, 871, 897, 0, 1152, 1216, 1336, 1520, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "864x1152_60.00" },
{ 101250, 960, 963, 967, 996, 0, 1280, 1360, 1488, 1696, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "960x1280_60.00" },
{ 121750, 1050, 1053, 1057, 1089, 0, 1400, 1488, 1632, 1864, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1050x1400_60.00" },
{ 129000, 1080, 1083, 1087, 1120, 0, 1440, 1528, 1680, 1920, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1080x1440_60.00" },
{ 161000, 1200, 1203, 1207, 1245, 0, 1600, 1712, 1880, 2160, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1200x1600_60.00" },
{ 233500, 1440, 1443, 1447, 1493, 0, 1920, 2064, 2264, 2608, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1440x1920_60.00" },
{ 267250, 1536, 1539, 1543, 1592, 0, 2048, 2208, 2424, 2800, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1536x2048_60.00" },
{ 83500, 800, 803, 809, 831, 0, 1280, 1352, 1480, 1680, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "800x1280_60.00" },
{ 106500, 900, 903, 909, 934, 0, 1440, 1528, 1672, 1904, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "900x1440_60.00" },
{ 146250, 1050, 1053, 1059, 1089, 0, 1680, 1784, 1960, 2240, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1050x1680_60.00" },
{ 193250, 1200, 1203, 1209, 1245, 0, 1920, 2056, 2256, 2592, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1200x1920_60.00" },
{ 348500, 1600, 1603, 1609, 1658, 0, 2560, 2760, 3032, 3504, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1600x2560_60.00" },
{ 74500, 720, 723, 728, 748, 0, 1280, 1344, 1472, 1664, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "720x1280_60.00" },
{ 85250, 768, 771, 781, 798, 0, 1368, 1440, 1576, 1784, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "768x1368_60.00" },
{ 118250, 900, 903, 908, 934, 0, 1600, 1696, 1856, 2112, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "900x1600_60.00" },
{ 173000, 1080, 1083, 1088, 1120, 0, 1920, 2048, 2248, 2576, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1080x1920_60.00" },
{ 197000, 1152, 1155, 1160, 1195, 0, 2048, 2184, 2400, 2752, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1152x2048_60.00" },
{ 312250, 1440, 1443, 1448, 1493, 0, 2560, 2752, 3024, 3488, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1440x2560_60.00" },
{ 396250, 1620, 1623, 1628, 1679, 0, 2880, 3096, 3408, 3936, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1620x2880_60.00" },
{ 492000, 1800, 1803, 1808, 1865, 0, 3200, 3456, 3800, 4400, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "1800x3200_60.00" },
{ 712750, 2160, 2163, 2168, 2237, 0, 3840, 4160, 4576, 5312, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "2160x3840_60.00" },
{ 813000, 2304, 2307, 2312, 2386, 0, 4096, 4440, 4888, 5680, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "2304x4096_60.00" },
{ 1276500, 2880, 2883, 2888, 2982, 0, 5120, 5560, 6128, 7136, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "2880x5120_60.00" },
};

View File

@@ -601,21 +601,11 @@ init_modes (MetaGpuKms *gpu_kms,
g_hash_table_destroy (modes_table); g_hash_table_destroy (modes_table);
for (i = 0; i < G_N_ELEMENTS (meta_default_landscape_drm_mode_infos); i++) for (i = 0; i < G_N_ELEMENTS (meta_default_drm_mode_infos); i++)
{ {
MetaCrtcMode *mode; MetaCrtcMode *mode;
mode = create_mode (&meta_default_landscape_drm_mode_infos[i], mode_id); mode = create_mode (&meta_default_drm_mode_infos[i], (long) mode_id);
modes = g_list_append (modes, mode);
mode_id++;
}
for (i = 0; i < G_N_ELEMENTS (meta_default_portrait_drm_mode_infos); i++)
{
MetaCrtcMode *mode;
mode = create_mode (&meta_default_portrait_drm_mode_infos[i], mode_id);
modes = g_list_append (modes, mode); modes = g_list_append (modes, mode);
mode_id++; mode_id++;
@@ -675,21 +665,11 @@ init_outputs (MetaGpuKms *gpu_kms,
{ {
MetaOutput *output; MetaOutput *output;
MetaOutput *old_output; MetaOutput *old_output;
GError *error = NULL;
old_output = find_output_by_id (old_outputs, connector->connector_id); old_output = find_output_by_id (old_outputs, connector->connector_id);
output = meta_create_kms_output (gpu_kms, connector, resources, output = meta_create_kms_output (gpu_kms, connector, resources,
old_output, old_output);
&error); outputs = g_list_prepend (outputs, output);
if (!output)
{
g_warning ("Failed to create KMS output: %s", error->message);
g_error_free (error);
}
else
{
outputs = g_list_prepend (outputs, output);
}
} }
} }

View File

@@ -547,15 +547,12 @@ meta_input_settings_native_set_stylus_button_map (MetaInputSettings *se
ClutterInputDevice *device, ClutterInputDevice *device,
ClutterInputDeviceTool *tool, ClutterInputDeviceTool *tool,
GDesktopStylusButtonAction primary, GDesktopStylusButtonAction primary,
GDesktopStylusButtonAction secondary, GDesktopStylusButtonAction secondary)
GDesktopStylusButtonAction tertiary)
{ {
clutter_evdev_input_device_tool_set_button_code (tool, CLUTTER_BUTTON_MIDDLE, clutter_evdev_input_device_tool_set_button_code (tool, CLUTTER_BUTTON_MIDDLE,
action_to_evcode (primary)); action_to_evcode (primary));
clutter_evdev_input_device_tool_set_button_code (tool, CLUTTER_BUTTON_SECONDARY, clutter_evdev_input_device_tool_set_button_code (tool, CLUTTER_BUTTON_SECONDARY,
action_to_evcode (secondary)); action_to_evcode (secondary));
clutter_evdev_input_device_tool_set_button_code (tool, 8, /* Back */
action_to_evcode (tertiary));
} }
static void static void

View File

@@ -228,38 +228,10 @@ meta_output_kms_read_edid (MetaOutput *output)
return edid; return edid;
} }
static void
handle_panel_orientation (MetaOutput *output,
drmModePropertyPtr prop,
int orientation)
{
const char *name = prop->enums[orientation].name;
if (strcmp (name, "Upside Down") == 0)
{
output->panel_orientation_transform = META_MONITOR_TRANSFORM_180;
}
else if (strcmp (name, "Left Side Up") == 0)
{
/* Left side up, rotate 90 degrees counter clockwise to correct */
output->panel_orientation_transform = META_MONITOR_TRANSFORM_90;
}
else if (strcmp (name, "Right Side Up") == 0)
{
/* Right side up, rotate 270 degrees counter clockwise to correct */
output->panel_orientation_transform = META_MONITOR_TRANSFORM_270;
}
else
{
output->panel_orientation_transform = META_MONITOR_TRANSFORM_NORMAL;
}
}
static void static void
find_connector_properties (MetaGpuKms *gpu_kms, find_connector_properties (MetaGpuKms *gpu_kms,
MetaOutput *output) MetaOutputKms *output_kms)
{ {
MetaOutputKms *output_kms = output->driver_private;
drmModeConnector *connector = output_kms->connector; drmModeConnector *connector = output_kms->connector;
int fd; int fd;
int i; int i;
@@ -296,10 +268,6 @@ find_connector_properties (MetaGpuKms *gpu_kms,
output_kms->hotplug_mode_update = connector->prop_values[i]; output_kms->hotplug_mode_update = connector->prop_values[i];
else if (strcmp (prop->name, "scaling mode") == 0) else if (strcmp (prop->name, "scaling mode") == 0)
output_kms->has_scaling = TRUE; output_kms->has_scaling = TRUE;
else if ((prop->flags & DRM_MODE_PROP_ENUM) &&
strcmp (prop->name, "panel orientation") == 0)
handle_panel_orientation (output, prop,
output_kms->connector->prop_values[i]);
drmModeFreeProperty (prop); drmModeFreeProperty (prop);
} }
@@ -357,10 +325,7 @@ static void
add_common_modes (MetaOutput *output, add_common_modes (MetaOutput *output,
MetaGpuKms *gpu_kms) MetaGpuKms *gpu_kms)
{ {
const drmModeModeInfo *drm_mode;
MetaCrtcMode *crtc_mode;
GPtrArray *array; GPtrArray *array;
float refresh_rate;
unsigned i; unsigned i;
unsigned max_hdisplay = 0; unsigned max_hdisplay = 0;
unsigned max_vdisplay = 0; unsigned max_vdisplay = 0;
@@ -368,6 +333,9 @@ add_common_modes (MetaOutput *output,
for (i = 0; i < output->n_modes; i++) for (i = 0; i < output->n_modes; i++)
{ {
const drmModeModeInfo *drm_mode;
float refresh_rate;
drm_mode = output->modes[i]->driver_private; drm_mode = output->modes[i]->driver_private;
refresh_rate = meta_calculate_drm_mode_refresh_rate (drm_mode); refresh_rate = meta_calculate_drm_mode_refresh_rate (drm_mode);
max_hdisplay = MAX (max_hdisplay, drm_mode->hdisplay); max_hdisplay = MAX (max_hdisplay, drm_mode->hdisplay);
@@ -379,37 +347,22 @@ add_common_modes (MetaOutput *output,
max_refresh_rate *= (1 + SYNC_TOLERANCE); max_refresh_rate *= (1 + SYNC_TOLERANCE);
array = g_ptr_array_new (); array = g_ptr_array_new ();
if (max_hdisplay > max_vdisplay) for (i = 0; i < G_N_ELEMENTS (meta_default_drm_mode_infos); i++)
{ {
for (i = 0; i < G_N_ELEMENTS (meta_default_landscape_drm_mode_infos); i++) const drmModeModeInfo *drm_mode;
{ float refresh_rate;
drm_mode = &meta_default_landscape_drm_mode_infos[i]; MetaCrtcMode *crtc_mode;
refresh_rate = meta_calculate_drm_mode_refresh_rate (drm_mode);
if (drm_mode->hdisplay > max_hdisplay ||
drm_mode->vdisplay > max_vdisplay ||
refresh_rate > max_refresh_rate)
continue;
crtc_mode = meta_gpu_kms_get_mode_from_drm_mode (gpu_kms, drm_mode = &meta_default_drm_mode_infos[i];
drm_mode); refresh_rate = meta_calculate_drm_mode_refresh_rate (drm_mode);
g_ptr_array_add (array, crtc_mode); if (drm_mode->hdisplay > max_hdisplay ||
} drm_mode->vdisplay > max_vdisplay ||
} refresh_rate > max_refresh_rate)
else continue;
{
for (i = 0; i < G_N_ELEMENTS (meta_default_portrait_drm_mode_infos); i++)
{
drm_mode = &meta_default_portrait_drm_mode_infos[i];
refresh_rate = meta_calculate_drm_mode_refresh_rate (drm_mode);
if (drm_mode->hdisplay > max_hdisplay ||
drm_mode->vdisplay > max_vdisplay ||
refresh_rate > max_refresh_rate)
continue;
crtc_mode = meta_gpu_kms_get_mode_from_drm_mode (gpu_kms, crtc_mode = meta_gpu_kms_get_mode_from_drm_mode (gpu_kms,
drm_mode); drm_mode);
g_ptr_array_add (array, crtc_mode); g_ptr_array_add (array, crtc_mode);
}
} }
output->modes = g_renew (MetaCrtcMode *, output->modes, output->modes = g_renew (MetaCrtcMode *, output->modes,
@@ -438,10 +391,9 @@ compare_modes (const void *one,
return g_strcmp0 (b->name, a->name); return g_strcmp0 (b->name, a->name);
} }
static gboolean static void
init_output_modes (MetaOutput *output, init_output_modes (MetaOutput *output,
MetaGpuKms *gpu_kms, MetaGpuKms *gpu_kms)
GError **error)
{ {
MetaOutputKms *output_kms = output->driver_private; MetaOutputKms *output_kms = output->driver_private;
unsigned int i; unsigned int i;
@@ -461,35 +413,15 @@ init_output_modes (MetaOutput *output,
output->preferred_mode = output->modes[i]; output->preferred_mode = output->modes[i];
} }
/* FIXME: MSC feature bit? */
/* Presume that if the output supports scaling, then we have
* a panel fitter capable of adjusting any mode to suit.
*/
if (output_kms->has_scaling)
add_common_modes (output, gpu_kms);
if (!output->modes)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"No modes available");
return FALSE;
}
qsort (output->modes, output->n_modes,
sizeof (MetaCrtcMode *), compare_modes);
if (!output->preferred_mode) if (!output->preferred_mode)
output->preferred_mode = output->modes[0]; output->preferred_mode = output->modes[0];
return TRUE;
} }
MetaOutput * MetaOutput *
meta_create_kms_output (MetaGpuKms *gpu_kms, meta_create_kms_output (MetaGpuKms *gpu_kms,
drmModeConnector *connector, drmModeConnector *connector,
MetaKmsResources *resources, MetaKmsResources *resources,
MetaOutput *old_output, MetaOutput *old_output)
GError **error)
{ {
MetaGpu *gpu = META_GPU (gpu_kms); MetaGpu *gpu = META_GPU (gpu_kms);
MetaOutput *output; MetaOutput *output;
@@ -510,6 +442,8 @@ meta_create_kms_output (MetaGpuKms *gpu_kms,
output->gpu = gpu; output->gpu = gpu;
output->winsys_id = connector->connector_id; output->winsys_id = connector->connector_id;
output->name = make_output_name (connector); output->name = make_output_name (connector);
output->width_mm = connector->mmWidth;
output->height_mm = connector->mmHeight;
switch (connector->subpixel) switch (connector->subpixel)
{ {
@@ -535,24 +469,19 @@ meta_create_kms_output (MetaGpuKms *gpu_kms,
} }
output_kms->connector = connector; output_kms->connector = connector;
find_connector_properties (gpu_kms, output); find_connector_properties (gpu_kms, output_kms);
if (meta_monitor_transform_is_rotated (output->panel_orientation_transform)) init_output_modes (output, gpu_kms);
{
output->width_mm = connector->mmHeight;
output->height_mm = connector->mmWidth;
}
else
{
output->width_mm = connector->mmWidth;
output->height_mm = connector->mmHeight;
}
if (!init_output_modes (output, gpu_kms, error)) /* FIXME: MSC feature bit? */
{ /* Presume that if the output supports scaling, then we have
g_object_unref (output); * a panel fitter capable of adjusting any mode to suit.
return NULL; */
} if (output_kms->has_scaling)
add_common_modes (output, gpu_kms);
qsort (output->modes, output->n_modes,
sizeof (MetaCrtcMode *), compare_modes);
output_kms->n_encoders = connector->count_encoders; output_kms->n_encoders = connector->count_encoders;
output_kms->encoders = g_new0 (drmModeEncoderPtr, output_kms->n_encoders); output_kms->encoders = g_new0 (drmModeEncoderPtr, output_kms->n_encoders);

View File

@@ -35,10 +35,9 @@ gboolean meta_output_kms_can_clone (MetaOutput *output,
GBytes * meta_output_kms_read_edid (MetaOutput *output); GBytes * meta_output_kms_read_edid (MetaOutput *output);
MetaOutput * meta_create_kms_output (MetaGpuKms *gpu_kms, MetaOutput * meta_create_kms_output (MetaGpuKms *gpu_kms,
drmModeConnector *connector, drmModeConnector *connector,
MetaKmsResources *resources, MetaKmsResources *resources,
MetaOutput *old_output, MetaOutput *old_output);
GError **error);
#endif /* META_OUTPUT_KMS_H */ #endif /* META_OUTPUT_KMS_H */

View File

@@ -26,13 +26,11 @@
#include "backends/native/meta-renderer-native-gles3.h" #include "backends/native/meta-renderer-native-gles3.h"
#include <drm_fourcc.h>
#include <errno.h> #include <errno.h>
#include <gio/gio.h> #include <gio/gio.h>
#include <GLES3/gl3.h> #include <GLES3/gl3.h>
#include <string.h> #include <string.h>
#include "backends/meta-egl-ext.h"
#include "backends/meta-gles3.h" #include "backends/meta-gles3.h"
#include "backends/meta-gles3-table.h" #include "backends/meta-gles3-table.h"
@@ -50,92 +48,24 @@ create_egl_image (MetaEgl *egl,
EGLContext egl_context, EGLContext egl_context,
unsigned int width, unsigned int width,
unsigned int height, unsigned int height,
uint32_t n_planes, uint32_t stride,
uint32_t *strides,
uint32_t *offsets,
uint64_t *modifiers,
uint32_t format, uint32_t format,
int fd, int fd,
GError **error) GError **error)
{ {
EGLint attribs[37]; EGLint attributes[] = {
int atti = 0; EGL_WIDTH, width,
gboolean has_modifier; EGL_HEIGHT, height,
EGL_LINUX_DRM_FOURCC_EXT, format,
/* This requires the Mesa commit in EGL_DMA_BUF_PLANE0_FD_EXT, fd,
* Mesa 10.3 (08264e5dad4df448e7718e782ad9077902089a07) or EGL_DMA_BUF_PLANE0_OFFSET_EXT, 0,
* Mesa 10.2.7 (55d28925e6109a4afd61f109e845a8a51bd17652). EGL_DMA_BUF_PLANE0_PITCH_EXT, stride,
* Otherwise Mesa closes the fd behind our back and re-importing EGL_NONE
* will fail. };
* https://bugs.freedesktop.org/show_bug.cgi?id=76188
*/
attribs[atti++] = EGL_WIDTH;
attribs[atti++] = width;
attribs[atti++] = EGL_HEIGHT;
attribs[atti++] = height;
attribs[atti++] = EGL_LINUX_DRM_FOURCC_EXT;
attribs[atti++] = format;
has_modifier = (modifiers[0] != DRM_FORMAT_MOD_INVALID &&
modifiers[0] != DRM_FORMAT_MOD_LINEAR);
if (n_planes > 0)
{
attribs[atti++] = EGL_DMA_BUF_PLANE0_FD_EXT;
attribs[atti++] = fd;
attribs[atti++] = EGL_DMA_BUF_PLANE0_OFFSET_EXT;
attribs[atti++] = offsets[0];
attribs[atti++] = EGL_DMA_BUF_PLANE0_PITCH_EXT;
attribs[atti++] = strides[0];
if (has_modifier)
{
attribs[atti++] = EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT;
attribs[atti++] = modifiers[0] & 0xFFFFFFFF;
attribs[atti++] = EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT;
attribs[atti++] = modifiers[0] >> 32;
}
}
if (n_planes > 1)
{
attribs[atti++] = EGL_DMA_BUF_PLANE1_FD_EXT;
attribs[atti++] = fd;
attribs[atti++] = EGL_DMA_BUF_PLANE1_OFFSET_EXT;
attribs[atti++] = offsets[1];
attribs[atti++] = EGL_DMA_BUF_PLANE1_PITCH_EXT;
attribs[atti++] = strides[1];
if (has_modifier)
{
attribs[atti++] = EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT;
attribs[atti++] = modifiers[1] & 0xFFFFFFFF;
attribs[atti++] = EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT;
attribs[atti++] = modifiers[1] >> 32;
}
}
if (n_planes > 2)
{
attribs[atti++] = EGL_DMA_BUF_PLANE2_FD_EXT;
attribs[atti++] = fd;
attribs[atti++] = EGL_DMA_BUF_PLANE2_OFFSET_EXT;
attribs[atti++] = offsets[2];
attribs[atti++] = EGL_DMA_BUF_PLANE2_PITCH_EXT;
attribs[atti++] = strides[2];
if (has_modifier)
{
attribs[atti++] = EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT;
attribs[atti++] = modifiers[2] & 0xFFFFFFFF;
attribs[atti++] = EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT;
attribs[atti++] = modifiers[2] >> 32;
}
}
attribs[atti++] = EGL_NONE;
return meta_egl_create_image (egl, egl_display, EGL_NO_CONTEXT, return meta_egl_create_image (egl, egl_display, EGL_NO_CONTEXT,
EGL_LINUX_DMA_BUF_EXT, NULL, EGL_LINUX_DMA_BUF_EXT, NULL,
attribs, attributes,
error); error);
} }
@@ -190,10 +120,7 @@ meta_renderer_native_gles3_blit_shared_bo (MetaEgl *egl,
int shared_bo_fd; int shared_bo_fd;
unsigned int width; unsigned int width;
unsigned int height; unsigned int height;
uint32_t i, n_planes; uint32_t stride;
uint32_t strides[4] = { 0 };
uint32_t offsets[4] = { 0 };
uint64_t modifiers[4] = { 0 };
uint32_t format; uint32_t format;
EGLImageKHR egl_image; EGLImageKHR egl_image;
@@ -207,23 +134,14 @@ meta_renderer_native_gles3_blit_shared_bo (MetaEgl *egl,
width = gbm_bo_get_width (shared_bo); width = gbm_bo_get_width (shared_bo);
height = gbm_bo_get_height (shared_bo); height = gbm_bo_get_height (shared_bo);
stride = gbm_bo_get_stride (shared_bo);
format = gbm_bo_get_format (shared_bo); format = gbm_bo_get_format (shared_bo);
n_planes = gbm_bo_get_plane_count (shared_bo);
for (i = 0; i < n_planes; i++)
{
strides[i] = gbm_bo_get_stride_for_plane (shared_bo, i);
offsets[i] = gbm_bo_get_offset (shared_bo, i);
modifiers[i] = gbm_bo_get_modifier (shared_bo);
}
egl_image = create_egl_image (egl, egl_image = create_egl_image (egl,
egl_display, egl_display,
egl_context, egl_context,
width, height, width, height, stride,
n_planes, format,
strides, offsets,
modifiers, format,
shared_bo_fd, shared_bo_fd,
error); error);
close (shared_bo_fd); close (shared_bo_fd);

View File

@@ -46,7 +46,6 @@
#include <sys/mman.h> #include <sys/mman.h>
#include <unistd.h> #include <unistd.h>
#include <xf86drm.h> #include <xf86drm.h>
#include <drm_fourcc.h>
#include "backends/meta-backend-private.h" #include "backends/meta-backend-private.h"
#include "backends/meta-crtc.h" #include "backends/meta-crtc.h"
@@ -56,7 +55,6 @@
#include "backends/meta-logical-monitor.h" #include "backends/meta-logical-monitor.h"
#include "backends/meta-output.h" #include "backends/meta-output.h"
#include "backends/meta-renderer-view.h" #include "backends/meta-renderer-view.h"
#include "backends/native/meta-crtc-kms.h"
#include "backends/native/meta-gpu-kms.h" #include "backends/native/meta-gpu-kms.h"
#include "backends/native/meta-monitor-manager-kms.h" #include "backends/native/meta-monitor-manager-kms.h"
#include "backends/native/meta-renderer-native.h" #include "backends/native/meta-renderer-native.h"
@@ -310,247 +308,6 @@ meta_onscreen_native_get_egl (MetaOnscreenNative *onscreen_native)
return meta_renderer_native_get_egl (onscreen_native->renderer_native); return meta_renderer_native_get_egl (onscreen_native->renderer_native);
} }
static GArray *
get_supported_kms_modifiers (CoglOnscreen *onscreen,
MetaGpu *gpu,
uint32_t format)
{
CoglOnscreenEGL *onscreen_egl = onscreen->winsys;
MetaOnscreenNative *onscreen_native = onscreen_egl->platform;
MetaLogicalMonitor *logical_monitor = onscreen_native->logical_monitor;
GArray *modifiers;
GArray *base_mods;
GList *l_crtc;
MetaCrtc *base_crtc = NULL;
GList *other_crtcs = NULL;
unsigned int i;
if (!logical_monitor)
return NULL;
/* Find our base CRTC to intersect against. */
for (l_crtc = meta_gpu_get_crtcs (gpu); l_crtc; l_crtc = l_crtc->next)
{
MetaCrtc *crtc = l_crtc->data;
if (crtc->logical_monitor != logical_monitor)
continue;
if (!base_crtc)
base_crtc = crtc;
else if (crtc == base_crtc)
continue;
else if (g_list_index (other_crtcs, crtc) == -1)
other_crtcs = g_list_append (other_crtcs, crtc);
}
if (!base_crtc)
goto out;
base_mods = meta_crtc_kms_get_modifiers (base_crtc, format);
if (!base_mods)
goto out;
/*
* If this is the only CRTC we have, we don't need to intersect the sets of
* modifiers.
*/
if (other_crtcs == NULL)
{
modifiers = g_array_sized_new (FALSE, FALSE, sizeof (uint64_t),
base_mods->len);
g_array_append_vals (modifiers, base_mods->data, base_mods->len);
return modifiers;
}
modifiers = g_array_new (FALSE, FALSE, sizeof (uint64_t));
/*
* For each modifier from base_crtc, check if it's available on all other
* CRTCs.
*/
for (i = 0; i < base_mods->len; i++)
{
uint64_t modifier = g_array_index (base_mods, uint64_t, i);
gboolean found_everywhere = TRUE;
GList *k;
/* Check if we have the same modifier available for all CRTCs. */
for (k = other_crtcs; k; k = k->next)
{
MetaCrtc *crtc = k->data;
GArray *crtc_mods;
unsigned int m;
gboolean found_here = FALSE;
if (crtc->logical_monitor != logical_monitor)
continue;
crtc_mods = meta_crtc_kms_get_modifiers (crtc, format);
if (!crtc_mods)
{
g_array_free (modifiers, TRUE);
goto out;
}
for (m = 0; m < crtc_mods->len; m++)
{
uint64_t local_mod = g_array_index (crtc_mods, uint64_t, m);
if (local_mod == modifier)
{
found_here = TRUE;
break;
}
}
if (!found_here)
{
found_everywhere = FALSE;
break;
}
}
if (found_everywhere)
g_array_append_val (modifiers, modifier);
}
if (modifiers->len == 0)
{
g_array_free (modifiers, TRUE);
goto out;
}
return modifiers;
out:
g_list_free (other_crtcs);
return NULL;
}
static GArray *
get_supported_egl_modifiers (CoglOnscreen *onscreen,
MetaGpu *gpu,
uint32_t format)
{
CoglOnscreenEGL *onscreen_egl = onscreen->winsys;
MetaOnscreenNative *onscreen_native = onscreen_egl->platform;
MetaRendererNative *renderer_native = onscreen_native->renderer_native;
MetaEgl *egl = meta_onscreen_native_get_egl (onscreen_native);
MetaRendererNativeGpuData *renderer_gpu_data;
EGLint num_modifiers;
GArray *modifiers;
GError *error = NULL;
gboolean ret;
renderer_gpu_data = meta_renderer_native_get_gpu_data (renderer_native,
META_GPU_KMS (gpu));
if (!meta_egl_has_extensions (egl, renderer_gpu_data->egl_display, NULL,
"EGL_EXT_image_dma_buf_import_modifiers",
NULL))
return NULL;
ret = meta_egl_query_dma_buf_modifiers (egl, renderer_gpu_data->egl_display,
format, 0, NULL, NULL,
&num_modifiers, NULL);
if (!ret || num_modifiers == 0)
return NULL;
modifiers = g_array_sized_new (FALSE, FALSE, sizeof (uint64_t),
num_modifiers);
ret = meta_egl_query_dma_buf_modifiers (egl, renderer_gpu_data->egl_display,
format, num_modifiers,
(EGLuint64KHR *) modifiers->data, NULL,
&num_modifiers, &error);
if (!ret)
{
g_warning ("Failed to query DMABUF modifiers: %s", error->message);
g_error_free (error);
g_array_free (modifiers, TRUE);
return NULL;
}
return modifiers;
}
static GArray *
get_supported_modifiers (CoglOnscreen *onscreen,
uint32_t format)
{
CoglOnscreenEGL *onscreen_egl = onscreen->winsys;
MetaOnscreenNative *onscreen_native = onscreen_egl->platform;
MetaLogicalMonitor *logical_monitor = onscreen_native->logical_monitor;
GArray *modifiers = NULL;
GArray *gpu_mods;
GList *l_monitor;
unsigned int i;
if (!logical_monitor)
return NULL;
/* Find our base CRTC to intersect against. */
for (l_monitor = meta_logical_monitor_get_monitors (logical_monitor);
l_monitor;
l_monitor = l_monitor->next)
{
MetaMonitor *monitor = l_monitor->data;
MetaGpu *gpu = meta_monitor_get_gpu (monitor);
if (gpu == META_GPU (onscreen_native->render_gpu))
gpu_mods = get_supported_kms_modifiers (onscreen, gpu, format);
else
gpu_mods = get_supported_egl_modifiers (onscreen, gpu, format);
if (!gpu_mods)
{
g_array_free (modifiers, TRUE);
return NULL;
}
if (!modifiers)
{
modifiers = gpu_mods;
continue;
}
for (i = 0; i < modifiers->len; i++)
{
uint64_t modifier = g_array_index (modifiers, uint64_t, i);
gboolean found = FALSE;
unsigned int m;
for (m = 0; m < gpu_mods->len; m++)
{
uint64_t gpu_mod = g_array_index (gpu_mods, uint64_t, m);
if (gpu_mod == modifier)
{
found = TRUE;
break;
}
}
if (!found)
{
g_array_remove_index_fast (modifiers, i);
i--;
}
}
g_array_free (gpu_mods, TRUE);
}
if (modifiers && modifiers->len == 0)
{
g_array_free (modifiers, TRUE);
return NULL;
}
return modifiers;
}
static gboolean static gboolean
init_secondary_gpu_state_gpu_copy_mode (MetaRendererNative *renderer_native, init_secondary_gpu_state_gpu_copy_mode (MetaRendererNative *renderer_native,
CoglOnscreen *onscreen, CoglOnscreen *onscreen,
@@ -934,73 +691,6 @@ meta_renderer_native_add_egl_config_attributes (CoglDisplay *cogl_disp
return i; return i;
} }
static gboolean
choose_egl_config_from_gbm_format (MetaEgl *egl,
EGLDisplay egl_display,
const EGLint *attributes,
uint32_t gbm_format,
EGLConfig *out_config,
GError **error)
{
EGLConfig *egl_configs;
EGLint n_configs;
EGLint i;
egl_configs = meta_egl_choose_all_configs (egl, egl_display,
attributes,
&n_configs,
error);
if (!egl_configs)
return FALSE;
for (i = 0; i < n_configs; i++)
{
EGLint visual_id;
if (!meta_egl_get_config_attrib (egl, egl_display,
egl_configs[i],
EGL_NATIVE_VISUAL_ID,
&visual_id,
error))
{
g_free (egl_configs);
return FALSE;
}
if ((uint32_t) visual_id == gbm_format)
{
*out_config = egl_configs[i];
g_free (egl_configs);
return TRUE;
}
}
g_free (egl_configs);
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"No EGL config matching supported GBM format found");
return FALSE;
}
static gboolean
meta_renderer_native_choose_egl_config (CoglDisplay *cogl_display,
EGLint *attributes,
EGLConfig *out_config,
GError **error)
{
CoglRenderer *cogl_renderer = cogl_display->renderer;
CoglRendererEGL *cogl_renderer_egl = cogl_renderer->winsys;
MetaBackend *backend = meta_get_backend ();
MetaEgl *egl = meta_backend_get_egl (backend);
EGLDisplay egl_display = cogl_renderer_egl->edpy;
return choose_egl_config_from_gbm_format (egl,
egl_display,
attributes,
GBM_FORMAT_XRGB8888,
out_config,
error);
}
static gboolean static gboolean
meta_renderer_native_setup_egl_display (CoglDisplay *cogl_display, meta_renderer_native_setup_egl_display (CoglDisplay *cogl_display,
GError **error) GError **error)
@@ -1047,8 +737,8 @@ create_dummy_pbuffer_surface (EGLDisplay egl_display,
EGL_NONE EGL_NONE
}; };
if (!meta_egl_choose_first_config (egl, egl_display, pbuffer_config_attribs, if (!meta_egl_choose_config (egl, egl_display, pbuffer_config_attribs,
&pbuffer_config, error)) &pbuffer_config, error))
return EGL_NO_SURFACE; return EGL_NO_SURFACE;
return meta_egl_create_pbuffer_surface (egl, egl_display, return meta_egl_create_pbuffer_surface (egl, egl_display,
@@ -1586,69 +1276,31 @@ gbm_get_next_fb_id (MetaGpuKms *gpu_kms,
struct gbm_bo **out_next_bo, struct gbm_bo **out_next_bo,
uint32_t *out_next_fb_id) uint32_t *out_next_fb_id)
{ {
uint32_t handle, stride;
struct gbm_bo *next_bo; struct gbm_bo *next_bo;
uint32_t next_fb_id; uint32_t next_fb_id;
int kms_fd; int kms_fd;
uint32_t handles[4] = { 0, };
uint32_t strides[4] = { 0, };
uint32_t offsets[4] = { 0, };
uint64_t modifiers[4] = { 0, };
int i;
/* Now we need to set the CRTC to whatever is the front buffer */ /* Now we need to set the CRTC to whatever is the front buffer */
next_bo = gbm_surface_lock_front_buffer (gbm_surface); next_bo = gbm_surface_lock_front_buffer (gbm_surface);
for (i = 0; i < gbm_bo_get_plane_count (next_bo); i++) stride = gbm_bo_get_stride (next_bo);
{ handle = gbm_bo_get_handle (next_bo).u32;
strides[i] = gbm_bo_get_stride_for_plane (next_bo, i);
handles[i] = gbm_bo_get_handle_for_plane (next_bo, i).u32;
offsets[i] = gbm_bo_get_offset (next_bo, i);
modifiers[i] = gbm_bo_get_modifier (next_bo);
}
kms_fd = meta_gpu_kms_get_fd (gpu_kms); kms_fd = meta_gpu_kms_get_fd (gpu_kms);
if (modifiers[0] != DRM_FORMAT_MOD_INVALID) if (drmModeAddFB (kms_fd,
gbm_bo_get_width (next_bo),
gbm_bo_get_height (next_bo),
24, /* depth */
32, /* bpp */
stride,
handle,
&next_fb_id))
{ {
if (drmModeAddFB2WithModifiers (kms_fd, g_warning ("Failed to create new back buffer handle: %m");
gbm_bo_get_width (next_bo), gbm_surface_release_buffer (gbm_surface, next_bo);
gbm_bo_get_height (next_bo), return FALSE;
gbm_bo_get_format (next_bo),
handles,
strides,
offsets,
modifiers,
&next_fb_id,
DRM_MODE_FB_MODIFIERS))
{
g_warning ("Failed to create new back buffer handle: %m");
gbm_surface_release_buffer (gbm_surface, next_bo);
return FALSE;
}
}
else if (drmModeAddFB2 (kms_fd,
gbm_bo_get_width (next_bo),
gbm_bo_get_height (next_bo),
gbm_bo_get_format (next_bo),
handles,
strides,
offsets,
&next_fb_id,
0))
{
if (drmModeAddFB (kms_fd,
gbm_bo_get_width (next_bo),
gbm_bo_get_height (next_bo),
24, /* depth */
32, /* bpp */
strides[0],
handles[0],
&next_fb_id))
{
g_warning ("Failed to create new back buffer handle: %m");
gbm_surface_release_buffer (gbm_surface, next_bo);
return FALSE;
}
} }
*out_next_bo = next_bo; *out_next_bo = next_bo;
@@ -1999,36 +1651,19 @@ meta_renderer_native_create_surface_gbm (CoglOnscreen *onscreen,
struct gbm_surface *new_gbm_surface; struct gbm_surface *new_gbm_surface;
EGLNativeWindowType egl_native_window; EGLNativeWindowType egl_native_window;
EGLSurface new_egl_surface; EGLSurface new_egl_surface;
uint32_t format = GBM_FORMAT_XRGB8888; uint32_t flags;
GArray *modifiers;
flags = GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING;
if (should_surface_be_sharable (onscreen))
flags |= GBM_BO_USE_LINEAR;
renderer_gpu_data = renderer_gpu_data =
meta_renderer_native_get_gpu_data (renderer_native, meta_renderer_native_get_gpu_data (renderer_native,
onscreen_native->render_gpu); onscreen_native->render_gpu);
new_gbm_surface = gbm_surface_create (renderer_gpu_data->gbm.device,
modifiers = get_supported_modifiers (onscreen, format); width, height,
GBM_FORMAT_XRGB8888,
if (modifiers) flags);
{
new_gbm_surface =
gbm_surface_create_with_modifiers (renderer_gpu_data->gbm.device,
width, height, format,
(uint64_t *) modifiers->data,
modifiers->len);
g_array_free (modifiers, TRUE);
}
else
{
uint32_t flags = GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING;
if (should_surface_be_sharable (onscreen))
flags |= GBM_BO_USE_LINEAR;
new_gbm_surface = gbm_surface_create (renderer_gpu_data->gbm.device,
width, height,
format,
flags);
}
if (!new_gbm_surface) if (!new_gbm_surface)
{ {
@@ -2475,7 +2110,6 @@ meta_renderer_native_release_onscreen (CoglOnscreen *onscreen)
static const CoglWinsysEGLVtable static const CoglWinsysEGLVtable
_cogl_winsys_egl_vtable = { _cogl_winsys_egl_vtable = {
.add_config_attributes = meta_renderer_native_add_egl_config_attributes, .add_config_attributes = meta_renderer_native_add_egl_config_attributes,
.choose_config = meta_renderer_native_choose_egl_config,
.display_setup = meta_renderer_native_setup_egl_display, .display_setup = meta_renderer_native_setup_egl_display,
.display_destroy = meta_renderer_native_destroy_egl_display, .display_destroy = meta_renderer_native_destroy_egl_display,
.context_created = meta_renderer_native_egl_context_created, .context_created = meta_renderer_native_egl_context_created,
@@ -2708,12 +2342,8 @@ calculate_view_transform (MetaMonitorManager *monitor_manager,
{ {
MetaMonitor *main_monitor; MetaMonitor *main_monitor;
MetaOutput *main_output; MetaOutput *main_output;
MetaMonitorTransform crtc_transform;
main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data; main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
main_output = meta_monitor_get_main_output (main_monitor); main_output = meta_monitor_get_main_output (main_monitor);
crtc_transform =
meta_monitor_logical_to_crtc_transform (main_monitor,
logical_monitor->transform);
/* /*
* Pick any monitor and output and check; all CRTCs of a logical monitor will * Pick any monitor and output and check; all CRTCs of a logical monitor will
@@ -2722,10 +2352,10 @@ calculate_view_transform (MetaMonitorManager *monitor_manager,
if (meta_monitor_manager_is_transform_handled (monitor_manager, if (meta_monitor_manager_is_transform_handled (monitor_manager,
main_output->crtc, main_output->crtc,
crtc_transform)) logical_monitor->transform))
return META_MONITOR_TRANSFORM_NORMAL; return META_MONITOR_TRANSFORM_NORMAL;
else else
return crtc_transform; return logical_monitor->transform;
} }
static MetaRendererView * static MetaRendererView *
@@ -2914,12 +2544,11 @@ create_secondary_egl_config (MetaEgl *egl,
EGL_NONE EGL_NONE
}; };
return choose_egl_config_from_gbm_format (egl, return meta_egl_choose_config (egl,
egl_display, egl_display,
attributes, attributes,
GBM_FORMAT_XRGB8888, egl_config,
egl_config, error);
error);
} }
static EGLContext static EGLContext

View File

@@ -112,7 +112,7 @@ translate_device_event (MetaBackendX11 *x11,
if (!device_event->send_event && device_event->time != CurrentTime) if (!device_event->send_event && device_event->time != CurrentTime)
{ {
if (XSERVER_TIME_IS_BEFORE (device_event->time, priv->latest_evtime)) if (device_event->time < priv->latest_evtime)
{ {
/* Emulated pointer events received after XIRejectTouch is received /* Emulated pointer events received after XIRejectTouch is received
* on a passive touch grab will contain older timestamps, update those * on a passive touch grab will contain older timestamps, update those
@@ -705,6 +705,8 @@ meta_backend_x11_init (MetaBackendX11 *x11)
*/ */
XInitThreads(); XInitThreads();
clutter_x11_request_reset_on_video_memory_purge ();
/* We do X11 event retrieval ourselves */ /* We do X11 event retrieval ourselves */
clutter_x11_disable_event_retrieval (); clutter_x11_disable_event_retrieval ();
} }

View File

@@ -55,46 +55,6 @@ enum {
SCROLL_METHOD_NUM_FIELDS SCROLL_METHOD_NUM_FIELDS
}; };
static void
device_free_xdevice (gpointer user_data)
{
MetaDisplay *display = meta_get_display ();
MetaBackend *backend = meta_get_backend ();
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
XDevice *xdev = user_data;
meta_error_trap_push (display);
XCloseDevice (xdisplay, xdev);
meta_error_trap_pop (display);
}
static XDevice *
device_ensure_xdevice (ClutterInputDevice *device)
{
MetaDisplay *display = meta_get_display ();
MetaBackend *backend = meta_get_backend ();
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
int device_id = clutter_input_device_get_device_id (device);
XDevice *xdev = NULL;
xdev = g_object_get_data (G_OBJECT (device), "meta-input-settings-xdevice");
if (xdev)
return xdev;
meta_error_trap_push (display);
xdev = XOpenDevice (xdisplay, device_id);
meta_error_trap_pop (display);
if (xdev)
{
g_object_set_data_full (G_OBJECT (device),
"meta-input-settings-xdevice",
xdev, device_free_xdevice);
}
return xdev;
}
static void * static void *
get_property (ClutterInputDevice *device, get_property (ClutterInputDevice *device,
const gchar *property, const gchar *property,
@@ -279,7 +239,7 @@ meta_input_settings_x11_set_tap_and_drag_enabled (MetaInputSettings *settings,
{ {
guchar value = (enabled) ? 1 : 0; guchar value = (enabled) ? 1 : 0;
change_property (device, "libinput Tapping Drag Enabled", change_property (device, "libinput TappingDrag Enabled",
XA_INTEGER, 8, &value, 1); XA_INTEGER, 8, &value, 1);
} }
@@ -580,6 +540,7 @@ meta_input_settings_x11_set_tablet_mapping (MetaInputSettings *settings,
MetaDisplay *display = meta_get_display (); MetaDisplay *display = meta_get_display ();
MetaBackend *backend = meta_get_backend (); MetaBackend *backend = meta_get_backend ();
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend)); Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
int device_id = clutter_input_device_get_device_id (device);
XDevice *xdev; XDevice *xdev;
if (!display) if (!display)
@@ -587,12 +548,13 @@ meta_input_settings_x11_set_tablet_mapping (MetaInputSettings *settings,
/* Grab the puke bucket! */ /* Grab the puke bucket! */
meta_error_trap_push (display); meta_error_trap_push (display);
xdev = device_ensure_xdevice (device); xdev = XOpenDevice (xdisplay, device_id);
if (xdev) if (xdev)
{ {
XSetDeviceMode (xdisplay, xdev, XSetDeviceMode (xdisplay, xdev,
mapping == G_DESKTOP_TABLET_MAPPING_ABSOLUTE ? mapping == G_DESKTOP_TABLET_MAPPING_ABSOLUTE ?
Absolute : Relative); Absolute : Relative);
XCloseDevice (xdisplay, xdev);
} }
if (meta_error_trap_pop_with_return (display)) if (meta_error_trap_pop_with_return (display))
@@ -770,12 +732,12 @@ meta_input_settings_x11_set_stylus_button_map (MetaInputSettings *setti
ClutterInputDevice *device, ClutterInputDevice *device,
ClutterInputDeviceTool *tool, ClutterInputDeviceTool *tool,
GDesktopStylusButtonAction primary, GDesktopStylusButtonAction primary,
GDesktopStylusButtonAction secondary, GDesktopStylusButtonAction secondary)
GDesktopStylusButtonAction tertiary)
{ {
MetaDisplay *display = meta_get_display (); MetaDisplay *display = meta_get_display ();
MetaBackend *backend = meta_get_backend (); MetaBackend *backend = meta_get_backend ();
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend)); Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
int device_id = clutter_input_device_get_device_id (device);
XDevice *xdev; XDevice *xdev;
if (!display) if (!display)
@@ -783,21 +745,17 @@ meta_input_settings_x11_set_stylus_button_map (MetaInputSettings *setti
/* Grab the puke bucket! */ /* Grab the puke bucket! */
meta_error_trap_push (display); meta_error_trap_push (display);
xdev = device_ensure_xdevice (device); xdev = XOpenDevice (xdisplay, device_id);
if (xdev) if (xdev)
{ {
guchar map[8] = { guchar map[3] = {
CLUTTER_BUTTON_PRIMARY, CLUTTER_BUTTON_PRIMARY,
action_to_button (primary, CLUTTER_BUTTON_MIDDLE), action_to_button (primary, CLUTTER_BUTTON_MIDDLE),
action_to_button (secondary, CLUTTER_BUTTON_SECONDARY), action_to_button (secondary, CLUTTER_BUTTON_SECONDARY),
4,
5,
6,
7,
action_to_button (tertiary, 8), /* "Back" */
}; };
XSetDeviceButtonMapping (xdisplay, xdev, map, G_N_ELEMENTS (map)); XSetDeviceButtonMapping (xdisplay, xdev, map, G_N_ELEMENTS (map));
XCloseDevice (xdisplay, xdev);
} }
if (meta_error_trap_pop_with_return (display)) if (meta_error_trap_pop_with_return (display))
@@ -813,9 +771,9 @@ meta_input_settings_x11_set_stylus_pressure (MetaInputSettings *settings,
ClutterInputDeviceTool *tool, ClutterInputDeviceTool *tool,
const gint32 pressure[4]) const gint32 pressure[4])
{ {
guint32 values[4] = { pressure[0], pressure[1], pressure[2], pressure[3] }; guchar values[4] = { pressure[0], pressure[1], pressure[2], pressure[3] };
change_property (device, "Wacom Pressurecurve", XA_INTEGER, 32, change_property (device, "Wacom Pressurecurve", XA_INTEGER, 8,
&values, G_N_ELEMENTS (values)); &values, G_N_ELEMENTS (values));
} }

View File

@@ -909,7 +909,6 @@ ensure_supported_monitor_scales (MetaMonitorManager *manager)
for (i = 0; i < n_monitor_scales; i++) for (i = 0; i < n_monitor_scales; i++)
add_supported_scale (supported_scales, monitor_scales[i]); add_supported_scale (supported_scales, monitor_scales[i]);
g_array_sort (supported_scales, compare_scales); g_array_sort (supported_scales, compare_scales);
g_free (monitor_scales);
} }
manager_xrandr->supported_scales = (float *) supported_scales->data; manager_xrandr->supported_scales = (float *) supported_scales->data;

View File

@@ -604,38 +604,6 @@ output_get_connector_type (MetaOutput *output)
return META_CONNECTOR_TYPE_Unknown; return META_CONNECTOR_TYPE_Unknown;
} }
static gint
output_get_panel_orientation_transform (MetaOutput *output)
{
Display *xdisplay = xdisplay_from_output (output);
unsigned long nitems, bytes_after;
Atom atom, actual_type;
int actual_format;
g_autofree unsigned char *buffer = NULL;
g_autofree char *str = NULL;
atom = XInternAtom (xdisplay, "panel orientation", False);
XRRGetOutputProperty (xdisplay, (XID)output->winsys_id, atom,
0, G_MAXLONG, False, False, XA_ATOM,
&actual_type, &actual_format,
&nitems, &bytes_after, &buffer);
if (actual_type != XA_ATOM || actual_format != 32 || nitems < 1)
return META_MONITOR_TRANSFORM_NORMAL;
str = XGetAtomName (xdisplay, *(Atom *)buffer);
if (strcmp (str, "Upside Down") == 0)
return META_MONITOR_TRANSFORM_180;
if (strcmp (str, "Left Side Up") == 0)
return META_MONITOR_TRANSFORM_90;
if (strcmp (str, "Right Side Up") == 0)
return META_MONITOR_TRANSFORM_270;
return META_MONITOR_TRANSFORM_NORMAL;
}
static void static void
output_get_tile_info (MetaOutput *output) output_get_tile_info (MetaOutput *output)
{ {
@@ -769,25 +737,13 @@ meta_create_xrandr_output (MetaGpuXrandr *gpu_xrandr,
meta_output_parse_edid (output, edid); meta_output_parse_edid (output, edid);
g_bytes_unref (edid); g_bytes_unref (edid);
output->width_mm = xrandr_output->mm_width;
output->height_mm = xrandr_output->mm_height;
output->subpixel_order = COGL_SUBPIXEL_ORDER_UNKNOWN; output->subpixel_order = COGL_SUBPIXEL_ORDER_UNKNOWN;
output->hotplug_mode_update = output_get_hotplug_mode_update (output); output->hotplug_mode_update = output_get_hotplug_mode_update (output);
output->suggested_x = output_get_suggested_x (output); output->suggested_x = output_get_suggested_x (output);
output->suggested_y = output_get_suggested_y (output); output->suggested_y = output_get_suggested_y (output);
output->connector_type = output_get_connector_type (output); output->connector_type = output_get_connector_type (output);
output->panel_orientation_transform =
output_get_panel_orientation_transform (output);
if (meta_monitor_transform_is_rotated (
output->panel_orientation_transform))
{
output->width_mm = xrandr_output->mm_height;
output->height_mm = xrandr_output->mm_width;
}
else
{
output->width_mm = xrandr_output->mm_width;
output->height_mm = xrandr_output->mm_height;
}
output_get_tile_info (output); output_get_tile_info (output);
output_get_modes (output, xrandr_output); output_get_modes (output, xrandr_output);

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