Compare commits

..

59 Commits

Author SHA1 Message Date
Florian Müllner
5b378ea648 Bump version to 3.24.0
Update NEWS.
2017-03-20 18:17:58 +01:00
Jordi Mas
ea04ff5d46 Update Catalan translation 2017-03-20 07:12:26 +01:00
Rūdolfs Mazurs
982ad7361b Update Latvian translation 2017-03-18 12:09:58 +02:00
Yuri Myasoedov
10dfe2059b Updated Russian translation 2017-03-18 10:56:51 +04:00
Florian Müllner
61e9594f63 Bump version to 3.23.92
Update NEWS.
2017-03-14 03:02:45 +01:00
Florian Müllner
2d8eaa082f build: Include missing file 2017-03-14 03:02:45 +01:00
Carlos Garnacho
29b240e883 wayland: Use clutter_input_device_is_grouped() for tablet grouping
Instead of poking the internal libinput device.

https://bugzilla.gnome.org/show_bug.cgi?id=779986
2017-03-13 19:34:10 +01:00
Carlos Garnacho
e081bb3921 clutter: Add clutter_input_device_is_grouped call/vfunc
This will be used to query grouped devices (eg. tablets and pads)

https://bugzilla.gnome.org/show_bug.cgi?id=779986
2017-03-13 19:34:10 +01:00
Dušan Kazik
ad24967d78 Update Slovak translation 2017-03-12 09:29:58 +00:00
Fran Dieguez
90d83b4bb9 Update Galician translation 2017-03-11 02:03:38 +00:00
Jonas Ådahl
eb3ff3f44a monitor-manager-kms: Don't try to wait for EDID on hot plug
The mitigation to avoid missing EDID blob was incorrect; the reason it
sometimes failed to read was a race between different applications all
trying to read the EDID at the same time. E.g. gnome-shell as GDM would
at the same time as the session gnome-shell try to read the EDID of the
same connector at the same time, triggering a race in the kernel,
making the blob reading ioctl occationally fail with ENOENT.

Remove this mitigation, as it didn't really mitigate anything; the race
could just as well happen when doing the actual read later.

https://bugzilla.gnome.org/show_bug.cgi?id=779837
2017-03-11 09:16:33 +08:00
Jonas Ådahl
db14e6099e monitor-manager-kms: Don't listen on hotplugs when paused
When mutter is paused (i.e. not the DRM master), stop listening on
hotplug events. Instead read the current state and set modes when
resumed.

This avoids a race condition in the drm API which currently only
manages to properly deal with one application querying the EDID state
at the same time when there are multiple mutter instances running at
the same time (e.g. gnome-shell driving gdm at the same time as
gnome-shell as the session instance).

https://bugzilla.gnome.org/show_bug.cgi?id=779837
2017-03-11 09:16:33 +08:00
Jonas Ådahl
5aa02c0378 monitor-manager-kms: Improve EDID error reporting
Include the connector name in the error message, and only include the
reason in the GError message.

https://bugzilla.gnome.org/show_bug.cgi?id=779837
2017-03-11 09:16:33 +08:00
Jonas Ådahl
73b2b30a1d monitor-manager-kms: Put uevent signal management in helpers
https://bugzilla.gnome.org/show_bug.cgi?id=779837
2017-03-11 09:16:27 +08:00
Jonas Ådahl
cf6b7bcb79 backends/native: Move pause/resume handling to backend
Move the handling of pause/resume events from the launcher to the
backend.

https://bugzilla.gnome.org/show_bug.cgi?id=779837
2017-03-10 17:19:33 +08:00
Olivier Fourdan
4b86af839f xwayland: Raise the dnd window each time
If the dnd window ends up lower in the overall stack than the window
it's supposed to fence, the drop might end up in some other window
underneath the expected target window.

Maps and raises the dnd window each time it's shown so that it's always
placed above.

Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=779800
2017-03-09 14:09:36 +01:00
Marek Černocký
f434f88c0c Updated Czech translation 2017-03-09 07:55:25 +01:00
Jonas Ådahl
cdedd017d6 input-settings: Use logical monitors instead of outputs
A MetaOutput is a connector, not exactly a monitor or a region on the
stage; for example tiled monitors are split up into multiple outputs,
and for what is used in input settings, that makes no sense. Change
this to use logical monitors instead of outputs.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
a48c9d6cd9 input-settings: Don't use screen limits when keeping aspect ratio
When no output was specified, the screen limit was used to calculate the
aspect ratio. The screen limit, however, is either just an arbitrary
number if no screen limit is applicable, or a hardware graphics buffer
limit, which has nothing to do with anything actually displayed. Change
it to use the screen size instead, to get something that makes more
sense when no output is found.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
1039386e10 backend/x11/nested: Enable emulating offscreen transform framebuffer
Enable the usage of an offscreen transform texture, as used in the
native backend when the GPU doesn't support the transform configured.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
944339f6a5 monitor-manager: Expose whether the backend handles a transform
Expose via a new API whether the transform on a logical monitor is
handled by the backend. This was previously only exposed only in the
native backend. This will be used to emulate not supporting transforms
in the backend in the nested backend.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
4cfcd4bce0 monitor-tiled: Derive the dimension from what was configured
Previously, the size of the logical monitor was derived directly from
the tiling information. This works fine until we add transformations,
or set modes with a dimension different from the resulting resolution
when tiled. Fix this by traversing the assigned CRTC rects, as these
are already transformed by the configuration system.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
4f386e5131 monitor-manager-dummy: Add way to emulate tiled monitors
By setting the environment variable MUTTER_DEBUG_TILED_DUMMY_MONITORS
to "1", the dummy MetaMonitorManager backend used when running mutter
nested will create tiled monitors instead of single-output/CRTC
monitors. This makes it possible to test tiled monitor configuration.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
3ace913aed monitor-manager-dummy: Add non-preferred mode
Add an extra mode besides the preferred one. This makes it possible to
test monitor configuration paths when running nested.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
8f2daed9e0 monitor-manager-dummy: Refactor monitor generation
Refactor monitor generation by splitting the generation of modes, CRTCs
and outputs into a separate function. A side effect is that each output
will have its own set of possible modes.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
c5dc0f4a2e clutter/stage-view: Add getter for getting the offscreen blit transform
This will be used to invert the transform in the nested mode, making it
possible to test offscreen texture based transform using the nested
backend.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
615587cd06 monitor-manager: Split logical monitor creation
Split up logical monitor cration into derived (when derived from
current underlying configuration) and non-derived (when creating from a
logical monitor configuration). This avoids that type of logic in the
logical monitor creation function.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
df068a3649 monitor-tiled: Generate non-tiled monitor modes
Add support for non-tiled monitor modes on tiled monitors. This is done
by adding all the other supported modes, except the modes with the
same resolution as the tile dimensions.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
7967ceee98 logical-monitor: Don't set the CRTC logical monitor if not assigned
When adding a monitor and all its outputs, don't try to set the logical
monitor of the outputs CRTC if none was assigned. This might happen if
a tiled monitor only uses a subset of the connectors it are connected
via.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
979bc4390a monitor-manager-dummy: Don't set up state at the wrong time
Don't set the CRTC rect and screen size at in read_current(), as those
depends on how the configuration is done. Instead, don't set the CRTC
rect at all, and update the screen dimensions when being configured.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Jonas Ådahl
e20e60783a tests: Make test backend inherit MetaBackendX11Nested
The test backend must inherit the nested backend, as MetaBackendX11 is
not complete.

https://bugzilla.gnome.org/show_bug.cgi?id=779745
2017-03-09 10:17:30 +08:00
Carlos Garnacho
38c5a1610e xwayland: Use timestamp from XdndPosition/Drop on XConvertSelection
QT apps reject DnD if the timestamp received in the SelectionRequest
event isn't the same it gave in XdndPosition/Drop client messages.
Bookkeeping and using it in XConvertSelection makes it happy again.

https://bugzilla.gnome.org/show_bug.cgi?id=779757
2017-03-08 19:18:04 +01:00
Carlos Garnacho
572610d01e xwayland: Check MetaDndBridge focus_window when updating X11 proxy window
We are keeping accounting of the focus window as seen by the DnD bridge
right here, so use it instead of the MetaWaylandDragGrab focus as it may
lag behind the real focus (i.e. till the drag source notices the window
and sends XdndEnter to it).

This leads to the window trying to be repositioned more often than
necessary when the drag source takes long to send the XdndEnter client
message, and maybe not repositioned at all if the pointer leaves the
surface while no XdndEnter message was received.

https://bugzilla.gnome.org/show_bug.cgi?id=763246
2017-03-08 16:58:59 +01:00
Carlos Garnacho
21b2eff334 xwayland: Release xdnd grabs ASAP
We currently wait for the selection being cleared by the drag source,
which might not happen on not quite educated clients. This may leave
a stuck XDND grab in the compositor side.

We can actually do a bit better, and clear the grab if:
1) The drag source sent XdndDrop to the wayland drag destination.
2) There's no accepting drag destination and all pointer buttons are
   released.
3) As usual, whenever the drag source clears the selection data

https://bugzilla.gnome.org/show_bug.cgi?id=763246
2017-03-08 16:58:19 +01:00
Carlos Garnacho
35388fb33c cogl: Use pixel_format_to_gl_with_target on bitmap uploading paths
We already do have a texture with an internal format in these paths,
so we should check the required format according to it.

This fixes CoglAtlasTexture (and CoglPangoRenderer indirectly), as
it forces a RGBA format on its texture, but pixel_format_to_gl()
anyway assumed swizzling is performed on the texture, while it is
not the case.

https://bugzilla.gnome.org/show_bug.cgi?id=779234
2017-03-07 13:40:06 +01:00
Carlos Garnacho
aa5738c777 cogl: Add pixel_format_to_gl_with_target driver vfunc
This is used by the GL driver in order to determine whether swizzling
actually applies given the bitmap and target texture internal format.
If both agree that they store BGRA, then swizzling may apply.

https://bugzilla.gnome.org/show_bug.cgi?id=779234
2017-03-07 13:40:06 +01:00
GNOME Translation Robot
f7ffb1790f Update Scottish Gaelic translation
(cherry picked from commit a27f8debca)
2017-03-07 12:00:47 +00:00
Hyungwon Hwang
65e9c89ed9 dnd: Implement DnD handling code in Wayland
No XDnD events which notify DnD status change comes in Wayland. To emulate XDnD
behavior, MetaDnd checks whether there is a grab or not when the modal window
starts showing. When there is a grab, it processes the raw events from
compositor, and emits DnD signals for plugin.

https://bugzilla.gnome.org/show_bug.cgi?id=765003
2017-03-07 08:28:36 +08:00
Hyungwon Hwang
5fafaf92df dnd: Implement MetaDnd
Implement MetaDnd for emitting DnD signals to plugins such as gnome-shell. The
xdnd handling code comes from gnome-shell, and it is hidden behind MetaDnd now.

https://bugzilla.gnome.org/show_bug.cgi?id=765003
2017-03-07 08:28:36 +08:00
Jonas Ådahl
4e4b24e7a8 backends/x11: Fallback to the first logical monitor when out of focus
When running nested, the pointer can be outside of the stage, meaning
outside of any logical monitor. Handle this when getting the current
logical monitor by falling back to the first logical monitor when the
pointer coordinate is outside of any logical monitor.

https://bugzilla.gnome.org/show_bug.cgi?id=779001
2017-03-06 22:39:03 +08:00
Rui Matos
542ed1d024 clutter-clone: Unset source when source actor is destroyed
Otherwise we might be holding on to a source actor that's no longer
fully functioning and cause crashes if for example we try to paint it.

https://bugzilla.gnome.org/show_bug.cgi?id=779483
2017-03-06 14:00:48 +01:00
Aurimas Černius
eda0f45ab5 Updated Lithuanian translation 2017-03-04 18:05:50 +02:00
Miguel A. Vico
4fdc551209 MetaRendererNative: Properly handle EGLOutput acquire errors
Whenever an EGLOutput consumer is temporary unable to handle
eglStreamConsumerAcquire() operations (e.g. during a VT-switch),
an EGL_RESOURCE_BUSY_EXT error is generated.

This change adds the appropriate error handling to flip_egl_stream() in
order to recover from such errors.

https://bugzilla.gnome.org/show_bug.cgi?id=779112
2017-03-04 18:34:17 +08:00
Miguel A. Vico
58043cbc8b egl: Add EGL_RESOURCE_BUSY_EXT error
This change adds both the error code and description for
EGL_RESOURCE_BUSY_EXT, recently added to the EGL_EXT_stream_acquire_mode
extension:

  https://github.com/aritger/eglstreams-kms-example/blob/master/proposed-extensions/EGL_EXT_stream_acquire_mode.txt

https://bugzilla.gnome.org/show_bug.cgi?id=779112
2017-03-04 18:34:17 +08:00
Miguel A. Vico
09fa27cd09 egl: Add stream-related error descriptions
This change adds descriptions for the following errors to
get_egl_error_str():

  - EGL_BAD_STREAM_KHR
  - EGL_BAD_STATE_KHR
  - EGL_BAD_DEVICE_EXT
  - EGL_BAD_OUTPUT_LAYER_EXT

https://bugzilla.gnome.org/show_bug.cgi?id=779112
2017-03-04 18:34:17 +08:00
Jonas Ådahl
d8ee96c6cb egl: Pass EGL errors via custom error domain
Introduce META_EGL_ERROR and have the error code be EGL error codes.

https://bugzilla.gnome.org/show_bug.cgi?id=779112
2017-03-04 18:34:17 +08:00
Changwoo Ryu
3821ed162b Update Korean translation 2017-03-04 03:44:05 +00:00
Rui Matos
1f20e82a96 ui/frames: Simplify client area control computation
Ungrabbed pointer motion events over a client window area don't even
reach mutter in X compositor mode, but as a wayland compositor we
process those events which ends up in a call stack like:

- meta_window_handle_ungrabbed_event
 - meta_ui_frame_handle_event
  - handle_motion_notify_event
   - get_control
    - meta_ui_frame_calc_geometry

Computing frame geometry is a relatively CPU expensive operation and
doing it on every motion event over a client window is pointless work
since we aren't going to change the cursor or prelight any frame
widget.

This commit special cases the determination of
META_FRAME_CONTROL_CLIENT_AREA using a much faster method. When
continuously moving the pointer over an X (client) window, it results
in a ~40% decrease in mutter cpu usage.

https://bugzilla.gnome.org/show_bug.cgi?id=779436
2017-03-02 19:40:27 +01:00
Ask Hjorth Larsen
1079850621 Updated Danish translation 2017-03-02 13:16:55 +01:00
Sveinn í Felli
aab5f7c42b Update Icelandic translation
(cherry picked from commit bc567cfca7)
2017-03-02 11:36:51 +00:00
Chao-Hsiung Liao
f8a6c27791 Update Chinese (Taiwan) translation 2017-03-02 00:26:56 +00:00
Carlos Garnacho
95e9fa10ef cogl: Read pixels in the correct 32bit format as per the given bitmap
Fixes the gnome-shell screenshot tool from getting colors with the
wrong byte order.

https://bugzilla.gnome.org/show_bug.cgi?id=779234
2017-03-01 22:05:19 +01:00
Florian Müllner
89871e04aa Bump version to 3.23.91
Update NEWS.
2017-03-01 15:48:06 +01:00
Carlos Garnacho
1705a26fc7 cogl: Prefer swizzling to convert BGRA buffers
If the GL implementation/hw supports the GL_*_texture_swizzle extension,
pretend that BGRA textures shall contain RGBA data, and let the flipping
happen when the texture will be used in the rendering pipeline.

This avoids rather expensive format conversions when forcing BGRA buffers
into RGBA textures, which happens rather often with WL_SHM_FORMAT_ARGB8888
buffers (like gtk+ uses) in little-endian machines.

In intel/mesa/wayland, the performance improvement is rather noticeable,
CPU% as seen by top decreases from 45-50% to 25-30% when running
gtk+/tests/scrolling-performance with a cairo renderer.

https://bugzilla.gnome.org/show_bug.cgi?id=779234
2017-02-28 18:48:21 +01:00
Chao-Hsiung Liao
95c924460a Update Chinese (Taiwan) translation 2017-02-28 06:20:01 +00:00
Balázs Meskó
97b1a8dfc8 Update Hungarian translation 2017-02-26 12:00:18 +00:00
Мирослав Николић
fbcc8fae77 Updated Serbian translation 2017-02-26 09:30:10 +01:00
Rafael Fontenelle
3d2cb7f1ef Update Brazilian Portuguese translation 2017-02-25 20:56:50 +00:00
Fabio Tomat
fc9a24824a Update Friulian translation 2017-02-24 15:32:34 +00:00
82 changed files with 5055 additions and 6460 deletions

46
NEWS
View File

@@ -1,3 +1,49 @@
3.24.0
======
Translations:
Yuri Myasoedov [ru], Rūdolfs Mazurs [lv], Jordi Mas [ca]
3.23.92
=======
* Properly handle EGLOutput acquire errors [Jonas, Miguel; #779112]
* Fix crash when a window closes during Alt+Tab [Rui; #779483]
* Implement DnD handling code in wayland [Hyungwon; #765003]
* Fix fallout from pixel conversion optimization in 3.23.91 [Carlos; #779234]
* Fix mouse input stopping to work in applications [Carlos; #763246]
* Fix DnD between QT5 and GTK3 applications on wayland [Carlos; #779757]
* Make EDID reading less fragile [Jonas; #779837]
* Add support for tablet grouping [Carlos; #779986]
* Misc. bug fixes and cleanups [Rui, Jonas; #779436, #779001, #779745]
Contributors:
Jonas Ådahl, Miguel A. Vico, Olivier Fourdan, Carlos Garnacho,
Hyungwon Hwang, Rui Matos
Translations:
Chao-Hsiung Liao [zh_TW], Sveinn í Felli [is], Ask Hjorth Larsen [da],
Changwoo Ryu [ko], Aurimas Černius [lt], GNOME Translation Robot [gd],
Marek Černocký [cs], Fran Dieguez [gl], Dušan Kazik [sk]
3.23.91
=======
* Give libinput read-only access to /sys [Carlos; #778472]
* Allow edge-scrolling without 2-finger-scroll capable devices [Rui; #778554]
* Fullscreen windows on the requested monitor on wayland [Rui; #772525]
* Implement threaded swap_event fallback for NVIDIA driver [Owen; #779039]
* Avoid pixel conversions when storing textures from cairo [Carlos; #779234]
* Misc. bug fixes [Piotr, Rui, Florian; #772218, #776919, #778831, #642652]
Contributors:
Piotr Drąg, Carlos Garnacho, Rui Matos, Florian Müllner, Owen W. Taylor
Translations:
Inaki Larranaga Murgoitio [eu], Daniel Mustieles [es], Claude Paroz [fr],
Mario Blättermann [de], Kjartan Maraas [nb], Piotr Drąg [pl],
Andika Triwidada [id], Anders Jonsson [sv], Milo Casagrande [it],
Fabio Tomat [fur], Rafael Fontenelle [pt_BR],
Мирослав Николић [sr, sr@latin], Balázs Meskó [hu], Chao-Hsiung Liao [zh_TW]
3.23.90
=======
* Fix window menu placement with HiDPI [Jonas; #776055]

View File

@@ -54,6 +54,7 @@
struct _ClutterClonePrivate
{
ClutterActor *clone_source;
gulong source_destroy_id;
};
G_DEFINE_TYPE_WITH_PRIVATE (ClutterClone, clutter_clone, CLUTTER_TYPE_ACTOR)
@@ -376,6 +377,13 @@ clutter_clone_new (ClutterActor *source)
return g_object_new (CLUTTER_TYPE_CLONE, "source", source, NULL);
}
static void
on_source_destroyed (ClutterActor *source,
ClutterClone *self)
{
clutter_clone_set_source_internal (self, NULL);
}
static void
clutter_clone_set_source_internal (ClutterClone *self,
ClutterActor *source)
@@ -387,6 +395,8 @@ clutter_clone_set_source_internal (ClutterClone *self,
if (priv->clone_source != NULL)
{
g_signal_handler_disconnect (priv->clone_source, priv->source_destroy_id);
priv->source_destroy_id = 0;
_clutter_actor_detach_clone (priv->clone_source, CLUTTER_ACTOR (self));
g_object_unref (priv->clone_source);
priv->clone_source = NULL;
@@ -396,6 +406,8 @@ clutter_clone_set_source_internal (ClutterClone *self,
{
priv->clone_source = g_object_ref (source);
_clutter_actor_attach_clone (priv->clone_source, CLUTTER_ACTOR (self));
priv->source_destroy_id = g_signal_connect (priv->clone_source, "destroy",
G_CALLBACK (on_source_destroyed), self);
}
g_object_notify_by_pspec (G_OBJECT (self), obj_props[PROP_SOURCE]);

View File

@@ -160,6 +160,9 @@ struct _ClutterInputDeviceClass
guint button);
gint (* get_group_n_modes) (ClutterInputDevice *device,
gint group);
gboolean (* is_grouped) (ClutterInputDevice *device,
ClutterInputDevice *other_device);
};
/* Platform-dependent interface */

View File

@@ -2266,3 +2266,13 @@ clutter_input_device_set_mapping_mode (ClutterInputDevice *device,
device->mapping_mode = mapping;
g_object_notify (G_OBJECT (device), "mapping-mode");
}
gboolean
clutter_input_device_is_grouped (ClutterInputDevice *device,
ClutterInputDevice *other_device)
{
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE (device), FALSE);
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE (other_device), FALSE);
return CLUTTER_INPUT_DEVICE_GET_CLASS (device)->is_grouped (device, other_device);
}

View File

@@ -168,6 +168,9 @@ ClutterInputDeviceMapping clutter_input_device_get_mapping_mode (ClutterInputDev
CLUTTER_AVAILABLE_IN_ALL
void clutter_input_device_set_mapping_mode (ClutterInputDevice *device,
ClutterInputDeviceMapping mapping);
CLUTTER_AVAILABLE_IN_ALL
gboolean clutter_input_device_is_grouped (ClutterInputDevice *device,
ClutterInputDevice *other_device);
G_END_DECLS

View File

@@ -179,16 +179,24 @@ clutter_stage_view_set_dirty_projection (ClutterStageView *view,
priv->dirty_projection = dirty;
}
void
clutter_stage_view_get_offscreen_transformation_matrix (ClutterStageView *view,
CoglMatrix *matrix)
{
ClutterStageViewClass *view_class = CLUTTER_STAGE_VIEW_GET_CLASS (view);
view_class->get_offscreen_transformation_matrix (view, matrix);
}
void
clutter_stage_view_transform_to_onscreen (ClutterStageView *view,
gfloat *x,
gfloat *y)
{
ClutterStageViewClass *view_class = CLUTTER_STAGE_VIEW_GET_CLASS (view);
gfloat z = 0, w = 1;
CoglMatrix matrix;
view_class->get_offscreen_transformation_matrix (view, &matrix);
clutter_stage_view_get_offscreen_transformation_matrix (view, &matrix);
cogl_matrix_get_inverse (&matrix, &matrix);
cogl_matrix_transform_point (&matrix, x, y, &z, &w);
}

View File

@@ -70,4 +70,8 @@ gboolean clutter_stage_view_is_dirty_projection (ClutterStageView *view);
void clutter_stage_view_set_dirty_projection (ClutterStageView *view,
gboolean dirty);
CLUTTER_AVAILABLE_IN_MUTTER
void clutter_stage_view_get_offscreen_transformation_matrix (ClutterStageView *view,
CoglMatrix *matrix);
#endif /* __CLUTTER_STAGE_VIEW_H__ */

View File

@@ -193,6 +193,19 @@ clutter_input_device_evdev_get_group_n_modes (ClutterInputDevice *device,
return libinput_tablet_pad_mode_group_get_num_modes (mode_group);
}
static gboolean
clutter_input_device_evdev_is_grouped (ClutterInputDevice *device,
ClutterInputDevice *other_device)
{
struct libinput_device *libinput_device, *other_libinput_device;
libinput_device = clutter_evdev_input_device_get_libinput_device (device);
other_libinput_device = clutter_evdev_input_device_get_libinput_device (other_device);
return libinput_device_get_device_group (libinput_device) ==
libinput_device_get_device_group (other_libinput_device);
}
static void
clutter_input_device_evdev_class_init (ClutterInputDeviceEvdevClass *klass)
{
@@ -206,6 +219,7 @@ clutter_input_device_evdev_class_init (ClutterInputDeviceEvdevClass *klass)
klass->update_from_tool = clutter_input_device_evdev_update_from_tool;
klass->is_mode_switch_button = clutter_input_device_evdev_is_mode_switch_button;
klass->get_group_n_modes = clutter_input_device_evdev_get_group_n_modes;
klass->is_grouped = clutter_input_device_evdev_is_grouped;
obj_props[PROP_DEVICE_MATRIX] =
g_param_spec_boxed ("device-matrix",

View File

@@ -80,6 +80,13 @@ clutter_input_device_xi2_keycode_to_evdev (ClutterInputDevice *device,
return TRUE;
}
static gboolean
clutter_input_device_xi2_is_grouped (ClutterInputDevice *device,
ClutterInputDevice *other_device)
{
return FALSE;
}
static void
clutter_input_device_xi2_class_init (ClutterInputDeviceXI2Class *klass)
{
@@ -89,6 +96,7 @@ clutter_input_device_xi2_class_init (ClutterInputDeviceXI2Class *klass)
gobject_class->constructed = clutter_input_device_xi2_constructed;
device_class->keycode_to_evdev = clutter_input_device_xi2_keycode_to_evdev;
device_class->is_grouped = clutter_input_device_xi2_is_grouped;
}
static void

View File

@@ -55,6 +55,13 @@ struct _CoglDriverVtable
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype);
CoglPixelFormat
(* pixel_format_to_gl_with_target) (CoglContext *context,
CoglPixelFormat format,
CoglPixelFormat target_format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype);
CoglBool
(* update_features) (CoglContext *context,

View File

@@ -1418,6 +1418,15 @@ _cogl_framebuffer_gl_read_pixels_into_bitmap (CoglFramebuffer *framebuffer,
&gl_format,
&gl_type);
/* As we are reading pixels, we want to consider the bitmap according to
* its real pixel format, not the swizzled channels we pretend face to the
* pipeline.
*/
if ((format == COGL_PIXEL_FORMAT_BGRA_8888 ||
format == COGL_PIXEL_FORMAT_BGRA_8888_PRE) &&
_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE))
gl_format = GL_BGRA;
/* NB: All offscreen rendering is done upside down so there is no need
* to flip in this case... */
if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_MESA_PACK_INVERT) &&

View File

@@ -772,11 +772,12 @@ _cogl_texture_2d_gl_copy_from_bitmap (CoglTexture2D *tex_2d,
upload_format = cogl_bitmap_get_format (upload_bmp);
ctx->driver_vtable->pixel_format_to_gl (ctx,
upload_format,
NULL, /* internal format */
&gl_format,
&gl_type);
ctx->driver_vtable->pixel_format_to_gl_with_target (ctx,
upload_format,
_cogl_texture_get_format (tex),
NULL, /* internal gl format */
&gl_format,
&gl_type);
/* If this touches the first pixel then we'll update our copy */
if (dst_x == 0 && dst_y == 0 &&

View File

@@ -96,11 +96,12 @@ _cogl_driver_pixel_format_from_gl_internal (CoglContext *context,
}
static CoglPixelFormat
_cogl_driver_pixel_format_to_gl (CoglContext *context,
CoglPixelFormat format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
_cogl_driver_pixel_format_to_gl_with_target (CoglContext *context,
CoglPixelFormat format,
CoglPixelFormat target_format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
{
CoglPixelFormat required_format;
GLenum glintformat = 0;
@@ -174,7 +175,16 @@ _cogl_driver_pixel_format_to_gl (CoglContext *context,
case COGL_PIXEL_FORMAT_BGRA_8888:
case COGL_PIXEL_FORMAT_BGRA_8888_PRE:
glintformat = GL_RGBA;
glformat = GL_BGRA;
/* If the driver has texture_swizzle, pretend internal
* and buffer format are the same here, the pixels
* will be flipped through this extension.
*/
if (target_format == format &&
_cogl_has_private_feature
(context, COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE))
glformat = GL_RGBA;
else
glformat = GL_BGRA;
gltype = GL_UNSIGNED_BYTE;
break;
@@ -289,6 +299,20 @@ _cogl_driver_pixel_format_to_gl (CoglContext *context,
return required_format;
}
static CoglPixelFormat
_cogl_driver_pixel_format_to_gl (CoglContext *context,
CoglPixelFormat format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
{
return _cogl_driver_pixel_format_to_gl_with_target (context,
format, format,
out_glintformat,
out_glformat,
out_gltype);
}
static CoglBool
_cogl_get_gl_version (CoglContext *ctx,
int *major_out,
@@ -669,6 +693,7 @@ _cogl_driver_gl =
{
_cogl_driver_pixel_format_from_gl_internal,
_cogl_driver_pixel_format_to_gl,
_cogl_driver_pixel_format_to_gl_with_target,
_cogl_driver_update_features,
_cogl_offscreen_gl_allocate,
_cogl_offscreen_gl_free,

View File

@@ -114,6 +114,18 @@ _cogl_texture_driver_gen (CoglContext *ctx,
red_swizzle) );
}
/* If swizzle extension is available, prefer it to flip bgra buffers to rgba */
if ((internal_format == COGL_PIXEL_FORMAT_BGRA_8888 ||
internal_format == COGL_PIXEL_FORMAT_BGRA_8888_PRE) &&
_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE))
{
static const GLint bgra_swizzle[] = { GL_BLUE, GL_GREEN, GL_RED, GL_ALPHA };
GE( ctx, glTexParameteriv (gl_target,
GL_TEXTURE_SWIZZLE_RGBA,
bgra_swizzle) );
}
return tex;
}

View File

@@ -67,11 +67,12 @@ _cogl_driver_pixel_format_from_gl_internal (CoglContext *context,
}
static CoglPixelFormat
_cogl_driver_pixel_format_to_gl (CoglContext *context,
CoglPixelFormat format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
_cogl_driver_pixel_format_to_gl_with_target (CoglContext *context,
CoglPixelFormat format,
CoglPixelFormat target_format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
{
CoglPixelFormat required_format;
GLenum glintformat;
@@ -219,6 +220,20 @@ _cogl_driver_pixel_format_to_gl (CoglContext *context,
return required_format;
}
static CoglPixelFormat
_cogl_driver_pixel_format_to_gl (CoglContext *context,
CoglPixelFormat format,
GLenum *out_glintformat,
GLenum *out_glformat,
GLenum *out_gltype)
{
return _cogl_driver_pixel_format_to_gl_with_target (context,
format, format,
out_glintformat,
out_glformat,
out_gltype);
}
static CoglBool
_cogl_get_gl_version (CoglContext *ctx,
int *major_out,
@@ -457,6 +472,7 @@ _cogl_driver_gles =
{
_cogl_driver_pixel_format_from_gl_internal,
_cogl_driver_pixel_format_to_gl,
_cogl_driver_pixel_format_to_gl_with_target,
_cogl_driver_update_features,
_cogl_offscreen_gl_allocate,
_cogl_offscreen_gl_free,

View File

@@ -61,6 +61,7 @@ _cogl_driver_nop =
{
NULL, /* pixel_format_from_gl_internal */
NULL, /* pixel_format_to_gl */
NULL, /* pixel_format_to_gl_with_target */
_cogl_driver_update_features,
_cogl_offscreen_nop_allocate,
_cogl_offscreen_nop_free,

View File

@@ -1,8 +1,8 @@
AC_PREREQ(2.62)
m4_define([mutter_major_version], [3])
m4_define([mutter_minor_version], [23])
m4_define([mutter_micro_version], [90])
m4_define([mutter_minor_version], [24])
m4_define([mutter_micro_version], [0])
m4_define([mutter_version],
[mutter_major_version.mutter_minor_version.mutter_micro_version])

887
po/ca.po
View File

@@ -13,7 +13,7 @@ msgstr ""
"Project-Id-Version: metacity 2.24\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-13 01:36+0000\n"
"POT-Creation-Date: 2017-03-20 07:06+0100\n"
"PO-Revision-Date: 2016-03-13 14:45+0100\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
@@ -24,484 +24,60 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Gtranslator 2.91.6\n"
#: ../data/50-mutter-navigation.xml.in.h:1
msgid "Navigation"
msgstr "Navegació"
#: ../data/50-mutter-navigation.xml.in.h:2
msgid "Move window to workspace 1"
msgstr "Mou la finestra a l'espai de treball 1"
#: ../data/50-mutter-navigation.xml.in.h:3
msgid "Move window to workspace 2"
msgstr "Mou la finestra a l'espai de treball 2"
#: ../data/50-mutter-navigation.xml.in.h:4
msgid "Move window to workspace 3"
msgstr "Mou la finestra a l'espai de treball 3"
#: ../data/50-mutter-navigation.xml.in.h:5
msgid "Move window to workspace 4"
msgstr "Mou la finestra a l'espai de treball 4"
#: ../data/50-mutter-navigation.xml.in.h:6
msgid "Move window to last workspace"
msgstr "Mou la finestra a l'últim espai de treball"
#: ../data/50-mutter-navigation.xml.in.h:7
msgid "Move window one workspace to the left"
msgstr "Mou la finestra un espai de treball a l'esquerra"
#: ../data/50-mutter-navigation.xml.in.h:8
msgid "Move window one workspace to the right"
msgstr "Mou la finestra un espai de treball a la dreta"
#: ../data/50-mutter-navigation.xml.in.h:9
msgid "Move window one workspace up"
msgstr "Mou la finestra un espai de treball amunt"
#: ../data/50-mutter-navigation.xml.in.h:10
msgid "Move window one workspace down"
msgstr "Mou la finestra un espai de treball avall"
#: ../data/50-mutter-navigation.xml.in.h:11
msgid "Move window one monitor to the left"
msgstr "Mou la finestra un monitor a l'esquerra"
#: ../data/50-mutter-navigation.xml.in.h:12
msgid "Move window one monitor to the right"
msgstr "Mou la finestra un monitor a la dreta"
#: ../data/50-mutter-navigation.xml.in.h:13
msgid "Move window one monitor up"
msgstr "Mou la finestra un monitor amunt"
#: ../data/50-mutter-navigation.xml.in.h:14
msgid "Move window one monitor down"
msgstr "Mou la finestra un monitor avall"
#: ../data/50-mutter-navigation.xml.in.h:15
msgid "Switch applications"
msgstr "Canvia d'aplicacions"
#: ../data/50-mutter-navigation.xml.in.h:16
msgid "Switch to previous application"
msgstr "Canvia a l'aplicació anterior"
#: ../data/50-mutter-navigation.xml.in.h:17
msgid "Switch windows"
msgstr "Canvia de finestres"
#: ../data/50-mutter-navigation.xml.in.h:18
msgid "Switch to previous window"
msgstr "Canvia a la finestra anterior"
#: ../data/50-mutter-navigation.xml.in.h:19
msgid "Switch windows of an application"
msgstr "Canvia entre les finestres d'una aplicació"
#: ../data/50-mutter-navigation.xml.in.h:20
msgid "Switch to previous window of an application"
msgstr "Canvia a la finestra anterior d'una aplicació"
#: ../data/50-mutter-navigation.xml.in.h:21
msgid "Switch system controls"
msgstr "Canvia entre els controls del sistema"
#: ../data/50-mutter-navigation.xml.in.h:22
msgid "Switch to previous system control"
msgstr "Canvia al control del sistema anterior"
#: ../data/50-mutter-navigation.xml.in.h:23
msgid "Switch windows directly"
msgstr "Canvia immediatament entre finestres"
#: ../data/50-mutter-navigation.xml.in.h:24
msgid "Switch directly to previous window"
msgstr "Canvia immediatament a la finestra anterior"
#: ../data/50-mutter-navigation.xml.in.h:25
msgid "Switch windows of an app directly"
msgstr "Canvia immediatament entre les finestres d'una aplicació"
#: ../data/50-mutter-navigation.xml.in.h:26
msgid "Switch directly to previous window of an app"
msgstr "Canvia immediatament a la finestra anterior d'una aplicació"
#: ../data/50-mutter-navigation.xml.in.h:27
msgid "Switch system controls directly"
msgstr "Canvia immediatament entre els controls del sistema"
#: ../data/50-mutter-navigation.xml.in.h:28
msgid "Switch directly to previous system control"
msgstr "Canvia immediatament al control del sistema anterior"
#: ../data/50-mutter-navigation.xml.in.h:29
msgid "Hide all normal windows"
msgstr "Oculta totes les finestres normals"
#: ../data/50-mutter-navigation.xml.in.h:30
msgid "Switch to workspace 1"
msgstr "Canvia a l'espai de treball 1"
#: ../data/50-mutter-navigation.xml.in.h:31
msgid "Switch to workspace 2"
msgstr "Canvia a l'espai de treball 2"
#: ../data/50-mutter-navigation.xml.in.h:32
msgid "Switch to workspace 3"
msgstr "Canvia a l'espai de treball 3"
#: ../data/50-mutter-navigation.xml.in.h:33
msgid "Switch to workspace 4"
msgstr "Canvia a l'espai de treball 4"
#: ../data/50-mutter-navigation.xml.in.h:34
msgid "Switch to last workspace"
msgstr "Canvia a l'últim espai de treball"
#: ../data/50-mutter-navigation.xml.in.h:35
msgid "Move to workspace left"
msgstr "Mou a l'espai de treball de l'esquerra"
#: ../data/50-mutter-navigation.xml.in.h:36
msgid "Move to workspace right"
msgstr "Mou a l'espai de treball de la dreta"
#: ../data/50-mutter-navigation.xml.in.h:37
msgid "Move to workspace above"
msgstr "Mou a l'espai de treball de sobre"
#: ../data/50-mutter-navigation.xml.in.h:38
msgid "Move to workspace below"
msgstr "Mou a l'espai de treball de sota"
#: ../data/50-mutter-system.xml.in.h:1
msgid "System"
msgstr "Sistema"
#: ../data/50-mutter-system.xml.in.h:2
msgid "Show the run command prompt"
msgstr "Mostra l'indicador d'execució d'aplicacions"
#: ../data/50-mutter-system.xml.in.h:3
msgid "Show the activities overview"
msgstr "Mostra la vista general d'activitats"
#: ../data/50-mutter-windows.xml.in.h:1
msgid "Windows"
msgstr "Finestres"
#: ../data/50-mutter-windows.xml.in.h:2
msgid "Activate the window menu"
msgstr "Activa el menú de finestra"
#: ../data/50-mutter-windows.xml.in.h:3
msgid "Toggle fullscreen mode"
msgstr "Canvia entre el mode a pantalla completa"
#: ../data/50-mutter-windows.xml.in.h:4
msgid "Toggle maximization state"
msgstr "Canvia l'estat de maximització"
#: ../data/50-mutter-windows.xml.in.h:5
msgid "Maximize window"
msgstr "Maximitza la finestra"
#: ../data/50-mutter-windows.xml.in.h:6
msgid "Restore window"
msgstr "Restaura la finestra"
#: ../data/50-mutter-windows.xml.in.h:7
msgid "Toggle shaded state"
msgstr "Canvia l'estat d'ombrejat"
#: ../data/50-mutter-windows.xml.in.h:8
msgid "Close window"
msgstr "Tanca la finestra"
#: ../data/50-mutter-windows.xml.in.h:9
msgid "Hide window"
msgstr "Oculta la finestra"
#: ../data/50-mutter-windows.xml.in.h:10
msgid "Move window"
msgstr "Mou la finestra"
#: ../data/50-mutter-windows.xml.in.h:11
msgid "Resize window"
msgstr "Redimensiona la finestra"
#: ../data/50-mutter-windows.xml.in.h:12
msgid "Toggle window on all workspaces or one"
msgstr ""
"Canvia la funció que fa que la finestra estigui en tots els espais de "
"treball o només en un"
#: ../data/50-mutter-windows.xml.in.h:13
msgid "Raise window if covered, otherwise lower it"
msgstr "Alça la finestra si està coberta per una altra, o sinó baixa-la"
#: ../data/50-mutter-windows.xml.in.h:14
msgid "Raise window above other windows"
msgstr "Alça la finestra per damunt de les altres"
#: ../data/50-mutter-windows.xml.in.h:15
msgid "Lower window below other windows"
msgstr "Baixa la finestra sota les altres"
#: ../data/50-mutter-windows.xml.in.h:16
msgid "Maximize window vertically"
msgstr "Maximitza la finestra verticalment"
#: ../data/50-mutter-windows.xml.in.h:17
msgid "Maximize window horizontally"
msgstr "Maximitza la finestra horitzontalment"
#: ../data/50-mutter-windows.xml.in.h:18
msgid "View split on left"
msgstr "Mostra la partició a l'esquerra"
#: ../data/50-mutter-windows.xml.in.h:19
msgid "View split on right"
msgstr "Mostra la partició a la dreta"
#: ../data/mutter.desktop.in.h:1
msgid "Mutter"
msgstr "Mutter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
msgid "Modifier to use for extended window management operations"
msgstr ""
"Modificador que s'utilitzarà per les operacions ampliades de gestió de "
"finestres"
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
msgstr ""
"Aquesta tecla iniciarà l'«overlay» (superposador), el qual és una combinació "
"de visualització de finestres i sistema de llançament d'aplicacions. El "
"valor predeterminat és la «tecla Windows» en maquinari basat en ordinadors "
"PC. El valor d'aquesta vinculació s'espera que sigui el predeterminat o text "
"en blanc."
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
msgid "Attach modal dialogs"
msgstr "Adjunta els diàlegs modals"
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
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 ""
"Quan sigui «true» (cert), en lloc de tenir barres de títol independents, els "
"diàlegs modals apareixeran adjuntats a la barra de títol de la finestra mare "
"i es mouran juntament amb aquesta."
#: ../data/org.gnome.mutter.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Habilita la tesselització a les vores en deixar anar les finestres a les "
"vores de la pantalla"
#: ../data/org.gnome.mutter.gschema.xml.in.h:6
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 ""
"Si s'habilita, es maximitzaran les finestres verticalment i es "
"redimensionaran horitzontalment per cobrir la meitat de l'àrea disponible en "
"deixar-les anar a les vores verticals de la pantalla. Si es deixen anar a la "
"vora superior de la pantalla es maximitzaran completament."
#: ../data/org.gnome.mutter.gschema.xml.in.h:7
msgid "Workspaces are managed dynamically"
msgstr "Els espais de treball es gestionen dinàmicament"
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
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 ""
"Determina si els espais de treball es gestionen dinàmicament o hi ha un "
"nombre determinat d'espais de treball (determinat per la clau «num-"
"workspaces» a «org.gnome.desktop.wm.preferences»)."
#: ../data/org.gnome.mutter.gschema.xml.in.h:9
msgid "Workspaces only on primary"
msgstr "Espais de treball només en el primari"
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
msgid ""
"Determines whether workspace switching should happen for windows on all "
"monitors or only for windows on the primary monitor."
msgstr ""
"Determina si el canvi d'espai de treball hauria de ser per les finestres en "
"tots els monitors o només en les finestres del monitor primari."
#: ../data/org.gnome.mutter.gschema.xml.in.h:11
msgid "No tab popup"
msgstr "Sense finestres emergents a les pestanyes"
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
msgid ""
"Determines whether the use of popup and highlight frame should be disabled "
"for window cycling."
msgstr ""
"Determina si s'ha d'inhabilitar el quadre que es mostra a les finestres "
"emergents i ressaltades en commutar entre finestres."
#: ../data/org.gnome.mutter.gschema.xml.in.h:13
msgid "Delay focus changes until the pointer stops moving"
msgstr "Retarda el canvi del focus fins que s'aturi el punter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:14
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 ""
"Si és «true» (cert), i el mode del focus és «sloppy» o «mouse», no es "
"canviarà el focus immediatament quan s'entri a una finestra, només es "
"canviarà quan el punter deixi de moure's."
#: ../data/org.gnome.mutter.gschema.xml.in.h:15
msgid "Draggable border width"
msgstr "Amplada del contorn arrossegable"
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
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 ""
"La quantitat total de contorn arrossegable. Si els contorns visibles del "
"tema no són suficients, s'afegiran contorns invisibles per aconseguir aquest "
"valor."
#: ../data/org.gnome.mutter.gschema.xml.in.h:17
msgid "Auto maximize nearly monitor sized windows"
msgstr ""
"Maximitza automàticament les finestres que gairebé facin la mida de la "
"pantalla"
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
msgid ""
"If enabled, new windows that are initially the size of the monitor "
"automatically get maximized."
msgstr ""
"Si s'habilita, les finestres que inicialment gairebé fan la mida de la "
"pantalla es maximitzaran automàticament."
#: ../data/org.gnome.mutter.gschema.xml.in.h:19
msgid "Place new windows in the center"
msgstr "Posiciona les finestres noves al centre"
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
msgid ""
"When true, the new windows will always be put in the center of the active "
"screen of the monitor."
msgstr ""
"Si és «true» (cert), les finestres noves seran posicionades al centre de la "
"pantalla activa del monitor."
#: ../data/org.gnome.mutter.gschema.xml.in.h:21
msgid "Select window from tab popup"
msgstr "Selecció de finestra entre les emergents d'una pestanya"
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
msgid "Cancel tab popup"
msgstr "Cancel·lació de les finestres emergents a les pestanyes"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
msgid "Switch to VT 1"
msgstr "Canvia al terminal virtual 1"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
msgid "Switch to VT 2"
msgstr "Canvia al terminal virtual 2"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
msgid "Switch to VT 3"
msgstr "Canvia al terminal virtual 3"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
msgid "Switch to VT 4"
msgstr "Canvia al terminal virtual 4"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
msgid "Switch to VT 5"
msgstr "Canvia al terminal virtual 5"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
msgid "Switch to VT 6"
msgstr "Canvia al terminal virtual 6"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
msgid "Switch to VT 7"
msgstr "Canvia al terminal virtual 7"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
msgid "Switch to VT 8"
msgstr "Canvia al terminal virtual 8"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
msgid "Switch to VT 9"
msgstr "Canvia al terminal virtual 9"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
msgid "Switch to VT 10"
msgstr "Canvia al terminal virtual 10"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
msgid "Switch to VT 11"
msgstr "Canvia al terminal virtual 11"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
msgid "Switch to VT 12"
msgstr "Canvia al terminal virtual 12"
#: ../src/backends/meta-monitor-manager.c:518
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: ../src/backends/meta-input-settings.c:1840
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Mode de commutació (grup %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: ../src/backends/meta-input-settings.c:1862
msgid "Switch monitor"
msgstr "Commuta el monitor"
#: ../src/backends/meta-input-settings.c:1864
msgid "Show on-screen help"
msgstr "Mostra l'ajuda en pantalla"
#: ../src/backends/meta-monitor-manager.c:630
msgid "Built-in display"
msgstr "Pantalla integrada"
#: ../src/backends/meta-monitor-manager.c:544
#: ../src/backends/meta-monitor-manager.c:653
msgid "Unknown"
msgstr "Desconeguda"
#: ../src/backends/meta-monitor-manager.c:546
#: ../src/backends/meta-monitor-manager.c:655
msgid "Unknown Display"
msgstr "Pantalla desconeguda"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:554
#: ../src/backends/meta-monitor-manager.c:663
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:456
#: ../src/compositor/compositor.c:474
#, c-format
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 ""
"Ja s'està executant un altre gestor de composició a la pantalla %i a la "
"visualització «%s»."
"Ja s'està executant un altre gestor de composició al monitor %i a la "
"pantalla «%s»."
#: ../src/core/bell.c:192
#: ../src/core/bell.c:194
msgid "Bell event"
msgstr "Esdeveniment de campana"
#. Translators: %s is a window title
#: ../src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -519,45 +95,45 @@ msgstr ""
"Podeu esperar un moment perquè continuï o podeu forçar-ne la sortida "
"completa."
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "_Espera"
#: ../src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Força'n la sortida"
#: ../src/core/display.c:555
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "_Espera"
#: ../src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgid "Failed to open X Window System display %s\n"
msgstr ""
"S'ha produït un error en obrir la pantalla del sistema de finestres X «%s»\n"
#: ../src/core/main.c:181
#: ../src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Inhabilita la connexió al gestor de sessions"
#: ../src/core/main.c:187
#: ../src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Reemplaça el gestor de finestres en execució"
#: ../src/core/main.c:193
#: ../src/core/main.c:201
msgid "Specify session management ID"
msgstr "Especifica l'ID de gestió de sessió"
#: ../src/core/main.c:198
#: ../src/core/main.c:206
msgid "X Display to use"
msgstr "Visualització X per usar"
#: ../src/core/main.c:204
#: ../src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicialitza la sessió des del fitxer desat"
#: ../src/core/main.c:210
#: ../src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Fes que les crides a l'X siguin síncrones"
#: ../src/core/main.c:217
#: ../src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Funciona com a compositor de Wayland"
@@ -566,12 +142,11 @@ msgstr "Funciona com a compositor de Wayland"
#
# Camins:
# ../src/core/main.c:223
#: ../src/core/main.c:223
#| msgid "Run as a wayland compositor"
#: ../src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Funciona com a compositor imbricat"
#: ../src/core/main.c:231
#: ../src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Funciona com a servidor de pantalla completa, en comptes d'imbricat"
@@ -579,7 +154,7 @@ msgstr "Funciona com a servidor de pantalla completa, en comptes d'imbricat"
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -604,37 +179,387 @@ msgstr "Connector del Mutter a utilitzar"
msgid "Workspace %d"
msgstr "Espai de treball %d"
#: ../src/core/screen.c:521
#: ../src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"La pantalla «%s» ja té un gestor de finestres; proveu l'opció --replace per "
"reemplaçar el gestor de finestres actual."
#: ../src/core/screen.c:603
#: ../src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "La pantalla %d en la visualització '%s' no és vàlida\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "El monitor %d en la pantalla '%s' no és vàlida\n"
#: ../src/core/util.c:121
#: ../src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter es va compilar sense compatibilitat per al mode detallat\n"
#: ../src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Mode de commutació: mode %d"
#: ../src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Aquestes finestres no implementen «desa la configuració actual» i s'hauran "
"de reiniciar manualment la pròxima vegada que entreu."
#: ../src/x11/window-props.c:549
#: ../src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (a %s)"
#~ msgid "Navigation"
#~ msgstr "Navegació"
#~ msgid "Move window to workspace 1"
#~ msgstr "Mou la finestra a l'espai de treball 1"
#~ msgid "Move window to workspace 2"
#~ msgstr "Mou la finestra a l'espai de treball 2"
#~ msgid "Move window to workspace 3"
#~ msgstr "Mou la finestra a l'espai de treball 3"
#~ msgid "Move window to workspace 4"
#~ msgstr "Mou la finestra a l'espai de treball 4"
#~ msgid "Move window to last workspace"
#~ msgstr "Mou la finestra a l'últim espai de treball"
#~ msgid "Move window one workspace to the left"
#~ msgstr "Mou la finestra un espai de treball a l'esquerra"
#~ msgid "Move window one workspace to the right"
#~ msgstr "Mou la finestra un espai de treball a la dreta"
#~ msgid "Move window one workspace up"
#~ msgstr "Mou la finestra un espai de treball amunt"
#~ msgid "Move window one workspace down"
#~ msgstr "Mou la finestra un espai de treball avall"
#~ msgid "Move window one monitor to the left"
#~ msgstr "Mou la finestra un monitor a l'esquerra"
#~ msgid "Move window one monitor to the right"
#~ msgstr "Mou la finestra un monitor a la dreta"
#~ msgid "Move window one monitor up"
#~ msgstr "Mou la finestra un monitor amunt"
#~ msgid "Move window one monitor down"
#~ msgstr "Mou la finestra un monitor avall"
#~ msgid "Switch applications"
#~ msgstr "Canvia d'aplicacions"
#~ msgid "Switch to previous application"
#~ msgstr "Canvia a l'aplicació anterior"
#~ msgid "Switch windows"
#~ msgstr "Canvia de finestres"
#~ msgid "Switch to previous window"
#~ msgstr "Canvia a la finestra anterior"
#~ msgid "Switch windows of an application"
#~ msgstr "Canvia entre les finestres d'una aplicació"
#~ msgid "Switch to previous window of an application"
#~ msgstr "Canvia a la finestra anterior d'una aplicació"
#~ msgid "Switch to previous system control"
#~ msgstr "Canvia al control del sistema anterior"
#~ msgid "Switch windows directly"
#~ msgstr "Canvia immediatament entre finestres"
#~ msgid "Switch directly to previous window"
#~ msgstr "Canvia immediatament a la finestra anterior"
#~ msgid "Switch windows of an app directly"
#~ msgstr "Canvia immediatament entre les finestres d'una aplicació"
#~ msgid "Switch directly to previous window of an app"
#~ msgstr "Canvia immediatament a la finestra anterior d'una aplicació"
#~ msgid "Switch system controls directly"
#~ msgstr "Canvia immediatament entre els controls del sistema"
#~ msgid "Switch directly to previous system control"
#~ msgstr "Canvia immediatament al control del sistema anterior"
#~ msgid "Hide all normal windows"
#~ msgstr "Oculta totes les finestres normals"
#~ msgid "Switch to workspace 1"
#~ msgstr "Canvia a l'espai de treball 1"
#~ msgid "Switch to workspace 2"
#~ msgstr "Canvia a l'espai de treball 2"
#~ msgid "Switch to workspace 3"
#~ msgstr "Canvia a l'espai de treball 3"
#~ msgid "Switch to workspace 4"
#~ msgstr "Canvia a l'espai de treball 4"
#~ msgid "Switch to last workspace"
#~ msgstr "Canvia a l'últim espai de treball"
#~ msgid "Move to workspace left"
#~ msgstr "Mou a l'espai de treball de l'esquerra"
#~ msgid "Move to workspace right"
#~ msgstr "Mou a l'espai de treball de la dreta"
#~ msgid "Move to workspace above"
#~ msgstr "Mou a l'espai de treball de sobre"
#~ msgid "Move to workspace below"
#~ msgstr "Mou a l'espai de treball de sota"
#~ msgid "System"
#~ msgstr "Sistema"
#~ msgid "Show the run command prompt"
#~ msgstr "Mostra l'indicador d'execució d'aplicacions"
#~ msgid "Show the activities overview"
#~ msgstr "Mostra la vista general d'activitats"
#~ msgid "Windows"
#~ msgstr "Finestres"
#~ msgid "Activate the window menu"
#~ msgstr "Activa el menú de finestra"
#~ msgid "Toggle fullscreen mode"
#~ msgstr "Canvia entre el mode a pantalla completa"
#~ msgid "Toggle maximization state"
#~ msgstr "Canvia l'estat de maximització"
#~ msgid "Maximize window"
#~ msgstr "Maximitza la finestra"
#~ msgid "Restore window"
#~ msgstr "Restaura la finestra"
#~ msgid "Toggle shaded state"
#~ msgstr "Canvia l'estat d'ombrejat"
#~ msgid "Close window"
#~ msgstr "Tanca la finestra"
#~ msgid "Hide window"
#~ msgstr "Oculta la finestra"
#~ msgid "Move window"
#~ msgstr "Mou la finestra"
#~ msgid "Resize window"
#~ msgstr "Redimensiona la finestra"
#~ msgid "Toggle window on all workspaces or one"
#~ msgstr ""
#~ "Canvia la funció que fa que la finestra estigui en tots els espais de "
#~ "treball o només en un"
#~ msgid "Raise window if covered, otherwise lower it"
#~ msgstr "Alça la finestra si està coberta per una altra, o sinó baixa-la"
#~ msgid "Raise window above other windows"
#~ msgstr "Alça la finestra per damunt de les altres"
#~ msgid "Lower window below other windows"
#~ msgstr "Baixa la finestra sota les altres"
#~ msgid "Maximize window vertically"
#~ msgstr "Maximitza la finestra verticalment"
#~ msgid "Maximize window horizontally"
#~ msgstr "Maximitza la finestra horitzontalment"
#~ msgid "View split on left"
#~ msgstr "Mostra la partició a l'esquerra"
#~ msgid "View split on right"
#~ msgstr "Mostra la partició a la dreta"
#~ msgid "Mutter"
#~ msgstr "Mutter"
#~ msgid "Modifier to use for extended window management operations"
#~ msgstr ""
#~ "Modificador que s'utilitzarà per les operacions ampliades de gestió de "
#~ "finestres"
#~ msgid ""
#~ "This key will initiate the \"overlay\", which is a combination window "
#~ "overview and application launching system. The default is intended to be "
#~ "the \"Windows key\" on PC hardware. It's expected that this binding "
#~ "either the default or set to the empty string."
#~ msgstr ""
#~ "Aquesta tecla iniciarà l'«overlay» (superposador), el qual és una "
#~ "combinació de visualització de finestres i sistema de llançament "
#~ "d'aplicacions. El valor predeterminat és la «tecla Windows» en maquinari "
#~ "basat en ordinadors PC. El valor d'aquesta vinculació s'espera que sigui "
#~ "el predeterminat o text en blanc."
#~ msgid "Attach modal dialogs"
#~ msgstr "Adjunta els diàlegs modals"
#~ 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 ""
#~ "Quan sigui «true» (cert), en lloc de tenir barres de títol independents, "
#~ "els diàlegs modals apareixeran adjuntats a la barra de títol de la "
#~ "finestra mare i es mouran juntament amb aquesta."
#~ msgid "Enable edge tiling when dropping windows on screen edges"
#~ msgstr ""
#~ "Habilita la tesselització a les vores en deixar anar les finestres a les "
#~ "vores de la pantalla"
#~ 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 ""
#~ "Si s'habilita, es maximitzaran les finestres verticalment i es "
#~ "redimensionaran horitzontalment per cobrir la meitat de l'àrea disponible "
#~ "en deixar-les anar a les vores verticals de la pantalla. Si es deixen "
#~ "anar a la vora superior de la pantalla es maximitzaran completament."
#~ msgid "Workspaces are managed dynamically"
#~ msgstr "Els espais de treball es gestionen dinàmicament"
#~ 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 ""
#~ "Determina si els espais de treball es gestionen dinàmicament o hi ha un "
#~ "nombre determinat d'espais de treball (determinat per la clau «num-"
#~ "workspaces» a «org.gnome.desktop.wm.preferences»)."
#~ msgid "Workspaces only on primary"
#~ msgstr "Espais de treball només en el primari"
#~ msgid ""
#~ "Determines whether workspace switching should happen for windows on all "
#~ "monitors or only for windows on the primary monitor."
#~ msgstr ""
#~ "Determina si el canvi d'espai de treball hauria de ser per les finestres "
#~ "en tots els monitors o només en les finestres del monitor primari."
#~ msgid "No tab popup"
#~ msgstr "Sense finestres emergents a les pestanyes"
#~ msgid ""
#~ "Determines whether the use of popup and highlight frame should be "
#~ "disabled for window cycling."
#~ msgstr ""
#~ "Determina si s'ha d'inhabilitar el quadre que es mostra a les finestres "
#~ "emergents i ressaltades en commutar entre finestres."
#~ msgid "Delay focus changes until the pointer stops moving"
#~ msgstr "Retarda el canvi del focus fins que s'aturi el punter"
#~ 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 ""
#~ "Si és «true» (cert), i el mode del focus és «sloppy» o «mouse», no es "
#~ "canviarà el focus immediatament quan s'entri a una finestra, només es "
#~ "canviarà quan el punter deixi de moure's."
#~ msgid "Draggable border width"
#~ msgstr "Amplada del contorn arrossegable"
#~ 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 ""
#~ "La quantitat total de contorn arrossegable. Si els contorns visibles del "
#~ "tema no són suficients, s'afegiran contorns invisibles per aconseguir "
#~ "aquest valor."
#~ msgid "Auto maximize nearly monitor sized windows"
#~ msgstr ""
#~ "Maximitza automàticament les finestres que gairebé facin la mida de la "
#~ "pantalla"
#~ msgid ""
#~ "If enabled, new windows that are initially the size of the monitor "
#~ "automatically get maximized."
#~ msgstr ""
#~ "Si s'habilita, les finestres que inicialment gairebé fan la mida de la "
#~ "pantalla es maximitzaran automàticament."
#~ msgid "Place new windows in the center"
#~ msgstr "Posiciona les finestres noves al centre"
#~ msgid ""
#~ "When true, the new windows will always be put in the center of the active "
#~ "screen of the monitor."
#~ msgstr ""
#~ "Si és «true» (cert), les finestres noves seran posicionades al centre de "
#~ "la pantalla activa del monitor."
#~ msgid "Select window from tab popup"
#~ msgstr "Selecció de finestra entre les emergents d'una pestanya"
#~ msgid "Cancel tab popup"
#~ msgstr "Cancel·lació de les finestres emergents a les pestanyes"
#~ msgid "Switch to VT 1"
#~ msgstr "Canvia al terminal virtual 1"
#~ msgid "Switch to VT 2"
#~ msgstr "Canvia al terminal virtual 2"
#~ msgid "Switch to VT 3"
#~ msgstr "Canvia al terminal virtual 3"
#~ msgid "Switch to VT 4"
#~ msgstr "Canvia al terminal virtual 4"
#~ msgid "Switch to VT 5"
#~ msgstr "Canvia al terminal virtual 5"
#~ msgid "Switch to VT 6"
#~ msgstr "Canvia al terminal virtual 6"
#~ msgid "Switch to VT 7"
#~ msgstr "Canvia al terminal virtual 7"
#~ msgid "Switch to VT 8"
#~ msgstr "Canvia al terminal virtual 8"
#~ msgid "Switch to VT 9"
#~ msgstr "Canvia al terminal virtual 9"
#~ msgid "Switch to VT 10"
#~ msgstr "Canvia al terminal virtual 10"
#~ msgid "Switch to VT 11"
#~ msgstr "Canvia al terminal virtual 11"
#~ msgid "Switch to VT 12"
#~ msgstr "Canvia al terminal virtual 12"
#~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "No s'ha pogut analitzar el directori de temes: %s\n"

730
po/cs.po
View File

@@ -11,10 +11,10 @@
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2017-02-10 22:51+0000\n"
"PO-Revision-Date: 2017-02-11 15:30+0100\n"
"POT-Creation-Date: 2017-03-07 12:40+0000\n"
"PO-Revision-Date: 2017-03-09 07:51+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: čeština <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@@ -275,10 +275,10 @@ msgstr "Modifikátor, který se má použít u operací rozšířené správy ok
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Tato klávesa spustí „překrytí“ („overlay“), což je kombinace přehledu oken a "
"systému spouštění aplikací. Výchozí u osobních počítačů je „klávesa "
@@ -320,7 +320,7 @@ msgstr "Pracovní plochy jsou spravovány dynamicky"
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -357,11 +357,11 @@ msgstr "Se změnou zaměření čekat na zastavení pohybu ukazatele"
#: 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."
"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 ""
"Je-li je zapnuto a režim zaměření je buď „sloppy“ nebo „mouse“, pak se "
"Je-li zapnuto a režim zaměření je buď „sloppy“ nebo „mouse“, pak se "
"zaměření nezmění hned, když vstoupíte do kona, ale až se přestane pohybovat "
"ukazatel."
@@ -371,7 +371,7 @@ msgstr "Šířka přetažitelného okraje"
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Počet všech přetažitelných okrajů. Nestačí-li viditelné okraje motivu, budou "
@@ -460,7 +460,7 @@ msgstr "Přepnout na VT 12"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1759
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Přepínač režimu (skupina %d)"
@@ -468,11 +468,11 @@ msgstr "Přepínač režimu (skupina %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1781
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Přepnout monitor"
#: src/backends/meta-input-settings.c:1783
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Zobrazit nápovědu na obrazovce"
@@ -498,11 +498,10 @@ msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:471
#: src/compositor/compositor.c:474
#, c-format
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 "Jiný kompozitní správce již běží na obrazovce %i displeje „%s“."
#: src/core/bell.c:194
@@ -537,42 +536,42 @@ msgstr "_Počkat"
#: src/core/display.c:608
#, c-format
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"
#: src/core/main.c:187
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Zakáže připojení ke správci sezení"
#: src/core/main.c:193
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Nahradí běžícího správce oken"
#: src/core/main.c:199
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Určení ID správy sezení"
#: src/core/main.c:204
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Displej X, který použije"
#: src/core/main.c:210
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Spustí sezení z uloženého souboru"
#: src/core/main.c:216
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Provede volání X synchronně"
#: src/core/main.c:223
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Spustit jako kompozitor protokolu Wayland"
#: src/core/main.c:229
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Spustit jako podkladový kompozitor"
#: src/core/main.c:237
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Spustit jako plnohodnotný server displeje, nikoliv vnořeně"
@@ -580,7 +579,7 @@ msgstr "Spustit jako plnohodnotný server displeje, nikoliv vnořeně"
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -608,15 +607,15 @@ msgstr "Plocha %d"
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Displej „%s“ již správce oken má; zkuste prosím nahradit aktuálního správce "
"oken pomocí přepínače --replace."
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "Obrazovka %d na displeji „%s“ je neplatná\n"
#: src/core/util.c:120
@@ -630,10 +629,10 @@ msgstr "Přepínač režimu: režim %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Tato okna nepodporují &quot;ukládání aktuálního nastavení&quot; a po vašem "
"Tato okna nepodporují „uložení aktuálního nastavení a po svém "
"příštím přihlášení je budete muset spustit ručně."
#: src/x11/window-props.c:559
@@ -641,662 +640,3 @@ msgstr ""
msgid "%s (on %s)"
msgstr "%s (na %s)"
#~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Nelze prohledat adresář motivů: %s\n"
#~ msgid ""
#~ "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
#~ msgstr ""
#~ "Nelze najít motiv! Ujistěte se prosím, že existuje %s a obsahuje obvyklé "
#~ "motivy.\n"
#~ msgid "Screen %d on display \"%s\" already has a window manager\n"
#~ msgstr "Obrazovka %d na displeji „%s“ již má správce oken\n"
#~ msgid "%d x %d"
#~ msgstr "%d × %d"
#~ msgid "top"
#~ msgstr "nahoře"
#~ msgid "bottom"
#~ msgstr "dole"
#~ msgid "left"
#~ msgstr "vlevo"
#~ msgid "right"
#~ msgstr "vpravo"
#~ msgid "frame geometry does not specify \"%s\" dimension"
#~ msgstr "geometrie rámu nedefinuje rozměr „%s“"
#~ msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
#~ msgstr "geometrie rámu nedefinuje rozměr „%s“ okraje „%s“"
#~ msgid "Button aspect ratio %g is not reasonable"
#~ msgstr "Poměr stran tlačítka %g není přiměřený"
#~ msgid "Frame geometry does not specify size of buttons"
#~ msgstr "Geometrie rámu nedefinuje velikost tlačítek"
#~ msgid "Gradients should have at least two colors"
#~ msgstr "Přechody by měly mít alespoň dvě barvy"
#~ msgid ""
#~ "GTK custom color specification must have color name and fallback in "
#~ "parentheses, e.g. gtk:custom(foo,bar); could not parse \"%s\""
#~ msgstr ""
#~ "Určení vlastní barvy GTK musí mít název barvy a záložní možnost v "
#~ "závorce, např. gtk:custom(x,y); nelze analyzovat „%s“"
#~ msgid ""
#~ "Invalid character '%c' in color_name parameter of gtk:custom, only A-Za-"
#~ "z0-9-_ are valid"
#~ msgstr ""
#~ "Neplatný znak „%c“ v parametru color_name v gtk:custom, platné jsou pouze "
#~ "A-Za-z0-9-_"
#~ msgid ""
#~ "Gtk:custom format is \"gtk:custom(color_name,fallback)\", \"%s\" does not "
#~ "fit the format"
#~ msgstr ""
#~ "Formát Gtk:custom má podobu „gtk:custom(název_barvy,záloha)“, „%s“ tomuto "
#~ "formátu neodpovídá"
#~ msgid ""
#~ "GTK color specification must have the state in brackets, e.g. gtk:"
#~ "fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
#~ msgstr ""
#~ "Specifikace GTK barvy musí mít stav v hranatých závorkách, např. gtk:"
#~ "fg[NORMAL], kde NORMAL je stav; nelze analyzovat „%s“"
#~ msgid ""
#~ "GTK color specification must have a close bracket after the state, e.g. "
#~ "gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
#~ msgstr ""
#~ "Specifikace GTK barvy musí mít za stavem hranatou závorku, např. gtk:"
#~ "fg[NORMAL], kde NORMAL je stav; nelze analyzovat „%s“"
#~ msgid "Did not understand state \"%s\" in color specification"
#~ msgstr "Nerozumí se stavu „%s“ ve specifikaci barvy"
#~ msgid "Did not understand color component \"%s\" in color specification"
#~ msgstr "Nerozumí se barevné složce „%s“ ve specifikaci barvy"
#~ msgid ""
#~ "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit "
#~ "the format"
#~ msgstr ""
#~ "Formát prolínání má podobu „prolínání/barva_pozadí/barva_popředí/alfa“, "
#~ "„%s“ tomuto formátu neodpovídá"
#~ msgid "Could not parse alpha value \"%s\" in blended color"
#~ msgstr "Nelze analyzovat hodnotu alfa „%s“ v prolínající barvě"
#~ msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
#~ msgstr "Hodnota alfa „%s“ v prolínající barvě není mezi 0.0 a 1.0"
#~ msgid ""
#~ "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the "
#~ "format"
#~ msgstr ""
#~ "Formát stínu má podobu „stín/základní_barva/faktor“, „%s“ tomuto formátu "
#~ "neodpovídá"
#~ msgid "Could not parse shade factor \"%s\" in shaded color"
#~ msgstr "Nelze analyzovat faktor stínu „%s“ ve stínované barvě"
#~ msgid "Shade factor \"%s\" in shaded color is negative"
#~ msgstr "Faktor stínu „%s“ ve stínované barvě je záporný"
#~ msgid "Could not parse color \"%s\""
#~ msgstr "Nelze analyzovat barvu „%s“"
#~ msgid "Coordinate expression contains character '%s' which is not allowed"
#~ msgstr "Souřadnicový výraz obsahuje nepovolený znak „%s“"
#~ msgid ""
#~ "Coordinate expression contains floating point number '%s' which could not "
#~ "be parsed"
#~ msgstr ""
#~ "Souřadnicový výraz obsahuje číslo s pohyblivou řádovou čárkou „%s“, které "
#~ "nelze analyzovat"
#~ msgid ""
#~ "Coordinate expression contains integer '%s' which could not be parsed"
#~ msgstr "Souřadnicový výraz obsahuje celé číslo „%s“, které nelze analyzovat"
#~ msgid ""
#~ "Coordinate expression contained unknown operator at the start of this "
#~ "text: \"%s\""
#~ msgstr "Souřadnicový výraz obsahuje na začátku textu neznámý operátor: „%s“"
#~ msgid "Coordinate expression was empty or not understood"
#~ msgstr "Souřadnicový výraz byl prázdný nebo mu nebylo rozuměno"
#~ msgid "Coordinate expression results in division by zero"
#~ msgstr "Souřadnicový výraz způsobil dělení nulou"
#~ msgid ""
#~ "Coordinate expression tries to use mod operator on a floating-point number"
#~ msgstr ""
#~ "Souřadnicový výraz chce použít operátor mod na číslo s pohyblivou řádovou "
#~ "čárkou"
#~ msgid ""
#~ "Coordinate expression has an operator \"%s\" where an operand was expected"
#~ msgstr ""
#~ "Souřadnicový výraz má na místě, kde byl očekáván operand, operátor „%s“"
#~ msgid "Coordinate expression had an operand where an operator was expected"
#~ msgstr "Souřadnicový výraz má operand tam, kde byl očekáván operátor"
#~ msgid "Coordinate expression ended with an operator instead of an operand"
#~ msgstr "Souřadnicový výraz končí operátorem místo operandu"
#~ msgid ""
#~ "Coordinate expression has operator \"%c\" following operator \"%c\" with "
#~ "no operand in between"
#~ msgstr ""
#~ "Souřadnicový výraz má operátor „%c“ za operátorem „%c“ bez operandu "
#~ "umístěného mezi nimi"
#~ msgid "Coordinate expression had unknown variable or constant \"%s\""
#~ msgstr "Souřadnicový výraz má neznámou proměnnou nebo konstantu „%s“"
#~ msgid "Coordinate expression parser overflowed its buffer."
#~ msgstr "Analyzátor souřadnicových výrazů přeplnil svou vyrovnávací paměť."
#~ msgid ""
#~ "Coordinate expression had a close parenthesis with no open parenthesis"
#~ msgstr "Souřadnicový výraz má pravou závorku bez levé závorky"
#~ msgid ""
#~ "Coordinate expression had an open parenthesis with no close parenthesis"
#~ msgstr "Souřadnicový výraz má levou závorku bez pravé závorky"
#~ msgid "Coordinate expression doesn't seem to have any operators or operands"
#~ msgstr "Souřadnicový výraz zřejmě nemá žádné operátory nebo operandy"
#~ msgid "Theme contained an expression that resulted in an error: %s\n"
#~ msgstr "Motiv obsahoval výraz, který způsobil chybu: %s\n"
#~ msgid ""
#~ "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
#~ "specified for this frame style"
#~ msgstr ""
#~ "U tohoto stylu rámu musí být zadáno <button function=\"%s\" state=\"%s\" "
#~ "draw_ops=\"cokoliv\"/>"
#~ msgid ""
#~ "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/"
#~ ">"
#~ msgstr ""
#~ "Chybí <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"cokoliv\"/>"
#~ msgid "Failed to load theme \"%s\": %s\n"
#~ msgstr "Nelze načíst motiv „%s“: %s\n"
#~ msgid "No <%s> set for theme \"%s\""
#~ msgstr "Není nastaveno <%s> motivu „%s“"
#~ msgid ""
#~ "No frame style set for window type \"%s\" in theme \"%s\", add a <window "
#~ "type=\"%s\" style_set=\"whatever\"/> element"
#~ msgstr ""
#~ "U typu okna „%s“ motivu „%s“ není nastaven typ rámu, přidejte prosím "
#~ "prvek <window type=\"%s\" style_set=\"cokoliv\"/>"
#~ msgid ""
#~ "User-defined constants must begin with a capital letter; \"%s\" does not"
#~ msgstr ""
#~ "Uživatelem definované konstanty musí začínat velkým písmenem; „%s“ toto "
#~ "nesplňuje"
#~ msgid "Constant \"%s\" has already been defined"
#~ msgstr "Konstanta „%s“ již byla definována"
#~ msgid "No \"%s\" attribute on element <%s>"
#~ msgstr "Chybí atribut „%s“ v prvku <%s>"
#~ msgid "Line %d character %d: %s"
#~ msgstr "Řádek %d znak %d: %s"
#~ msgid "Attribute \"%s\" repeated twice on the same <%s> element"
#~ msgstr "Atribut „%s“ opakován dvakrát v jednom prvku <%s>"
#~ msgid "Attribute \"%s\" is invalid on <%s> element in this context"
#~ msgstr "Atribut „%s“ je v prvku <%s> v tomto kontextu neplatný"
#~ msgid "Could not parse \"%s\" as an integer"
#~ msgstr "„%s“ nelze analyzovat jako celé číslo"
#~ msgid "Did not understand trailing characters \"%s\" in string \"%s\""
#~ msgstr "Nerozuměno koncovým znakům „%s“ v řetězci „%s“"
#~ msgid "Integer %ld must be positive"
#~ msgstr "Celé číslo %ld musí být kladné"
#~ msgid "Integer %ld is too large, current max is %d"
#~ msgstr "Celé číslo %ld je příliš velké, aktuální maximum je %d"
#~ msgid "Could not parse \"%s\" as a floating point number"
#~ msgstr "Nelze analyzovat „%s“ jako číslo s pohyblivou řádovou čárkou"
#~ msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
#~ msgstr "Pravdivostní hodnoty musí být „true“ nebo „false“, nikoliv „%s“"
#~ msgid "Angle must be between 0.0 and 360.0, was %g\n"
#~ msgstr "Úhel musí být mezi 0.0 a 360.0, měl hodnotu %g\n"
#~ msgid ""
#~ "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
#~ msgstr ""
#~ "Alfa musí být mezi 0.0 (neviditelný) a 1.0 (zcela neprůhledný), měla "
#~ "hodnotu %g\n"
#~ msgid ""
#~ "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
#~ "large,x-large,xx-large)\n"
#~ msgstr ""
#~ "Neplatné měřítko nadpisu „%s“ (musí být jedno z xx-small, x-small, "
#~ "medium, large, x-large, xx-large)\n"
#~ msgid "<%s> name \"%s\" used a second time"
#~ msgstr "<%s>: název „%s“ použit podruhé"
#~ msgid "<%s> parent \"%s\" has not been defined"
#~ msgstr "<%s>: rodič „%s“ nebyl definován"
#~ msgid "<%s> geometry \"%s\" has not been defined"
#~ msgstr "<%s>: geometrie „%s“ nebyla definována"
#~ msgid "<%s> must specify either a geometry or a parent that has a geometry"
#~ msgstr "<%s> musí určit buď geometrii, nebo rodiče, který má geometrii"
#~ msgid "You must specify a background for an alpha value to be meaningful"
#~ msgstr "Aby měla hodnota alfa význam, je nutné určit pozadí"
#~ msgid "Unknown type \"%s\" on <%s> element"
#~ msgstr "Neznámý typ „%s“ v prvku <%s>"
#~ msgid "Unknown style_set \"%s\" on <%s> element"
#~ msgstr "Neznámý style_set „%s“ v prvku <%s>"
#~ msgid "Window type \"%s\" has already been assigned a style set"
#~ msgstr "Typu okna „%s“ již byla přiřazena sada stylů"
#~ msgid "Element <%s> is not allowed below <%s>"
#~ msgstr "Prvek <%s> není povolen pod <%s>"
#~ msgid ""
#~ "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio"
#~ "\" for buttons"
#~ msgstr ""
#~ "U tlačítek nelze zadat „button_width“/„button_height“ a zároveň "
#~ "„aspect_ratio“"
#~ msgid "Distance \"%s\" is unknown"
#~ msgstr "Vzdálenost „%s“ není známa"
#~ msgid "Aspect ratio \"%s\" is unknown"
#~ msgstr "Poměr stran „%s“ není znám"
#~ msgid "Border \"%s\" is unknown"
#~ msgstr "Okraj „%s“ není znám"
#~ msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
#~ msgstr "Chybí atribut „start_angle“ nebo „from“ v prvku <%s>"
#~ msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
#~ msgstr "Chybí atribut „extent_angle“ nebo „to“ v prvku <%s>"
#~ msgid "Did not understand value \"%s\" for type of gradient"
#~ msgstr "Nerozumí se hodnotě „%s“ typu přechodu"
#~ msgid "Did not understand fill type \"%s\" for <%s> element"
#~ msgstr "Nerozumí se typu výplně „%s“ prvku <%s>"
#~ msgid "Did not understand state \"%s\" for <%s> element"
#~ msgstr "Nerozumí se stavu „%s“ prvku <%s>"
#~ msgid "Did not understand shadow \"%s\" for <%s> element"
#~ msgstr "Nerozumí se stínu „%s“ prvku <%s>"
#~ msgid "Did not understand arrow \"%s\" for <%s> element"
#~ msgstr "Nerozumí se šipce „%s“ prvku <%s>"
#~ msgid "No <draw_ops> called \"%s\" has been defined"
#~ msgstr "Nebyly definovány žádné <draw_ops> nazvané „%s“"
#~ msgid "Including draw_ops \"%s\" here would create a circular reference"
#~ msgstr "Vložení draw_ops „%s“ na tomto místě by vytvořilo zacyklený odkaz"
#~ msgid "Unknown position \"%s\" for frame piece"
#~ msgstr "Neznámá pozice položky rámu „%s“"
#~ msgid "Frame style already has a piece at position %s"
#~ msgstr "Styl rámu již má položku na pozici %s"
#~ msgid "No <draw_ops> with the name \"%s\" has been defined"
#~ msgstr "Nebyly definované žádné <draw_ops> s názvem „%s“"
#~ msgid "Unknown function \"%s\" for button"
#~ msgstr "Neznámá funkce tlačítka „%s“"
#~ msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
#~ msgstr "Funkce tlačítka „%s“ v této verzi neexistuje (%d, potřeba je %d)"
#~ msgid "Unknown state \"%s\" for button"
#~ msgstr "Neznámý stav tlačítka „%s“"
#~ msgid "Frame style already has a button for function %s state %s"
#~ msgstr "Styl rámu již má tlačítko funkce %s stavu %s"
#~ msgid "\"%s\" is not a valid value for focus attribute"
#~ msgstr "„%s“ není platná hodnota atributu focus"
#~ msgid "\"%s\" is not a valid value for state attribute"
#~ msgstr "„%s“ není platná hodnota atributu state"
#~ msgid "A style called \"%s\" has not been defined"
#~ msgstr "Nebyl definován styl „%s“"
#~ msgid "\"%s\" is not a valid value for resize attribute"
#~ msgstr "„%s“ není platná hodnota atributu resize"
#~ msgid ""
#~ "Should not have \"resize\" attribute on <%s> element for maximized/shaded "
#~ "states"
#~ msgstr ""
#~ "Atribut „resize“ by neměl být na prvku <%s> maximalizovaného/svinutého "
#~ "stavu"
#~ msgid ""
#~ "Should not have \"resize\" attribute on <%s> element for maximized states"
#~ msgstr "Atribut „resize“ by neměl být na prvku <%s> maximalizovaného stavu"
#~ msgid "Style has already been specified for state %s resize %s focus %s"
#~ msgstr "U state %s resize %s focus %s již byl definován styl"
#~ msgid "Style has already been specified for state %s focus %s"
#~ msgstr "U state %s focus %s již byl definován styl"
#~ msgid ""
#~ "Can't have a two draw_ops for a <piece> element (theme specified a "
#~ "draw_ops attribute and also a <draw_ops> element, or specified two "
#~ "elements)"
#~ msgstr ""
#~ "Nelze mít dvě draw_ops u prvku <piece> (motiv definoval atribut draw_ops "
#~ "i prvek <draw_ops>, nebo definoval dva prvky)"
#~ msgid ""
#~ "Can't have a two draw_ops for a <button> element (theme specified a "
#~ "draw_ops attribute and also a <draw_ops> element, or specified two "
#~ "elements)"
#~ msgstr ""
#~ "Nelze mít dvě draw_ops u prvku <button> (motiv definoval atribut draw_ops "
#~ "i prvek <draw_ops>, nebo definoval dva prvky)"
#~ msgid ""
#~ "Can't have a two draw_ops for a <menu_icon> element (theme specified a "
#~ "draw_ops attribute and also a <draw_ops> element, or specified two "
#~ "elements)"
#~ msgstr ""
#~ "Nelze mít dvě draw_ops u prvku <menu_icon> (motiv definoval atribut "
#~ "draw_ops i prvek <draw_ops>, nebo definoval dva prvky)"
#~ msgid "Bad version specification '%s'"
#~ msgstr "Chybné zadání verze „%s“"
#~ msgid ""
#~ "\"version\" attribute cannot be used in metacity-theme-1.xml or metacity-"
#~ "theme-2.xml"
#~ msgstr ""
#~ "Atribut „version“ nemůže být použit v metacity-theme-1.xml or metacity-"
#~ "theme-2.xml"
#~ msgid ""
#~ "Theme requires version %s but latest supported theme version is %d.%d"
#~ msgstr ""
#~ "Motiv vyžaduje verzi %s, ale poslední verze podporovaného motivu je %d.%d"
#~ msgid "Outermost element in theme must be <metacity_theme> not <%s>"
#~ msgstr "Vnější prvek motivu musí být <metacity_theme>, nikoliv <%s>"
#~ msgid ""
#~ "Element <%s> is not allowed inside a name/author/date/description element"
#~ msgstr "Prvek <%s> není dovolen v prvku name/author/date/description"
#~ msgid "Element <%s> is not allowed inside a <constant> element"
#~ msgstr "Prvek <%s> není dovolen v prvku <constant>"
#~ msgid ""
#~ "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
#~ msgstr "Prvek <%s> není dovolen v prvku distance/border/aspect_ratio"
#~ msgid "Element <%s> is not allowed inside a draw operation element"
#~ msgstr "Prvek <%s> není dovolen v prvku operace kreslení"
#~ msgid "Element <%s> is not allowed inside a <%s> element"
#~ msgstr "Prvek <%s> není dovolen v prvku <%s>"
#~ msgid "No draw_ops provided for frame piece"
#~ msgstr "U položky rámu neposkytnuty draw_ops"
#~ msgid "No draw_ops provided for button"
#~ msgstr "U tlačítka neposkytnuty draw_ops"
#~ msgid "No text is allowed inside element <%s>"
#~ msgstr "V prvku <%s> není dovolen žádný text"
#~ msgid "<%s> specified twice for this theme"
#~ msgstr "<%s> u tohoto motivu definováno dvakrát"
#~ msgid "Failed to find a valid file for theme %s\n"
#~ msgstr "Nelze nalézt platný soubor motivu %s\n"
#~ msgid "background texture could not be created from file"
#~ msgstr "textura pozadí nemohla být ze souboru vytvořena"
#~ msgid "Unknown window information request: %d"
#~ msgstr "Neznámý informační požadavek okna: %d"
#~ msgid "Missing %s extension required for compositing"
#~ msgstr "Schází rozšíření %s vyžadované funkcemi kompozitoru"
#~ msgid ""
#~ "Some other program is already using the key %s with modifiers %x as a "
#~ "binding\n"
#~ msgstr ""
#~ "Klávesu %s s modifikátory %x již jako zkratku používá nějaký jiný "
#~ "program\n"
#~ msgid "\"%s\" is not a valid accelerator\n"
#~ msgstr "„%s“ není platný akcelerátor\n"
#~ msgid ""
#~ "Workarounds for broken applications disabled. Some applications may not "
#~ "behave properly.\n"
#~ msgstr ""
#~ "Bylo zakázáno obcházení chyb aplikací. Některé aplikace se možná nebudou "
#~ "chovat správně.\n"
#~ msgid "Could not parse font description \"%s\" from GSettings key %s\n"
#~ msgstr "Nelze zpracovat popis písma „%s“ v klíči GSettings %s\n"
#~ msgid ""
#~ "\"%s\" found in configuration database is not a valid value for mouse "
#~ "button modifier\n"
#~ msgstr ""
#~ "„%s“ nalezené v databázi nastavení není platnou hodnotou modifikátoru "
#~ "tlačítka myši\n"
#~ msgid ""
#~ "\"%s\" found in configuration database is not a valid value for "
#~ "keybinding \"%s\"\n"
#~ msgstr ""
#~ "„%s“ nalezené v databázi nastavení není platnou hodnotou klávesové "
#~ "zkratky „%s“\n"
#~ msgid ""
#~ "Could not acquire window manager selection on screen %d display \"%s\"\n"
#~ msgstr "Nelze získat výběr správce oken na obrazovce %d displeje „%s“\n"
#~ msgid "Could not release screen %d on display \"%s\"\n"
#~ msgstr "Nelze uvolnit obrazovku %d na displeji „%s“\n"
#~ msgid "Could not create directory '%s': %s\n"
#~ msgstr "Nelze vytvořit adresář „%s“: %s\n"
#~ msgid "Could not open session file '%s' for writing: %s\n"
#~ msgstr "Nelze otevřít soubor sezení „%s“ k zápisu: %s\n"
#~ msgid "Error writing session file '%s': %s\n"
#~ msgstr "Chyba při zápisu souboru sezení „%s“: %s\n"
#~ msgid "Error closing session file '%s': %s\n"
#~ msgstr "Chyba při zavírání souboru sezení „%s“: %s\n"
#~ msgid "Failed to parse saved session file: %s\n"
#~ msgstr "Chyba při analyzování uloženého souboru sezení: %s\n"
#~ msgid "<mutter_session> attribute seen but we already have the session ID"
#~ msgstr "nalezen atribut <mutter_session>, ale ID sezení už k dispozici je"
#~ msgid "Unknown attribute %s on <%s> element"
#~ msgstr "Neznámý atribut %s prvku <%s>"
#~ msgid "nested <window> tag"
#~ msgstr "vnořená značka <window>"
#~ msgid "Unknown element %s"
#~ msgstr "Neznámý prvek %s"
#~ msgid "Failed to open debug log: %s\n"
#~ msgstr "Nelze otevřít ladicí záznam: %s\n"
#~ msgid "Failed to fdopen() log file %s: %s\n"
#~ msgstr "Nelze provést fdopen() soubor záznamu %s: %s\n"
#~ msgid "Opened log file %s\n"
#~ msgstr "Otevřen soubor záznamu %s\n"
#~ msgid "Window manager: "
#~ msgstr "Správce oken: "
#~ msgid "Bug in window manager: "
#~ msgstr "Chyba ve správci oken: "
#~ msgid "Window manager warning: "
#~ msgstr "Varování správce oken: "
#~ msgid "Window manager error: "
#~ msgstr "Chyba správce oken: "
#~ msgid ""
#~ "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
#~ "window as specified in the ICCCM.\n"
#~ msgstr ""
#~ "Okno %s nastavilo SM_CLIENT_ID samo na sebe, namísto okna "
#~ "WM_CLIENT_LEADER, jak je definováno v ICCCM.\n"
#~ msgid ""
#~ "Window %s sets an MWM hint indicating it isn't resizable, but sets min "
#~ "size %d x %d and max size %d x %d; this doesn't make much sense.\n"
#~ msgstr ""
#~ "Okno %s nastavuje pokyn MWM, kterým naznačuje, že se nedá měnit jeho "
#~ "velikost, ale nastavuje min. velikost %d × %d a max. velikost %d × %d; to "
#~ "nedává smysl.\n"
#~ msgid "Application set a bogus _NET_WM_PID %lu\n"
#~ msgstr "Aplikace nastavila neplatný _NET_WM_PID %lu\n"
#~ msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
#~ msgstr "Neplatné okno WM_TRANSIENT_FOR 0x%lx specifikováno pro %s.\n"
#~ msgid "WM_TRANSIENT_FOR window 0x%lx for %s would create loop.\n"
#~ msgstr "Okno WM_TRANSIENT_FOR 0x%lx by vytvořilo smyčku pro %s.\n"
#~ msgid ""
#~ "Window 0x%lx has property %s\n"
#~ "that was expected to have type %s format %d\n"
#~ "and actually has type %s format %d n_items %d.\n"
#~ "This is most likely an application bug, not a window manager bug.\n"
#~ "The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
#~ msgstr ""
#~ "Okno 0x%lx má vlastnost %s\n"
#~ "Ta má mít typ %s formátu %d\n"
#~ "a ve skutečnosti má typ %s formátu %d n_items %d.\n"
#~ "To je pravděpodobně chyba aplikace, nikoliv správce oken.\n"
#~ "Okno má nadpis=„%s“, třída=„%s“, název=„%s“.\n"
#~ msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
#~ msgstr "Vlastnost %s okna 0x%lx obsahovala neplatné UTF-8\n"
#~ msgid ""
#~ "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the "
#~ "list\n"
#~ msgstr ""
#~ "Vlastnost %s okna 0x%lx obsahovala neplatné UTF-8 u položky %d seznamu\n"
#~ msgid "Mi_nimize"
#~ msgstr "Mi_nimalizovat"
#~ msgid "Ma_ximize"
#~ msgstr "Ma_ximalizovat"
#~ msgid "Unma_ximize"
#~ msgstr "Zrušit ma_ximalizaci"
#~ msgid "Roll _Up"
#~ msgstr "Sv_inout"
#~ msgid "_Unroll"
#~ msgstr "Rozv_inout"
#~ msgid "_Move"
#~ msgstr "_Přesunout"
#~ msgid "_Resize"
#~ msgstr "Z_měnit velikost"
#~ msgid "Move Titlebar On_screen"
#~ msgstr "Přesunout záhlaví okna na _obrazovku"
#~ msgid "Always on _Top"
#~ msgstr "_Vždy navrchu"
#~ msgid "_Always on Visible Workspace"
#~ msgstr "Vžd_y na viditelné ploše"
#~ msgid "_Only on This Workspace"
#~ msgstr "_Jen na této ploše"
#~ msgid "Move to Workspace _Left"
#~ msgstr "Přesunout na plochu v_levo"
#~ msgid "Move to Workspace R_ight"
#~ msgstr "Přesunout na plochu vp_ravo"
#~ msgid "Move to Workspace _Up"
#~ msgstr "Přesunout na plochu na_hoře"
#~ msgid "Move to Workspace _Down"
#~ msgstr "Přesunout na plochu _dole"
#~ msgid "_Close"
#~ msgstr "_Zavřít"
#~ msgid "Workspace %d%n"
#~ msgstr "Plocha %d%n"
#~ msgid "Workspace 1_0"
#~ msgstr "Plocha 1_0"
#~ msgid "Workspace %s%d"
#~ msgstr "Plocha %s%d"
#~ msgid "Move to Another _Workspace"
#~ msgstr "Přes_unout na jinou plochu"

539
po/da.po
View File

@@ -1,5 +1,5 @@
# Danish translation of Mutter.
# Copyright (C) 2002-2009, 2012-2016.
# Copyright (C) 2002-2009, 2012-2017.
# This file is distributed under the same license as the metacity package.
# Kjartan Maraas <kmaraas@gnome.org>, 2002
# Keld simonsen <keld@dkuug.dk>, 2002
@@ -8,7 +8,7 @@
# Lasse Bang Mikkelsen <lbm@fatalerror.dk>, 2006.
# Kenneth Nielsen <k.nielsen81@gmail.com>, 2008.
# Joe Hansen <joedalton2@yahoo.dk>, 2011.
# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 09, 10, 12, 13, 14, 15, 16.
# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 09, 10, 12, 13, 14, 15, 16, 17.
#
# Ordliste:
#
@@ -19,10 +19,10 @@
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-13 10:16+0000\n"
"PO-Revision-Date: 2016-09-08 23:52+0200\n"
"POT-Creation-Date: 2017-02-22 19:28+0000\n"
"PO-Revision-Date: 2017-03-02 12:04+0100\n"
"Last-Translator: Ask Hjorth Larsen <asklarsen@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
@@ -30,246 +30,6 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "Navigation"
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "Flyt vindue til arbejdsområde 1"
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "Flyt vindue til arbejdsområde 2"
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "Flyt vindue til arbejdsområde 3"
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "Flyt vindue til arbejdsområde 4"
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "Flyt vindue til sidste arbejdsområde"
#: 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"
msgstr "Flyt vindue et arbejdsområde op"
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "Flyt vindue et arbejdsområde ned"
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "Flyt vindue en skærm til venstre"
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "Flyt vindue en skærm til højre"
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "Flyt vindue en skærm op"
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "Flyt vindue en skærm ned"
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "Skift mellem programmer"
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "Skift til forrige program"
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "Skift mellem vinduer"
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "Skift til forrige vindue"
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "Skift mellem vinduer i et program"
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "Skift til forrige vindue af et program"
#: data/50-mutter-navigation.xml:76
msgid "Switch system controls"
msgstr "Skift mellem systemkontroller"
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "Skift til forrige systemkontrol"
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "Skift direkte mellem vinduer"
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "Skift direkte til forrige vindue"
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "Skift direkte mellem vinduer i et program"
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "Skift direkte til forrige vindue af et program"
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "Skift direkte mellem systemkontroller"
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "Skift direkte til forrige systemkontrol"
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "Skjul alle normale vinduer"
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "Skift til arbejdsområde 1"
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "Skift til arbejdsområde 2"
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "Skift til arbejdsområde 3"
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "Skift til arbejdsområde 4"
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "Skift til sidste arbejdsområde"
#: 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"
msgstr "Flyt til arbejdsområdet ovenover"
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "Flyt til arbejdsområdet nedenunder"
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "System"
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr "Vis \"kør kommando\"-prompten"
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "Vis aktivitetsoversigten"
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "Vinduer"
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "Aktivér vinduesmenuen"
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "Slå fuldskærmstilstand til/fra"
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "Slå maksimering til/fra"
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "Maksimér vindue"
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "Gendan vindue"
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Slå vinduesoprulning til/fra"
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "Luk vindue"
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "Skjul vindue"
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "Flyt vindue"
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "Ændr vinduesstørrelse"
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "Slå visning af vindue på alle arbejdsområder til/fra"
#: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it"
msgstr "Hæv vindue hvis det er dækket, ellers sænk det"
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "Hæv vindue over andre vinduer"
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "Sænk vindue under andre vinduer"
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "Maksimér vindue lodret"
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "Maksimér vindue vandret"
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr "Delt visning venstre"
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr "Delt visning højre"
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
@@ -280,15 +40,11 @@ msgstr "Modifikationstast til brug for udvidede vindueshåndteringsoperationer"
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
msgstr ""
"Denne nøgle vil klargøre \"overlay\", som er en kombineret vinduesoversigt "
"og programstartsystem. Standardværdien på PC-hardware er tiltænkt som "
"\"Windows\"-tasten. Det forventes at denne binding enten har "
"standardværdien, eller er sat til den tomme streng."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr "Denne nøgle vil klargøre \"overlay\", som er en kombineret vinduesoversigt og programstartersystem. Standardværdien på PC-hardware er tiltænkt som \"Windows\"-tasten. Det forventes, at denne binding enten har standardværdien, eller er sat til den tomme streng."
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
@@ -326,7 +82,7 @@ msgstr "Arbejdsområder håndteres dynamisk"
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -364,9 +120,9 @@ msgstr "Lad fokusændringer vente indtil markøren holder op med at bevæge sig"
#: 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."
"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 ""
"Hvis sat til sand, og fokustilstanden er enten \"sloppy\" eller \"mouse\", "
"vil fokus ikke blive ændret omgående når man går ind i et nyt vindue, men "
@@ -378,7 +134,7 @@ msgstr "Bredde af den trækbare kant"
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Samlet mængde kant der kan trækkes. Hvis temaets synlige grænser ikke er "
@@ -463,44 +219,51 @@ msgstr "Skift til VT 11"
msgid "Switch to VT 12"
msgstr "Skift til VT 12"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Tilstandsskift (Gruppe %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1845
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Skift skærm"
#: src/backends/meta-input-settings.c:1847
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Vis integreret hjælp"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Indbygget terminal"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Ukendt"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Ukendt terminal"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
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 ""
"En anden komposithåndtering kører allerede på skærm %i på terminal \"%s\"."
@@ -508,6 +271,7 @@ msgstr ""
msgid "Bell event"
msgstr "Bip-hændelse"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -525,52 +289,52 @@ msgstr ""
"Du kan vælge at vente et lille stykke tid på at programmet fortsætter, eller "
"du kan tvinge programmet til at afslutte fuldstændigt."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Vent"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Tving til at afslutte"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Vent"
#: src/core/display.c:608
#, c-format
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"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Deaktivér forbindelse til sessionshåndtering"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Erstat den kørende vindueshåndtering"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Angiv sessionhåndterings-id"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "X-terminal som bruges"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Initialisér session fra gemt fil"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Gør kald til X synkrone"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Kør som en wayland-kompositor"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Kør som en indlejret kompositor"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Kør som fuld terminalserver, frem for indlejret"
@@ -578,16 +342,15 @@ msgstr "Kør som fuld terminalserver, frem for indlejret"
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., og andre\n"
"Copyright © 2001%d Havoc Pennington, Red Hat, Inc., og andre\n"
"Dette er frit programmel; se kildekoden for kopieringsbetingelser.\n"
"Der er INGEN garanti; ikke engang for SALGBARHED eller EGNETHED TIL ET "
"BESTEMT FORMÅL.\n"
"Der er INGEN garanti; ikke engang for SALGBARHED eller EGNETHED TIL ET BESTEMT FORMÅL.\n"
#: src/core/mutter.c:53
msgid "Print version"
@@ -602,43 +365,221 @@ msgstr "Mutter-udvidelsesmodul der skal bruges"
msgid "Workspace %d"
msgstr "Arbejdsområde %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Terminalen \"%s\" har allerede en vindueshåndtering; prøv tilvalget --"
"replace for at erstatte den aktuelle vindueshåndtering."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, 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"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter blev kompileret uden understøttelse for uddybende tilstand\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Tilstandsskift: Tilstand %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
msgstr ""
"Disse vinduer understøtter ikke gemning af deres opsætning og skal "
"genstartes manuelt næste gang du logger på."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr "Disse vinduer understøtter ikke at gemme deres opsætning og skal genstartes manuelt næste gang, du logger på."
# Lad os håbe dette er rigtigt
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (på %s)"
#~ msgid "Navigation"
#~ msgstr "Navigation"
#~ msgid "Move window to workspace 1"
#~ msgstr "Flyt vindue til arbejdsområde 1"
#~ msgid "Move window to workspace 2"
#~ msgstr "Flyt vindue til arbejdsområde 2"
#~ msgid "Move window to workspace 3"
#~ msgstr "Flyt vindue til arbejdsområde 3"
#~ msgid "Move window to workspace 4"
#~ msgstr "Flyt vindue til arbejdsområde 4"
#~ msgid "Move window to last workspace"
#~ msgstr "Flyt vindue til sidste arbejdsområde"
#~ 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 window one workspace up"
#~ msgstr "Flyt vindue et arbejdsområde op"
#~ msgid "Move window one workspace down"
#~ msgstr "Flyt vindue et arbejdsområde ned"
#~ msgid "Move window one monitor to the left"
#~ msgstr "Flyt vindue en skærm til venstre"
#~ msgid "Move window one monitor to the right"
#~ msgstr "Flyt vindue en skærm til højre"
#~ msgid "Move window one monitor up"
#~ msgstr "Flyt vindue en skærm op"
#~ msgid "Move window one monitor down"
#~ msgstr "Flyt vindue en skærm ned"
#~ msgid "Switch applications"
#~ msgstr "Skift mellem programmer"
#~ msgid "Switch to previous application"
#~ msgstr "Skift til forrige program"
#~ msgid "Switch windows"
#~ msgstr "Skift mellem vinduer"
#~ msgid "Switch to previous window"
#~ msgstr "Skift til forrige vindue"
#~ msgid "Switch windows of an application"
#~ msgstr "Skift mellem vinduer i et program"
#~ msgid "Switch to previous window of an application"
#~ msgstr "Skift til forrige vindue af et program"
#~ msgid "Switch system controls"
#~ msgstr "Skift mellem systemkontroller"
#~ msgid "Switch to previous system control"
#~ msgstr "Skift til forrige systemkontrol"
#~ msgid "Switch windows directly"
#~ msgstr "Skift direkte mellem vinduer"
#~ msgid "Switch directly to previous window"
#~ msgstr "Skift direkte til forrige vindue"
#~ msgid "Switch windows of an app directly"
#~ msgstr "Skift direkte mellem vinduer i et program"
#~ msgid "Switch directly to previous window of an app"
#~ msgstr "Skift direkte til forrige vindue af et program"
#~ msgid "Switch system controls directly"
#~ msgstr "Skift direkte mellem systemkontroller"
#~ msgid "Switch directly to previous system control"
#~ msgstr "Skift direkte til forrige systemkontrol"
#~ msgid "Hide all normal windows"
#~ msgstr "Skjul alle normale vinduer"
#~ msgid "Switch to workspace 1"
#~ msgstr "Skift til arbejdsområde 1"
#~ msgid "Switch to workspace 2"
#~ msgstr "Skift til arbejdsområde 2"
#~ msgid "Switch to workspace 3"
#~ msgstr "Skift til arbejdsområde 3"
#~ msgid "Switch to workspace 4"
#~ msgstr "Skift til arbejdsområde 4"
#~ msgid "Switch to last workspace"
#~ msgstr "Skift til sidste arbejdsområde"
#~ 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 "Move to workspace above"
#~ msgstr "Flyt til arbejdsområdet ovenover"
#~ msgid "Move to workspace below"
#~ msgstr "Flyt til arbejdsområdet nedenunder"
#~ msgid "System"
#~ msgstr "System"
#~ msgid "Show the run command prompt"
#~ msgstr "Vis \"kør kommando\"-prompten"
#~ msgid "Show the activities overview"
#~ msgstr "Vis aktivitetsoversigten"
#~ msgid "Windows"
#~ msgstr "Vinduer"
#~ msgid "Activate the window menu"
#~ msgstr "Aktivér vinduesmenuen"
#~ msgid "Toggle fullscreen mode"
#~ msgstr "Slå fuldskærmstilstand til/fra"
#~ msgid "Toggle maximization state"
#~ msgstr "Slå maksimering til/fra"
#~ msgid "Maximize window"
#~ msgstr "Maksimér vindue"
#~ msgid "Restore window"
#~ msgstr "Gendan vindue"
#~ msgid "Toggle shaded state"
#~ msgstr "Slå vinduesoprulning til/fra"
#~ msgid "Close window"
#~ msgstr "Luk vindue"
#~ msgid "Hide window"
#~ msgstr "Skjul vindue"
#~ msgid "Move window"
#~ msgstr "Flyt vindue"
#~ msgid "Resize window"
#~ msgstr "Ændr vinduesstørrelse"
#~ msgid "Toggle window on all workspaces or one"
#~ msgstr "Slå visning af vindue på alle arbejdsområder til/fra"
#~ msgid "Raise window if covered, otherwise lower it"
#~ msgstr "Hæv vindue hvis det er dækket, ellers sænk det"
#~ msgid "Raise window above other windows"
#~ msgstr "Hæv vindue over andre vinduer"
#~ msgid "Lower window below other windows"
#~ msgstr "Sænk vindue under andre vinduer"
#~ msgid "Maximize window vertically"
#~ msgstr "Maksimér vindue lodret"
#~ msgid "Maximize window horizontally"
#~ msgstr "Maksimér vindue vandret"
#~ msgid "View split on left"
#~ msgstr "Delt visning venstre"
#~ msgid "View split on right"
#~ msgstr "Delt visning højre"
#~ msgid "Failed to scan themes directory: %s\n"
#~ msgstr "Kunne ikke skanne temamappe: %s\n"

647
po/fur.po
View File

@@ -6,283 +6,43 @@
msgid ""
msgstr ""
"Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-08-07 10:39+0000\n"
"PO-Revision-Date: 2016-08-07 18:18+0200\n"
"POT-Creation-Date: 2017-02-22 19:28+0000\n"
"PO-Revision-Date: 2017-02-24 16:31+0100\n"
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
"Language-Team: Friulian <fur@li.org>\n"
"Language: fur\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.8\n"
"X-Generator: Poedit 1.8.11\n"
#: ../data/50-mutter-navigation.xml.in.h:1
msgid "Navigation"
msgstr "Navigazion"
#: ../data/50-mutter-navigation.xml.in.h:2
msgid "Move window to workspace 1"
msgstr "Sposte barcon tal spazi di lavôr 1"
#: ../data/50-mutter-navigation.xml.in.h:3
msgid "Move window to workspace 2"
msgstr "Sposte barcon tal spazi di lavôr 2"
#: ../data/50-mutter-navigation.xml.in.h:4
msgid "Move window to workspace 3"
msgstr "Sposte barcon tal spazi di lavôr 3"
#: ../data/50-mutter-navigation.xml.in.h:5
msgid "Move window to workspace 4"
msgstr "Sposte barcon tal spazi di lavôr 4"
#: ../data/50-mutter-navigation.xml.in.h:6
msgid "Move window to last workspace"
msgstr "Sposte barcon tal ultin spazi di lavôr"
#: ../data/50-mutter-navigation.xml.in.h:7
msgid "Move window one workspace to the left"
msgstr "Sposte barcon tal spazi di lavôr a çampe"
#: ../data/50-mutter-navigation.xml.in.h:8
msgid "Move window one workspace to the right"
msgstr "Sposte barcon tal spazi di lavôr a drete"
#: ../data/50-mutter-navigation.xml.in.h:9
msgid "Move window one workspace up"
msgstr "Sposte barcon tal spazi di lavôr parsore"
#: ../data/50-mutter-navigation.xml.in.h:10
msgid "Move window one workspace down"
msgstr "Sposte barcon tal spazi di lavôr sot"
#: ../data/50-mutter-navigation.xml.in.h:11
msgid "Move window one monitor to the left"
msgstr "Sposte barcon tal visôr a çampe"
#: ../data/50-mutter-navigation.xml.in.h:12
msgid "Move window one monitor to the right"
msgstr "Sposte barcon tal visôr a drete"
#: ../data/50-mutter-navigation.xml.in.h:13
msgid "Move window one monitor up"
msgstr "Sposte barcon tal visôr parsore"
#: ../data/50-mutter-navigation.xml.in.h:14
msgid "Move window one monitor down"
msgstr "Sposte barcon tal visôr sot"
#: ../data/50-mutter-navigation.xml.in.h:15
msgid "Switch applications"
msgstr "Passâ di une aplicazion in chê altre"
#: ../data/50-mutter-navigation.xml.in.h:16
msgid "Switch to previous application"
msgstr "Passe ae aplicazion prime"
#: ../data/50-mutter-navigation.xml.in.h:17
msgid "Switch windows"
msgstr "Passâ di un barcon in chel altri"
#: ../data/50-mutter-navigation.xml.in.h:18
msgid "Switch to previous window"
msgstr "Passe al barcon prime"
#: ../data/50-mutter-navigation.xml.in.h:19
msgid "Switch windows of an application"
msgstr "Passâ di un barcon in chel altri di une aplicazion"
#: ../data/50-mutter-navigation.xml.in.h:20
msgid "Switch to previous window of an application"
msgstr "Passe al barcon prime di une aplicazion"
#: ../data/50-mutter-navigation.xml.in.h:21
msgid "Switch system controls"
msgstr "Passâ di un control di sisteme in chel altri"
#: ../data/50-mutter-navigation.xml.in.h:22
msgid "Switch to previous system control"
msgstr "Passe al control di sisteme precedent"
#: ../data/50-mutter-navigation.xml.in.h:23
msgid "Switch windows directly"
msgstr "Passe dret ai barcons"
#: ../data/50-mutter-navigation.xml.in.h:24
msgid "Switch directly to previous window"
msgstr "Passe dret al barcon precedent"
#: ../data/50-mutter-navigation.xml.in.h:25
msgid "Switch windows of an app directly"
msgstr "Passe dret a un barcon di une aplicazion"
#: ../data/50-mutter-navigation.xml.in.h:26
msgid "Switch directly to previous window of an app"
msgstr "Passe dret al barcon precedent di une aplicazion"
#: ../data/50-mutter-navigation.xml.in.h:27
msgid "Switch system controls directly"
msgstr "Passe dret ai controi dal sisteme"
#: ../data/50-mutter-navigation.xml.in.h:28
msgid "Switch directly to previous system control"
msgstr "Passe dret al control precedent dal sisteme"
#: ../data/50-mutter-navigation.xml.in.h:29
msgid "Hide all normal windows"
msgstr "Plate ducj i barcons normâi"
#: ../data/50-mutter-navigation.xml.in.h:30
msgid "Switch to workspace 1"
msgstr "Passe al spazi di lavôr 1"
#: ../data/50-mutter-navigation.xml.in.h:31
msgid "Switch to workspace 2"
msgstr "Passe al spazi di lavôr 2"
#: ../data/50-mutter-navigation.xml.in.h:32
msgid "Switch to workspace 3"
msgstr "Passe al spazi di lavôr 3"
#: ../data/50-mutter-navigation.xml.in.h:33
msgid "Switch to workspace 4"
msgstr "Passe al spazi di lavôr 4"
#: ../data/50-mutter-navigation.xml.in.h:34
msgid "Switch to last workspace"
msgstr "Passe al ultin spazi di lavôr"
#: ../data/50-mutter-navigation.xml.in.h:35
msgid "Move to workspace left"
msgstr "Sposte il spazi di lavôr a çampe"
#: ../data/50-mutter-navigation.xml.in.h:36
msgid "Move to workspace right"
msgstr "Sposte il spazi di lavôr a drete"
#: ../data/50-mutter-navigation.xml.in.h:37
msgid "Move to workspace above"
msgstr "Sposte il spazi di lavôr parsore"
#: ../data/50-mutter-navigation.xml.in.h:38
msgid "Move to workspace below"
msgstr "Sposte il spazi di lavôr sot"
#: ../data/50-mutter-system.xml.in.h:1
msgid "System"
msgstr "Sisteme"
#: ../data/50-mutter-system.xml.in.h:2
msgid "Show the run command prompt"
msgstr "Mostre la richieste \"eseguìs comant\""
#: ../data/50-mutter-system.xml.in.h:3
msgid "Show the activities overview"
msgstr "Mostre la panoramiche ativitâts"
#: ../data/50-mutter-windows.xml.in.h:1
msgid "Windows"
msgstr "Barcons"
#: ../data/50-mutter-windows.xml.in.h:2
msgid "Activate the window menu"
msgstr "Ative il menù dal barcon"
#: ../data/50-mutter-windows.xml.in.h:3
msgid "Toggle fullscreen mode"
msgstr "Ative/Disative modalitât plen visôr"
#: ../data/50-mutter-windows.xml.in.h:4
msgid "Toggle maximization state"
msgstr "Ative/Disative il stât slargjât"
#: ../data/50-mutter-windows.xml.in.h:5
msgid "Maximize window"
msgstr "Slargje il barcon"
#: ../data/50-mutter-windows.xml.in.h:6
msgid "Restore window"
msgstr "Ripristine barcon"
#: ../data/50-mutter-windows.xml.in.h:7
msgid "Toggle shaded state"
msgstr "Ative/Disative stât inrodolât"
#: ../data/50-mutter-windows.xml.in.h:8
msgid "Close window"
msgstr "Siere il barcon"
#: ../data/50-mutter-windows.xml.in.h:9
msgid "Hide window"
msgstr "Plate il barcon"
#: ../data/50-mutter-windows.xml.in.h:10
msgid "Move window"
msgstr "Sposte il barcon"
#: ../data/50-mutter-windows.xml.in.h:11
msgid "Resize window"
msgstr "Ridimensione barcon"
#: ../data/50-mutter-windows.xml.in.h:12
msgid "Toggle window on all workspaces or one"
msgstr "Ative/Disative barcon su ducj i spazis di lavôr o nome un"
#: ../data/50-mutter-windows.xml.in.h:13
msgid "Raise window if covered, otherwise lower it"
msgstr "Tire sù il barcon se al è cuviert, se no sbassilu"
#: ../data/50-mutter-windows.xml.in.h:14
msgid "Raise window above other windows"
msgstr "Met il barcon parsore di chei altris"
#: ../data/50-mutter-windows.xml.in.h:15
msgid "Lower window below other windows"
msgstr "Bute il barcon sot di chei altris"
#: ../data/50-mutter-windows.xml.in.h:16
msgid "Maximize window vertically"
msgstr "Slargje il barcon par verticâl"
#: ../data/50-mutter-windows.xml.in.h:17
msgid "Maximize window horizontally"
msgstr "Slargje il barcon par orizontâl"
#: ../data/50-mutter-windows.xml.in.h:18
msgid "View split on left"
msgstr "Slargje dividint ae çampe"
#: ../data/50-mutter-windows.xml.in.h:19
msgid "View split on right"
msgstr "Slargje dividint ae drete"
#: ../data/mutter.desktop.in.h:1
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr "Modificadôr di doprâ pes operazions estesis di gjestion barcons"
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Cheste clâf e tache il \"overlay\", che e je une cumbinazion tra la "
"Cheste clâf e tache il overlay, che e je une cumbinazion tra la "
"panoramiche dai barcons e il sisteme par inviâ lis aplicazions. Il valôr "
"predefinît al è pensât par jessi il \"tast Windows\" su hardware PC. Si "
"spiete che cheste scurte e sedi il valôr predefinît o une stringhe vueide."
"predefinît al è pensât par jessi il tast Windows su hardware PC. Si spiete "
"che cheste scurte e sedi il valôr predefinît o une stringhe vueide."
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr "Dialics modâi tacâts"
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
#: 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 "
@@ -291,12 +51,12 @@ msgstr ""
"Se metût a VÊR, invezit di vê sbaris di titul indipendentis, i dialics modâi "
"a semein tacâts ae sbare dal titul dal barcon gjenitôr e si spostin cun lui."
#: ../data/org.gnome.mutter.gschema.xml.in.h:5
#: data/org.gnome.mutter.gschema.xml.in:30
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Abilite il piastrelâ tal ôr cuant che si strissine i barcons tal ôr dal visôr"
#: ../data/org.gnome.mutter.gschema.xml.in.h:6
#: 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 "
@@ -307,25 +67,25 @@ msgstr ""
"cuvierzi metât dal spazi disponibil. Strissinant sul ôr superiôr dal schermi "
"al slargje i barcons dal dut."
#: ../data/org.gnome.mutter.gschema.xml.in.h:7
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr "I spazis di vore a son ministrât in maniere dinamiche"
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"Determine se i spazis di lavôr a son gjestîts in maniere dinamiche o se il "
"lôr numar al è fis (determinât de clâf num-workspaces in org.gnome.desktop."
"wm.preferences)."
"Al determine se i spazis di lavôr a son gjestîts in maniere dinamiche o se "
"il lôr numar al è fis (determinât de clâf num-workspaces in org.gnome."
"desktop.wm.preferences)."
#: ../data/org.gnome.mutter.gschema.xml.in.h:9
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr "Spazis di vore nome tal visôr primari"
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
#: 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."
@@ -333,11 +93,11 @@ msgstr ""
"Determine se il cambi di spazi di lavôr al à di vignî pai barcons su ducj i "
"visôrs o nome pai barcons sul visôr primari."
#: ../data/org.gnome.mutter.gschema.xml.in.h:11
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr "Nissun tab popup"
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
#: data/org.gnome.mutter.gschema.xml.in:60
msgid ""
"Determines whether the use of popup and highlight frame should be disabled "
"for window cycling."
@@ -345,37 +105,37 @@ msgstr ""
"Determine se disabilitâ l'ûs di popup e di curnîs di evidenziadure tal passâ "
"di un barcon a chel altri."
#: ../data/org.gnome.mutter.gschema.xml.in.h:13
#: data/org.gnome.mutter.gschema.xml.in:68
msgid "Delay focus changes until the pointer stops moving"
msgstr "Tarde il cambiament dal focus fintremai che il puntadôr si ferme"
#: ../data/org.gnome.mutter.gschema.xml.in.h:14
#: 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."
"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 ""
"Se metût a VÊR, e la modalitât di focus e je metude a \"sloppy\" o \"mouse\" "
"Se metût a VÊR e la modalitât di focus e je metude a sloppy o mouse "
"alore il focus nol ven spostât subite cuant che si passe suntun barcon, ma "
"nome cuant che il puntadôr si ferme."
#: ../data/org.gnome.mutter.gschema.xml.in.h:15
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr "Largjece dal ôr che si pues strissinâ"
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Il spessôr totâl pai ôrs che si puedin strissinâ. Se i ôrs visibii dal teme "
"no bastin, a vegnin zontâts dai ôrs invisibii par rivâ a chest valôr."
#: ../data/org.gnome.mutter.gschema.xml.in.h:17
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr "Slargje in automatic i barcons grancj su par ju come il visôr"
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
#: data/org.gnome.mutter.gschema.xml.in:90
msgid ""
"If enabled, new windows that are initially the size of the monitor "
"automatically get maximized."
@@ -383,11 +143,11 @@ msgstr ""
"Se abilitât, i gnûfs barcons che a an al inizi la stesse dimension dal visôr "
"a vegnin slargjâts in automatic."
#: ../data/org.gnome.mutter.gschema.xml.in.h:19
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr "Place i gnûfs barcons tal mieç"
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
#: 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."
@@ -395,115 +155,126 @@ msgstr ""
"Se metût a VÊR, i gnûfs barcons a vegnaran plaçâts simpri tal mieç dal "
"schermi atîf dal visôr."
#: ../data/org.gnome.mutter.gschema.xml.in.h:21
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr "Selezione barcon dal tab popup"
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr "Anule tab popup"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr "Passe al VT 1"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr "Passe al VT 2"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr "Passe al VT 3"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr "Passe al VT 4"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr "Passe al VT 5"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr "Passe al VT 6"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr "Passe al VT 7"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr "Passe al VT 8"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr "Passe al VT 9"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr "Passe al VT 10"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr "Passe al VT 11"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr "Passe al VT 12"
#: ../src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Cambie mût (Grup %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Cambie visôr"
#: ../src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Mostre jutori a schermi"
#: ../src/backends/meta-monitor-manager.c:515
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Display integrât"
#: ../src/backends/meta-monitor-manager.c:538
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "No cognossût"
#: ../src/backends/meta-monitor-manager.c:540
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Display no cognossût"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:548
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
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 ""
"Un altri compositing manager al è za in esecuzion sul schermi %i sul display "
"\"%s\"."
"“%s”."
#: ../src/core/bell.c:194
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Event cjampane"
#: ../src/core/delete.c:127
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr "“%s” nol rispuint."
#: ../src/core/delete.c:129
#: src/core/delete.c:129
msgid "Application is not responding."
msgstr "La aplicazion no rispuint."
#: ../src/core/delete.c:134
#: src/core/delete.c:134
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
@@ -511,115 +282,295 @@ msgstr ""
"Al è pussibil sielzi di spietâ un pôc lassant che la aplicazion e continui o "
"sfuarçâ la aplicazion par sierâle dal dut."
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "_Spiete"
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "Sfuarce _Jessude"
#: ../src/core/display.c:590
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Impussibil vierzi il display '%s' di X Window System\n"
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Spiete"
#: ../src/core/main.c:182
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Impussibil vierzi il display “%s” di X Window System\n"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Disabilite la conession al gjestôr de session"
#: ../src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Rimplace il window manager in vore"
#: ../src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Specifiche il ID di gjestion session"
#: ../src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Display X di doprâ"
#: ../src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inizialize session da file salvât"
#: ../src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Fâs lis clamadis X sincronis"
#: ../src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Eseguìs come compositor wayland"
#: ../src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Eseguìs come compositor nidiât"
#: ../src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Eseguìs come servidôr display complet, invezit che nidiât"
#: ../src/core/mutter.c:39
#: src/core/mutter.c:39
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., e altris\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., e altris\n"
"Chest al è software libar; viodi i sorzints pes condizions di copie.\n"
"No je NISSUNE garanzie; nancje di CUMIERÇABILITÂT o IDONEITÂT A UNE "
"FINALITÂT PARTICOLÂR.\n"
#: ../src/core/mutter.c:53
#: src/core/mutter.c:53
msgid "Print version"
msgstr "Stampe version"
#: ../src/core/mutter.c:59
#: src/core/mutter.c:59
msgid "Mutter plugin to use"
msgstr "Plugin Mutter di doprâ"
#: ../src/core/prefs.c:1997
#: src/core/prefs.c:1997
#, c-format
msgid "Workspace %d"
msgstr "Spazi di lavôr %d"
#: ../src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
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."
#: ../src/core/screen.c:606
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "Schermi %d su display '%s' no valit\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "Schermi %d su display %s no valit\n"
#: ../src/core/util.c:120
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter al è stât compilât cence supuart pe modalitât fetose\n"
#: ../src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Cambie mût: mût %d"
#: ../src/x11/session.c:1815
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Chescj barcons no supuartin la funzion &quot;salve impostazions atuâi&quot; "
"e si scugnarà tornâ a inviâlis a man tal prossim acès."
"Chescj barcons no supuartin la funzion salve impostazions atuâls” e si "
"scugnarà tornâ a inviâlis a man tal prossim acès."
#: ../src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (su %s)"
#~ msgid "Navigation"
#~ msgstr "Navigazion"
#~ msgid "Move window to workspace 1"
#~ msgstr "Sposte barcon tal spazi di lavôr 1"
#~ msgid "Move window to workspace 2"
#~ msgstr "Sposte barcon tal spazi di lavôr 2"
#~ msgid "Move window to workspace 3"
#~ msgstr "Sposte barcon tal spazi di lavôr 3"
#~ msgid "Move window to workspace 4"
#~ msgstr "Sposte barcon tal spazi di lavôr 4"
#~ msgid "Move window to last workspace"
#~ msgstr "Sposte barcon tal ultin spazi di lavôr"
#~ 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 window one workspace up"
#~ msgstr "Sposte barcon tal spazi di lavôr parsore"
#~ msgid "Move window one workspace down"
#~ msgstr "Sposte barcon tal spazi di lavôr sot"
#~ msgid "Move window one monitor to the left"
#~ msgstr "Sposte barcon tal visôr a çampe"
#~ msgid "Move window one monitor to the right"
#~ msgstr "Sposte barcon tal visôr a drete"
#~ msgid "Move window one monitor up"
#~ msgstr "Sposte barcon tal visôr parsore"
#~ msgid "Move window one monitor down"
#~ msgstr "Sposte barcon tal visôr sot"
#~ msgid "Switch applications"
#~ msgstr "Passâ di une aplicazion in chê altre"
#~ msgid "Switch to previous application"
#~ msgstr "Passe ae aplicazion prime"
#~ msgid "Switch windows"
#~ msgstr "Passâ di un barcon in chel altri"
#~ msgid "Switch to previous window"
#~ msgstr "Passe al barcon prime"
#~ msgid "Switch windows of an application"
#~ msgstr "Passâ di un barcon in chel altri di une aplicazion"
#~ msgid "Switch to previous window of an application"
#~ msgstr "Passe al barcon prime di une aplicazion"
#~ msgid "Switch system controls"
#~ msgstr "Passâ di un control di sisteme in chel altri"
#~ msgid "Switch to previous system control"
#~ msgstr "Passe al control di sisteme precedent"
#~ msgid "Switch windows directly"
#~ msgstr "Passe dret ai barcons"
#~ msgid "Switch directly to previous window"
#~ msgstr "Passe dret al barcon precedent"
#~ msgid "Switch windows of an app directly"
#~ msgstr "Passe dret a un barcon di une aplicazion"
#~ msgid "Switch directly to previous window of an app"
#~ msgstr "Passe dret al barcon precedent di une aplicazion"
#~ msgid "Switch system controls directly"
#~ msgstr "Passe dret ai controi dal sisteme"
#~ msgid "Switch directly to previous system control"
#~ msgstr "Passe dret al control precedent dal sisteme"
#~ msgid "Hide all normal windows"
#~ msgstr "Plate ducj i barcons normâi"
#~ msgid "Switch to workspace 1"
#~ msgstr "Passe al spazi di lavôr 1"
#~ msgid "Switch to workspace 2"
#~ msgstr "Passe al spazi di lavôr 2"
#~ msgid "Switch to workspace 3"
#~ msgstr "Passe al spazi di lavôr 3"
#~ msgid "Switch to workspace 4"
#~ msgstr "Passe al spazi di lavôr 4"
#~ msgid "Switch to last workspace"
#~ msgstr "Passe al ultin spazi di lavôr"
#~ 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 "Move to workspace above"
#~ msgstr "Sposte il spazi di lavôr parsore"
#~ msgid "Move to workspace below"
#~ msgstr "Sposte il spazi di lavôr sot"
#~ msgid "System"
#~ msgstr "Sisteme"
#~ msgid "Show the run command prompt"
#~ msgstr "Mostre la richieste \"eseguìs comant\""
#~ msgid "Show the activities overview"
#~ msgstr "Mostre la panoramiche ativitâts"
#~ msgid "Windows"
#~ msgstr "Barcons"
#~ msgid "Activate the window menu"
#~ msgstr "Ative il menù dal barcon"
#~ msgid "Toggle fullscreen mode"
#~ msgstr "Ative/Disative modalitât plen visôr"
#~ msgid "Toggle maximization state"
#~ msgstr "Ative/Disative il stât slargjât"
#~ msgid "Maximize window"
#~ msgstr "Slargje il barcon"
#~ msgid "Restore window"
#~ msgstr "Ripristine barcon"
#~ msgid "Toggle shaded state"
#~ msgstr "Ative/Disative stât inrodolât"
#~ msgid "Close window"
#~ msgstr "Siere il barcon"
#~ msgid "Hide window"
#~ msgstr "Plate il barcon"
#~ msgid "Move window"
#~ msgstr "Sposte il barcon"
#~ msgid "Resize window"
#~ msgstr "Ridimensione barcon"
#~ msgid "Toggle window on all workspaces or one"
#~ msgstr "Ative/Disative barcon su ducj i spazis di lavôr o nome un"
#~ msgid "Raise window if covered, otherwise lower it"
#~ msgstr "Tire sù il barcon se al è cuviert, se no sbassilu"
#~ msgid "Raise window above other windows"
#~ msgstr "Met il barcon parsore di chei altris"
#~ msgid "Lower window below other windows"
#~ msgstr "Bute il barcon sot di chei altris"
#~ msgid "Maximize window vertically"
#~ msgstr "Slargje il barcon par verticâl"
#~ msgid "Maximize window horizontally"
#~ msgstr "Slargje il barcon par orizontâl"
#~ msgid "View split on left"
#~ msgstr "Slargje dividint ae çampe"
#~ msgid "View split on right"
#~ msgstr "Slargje dividint ae drete"

297
po/gd.po
View File

@@ -1,14 +1,14 @@
# Scottish Gaelic translation for mutter.
# Copyright (C) 2016 mutter's COPYRIGHT HOLDER
# This file is distributed under the same license as the mutter package.
# GunChleoc <fios@foramnagaidhlig.net>, 2016.
# GunChleoc <fios@foramnagaidhlig.net>, 2016, 2017.
msgid ""
msgstr ""
"Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-04-28 14:01+0000\n"
"PO-Revision-Date: 2016-04-28 15:57+0100\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutte"
"r&keywords=I18N+L10N&component=general\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"
"Language-Team: Fòram na Gàidhlig\n"
"Language: gd\n"
@@ -20,255 +20,255 @@ msgstr ""
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../data/50-mutter-navigation.xml.in.h:1
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "Seòladaireachd"
#: ../data/50-mutter-navigation.xml.in.h:2
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "Gluais an uinneag gu rum-obrach 1"
#: ../data/50-mutter-navigation.xml.in.h:3
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "Gluais an uinneag gu rum-obrach 2"
#: ../data/50-mutter-navigation.xml.in.h:4
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "Gluais an uinneag gu rum-obrach 3"
#: ../data/50-mutter-navigation.xml.in.h:5
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "Gluais an uinneag gu rum-obrach 4"
#: ../data/50-mutter-navigation.xml.in.h:6
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "Gluais an uinneag gun rum-obrach mu dheireadh"
#: ../data/50-mutter-navigation.xml.in.h:7
#: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "Gluais an uinneag gun rum-obrach ris an taobh chlì"
#: ../data/50-mutter-navigation.xml.in.h:8
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "Gluais an uinneag gun rum-obrach ris an taobh deas"
#: ../data/50-mutter-navigation.xml.in.h:9
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up"
msgstr "Gluais an uinneag gun rum-obrach os a chionn"
#: ../data/50-mutter-navigation.xml.in.h:10
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "Gluais an uinneag gun rum-obrach foidhe"
#: ../data/50-mutter-navigation.xml.in.h:11
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "Gluais an uinneag gun sgrìn aig an taobh chlì"
#: ../data/50-mutter-navigation.xml.in.h:12
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "Gluais an uinneag gun sgrìn aig an taobh deas"
#: ../data/50-mutter-navigation.xml.in.h:13
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "Gluais an uinneag gun sgrìn os a chionn"
#: ../data/50-mutter-navigation.xml.in.h:14
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "Gluais an uinneag gun sgrìn foidhe"
#: ../data/50-mutter-navigation.xml.in.h:15
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "Gearr leum gu aplacaid eile"
#: ../data/50-mutter-navigation.xml.in.h:16
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "Gearr leum gun aplacaid roimhpe"
#: ../data/50-mutter-navigation.xml.in.h:17
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "Gearr leum gu uinneag eile"
#: ../data/50-mutter-navigation.xml.in.h:18
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "Gearr leum gun uinneag roimhpe"
#: ../data/50-mutter-navigation.xml.in.h:19
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "Gearr leum gu uinneag eile na h-aplacaid"
#: ../data/50-mutter-navigation.xml.in.h:20
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "Gearr leum gu uinneag roimhpe na h-aplacaid"
#: ../data/50-mutter-navigation.xml.in.h:21
#: data/50-mutter-navigation.xml:76
msgid "Switch system controls"
msgstr "Gearr leum gu inneal-smachd siostaim eile"
#: ../data/50-mutter-navigation.xml.in.h:22
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "Gearr leum gun inneal-smachd siostaim roimhe"
#: ../data/50-mutter-navigation.xml.in.h:23
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "Gearr leum gu uinneag eile sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:24
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "Gearr leum gun uinneag roimhpe sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:25
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "Gearr leum gu uinneag eile na h-aplacaid sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:26
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "Gearr leum gu uinneag roimphe na h-aplacaid sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:27
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "Gearr leum gu inneal-smachd siostaim eile sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:28
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "Gearr leum gun inneal-smachd siostaim roimhe sa bhad"
#: ../data/50-mutter-navigation.xml.in.h:29
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "Cuir gach uinneag àbhaisteach am falach"
#: ../data/50-mutter-navigation.xml.in.h:30
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "Gearr leum gu rum-obrach 1"
#: ../data/50-mutter-navigation.xml.in.h:31
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "Gearr leum gu rum-obrach 2"
#: ../data/50-mutter-navigation.xml.in.h:32
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "Gearr leum gu rum-obrach 3"
#: ../data/50-mutter-navigation.xml.in.h:33
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "Gearr leum gu rum-obrach 4"
#: ../data/50-mutter-navigation.xml.in.h:34
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "Gearr leum gun rum-obrach mu dheireadh"
#: ../data/50-mutter-navigation.xml.in.h:35
#: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Gluais dhan rum-obrach air an taobh chlì"
#: ../data/50-mutter-navigation.xml.in.h:36
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Gluais dhan rum-obrach air an taobh deas"
#: ../data/50-mutter-navigation.xml.in.h:37
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above"
msgstr "Gluais dhan rum-obrach aig a' bharr"
#: ../data/50-mutter-navigation.xml.in.h:38
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "Gluais dhan rum-obrach aig a' bhonn"
#: ../data/50-mutter-system.xml.in.h:1
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "An siostam"
#: ../data/50-mutter-system.xml.in.h:2
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr ""
#: ../data/50-mutter-system.xml.in.h:3
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "Foir-shealladh air na gnìomhachdan"
#: ../data/50-mutter-windows.xml.in.h:1
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "Uinneagan"
#: ../data/50-mutter-windows.xml.in.h:2
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "Gnìomhaich clàr-taice na h-uinneige"
#: ../data/50-mutter-windows.xml.in.h:3
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "Toglaich am modh làn-sgrìn"
#: ../data/50-mutter-windows.xml.in.h:4
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "Toglaich staid an làn-mheudachaidh"
#: ../data/50-mutter-windows.xml.in.h:5
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "Làn-mheudaich an uinneag"
#: ../data/50-mutter-windows.xml.in.h:6
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "Aisig an uinneag"
#: ../data/50-mutter-windows.xml.in.h:7
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Toglaich staid an sgàileachaidh"
#: ../data/50-mutter-windows.xml.in.h:8
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "Dùin an uinneag"
#: ../data/50-mutter-windows.xml.in.h:9
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "Cuir an uinneag am falach"
#: ../data/50-mutter-windows.xml.in.h:10
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "Gluais an uinneag"
#: ../data/50-mutter-windows.xml.in.h:11
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "Atharraich meud na h-uinneige"
#: ../data/50-mutter-windows.xml.in.h:12
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "Toglaich an uinneag air a h-uile rum-obrach no aonan"
#: ../data/50-mutter-windows.xml.in.h:13
#: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it"
msgstr "Tog an uinneag nuair a thèid a còmhdachadh air neo ìslich i"
#: ../data/50-mutter-windows.xml.in.h:14
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "Tog an uinneag os cionn càich"
#: ../data/50-mutter-windows.xml.in.h:15
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "Ìslich an uinneag fo na h-uinneagan eile"
#: ../data/50-mutter-windows.xml.in.h:16
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "Làn-mheudaich an uinneag gu h-ingearach"
#: ../data/50-mutter-windows.xml.in.h:17
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "Làn-mheudaich an uinneag air a' chòmhnard"
#: ../data/50-mutter-windows.xml.in.h:18
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr ""
msgstr "Sgoilt an t-sealladh air an taobh chì"
#: ../data/50-mutter-windows.xml.in.h:19
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr ""
msgstr "Sgoilt an t-sealladh air an taobh deas"
#: ../data/mutter.desktop.in.h:1
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
@@ -276,254 +276,266 @@ msgid ""
"default or set to the empty string."
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
#: 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.h:5
#: 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.h:6
#: 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.h:7
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
#: 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.h:9
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
#: 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.h:11
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
#: 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.h:13
#: 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.h:14
#: 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.h:15
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
#: 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.h:17
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
#: 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.h:19
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
#: 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.h:21
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr ""
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr ""
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr ""
#: ../src/backends/meta-monitor-manager.c:515
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1913
#| msgid "Switch system controls"
msgid "Switch monitor"
msgstr "Gearr leum gu monatair eile"
#: src/backends/meta-input-settings.c:1915
msgid "Show on-screen help"
msgstr "Seall a' chobhair air an sgrìn"
#: src/backends/meta-monitor-manager.c:515
msgid "Built-in display"
msgstr ""
msgstr "Uidheam-taisbeanaidh 'na broinn"
#: ../src/backends/meta-monitor-manager.c:538
#: src/backends/meta-monitor-manager.c:538
msgid "Unknown"
msgstr ""
msgstr "Chan eil fhios"
#: ../src/backends/meta-monitor-manager.c:540
#: src/backends/meta-monitor-manager.c:540
msgid "Unknown Display"
msgstr ""
msgstr "Uidheam-taisbeanaidh nach aithne dhuinn"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:548
#: src/backends/meta-monitor-manager.c:548
#, c-format
msgid "%s %s"
msgstr ""
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:456
#: src/compositor/compositor.c:471
#, c-format
msgid ""
"Another compositing manager is already running on screen %i on display \"%s"
"\"."
msgstr ""
#: ../src/core/bell.c:194
#: src/core/bell.c:194
msgid "Bell event"
msgstr ""
#: ../src/core/delete.c:127
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr ""
#: ../src/core/delete.c:129
#: src/core/delete.c:129
msgid "Application is not responding."
msgstr ""
#: ../src/core/delete.c:134
#: src/core/delete.c:134
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
msgstr ""
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Wait"
msgstr ""
msgstr "_Fuirich"
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr ""
msgstr "Sparr _fàgail air"
#: ../src/core/display.c:555
#: src/core/display.c:590
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr ""
#: ../src/core/main.c:181
#: src/core/main.c:182
msgid "Disable connection to session manager"
msgstr ""
#: ../src/core/main.c:187
#: src/core/main.c:188
msgid "Replace the running window manager"
msgstr ""
#: ../src/core/main.c:193
#: src/core/main.c:194
msgid "Specify session management ID"
msgstr ""
#: ../src/core/main.c:198
#: src/core/main.c:199
msgid "X Display to use"
msgstr ""
#: ../src/core/main.c:204
#: src/core/main.c:205
msgid "Initialize session from savefile"
msgstr ""
#: ../src/core/main.c:210
#: src/core/main.c:211
msgid "Make X calls synchronous"
msgstr ""
#: ../src/core/main.c:217
#: src/core/main.c:218
msgid "Run as a wayland compositor"
msgstr ""
#: ../src/core/main.c:223
#: src/core/main.c:224
msgid "Run as a nested compositor"
msgstr ""
#: ../src/core/main.c:231
#: 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
msgid ""
"mutter %s\n"
@@ -533,42 +545,47 @@ msgid ""
"PARTICULAR PURPOSE.\n"
msgstr ""
#: ../src/core/mutter.c:53
#: src/core/mutter.c:53
msgid "Print version"
msgstr ""
#: ../src/core/mutter.c:59
#: src/core/mutter.c:59
msgid "Mutter plugin to use"
msgstr ""
#: ../src/core/prefs.c:1997
#: src/core/prefs.c:1997
#, c-format
msgid "Workspace %d"
msgstr ""
msgstr "Rum-obrach %d"
#: ../src/core/screen.c:521
#: src/core/screen.c:521
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
msgstr ""
#: ../src/core/screen.c:603
#: src/core/screen.c:606
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr ""
#: ../src/core/util.c:121
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr ""
#: ../src/x11/session.c:1815
#: src/wayland/meta-wayland-tablet-pad.c:595
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Suidse nam modh: Modh %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
msgstr ""
#: ../src/x11/window-props.c:549
#: src/x11/window-props.c:548
#, c-format
msgid "%s (on %s)"
msgstr ""
msgstr "%s (air %s)"

155
po/gl.po
View File

@@ -9,22 +9,23 @@
# Mancomún - Centro de Referencia e Servizos de Software Libre <g11n@mancomun.org>, 2009.
# Fran Diéguez <frandieguez@gnome.org>, 2009, 2010, 2011, 2012.
# Leandro Regueiro <leandro.regueiro@gmail.com>, 2012.
# Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015, 2016.
# Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015, 2016, 2017.
#
msgid ""
msgstr ""
"Project-Id-Version: gl\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter&"
"keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-09 01:16+0000\n"
"PO-Revision-Date: 2016-09-11 00:48+0200\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2017-02-28 06:20+0000\n"
"PO-Revision-Date: 2017-03-11 03:02+0100\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: Galician\n"
"Language-Team: Galician <gnome-l10n-gl@gnome.org>\n"
"Language: gl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Generator: Gtranslator 2.91.7\n"
"X-Project-Style: gnome\n"
#: data/50-mutter-navigation.xml:6
@@ -108,7 +109,6 @@ msgid "Switch to previous window of an application"
msgstr "Cambia á xanela anterior dun aplicativo"
#: data/50-mutter-navigation.xml:76
#| msgid "Switch system controls directly"
msgid "Switch system controls"
msgstr "Cambiar entre os controles do sistema"
@@ -278,11 +278,16 @@ msgstr ""
"Modificador que se vai usar para as accións modificadas de xestión de xanela"
#: data/org.gnome.mutter.gschema.xml.in:8
#| msgid ""
#| "This key will initiate the \"overlay\", which is a combination window "
#| "overview and application launching system. The default is intended to be "
#| "the \"Windows key\" on PC hardware. It's expected that this binding "
#| "either the default or set to the empty string."
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Esta tecla iniciará o «overlay», que é unha combinación da vista previa da "
"xanela e o sistema de inicialización de aplicativos. O valor predeterminado "
@@ -323,12 +328,16 @@ msgid "Workspaces are managed dynamically"
msgstr "Os espazos de traballo xestiónanse dinamicamente"
#: 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)."
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"Determina se os espazos de traballo se xestionan dinamicamente ou se hai un "
"Determina se os espazos de traballo se xestionan dinámicamente ou se hai un "
"número estático de áreas de traballo (determinado pola chave «num-"
"workspaces» en «org.gnome.desktop.wm.preferences»)."
@@ -361,10 +370,14 @@ msgid "Delay focus changes until the pointer stops moving"
msgstr "Retrasar o cambio de enfoque até que o punteiro se deteña ao moverse"
#: 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."
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."
"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 ""
"Se está estabelecido a verdadeiro e o modo de enfoque é «sloopy» ou «mouse» "
"entón o enfoque non se cambiará de forma inmediata ao entrar nunha xanela, "
@@ -375,8 +388,11 @@ msgid "Draggable border width"
msgstr "Anchura arrastrábel do bordo"
#: 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."
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"A cantidade total de bordo arrastrábel. Se os bordos visíbeis do tema non "
@@ -463,49 +479,64 @@ msgstr "Cambiar á VT 11"
msgid "Switch to VT 12"
msgstr "Cambiar á VT 12"
#: src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
#| msgid "Mode Switch: Mode %d"
msgid "Mode Switch (Group %d)"
msgstr "Modo conmutador (Grupo %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Cambiar monitor"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Mostrar axuda en pantalla"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Pantalla embebida"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Descoñecido"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Pantalla descoñecida"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
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 ""
"Xa se está a executar outro xestor de composición na pantalla %i na "
"visualización «%s»"
"visualización «%s»."
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Evento de campá"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -523,60 +554,67 @@ msgstr ""
"Pode elixir esperar un momento para ver se continúa ou forzar ao aplicativo "
"a pechar completamente."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "Espe_rar"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Forzar a saída"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "Espe_rar"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
#| 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"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Desactivar a conexión ao xestor de sesión"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Substituír o xestor de xanelas en execución"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Especificar o ID de xestión de sesión"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Pantalla X que se vai usar"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicializar sesión desde o ficheiro de salvagarda"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Facer que as chamadas a X sexan sincrónicas"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Executar como compositor de wayland"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Executar como compositor anidado"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Executar como un servidor de pantalla completo, fronte a un aniñado"
#: src/core/mutter.c:39
#, 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 ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -600,38 +638,45 @@ msgstr "Engadido de mutter que usar"
msgid "Workspace %d"
msgstr "Espazo de traballo %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
#| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace "
#| "option to replace the current window manager."
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"A pantalla «%s» ten xa un xestor de xanelas, tente usar a opción --replace "
"para substituír o xestor de xanelas."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, 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 "A pantalla %d na visualización «%s» non é válida\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter foi compilado sen compatibilidade para o modo detallado\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Modo conmutador: Modo %d"
#: src/x11/session.c:1815
#| msgid ""
#| "These windows do not support &quot;save current setup&quot; and will have "
#| "to be restarted manually next time you log in."
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Estas xanelas non soportan &quot;save current setup&quot; e terán que "
"reiniciarse manualmente a próxima vez que inicie a sesión."
"Estas xanelas non soportan «save current setup» e terán que reiniciarse "
"manualmente a próxima vez que inicie a sesión."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (en %s)"

334
po/hu.po
View File

@@ -12,281 +12,281 @@ msgstr ""
"Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-07-22 13:03+0000\n"
"PO-Revision-Date: 2016-08-05 00:06+0200\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"POT-Creation-Date: 2017-02-16 01:44+0000\n"
"PO-Revision-Date: 2017-02-22 17:03+0100\n"
"Last-Translator: Meskó Balázs <meskobalazs@gmail.com>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 1.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.11\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../data/50-mutter-navigation.xml.in.h:1
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "Navigáció"
#: ../data/50-mutter-navigation.xml.in.h:2
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "Ablak áthelyezése az 1. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:3
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "Ablak áthelyezése a 2. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:4
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "Ablak áthelyezése a 3. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:5
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "Ablak áthelyezése a 4. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:6
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "Ablak áthelyezése az utolsó munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:7
#: 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.in.h:8
#: 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.in.h:9
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up"
msgstr "Ablak áthelyezése egy munkaterülettel feljebb"
#: ../data/50-mutter-navigation.xml.in.h:10
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "Ablak áthelyezése egy munkaterülettel lejjebb"
#: ../data/50-mutter-navigation.xml.in.h:11
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "Ablak áthelyezése a balra lévő monitorra"
#: ../data/50-mutter-navigation.xml.in.h:12
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "Ablak áthelyezése a jobbra lévő monitorra"
#: ../data/50-mutter-navigation.xml.in.h:13
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "Ablak áthelyezése egy monitorral feljebb"
#: ../data/50-mutter-navigation.xml.in.h:14
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "Ablak áthelyezése egy monitorral lejjebb"
#: ../data/50-mutter-navigation.xml.in.h:15
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "Alkalmazásváltás"
#: ../data/50-mutter-navigation.xml.in.h:16
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "Váltás az előző alkalmazásra"
#: ../data/50-mutter-navigation.xml.in.h:17
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "Ablakváltás"
#: ../data/50-mutter-navigation.xml.in.h:18
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "Váltás az előző ablakra"
#: ../data/50-mutter-navigation.xml.in.h:19
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "Váltás egy alkalmazás ablakai között"
#: ../data/50-mutter-navigation.xml.in.h:20
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "Váltás egy alkalmazás előző ablakára"
#: ../data/50-mutter-navigation.xml.in.h:21
#: data/50-mutter-navigation.xml:76
msgid "Switch system controls"
msgstr "Váltás a rendszer vezérlői közt"
#: ../data/50-mutter-navigation.xml.in.h:22
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "Váltás az előző rendszervezérlőre"
#: ../data/50-mutter-navigation.xml.in.h:23
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "Váltás az ablakok közt közvetlenül"
#: ../data/50-mutter-navigation.xml.in.h:24
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "Váltás közvetlenül az előző ablakra"
#: ../data/50-mutter-navigation.xml.in.h:25
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "Váltás egy alkalmazás ablakai között közvetlenül"
#: ../data/50-mutter-navigation.xml.in.h:26
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "Váltás közvetlenül egy alkalmazás előző ablakára"
#: ../data/50-mutter-navigation.xml.in.h:27
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "Váltás a rendszer vezérlői közt közvetlenül"
#: ../data/50-mutter-navigation.xml.in.h:28
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "Váltás közvetlenül az előző rendszervezérlőre"
#: ../data/50-mutter-navigation.xml.in.h:29
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "Minden normál ablak elrejtése"
#: ../data/50-mutter-navigation.xml.in.h:30
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "Váltás az 1. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:31
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "Váltás a 2. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:32
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "Váltás a 3. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:33
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "Váltás a 4. munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:34
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "Váltás az utolsó munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:35
#: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Áthelyezés a bal oldali munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:36
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Áthelyezés a jobb oldali munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:37
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above"
msgstr "Áthelyezés a felső munkaterületre"
#: ../data/50-mutter-navigation.xml.in.h:38
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "Áthelyezés az alsó munkaterületre"
#: ../data/50-mutter-system.xml.in.h:1
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "Rendszer"
#: ../data/50-mutter-system.xml.in.h:2
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr "A parancs futtatása ablak megjelenítése"
#: ../data/50-mutter-system.xml.in.h:3
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "A tevékenységek áttekintés megjelenítése"
#: ../data/50-mutter-windows.xml.in.h:1
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "Ablakok"
#: ../data/50-mutter-windows.xml.in.h:2
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "Ablakmenü aktiválása"
#: ../data/50-mutter-windows.xml.in.h:3
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "Teljes képernyős üzemmód"
#: ../data/50-mutter-windows.xml.in.h:4
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "Maximalizált állapot átváltása"
#: ../data/50-mutter-windows.xml.in.h:5
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "Ablak maximalizálása"
#: ../data/50-mutter-windows.xml.in.h:6
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "Ablak visszaállítása"
#: ../data/50-mutter-windows.xml.in.h:7
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Felgördített állapot átváltása"
#: ../data/50-mutter-windows.xml.in.h:8
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "Ablak bezárása"
#: ../data/50-mutter-windows.xml.in.h:9
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "Ablak elrejtése"
#: ../data/50-mutter-windows.xml.in.h:10
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "Ablak áthelyezése"
#: ../data/50-mutter-windows.xml.in.h:11
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "Ablak átméretezése"
#: ../data/50-mutter-windows.xml.in.h:12
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "Ablak megjelenítése minden munkaterületen vagy csak az egyiken"
#: ../data/50-mutter-windows.xml.in.h:13
#: data/50-mutter-windows.xml:31
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"
#: ../data/50-mutter-windows.xml.in.h:14
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "Ablak más ablakok elé hozása"
#: ../data/50-mutter-windows.xml.in.h:15
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "Ablak más ablakok mögé küldése"
#: ../data/50-mutter-windows.xml.in.h:16
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "Ablak függőleges maximalizálása"
#: ../data/50-mutter-windows.xml.in.h:17
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "Ablak vízszintes maximalizálása"
#: ../data/50-mutter-windows.xml.in.h:18
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr "Bal oldali felosztás megjelenítése"
#: ../data/50-mutter-windows.xml.in.h:19
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr "Jobb oldali felosztás megjelenítése"
#: ../data/mutter.desktop.in.h:1
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr "A kiterjesztett ablakkezelési műveletekhez használandó módosító"
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Ez a kulcs indítja az „átfedést”, amely egy kombinációs ablakáttekintés és "
"alkalmazásindító rendszer. Az alapértelmezés a „Windows” billentyű PC "
"hardver esetén. Ezt vagy az alapértelmezetten, vagy üresen kell hagyni."
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr "Kizárólagos párbeszédablakok csatolása"
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
#: 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 "
@@ -296,11 +296,11 @@ msgstr ""
"hanem a szülőablak címsorához csatolva jelennek meg, és a szülőablakkal "
"együtt kerülnek mozgatásra."
#: ../data/org.gnome.mutter.gschema.xml.in.h:5
#: data/org.gnome.mutter.gschema.xml.in:30
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Szélek csempézésének engedélyezése ablakok képernyőszélekre ejtésekor"
#: ../data/org.gnome.mutter.gschema.xml.in.h:6
#: 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 "
@@ -311,24 +311,24 @@ msgstr ""
"felét fogják elfoglalni. Az ablakok felső képernyőszélre ejtése teljesen "
"maximalizálja azokat."
#: ../data/org.gnome.mutter.gschema.xml.in.h:7
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr "Munkaterületek dinamikus kezelése"
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"A munkaterületek dinamikusan vannak-e kezelve, vagy a számuk rögzített (ezt "
"a num-workspaces kulcs adja meg az org.gnome.desktop.wm.preferences fájlban)."
#: ../data/org.gnome.mutter.gschema.xml.in.h:9
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr "Munkaterületek csak az elsődlegesen"
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
#: 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."
@@ -336,11 +336,11 @@ msgstr ""
"A munkaterület-váltás minden monitor ablakaihoz, vagy csak az elsődleges "
"monitor ablakaihoz történjen meg."
#: ../data/org.gnome.mutter.gschema.xml.in.h:11
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr "Nincs tab felugró"
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
#: data/org.gnome.mutter.gschema.xml.in:60
msgid ""
"Determines whether the use of popup and highlight frame should be disabled "
"for window cycling."
@@ -348,38 +348,38 @@ msgstr ""
"Megadja, hogy a felugró ablak és a kiemelő keret letiltandó-e az ablakok "
"közti lépkedéskor."
#: ../data/org.gnome.mutter.gschema.xml.in.h:13
#: data/org.gnome.mutter.gschema.xml.in:68
msgid "Delay focus changes until the pointer stops moving"
msgstr "Fókuszváltozások késleltetése a mutató mozgásának megállásáig"
#: ../data/org.gnome.mutter.gschema.xml.in.h:14
#: 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."
"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 ""
"Ha igazra van állítva, és a fókuszmód a „sloppy” vagy „mouse”, akkor a "
"fókusz nem változik meg azonnal egy ablakra mutatáskor, hanem csak a mutató "
"megállása után."
#: ../data/org.gnome.mutter.gschema.xml.in.h:15
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr "Húzható szegély szélessége"
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"A húzható szegélyek teljes mennyisége. Ha a téma látható szegélyei nem "
"elegendők, akkor láthatatlan szegélyek kerülnek hozzáadásra ezen érték "
"eléréséhez."
#: ../data/org.gnome.mutter.gschema.xml.in.h:17
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr "Közel monitorméretű ablakok automatikus maximalizálása"
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
#: data/org.gnome.mutter.gschema.xml.in:90
msgid ""
"If enabled, new windows that are initially the size of the monitor "
"automatically get maximized."
@@ -387,11 +387,11 @@ msgstr ""
"Ha engedélyezve van, akkor a monitor méretével egyező méretű új ablakok "
"automatikusan maximalizálva lesznek."
#: ../data/org.gnome.mutter.gschema.xml.in.h:19
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr "Az új ablakok középre helyezése"
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
#: 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."
@@ -399,115 +399,126 @@ msgstr ""
"Ha igaz, az új ablakok mindig a monitor aktív képernyőjének közepére lesznek "
"helyezve."
#: ../data/org.gnome.mutter.gschema.xml.in.h:21
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr "Ablakok kiválasztása tab billentyűre felugró ablakból"
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr "Tab felugró kikapcsolása"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr "Váltás az 1. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr "Váltás a 2. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr "Váltás a 3. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr "Váltás a 4. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr "Váltás az 5. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr "Váltás a 6. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr "Váltás a 7. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr "Váltás a 8. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr "Váltás a 9. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr "Váltás a 10. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr "Váltás a 11. VT-re"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr "Váltás a 12. VT-re"
#: ../src/backends/meta-input-settings.c:1601
#| msgid "Switch system controls"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1759
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Módkapcsoló (%d. csoport)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1781
msgid "Switch monitor"
msgstr "Monitorváltás"
#: ../src/backends/meta-input-settings.c:1603
#: src/backends/meta-input-settings.c:1783
msgid "Show on-screen help"
msgstr "Képernyősúgó megjelenítése"
#: ../src/backends/meta-monitor-manager.c:515
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Beépített kijelző"
#: ../src/backends/meta-monitor-manager.c:538
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Ismeretlen"
#: ../src/backends/meta-monitor-manager.c:540
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Ismeretlen kijelző"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:548
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
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 ""
"Már fut egy másik betűszedés-kezelő a(z) %i képernyőn a(z) „%s” megjelenítőn."
"Már fut egy másik kompozitálás-kezelő a(z) %i. képernyőn a(z) „%s” "
"megjelenítőn."
#: ../src/core/bell.c:194
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Csengetés esemény"
#: ../src/core/delete.c:127
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr "„%s” nem válaszol."
#: ../src/core/delete.c:129
#: src/core/delete.c:129
msgid "Application is not responding."
msgstr "Az alkalmazás nem válaszol."
#: ../src/core/delete.c:134
#: src/core/delete.c:134
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
@@ -515,117 +526,116 @@ msgstr ""
"Várhat egy kicsit a folytatódására, vagy kikényszerítheti az alkalmazás "
"teljes kilépését."
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "Vá_rakozás"
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Erőltetett kilépés"
#: ../src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "Vá_rakozás"
#: src/core/display.c:608
#, c-format
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"
#: ../src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "A munkamenet-kezelőhöz való csatlakozás tiltása"
#: ../src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "A futó ablakkezelő helyettesítése"
#: ../src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "A munkamenet-kezelő azonosítójának megadása"
#: ../src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "A használandó X megjelenítő"
#: ../src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "A munkamenet előkészítése a mentési fájlból"
#: ../src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Az X-hívások szinkronná tétele"
#: ../src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Futtatás wayland betűszedőként"
#: ../src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Futtatás beágyazott betűszedőként"
#: ../src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr ""
"Futtatás teljes megjelenítő kiszolgálóként az egymásba ágyazott helyett"
#: ../src/core/mutter.c:39
#: src/core/mutter.c:39
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., és mások\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., és mások\n"
"Ez egy szabad szoftver; lásd a forrást a másolás feltételeiről.\n"
"NINCS garancia; még az ELADHATÓSÁGRA vagy EGY ADOTT CÉLRA VALÓ ALKALMASSÁGRA "
"vonatkozólag sem.\n"
#: ../src/core/mutter.c:53
#: src/core/mutter.c:53
msgid "Print version"
msgstr "Verzió kinyomtatása"
msgstr "Verzió kiírása"
#: ../src/core/mutter.c:59
#: src/core/mutter.c:59
msgid "Mutter plugin to use"
msgstr "Használandó Mutter bővítmény"
#: ../src/core/prefs.c:1997
#: src/core/prefs.c:1997
#, c-format
msgid "Workspace %d"
msgstr "%d. munkaterület"
#: ../src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"A(z) „%s” kijelző már rendelkezik ablakkezelővel; próbálja a --replace "
"kapcsolóval helyettesíteni a jelenlegi ablakkezelőt."
#: ../src/core/screen.c:603
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "A(z) %d képernyő a(z) „%s” megjelenítőn érvénytelen\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"
#: ../src/core/util.c:120
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "A Mutter ablakkezelőt a részletes mód támogatása nélkül fordították\n"
#: ../src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Módkapcsoló: %d. mód"
#: ../src/x11/session.c:1815
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Az alábbi ablakok nem támogatják az &quot;aktuális beállítások "
"mentését&quot;, emiatt ezeket a legközelebbi bejelentkezéskor manuálisan "
"újra kell indítania."
"Az alábbi ablakok nem támogatják az aktuális beállítások mentését”, emiatt "
"ezeket a legközelebbi bejelentkezéskor manuálisan újra kell indítania."
#: ../src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (ezen: %s)"

3494
po/is.po

File diff suppressed because it is too large Load Diff

133
po/ko.po
View File

@@ -6,7 +6,7 @@
# Changwoo Ryu <cwryu@debian.org>, 2003, 2004, 2005, 2006, 2007, 2008, 2009.
#
# Updated in mutter:
# Changwoo Ryu <cwryu@debian.org>, 2011-2016.
# Changwoo Ryu <cwryu@debian.org>, 2011-2017.
#
#
# 주의:
@@ -16,10 +16,10 @@
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-10 00:38+0900\n"
"POT-Creation-Date: 2017-02-28 06:20+0000\n"
"PO-Revision-Date: 2017-03-04 03:25+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
"Language: ko\n"
@@ -278,14 +278,14 @@ msgstr "창 관리 작업을 할 때 사용할 변경 키"
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"다음 창으로 이동할 때 창 팝업 및 프레임을 표시할지 여부. 이 키는 \"오버레"
"\"를 시작합니다. 오버레이는 창 상태 보기 및 프로그램 실행 환경입니다. PC에"
"기본값은 \"윈도우 키\"입니다. 보통 이 키 바인딩은 기본값이거나 빈 문자열입니"
"다음 창으로 이동할 때 창 팝업 및 프레임을 표시할지 여부. 이 키는 오버레"
"이”를 시작합니다. 오버레이는 창 상태 보기 및 프로그램 실행 환경입니다. PC에"
"기본값은 윈도우 키입니다. 보통 이 키 바인딩은 기본값이거나 빈 문자열입니"
"다."
#: data/org.gnome.mutter.gschema.xml.in:20
@@ -321,7 +321,7 @@ msgstr "작업 공간을 동적으로 관리"
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -358,12 +358,12 @@ 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."
"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 ""
"참이고 포커스 모드가 \"sloppy\"나 \"mouse\"인 경우, 창 안에 포인터를 옮겼을 "
"때 즉시 포커스를 전환하지 않고, 포인터가 움직임을 멈추었을 때 전환합니다."
"참이고 포커스 모드가 sloppy”나 “mouse인 경우, 창 안에 포인터를 옮겼을 때 즉"
"시 포커스를 전환하지 않고, 포인터가 움직임을 멈추었을 때 전환합니다."
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
@@ -371,7 +371,7 @@ msgstr "마우스로 끌 수 있는 가장자리의 너비"
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"마우스로 끌 수 있는 가장자리의 너비. 테마의 가장자리가 이보다 작은 경우, 투명"
@@ -453,49 +453,60 @@ msgstr "가상 터미널 11로 이동"
msgid "Switch to VT 12"
msgstr "가상 터미널 12로 이동"
#: src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "모드 전환 (그룹 %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "모니터 전환"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "화면 도움말 표시"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "내장 디스플레이"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "알 수 없음"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "알 수 없는 디스플레이"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
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 ""
"다른 창 구성 관리 프로그램이 이미 디스플레이 \"%2$s\" 화면 %1$i번에서 실행 중"
"니다."
"다른 창 구성 관리 프로그램이 이미 디스플레이 %2$s 화면 %1$i번에서 실행 중"
"니다."
#: src/core/bell.c:194
msgid "Bell event"
msgstr "삑소리 이벤트"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -511,52 +522,52 @@ msgid ""
"application to quit entirely."
msgstr "좀 더 기다리거나 해당 프로그램을 강제로 끝낼 수 있습니다."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "기다리기(_W)"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "강제로 끝내기(_F)"
#: src/core/display.c:590
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "X 윈도 시스템 디스플레이 '%s'을(를) 여는데 실패하였습니다\n"
#: src/core/delete.c:141
msgid "_Wait"
msgstr "기다리기(_W)"
#: src/core/main.c:182
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "X 윈도 시스템 디스플레이 “%s”을(를) 여는데 실패하였습니다\n"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "세션 관리자와 연결 하지 않습니다"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "실행 중인 창 관리자를 바꿉니다"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "세션 관리 ID를 지정합니다"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "사용할 X 디스플레이"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "저장 파일에서 세션을 초기화 합니다"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "동기 X 호출을 합니다"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "웨일랜드 컴포지터로 실행합니다"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "내장 컴포지터로 실행합니다"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "전체 디스플레이 서버로 실행, 내장 프로그램 아님"
@@ -564,13 +575,13 @@ msgstr "전체 디스플레이 서버로 실행, 내장 프로그램 아님"
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -588,39 +599,39 @@ msgstr "사용할 머터 플러그인"
msgid "Workspace %d"
msgstr "작업 공간 %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"디스플레이 \"%s\"에 이미 창 관리자가 있습니다. 현재 창 관리자를 바꾸려면 --"
"디스플레이 “%s”에 이미 창 관리자가 있습니다. 현재 창 관리자를 바꾸려면 --"
"replace 옵션을 써보십시오."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "디스플레이 '%2$s'의 화면 %1$d은(는) 잘못되었습니다\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "디스플레이 %2$s의 화면 %1$d은(는) 잘못되었습니다\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "머터가 자세한 모드 지원 없이 컴파일 되었습니다\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "모드 전환: 모드 %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"이 창은 &quot;현재 설정 저장&quot;을 지원하지 않기 때문에 다음 번에 로그인 "
"할 때 수동으로 다시 시작해야 합니다."
"이 창은 현재 설정 저장을 지원하지 않기 때문에 다음 번에 로그인 할 때 수동으"
"로 다시 시작해야 합니다."
# <창제목> (on <기계>)
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (%s에서)"

343
po/lt.po
View File

@@ -11,11 +11,11 @@
msgid ""
msgstr ""
"Project-Id-Version: lt\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-07-22 13:03+0000\n"
"PO-Revision-Date: 2016-08-03 22:14+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"POT-Creation-Date: 2017-03-02 18:41+0000\n"
"PO-Revision-Date: 2017-03-03 20:29+0200\n"
"Last-Translator: Moo\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
"MIME-Version: 1.0\n"
@@ -23,273 +23,273 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
"%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Gtranslator 2.91.7\n"
"X-Generator: Poedit 1.8.11\n"
#: ../data/50-mutter-navigation.xml.in.h:1
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "Navigacija"
#: ../data/50-mutter-navigation.xml.in.h:2
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "Perkelti langą į darbo sritį Nr.1"
#: ../data/50-mutter-navigation.xml.in.h:3
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "Perkelti langą į darbo sritį Nr.2"
#: ../data/50-mutter-navigation.xml.in.h:4
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "Perkelti langą į darbo sritį Nr.3"
#: ../data/50-mutter-navigation.xml.in.h:5
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "Perkelti langą į darbo sritį Nr.4"
#: ../data/50-mutter-navigation.xml.in.h:6
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "Perkelti langą į pastarąją darbo sritį"
#: ../data/50-mutter-navigation.xml.in.h:7
#: 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.in.h:8
#: 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.in.h:9
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up"
msgstr "Perkelti langą į aukščiau esančią darbo sritį"
#: ../data/50-mutter-navigation.xml.in.h:10
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "Perkelti langą į žemiau esančią darbo sritį"
#: ../data/50-mutter-navigation.xml.in.h:11
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "Perkelti langą į kairiau esantį monitorių"
#: ../data/50-mutter-navigation.xml.in.h:12
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "Perkelti langą į dešiniau esantį monitorių"
#: ../data/50-mutter-navigation.xml.in.h:13
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "Perkelti langą į aukščiau esantį monitorių"
#: ../data/50-mutter-navigation.xml.in.h:14
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "Perkelti langą į žemiau esantį monitorių"
#: ../data/50-mutter-navigation.xml.in.h:15
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "Pereiti tarp programų"
#: ../data/50-mutter-navigation.xml.in.h:16
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "Pereiti į ankstesnę programą"
#: ../data/50-mutter-navigation.xml.in.h:17
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "Pereiti tarp langų"
#: ../data/50-mutter-navigation.xml.in.h:18
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "Pereiti į ankstesnį langą"
#: ../data/50-mutter-navigation.xml.in.h:19
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "Pereiti tarp programos langų"
#: ../data/50-mutter-navigation.xml.in.h:20
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "Pereiti į ankstesnį programos langą"
#: ../data/50-mutter-navigation.xml.in.h:21
#: data/50-mutter-navigation.xml:76
msgid "Switch system controls"
msgstr "Pereiti tarp sistemos valdiklių"
#: ../data/50-mutter-navigation.xml.in.h:22
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "Pereiti prie ankstesnio sistemos valdiklio"
#: ../data/50-mutter-navigation.xml.in.h:23
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "Tiesiogiai pereiti tarp langų"
#: ../data/50-mutter-navigation.xml.in.h:24
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "Tiesiogiai pereiti į ankstesnį langą"
#: ../data/50-mutter-navigation.xml.in.h:25
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "Tiesiogiai pereiti tarp programos langų"
#: ../data/50-mutter-navigation.xml.in.h:26
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "Tiesiogiai pereiti prie ankstesnio programos lango"
#: ../data/50-mutter-navigation.xml.in.h:27
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "Tiesiogiai pereiti tarp sistemos valdiklių"
#: ../data/50-mutter-navigation.xml.in.h:28
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "Tiesiogiai pereiti prie ankstesnio sistemos valdiklio"
#: ../data/50-mutter-navigation.xml.in.h:29
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "Paslėpti visus įprastinius langus"
#: ../data/50-mutter-navigation.xml.in.h:30
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "Persijungti į darbo sritį Nr.1"
#: ../data/50-mutter-navigation.xml.in.h:31
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "Persijungti į darbo sritį Nr.2"
#: ../data/50-mutter-navigation.xml.in.h:32
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "Persijungti į darbo sritį Nr.3"
#: ../data/50-mutter-navigation.xml.in.h:33
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "Persijungti į darbo sritį Nr.4"
#: ../data/50-mutter-navigation.xml.in.h:34
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "Persijungti į pastarąją darbo sritį"
#: ../data/50-mutter-navigation.xml.in.h:35
#: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "Perkelti į darbo sritį kairėje"
#: ../data/50-mutter-navigation.xml.in.h:36
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "Perkelti į darbo sritį dešinėje"
#: ../data/50-mutter-navigation.xml.in.h:37
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above"
msgstr "Perkelti į darbo sritį viršuje"
#: ../data/50-mutter-navigation.xml.in.h:38
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "Perkelti į darbo sritį apačioje"
#: ../data/50-mutter-system.xml.in.h:1
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "Sistema"
#: ../data/50-mutter-system.xml.in.h:2
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr "Rodyti komandų paleidimo langelį"
#: ../data/50-mutter-system.xml.in.h:3
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "Rodyti veiklų apžvalgą"
#: ../data/50-mutter-windows.xml.in.h:1
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "Langai"
#: ../data/50-mutter-windows.xml.in.h:2
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "Parodyti lango meniu"
#: ../data/50-mutter-windows.xml.in.h:3
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "Perjungti viso ekrano veikseną"
#: ../data/50-mutter-windows.xml.in.h:4
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "Perjungti lango išdidinimo būseną"
#: ../data/50-mutter-windows.xml.in.h:5
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "Išdidinti langą"
#: ../data/50-mutter-windows.xml.in.h:6
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "Atkurti lango dydį"
#: ../data/50-mutter-windows.xml.in.h:7
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Perjungti lango sutraukimo būseną"
#: ../data/50-mutter-windows.xml.in.h:8
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "Užverti langą"
#: ../data/50-mutter-windows.xml.in.h:9
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "Slėpti langą"
#: ../data/50-mutter-windows.xml.in.h:10
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "Perkelti langą"
#: ../data/50-mutter-windows.xml.in.h:11
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "Keisti lango dydį"
#: ../data/50-mutter-windows.xml.in.h:12
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "Perjungti lango buvimo visose darbo srityse būseną"
#: ../data/50-mutter-windows.xml.in.h:13
#: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it"
msgstr ""
"Iškelti langą, jei jis uždengtas kito lango, priešingu atveju jį nuleisti"
#: ../data/50-mutter-windows.xml.in.h:14
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "Iškelti langą virš kitų langų"
#: ../data/50-mutter-windows.xml.in.h:15
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "Nuleisti langą žemiau kitų langų"
#: ../data/50-mutter-windows.xml.in.h:16
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "Išdidinti langą vertikaliai"
#: ../data/50-mutter-windows.xml.in.h:17
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "Išdidinti langą horizontaliai"
#: ../data/50-mutter-windows.xml.in.h:18
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr "Rodyti skyrimą kairėje"
#: ../data/50-mutter-windows.xml.in.h:19
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr "Rodyti skyrimą dešinėje"
#: ../data/mutter.desktop.in.h:1
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr "Klavišas, naudojamas kartu su specialiomis lango tvarkymo operacijomis"
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Šis klavišas inicijuos „padengimą“, kuris yra langų apžvalgos ir programų "
"Šis klavišas inicijuos „perdangą“, kuri yra langų apžvalgos ir programų "
"paleidimo sistemos kombinacija. Numatytasis nustatymas „Windows klavišas“. "
"Tikimasi, kad šis susiejimas bus arba numatytasis, arba nustatytas į tuščią."
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr "Prikabinti modalinius dialogus"
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
#: 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 "
@@ -299,11 +299,11 @@ msgstr ""
"pasirodys prikabinti prie tėvinio lango antraštės ir yra perkialiami kartu "
"su tėviniu langu."
#: ../data/org.gnome.mutter.gschema.xml.in.h:5
#: data/org.gnome.mutter.gschema.xml.in:30
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Įjungti kraštų uždengimą numetant langus ekrano kraštuose"
#: ../data/org.gnome.mutter.gschema.xml.in.h:6
#: 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 "
@@ -313,13 +313,13 @@ msgstr ""
"vertikaliai ir pakeičia dydį horizontaliai taip, kad užimtų pusę esamos "
"vietos. Langų numetimas ekrano viršuje juos visiškai išdidina."
#: ../data/org.gnome.mutter.gschema.xml.in.h:7
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr "Darbo sritys tvarkomos dinamiškai"
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -327,11 +327,11 @@ msgstr ""
"sričių skaičius (nusakomas raktu num-workspaces schemoje org.gnome.desktop."
"wm.preferences)."
#: ../data/org.gnome.mutter.gschema.xml.in.h:9
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr "Darbo sritys tik pagrindiniame"
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
#: 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."
@@ -339,11 +339,11 @@ msgstr ""
"Nusako, ar darbo sričių perjungimas turi įvykti langams visuose "
"monitoriuose, ar tik langams pagrindiniame monitoriuje."
#: ../data/org.gnome.mutter.gschema.xml.in.h:11
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr "Nėra tab iššokimo"
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
#: data/org.gnome.mutter.gschema.xml.in:60
msgid ""
"Determines whether the use of popup and highlight frame should be disabled "
"for window cycling."
@@ -351,37 +351,37 @@ msgstr ""
"Nusako, ar iššokančio lango ir rėmelio paryškinimo naudojimas turėtų būti "
"išjungtas langų perėjime."
#: ../data/org.gnome.mutter.gschema.xml.in.h:13
#: data/org.gnome.mutter.gschema.xml.in:68
msgid "Delay focus changes until the pointer stops moving"
msgstr "Atidėti aktyvavimo pakeitimus iki žymiklis nustaja judėti"
#: ../data/org.gnome.mutter.gschema.xml.in.h:14
#: 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."
"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 ""
"Jei nustatytas teigiamai ir aktyvavimo veiksena yra „sloppy“ arba „mouse“, "
"tuomet aktyvavimas nebus pakeistas nedelsiant įėjus į langą, bet tik pelės "
"žymikliui nustojus judėti."
#: ../data/org.gnome.mutter.gschema.xml.in.h:15
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr "Tempiamos paraštės prolis"
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Bendros tempiamos paraštės dydis. Jei temos matomos paraštės yra "
"nepakankamos, bus pridėtos nematomos paraštės."
#: ../data/org.gnome.mutter.gschema.xml.in.h:17
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr "Automatiškai išdidinti beveik monitoriaus dydžio langus"
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
#: data/org.gnome.mutter.gschema.xml.in:90
msgid ""
"If enabled, new windows that are initially the size of the monitor "
"automatically get maximized."
@@ -389,11 +389,11 @@ msgstr ""
"Jei įjungta, nauji langai, kurių pradinis dydis yra monitoriaus dydžio yra "
"automatiškai išdidinami."
#: ../data/org.gnome.mutter.gschema.xml.in.h:19
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr "Patalpinti naujus langus centre"
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
#: 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."
@@ -401,230 +401,239 @@ msgstr ""
"Kai teigiama, nauji langai bus visada patalpinti aktyvaus monitoriaus ekrano "
"viduryje."
#: ../data/org.gnome.mutter.gschema.xml.in.h:21
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr "Pasirinkti langą iš tab iššokimo"
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr "Atšaukti tab iššokimą"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr "Persijungti į VT 1"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr "Persijungti į VT 2"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr "Persijungti į VT 3"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr "Persijungti į VT 4"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr "Persijungti į VT 5"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr "Persijungti į VT 6"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr "Persijungti į VT 7"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr "Persijungti į VT 8"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr "Persijungti į VT 9"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr "Persijungti į VT 10"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr "Persijungti į VT 11"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr "Persijungti į VT 12"
#: ../src/backends/meta-input-settings.c:1601
#| msgid "Switch system controls"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Veiksenos perjungimas (Grupė %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Perjungti monitorių"
#: ../src/backends/meta-input-settings.c:1603
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Rodyti pagalbą ekrane"
#: ../src/backends/meta-monitor-manager.c:515
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Integruotas vaizduoklis"
#: ../src/backends/meta-monitor-manager.c:538
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Nežinomas"
#: ../src/backends/meta-monitor-manager.c:540
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Nežinomas vaizduoklis"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:548
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
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 "Kita kompozicijos tvarkytuvė jau veikia ekrane %i vaizduoklyje „%s“."
#: ../src/core/bell.c:194
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Skambučio įvykis"
#: ../src/core/delete.c:127
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr "%s neatsiliepia į komandas."
#: ../src/core/delete.c:129
#: src/core/delete.c:129
msgid "Application is not responding."
msgstr "Programa neatsiliepia į komandas."
#: ../src/core/delete.c:134
#: src/core/delete.c:134
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
msgstr "Galite šiek tiek palaukti arba priverstinai uždaryti programą."
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "_Laukti"
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Priverstinai išeiti"
#: ../src/core/display.c:590
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Nepavyko atverti X Window sistemos ekrano „%s“\n"
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Laukti"
#: ../src/core/main.c:182
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Nepavyko atverti X Window sistemos vaizduoklio „%s“\n"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Išjungti susijungimą su sesijos tvarkytuve"
#: ../src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Pakeisti veikiančią langų tvarkytuvę"
#: ../src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Nurodyti sesijos tvarkymo ID"
#: ../src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Naudotinas X ekranas"
#: ../src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicializuoti sesiją iš išsaugojimo failo"
#: ../src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Sinchronizuoti X iškvietimus"
#: ../src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Vykdyti kaip wayland kompozitorių"
#: ../src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Vykdyti kaip įdėtinį kompozitorių"
#: ../src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Vykdyti kaip visą vaizduoklio serverį, o ne įdėtinį"
#: ../src/core/mutter.c:39
#: src/core/mutter.c:39
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Autorinės teisės (C) priklauso 2001-%d Havoc Pennington, Red Hat, Inc.\n"
"ir kitiems.\n"
"Tai yra laisva programinė įranga; platinimo sąlygos yra aprašytos \n"
"programos pradiniuose tekstuose.\n"
"Nėra JOKIOS garantijos; net dėl PREKIAVIMO ar TAM TIKRO PANAUDOJIMO TIKSLO "
"ATITIKIMO.\n"
"Autorių teisės © 2001-%d Havoc Pennington, Red Hat, Inc., ir kiti\n"
"Tai yra laisva programinė įranga; kopijavimo sąlygos yra aprašytos "
"pirminiuose koduose.\n"
"Nėra JOKIOS garantijos; netgi PARDAVIMO ar TINKAMUMO TAM TIKRAM TIKSLUI "
"garantijos.\n"
#: ../src/core/mutter.c:53
#: src/core/mutter.c:53
msgid "Print version"
msgstr "Parodyti versiją"
#: ../src/core/mutter.c:59
#: src/core/mutter.c:59
msgid "Mutter plugin to use"
msgstr "Naudojamas Mutter įskiepis"
#: ../src/core/prefs.c:1997
#: src/core/prefs.c:1997
#, c-format
msgid "Workspace %d"
msgstr "Darbo sritis %d"
#: ../src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Vaizduoklis „%s“ jau turi langų tvarkytuvę; pabandykite pakeisti esamą langų "
"tvarkytuvę, naudodami parametrą --replace."
#: ../src/core/screen.c:603
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "Ekranas %d vaizduoklyje „%s“ netinkamas\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n"
#: ../src/core/util.c:120
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter buvo sukompiliuota be išsamaus veikimo veiksenos\n"
#: ../src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Veiksenos perjungimas: veiksena %d"
#: ../src/x11/session.c:1815
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Šie langai nepalaiko &quot;išsaugoti esamus nustatymus&quot; komandos ir "
"turi būti paleisti rankiniu būdu, kai prisijungsite kitą kartą."
"Šie langai nepalaiko išsaugoti esamus nustatymus komandos ir, kai kitą "
"kartą prisijungsite, turės būti paleisti rankiniu būdu."
#: ../src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (kompiuteryje %s)"

148
po/lv.po
View File

@@ -7,14 +7,14 @@
# Raivis Dejus <orvils@gmail.com>, 2006, 2007, 2009.
# Rudolfs <rudolfs.mazurs@gmail.com>, 2011.
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2016.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2012, 2013, 2014, 2015, 2016, 2017.
msgid ""
msgstr ""
"Project-Id-Version: lv\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-08 21:31+0200\n"
"POT-Creation-Date: 2017-02-28 06:20+0000\n"
"PO-Revision-Date: 2017-03-18 12:09+0200\n"
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n"
@@ -274,11 +274,16 @@ msgid "Modifier to use for extended window management operations"
msgstr "Modifikators, kuru lietot paplašinātām loga pārvaldības darbībām"
#: data/org.gnome.mutter.gschema.xml.in:8
#| msgid ""
#| "This key will initiate the \"overlay\", which is a combination window "
#| "overview and application launching system. The default is intended to be "
#| "the \"Windows key\" on PC hardware. It's expected that this binding "
#| "either the default or set to the empty string."
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Šis taustiņš inicializēs “pārklāšanu”, kas ir kombināciju loga pārskats un "
"lietotnes palaišanas sistēma. Noklusētais parasti ir “Windows taustiņš” uz "
@@ -318,8 +323,12 @@ msgid "Workspaces are managed dynamically"
msgstr "Darbvirsmas tiek pārvaldītas dinamiski"
#: 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)."
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -356,22 +365,29 @@ msgid "Delay focus changes until the pointer stops moving"
msgstr "Aizkavēt fokusa izmaiņas, līdz rādītājs pārstāj kustēties"
#: 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."
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."
"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 ""
"Ja patiess un fokusēšanas režīms ir vai nu \"sloppy\" (paviršs) vai \"mouse"
"\" (pele), tad fokuss nemainīsies uzreiz pēc ieiešanas logā, bet tikai pēc "
"tam, kad rādītājs beidzis kustēties."
"Ja patiess un fokusēšanas režīms ir vai nu sloppy (paviršs) vai mouse"
" (pele), tad fokuss nemainīsies uzreiz pēc ieiešanas logā, bet tikai pēc tam,"
" kad rādītājs beidzis kustēties."
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr "Velkams malas platums"
#: 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."
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Kopējo velkamo malu apjoms. Ja motīva redzamās robežas nav pietiekamas, tiks "
@@ -456,48 +472,62 @@ msgstr "Pārslēgties uz VT 11"
msgid "Switch to VT 12"
msgstr "Pārslēgties uz VT 12"
#: src/backends/meta-input-settings.c:1707
#| msgid "Switch system controls"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
#| msgid "Mode Switch: Mode %d"
msgid "Mode Switch (Group %d)"
msgstr "Režīma slēdzis (grupa %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Pārslēgt monitoru"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Rādīt palīdzību uz ekrāna"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Iebūvēts displejs"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Nezināms"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Nezināms displejs"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
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 "Cits kompozīcijas pārvaldnieks jau darbojas ekrānā %d displejā “%s”."
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Zvana notikums"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -515,66 +545,73 @@ msgstr ""
"Var uzgaidīt neilgu brīdi, līdz tā atgūstas, vai arī aizvērt to piespiedu "
"kārtā."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Gaidīt"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "Aizvērt _piespiedu kārtā"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Gaidīt"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
#| 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"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Deaktivēt savienojumu ar sesiju pārvaldnieku"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Aizvietot darbojošos logu pārvaldnieku"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Norādiet sesiju pārvaldības ID"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Lietojamais X displejs"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicializēt sesiju no saglabātās datnes"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Padarīt X izsaukumus sinhronus"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Palaist kā wayland kompozitoru"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Palaist kā ligzdotu kompozitoru"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Palaist kā pilnu attēlošanas serveri, nevis iegultu"
#: src/core/mutter.c:39
#, 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 ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Autortiesības (C) 2001-%d Havoc Pennington, Red Hat, Inc., un citi\n"
"Autortiesības © 2001-%d Havoc Pennington, Red Hat, Inc., un citi\n"
"Šī ir brīvā programmatūra; par kopēšanas nosacījumiem skatīt avotu.\n"
"Netiek dota NEKĀDA garantija; pat ne KOMERCIĀLAS VĒRTĪBAS vai DERĪGUMA "
"NOTEIKTAM NOLŪKAM.\n"
@@ -592,38 +629,45 @@ msgstr "Izmantojamais mutter spraudnis"
msgid "Workspace %d"
msgstr "Darbvieta %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
#| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace "
#| "option to replace the current window manager."
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Displejam “%s” jau ir logu pārvaldnieks; mēģiniet lietot --replace iespēju, "
"lai aizvietotu pašreizējo logu pārvaldnieku."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, 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 "Ekrāna %d displejs “%s“ nav derīgs\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter tika kompilēts bez detalizētas izvades režīma atbalsta\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Režīma slēdzis: režīms %d"
#: src/x11/session.c:1815
#| msgid ""
#| "These windows do not support &quot;save current setup&quot; and will have "
#| "to be restarted manually next time you log in."
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Šie logi neatbalsta “saglabāt pašreizējos iestatījumus” un būs jāpārstartē "
"pašrocīgi nākamreiz, kad ierakstīsities."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (uz %s)"

View File

@@ -1,5 +1,5 @@
# Brazilian Portuguese translation of mutter.
# Copyright (C) 2002-2016 Free Software Foundation, Inc.
# Copyright (C) 2002-2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the mutter package.
# Sun G11n <gnome_int_l10n@ireland.sun.com>, 2002.
# Evandro Fernandes Giovanini <evandrofg@ig.com.br>, 2002, 2003, 2006.
@@ -13,17 +13,16 @@
# Vladimir Melo <vmelo@gnome.org>, 2009.
# Antonio Fernandes C. Neto <fernandes@pelivre.org>, 2010.
# Rodrigo Padula de Oliveira <contato@rodrigopadula.com>, 2011.
# Rafael Ferreira <rafael.f.f1@gmail.com>, 2013, 2014.
# Artur de Aquino Morais <artur.morais93@outlook.com>, 2016.
# Enrico Nicoletto <liverig@gmail.com>, 2012, 2014, 2016.
# Rafael Fontenelle <rafaelff@gnome.org>, 2016.
# Rafael Fontenelle <rafaelff@gnome.org>, 2013, 2014, 2016, 2017.
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter&"
"keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-07 08:16-0200\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=mutter"
"&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2017-02-22 19:28+0000\n"
"PO-Revision-Date: 2017-02-25 17:53-0200\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
@@ -31,254 +30,9 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Generator: Virtaal 1.0.0-beta1\n"
"X-Project-Style: gnome\n"
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "Navegação"
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "Mover a janela para o espaço de trabalho 1"
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "Mover a janela para o espaço de trabalho 2"
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "Mover a janela para o espaço de trabalho 3"
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "Mover a janela para o espaço de trabalho 4"
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "Mover a janela para o último espaço de trabalho"
#: 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"
msgstr "Mover a janela um espaço de trabalho acima"
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "Mover a janela um espaço de trabalho abaixo"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "Mover janela para o monitor da esquerda"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "Mover janela para o monitor da direita"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "Mover janela para o monitor acima"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "Mover janela para o monitor abaixo"
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "Alternar aplicativos"
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "Alternar para o aplicativo anterior"
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "Alternar janelas"
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "Alternar para a janela anterior"
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "Alternar as janelas de um aplicativo"
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "Alternar para a janela anterior de um aplicativo"
#: data/50-mutter-navigation.xml:76
#| msgid "Switch system controls directly"
msgid "Switch system controls"
msgstr "Alternar controles do sistema"
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "Alternar para o controle de sistema anterior"
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "Alternar as janelas diretamente"
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "Alternar diretamente para a janela anterior"
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "Alternar as janelas de um aplicativo diretamente"
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "Alternar diretamente para a janela anterior de um aplicativo"
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "Alternar os controles de sistema diretamente"
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "Alternar diretamente para o controle de sistema anterior"
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "Ocultar todas as janelas normais"
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "Trocar para o espaço de trabalho 1"
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "Trocar para o espaço de trabalho 2"
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "Trocar para o espaço de trabalho 3"
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "Trocar para o espaço de trabalho 4"
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "Trocar para o último espaço de trabalho"
#: 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"
msgstr "Mover para o espaço de trabalho acima"
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "Mover para o espaço de trabalho abaixo"
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "Sistema"
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr "Mostrar o prompt de comando de execução"
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "Mostrar o panorama de atividades"
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "Janelas"
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "Ativar o menu da janela"
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "Alternar modo de tela inteira"
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "Alternar estado de maximização"
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "Maximizar a janela"
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "Restaurar janela"
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "Alternar estado sombreado"
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "Fechar janela"
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "Ocultar janela"
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "Mover janela"
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "Redimensionar janela"
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "Alternar a janela em todos os espaços de trabalho ou em apenas um"
#: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it"
msgstr "Elevar a janela se estiver coberta; caso contrário, a abaixa"
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "Elevar a janela para frente das outras"
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "Colocar a janela atrás das outras"
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "Maximizar a janela verticalmente"
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "Maximizar a janela horizontalmente"
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr "Visualizar divisão à esquerda"
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr "Visualizar divisão à direita"
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
@@ -286,18 +40,23 @@ msgstr "Mutter"
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr ""
"Modificador a ser usado para operações de gerenciamento de janelas extendido."
"Modificador a ser usado para operações de gerenciamento de janelas estendido"
#: data/org.gnome.mutter.gschema.xml.in:8
#| msgid ""
#| "This key will initiate the \"overlay\", which is a combination window "
#| "overview and application launching system. The default is intended to be "
#| "the \"Windows key\" on PC hardware. It's expected that this binding "
#| "either the default or set to the empty string."
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Esta chave irá iniciar a \"sobreposição\", que é a combinação de visão de "
"janela e sistema de lançamento de aplicativos. O padrão pretendido é a "
"\"tecla Windows\" no hardware do computador. É esperada para esta associação "
"Esta chave irá iniciar a sobreposição, que é a combinação de visão de "
"janela e sistema de lançamento de aplicativos. O padrão pretendido é a "
"tecla Windows no hardware do computador. É esperada para esta associação "
"tanto o padrão quanto a definição de uma string vazia."
#: data/org.gnome.mutter.gschema.xml.in:20
@@ -335,8 +94,12 @@ msgid "Workspaces are managed dynamically"
msgstr "Áreas de trabalho são gerenciadas dinamicamente"
#: 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)."
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -373,12 +136,16 @@ msgid "Delay focus changes until the pointer stops moving"
msgstr "Atrasar alterações de foco até que o ponteiro pare de mover"
#: 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."
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."
"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 ""
"Se verdadeiro, e o modo de foco for \"sloppy\" ou \"mouse\", o foco não será "
"Se verdadeiro, e o modo de foco for sloppy ou mouse, o foco não será "
"alterado imediatamente quando o ponteiro do mouse entrar na janela, e sim "
"quando parar de mover."
@@ -387,8 +154,11 @@ msgid "Draggable border width"
msgstr "Largura da borda arrastável"
#: 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."
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"A quantidade do total de bordas arrastáveis. Se as bordas dos temas visíveis "
@@ -475,52 +245,66 @@ msgstr "Trocar para o VT 11"
msgid "Switch to VT 12"
msgstr "Trocar para o VT 12"
#: src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
#| msgid "Mode Switch: Mode %d"
msgid "Mode Switch (Group %d)"
msgstr "Alternador de modo (Grupo %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Trocar monitor"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Mostrar ajuda na tela"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Tela embutida"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Desconhecido"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Monitor desconhecido"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s de %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
msgid ""
"Another compositing manager is already running on screen %i on display \"%s"
"\"."
msgstr ""
"Outro compositor de janelas está em execução na tela %i na área \"%s\"."
"Another compositing manager is already running on screen %i on display “%s”."
msgstr "Outro compositor de janelas está em execução na tela %i na área “%s”."
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Evento de som"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr "\"%s\" não está respondendo."
msgstr "“%s” não está respondendo."
#: src/core/delete.c:129
msgid "Application is not responding."
@@ -534,66 +318,73 @@ msgstr ""
"Você pode escolher aguardar um pouco e continuar ou forçar o aplicativo a "
"sair completamente."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Esperar"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Forçar sair"
#: src/core/display.c:590
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Falha ao abrir a exibição \"%s\" do sistema de janelas X\n"
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Esperar"
#: src/core/main.c:182
#: src/core/display.c:608
#, c-format
#| 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"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Desabilitar a conexão com o gerenciador de sessões"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Substituir o gerenciador de janelas em execução"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Especificar o ID do gerenciador de sessões"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Exibição do X a ser utilizada"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicializar a sessão a partir do arquivo salvo"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Fazer X chamadas síncronas"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Executar como um compositor wayland"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Executar como um compositor aninhado"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Executar como um servidor de tela cheia, ao invés de aninhado"
#: src/core/mutter.c:39
#, 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 ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., e outros\n"
"Copyright © 2001-%d Havoc Pennington, Red Hat, Inc., e outros\n"
"Esse programa é um software livre; veja o código fonte para obter as "
"condições de cópia.\n"
"Não há NENHUMA garantia; nem mesmo para a COMERCIALIZAÇÃO ou ADEQUAÇÃO\n"
@@ -612,43 +403,234 @@ msgstr "Plug-in do Mutter para usar"
msgid "Workspace %d"
msgstr "Espaço de trabalho %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
#| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace "
#| "option to replace the current window manager."
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"A exibição \"%s\" já possui um gerenciador de janelas; tente usar a opção --"
"A exibição “%s” já possui um gerenciador de janelas; tente usar a opção --"
"replace para substituir o gerenciador de janelas atual."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "A tela %d na exibição \"%s\" é inválida\n"
#| msgid "Screen %d on display '%s' is invalid\n"
msgid "Screen %d on display “%s” is invalid\n"
msgstr "A tela %d na exibição “%s” é inválida\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "O Mutter foi compilado sem suporte para modo detalhado\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Alternador de modo: Modo %d"
#: src/x11/session.c:1815
#| msgid ""
#| "These windows do not support &quot;save current setup&quot; and will have "
#| "to be restarted manually next time you log in."
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Estas janelas não oferecem suporte para a opção &quot;salvar configuração "
"atual&quot; e precisarão ser reiniciadas manualmente quando você reiniciar a "
"sessão."
"Estas janelas não oferecem suporte para a opção salvar configuração atual” "
"e precisarão ser reiniciadas manualmente quando você reiniciar a sessão."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (em %s)"
#~ msgid "Navigation"
#~ msgstr "Navegação"
#~ msgid "Move window to workspace 1"
#~ msgstr "Mover a janela para o espaço de trabalho 1"
#~ msgid "Move window to workspace 2"
#~ msgstr "Mover a janela para o espaço de trabalho 2"
#~ msgid "Move window to workspace 3"
#~ msgstr "Mover a janela para o espaço de trabalho 3"
#~ msgid "Move window to workspace 4"
#~ msgstr "Mover a janela para o espaço de trabalho 4"
#~ msgid "Move window to last workspace"
#~ msgstr "Mover a janela para o último espaço de trabalho"
#~ 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 window one workspace up"
#~ msgstr "Mover a janela um espaço de trabalho acima"
#~ msgid "Move window one workspace down"
#~ msgstr "Mover a janela um espaço de trabalho abaixo"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#~ msgid "Move window one monitor to the left"
#~ msgstr "Mover janela para o monitor da esquerda"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#~ msgid "Move window one monitor to the right"
#~ msgstr "Mover janela para o monitor da direita"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#~ msgid "Move window one monitor up"
#~ msgstr "Mover janela para o monitor acima"
# Em conformidade com a tradução do gsettings-desktop-schemas --Enrico
#~ msgid "Move window one monitor down"
#~ msgstr "Mover janela para o monitor abaixo"
#~ msgid "Switch applications"
#~ msgstr "Alternar aplicativos"
#~ msgid "Switch to previous application"
#~ msgstr "Alternar para o aplicativo anterior"
#~ msgid "Switch windows"
#~ msgstr "Alternar janelas"
#~ msgid "Switch to previous window"
#~ msgstr "Alternar para a janela anterior"
#~ msgid "Switch windows of an application"
#~ msgstr "Alternar as janelas de um aplicativo"
#~ msgid "Switch to previous window of an application"
#~ msgstr "Alternar para a janela anterior de um aplicativo"
#~| msgid "Switch system controls directly"
#~ msgid "Switch system controls"
#~ msgstr "Alternar controles do sistema"
#~ msgid "Switch to previous system control"
#~ msgstr "Alternar para o controle de sistema anterior"
#~ msgid "Switch windows directly"
#~ msgstr "Alternar as janelas diretamente"
#~ msgid "Switch directly to previous window"
#~ msgstr "Alternar diretamente para a janela anterior"
#~ msgid "Switch windows of an app directly"
#~ msgstr "Alternar as janelas de um aplicativo diretamente"
#~ msgid "Switch directly to previous window of an app"
#~ msgstr "Alternar diretamente para a janela anterior de um aplicativo"
#~ msgid "Switch system controls directly"
#~ msgstr "Alternar os controles de sistema diretamente"
#~ msgid "Switch directly to previous system control"
#~ msgstr "Alternar diretamente para o controle de sistema anterior"
#~ msgid "Hide all normal windows"
#~ msgstr "Ocultar todas as janelas normais"
#~ msgid "Switch to workspace 1"
#~ msgstr "Trocar para o espaço de trabalho 1"
#~ msgid "Switch to workspace 2"
#~ msgstr "Trocar para o espaço de trabalho 2"
#~ msgid "Switch to workspace 3"
#~ msgstr "Trocar para o espaço de trabalho 3"
#~ msgid "Switch to workspace 4"
#~ msgstr "Trocar para o espaço de trabalho 4"
#~ msgid "Switch to last workspace"
#~ msgstr "Trocar para o último espaço de trabalho"
#~ 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 "Move to workspace above"
#~ msgstr "Mover para o espaço de trabalho acima"
#~ msgid "Move to workspace below"
#~ msgstr "Mover para o espaço de trabalho abaixo"
#~ msgid "System"
#~ msgstr "Sistema"
#~ msgid "Show the run command prompt"
#~ msgstr "Mostrar o prompt de comando de execução"
#~ msgid "Show the activities overview"
#~ msgstr "Mostrar o panorama de atividades"
#~ msgid "Windows"
#~ msgstr "Janelas"
#~ msgid "Activate the window menu"
#~ msgstr "Ativar o menu da janela"
#~ msgid "Toggle fullscreen mode"
#~ msgstr "Alternar modo de tela inteira"
#~ msgid "Toggle maximization state"
#~ msgstr "Alternar estado de maximização"
#~ msgid "Maximize window"
#~ msgstr "Maximizar a janela"
#~ msgid "Restore window"
#~ msgstr "Restaurar janela"
#~ msgid "Toggle shaded state"
#~ msgstr "Alternar estado sombreado"
#~ msgid "Close window"
#~ msgstr "Fechar janela"
#~ msgid "Hide window"
#~ msgstr "Ocultar janela"
#~ msgid "Move window"
#~ msgstr "Mover janela"
#~ msgid "Resize window"
#~ msgstr "Redimensionar janela"
#~ msgid "Toggle window on all workspaces or one"
#~ msgstr "Alternar a janela em todos os espaços de trabalho ou em apenas um"
#~ msgid "Raise window if covered, otherwise lower it"
#~ msgstr "Elevar a janela se estiver coberta; caso contrário, a abaixa"
#~ msgid "Raise window above other windows"
#~ msgstr "Elevar a janela para frente das outras"
#~ msgid "Lower window below other windows"
#~ msgstr "Colocar a janela atrás das outras"
#~ msgid "Maximize window vertically"
#~ msgstr "Maximizar a janela verticalmente"
#~ msgid "Maximize window horizontally"
#~ msgstr "Maximizar a janela horizontalmente"
#~ msgid "View split on left"
#~ msgstr "Visualizar divisão à esquerda"
#~ msgid "View split on right"
#~ msgstr "Visualizar divisão à direita"
#~ msgid "background texture could not be created from file"
#~ msgstr "textura de plano de fundo não pôde ser criado de arquivo"

124
po/ru.po
View File

@@ -14,19 +14,19 @@
msgid ""
msgstr ""
"Project-Id-Version: metacity ru\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-16 12:23+0300\n"
"Last-Translator: Stas Solovey <whats_up@tut.by>\n"
"POT-Creation-Date: 2017-02-28 06:20+0000\n"
"PO-Revision-Date: 2017-03-18 10:56+0400\n"
"Last-Translator: Yuri Myasoedov <ymyasoedov@yandex.ru>\n"
"Language-Team: Русский <gnome-cyr@gnome.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\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"
"X-Generator: Gtranslator 2.91.7\n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.7.1\n"
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
@@ -279,10 +279,10 @@ msgstr ""
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Этот ключ инициирует перекрытие (обзор окон и система запуска приложений). "
"Для обычных ПК используется клавиша «Windows». Ожидается, что значение этой "
@@ -323,12 +323,12 @@ msgstr "Рабочие места управляются динамически"
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"Определяет, управляются ли рабочие места автоматически или количество "
"рабочих место постоянно (количество задаётся ключом в org.gnome.desktop.wm."
"Определяет, управляются ли рабочие места динамически или количество рабочих "
"мест постоянно (количество задаётся ключом в org.gnome.desktop.wm."
"preferences)."
#: data/org.gnome.mutter.gschema.xml.in:50
@@ -361,11 +361,11 @@ 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."
"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 ""
"Если установлено в значение «true», и режим фокуса установлен в значение "
"Если установлено в значение «true» и режим фокуса установлен в значение "
"«sloppy» или «mouse», тогда фокус не будет меняться при переходе к другому "
"окну до тех пор, пока не остановится указатель."
@@ -375,11 +375,11 @@ msgstr "Ширина рамки перетаскивания"
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes 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"
@@ -461,48 +461,58 @@ msgstr "Переключиться на виртуальный терминал
msgid "Switch to VT 12"
msgstr "Переключиться на виртуальный терминал 12"
#: src/backends/meta-input-settings.c:1707
#| msgid "Switch system controls"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Переключатель режима: группа %d"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Переключить монитор"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Показать справку на экране"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Встроенный дисплей"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Неизвестный"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Неизвестный дисплей"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
msgid ""
"Another compositing manager is already running on screen %i on display \"%s"
"\"."
msgstr "На экране %i дисплея «%s» уже запущен другой оконный менеджер."
"Another compositing manager is already running on screen %i on display “%s”."
msgstr "На экране %i дисплея «%s» уже запущен другой композитный менеджер."
#: src/core/bell.c:194
msgid "Bell event"
msgstr "Событие звонка"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -518,52 +528,52 @@ msgid ""
"application to quit entirely."
msgstr "Можно немного подождать или принудительно завершить работу приложения."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Подождать"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "Завер_шить"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Подождать"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgid "Failed to open X Window System display %s\n"
msgstr "Не удалось открыть дисплей «%s» системы X Window\n"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Запретить подключение к менеджеру сеансов"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Заменить запущенный оконный менеджер"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Указать идентификатор управления сеансом"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Используемый дисплей X"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Инициализировать сеанс из сохранённого файла"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Сделать X-вызовы синхронными"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Запустить в качестве композитора wayland"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Запустить в качестве встроенного композитора"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Запустить в качестве полноэкранного сервера вместо встроенного"
@@ -571,7 +581,7 @@ msgstr "Запустить в качестве полноэкранного се
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -597,38 +607,38 @@ msgstr "Использовать модуль mutter"
msgid "Workspace %d"
msgstr "Рабочее место %d"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Дисплей «%s» уже использует менеджер окон; попробуйте использовать параметр "
"--replace, чтобы заменить текущий менеджер окон."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "Недопустимый экран %d дисплея «%s»\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter собран без поддержки режима подробных сообщений\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Переключатель режима: режим %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Эти окна не поддерживают команду «Сохранить текущие настройки». При "
"Эти окна не поддерживают команду «Сохранить текущую настройку». При "
"следующем входе в систему их придётся перезапустить вручную."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (на %s)"

View File

@@ -12,10 +12,10 @@
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2017-02-10 22:51+0000\n"
"PO-Revision-Date: 2017-02-12 14:37+0100\n"
"POT-Creation-Date: 2017-03-07 12:40+0000\n"
"PO-Revision-Date: 2017-03-12 10:28+0100\n"
"Last-Translator: Dušan Kazik <prescott66@gmail.com>\n"
"Language-Team: Slovak <gnome-sk-list@gnome.org>\n"
"Language: sk\n"
@@ -23,7 +23,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
"X-Generator: Poedit 1.8.11\n"
"X-Generator: Poedit 1.8.12\n"
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
@@ -336,10 +336,10 @@ msgstr "Modifikátor pre rozšírené operácie správcu okien"
# description
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Tento kláves spustí „prekrytie“, čo znamená kombináciu náhľadu okna a "
"systému na spustenie aplikácií. Štandardne nastavená je na osobných "
@@ -386,7 +386,7 @@ msgstr "Pracovné priestory sú spravované dynamicky"
# description
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
@@ -429,9 +429,9 @@ msgstr "Odložiť zmeny zamerania až po zastavení pohybu ukazovateľa"
# description
#: 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."
"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 ""
"Ak je nastavené na true, a režim aktivácie okien je buď „sloppy“ (nedbalý) "
"alebo „mouse“ (myš), potom sa záber nezmení okamžite ale až po vstupe do "
@@ -445,7 +445,7 @@ msgstr "Šírka posúvateľného okraja"
# description
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Celkový počet preťahovateľných okrajov. Ak nestačia viditeľné okraje, "
@@ -545,7 +545,7 @@ msgstr "Prepnúť na VT č. 12"
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1759
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Prepínač režimu (skupina č. %d)"
@@ -555,11 +555,11 @@ msgstr "Prepínač režimu (skupina č. %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1781
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "Prepnúť monitor"
#: src/backends/meta-input-settings.c:1783
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "Zobraziť pomocníka na obrazovke"
@@ -585,11 +585,10 @@ msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:471
#: src/compositor/compositor.c:474
#, c-format
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 ""
"Pre obrazovku č. %i na displeji „%s“ je spustený už iný správca rozloženia."
@@ -626,49 +625,49 @@ msgstr "_Počkať"
# X window system preloz, napr. system na spravu okien X
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgid "Failed to open X Window System display %s\n"
msgstr "Zlyhalo otvorenie displeja systému na správu okien X „%s“\n"
# cmd desc
#: src/core/main.c:187
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Zakáže pripojenia k správcovi relácií"
# cmd desc
#: src/core/main.c:193
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Nahradí bežiaceho správcu okien"
# cmd desc
#: src/core/main.c:199
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Zadá identifikátor správy relácií"
#: src/core/main.c:204
#: src/core/main.c:206
msgid "X Display to use"
msgstr "X displej, ktorý bude použitý"
# cmd desc
#: src/core/main.c:210
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Inicializuje reláciu z uloženého súboru"
# cmd desc
#: src/core/main.c:216
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Použije synchrónne volania X"
# cmd desc
#: src/core/main.c:223
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Spustí ako kompozitor protokolu wayland"
# cmd desc
#: src/core/main.c:229
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Spustí ako kompozitor s vnoreným režimom"
#: src/core/main.c:237
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Spustí ako plnohodnotný zobrazovací server, namiesto vnoreného režimu"
@@ -676,13 +675,13 @@ msgstr "Spustí ako plnohodnotný zobrazovací server, namiesto vnoreného reži
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
msgstr ""
"mutter %s\n"
"Autorské práva (C) 2001-%d Havoc Pennington, Red Hat, Inc., a ostatní\n"
"Autorské práva © 2001-%d Havoc Pennington, Red Hat, Inc., a ostatní\n"
"Toto je slobodný softvér; pozrite podmienky kopírovania v zdrojových "
"kódoch.\n"
"Záruka sa NEPOSKYTUJE; ani na PREDAJNOSŤ alebo VHODNOSŤ PRE URČITÝ ÚČEL.\n"
@@ -705,15 +704,15 @@ msgstr "Pracovný priestor č. %d"
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Displej „%s“ už má správcu okien. Skúste použiť prepínač --replace, aby sa "
"aktuálny správca nahradil."
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "Obrazovka č. %d na displeji „%s“ nie je platná\n"
#: src/core/util.c:120
@@ -727,8 +726,8 @@ msgstr "Prepínač režimu: Režim č. %d"
#: src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Tieto okná nepodporujú „uloženie aktuálnych nastavení“ a pri budúcom "
"prihlásení ich budete musieť znovu spustiť ručne."

150
po/sr.po
View File

@@ -1,20 +1,20 @@
# Serbian translation of mutter.
# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2016.
# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2017.
# This file is distributed under the same license as the mutter package.
# Translators:
# Горан Ракић <grakic@devbase.net>
# Данило Шеган <danilo@prevod.org>, 2005.
# Милош Поповић <gpopac@gmail.com>, 2010.
# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2011—2016.
# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2011—2017.
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter&"
"keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-11 08:39+0200\n"
"POT-Creation-Date: 2017-02-16 01:44+0000\n"
"PO-Revision-Date: 2017-02-21 07:16+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: српски <gnome-sr@googlegroups.org>\n"
"Language-Team: Serbian <(nothing)>\n"
"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -104,7 +104,6 @@ msgid "Switch to previous window of an application"
msgstr "Пребацује на претходни прозор програма"
#: data/50-mutter-navigation.xml:76
#| msgid "Switch system controls directly"
msgid "Switch system controls"
msgstr "Пребацује контроле система"
@@ -273,11 +272,16 @@ msgid "Modifier to use for extended window management operations"
msgstr "Тастер који се користи за проширене радње управника прозорима"
#: data/org.gnome.mutter.gschema.xml.in:8
#| msgid ""
#| "This key will initiate the \"overlay\", which is a combination window "
#| "overview and application launching system. The default is intended to be "
#| "the \"Windows key\" on PC hardware. It's expected that this binding "
#| "either the default or set to the empty string."
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Овај кључ покреће „overlay“ (преклапање), које комбинује преглед прозора и "
"покретач програма. Подразумевано је намењен као „Windows key“ (кључ прозора) "
@@ -318,14 +322,18 @@ 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)."
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"Одређује да ли се радним просторима управља динамички или ће постојати "
"стални број радних простора (одређен бројем радних простора у „org.gnome."
"desktop.wm.preferences“)."
"стални број радних простора (одређен бројем радних простора у "
"„org.gnome.desktop.wm.preferences“)."
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
@@ -356,10 +364,14 @@ 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."
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."
"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 ""
"Ако је изабрано, а режим првог плана је или „sloppy“ или „mouse“ онда први "
"план неће бити мењан одмах по уласку у прозор, већ само након што показивач "
@@ -370,8 +382,11 @@ 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."
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Износ укупне ивице за превлачење. Ако видљиве ивице теме нису довољне, биће "
@@ -457,41 +472,55 @@ msgstr "Прелазак на ВТ 11"
msgid "Switch to VT 12"
msgstr "Прелазак на ВТ 12"
#: src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1759
#, c-format
#| msgid "Mode Switch: Mode %d"
msgid "Mode Switch (Group %d)"
msgstr "Режим прекидача (група %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1781
msgid "Switch monitor"
msgstr "Промени монитор"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1783
msgid "Show on-screen help"
msgstr "Прикажи помоћ на екрану"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Уграђени дисплеј"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Непознато"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Непознат дисплеј"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
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 ""
"Неки други композитни управник је већ покренут на приказу %i еркана „%s“."
@@ -499,6 +528,7 @@ msgstr ""
msgid "Bell event"
msgstr "Звонца"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -516,60 +546,67 @@ msgstr ""
"Можете мало сачекати док се програм не сабере или приморати програм да "
"комплетно прекине са радом."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Сачекај"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Приморај излаз"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Сачекај"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
#| msgid "Failed to open X Window System display '%s'\n"
msgid "Failed to open X Window System display “%s”\n"
msgstr "Нисам успео да отворим екран „%s“ Икс система прозора\n"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Искључује везу са управником сесије"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Мења текућег управника прозорима"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Наводи ИБ управника сесије"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Икс екран који ће бити коришћен"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Покреће сесију из датотеке чувања"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Чини Икс позиве усклађеним"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Ради као вајландов саставник"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Ради као угнеждени саставник"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Ради као пуни сервер приказа, уместо као угнеждени"
#: src/core/mutter.c:39
#, 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 ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -593,38 +630,45 @@ msgstr "Прикључци Матера за коришћење"
msgid "Workspace %d"
msgstr "%d. радни простор"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
#| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace "
#| "option to replace the current window manager."
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Приказ „%s“ већ има управника прозора; пробајте да користите опцију „--"
"replace“ да замените тренутног управника прозора."
"Приказ „%s“ већ има управника прозора; пробајте да користите опцију "
"„--replace“ да замените тренутног управника прозора."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, 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 "Приказ „%d“ на екрану „%s“ није исправан\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Матер је преведен без подршке за опширан режим\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Режим прекидача: Режим %d"
#: src/x11/session.c:1815
#| msgid ""
#| "These windows do not support &quot;save current setup&quot; and will have "
#| "to be restarted manually next time you log in."
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Ови прозори не подржавају могућност „сачувај тренутна подешавања“ па ћете "
"морати ручно да их поново покренете када се следећи пут пријавите."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (на %s)"

View File

@@ -1,20 +1,20 @@
# Serbian translation of mutter.
# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2016.
# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2017.
# This file is distributed under the same license as the mutter package.
# Translators:
# Goran Rakić <grakic@devbase.net>
# Danilo Šegan <danilo@prevod.org>, 2005.
# Miloš Popović <gpopac@gmail.com>, 2010.
# Miroslav Nikolić <miroslavnikolic@rocketmail.com>, 2011—2016.
# Miroslav Nikolić <miroslavnikolic@rocketmail.com>, 2011—2017.
msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=mutter&"
"keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-09-07 09:27+0000\n"
"PO-Revision-Date: 2016-09-11 08:39+0200\n"
"POT-Creation-Date: 2017-02-16 01:44+0000\n"
"PO-Revision-Date: 2017-02-21 07:16+0200\n"
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
"Language-Team: srpski <gnome-sr@googlegroups.org>\n"
"Language-Team: Serbian <(nothing)>\n"
"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -104,7 +104,6 @@ msgid "Switch to previous window of an application"
msgstr "Prebacuje na prethodni prozor programa"
#: data/50-mutter-navigation.xml:76
#| msgid "Switch system controls directly"
msgid "Switch system controls"
msgstr "Prebacuje kontrole sistema"
@@ -273,11 +272,16 @@ msgid "Modifier to use for extended window management operations"
msgstr "Taster koji se koristi za proširene radnje upravnika prozorima"
#: data/org.gnome.mutter.gschema.xml.in:8
#| msgid ""
#| "This key will initiate the \"overlay\", which is a combination window "
#| "overview and application launching system. The default is intended to be "
#| "the \"Windows key\" on PC hardware. It's expected that this binding "
#| "either the default or set to the empty string."
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"Ovaj ključ pokreće „overlay“ (preklapanje), koje kombinuje pregled prozora i "
"pokretač programa. Podrazumevano je namenjen kao „Windows key“ (ključ prozora) "
@@ -318,14 +322,18 @@ msgid "Workspaces are managed dynamically"
msgstr "Radnim prostorima se upravlja dinamički"
#: 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)."
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"Određuje da li se radnim prostorima upravlja dinamički ili će postojati "
"stalni broj radnih prostora (određen brojem radnih prostora u „org.gnome."
"desktop.wm.preferences“)."
"stalni broj radnih prostora (određen brojem radnih prostora u "
"„org.gnome.desktop.wm.preferences“)."
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
@@ -356,10 +364,14 @@ msgid "Delay focus changes until the pointer stops moving"
msgstr "Zastoj prvog plana se menja dok se pokazivač ne zaustavi"
#: 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."
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."
"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 ""
"Ako je izabrano, a režim prvog plana je ili „sloppy“ ili „mouse“ onda prvi "
"plan neće biti menjan odmah po ulasku u prozor, već samo nakon što pokazivač "
@@ -370,8 +382,11 @@ msgid "Draggable border width"
msgstr "Širina ivice za prevlačenje"
#: 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."
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"Iznos ukupne ivice za prevlačenje. Ako vidljive ivice teme nisu dovoljne, biće "
@@ -457,41 +472,55 @@ msgstr "Prelazak na VT 11"
msgid "Switch to VT 12"
msgstr "Prelazak na VT 12"
#: src/backends/meta-input-settings.c:1707
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1759
#, c-format
#| msgid "Mode Switch: Mode %d"
msgid "Mode Switch (Group %d)"
msgstr "Režim prekidača (grupa %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1781
msgid "Switch monitor"
msgstr "Promeni monitor"
#: src/backends/meta-input-settings.c:1709
#: src/backends/meta-input-settings.c:1783
msgid "Show on-screen help"
msgstr "Prikaži pomoć na ekranu"
#: src/backends/meta-monitor-manager.c:514
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "Ugrađeni displej"
#: src/backends/meta-monitor-manager.c:537
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "Nepoznato"
#: src/backends/meta-monitor-manager.c:539
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "Nepoznat displej"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:547
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: src/compositor/compositor.c:463
#: src/compositor/compositor.c:471
#, c-format
#| msgid ""
#| "Another compositing manager is already running on screen %i on display "
#| "\"%s\"."
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 ""
"Neki drugi kompozitni upravnik je već pokrenut na prikazu %i erkana „%s“."
@@ -499,6 +528,7 @@ msgstr ""
msgid "Bell event"
msgstr "Zvonca"
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
@@ -516,60 +546,67 @@ msgstr ""
"Možete malo sačekati dok se program ne sabere ili primorati program da "
"kompletno prekine sa radom."
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Sačekaj"
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "_Primoraj izlaz"
#: src/core/display.c:590
#: src/core/delete.c:141
msgid "_Wait"
msgstr "_Sačekaj"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display '%s'\n"
#| 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"
#: src/core/main.c:182
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "Isključuje vezu sa upravnikom sesije"
#: src/core/main.c:188
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "Menja tekućeg upravnika prozorima"
#: src/core/main.c:194
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "Navodi IB upravnika sesije"
#: src/core/main.c:199
#: src/core/main.c:206
msgid "X Display to use"
msgstr "Iks ekran koji će biti korišćen"
#: src/core/main.c:205
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "Pokreće sesiju iz datoteke čuvanja"
#: src/core/main.c:211
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "Čini Iks pozive usklađenim"
#: src/core/main.c:218
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "Radi kao vajlandov sastavnik"
#: src/core/main.c:224
#: src/core/main.c:231
msgid "Run as a nested compositor"
msgstr "Radi kao ugneždeni sastavnik"
#: src/core/main.c:232
#: src/core/main.c:239
msgid "Run as a full display server, rather than nested"
msgstr "Radi kao puni server prikaza, umesto kao ugneždeni"
#: src/core/mutter.c:39
#, 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 ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -593,38 +630,45 @@ msgstr "Priključci Matera za korišćenje"
msgid "Workspace %d"
msgstr "%d. radni prostor"
#: src/core/screen.c:521
#: src/core/screen.c:580
#, c-format
#| msgid ""
#| "Display \"%s\" already has a window manager; try using the --replace "
#| "option to replace the current window manager."
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Prikaz „%s“ već ima upravnika prozora; probajte da koristite opciju „--"
"replace“ da zamenite trenutnog upravnika prozora."
"Prikaz „%s“ već ima upravnika prozora; probajte da koristite opciju "
"„--replace“ da zamenite trenutnog upravnika prozora."
#: src/core/screen.c:606
#: src/core/screen.c:665
#, 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 "Prikaz „%d“ na ekranu „%s“ nije ispravan\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mater je preveden bez podrške za opširan režim\n"
#: src/wayland/meta-wayland-tablet-pad.c:595
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Režim prekidača: Režim %d"
#: src/x11/session.c:1815
#| msgid ""
#| "These windows do not support &quot;save current setup&quot; and will have "
#| "to be restarted manually next time you log in."
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
"These windows do not support save current setup and will have to be "
"restarted manually next time you log in."
msgstr ""
"Ovi prozori ne podržavaju mogućnost „sačuvaj trenutna podešavanja“ pa ćete "
"morati ručno da ih ponovo pokrenete kada se sledeći put prijavite."
#: src/x11/window-props.c:548
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s (na %s)"

View File

@@ -8,10 +8,10 @@
msgid ""
msgstr ""
"Project-Id-Version: metacity 3.3.4\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=mutter&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-07-21 10:52+0000\n"
"PO-Revision-Date: 2015-02-21 16:33+0800\n"
"POT-Creation-Date: 2017-02-28 06:20+0000\n"
"PO-Revision-Date: 2017-03-01 10:24+0800\n"
"Last-Translator: Chao-Hsiung Liao <j_h_liau@yahoo.com.tw>\n"
"Language-Team: Chinese (Taiwan) <zh-l10n@lists.linux.org.tw>\n"
"Language: zh_TW\n"
@@ -19,272 +19,272 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.7.4\n"
"X-Generator: Poedit 1.8.12\n"
#: ../data/50-mutter-navigation.xml.in.h:1
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
msgstr "導航"
#: ../data/50-mutter-navigation.xml.in.h:2
#: data/50-mutter-navigation.xml:9
msgid "Move window to workspace 1"
msgstr "將視窗移至第 1 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:3
#: data/50-mutter-navigation.xml:12
msgid "Move window to workspace 2"
msgstr "將視窗移至第 2 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:4
#: data/50-mutter-navigation.xml:15
msgid "Move window to workspace 3"
msgstr "將視窗移至第 3 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:5
#: data/50-mutter-navigation.xml:18
msgid "Move window to workspace 4"
msgstr "將視窗移至第 4 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:6
#: data/50-mutter-navigation.xml:21
msgid "Move window to last workspace"
msgstr "將視窗移至上一個工作區"
#: ../data/50-mutter-navigation.xml.in.h:7
#: data/50-mutter-navigation.xml:24
msgid "Move window one workspace to the left"
msgstr "將視窗移至左方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:8
#: data/50-mutter-navigation.xml:27
msgid "Move window one workspace to the right"
msgstr "將視窗移至右方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:9
#: data/50-mutter-navigation.xml:30
msgid "Move window one workspace up"
msgstr "將視窗移至上方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:10
#: data/50-mutter-navigation.xml:33
msgid "Move window one workspace down"
msgstr "將視窗移至下方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:11
#: data/50-mutter-navigation.xml:36
msgid "Move window one monitor to the left"
msgstr "將視窗移至左方的螢幕"
#: ../data/50-mutter-navigation.xml.in.h:12
#: data/50-mutter-navigation.xml:39
msgid "Move window one monitor to the right"
msgstr "將視窗移至右方的螢幕"
#: ../data/50-mutter-navigation.xml.in.h:13
#: data/50-mutter-navigation.xml:42
msgid "Move window one monitor up"
msgstr "將視窗移至上方的螢幕"
#: ../data/50-mutter-navigation.xml.in.h:14
#: data/50-mutter-navigation.xml:45
msgid "Move window one monitor down"
msgstr "將視窗移至下方的螢幕"
#: ../data/50-mutter-navigation.xml.in.h:15
#: data/50-mutter-navigation.xml:49
msgid "Switch applications"
msgstr "切換程式"
#: ../data/50-mutter-navigation.xml.in.h:16
#: data/50-mutter-navigation.xml:54
msgid "Switch to previous application"
msgstr "切換至上一個應用程式"
#: ../data/50-mutter-navigation.xml.in.h:17
#: data/50-mutter-navigation.xml:58
msgid "Switch windows"
msgstr "切換視窗"
#: ../data/50-mutter-navigation.xml.in.h:18
#: data/50-mutter-navigation.xml:63
msgid "Switch to previous window"
msgstr "切換至上一個視窗"
#: ../data/50-mutter-navigation.xml.in.h:19
#: data/50-mutter-navigation.xml:67
msgid "Switch windows of an application"
msgstr "切換程式的視窗"
#: ../data/50-mutter-navigation.xml.in.h:20
#: data/50-mutter-navigation.xml:72
msgid "Switch to previous window of an application"
msgstr "切換至上一個應用程式的視窗"
#: ../data/50-mutter-navigation.xml.in.h:21
#: data/50-mutter-navigation.xml:76
msgid "Switch system controls"
msgstr "切換系統控制"
#: ../data/50-mutter-navigation.xml.in.h:22
#: data/50-mutter-navigation.xml:81
msgid "Switch to previous system control"
msgstr "切換至上一個系統控制"
#: ../data/50-mutter-navigation.xml.in.h:23
#: data/50-mutter-navigation.xml:85
msgid "Switch windows directly"
msgstr "直接切換視窗"
#: ../data/50-mutter-navigation.xml.in.h:24
#: data/50-mutter-navigation.xml:90
msgid "Switch directly to previous window"
msgstr "直接切換至上一個視窗"
#: ../data/50-mutter-navigation.xml.in.h:25
#: data/50-mutter-navigation.xml:94
msgid "Switch windows of an app directly"
msgstr "直接切換程式的視窗"
#: ../data/50-mutter-navigation.xml.in.h:26
#: data/50-mutter-navigation.xml:99
msgid "Switch directly to previous window of an app"
msgstr "直接切換至上一個程式視窗"
#: ../data/50-mutter-navigation.xml.in.h:27
#: data/50-mutter-navigation.xml:103
msgid "Switch system controls directly"
msgstr "直接切換系統控制"
#: ../data/50-mutter-navigation.xml.in.h:28
#: data/50-mutter-navigation.xml:108
msgid "Switch directly to previous system control"
msgstr "直接切換至上一個系統控制"
#: ../data/50-mutter-navigation.xml.in.h:29
#: data/50-mutter-navigation.xml:111
msgid "Hide all normal windows"
msgstr "隱藏所有一般視窗"
#: ../data/50-mutter-navigation.xml.in.h:30
#: data/50-mutter-navigation.xml:114
msgid "Switch to workspace 1"
msgstr "切換至第 1 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:31
#: data/50-mutter-navigation.xml:117
msgid "Switch to workspace 2"
msgstr "切換至第 2 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:32
#: data/50-mutter-navigation.xml:120
msgid "Switch to workspace 3"
msgstr "切換至第 3 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:33
#: data/50-mutter-navigation.xml:123
msgid "Switch to workspace 4"
msgstr "切換至第 4 個工作區"
#: ../data/50-mutter-navigation.xml.in.h:34
#: data/50-mutter-navigation.xml:126
msgid "Switch to last workspace"
msgstr "切換至上一個工作區"
#: ../data/50-mutter-navigation.xml.in.h:35
#: data/50-mutter-navigation.xml:129
msgid "Move to workspace left"
msgstr "移至左方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:36
#: data/50-mutter-navigation.xml:132
msgid "Move to workspace right"
msgstr "移至右方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:37
#: data/50-mutter-navigation.xml:135
msgid "Move to workspace above"
msgstr "移至上方的工作區"
#: ../data/50-mutter-navigation.xml.in.h:38
#: data/50-mutter-navigation.xml:138
msgid "Move to workspace below"
msgstr "移至下方的工作區"
#: ../data/50-mutter-system.xml.in.h:1
#: data/50-mutter-system.xml:6
msgid "System"
msgstr "系統"
#: ../data/50-mutter-system.xml.in.h:2
#: data/50-mutter-system.xml:8
msgid "Show the run command prompt"
msgstr "顯示執行指令提示"
#: ../data/50-mutter-system.xml.in.h:3
#: data/50-mutter-system.xml:10
msgid "Show the activities overview"
msgstr "顯示活動概覽"
#: ../data/50-mutter-windows.xml.in.h:1
#: data/50-mutter-windows.xml:6
msgid "Windows"
msgstr "視窗"
#: ../data/50-mutter-windows.xml.in.h:2
#: data/50-mutter-windows.xml:8
msgid "Activate the window menu"
msgstr "使用視窗選單"
#: ../data/50-mutter-windows.xml.in.h:3
#: data/50-mutter-windows.xml:10
msgid "Toggle fullscreen mode"
msgstr "切換全螢幕模式"
#: ../data/50-mutter-windows.xml.in.h:4
#: data/50-mutter-windows.xml:12
msgid "Toggle maximization state"
msgstr "切換最大化狀態"
#: ../data/50-mutter-windows.xml.in.h:5
#: data/50-mutter-windows.xml:14
msgid "Maximize window"
msgstr "視窗最大化"
#: ../data/50-mutter-windows.xml.in.h:6
#: data/50-mutter-windows.xml:16
msgid "Restore window"
msgstr "還原視窗"
#: ../data/50-mutter-windows.xml.in.h:7
#: data/50-mutter-windows.xml:18
msgid "Toggle shaded state"
msgstr "切換視窗捲起/放下狀態"
#: ../data/50-mutter-windows.xml.in.h:8
#: data/50-mutter-windows.xml:20
msgid "Close window"
msgstr "關閉視窗"
#: ../data/50-mutter-windows.xml.in.h:9
#: data/50-mutter-windows.xml:22
msgid "Hide window"
msgstr "隱藏視窗"
#: ../data/50-mutter-windows.xml.in.h:10
#: data/50-mutter-windows.xml:24
msgid "Move window"
msgstr "移動視窗"
#: ../data/50-mutter-windows.xml.in.h:11
#: data/50-mutter-windows.xml:26
msgid "Resize window"
msgstr "調整視窗大小"
#: ../data/50-mutter-windows.xml.in.h:12
#: data/50-mutter-windows.xml:29
msgid "Toggle window on all workspaces or one"
msgstr "切換視窗顯示在所有工作區或是只顯示於其中之一"
#: ../data/50-mutter-windows.xml.in.h:13
#: data/50-mutter-windows.xml:31
msgid "Raise window if covered, otherwise lower it"
msgstr "若被其他視窗遮蔽就抬升它,否則將它降下"
#: ../data/50-mutter-windows.xml.in.h:14
#: data/50-mutter-windows.xml:33
msgid "Raise window above other windows"
msgstr "令某個視窗覆蓋其它視窗"
#: ../data/50-mutter-windows.xml.in.h:15
#: data/50-mutter-windows.xml:35
msgid "Lower window below other windows"
msgstr "遮蔽某個視窗"
#: ../data/50-mutter-windows.xml.in.h:16
#: data/50-mutter-windows.xml:37
msgid "Maximize window vertically"
msgstr "將視窗縱向最大化"
#: ../data/50-mutter-windows.xml.in.h:17
#: data/50-mutter-windows.xml:39
msgid "Maximize window horizontally"
msgstr "將視窗橫向最大化"
#: ../data/50-mutter-windows.xml.in.h:18
#: data/50-mutter-windows.xml:43
msgid "View split on left"
msgstr "檢視分割於左側"
#: ../data/50-mutter-windows.xml.in.h:19
#: data/50-mutter-windows.xml:47
msgid "View split on right"
msgstr "檢視分割於右側"
#: ../data/mutter.desktop.in.h:1
#: data/mutter.desktop.in:4
msgid "Mutter"
msgstr "Mutter"
#: ../data/org.gnome.mutter.gschema.xml.in.h:1
#: data/org.gnome.mutter.gschema.xml.in:7
msgid "Modifier to use for extended window management operations"
msgstr "用於延伸視窗管理操作程序的特殊按鍵"
#: ../data/org.gnome.mutter.gschema.xml.in.h:2
#: data/org.gnome.mutter.gschema.xml.in:8
msgid ""
"This key will initiate the \"overlay\", which is a combination window "
"overview and application launching system. The default is intended to be the "
"\"Windows key\" on PC hardware. It's expected that this binding either the "
"default or set to the empty string."
"This key will initiate the overlay, which is a combination window overview "
"and application launching system. The default is intended to be the “Windows "
"key on PC hardware. Its expected that this binding either the default or "
"set to the empty string."
msgstr ""
"這個設定鍵會初始化「overlay」這是一個複合視窗概覽與應用程式執行系統。預設是"
"要成為 PC 硬體上的「Windows key」。預期這個按鍵組含不是預設值就是設定為空字"
"串。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:3
#: data/org.gnome.mutter.gschema.xml.in:20
msgid "Attach modal dialogs"
msgstr "附加模態對話盒"
#: ../data/org.gnome.mutter.gschema.xml.in.h:4
#: 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 "
@@ -293,11 +293,11 @@ msgstr ""
"當設為「true」將不會有獨立的標題列模態對話盒會附加在上層視窗的標題列並與"
"上層視窗一起移動。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:5
#: 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.h:6
#: 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 "
@@ -306,155 +306,174 @@ msgstr ""
"如果啟用,將視窗拖放到螢幕垂直邊緣時會讓它們垂直最大化並調整水平方向大小覆蓋"
"可用區域的一半。拖放視窗到螢幕頂端邊緣則會讓它們完全最大化。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:7
#: data/org.gnome.mutter.gschema.xml.in:40
msgid "Workspaces are managed dynamically"
msgstr "工作區以動態方式管理"
#: ../data/org.gnome.mutter.gschema.xml.in.h:8
#: data/org.gnome.mutter.gschema.xml.in:41
msgid ""
"Determines whether workspaces are managed dynamically or whether there's a "
"Determines whether workspaces are managed dynamically or whether theres a "
"static number of workspaces (determined by the num-workspaces key in org."
"gnome.desktop.wm.preferences)."
msgstr ""
"決定工作區以動態方式管理或是有固定數量的工作區 (以 org.gnome.desktop.wm."
"preferences 中的 num-workspaces 鍵值來決定)。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:9
#: data/org.gnome.mutter.gschema.xml.in:50
msgid "Workspaces only on primary"
msgstr "只有主要螢幕的工作區"
#: ../data/org.gnome.mutter.gschema.xml.in.h:10
#: 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.h:11
#: data/org.gnome.mutter.gschema.xml.in:59
msgid "No tab popup"
msgstr "沒有分頁彈出項"
#: ../data/org.gnome.mutter.gschema.xml.in.h:12
#: 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.h:13
#: 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.h:14
#: 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."
"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 ""
"如果設為 true焦點模式為「sloppy」或「mouse」則焦點不會在進入視窗時立即改"
"變,而是在指標停止移動之後才改變。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:15
#: data/org.gnome.mutter.gschema.xml.in:79
msgid "Draggable border width"
msgstr "可拖曳邊框寬度"
#: ../data/org.gnome.mutter.gschema.xml.in.h:16
#: data/org.gnome.mutter.gschema.xml.in:80
msgid ""
"The amount of total draggable borders. If the theme's visible borders are "
"The amount of total draggable borders. If the themes visible borders are "
"not enough, invisible borders will be added to meet this value."
msgstr ""
"所有可拖曳邊框的總數。如果布景的可視邊框不夠,會加入隱形邊框來符合這個數值。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:17
#: data/org.gnome.mutter.gschema.xml.in:89
msgid "Auto maximize nearly monitor sized windows"
msgstr "自動最大化接近螢幕大小的視窗"
#: ../data/org.gnome.mutter.gschema.xml.in.h:18
#: 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.h:19
#: data/org.gnome.mutter.gschema.xml.in:98
msgid "Place new windows in the center"
msgstr "將新視窗放置於中央"
#: ../data/org.gnome.mutter.gschema.xml.in.h:20
#: 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 "當設定為「true」時新視窗會永遠置於使用中螢幕畫面的正中央。"
#: ../data/org.gnome.mutter.gschema.xml.in.h:21
#: data/org.gnome.mutter.gschema.xml.in:120
msgid "Select window from tab popup"
msgstr "從分頁彈出項選擇視窗"
#: ../data/org.gnome.mutter.gschema.xml.in.h:22
#: data/org.gnome.mutter.gschema.xml.in:125
msgid "Cancel tab popup"
msgstr "取消分頁彈出項"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:1
#: data/org.gnome.mutter.wayland.gschema.xml.in:6
msgid "Switch to VT 1"
msgstr "切換至 VT 1"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:2
#: data/org.gnome.mutter.wayland.gschema.xml.in:10
msgid "Switch to VT 2"
msgstr "切換至 VT 2"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:3
#: data/org.gnome.mutter.wayland.gschema.xml.in:14
msgid "Switch to VT 3"
msgstr "切換至 VT 3"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:4
#: data/org.gnome.mutter.wayland.gschema.xml.in:18
msgid "Switch to VT 4"
msgstr "切換至 VT 4"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:5
#: data/org.gnome.mutter.wayland.gschema.xml.in:22
msgid "Switch to VT 5"
msgstr "切換至 VT 5"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:6
#: data/org.gnome.mutter.wayland.gschema.xml.in:26
msgid "Switch to VT 6"
msgstr "切換至 VT 6"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:7
#: data/org.gnome.mutter.wayland.gschema.xml.in:30
msgid "Switch to VT 7"
msgstr "切換至 VT 7"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:8
#: data/org.gnome.mutter.wayland.gschema.xml.in:34
msgid "Switch to VT 8"
msgstr "切換至 VT 8"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:9
#: data/org.gnome.mutter.wayland.gschema.xml.in:38
msgid "Switch to VT 9"
msgstr "切換至 VT 9"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:10
#: data/org.gnome.mutter.wayland.gschema.xml.in:42
msgid "Switch to VT 10"
msgstr "切換至 VT 10"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:11
#: data/org.gnome.mutter.wayland.gschema.xml.in:46
msgid "Switch to VT 11"
msgstr "切換至 VT 11"
#: ../data/org.gnome.mutter.wayland.gschema.xml.in.h:12
#: data/org.gnome.mutter.wayland.gschema.xml.in:50
msgid "Switch to VT 12"
msgstr "切換至 VT 12"
#: ../src/backends/meta-monitor-manager.c:500
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:1800
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "模式切換( 群組 %d)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:1822
msgid "Switch monitor"
msgstr "切換監視器"
#: src/backends/meta-input-settings.c:1824
msgid "Show on-screen help"
msgstr "顯示螢幕求助"
#: src/backends/meta-monitor-manager.c:675
msgid "Built-in display"
msgstr "內建顯示"
#: ../src/backends/meta-monitor-manager.c:526
#: src/backends/meta-monitor-manager.c:698
msgid "Unknown"
msgstr "不明"
#: ../src/backends/meta-monitor-manager.c:528
#: src/backends/meta-monitor-manager.c:700
msgid "Unknown Display"
msgstr "不明的顯示器"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: ../src/backends/meta-monitor-manager.c:536
#: src/backends/meta-monitor-manager.c:708
#, c-format
msgid "%s %s"
msgstr "%s %s"
@@ -462,82 +481,86 @@ msgstr "%s %s"
# FIXME: I'm still unclear about the meaning of XGetSelectionOwner -- Abel
#. This probably means that a non-WM compositor like xcompmgr is running;
#. * we have no way to get it to exit
#: ../src/compositor/compositor.c:451
#: src/compositor/compositor.c:471
#, c-format
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 "在畫面「%2$s」中的第 %1$i 個螢幕中已啟動另一個組合視窗管理員。"
#: ../src/core/bell.c:185
#: src/core/bell.c:194
msgid "Bell event"
msgstr "響鈴事件"
#: ../src/core/delete.c:127
#. Translators: %s is a window title
#: src/core/delete.c:127
#, c-format
msgid "“%s” is not responding."
msgstr "“%s”沒有回應。"
#: ../src/core/delete.c:129
#: src/core/delete.c:129
msgid "Application is not responding."
msgstr "應用程式沒有回應。"
#: ../src/core/delete.c:134
#: src/core/delete.c:134
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
msgstr "您可以選擇稍等一下,或者強制程式立即結束。"
#: ../src/core/delete.c:141
msgid "_Wait"
msgstr "等待(_W)"
#: ../src/core/delete.c:141
#: src/core/delete.c:141
msgid "_Force Quit"
msgstr "強制結束(_F)"
#: ../src/core/display.c:563
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "無法開啟 X Window 畫面‘%s\n"
#: src/core/delete.c:141
msgid "_Wait"
msgstr "等待(_W)"
#: ../src/core/main.c:176
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "無法開啟 X Window 系統畫面「%s」\n"
#: src/core/main.c:189
msgid "Disable connection to session manager"
msgstr "停用到作業階段管理員的連線"
#: ../src/core/main.c:182
#: src/core/main.c:195
msgid "Replace the running window manager"
msgstr "取代執行中的視窗管理員"
#: ../src/core/main.c:188
#: src/core/main.c:201
msgid "Specify session management ID"
msgstr "指定作業階段管理 ID"
#: ../src/core/main.c:193
#: src/core/main.c:206
msgid "X Display to use"
msgstr "使用的 X 畫面"
#: ../src/core/main.c:199
#: src/core/main.c:212
msgid "Initialize session from savefile"
msgstr "以 savefile 初始化作業階段"
#: ../src/core/main.c:205
#: src/core/main.c:218
msgid "Make X calls synchronous"
msgstr "使用同步方式調用 X 函式"
#: ../src/core/main.c:212
#: src/core/main.c:225
msgid "Run as a wayland compositor"
msgstr "以 wayland 組合器執行"
#: ../src/core/main.c:220
#: 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 "以完全顯示伺服器執行,而非巢狀"
#: ../src/core/mutter.c:39
#: src/core/mutter.c:39
#, c-format
msgid ""
"mutter %s\n"
"Copyright (C) 2001-%d Havoc Pennington, Red Hat, Inc., and others\n"
"Copyright © 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"
@@ -547,45 +570,50 @@ msgstr ""
"本程式是自由軟體;有關版權的詳情請參考源程式碼。\n"
"本程式不負任何擔保責任;亦無對適售性或特定目的適用性所為的默示性擔保。\n"
#: ../src/core/mutter.c:53
#: src/core/mutter.c:53
msgid "Print version"
msgstr "顯示版本"
#: ../src/core/mutter.c:59
#: src/core/mutter.c:59
msgid "Mutter plugin to use"
msgstr "要使用的 Mutter 外掛程式"
# (Abel) take care of the same string in libwnck
#: ../src/core/prefs.c:2004
#: src/core/prefs.c:1997
#, c-format
msgid "Workspace %d"
msgstr "工作區 %d"
#: ../src/core/screen.c:525
#: src/core/screen.c:580
#, c-format
msgid ""
"Display \"%s\" already has a window manager; try using the --replace option "
"to replace the current window manager."
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"畫面「%s」已經有了視窗管理員請嘗試使用 --replace 選項來替換目前的視窗管理"
"員。"
#: ../src/core/screen.c:607
#: src/core/screen.c:665
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "畫面%2$s中的第 %1$d 個螢幕無效\n"
msgid "Screen %d on display %s is invalid\n"
msgstr "畫面%2$s中的第 %1$d 個螢幕無效\n"
#: ../src/core/util.c:118
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "編譯 Mutter 時並沒有加入詳細偵錯模式的支援\n"
#: ../src/x11/session.c:1815
msgid ""
"These windows do not support &quot;save current setup&quot; and will have to "
"be restarted manually next time you log in."
msgstr "這些視窗不支援 &quot;儲存目前的設定&quot; ,必須在下次登入後自行啟動。"
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "模式切換:模式 %d"
#: ../src/x11/window-props.c:549
#: src/x11/session.c:1815
msgid ""
"These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in."
msgstr "這些視窗不支援「儲存目前的設定」,必須在下次登入後自行啟動。"
#: src/x11/window-props.c:559
#, c-format
msgid "%s (on %s)"
msgstr "%s在 %s"

View File

@@ -91,6 +91,7 @@ libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES = \
backends/meta-cursor-tracker-private.h \
backends/meta-cursor-renderer.c \
backends/meta-cursor-renderer.h \
backends/meta-dnd-private.h \
backends/meta-egl.c \
backends/meta-egl.h \
backends/meta-egl-ext.h \
@@ -174,6 +175,7 @@ libmutter_@LIBMUTTER_API_VERSION@_la_SOURCES = \
compositor/meta-background-group.c \
compositor/meta-cullable.c \
compositor/meta-cullable.h \
compositor/meta-dnd.c \
compositor/meta-dnd-actor.c \
compositor/meta-dnd-actor-private.h \
compositor/meta-feedback-actor.c \
@@ -430,6 +432,7 @@ libmutterinclude_headers = \
meta/meta-background-image.h \
meta/meta-background-group.h \
meta/meta-cursor-tracker.h \
meta/meta-dnd.h \
meta/meta-idle-monitor.h \
meta/meta-plugin.h \
meta/meta-monitor-manager.h \

View File

@@ -95,8 +95,6 @@ struct _MetaBackendClass
void (* set_numlock) (MetaBackend *backend,
gboolean numlock_state);
void (* track_position) (MetaBackend *backend,
gboolean enabled);
};
void meta_init_backend (GType backend_gtype);
@@ -152,10 +150,4 @@ gboolean meta_is_stage_views_enabled (void);
MetaInputSettings *meta_backend_get_input_settings (MetaBackend *backend);
void meta_backend_update_cursor_position (MetaBackend *backend, int x, int y);
void meta_backend_cursor_position_changed (MetaBackend *backend);
void meta_backend_track_position_ref (MetaBackend *backend);
void meta_backend_track_position_unref (MetaBackend *backend);
#endif /* META_BACKEND_PRIVATE_H */

View File

@@ -78,8 +78,7 @@ struct _MetaBackendPrivate
int current_device_id;
MetaPointerConstraint *client_pointer_constraint;
uint32_t track_position_refcount;
MetaDnd *dnd;
};
typedef struct _MetaBackendPrivate MetaBackendPrivate;
@@ -459,6 +458,8 @@ meta_backend_initable_init (GInitable *initable,
priv->cursor_tracker = g_object_new (META_TYPE_CURSOR_TRACKER, NULL);
priv->dnd = g_object_new (META_TYPE_DND, NULL);
return TRUE;
}
@@ -869,41 +870,18 @@ meta_backend_get_input_settings (MetaBackend *backend)
return priv->input_settings;
}
void
meta_backend_update_cursor_position (MetaBackend *backend, int x, int y)
/**
* meta_backend_get_dnd:
* @backend: A #MetaDnd
*
* Gets the global #MetaDnd that's managed by this backend.
*
* Returns: (transfer none): the #MetaDnd
*/
MetaDnd *
meta_backend_get_dnd (MetaBackend *backend)
{
MetaBackendPrivate *priv = meta_backend_get_instance_private (backend);
meta_cursor_renderer_set_position (priv->cursor_renderer, x, y);
meta_backend_cursor_position_changed (backend);
}
void
meta_backend_cursor_position_changed (MetaBackend *backend)
{
meta_cursor_tracker_cursor_position_changed (backend->cursor_tracker);
}
static void
meta_backend_track_position (MetaBackend *backend, gboolean enabled)
{
if (META_BACKEND_GET_CLASS (backend)->track_position)
META_BACKEND_GET_CLASS (backend)->track_position (backend, enabled);
}
void
meta_backend_track_position_ref (MetaBackend *backend)
{
MetaBackendPrivate *priv = meta_backend_get_instance_private (backend);
if (priv->track_position_refcount++ == 0)
meta_backend_track_position (backend, TRUE);
}
void
meta_backend_track_position_unref (MetaBackend *backend)
{
MetaBackendPrivate *priv = meta_backend_get_instance_private (backend);
if (priv->track_position_refcount-- == 0)
meta_backend_track_position (backend, FALSE);
return priv->dnd;
}

View File

@@ -61,8 +61,10 @@ void meta_cursor_tracker_unset_window_cursor (MetaCursorTracker *tracker);
void meta_cursor_tracker_set_root_cursor (MetaCursorTracker *tracker,
MetaCursorSprite *cursor_sprite);
void meta_cursor_tracker_update_position (MetaCursorTracker *tracker,
int new_x,
int new_y);
MetaCursorSprite * meta_cursor_tracker_get_displayed_cursor (MetaCursorTracker *tracker);
void meta_backend_cursor_position_changed (MetaCursorTracker *tracker);
#endif

View File

@@ -47,7 +47,6 @@
G_DEFINE_TYPE (MetaCursorTracker, meta_cursor_tracker, G_TYPE_OBJECT);
enum {
POSITION_CHANGED,
CURSOR_CHANGED,
LAST_SIGNAL
};
@@ -129,13 +128,6 @@ meta_cursor_tracker_class_init (MetaCursorTrackerClass *klass)
0,
NULL, NULL, NULL,
G_TYPE_NONE, 0);
signals[POSITION_CHANGED] = g_signal_new ("position-changed",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 0);
}
/**
@@ -356,6 +348,20 @@ meta_cursor_tracker_set_root_cursor (MetaCursorTracker *tracker,
sync_cursor (tracker);
}
void
meta_cursor_tracker_update_position (MetaCursorTracker *tracker,
int new_x,
int new_y)
{
MetaBackend *backend = meta_get_backend ();
MetaCursorRenderer *cursor_renderer =
meta_backend_get_cursor_renderer (backend);
g_assert (meta_is_wayland_compositor ());
meta_cursor_renderer_set_position (cursor_renderer, new_x, new_y);
}
static void
get_pointer_position_gdk (int *x,
int *y,
@@ -429,21 +435,3 @@ meta_cursor_tracker_get_displayed_cursor (MetaCursorTracker *tracker)
{
return tracker->displayed_cursor;
}
void
meta_cursor_tracker_position_changed (MetaCursorTracker *tracker)
{
g_signal_emit (tracker, signals[POSITION_CHANGED], 0);
}
void
meta_cursor_tracker_enable_track_position (MetaCursorTracker *tracker)
{
meta_backend_track_position_ref (meta_get_backend ());
}
void
meta_cursor_tracker_disable_track_position (MetaCursorTracker *tracker)
{
meta_backend_track_position_unref (meta_get_backend ());
}

View File

@@ -0,0 +1,34 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* Copyright (C) 2016 Hyungwon Hwang
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#ifndef META_DND_PRIVATE__H
#define META_DND_PRIVATE__H
#include <X11/Xlib.h>
gboolean meta_dnd_handle_xdnd_event (MetaBackend *backend,
MetaCompositor *compositor,
MetaDisplay *display,
XEvent *xev);
#ifdef HAVE_WAYLAND
void meta_dnd_wayland_handle_begin_modal (MetaCompositor *compositor);
#endif
#endif /* META_DND_PRIVATE_H */

View File

@@ -66,6 +66,7 @@ typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL) (EGLDisplay dpy, st
#ifndef EGL_EXT_stream_acquire_mode
#define EGL_EXT_stream_acquire_mode 1
#define EGL_CONSUMER_AUTO_ACQUIRE_EXT 0x332B
#define EGL_RESOURCE_BUSY_EXT 0x3353
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREATTRIBEXTPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireAttribEXT (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);

View File

@@ -70,13 +70,11 @@ struct _MetaEgl
G_DEFINE_TYPE (MetaEgl, meta_egl, G_TYPE_OBJECT)
G_DEFINE_QUARK (-meta-egl-error-quark, meta_egl_error)
static const char *
get_egl_error_str (void)
get_egl_error_str (EGLint error_number)
{
EGLint error_number;
error_number = eglGetError ();
switch (error_number)
{
case EGL_SUCCESS:
@@ -124,6 +122,19 @@ get_egl_error_str (void)
case EGL_CONTEXT_LOST:
return "A power management event has occurred. The application must destroy all contexts and reinitialise OpenGL ES state and objects to continue rendering. ";
break;
case EGL_BAD_STREAM_KHR:
return "An EGLStreamKHR argument does not name a valid EGL stream.";
break;
case EGL_BAD_STATE_KHR:
return "An EGLStreamKHR argument is not in a valid state";
break;
case EGL_BAD_DEVICE_EXT:
return "An EGLDeviceEXT argument does not name a valid EGL device.";
break;
case EGL_BAD_OUTPUT_LAYER_EXT:
return "An EGLOutputLayerEXT argument does not name a valid EGL output layer.";
case EGL_RESOURCE_BUSY_EXT:
return "The operation could not be completed on the requested resource because it is temporary unavailable.";
default:
return "Unknown error";
break;
@@ -133,14 +144,16 @@ get_egl_error_str (void)
static void
set_egl_error (GError **error)
{
EGLint error_number;
const char *error_str;
if (!error)
return;
error_str = get_egl_error_str ();
g_set_error_literal (error, G_IO_ERROR,
G_IO_ERROR_FAILED,
error_number = eglGetError ();
error_str = get_egl_error_str (error_number);
g_set_error_literal (error, META_EGL_ERROR,
error_number,
error_str);
}
@@ -200,7 +213,8 @@ meta_egl_has_extensions (MetaEgl *egl,
extensions_str = (const char *) eglQueryString (display, EGL_EXTENSIONS);
if (!extensions_str)
{
g_warning ("Failed to query string: %s", get_egl_error_str ());
g_warning ("Failed to query string: %s",
get_egl_error_str (eglGetError ()));
return FALSE;
}

View File

@@ -29,9 +29,13 @@
#include <EGL/eglext.h>
#include <glib-object.h>
#define META_EGL_ERROR meta_egl_error_quark ()
#define META_TYPE_EGL (meta_egl_get_type ())
G_DECLARE_FINAL_TYPE (MetaEgl, meta_egl, META, EGL, GObject)
GQuark meta_egl_error_quark (void);
gboolean meta_egl_has_extensions (MetaEgl *egl,
EGLDisplay display,
char ***missing_extensions,

View File

@@ -92,7 +92,7 @@ struct _MetaInputSettingsClass
GDesktopTabletMapping mapping);
void (* set_tablet_keep_aspect) (MetaInputSettings *settings,
ClutterInputDevice *device,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gboolean keep_aspect);
void (* set_tablet_area) (MetaInputSettings *settings,
ClutterInputDevice *device,

View File

@@ -31,6 +31,8 @@
#include "meta-backend-private.h"
#include "meta-input-settings-private.h"
#include "backends/meta-logical-monitor.h"
#include "backends/meta-monitor.h"
#include "x11/meta-input-settings-x11.h"
#ifdef HAVE_NATIVE_BACKEND
@@ -686,14 +688,40 @@ update_keyboard_repeat (MetaInputSettings *input_settings)
repeat, delay, interval);
}
static MetaOutput *
meta_input_settings_find_output (MetaInputSettings *input_settings,
GSettings *settings,
ClutterInputDevice *device)
static gboolean
logical_monitor_has_monitor (MetaMonitorManager *monitor_manager,
MetaLogicalMonitor *logical_monitor,
const char *vendor,
const char *product,
const char *serial)
{
GList *monitors;
GList *l;
monitors = meta_monitor_manager_get_monitors (monitor_manager);
for (l = monitors; l; l = l->next)
{
MetaMonitor *monitor = l->data;
if (g_strcmp0 (meta_monitor_get_vendor (monitor), vendor) == 0 &&
g_strcmp0 (meta_monitor_get_product (monitor), product) == 0 &&
g_strcmp0 (meta_monitor_get_serial (monitor), serial) == 0)
return TRUE;
}
return FALSE;
}
static MetaLogicalMonitor *
meta_input_settings_find_logical_monitor (MetaInputSettings *input_settings,
GSettings *settings,
ClutterInputDevice *device)
{
MetaInputSettingsPrivate *priv;
guint n_values, n_outputs, i;
MetaOutput *outputs;
MetaMonitorManager *monitor_manager;
guint n_values;
GList *logical_monitors;
GList *l;
gchar **edid;
priv = meta_input_settings_get_instance_private (input_settings);
@@ -711,14 +739,19 @@ meta_input_settings_find_output (MetaInputSettings *input_settings,
if (!*edid[0] && !*edid[1] && !*edid[2])
return NULL;
outputs = meta_monitor_manager_get_outputs (priv->monitor_manager,
&n_outputs);
for (i = 0; i < n_outputs; i++)
monitor_manager = priv->monitor_manager;
logical_monitors =
meta_monitor_manager_get_logical_monitors (monitor_manager);
for (l = logical_monitors; l; l = l->next)
{
if (g_strcmp0 (outputs[i].vendor, edid[0]) == 0 &&
g_strcmp0 (outputs[i].product, edid[1]) == 0 &&
g_strcmp0 (outputs[i].serial, edid[2]) == 0)
return &outputs[i];
MetaLogicalMonitor *logical_monitor = l->data;
if (logical_monitor_has_monitor (monitor_manager,
logical_monitor,
edid[0],
edid[1],
edid[2]))
return logical_monitor;
}
return NULL;
@@ -730,7 +763,7 @@ update_tablet_keep_aspect (MetaInputSettings *input_settings,
ClutterInputDevice *device)
{
MetaInputSettingsClass *input_settings_class;
MetaOutput *output = NULL;
MetaLogicalMonitor *logical_monitor = NULL;
gboolean keep_aspect;
if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE &&
@@ -757,7 +790,9 @@ update_tablet_keep_aspect (MetaInputSettings *input_settings,
CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE)
{
keep_aspect = g_settings_get_boolean (settings, "keep-aspect");
output = meta_input_settings_find_output (input_settings, settings, device);
logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
settings,
device);
}
else
{
@@ -765,7 +800,7 @@ update_tablet_keep_aspect (MetaInputSettings *input_settings,
}
input_settings_class->set_tablet_keep_aspect (input_settings, device,
output, keep_aspect);
logical_monitor, keep_aspect);
}
static void
@@ -776,7 +811,7 @@ update_device_display (MetaInputSettings *input_settings,
MetaInputSettingsClass *input_settings_class;
MetaInputSettingsPrivate *priv;
gfloat matrix[6] = { 1, 0, 0, 0, 1, 0 };
MetaOutput *output;
MetaLogicalMonitor *logical_monitor;
if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE &&
clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE &&
@@ -791,13 +826,15 @@ update_device_display (MetaInputSettings *input_settings,
if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE ||
clutter_input_device_get_mapping_mode (device) ==
CLUTTER_INPUT_DEVICE_MAPPING_ABSOLUTE)
output = meta_input_settings_find_output (input_settings, settings, device);
logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
settings,
device);
else
output = NULL;
logical_monitor = NULL;
if (output)
if (logical_monitor)
meta_monitor_manager_get_monitor_matrix (priv->monitor_manager,
output, matrix);
logical_monitor, matrix);
input_settings_class->set_matrix (input_settings, device, matrix);
@@ -1472,7 +1509,6 @@ meta_input_settings_get_tablet_logical_monitor (MetaInputSettings *settings,
{
MetaInputSettingsPrivate *priv;
DeviceMappingInfo *info;
MetaOutput *output;
g_return_val_if_fail (META_IS_INPUT_SETTINGS (settings), NULL);
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE (device), NULL);
@@ -1482,12 +1518,9 @@ meta_input_settings_get_tablet_logical_monitor (MetaInputSettings *settings,
if (!info)
return NULL;
output = meta_input_settings_find_output (settings, info->settings, device);
if (output && output->crtc)
return output->crtc->logical_monitor;
return NULL;
return meta_input_settings_find_logical_monitor (settings,
info->settings,
device);
}
GDesktopTabletMapping
@@ -1549,47 +1582,38 @@ meta_input_settings_get_tablet_wacom_device (MetaInputSettings *settings,
#endif /* HAVE_LIBWACOM */
static gboolean
cycle_outputs (MetaInputSettings *settings,
MetaOutput *current_output,
MetaOutput **next_output)
cycle_logical_monitors (MetaInputSettings *settings,
MetaLogicalMonitor *current_logical_monitor,
MetaLogicalMonitor **next_logical_monitor)
{
MetaInputSettingsPrivate *priv;
MetaOutput *next, *outputs;
guint n_outputs, current, i;
priv = meta_input_settings_get_instance_private (settings);
outputs = meta_monitor_manager_get_outputs (priv->monitor_manager,
&n_outputs);
if (n_outputs <= 1)
return FALSE;
MetaInputSettingsPrivate *priv =
meta_input_settings_get_instance_private (settings);
MetaMonitorManager *monitor_manager = priv->monitor_manager;
GList *logical_monitors;
/* We cycle between:
* - the span of all monitors (current_output = NULL)
* - each monitor individually.
*/
if (!current_output)
logical_monitors =
meta_monitor_manager_get_logical_monitors (monitor_manager);
if (!current_logical_monitor)
{
next = &outputs[0];
*next_logical_monitor = logical_monitors->data;
}
else
{
for (i = 0; i < n_outputs; i++)
{
if (current_output != &outputs[i])
continue;
current = i;
break;
}
GList *l;
g_assert (i < n_outputs);
if (current == n_outputs - 1)
next = NULL;
l = g_list_find (logical_monitors, current_logical_monitor);
if (l->next)
*next_logical_monitor = l->next->data;
else
next = &outputs[current + 1];
*next_logical_monitor = logical_monitors->data;
}
*next_output = next;
return TRUE;
}
@@ -1599,7 +1623,7 @@ meta_input_settings_cycle_tablet_output (MetaInputSettings *input_settings,
{
MetaInputSettingsPrivate *priv;
DeviceMappingInfo *info;
MetaOutput *output;
MetaLogicalMonitor *logical_monitor;
const gchar *edid[4] = { 0 }, *pretty_name = NULL;
g_return_if_fail (META_IS_INPUT_SETTINGS (input_settings));
@@ -1622,14 +1646,30 @@ meta_input_settings_cycle_tablet_output (MetaInputSettings *input_settings,
}
#endif
output = meta_input_settings_find_output (input_settings,
info->settings, device);
if (!cycle_outputs (input_settings, output, &output))
logical_monitor = meta_input_settings_find_logical_monitor (input_settings,
info->settings,
device);
if (!cycle_logical_monitors (input_settings,
logical_monitor,
&logical_monitor))
return;
edid[0] = output ? output->vendor : "";
edid[1] = output ? output->product : "";
edid[2] = output ? output->serial : "";
if (logical_monitor)
{
MetaMonitor *monitor;
/* Pick an arbitrary monitor in the logical monitor to represent it. */
monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
edid[0] = meta_monitor_get_vendor (monitor);
edid[1] = meta_monitor_get_product (monitor);
edid[2] = meta_monitor_get_serial (monitor);
}
else
{
edid[0] = "";
edid[1] = "";
edid[2] = "";
}
g_settings_set_strv (info->settings, "display", edid);
meta_display_show_tablet_mapping_notification (meta_get_display (),

View File

@@ -21,53 +21,97 @@
#include "config.h"
#include "backends/meta-backend-private.h"
#include "backends/meta-logical-monitor.h"
G_DEFINE_TYPE (MetaLogicalMonitor, meta_logical_monitor, G_TYPE_OBJECT)
static MetaMonitor *
get_first_monitor (MetaMonitorManager *monitor_manager,
GList *monitor_configs)
{
MetaMonitorConfig *first_monitor_config;
MetaMonitorSpec *first_monitor_spec;
first_monitor_config = g_list_first (monitor_configs)->data;
first_monitor_spec = first_monitor_config->monitor_spec;
return meta_monitor_manager_get_monitor_from_spec (monitor_manager,
first_monitor_spec);
}
typedef struct
{
MetaMonitorManager *monitor_manager;
MetaLogicalMonitor *logical_monitor;
} AddMonitorFromConfigData;
static void
add_monitor_from_config (MetaMonitorConfig *monitor_config,
AddMonitorFromConfigData *data)
{
MetaMonitorSpec *monitor_spec;
MetaMonitor *monitor;
monitor_spec = monitor_config->monitor_spec;
monitor = meta_monitor_manager_get_monitor_from_spec (data->monitor_manager,
monitor_spec);
meta_logical_monitor_add_monitor (data->logical_monitor, monitor);
}
MetaLogicalMonitor *
meta_logical_monitor_new (MetaMonitor *monitor,
int x,
int y,
int number)
meta_logical_monitor_new (MetaMonitorManager *monitor_manager,
MetaLogicalMonitorConfig *logical_monitor_config,
int monitor_number)
{
MetaLogicalMonitor *logical_monitor;
GList *monitor_configs;
MetaMonitor *first_monitor;
MetaOutput *main_output;
logical_monitor = g_object_new (META_TYPE_LOGICAL_MONITOR, NULL);
monitor_configs = logical_monitor_config->monitor_configs;
first_monitor = get_first_monitor (monitor_manager, monitor_configs);
main_output = meta_monitor_get_main_output (first_monitor);
logical_monitor->number = monitor_number;
logical_monitor->winsys_id = main_output->winsys_id;
logical_monitor->scale = main_output->scale;
logical_monitor->in_fullscreen = -1;
logical_monitor->rect = logical_monitor_config->layout;
logical_monitor->is_presentation = TRUE;
g_list_foreach (monitor_configs, (GFunc) add_monitor_from_config,
&(AddMonitorFromConfigData) {
.monitor_manager = monitor_manager,
.logical_monitor = logical_monitor
});
return logical_monitor;
}
MetaLogicalMonitor *
meta_logical_monitor_new_derived (MetaMonitorManager *monitor_manager,
MetaMonitor *monitor,
MetaRectangle *layout,
int monitor_number)
{
MetaLogicalMonitor *logical_monitor;
MetaOutput *main_output;
GList *outputs;
GList *l;
gboolean is_presentation;
g_assert (meta_monitor_is_active (monitor));
logical_monitor = g_object_new (META_TYPE_LOGICAL_MONITOR, NULL);
main_output = meta_monitor_get_main_output (monitor);
logical_monitor->number = number;
logical_monitor->number = monitor_number;
logical_monitor->winsys_id = main_output->winsys_id;
logical_monitor->scale = main_output->scale;
logical_monitor->in_fullscreen = -1;
logical_monitor->rect = *layout;
logical_monitor->rect.x = x;
logical_monitor->rect.y = y;
meta_monitor_get_dimensions (monitor,
&logical_monitor->rect.width,
&logical_monitor->rect.height);
is_presentation = TRUE;
outputs = meta_monitor_get_outputs (monitor);
for (l = outputs; l; l = l->next)
{
MetaOutput *output = l->data;
output->crtc->logical_monitor = logical_monitor;
is_presentation = is_presentation && output->is_presentation;
}
logical_monitor->is_presentation = is_presentation;
logical_monitor->monitors = g_list_append (logical_monitor->monitors,
monitor);
logical_monitor->is_presentation = TRUE;
meta_logical_monitor_add_monitor (logical_monitor, monitor);
return logical_monitor;
}
@@ -95,7 +139,8 @@ meta_logical_monitor_add_monitor (MetaLogicalMonitor *logical_monitor,
MetaOutput *output = l_output->data;
is_presentation = is_presentation && output->is_presentation;
output->crtc->logical_monitor = logical_monitor;
if (output->crtc)
output->crtc->logical_monitor = logical_monitor;
}
}

View File

@@ -25,6 +25,7 @@
#include <glib-object.h>
#include "backends/meta-monitor.h"
#include "backends/meta-monitor-config-manager.h"
#include "backends/meta-monitor-manager-private.h"
#include "meta/boxes.h"
@@ -59,10 +60,14 @@ G_DECLARE_FINAL_TYPE (MetaLogicalMonitor, meta_logical_monitor,
META, LOGICAL_MONITOR,
GObject)
MetaLogicalMonitor * meta_logical_monitor_new (MetaMonitor *monitor,
int x,
int y,
int number);
MetaLogicalMonitor * meta_logical_monitor_new (MetaMonitorManager *monitor_manager,
MetaLogicalMonitorConfig *logical_monitor_config,
int monitor_number);
MetaLogicalMonitor * meta_logical_monitor_new_derived (MetaMonitorManager *monitor_manager,
MetaMonitor *monitor,
MetaRectangle *layout,
int monitor_number);
void meta_logical_monitor_add_monitor (MetaLogicalMonitor *logical_monitor,
MetaMonitor *monitor);

View File

@@ -34,9 +34,16 @@
#define ALL_TRANSFORMS ((1 << (META_MONITOR_TRANSFORM_FLIPPED_270 + 1)) - 1)
#define MAX_MONITORS 5
#define MAX_OUTPUTS (MAX_MONITORS * 2)
#define MAX_CRTCS (MAX_MONITORS * 2)
#define MAX_MODES (MAX_MONITORS * 4)
struct _MetaMonitorManagerDummy
{
MetaMonitorManager parent_instance;
gboolean is_transform_handled;
};
struct _MetaMonitorManagerDummyClass
@@ -46,6 +53,159 @@ struct _MetaMonitorManagerDummyClass
G_DEFINE_TYPE (MetaMonitorManagerDummy, meta_monitor_manager_dummy, META_TYPE_MONITOR_MANAGER);
#define array_last(a, t) \
g_array_index (a, t, a->len - 1)
static void
append_monitor (GArray *modes,
GArray *crtcs,
GArray *outputs,
int scale)
{
MetaCrtcMode modes_decl[] = {
{
.width = 800,
.height = 600,
.refresh_rate = 60.0
},
{
.width = 1024,
.height = 768,
.refresh_rate = 60.0
}
};
MetaCrtc crtc;
MetaOutput output;
unsigned int i;
for (i = 0; i < G_N_ELEMENTS (modes_decl); i++)
modes_decl[i].mode_id = modes->len + i;
g_array_append_vals (modes, modes_decl, G_N_ELEMENTS (modes_decl));
crtc = (MetaCrtc) {
.crtc_id = crtcs->len + 1,
.all_transforms = ALL_TRANSFORMS,
};
g_array_append_val (crtcs, crtc);
output = (MetaOutput) {
.winsys_id = outputs->len + 1,
.name = g_strdup_printf ("LVDS%d", outputs->len + 1),
.vendor = g_strdup ("MetaProducts Inc."),
.product = g_strdup ("MetaMonitor"),
.serial = g_strdup_printf ("0xC0FFEE-%d", outputs->len + 1),
.suggested_x = -1,
.suggested_y = -1,
.width_mm = 222,
.height_mm = 125,
.subpixel_order = COGL_SUBPIXEL_ORDER_UNKNOWN,
.preferred_mode = &array_last (modes, MetaCrtcMode),
.n_possible_clones = 0,
.backlight = -1,
.connector_type = META_CONNECTOR_TYPE_LVDS,
.scale = scale,
};
output.modes = g_new0 (MetaCrtcMode *, G_N_ELEMENTS (modes_decl));
for (i = 0; i < G_N_ELEMENTS (modes_decl); i++)
output.modes[i] = &g_array_index (modes, MetaCrtcMode,
modes->len - (i + 1));
output.n_modes = G_N_ELEMENTS (modes_decl);
output.possible_crtcs = g_new0 (MetaCrtc *, 1);
output.possible_crtcs[0] = &array_last (crtcs, MetaCrtc);
output.n_possible_crtcs = 1;
g_array_append_val (outputs, output);
}
static void
append_tiled_monitor (GArray *modes,
GArray *crtcs,
GArray *outputs,
int scale)
{
MetaCrtcMode modes_decl[] = {
{
.width = 800,
.height = 600,
.refresh_rate = 60.0
},
{
.width = 512,
.height = 768,
.refresh_rate = 60.0
}
};
MetaCrtc crtcs_decl[] = {
{
.all_transforms = ALL_TRANSFORMS,
},
{
.all_transforms = ALL_TRANSFORMS,
},
};
MetaOutput output;
unsigned int i;
uint32_t tile_group_id;
for (i = 0; i < G_N_ELEMENTS (modes_decl); i++)
modes_decl[i].mode_id = modes->len + i;
g_array_append_vals (modes, modes_decl, G_N_ELEMENTS (modes_decl));
for (i = 0; i < G_N_ELEMENTS (crtcs_decl); i++)
crtcs_decl[i].crtc_id = crtcs->len + i + 1;
g_array_append_vals (crtcs, crtcs_decl, G_N_ELEMENTS (crtcs_decl));
tile_group_id = outputs->len + 1;
for (i = 0; i < G_N_ELEMENTS (crtcs_decl); i++)
{
MetaCrtcMode *preferred_mode;
unsigned int j;
preferred_mode = &array_last (modes, MetaCrtcMode),
output = (MetaOutput) {
.winsys_id = outputs->len + 1,
.name = g_strdup_printf ("LVDS%d", outputs->len + 1),
.vendor = g_strdup ("MetaProducts Inc."),
.product = g_strdup ("MetaMonitor"),
.serial = g_strdup_printf ("0xC0FFEE-%d", outputs->len + 1),
.suggested_x = -1,
.suggested_y = -1,
.width_mm = 222,
.height_mm = 125,
.subpixel_order = COGL_SUBPIXEL_ORDER_UNKNOWN,
.preferred_mode = preferred_mode,
.n_possible_clones = 0,
.backlight = -1,
.connector_type = META_CONNECTOR_TYPE_LVDS,
.tile_info = (MetaTileInfo) {
.group_id = tile_group_id,
.max_h_tiles = G_N_ELEMENTS (crtcs_decl),
.max_v_tiles = 1,
.loc_h_tile = i,
.loc_v_tile = 0,
.tile_w = preferred_mode->width,
.tile_h = preferred_mode->height
},
.scale = scale
};
output.modes = g_new0 (MetaCrtcMode *, G_N_ELEMENTS (modes_decl));
for (j = 0; j < G_N_ELEMENTS (modes_decl); j++)
output.modes[j] = &g_array_index (modes, MetaCrtcMode,
modes->len - (j + 1));
output.n_modes = G_N_ELEMENTS (modes_decl);
output.possible_crtcs = g_new0 (MetaCrtc *, G_N_ELEMENTS (crtcs_decl));
for (j = 0; j < G_N_ELEMENTS (crtcs_decl); j++)
output.possible_crtcs[j] = &g_array_index (crtcs, MetaCrtc,
crtcs->len - (j + 1));
output.n_possible_crtcs = G_N_ELEMENTS (crtcs_decl);
g_array_append_val (outputs, output);
}
}
static void
meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager)
{
@@ -53,8 +213,12 @@ meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager)
int *monitor_scales = NULL;
const char *num_monitors_str;
const char *monitor_scales_str;
const char *tiled_monitors_str;
gboolean tiled_monitors;
unsigned int i;
int current_x = 0;
GArray *outputs;
GArray *crtcs;
GArray *modes;
/* To control what monitor configuration is generated, there are two available
* environmental variables that can be used:
@@ -68,11 +232,17 @@ meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager)
*
* A comma separated list that specifies the scales of the dummy monitors.
*
* MUTTER_DEBUG_TILED_DUMMY_MONITORS
*
* If set to "1" the dummy monitors will emulate being tiled, i.e. each have a
* unique tile group id, made up of multiple outputs and CRTCs.
*
* For example the following configuration results in two monitors, where the
* first one has the monitor scale 1, and the other the monitor scale 2.
*
* MUTTER_DEBUG_NUM_DUMMY_MONITORS=2
* MUTTER_DEBUG_DUMMY_MONITOR_SCALES=1,2
* MUTTER_DEBUG_TILED_DUMMY_MONITORS=1
*/
num_monitors_str = getenv ("MUTTER_DEBUG_NUM_DUMMY_MONITORS");
if (num_monitors_str)
@@ -83,6 +253,13 @@ meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager)
meta_warning ("Invalid number of dummy monitors");
num_monitors = 1;
}
if (num_monitors > MAX_MONITORS)
{
meta_warning ("Clamping monitor count to max (%d)",
MAX_MONITORS);
num_monitors = MAX_MONITORS;
}
}
monitor_scales = g_newa (int, num_monitors);
@@ -109,65 +286,34 @@ meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager)
g_strfreev (scales_str_list);
}
tiled_monitors_str = g_getenv ("MUTTER_DEBUG_TILED_DUMMY_MONITORS");
tiled_monitors = g_strcmp0 (tiled_monitors_str, "1") == 0;
manager->max_screen_width = 65535;
manager->max_screen_height = 65535;
manager->screen_width = 1024 * num_monitors;
manager->screen_height = 768;
manager->modes = g_new0 (MetaCrtcMode, 1);
manager->n_modes = 1;
manager->modes[0].mode_id = 0;
manager->modes[0].width = 1024;
manager->modes[0].height = 768;
manager->modes[0].refresh_rate = 60.0;
manager->crtcs = g_new0 (MetaCrtc, num_monitors);
manager->n_crtcs = num_monitors;
manager->outputs = g_new0 (MetaOutput, num_monitors);
manager->n_outputs = num_monitors;
modes = g_array_sized_new (FALSE, TRUE, sizeof (MetaCrtcMode), MAX_MODES);
crtcs = g_array_sized_new (FALSE, TRUE, sizeof (MetaCrtc), MAX_CRTCS);
outputs = g_array_sized_new (FALSE, TRUE, sizeof (MetaOutput), MAX_OUTPUTS);
for (i = 0; i < num_monitors; i++)
{
manager->crtcs[i].crtc_id = i + 1;
manager->crtcs[i].rect.x = current_x;
manager->crtcs[i].rect.y = 0;
manager->crtcs[i].rect.width = manager->modes[0].width;
manager->crtcs[i].rect.height = manager->modes[0].height;
manager->crtcs[i].current_mode = &manager->modes[0];
manager->crtcs[i].transform = META_MONITOR_TRANSFORM_NORMAL;
manager->crtcs[i].all_transforms = ALL_TRANSFORMS;
manager->crtcs[i].is_dirty = FALSE;
manager->crtcs[i].logical_monitor = NULL;
current_x += manager->crtcs[i].rect.width;
manager->outputs[i].crtc = &manager->crtcs[i];
manager->outputs[i].winsys_id = i + 1;
manager->outputs[i].name = g_strdup_printf ("LVDS%d", i + 1);
manager->outputs[i].vendor = g_strdup ("MetaProducts Inc.");
manager->outputs[i].product = g_strdup ("unknown");
manager->outputs[i].serial = g_strdup ("0xC0FFEE");
manager->outputs[i].suggested_x = -1;
manager->outputs[i].suggested_y = -1;
manager->outputs[i].width_mm = 222;
manager->outputs[i].height_mm = 125;
manager->outputs[i].subpixel_order = COGL_SUBPIXEL_ORDER_UNKNOWN;
manager->outputs[i].preferred_mode = &manager->modes[0];
manager->outputs[i].n_modes = 1;
manager->outputs[i].modes = g_new0 (MetaCrtcMode *, 1);
manager->outputs[i].modes[0] = &manager->modes[0];
manager->outputs[i].n_possible_crtcs = 1;
manager->outputs[i].possible_crtcs = g_new0 (MetaCrtc *, 1);
manager->outputs[i].possible_crtcs[0] = &manager->crtcs[i];
manager->outputs[i].n_possible_clones = 0;
manager->outputs[i].possible_clones = g_new0 (MetaOutput *, 0);
manager->outputs[i].backlight = -1;
manager->outputs[i].backlight_min = 0;
manager->outputs[i].backlight_max = 0;
manager->outputs[i].connector_type = META_CONNECTOR_TYPE_LVDS;
manager->outputs[i].scale = monitor_scales[i];
if (tiled_monitors)
append_tiled_monitor (modes, crtcs, outputs, monitor_scales[i]);
else
append_monitor (modes, crtcs, outputs, monitor_scales[i]);
}
manager->modes = (MetaCrtcMode *) modes->data;
manager->n_modes = modes->len;
manager->crtcs = (MetaCrtc *) crtcs->data;
manager->n_crtcs = crtcs->len;
manager->outputs = (MetaOutput *) outputs->data;
manager->n_outputs = outputs->len;
g_array_free (modes, FALSE);
g_array_free (crtcs, FALSE);
g_array_free (outputs, FALSE);
}
static void
@@ -191,7 +337,6 @@ apply_crtc_assignments (MetaMonitorManager *manager,
unsigned int n_outputs)
{
unsigned i;
int screen_width = 0, screen_height = 0;
for (i = 0; i < n_crtcs; i++)
{
@@ -234,9 +379,6 @@ apply_crtc_assignments (MetaMonitorManager *manager,
crtc->current_mode = mode;
crtc->transform = crtc_info->transform;
screen_width = MAX (screen_width, crtc_info->x + width);
screen_height = MAX (screen_height, crtc_info->y + height);
for (j = 0; j < crtc_info->outputs->len; j++)
{
output = ((MetaOutput**)crtc_info->outputs->pdata)[j];
@@ -290,6 +432,32 @@ apply_crtc_assignments (MetaMonitorManager *manager,
output->crtc = NULL;
output->is_primary = FALSE;
}
}
static void
update_screen_size (MetaMonitorManager *manager,
MetaMonitorsConfig *config)
{
GList *l;
int screen_width = 0;
int screen_height = 0;
for (l = config->logical_monitor_configs; l; l = l->next)
{
MetaLogicalMonitorConfig *logical_monitor_config = l->data;
int right_edge;
int bottom_edge;
right_edge = (logical_monitor_config->layout.width +
logical_monitor_config->layout.x);
if (right_edge > screen_width)
screen_width = right_edge;
bottom_edge = (logical_monitor_config->layout.height +
logical_monitor_config->layout.y);
if (bottom_edge > screen_height)
screen_height = bottom_edge;
}
manager->screen_width = screen_width;
manager->screen_height = screen_height;
@@ -317,11 +485,30 @@ meta_monitor_manager_dummy_apply_monitors_config (MetaMonitorManager *manager,
g_ptr_array_free (crtc_infos, TRUE);
g_ptr_array_free (output_infos, TRUE);
update_screen_size (manager, config);
meta_monitor_manager_rebuild (manager, config);
return TRUE;
}
static void
legacy_calculate_screen_size (MetaMonitorManager *manager)
{
unsigned int i;
int width = 0, height = 0;
for (i = 0; i < manager->n_crtcs; i++)
{
MetaCrtc *crtc = &manager->crtcs[i];
width = MAX (width, crtc->rect.x + crtc->rect.width);
height = MAX (height, crtc->rect.y + crtc->rect.height);
}
manager->screen_width = width;
manager->screen_height = height;
}
static void
meta_monitor_manager_dummy_apply_config (MetaMonitorManager *manager,
MetaCrtcInfo **crtcs,
@@ -331,9 +518,21 @@ meta_monitor_manager_dummy_apply_config (MetaMonitorManager *manager,
{
apply_crtc_assignments (manager, crtcs, n_crtcs, outputs, n_outputs);
legacy_calculate_screen_size (manager);
meta_monitor_manager_rebuild_derived (manager);
}
static gboolean
meta_monitor_manager_dummy_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform)
{
MetaMonitorManagerDummy *manager_dummy = META_MONITOR_MANAGER_DUMMY (manager);
return manager_dummy->is_transform_handled;
}
static void
meta_monitor_manager_dummy_class_init (MetaMonitorManagerDummyClass *klass)
{
@@ -343,9 +542,18 @@ meta_monitor_manager_dummy_class_init (MetaMonitorManagerDummyClass *klass)
manager_class->ensure_initial_config = meta_monitor_manager_dummy_ensure_initial_config;
manager_class->apply_monitors_config = meta_monitor_manager_dummy_apply_monitors_config;
manager_class->apply_configuration = meta_monitor_manager_dummy_apply_config;
manager_class->is_transform_handled = meta_monitor_manager_dummy_is_transform_handled;
}
static void
meta_monitor_manager_dummy_init (MetaMonitorManagerDummy *manager)
{
const char *nested_offscreen_transform;
nested_offscreen_transform =
g_getenv ("MUTTER_DEBUG_NESTED_OFFSCREEN_TRANSFORM");
if (g_strcmp0 (nested_offscreen_transform, "1") == 0)
manager->is_transform_handled = FALSE;
else
manager->is_transform_handled = TRUE;
}

View File

@@ -345,6 +345,9 @@ struct _MetaMonitorManagerClass
void (*tiled_monitor_removed) (MetaMonitorManager *,
MetaMonitor *);
gboolean (*is_transform_handled) (MetaMonitorManager *,
MetaCrtc *,
MetaMonitorTransform);
};
void meta_monitor_manager_rebuild (MetaMonitorManager *manager,
@@ -420,7 +423,7 @@ void meta_monitor_manager_read_current_state (MetaMonitorManager *
void meta_monitor_manager_on_hotplug (MetaMonitorManager *manager);
gboolean meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gfloat matrix[6]);
void meta_monitor_manager_tiled_monitor_added (MetaMonitorManager *manager,
@@ -428,6 +431,10 @@ void meta_monitor_manager_tiled_monitor_added (MetaMonitorManager
void meta_monitor_manager_tiled_monitor_removed (MetaMonitorManager *manager,
MetaMonitor *monitor);
gboolean meta_monitor_manager_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform);
MetaMonitorsConfig * meta_monitor_manager_ensure_configured (MetaMonitorManager *manager);
void meta_monitor_manager_update_logical_state (MetaMonitorManager *manager,

View File

@@ -108,47 +108,6 @@ logical_monitor_from_layout (MetaMonitorManager *manager,
return NULL;
}
static MetaLogicalMonitor *
create_logical_monitor_from_config (MetaMonitorManager *manager,
MetaLogicalMonitorConfig *logical_monitor_config,
int monitor_number)
{
MetaLogicalMonitor *logical_monitor;
GList *monitor_configs;
MetaMonitorConfig *first_monitor_config;
MetaMonitorSpec *first_monitor_spec;
MetaMonitor *first_monitor;
GList *l;
monitor_configs = logical_monitor_config->monitor_configs;
first_monitor_config = g_list_first (monitor_configs)->data;
first_monitor_spec = first_monitor_config->monitor_spec;
first_monitor =
meta_monitor_manager_get_monitor_from_spec (manager, first_monitor_spec);
/* Create logical monitor from the first monitor. */
logical_monitor = meta_logical_monitor_new (first_monitor,
logical_monitor_config->layout.x,
logical_monitor_config->layout.y,
monitor_number);
/* Add the other monitors. */
for (l = monitor_configs->next; l; l = l->next)
{
MetaMonitorConfig *monitor_config = l->data;
MetaMonitorSpec *monitor_spec;
MetaMonitor *monitor;
monitor_spec = monitor_config->monitor_spec;
monitor = meta_monitor_manager_get_monitor_from_spec (manager,
monitor_spec);
meta_logical_monitor_add_monitor (logical_monitor, monitor);
}
return logical_monitor;
}
static void
meta_monitor_manager_rebuild_logical_monitors (MetaMonitorManager *manager,
MetaMonitorsConfig *config)
@@ -165,10 +124,9 @@ meta_monitor_manager_rebuild_logical_monitors (MetaMonitorManager *manager,
MetaLogicalMonitorConfig *logical_monitor_config = l->data;
MetaLogicalMonitor *logical_monitor;
logical_monitor =
create_logical_monitor_from_config (manager,
logical_monitor_config,
monitor_number);
logical_monitor = meta_logical_monitor_new (manager,
logical_monitor_config,
monitor_number);
monitor_number++;
if (logical_monitor_config->is_primary)
@@ -190,16 +148,16 @@ meta_monitor_manager_rebuild_logical_monitors (MetaMonitorManager *manager,
}
static void
derive_monitor_position (MetaMonitor *monitor,
int *x,
int *y)
derive_monitor_layout (MetaMonitor *monitor,
MetaRectangle *layout)
{
MetaOutput *main_output;
main_output = meta_monitor_get_main_output (monitor);
layout->x = main_output->crtc->rect.x;
layout->y = main_output->crtc->rect.y;
*x = main_output->crtc->rect.x;
*y = main_output->crtc->rect.y;
meta_monitor_derive_dimensions (monitor, &layout->width, &layout->height);
}
static void
@@ -221,8 +179,7 @@ meta_monitor_manager_rebuild_logical_monitors_derived (MetaMonitorManager *manag
if (!meta_monitor_is_active (monitor))
continue;
derive_monitor_position (monitor, &layout.x, &layout.y);
meta_monitor_get_dimensions (monitor, &layout.width, &layout.height);
derive_monitor_layout (monitor, &layout);
logical_monitor = logical_monitor_from_layout (manager, logical_monitors,
&layout);
if (logical_monitor)
@@ -231,12 +188,10 @@ meta_monitor_manager_rebuild_logical_monitors_derived (MetaMonitorManager *manag
}
else
{
int x, y;
derive_monitor_position (monitor, &x, &y);
logical_monitor = meta_logical_monitor_new (monitor,
x, y,
monitor_number);
logical_monitor = meta_logical_monitor_new_derived (manager,
monitor,
&layout,
monitor_number);
logical_monitors = g_list_append (logical_monitors, logical_monitor);
monitor_number++;
}
@@ -1770,6 +1725,17 @@ meta_monitor_manager_tiled_monitor_removed (MetaMonitorManager *manager,
manager_class->tiled_monitor_removed (manager, monitor);
}
gboolean
meta_monitor_manager_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform)
{
MetaMonitorManagerClass *manager_class =
META_MONITOR_MANAGER_GET_CLASS (manager);
return manager_class->is_transform_handled (manager, crtc, transform);
}
void
meta_monitor_manager_read_current_state (MetaMonitorManager *manager)
{
@@ -2014,18 +1980,15 @@ meta_monitor_manager_on_hotplug (MetaMonitorManager *manager)
static gboolean
calculate_viewport_matrix (MetaMonitorManager *manager,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gfloat viewport[6])
{
gfloat x, y, width, height;
if (!output->crtc)
return FALSE;
x = (float) output->crtc->rect.x / manager->screen_width;
y = (float) output->crtc->rect.y / manager->screen_height;
width = (float) output->crtc->rect.width / manager->screen_width;
height = (float) output->crtc->rect.height / manager->screen_height;
x = (float) logical_monitor->rect.x / manager->screen_width;
y = (float) logical_monitor->rect.y / manager->screen_height;
width = (float) logical_monitor->rect.width / manager->screen_width;
height = (float) logical_monitor->rect.height / manager->screen_height;
viewport[0] = width;
viewport[1] = 0.0f;
@@ -2052,15 +2015,21 @@ multiply_matrix (float a[6],
gboolean
meta_monitor_manager_get_monitor_matrix (MetaMonitorManager *manager,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gfloat matrix[6])
{
MetaMonitor *main_monitor;
MetaOutput *main_output;
MetaMonitorTransform transform;
gfloat viewport[9];
if (!calculate_viewport_matrix (manager, output, viewport))
if (!calculate_viewport_matrix (manager, logical_monitor, viewport))
return FALSE;
multiply_matrix (viewport, transform_matrices[output->crtc->transform],
main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
main_output = meta_monitor_get_main_output (main_monitor);
transform = main_output->crtc->transform;
multiply_matrix (viewport, transform_matrices[transform],
matrix);
return TRUE;
}

View File

@@ -215,11 +215,22 @@ meta_monitor_is_laptop_panel (MetaMonitor *monitor)
}
void
meta_monitor_get_dimensions (MetaMonitor *monitor,
int *width,
int *height)
meta_monitor_get_current_resolution (MetaMonitor *monitor,
int *width,
int *height)
{
META_MONITOR_GET_CLASS (monitor)->get_dimensions (monitor, width, height);
MetaMonitorMode *mode = meta_monitor_get_current_mode (monitor);
*width = mode->spec.width;
*height = mode->spec.height;
}
void
meta_monitor_derive_dimensions (MetaMonitor *monitor,
int *width,
int *height)
{
META_MONITOR_GET_CLASS (monitor)->derive_dimensions (monitor, width, height);
}
void
@@ -362,9 +373,9 @@ meta_monitor_normal_get_main_output (MetaMonitor *monitor)
}
static void
meta_monitor_normal_get_dimensions (MetaMonitor *monitor,
int *width,
int *height)
meta_monitor_normal_derive_dimensions (MetaMonitor *monitor,
int *width,
int *height)
{
MetaOutput *output;
@@ -384,7 +395,7 @@ meta_monitor_normal_class_init (MetaMonitorNormalClass *klass)
MetaMonitorClass *monitor_class = META_MONITOR_CLASS (klass);
monitor_class->get_main_output = meta_monitor_normal_get_main_output;
monitor_class->get_dimensions = meta_monitor_normal_get_dimensions;
monitor_class->derive_dimensions = meta_monitor_normal_derive_dimensions;
}
uint32_t
@@ -488,14 +499,37 @@ meta_monitor_tiled_calculate_tiled_size (MetaMonitor *monitor,
*out_height = height;
}
static void
meta_monitor_tiled_generate_modes (MetaMonitorTiled *monitor_tiled)
static gboolean
is_monitor_mode_assigned (MetaMonitor *monitor,
MetaMonitorMode *mode)
{
MetaMonitorPrivate *priv = meta_monitor_get_instance_private (monitor);
GList *l;
int i;
for (l = priv->outputs, i = 0; l; l = l->next, i++)
{
MetaOutput *output = l->data;
MetaMonitorCrtcMode *monitor_crtc_mode = &mode->crtc_modes[i];
if (monitor_crtc_mode->crtc_mode &&
(!output->crtc ||
output->crtc->current_mode != monitor_crtc_mode->crtc_mode))
return FALSE;
else if (!monitor_crtc_mode->crtc_mode && output->crtc)
return FALSE;
}
return TRUE;
}
static MetaMonitorMode *
create_tiled_monitor_mode (MetaMonitorTiled *monitor_tiled)
{
MetaMonitor *monitor = META_MONITOR (monitor_tiled);
MetaMonitorPrivate *monitor_priv =
meta_monitor_get_instance_private (monitor);
MetaMonitorMode *mode;
gboolean preferred_mode_is_current;
GList *l;
int i;
@@ -503,9 +537,8 @@ meta_monitor_tiled_generate_modes (MetaMonitorTiled *monitor_tiled)
meta_monitor_tiled_calculate_tiled_size (monitor,
&mode->spec.width,
&mode->spec.height);
mode->crtc_modes = g_new (MetaMonitorCrtcMode,
g_list_length (monitor_priv->outputs));
preferred_mode_is_current = TRUE;
mode->crtc_modes = g_new0 (MetaMonitorCrtcMode,
g_list_length (monitor_priv->outputs));
for (l = monitor_priv->outputs, i = 0; l; l = l->next, i++)
{
MetaOutput *output = l->data;
@@ -527,19 +560,103 @@ meta_monitor_tiled_generate_modes (MetaMonitorTiled *monitor_tiled)
preferred_crtc_mode->refresh_rate));
mode->spec.refresh_rate = preferred_crtc_mode->refresh_rate;
if (!output->crtc ||
mode->crtc_modes[i].crtc_mode != output->crtc->current_mode)
preferred_mode_is_current = FALSE;
}
return mode;
}
static MetaMonitorMode *
create_untiled_monitor_mode (MetaMonitorTiled *monitor_tiled,
MetaOutput *main_output,
MetaCrtcMode *crtc_mode)
{
MetaMonitor *monitor = META_MONITOR (monitor_tiled);
MetaMonitorPrivate *monitor_priv =
meta_monitor_get_instance_private (monitor);
MetaMonitorMode *mode;
GList *l;
int i;
/*
* Assume modes with a resolution identical to the tile sizes are tiled
* modes.
*/
if (crtc_mode->width == (int) main_output->tile_info.tile_w &&
crtc_mode->height == (int) main_output->tile_info.tile_h)
return NULL;
mode = g_new0 (MetaMonitorMode, 1);
mode->spec = (MetaMonitorModeSpec) {
.width = crtc_mode->width,
.height = crtc_mode->height,
.refresh_rate = crtc_mode->refresh_rate
};
mode->crtc_modes = g_new0 (MetaMonitorCrtcMode,
g_list_length (monitor_priv->outputs));
for (l = monitor_priv->outputs, i = 0; l; l = l->next, i++)
{
MetaOutput *output = l->data;
if (output == main_output)
{
mode->crtc_modes[i] = (MetaMonitorCrtcMode) {
.x = 0,
.y = 0,
.output = output,
.crtc_mode = crtc_mode
};
}
else
{
mode->crtc_modes[i] = (MetaMonitorCrtcMode) {
.output = output,
.crtc_mode = NULL
};
}
}
return mode;
}
static void
meta_monitor_tiled_generate_modes (MetaMonitorTiled *monitor_tiled)
{
MetaMonitor *monitor = META_MONITOR (monitor_tiled);
MetaMonitorPrivate *monitor_priv =
meta_monitor_get_instance_private (monitor);
MetaMonitorMode *mode;
MetaOutput *main_output;
unsigned int i;
mode = create_tiled_monitor_mode (monitor_tiled);
monitor_priv->modes = g_list_append (monitor_priv->modes, mode);
monitor_priv->preferred_mode = mode;
if (preferred_mode_is_current)
if (is_monitor_mode_assigned (monitor, mode))
monitor_priv->current_mode = mode;
/* TODO: Add single tile modes */
main_output = meta_monitor_get_main_output (monitor);
for (i = 0; i < main_output->n_modes; i++)
{
MetaCrtcMode *crtc_mode = main_output->modes[i];
mode = create_untiled_monitor_mode (monitor_tiled,
main_output,
crtc_mode);
if (mode)
{
monitor_priv->modes = g_list_append (monitor_priv->modes, mode);
if (is_monitor_mode_assigned (monitor, mode))
{
g_assert (!monitor_priv->current_mode);
monitor_priv->current_mode = mode;
}
}
}
}
MetaMonitorTiled *
@@ -578,11 +695,34 @@ meta_monitor_tiled_get_main_output (MetaMonitor *monitor)
}
static void
meta_monitor_tiled_get_dimensions (MetaMonitor *monitor,
int *width,
int *height)
meta_monitor_tiled_derive_dimensions (MetaMonitor *monitor,
int *out_width,
int *out_height)
{
meta_monitor_tiled_calculate_tiled_size (monitor, width, height);
MetaMonitorPrivate *monitor_priv =
meta_monitor_get_instance_private (monitor);
GList *l;
int min_x, min_y, max_x, max_y;
min_x = INT_MAX;
min_y = INT_MAX;
max_x = 0;
max_y = 0;
for (l = monitor_priv->outputs; l; l = l->next)
{
MetaOutput *output = l->data;
if (!output->crtc)
continue;
min_x = MIN (output->crtc->rect.x, min_x);
min_y = MIN (output->crtc->rect.y, min_y);
max_x = MAX (output->crtc->rect.x + output->crtc->rect.width, max_x);
max_y = MAX (output->crtc->rect.y + output->crtc->rect.height, max_y);
}
*out_width = max_x - min_x;
*out_height = max_y - min_y;
}
static void
@@ -611,7 +751,7 @@ meta_monitor_tiled_class_init (MetaMonitorTiledClass *klass)
object_class->finalize = meta_monitor_tiled_finalize;
monitor_class->get_main_output = meta_monitor_tiled_get_main_output;
monitor_class->get_dimensions = meta_monitor_tiled_get_dimensions;
monitor_class->derive_dimensions = meta_monitor_tiled_derive_dimensions;
}
static void
@@ -685,27 +825,6 @@ meta_monitor_get_current_mode (MetaMonitor *monitor)
return priv->current_mode;
}
static gboolean
is_monitor_mode_assigned (MetaMonitor *monitor,
MetaMonitorMode *mode)
{
MetaMonitorPrivate *priv = meta_monitor_get_instance_private (monitor);
GList *l;
int i;
for (l = priv->outputs, i = 0; l; l = l->next, i++)
{
MetaOutput *output = l->data;
MetaMonitorCrtcMode *monitor_crtc_mode = &mode->crtc_modes[i];
if (!output->crtc ||
output->crtc->current_mode != monitor_crtc_mode->crtc_mode)
return FALSE;
}
return TRUE;
}
void
meta_monitor_derive_current_mode (MetaMonitor *monitor)
{

View File

@@ -65,9 +65,9 @@ struct _MetaMonitorClass
GObjectClass parent_class;
MetaOutput * (* get_main_output) (MetaMonitor *monitor);
void (* get_dimensions) (MetaMonitor *monitor,
int *width,
int *height);
void (* derive_dimensions) (MetaMonitor *monitor,
int *width,
int *height);
};
#define META_TYPE_MONITOR_NORMAL (meta_monitor_normal_get_type ())
@@ -99,9 +99,13 @@ gboolean meta_monitor_is_laptop_panel (MetaMonitor *monitor);
GList * meta_monitor_get_outputs (MetaMonitor *monitor);
void meta_monitor_get_dimensions (MetaMonitor *monitor,
int *width,
int *height);
void meta_monitor_get_current_resolution (MetaMonitor *monitor,
int *width,
int *height);
void meta_monitor_derive_dimensions (MetaMonitor *monitor,
int *width,
int *height);
void meta_monitor_get_physical_dimensions (MetaMonitor *monitor,
int *width_mm,

View File

@@ -31,6 +31,8 @@
#include <clutter/evdev/clutter-evdev.h>
#include <libupower-glib/upower.h>
#include "clutter/egl/clutter-egl.h"
#include "clutter/evdev/clutter-evdev.h"
#include "meta-barrier-native.h"
#include "meta-idle-monitor-native.h"
#include "meta-monitor-manager-kms.h"
@@ -322,6 +324,7 @@ meta_backend_native_warp_pointer (MetaBackend *backend,
{
ClutterDeviceManager *manager = clutter_device_manager_get_default ();
ClutterInputDevice *device = clutter_device_manager_get_core_device (manager, CLUTTER_POINTER_DEVICE);
MetaCursorTracker *cursor_tracker = meta_backend_get_cursor_tracker (backend);
/* XXX */
guint32 time_ = 0;
@@ -330,7 +333,7 @@ meta_backend_native_warp_pointer (MetaBackend *backend,
clutter_evdev_warp_pointer (device, time_, x, y);
/* Warp displayed pointer cursor. */
meta_backend_set_cursor_position (backend, x, y);
meta_cursor_tracker_update_position (cursor_tracker, x, y);
}
static MetaLogicalMonitor *
@@ -530,3 +533,46 @@ meta_activate_session (void)
return TRUE;
}
void
meta_backend_native_pause (MetaBackendNative *native)
{
MetaBackend *backend = META_BACKEND (native);
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
MetaMonitorManagerKms *monitor_manager_kms =
META_MONITOR_MANAGER_KMS (monitor_manager);
clutter_evdev_release_devices ();
clutter_egl_freeze_master_clock ();
meta_monitor_manager_kms_pause (monitor_manager_kms);
}
void meta_backend_native_resume (MetaBackendNative *native)
{
MetaBackend *backend = META_BACKEND (native);
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
MetaMonitorManagerKms *monitor_manager_kms =
META_MONITOR_MANAGER_KMS (monitor_manager);
MetaCursorRenderer *cursor_renderer;
MetaCursorRendererNative *cursor_renderer_native;
ClutterActor *stage;
MetaIdleMonitor *idle_monitor;
meta_monitor_manager_kms_resume (monitor_manager_kms);
clutter_evdev_reclaim_devices ();
clutter_egl_thaw_master_clock ();
stage = meta_backend_get_stage (backend);
clutter_actor_queue_redraw (stage);
cursor_renderer = meta_backend_get_cursor_renderer (backend);
cursor_renderer_native = META_CURSOR_RENDERER_NATIVE (cursor_renderer);
meta_cursor_renderer_native_force_update (cursor_renderer_native);
idle_monitor = meta_backend_get_idle_monitor (backend, 0);
meta_idle_monitor_native_reset_idletime (idle_monitor);
}

View File

@@ -34,4 +34,8 @@ G_DECLARE_FINAL_TYPE (MetaBackendNative, meta_backend_native,
gboolean meta_activate_vt (int vt, GError **error);
void meta_backend_native_pause (MetaBackendNative *backend_native);
void meta_backend_native_resume (MetaBackendNative *backend_native);
#endif /* META_BACKEND_NATIVE_H */

View File

@@ -29,6 +29,7 @@
#include "meta-backend-native.h"
#include "meta-input-settings-native.h"
#include "backends/meta-logical-monitor.h"
G_DEFINE_TYPE (MetaInputSettingsNative, meta_input_settings_native, META_TYPE_INPUT_SETTINGS)
@@ -390,19 +391,19 @@ meta_input_settings_native_set_tablet_mapping (MetaInputSettings *settings,
static void
meta_input_settings_native_set_tablet_keep_aspect (MetaInputSettings *settings,
ClutterInputDevice *device,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gboolean keep_aspect)
{
gdouble output_aspect = 0;
double aspect_ratio = 0;
if (keep_aspect)
{
gint output_width, output_height;
int width, height;
if (output && output->crtc)
if (logical_monitor)
{
output_width = output->crtc->rect.width;
output_height = output->crtc->rect.height;
width = logical_monitor->rect.width;
height = logical_monitor->rect.height;
}
else
{
@@ -411,15 +412,15 @@ meta_input_settings_native_set_tablet_keep_aspect (MetaInputSettings *settings,
backend = meta_get_backend ();
monitor_manager = meta_backend_get_monitor_manager (backend);
meta_monitor_manager_get_screen_limits (monitor_manager,
&output_width,
&output_height);
meta_monitor_manager_get_screen_size (monitor_manager,
&width,
&height);
}
output_aspect = (gdouble) output_width / output_height;
aspect_ratio = (double) width / height;
}
g_object_set (device, "output-aspect-ratio", output_aspect, NULL);
g_object_set (device, "output-aspect-ratio", aspect_ratio, NULL);
}
static void

View File

@@ -24,7 +24,6 @@
#include <gio/gunixfdlist.h>
#include <clutter/clutter.h>
#include <clutter/egl/clutter-egl.h>
#include <clutter/evdev/clutter-evdev.h>
#include <sys/types.h>
@@ -43,6 +42,7 @@
#include "meta-dbus-login1.h"
#include "backends/meta-backend-private.h"
#include "backends/native/meta-backend-native.h"
#include "meta-cursor-renderer-native.h"
#include "meta-idle-monitor-native.h"
#include "meta-renderer-native.h"
@@ -110,42 +110,6 @@ get_seat_proxy (GCancellable *cancellable,
return seat;
}
static void
session_unpause (void)
{
MetaBackend *backend;
MetaRenderer *renderer;
backend = meta_get_backend ();
renderer = meta_backend_get_renderer (backend);
meta_renderer_native_queue_modes_reset (META_RENDERER_NATIVE (renderer));
clutter_evdev_reclaim_devices ();
clutter_egl_thaw_master_clock ();
{
MetaBackend *backend = meta_get_backend ();
MetaCursorRendererNative *cursor_renderer_native =
META_CURSOR_RENDERER_NATIVE (meta_backend_get_cursor_renderer (backend));
ClutterActor *stage = meta_backend_get_stage (backend);
/* When we mode-switch back, we need to immediately queue a redraw
* in case nothing else queued one for us, and force the cursor to
* update. */
clutter_actor_queue_redraw (stage);
meta_cursor_renderer_native_force_update (cursor_renderer_native);
meta_idle_monitor_native_reset_idletime (meta_idle_monitor_get_core ());
}
}
static void
session_pause (void)
{
clutter_evdev_release_devices ();
clutter_egl_freeze_master_clock ();
}
static gboolean
take_device (Login1Session *session_proxy,
int dev_major,
@@ -281,6 +245,8 @@ out:
static void
sync_active (MetaLauncher *self)
{
MetaBackend *backend = meta_get_backend ();
MetaBackendNative *backend_native = META_BACKEND_NATIVE (backend);
gboolean active = login1_session_get_active (LOGIN1_SESSION (self->session_proxy));
if (active == self->session_active)
@@ -289,9 +255,9 @@ sync_active (MetaLauncher *self)
self->session_active = active;
if (active)
session_unpause ();
meta_backend_native_resume (backend_native);
else
session_pause ();
meta_backend_native_pause (backend_native);
}
static void

View File

@@ -52,10 +52,6 @@
#define ALL_TRANSFORMS_MASK ((1 << ALL_TRANSFORMS) - 1)
#define SYNC_TOLERANCE 0.01 /* 1 percent */
/* Try each 50 milleseconds up to half a second to get a proper EDID read */
#define EDID_RETRY_TIMEOUT_MS 50
#define EDID_MAX_NUM_RETRIES 10
typedef struct
{
drmModeConnector *connector;
@@ -112,13 +108,11 @@ struct _MetaMonitorManagerKms
unsigned int n_connectors;
GUdevClient *udev;
guint uevent_handler_id;
GSettings *desktop_settings;
gboolean page_flips_not_supported;
guint handle_hotplug_timeout;
int read_edid_tries;
};
struct _MetaMonitorManagerKmsClass
@@ -331,7 +325,7 @@ read_edid_blob (MetaMonitorManagerKms *manager_kms,
if (!edid_blob)
{
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno),
"Failed to get EDID property blob: %s", strerror (errno));
"%s", strerror (errno));
return NULL;
}
@@ -906,7 +900,8 @@ init_output (MetaOutput *output,
edid = read_output_edid (manager_kms, output, &error);
if (!edid)
{
g_warning ("Failed to read EDID: %s", error->message);
g_warning ("Failed to read EDID blob from %s: %s",
output->name, error->message);
g_error_free (error);
}
}
@@ -1593,76 +1588,6 @@ meta_monitor_manager_kms_set_crtc_gamma (MetaMonitorManager *manager,
drmModeCrtcSetGamma (manager_kms->fd, crtc->crtc_id, size, red, green, blue);
}
static gboolean
has_pending_edid_blob (MetaMonitorManagerKms *manager_kms)
{
drmModeRes *resources;
int n_connectors;
int i, j;
gboolean edid_blob_pending;
resources = drmModeGetResources (manager_kms->fd);
n_connectors = resources->count_connectors;
edid_blob_pending = FALSE;
for (i = 0; i < n_connectors; i++)
{
drmModeConnector *drm_connector;
uint32_t edid_blob_id;
drm_connector = drmModeGetConnector (manager_kms->fd,
resources->connectors[i]);
edid_blob_id = 0;
for (j = 0; j < drm_connector->count_props; j++)
{
drmModePropertyPtr prop;
prop = drmModeGetProperty (manager_kms->fd, drm_connector->props[j]);
if (prop->flags & DRM_MODE_PROP_BLOB &&
g_str_equal (prop->name, "EDID"))
edid_blob_id = drm_connector->prop_values[j];
drmModeFreeProperty (prop);
if (edid_blob_id)
break;
}
drmModeFreeConnector (drm_connector);
if (edid_blob_id)
{
GError *error = NULL;
drmModePropertyBlobPtr edid_blob;
edid_blob = read_edid_blob (manager_kms, edid_blob_id, &error);
if (!edid_blob &&
g_error_matches (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
{
edid_blob_pending = TRUE;
g_error_free (error);
}
else if (!edid_blob)
{
g_error_free (error);
}
else
{
drmModeFreePropertyBlob (edid_blob);
}
}
if (edid_blob_pending)
break;
}
drmModeFreeResources (resources);
return edid_blob_pending;
}
static void
handle_hotplug_event (MetaMonitorManager *manager)
{
@@ -1670,37 +1595,6 @@ handle_hotplug_event (MetaMonitorManager *manager)
meta_monitor_manager_on_hotplug (manager);
}
static gboolean
handle_hotplug_event_timeout (gpointer user_data)
{
MetaMonitorManager *manager = user_data;
MetaMonitorManagerKms *manager_kms = META_MONITOR_MANAGER_KMS (user_data);
if (!has_pending_edid_blob (manager_kms))
{
handle_hotplug_event (manager);
manager_kms->handle_hotplug_timeout = 0;
return G_SOURCE_REMOVE;
}
manager_kms->read_edid_tries++;
if (manager_kms->read_edid_tries > EDID_MAX_NUM_RETRIES)
{
g_warning ("Tried to read the EDID %d times, "
"but one or more are still missing, continuing without",
manager_kms->read_edid_tries);
handle_hotplug_event (manager);
manager_kms->handle_hotplug_timeout = 0;
return G_SOURCE_REMOVE;
}
return G_SOURCE_CONTINUE;
}
static void
on_uevent (GUdevClient *client,
const char *action,
@@ -1713,28 +1607,6 @@ on_uevent (GUdevClient *client,
if (!g_udev_device_get_property_as_boolean (device, "HOTPLUG"))
return;
if (manager_kms->handle_hotplug_timeout)
{
g_source_remove (manager_kms->handle_hotplug_timeout);
manager_kms->handle_hotplug_timeout = 0;
}
/*
* On a hot-plug event, the EDID of one or more connectors might not yet be
* ready at this point, resulting in invalid configuration potentially being
* applied. Avoid this by first checking whether the EDID is ready at this
* point, or otherwise wait a bit and try again.
*/
manager_kms->read_edid_tries = 0;
if (has_pending_edid_blob (manager_kms))
{
manager_kms->handle_hotplug_timeout =
g_timeout_add (EDID_RETRY_TIMEOUT_MS,
handle_hotplug_event_timeout,
manager);
return;
}
handle_hotplug_event (manager);
}
@@ -1764,6 +1636,38 @@ static GSourceFuncs kms_event_funcs = {
kms_event_dispatch
};
static void
meta_monitor_manager_kms_connect_uevent_handler (MetaMonitorManagerKms *manager_kms)
{
manager_kms->uevent_handler_id = g_signal_connect (manager_kms->udev,
"uevent",
G_CALLBACK (on_uevent),
manager_kms);
}
static void
meta_monitor_manager_kms_disconnect_uevent_handler (MetaMonitorManagerKms *manager_kms)
{
g_signal_handler_disconnect (manager_kms->udev,
manager_kms->uevent_handler_id);
manager_kms->uevent_handler_id = 0;
}
void
meta_monitor_manager_kms_pause (MetaMonitorManagerKms *manager_kms)
{
meta_monitor_manager_kms_disconnect_uevent_handler (manager_kms);
}
void
meta_monitor_manager_kms_resume (MetaMonitorManagerKms *manager_kms)
{
MetaMonitorManager *manager = META_MONITOR_MANAGER (manager_kms);
meta_monitor_manager_kms_connect_uevent_handler (manager_kms);
handle_hotplug_event (manager);
}
static void
meta_monitor_manager_kms_init (MetaMonitorManagerKms *manager_kms)
{
@@ -1778,8 +1682,7 @@ meta_monitor_manager_kms_init (MetaMonitorManagerKms *manager_kms)
const char *subsystems[2] = { "drm", NULL };
manager_kms->udev = g_udev_client_new (subsystems);
g_signal_connect (manager_kms->udev, "uevent",
G_CALLBACK (on_uevent), manager_kms);
meta_monitor_manager_kms_connect_uevent_handler (manager_kms);
source = g_source_new (&kms_event_funcs, sizeof (MetaKmsSource));
manager_kms->source = (MetaKmsSource *) source;
@@ -1968,6 +1871,19 @@ meta_monitor_manager_kms_wait_for_flip (MetaMonitorManagerKms *manager_kms)
drmHandleEvent (manager_kms->fd, &evctx);
}
static gboolean
meta_monitor_manager_kms_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform)
{
MetaCrtcKms *crtc_kms = crtc->driver_private;
if ((1 << crtc->transform) & crtc_kms->all_hw_transforms)
return TRUE;
else
return FALSE;
}
static void
meta_monitor_manager_kms_dispose (GObject *object)
{
@@ -2007,20 +1923,5 @@ meta_monitor_manager_kms_class_init (MetaMonitorManagerKmsClass *klass)
manager_class->set_power_save_mode = meta_monitor_manager_kms_set_power_save_mode;
manager_class->get_crtc_gamma = meta_monitor_manager_kms_get_crtc_gamma;
manager_class->set_crtc_gamma = meta_monitor_manager_kms_set_crtc_gamma;
}
MetaMonitorTransform
meta_monitor_manager_kms_get_view_transform (MetaMonitorManagerKms *manager,
MetaCrtc *crtc)
{
MetaCrtcKms *crtc_kms;
crtc_kms = crtc->driver_private;
if ((1 << crtc->transform) & crtc_kms->all_hw_transforms)
{
/* Transform is managed by the hardware, the view is untransformed */
return META_MONITOR_TRANSFORM_NORMAL;
}
return crtc->transform;
manager_class->is_transform_handled = meta_monitor_manager_kms_is_transform_handled;
}

View File

@@ -58,9 +58,8 @@ gboolean meta_monitor_manager_kms_flip_crtc (MetaMonitorManagerKms *manager_kms,
void meta_monitor_manager_kms_wait_for_flip (MetaMonitorManagerKms *manager_kms);
MetaMonitorTransform
meta_monitor_manager_kms_get_view_transform (MetaMonitorManagerKms *manager,
MetaCrtc *crtc);
void meta_monitor_manager_kms_pause (MetaMonitorManagerKms *manager_kms);
void meta_monitor_manager_kms_resume (MetaMonitorManagerKms *manager_kms);
#endif /* META_MONITOR_MANAGER_KMS_H */

View File

@@ -520,7 +520,7 @@ flip_closure_destroyed (MetaRendererView *view)
}
#ifdef HAVE_EGL_DEVICE
static void
static gboolean
flip_egl_stream (MetaRendererNative *renderer_native,
MetaOnscreenNative *onscreen_native,
GClosure *flip_closure)
@@ -536,29 +536,34 @@ flip_egl_stream (MetaRendererNative *renderer_native,
GError *error = NULL;
if (renderer_native->egl.no_egl_output_drm_flip_event)
return;
return FALSE;
acquire_attribs = (EGLAttrib[]) {
EGL_DRM_FLIP_EVENT_DATA_NV,
(EGLAttrib) flip_closure,
EGL_NONE
};
if (!meta_egl_stream_consumer_acquire_attrib (egl,
egl_renderer->edpy,
onscreen_native->egl.stream,
acquire_attribs,
&error))
{
g_warning ("Failed to flip EGL stream (%s), relying on clock from now on",
error->message);
if (error->domain != META_EGL_ERROR ||
error->code != EGL_RESOURCE_BUSY_EXT)
{
g_warning ("Failed to flip EGL stream (%s), relying on clock from "
"now on", error->message);
renderer_native->egl.no_egl_output_drm_flip_event = TRUE;
}
g_error_free (error);
renderer_native->egl.no_egl_output_drm_flip_event = TRUE;
return;
return FALSE;
}
g_closure_ref (flip_closure);
return;
return TRUE;
}
#endif /* HAVE_EGL_DEVICE */
@@ -598,8 +603,10 @@ meta_onscreen_native_flip_crtc (MetaOnscreenNative *onscreen_native,
break;
#ifdef HAVE_EGL_DEVICE
case META_RENDERER_NATIVE_MODE_EGL_DEVICE:
flip_egl_stream (renderer_native, onscreen_native, flip_closure);
onscreen_native->pending_flips++;
if (flip_egl_stream (renderer_native,
onscreen_native,
flip_closure))
onscreen_native->pending_flips++;
*fb_in_use = TRUE;
break;
#endif
@@ -1391,25 +1398,6 @@ meta_renderer_native_queue_modes_reset (MetaRendererNative *renderer_native)
}
}
static MetaMonitorTransform
meta_renderer_native_get_logical_monitor_transform (MetaRenderer *renderer,
MetaLogicalMonitor *logical_monitor)
{
MetaBackend *backend = meta_get_backend ();
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
MetaMonitorManagerKms *monitor_manager_kms =
META_MONITOR_MANAGER_KMS (monitor_manager);
MetaMonitor *monitor;
MetaOutput *output;
monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
output = meta_monitor_get_main_output (monitor);
return meta_monitor_manager_kms_get_view_transform (monitor_manager_kms,
output->crtc);
}
static CoglOnscreen *
meta_renderer_native_create_onscreen (MetaRendererNative *renderer,
CoglContext *context,
@@ -1682,38 +1670,61 @@ meta_renderer_native_create_legacy_view (MetaRendererNative *renderer_native)
return view;
}
static MetaMonitorTransform
calculate_view_transform (MetaMonitorManager *monitor_manager,
MetaLogicalMonitor *logical_monitor)
{
MetaMonitor *main_monitor;
MetaOutput *main_output;
main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
main_output = meta_monitor_get_main_output (main_monitor);
/*
* Pick any monitor and output and check; all CRTCs of a logical monitor will
* always have the same transform assigned to them.
*/
if (meta_monitor_manager_is_transform_handled (monitor_manager,
main_output->crtc,
main_output->crtc->transform))
return META_MONITOR_TRANSFORM_NORMAL;
else
return main_output->crtc->transform;
}
static MetaRendererView *
meta_renderer_native_create_view (MetaRenderer *renderer,
MetaLogicalMonitor *logical_monitor)
{
MetaBackend *backend = meta_get_backend ();
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
ClutterBackend *clutter_backend = meta_backend_get_clutter_backend (backend);
CoglContext *cogl_context = clutter_backend_get_cogl_context (clutter_backend);
CoglDisplay *cogl_display = cogl_context_get_display (cogl_context);
CoglDisplayEGL *egl_display = cogl_display->winsys;
CoglOnscreenEGL *egl_onscreen;
MetaMonitorTransform transform;
MetaMonitorTransform view_transform;
CoglOnscreen *onscreen = NULL;
CoglOffscreen *offscreen = NULL;
MetaRendererView *view;
GError *error = NULL;
transform = meta_renderer_native_get_logical_monitor_transform (renderer,
logical_monitor);
view_transform = calculate_view_transform (monitor_manager, logical_monitor);
onscreen = meta_renderer_native_create_onscreen (META_RENDERER_NATIVE (renderer),
cogl_context,
transform,
view_transform,
logical_monitor->rect.width,
logical_monitor->rect.height);
if (!onscreen)
meta_fatal ("Failed to allocate onscreen framebuffer\n");
if (transform != META_MONITOR_TRANSFORM_NORMAL)
if (view_transform != META_MONITOR_TRANSFORM_NORMAL)
{
offscreen = meta_renderer_native_create_offscreen (META_RENDERER_NATIVE (renderer),
cogl_context,
transform,
view_transform,
logical_monitor->rect.width,
logical_monitor->rect.height);
if (!offscreen)
@@ -1725,7 +1736,7 @@ meta_renderer_native_create_view (MetaRenderer *renderer,
"framebuffer", onscreen,
"offscreen", offscreen,
"logical-monitor", logical_monitor,
"transform", transform,
"transform", view_transform,
NULL);
g_clear_pointer (&offscreen, cogl_object_unref);

View File

@@ -114,8 +114,7 @@ meta_backend_x11_cm_update_screen_size (MetaBackend *backend,
}
static void
select_xi_stage (MetaBackend *backend,
gboolean include_motion)
meta_backend_x11_cm_select_stage_events (MetaBackend *backend)
{
MetaBackendX11 *x11 = META_BACKEND_X11 (backend);
Display *xdisplay = meta_backend_x11_get_xdisplay (x11);
@@ -133,24 +132,9 @@ select_xi_stage (MetaBackend *backend,
XISetMask (mask.mask, XI_FocusOut);
XISetMask (mask.mask, XI_Motion);
if (include_motion)
XISetMask (mask.mask, XI_RawMotion);
XISelectEvents (xdisplay, xwin, &mask, 1);
}
static void
meta_backend_x11_cm_select_stage_events (MetaBackend *backend)
{
select_xi_stage (backend, FALSE);
}
static void
meta_backend_x11_cm_track_position (MetaBackend *x11, gboolean enabled)
{
select_xi_stage (backend, enabled);
}
static void
get_xkbrf_var_defs (Display *xdisplay,
const char *layouts,
@@ -402,7 +386,6 @@ meta_backend_x11_cm_class_init (MetaBackendX11CmClass *klass)
backend_class->select_stage_events = meta_backend_x11_cm_select_stage_events;
backend_class->lock_layout_group = meta_backend_x11_cm_lock_layout_group;
backend_class->set_keymap = meta_backend_x11_cm_set_keymap;
backend_class->track_position = meta_backend_x11_cm_track_position;
backend_x11_class->handle_host_xevent = meta_backend_x11_cm_handle_host_xevent;
backend_x11_class->translate_device_event = meta_backend_x11_cm_translate_device_event;

View File

@@ -46,6 +46,7 @@
#include <meta/util.h>
#include "display-private.h"
#include "compositor/compositor-private.h"
#include "backends/meta-dnd-private.h"
struct _MetaBackendX11Private
{
@@ -207,8 +208,6 @@ handle_input_event (MetaBackendX11 *x11,
if (input_event->evtype == XI_DeviceChanged)
handle_device_change (x11, input_event);
else if (input_event->evtype == XI_RawMotion)
meta_backend_cursor_position_changed (META_BACKEND (x11));
else
maybe_spoof_event_as_stage_event (x11, input_event);
}
@@ -257,6 +256,9 @@ handle_host_xevent (MetaBackend *backend,
MetaCompositor *compositor = display->compositor;
if (meta_plugin_manager_xevent_filter (compositor->plugin_mgr, event))
bypass_clutter = TRUE;
if (meta_dnd_handle_xdnd_event (backend, compositor, display, event))
bypass_clutter = TRUE;
}
}
@@ -537,6 +539,9 @@ meta_backend_x11_get_current_logical_monitor (MetaBackend *backend)
logical_monitor =
meta_monitor_manager_get_logical_monitor_at (monitor_manager, x, y);
if (!logical_monitor && monitor_manager->logical_monitors)
logical_monitor = monitor_manager->logical_monitors->data;
priv->cached_current_logical_monitor = logical_monitor;
return priv->cached_current_logical_monitor;
}

View File

@@ -36,6 +36,7 @@
#endif
#include <meta/errors.h>
#include "backends/meta-logical-monitor.h"
typedef struct _MetaInputSettingsX11Private
{
@@ -604,7 +605,7 @@ meta_input_settings_x11_set_tablet_area (MetaInputSettings *settings,
static void
meta_input_settings_x11_set_tablet_keep_aspect (MetaInputSettings *settings,
ClutterInputDevice *device,
MetaOutput *output,
MetaLogicalMonitor *logical_monitor,
gboolean keep_aspect)
{
gint32 width, height, dev_width, dev_height, area[4] = { 0 };
@@ -614,12 +615,12 @@ meta_input_settings_x11_set_tablet_keep_aspect (MetaInputSettings *settings,
if (keep_aspect)
{
gdouble output_aspect, dev_aspect;
double aspect_ratio, dev_aspect;
if (output && output->crtc)
if (logical_monitor)
{
width = output->crtc->rect.width;
height = output->crtc->rect.height;
width = logical_monitor->rect.width;
height = logical_monitor->rect.height;
}
else
{
@@ -628,17 +629,17 @@ meta_input_settings_x11_set_tablet_keep_aspect (MetaInputSettings *settings,
backend = meta_get_backend ();
monitor_manager = meta_backend_get_monitor_manager (backend);
meta_monitor_manager_get_screen_limits (monitor_manager,
&width, &height);
meta_monitor_manager_get_screen_size (monitor_manager,
&width, &height);
}
output_aspect = (gdouble) width / height;
dev_aspect = (gdouble) dev_width / dev_height;
aspect_ratio = (double) width / height;
dev_aspect = (double) dev_width / dev_height;
if (dev_aspect > output_aspect)
dev_width = dev_height * output_aspect;
else if (dev_aspect < output_aspect)
dev_height = dev_width / output_aspect;
if (dev_aspect > aspect_ratio)
dev_width = dev_height * aspect_ratio;
else if (dev_aspect < aspect_ratio)
dev_height = dev_width / aspect_ratio;
}
area[2] = dev_width;

View File

@@ -1558,6 +1558,16 @@ meta_monitor_manager_xrandr_init_monitors (MetaMonitorManagerXrandr *manager_xra
}
#endif
static gboolean
meta_monitor_manager_xrandr_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform)
{
g_warn_if_fail (crtc->all_transforms & transform);
return TRUE;
}
static void
meta_monitor_manager_xrandr_init (MetaMonitorManagerXrandr *manager_xrandr)
{
@@ -1633,6 +1643,7 @@ meta_monitor_manager_xrandr_class_init (MetaMonitorManagerXrandrClass *klass)
manager_class->tiled_monitor_added = meta_monitor_manager_xrandr_tiled_monitor_added;
manager_class->tiled_monitor_removed = meta_monitor_manager_xrandr_tiled_monitor_removed;
#endif
manager_class->is_transform_handled = meta_monitor_manager_xrandr_is_transform_handled;
quark_meta_monitor_xrandr_data =
g_quark_from_static_string ("-meta-monitor-xrandr-data");

View File

@@ -77,15 +77,41 @@ meta_renderer_x11_create_cogl_renderer (MetaRenderer *renderer)
return cogl_renderer;
}
static MetaMonitorTransform
calculate_view_transform (MetaMonitorManager *monitor_manager,
MetaLogicalMonitor *logical_monitor)
{
MetaMonitor *main_monitor;
MetaOutput *main_output;
main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
main_output = meta_monitor_get_main_output (main_monitor);
/*
* Pick any monitor and output and check; all CRTCs of a logical monitor will
* always have the same transform assigned to them.
*/
if (meta_monitor_manager_is_transform_handled (monitor_manager,
main_output->crtc,
main_output->crtc->transform))
return META_MONITOR_TRANSFORM_NORMAL;
else
return main_output->crtc->transform;
}
static MetaRendererView *
meta_renderer_x11_create_view (MetaRenderer *renderer,
MetaLogicalMonitor *logical_monitor)
{
MetaBackend *backend = meta_get_backend ();
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
ClutterBackend *clutter_backend = meta_backend_get_clutter_backend (backend);
CoglContext *cogl_context = clutter_backend_get_cogl_context (clutter_backend);
MetaMonitorTransform view_transform;
int width, height;
CoglTexture2D *texture_2d;
CoglOffscreen *fake_onscreen;
CoglOffscreen *offscreen;
GError *error = NULL;
@@ -93,15 +119,32 @@ meta_renderer_x11_create_view (MetaRenderer *renderer,
width = logical_monitor->rect.width;
height = logical_monitor->rect.height;
texture_2d = cogl_texture_2d_new_with_size (cogl_context, width, height);
offscreen = cogl_offscreen_new_with_texture (COGL_TEXTURE (texture_2d));
if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (offscreen), &error))
view_transform = calculate_view_transform (monitor_manager, logical_monitor);
texture_2d = cogl_texture_2d_new_with_size (cogl_context, width, height);
fake_onscreen = cogl_offscreen_new_with_texture (COGL_TEXTURE (texture_2d));
if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (fake_onscreen), &error))
meta_fatal ("Couldn't allocate framebuffer: %s", error->message);
if (view_transform != META_MONITOR_TRANSFORM_NORMAL)
{
texture_2d = cogl_texture_2d_new_with_size (cogl_context, width, height);
offscreen = cogl_offscreen_new_with_texture (COGL_TEXTURE (texture_2d));
if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (offscreen), &error))
meta_fatal ("Couldn't allocate offscreen framebuffer: %s", error->message);
}
else
{
offscreen = NULL;
}
return g_object_new (META_TYPE_RENDERER_VIEW,
"layout", &logical_monitor->rect,
"framebuffer", COGL_FRAMEBUFFER (offscreen),
"framebuffer", COGL_FRAMEBUFFER (fake_onscreen),
"offscreen", COGL_FRAMEBUFFER (offscreen),
"transform", view_transform,
NULL);
}

View File

@@ -102,11 +102,17 @@ meta_stage_x11_nested_finish_frame (ClutterStageWindow *stage_window)
cairo_rectangle_int_t view_layout;
CoglFramebuffer *framebuffer;
CoglTexture *texture;
CoglMatrix matrix;
clutter_stage_view_get_layout (view, &view_layout);
framebuffer = clutter_stage_view_get_framebuffer (view);
framebuffer = clutter_stage_view_get_onscreen (view);
texture = cogl_offscreen_get_texture (COGL_OFFSCREEN (framebuffer));
clutter_stage_view_get_offscreen_transformation_matrix (view, &matrix);
cogl_matrix_get_inverse (&matrix, &matrix);
cogl_pipeline_set_layer_matrix (stage_nested->pipeline, 0, &matrix);
cogl_framebuffer_set_viewport (onscreen,
view_layout.x,
view_layout.y,

View File

@@ -27,11 +27,6 @@
#include "wayland/meta-wayland.h"
struct _MetaBackendX11Nested
{
MetaBackendX11 parent;
};
G_DEFINE_TYPE (MetaBackendX11Nested, meta_backend_x11_nested,
META_TYPE_BACKEND_X11)
@@ -61,8 +56,7 @@ meta_backend_x11_nested_update_screen_size (MetaBackend *backend,
}
static void
select_xi_stage (MetaBackend *backend,
gboolean include_motion)
meta_backend_x11_nested_select_stage_events (MetaBackend *backend)
{
MetaBackendX11 *x11 = META_BACKEND_X11 (backend);
Display *xdisplay = meta_backend_x11_get_xdisplay (x11);
@@ -80,9 +74,6 @@ select_xi_stage (MetaBackend *backend,
XISetMask (mask.mask, XI_FocusOut);
XISetMask (mask.mask, XI_Motion);
if (include_motion)
XISetMask (mask.mask, XI_RawMotion);
/*
* When we're an X11 compositor, we can't take these events or else replaying
* events from our passive root window grab will cause them to come back to
@@ -95,16 +86,6 @@ select_xi_stage (MetaBackend *backend,
XISetMask (mask.mask, XI_TouchUpdate);
XISelectEvents (xdisplay, xwin, &mask, 1);
}
static void
meta_backend_x11_nested_select_stage_events (MetaBackend *backend)
{
select_xi_stage (backend, FALSE);
MetaBackendX11 *x11 = META_BACKEND_X11 (backend);
Display *xdisplay = meta_backend_x11_get_xdisplay (x11);
Window xwin = meta_backend_x11_get_xwindow (x11);
/*
* We have no way of tracking key changes when the stage doesn't have focus,
@@ -119,12 +100,6 @@ meta_backend_x11_nested_select_stage_events (MetaBackend *backend)
xwa.your_event_mask | FocusChangeMask | KeymapStateMask);
}
static void
meta_backend_x11_nested_track_position (MetaBackend *x11, gboolean enabled)
{
select_xi_stage (backend, enabled);
}
static void
meta_backend_x11_nested_lock_layout_group (MetaBackend *backend,
guint idx)
@@ -198,7 +173,6 @@ meta_backend_x11_nested_class_init (MetaBackendX11NestedClass *klass)
backend_class->select_stage_events = meta_backend_x11_nested_select_stage_events;
backend_class->lock_layout_group = meta_backend_x11_nested_lock_layout_group;
backend_class->set_keymap = meta_backend_x11_nested_set_keymap;
backend_class->track_position = meta_backend_x11_nested_track_position;
backend_x11_class->handle_host_xevent = meta_backend_x11_nested_handle_host_xevent;
backend_x11_class->translate_device_event = meta_backend_x11_nested_translate_device_event;

View File

@@ -25,7 +25,12 @@
#include "backends/x11/meta-backend-x11.h"
#define META_TYPE_BACKEND_X11_NESTED (meta_backend_x11_nested_get_type ())
G_DECLARE_FINAL_TYPE (MetaBackendX11Nested, meta_backend_x11_nested,
META, BACKEND_X11_NESTED, MetaBackendX11)
G_DECLARE_DERIVABLE_TYPE (MetaBackendX11Nested, meta_backend_x11_nested,
META, BACKEND_X11_NESTED, MetaBackendX11)
struct _MetaBackendX11NestedClass
{
MetaBackendX11Class parent_class;
};
#endif /* META_BACKEND_X11_NESTED_H */

View File

@@ -71,6 +71,7 @@
#include "window-private.h" /* to check window->hidden */
#include "display-private.h" /* for meta_display_lookup_x_window() and meta_display_cancel_touch() */
#include "util-private.h"
#include "backends/meta-dnd-private.h"
#include "frame.h"
#include <X11/extensions/shape.h>
#include <X11/extensions/Xcomposite.h>
@@ -386,6 +387,8 @@ meta_begin_modal_for_plugin (MetaCompositor *compositor,
{
meta_display_sync_wayland_input_focus (display);
meta_display_cancel_touch (display);
meta_dnd_wayland_handle_begin_modal (compositor);
}
return TRUE;

289
src/compositor/meta-dnd.c Normal file
View File

@@ -0,0 +1,289 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* Copyright (C) 2016 Hyungwon Hwang
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*
*/
#include "config.h"
#include <gdk/gdkx.h>
#include "clutter/x11/clutter-x11.h"
#include "meta/meta-backend.h"
#include "compositor/compositor-private.h"
#include "core/display-private.h"
#include "backends/meta-dnd-private.h"
#include "meta/meta-dnd.h"
struct _MetaDndClass
{
GObjectClass parent_class;
};
#ifdef HAVE_WAYLAND
#include "wayland/meta-wayland-private.h"
#include "wayland/meta-wayland-data-device.h"
#endif
typedef struct _MetaDndPrivate MetaDndPrivate;
struct _MetaDndPrivate
{
#ifdef HAVE_WAYLAND
gulong handler_id[3];
MetaCompositor *compositor;
MetaWaylandCompositor *wl_compositor;
#else
/* to avoid warnings (g_type_class_add_private: assertion `private_size > 0' failed) */
gchar dummy;
#endif
};
struct _MetaDnd
{
GObject parent;
MetaDndPrivate *priv;
};
G_DEFINE_TYPE_WITH_PRIVATE (MetaDnd, meta_dnd, G_TYPE_OBJECT);
enum
{
ENTER,
POSITION_CHANGE,
LEAVE,
LAST_SIGNAL
};
static guint signals[LAST_SIGNAL] = { 0 };
static void
meta_dnd_class_init (MetaDndClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
signals[ENTER] =
g_signal_new ("dnd-enter",
G_TYPE_FROM_CLASS (object_class),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 0);
signals[POSITION_CHANGE] =
g_signal_new ("dnd-position-change",
G_TYPE_FROM_CLASS (object_class),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
signals[LEAVE] =
g_signal_new ("dnd-leave",
G_TYPE_FROM_CLASS (object_class),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 0);
}
static void
meta_dnd_init (MetaDnd *dnd)
{
}
static void
meta_dnd_notify_dnd_enter (MetaDnd *dnd)
{
g_signal_emit (dnd, signals[ENTER], 0);
}
static void
meta_dnd_notify_dnd_position_change (MetaDnd *dnd,
int x,
int y)
{
g_signal_emit (dnd, signals[POSITION_CHANGE], 0, x, y);
}
static void
meta_dnd_notify_dnd_leave (MetaDnd *dnd)
{
g_signal_emit (dnd, signals[LEAVE], 0);
}
/*
* Process Xdnd events
*
* We pass the position and leave events to the plugin via a signal
* where the actual drag & drop handling happens.
*
* http://www.freedesktop.org/wiki/Specifications/XDND
*/
gboolean
meta_dnd_handle_xdnd_event (MetaBackend *backend,
MetaCompositor *compositor,
MetaDisplay *display,
XEvent *xev)
{
MetaDnd *dnd = meta_backend_get_dnd (backend);
Window output_window = compositor->output;
if (xev->xany.type != ClientMessage)
return FALSE;
if (xev->xany.window != output_window &&
xev->xany.window != clutter_x11_get_stage_window (CLUTTER_STAGE (compositor->stage)))
return FALSE;
if (xev->xclient.message_type == gdk_x11_get_xatom_by_name ("XdndPosition"))
{
XEvent xevent;
Window src = xev->xclient.data.l[0];
memset (&xevent, 0, sizeof(xevent));
xevent.xany.type = ClientMessage;
xevent.xany.display = display->xdisplay;
xevent.xclient.window = src;
xevent.xclient.message_type = gdk_x11_get_xatom_by_name ("XdndStatus");
xevent.xclient.format = 32;
xevent.xclient.data.l[0] = output_window;
/* flags: bit 0: will we accept the drop? bit 1: do we want more position messages */
xevent.xclient.data.l[1] = 2;
xevent.xclient.data.l[4] = None;
XSendEvent (display->xdisplay, src, False, 0, &xevent);
meta_dnd_notify_dnd_position_change (dnd,
(int)(xev->xclient.data.l[2] >> 16),
(int)(xev->xclient.data.l[2] & 0xFFFF));
return TRUE;
}
else if (xev->xclient.message_type == gdk_x11_get_xatom_by_name ("XdndLeave"))
{
meta_dnd_notify_dnd_leave (dnd);
return TRUE;
}
else if (xev->xclient.message_type == gdk_x11_get_xatom_by_name ("XdndEnter"))
{
meta_dnd_notify_dnd_enter (dnd);
return TRUE;
}
return FALSE;
}
#ifdef HAVE_WAYLAND
static void
meta_dnd_wayland_on_motion_event (ClutterActor *actor,
ClutterEvent *event,
MetaDnd *dnd)
{
MetaDndPrivate *priv = meta_dnd_get_instance_private (dnd);
MetaWaylandDragGrab *current_grab;
gfloat event_x, event_y;
g_return_if_fail (event != NULL);
clutter_event_get_coords (event, &event_x, &event_y);
meta_dnd_notify_dnd_position_change (dnd, (int)event_x, (int)event_y);
current_grab = meta_wayland_data_device_get_current_grab (&priv->wl_compositor->seat->data_device);
if (current_grab)
meta_wayland_drag_grab_update_feedback_actor (current_grab, event);
}
static void
meta_dnd_wayland_end_notify (ClutterActor *actor,
ClutterEvent *event,
MetaDnd *dnd)
{
MetaDndPrivate *priv = meta_dnd_get_instance_private (dnd);
unsigned int i;
meta_wayland_data_device_end_drag (&priv->wl_compositor->seat->data_device);
for (i = 0; i < G_N_ELEMENTS (priv->handler_id); i++)
{
g_signal_handler_disconnect (priv->compositor->stage, priv->handler_id[i]);
priv->handler_id[i] = 0;
}
priv->compositor = NULL;
priv->wl_compositor = NULL;
meta_dnd_notify_dnd_leave (dnd);
}
static void
meta_dnd_wayland_on_button_released (ClutterActor *actor,
ClutterEvent *event,
MetaDnd *dnd)
{
meta_dnd_wayland_end_notify (actor, event, dnd);
}
static void
meta_dnd_wayland_on_key_pressed (ClutterActor *actor,
ClutterEvent *event,
MetaDnd *dnd)
{
guint key = clutter_event_get_key_symbol (event);
if (key != CLUTTER_KEY_Escape)
return;
meta_dnd_wayland_end_notify (actor, event, dnd);
}
void
meta_dnd_wayland_handle_begin_modal (MetaCompositor *compositor)
{
MetaWaylandCompositor *wl_compositor = meta_wayland_compositor_get_default ();
MetaDnd *dnd = meta_backend_get_dnd (meta_get_backend ());
MetaDndPrivate *priv = meta_dnd_get_instance_private (dnd);
if (priv->handler_id[0] == 0 &&
meta_wayland_data_device_get_current_grab (&wl_compositor->seat->data_device) != NULL)
{
priv->compositor = compositor;
priv->wl_compositor = wl_compositor;
priv->handler_id[0] = g_signal_connect (compositor->stage,
"motion-event",
G_CALLBACK (meta_dnd_wayland_on_motion_event),
dnd);
priv->handler_id[1] = g_signal_connect (compositor->stage,
"button-release-event",
G_CALLBACK (meta_dnd_wayland_on_button_released),
dnd);
priv->handler_id[2] = g_signal_connect (compositor->stage,
"key-press-event",
G_CALLBACK (meta_dnd_wayland_on_key_pressed),
dnd);
meta_dnd_notify_dnd_enter (dnd);
}
}
#endif

View File

@@ -251,7 +251,10 @@ meta_display_handle_event (MetaDisplay *display,
}
else
{
meta_backend_update_cursor_position (cursor_tracker,
MetaCursorTracker *cursor_tracker =
meta_backend_get_cursor_tracker (backend);
meta_cursor_tracker_update_position (cursor_tracker,
event->motion.x,
event->motion.y);
}

View File

@@ -28,6 +28,7 @@
#include <glib-object.h>
#include <clutter/clutter.h>
#include "meta/meta-dnd.h"
typedef struct _MetaBackend MetaBackend;
typedef struct _MetaBackendClass MetaBackendClass;
@@ -48,6 +49,7 @@ void meta_backend_set_numlock (MetaBackend *backend,
gboolean numlock_state);
ClutterActor *meta_backend_get_stage (MetaBackend *backend);
MetaDnd *meta_backend_get_dnd (MetaBackend *backend);
void meta_clutter_init (void);

View File

@@ -53,7 +53,4 @@ void meta_cursor_tracker_get_pointer (MetaCursorTracker *tracker,
void meta_cursor_tracker_set_pointer_visible (MetaCursorTracker *tracker,
gboolean visible);
void meta_cursor_tracker_enable_track_position (MetaCursorTracker *tracker);
void meta_cursor_tracker_disable_track_position (MetaCursorTracker *tracker);
#endif

31
src/meta/meta-dnd.h Normal file
View File

@@ -0,0 +1,31 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/*
* Copyright (C) 2016 Hyungwon Hwang
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#ifndef META_DND_H
#define META_DND_H
#include <glib-object.h>
#include <string.h>
#include "meta/types.h"
#define META_TYPE_DND (meta_dnd_get_type ())
G_DECLARE_FINAL_TYPE (MetaDnd, meta_dnd, META, DND, GObject)
#endif /* META_DND_H */

View File

@@ -24,6 +24,7 @@
* MetaCompositor: (skip)
*
*/
typedef struct _MetaBackend MetaBackend;
typedef struct _MetaCompositor MetaCompositor;
typedef struct _MetaDisplay MetaDisplay;
typedef struct _MetaFrame MetaFrame;
@@ -38,4 +39,6 @@ typedef struct _MetaGroup MetaGroup;
typedef struct _MetaKeyBinding MetaKeyBinding;
typedef struct _MetaCursorTracker MetaCursorTracker;
typedef struct _MetaDnd MetaDnd;
#endif

View File

@@ -25,10 +25,10 @@
struct _MetaBackendTest
{
MetaBackendX11 parent;
MetaBackendX11Nested parent;
};
G_DEFINE_TYPE (MetaBackendTest, meta_backend_test, META_TYPE_BACKEND_X11)
G_DEFINE_TYPE (MetaBackendTest, meta_backend_test, META_TYPE_BACKEND_X11_NESTED)
static void
meta_backend_test_init (MetaBackendTest *backend_test)

View File

@@ -20,10 +20,10 @@
#ifndef META_BACKEND_TEST_H
#define META_BACKEND_TEST_H
#include "backends/x11/meta-backend-x11.h"
#include "backends/x11/nested/meta-backend-x11-nested.h"
#define META_TYPE_BACKEND_TEST (meta_backend_test_get_type ())
G_DECLARE_FINAL_TYPE (MetaBackendTest, meta_backend_test,
META, BACKEND_TEST, MetaBackendX11)
META, BACKEND_TEST, MetaBackendX11Nested)
#endif /* META_BACKEND_TEST_H */

View File

@@ -327,6 +327,14 @@ meta_monitor_manager_test_tiled_monitor_removed (MetaMonitorManager *manager,
manager_test->tiled_monitor_count--;
}
static gboolean
meta_monitor_manager_test_is_transform_handled (MetaMonitorManager *manager,
MetaCrtc *crtc,
MetaMonitorTransform transform)
{
return TRUE;
}
static void
meta_monitor_manager_test_dispose (GObject *object)
{
@@ -358,4 +366,5 @@ meta_monitor_manager_test_class_init (MetaMonitorManagerTestClass *klass)
manager_class->apply_configuration = meta_monitor_manager_test_apply_configuration;
manager_class->tiled_monitor_added = meta_monitor_manager_test_tiled_monitor_added;
manager_class->tiled_monitor_removed = meta_monitor_manager_test_tiled_monitor_removed;
manager_class->is_transform_handled = meta_monitor_manager_test_is_transform_handled;
}

View File

@@ -574,19 +574,6 @@ meta_ui_frame_get_borders (MetaUIFrame *frame,
borders);
}
/* The client rectangle surrounds client window; it subtracts both
* the visible and invisible borders from the frame window's size.
*/
static void
get_client_rect (MetaFrameGeometry *fgeom,
cairo_rectangle_int_t *rect)
{
rect->x = fgeom->borders.total.left;
rect->y = fgeom->borders.total.top;
rect->width = fgeom->width - fgeom->borders.total.right - rect->x;
rect->height = fgeom->height - fgeom->borders.total.bottom - rect->y;
}
/* The visible frame rectangle surrounds the visible portion of the
* frame window; it subtracts only the invisible borders from the frame
* window's size.
@@ -1609,12 +1596,12 @@ get_control (MetaUIFrame *frame, int root_x, int root_y)
x = root_x - win_x;
y = root_y - win_y;
meta_ui_frame_calc_geometry (frame, &fgeom);
get_client_rect (&fgeom, &client);
meta_window_get_client_area_rect (frame->meta_window, &client);
if (POINT_IN_RECT (x, y, client))
return META_FRAME_CONTROL_CLIENT_AREA;
meta_ui_frame_calc_geometry (frame, &fgeom);
if (POINT_IN_RECT (x, y, fgeom.close_rect.clickable))
return META_FRAME_CONTROL_DELETE;

View File

@@ -816,6 +816,14 @@ meta_wayland_drag_grab_get_focus (MetaWaylandDragGrab *drag_grab)
return drag_grab->drag_focus;
}
void
meta_wayland_drag_grab_update_feedback_actor (MetaWaylandDragGrab *drag_grab,
ClutterEvent *event)
{
meta_feedback_actor_update (META_FEEDBACK_ACTOR (drag_grab->feedback_actor),
event);
}
static void
drag_grab_focus (MetaWaylandPointerGrab *grab,
MetaWaylandSurface *surface)
@@ -1899,6 +1907,12 @@ meta_wayland_data_device_is_dnd_surface (MetaWaylandDataDevice *data_device,
data_device->current_grab->drag_surface == surface;
}
MetaWaylandDragGrab *
meta_wayland_data_device_get_current_grab (MetaWaylandDataDevice *data_device)
{
return data_device->current_grab;
}
gboolean
meta_wayland_data_source_has_mime_type (const MetaWaylandDataSource *source,
const gchar *mime_type)

View File

@@ -27,6 +27,7 @@
#include <glib-object.h>
#include "meta-wayland-types.h"
#include "clutter/clutter.h"
typedef struct _MetaWaylandDragGrab MetaWaylandDragGrab;
typedef struct _MetaWaylandDataSourceFuncs MetaWaylandDataSourceFuncs;
@@ -79,6 +80,9 @@ void meta_wayland_data_device_set_keyboard_focus (MetaWaylandDataDevice *data_de
gboolean meta_wayland_data_device_is_dnd_surface (MetaWaylandDataDevice *data_device,
MetaWaylandSurface *surface);
MetaWaylandDragGrab *
meta_wayland_data_device_get_current_grab (MetaWaylandDataDevice *data_device);
void meta_wayland_data_device_set_dnd_source (MetaWaylandDataDevice *data_device,
MetaWaylandDataSource *source);
void meta_wayland_data_device_set_selection (MetaWaylandDataDevice *data_device,
@@ -133,5 +137,7 @@ void meta_wayland_drag_grab_set_focus (MetaWaylandDragGrab
MetaWaylandSurface *surface);
MetaWaylandSurface *
meta_wayland_drag_grab_get_focus (MetaWaylandDragGrab *drag_grab);
void meta_wayland_drag_grab_update_feedback_actor (MetaWaylandDragGrab *drag_grab,
ClutterEvent *event);
#endif /* META_WAYLAND_DATA_DEVICE_H */

View File

@@ -482,14 +482,7 @@ lookup_grouped_devices (ClutterInputDevice *device,
ClutterDeviceManager *device_manager;
const GSList *devices, *l;
GList *group = NULL;
MetaBackend *backend = meta_get_backend ();
#ifdef HAVE_NATIVE_BACKEND
struct libinput_device *dev = NULL, *libinput_device;
if (META_IS_BACKEND_NATIVE (backend))
dev = clutter_evdev_input_device_get_libinput_device (device);
#endif
device_manager = clutter_device_manager_get_default ();
devices = clutter_device_manager_peek_devices (device_manager);
@@ -500,16 +493,8 @@ lookup_grouped_devices (ClutterInputDevice *device,
if (clutter_input_device_get_device_type (l->data) != type)
continue;
#ifdef HAVE_NATIVE_BACKEND
if (META_IS_BACKEND_NATIVE (backend))
{
libinput_device = clutter_evdev_input_device_get_libinput_device (l->data);
if (libinput_device_get_device_group (dev) !=
libinput_device_get_device_group (libinput_device))
continue;
}
#endif
if (!clutter_input_device_is_grouped (device, l->data))
continue;
group = g_list_prepend (group, l->data);
}

View File

@@ -67,6 +67,7 @@ typedef struct {
Window window;
Window owner;
Time timestamp;
Time client_message_timestamp;
MetaWaylandDataSource *source; /* owned by MetaWaylandDataDevice */
WaylandSelectionData *wayland_selection;
X11SelectionData *x11_selection;
@@ -388,6 +389,20 @@ meta_xwayland_shutdown_dnd (MetaXWaylandManager *manager)
dnd->dnd_window = None;
}
static void
meta_xwayland_end_dnd_grab (MetaWaylandDataDevice *data_device)
{
Display *xdisplay = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
MetaWaylandCompositor *compositor = meta_wayland_compositor_get_default ();
MetaXWaylandManager *manager = &compositor->xwayland_manager;
MetaDndBridge *dnd = &manager->selection_data->dnd;
meta_wayland_data_device_end_drag (data_device);
XMoveResizeWindow (xdisplay, dnd->dnd_window, -1, -1, 1, 1);
XUnmapWindow (xdisplay, dnd->dnd_window);
}
/* X11/Wayland data bridges */
static MetaSelectionBridge *
@@ -820,7 +835,7 @@ meta_x11_source_send (MetaWaylandDataSource *source,
selection->selection_atom, type_atom,
gdk_x11_get_xatom_by_name ("_META_SELECTION"),
selection->window,
CurrentTime);
selection->client_message_timestamp);
XFlush (xdisplay);
}
@@ -1345,15 +1360,15 @@ repick_drop_surface (MetaWaylandCompositor *compositor,
MetaWaylandSurface *focus = NULL;
focus = pick_drop_surface (compositor, event);
dnd->focus_surface = focus;
if (meta_wayland_drag_grab_get_focus (drag_grab) == focus)
if (dnd->focus_surface == focus)
return;
dnd->focus_surface = focus;
if (focus &&
focus->window->client_type == META_WINDOW_CLIENT_TYPE_WAYLAND)
{
XMapWindow (xdisplay, dnd->dnd_window);
XMapRaised (xdisplay, dnd->dnd_window);
XMoveResizeWindow (xdisplay, dnd->dnd_window,
focus->window->rect.x,
focus->window->rect.y,
@@ -1400,8 +1415,16 @@ drag_xgrab_button (MetaWaylandPointerGrab *grab,
{
MetaWaylandCompositor *compositor = meta_wayland_compositor_get_default ();
MetaWaylandSeat *seat = compositor->seat;
MetaWaylandDataSource *data_source;
meta_wayland_pointer_send_button (seat->pointer, event);
data_source = compositor->seat->data_device.dnd_data_source;
if (seat->pointer->button_count == 0 &&
(!meta_wayland_drag_grab_get_focus ((MetaWaylandDragGrab *) grab) ||
meta_wayland_data_source_get_current_action (data_source) ==
WL_DATA_DEVICE_MANAGER_DND_ACTION_NONE))
meta_xwayland_end_dnd_grab (&seat->data_device);
}
static const MetaWaylandPointerGrabInterface drag_xgrab_interface = {
@@ -1511,6 +1534,8 @@ meta_xwayland_selection_handle_client_message (MetaWaylandCompositor *compositor
ClutterPoint pos;
uint32_t action = 0;
dnd->selection.client_message_timestamp = event->data.l[3];
motion = clutter_event_new (CLUTTER_MOTION);
clutter_input_device_get_coords (seat->pointer->device, NULL, &pos);
clutter_event_set_coords (motion, pos.x, pos.y);
@@ -1536,7 +1561,9 @@ meta_xwayland_selection_handle_client_message (MetaWaylandCompositor *compositor
}
else if (event->message_type == xdnd_atoms[ATOM_DND_DROP])
{
dnd->selection.client_message_timestamp = event->data.l[2];
meta_wayland_surface_drag_dest_drop (drag_focus);
meta_xwayland_end_dnd_grab (&seat->data_device);
return TRUE;
}
}
@@ -1596,7 +1623,6 @@ meta_xwayland_selection_handle_xfixes_selection_notify (MetaWaylandCompositor *c
else if (selection->selection_atom == xdnd_atoms[ATOM_DND_SELECTION])
{
MetaWaylandDataDevice *data_device = &compositor->seat->data_device;
MetaXWaylandSelection *selection_data = compositor->xwayland_manager.selection_data;
MetaWaylandSurface *focus;
selection->owner = event->owner;
@@ -1605,6 +1631,7 @@ meta_xwayland_selection_handle_xfixes_selection_notify (MetaWaylandCompositor *c
if (event->owner != None && event->owner != selection->window &&
focus && meta_xwayland_is_xwayland_surface (focus))
{
selection->client_message_timestamp = CurrentTime;
selection->source = meta_wayland_data_source_xwayland_new (selection);
meta_wayland_data_device_set_dnd_source (&compositor->seat->data_device,
selection->source);
@@ -1617,8 +1644,7 @@ meta_xwayland_selection_handle_xfixes_selection_notify (MetaWaylandCompositor *c
}
else if (event->owner == None)
{
meta_wayland_data_device_end_drag (data_device);
XUnmapWindow (xdisplay, selection_data->dnd.dnd_window);
meta_xwayland_end_dnd_grab (data_device);
}
}