Compare commits

...

9 Commits

Author SHA1 Message Date
Iain Lane
27e4318868 gpu-kms: Check for DRM resources when constructing
drmModeGetResources() can fail if the DRM driver doesn't implement
modesetting. We shouldn't crash in this case, but instead error out.

This moves the call into the constructor of the MetaGpuKms, as it is
easier to fail constructing directly rather than deal with it later on.

Fixes #223.
2018-08-09 14:43:21 +01:00
Olivier Fourdan
252dd52439 wayland: Clean up xwayland grabs even if surface is gone
If the surface is gone before `meta_xwayland_keyboard_grab_end()` is
called, we would bail out early leaving an empty grab, which will cause
a segfault as soon as a key is pressed later on.

Make sure we clean up the keyboard grab even if the surface is gone.

Closes: https://gitlab.gnome.org/GNOME/mutter/issues/255
2018-08-06 11:22:51 +00:00
Jan Grulich
c216397974 Update libpipewire requirements
PipeWire 0.2.2+ now provides libpipewire-0.2 and not libpipewire-0.1 anymore
2018-08-06 10:05:36 +02:00
Aurimas Černius
841dc09d21 Updated Lithuanian translation 2018-08-05 23:42:47 +03:00
Piotr Drąg
192b7887c3 Update Polish translation 2018-08-04 20:09:59 +02:00
Mario Blättermann
1fd8fe65c5 Update German translation 2018-08-04 18:00:54 +00:00
Matej Urbančič
a87c447b72 Updated Slovenian translation 2018-08-03 17:23:46 +02:00
Matej Urbančič
c624fcbb8b Updated Slovenian translation 2018-08-03 12:13:42 +02:00
Daniel van Vugt
b393f3d540 clutter/actor: Inherit clone branch depth from parent
Children added to a parent after that parent (or its ancestors)
have already been cloned now inherit the clone branch depth of
the parent. Otherwise `clutter_actor_is_in_clone_paint` on the child
could return FALSE when it should have been returning TRUE.
2018-08-01 11:53:10 +08:00
8 changed files with 301 additions and 255 deletions

View File

@@ -1093,6 +1093,11 @@ static void clutter_actor_set_child_transform_internal (ClutterActor *sel
static void clutter_actor_realize_internal (ClutterActor *self);
static void clutter_actor_unrealize_internal (ClutterActor *self);
static void clutter_actor_push_in_cloned_branch (ClutterActor *self,
gulong count);
static void clutter_actor_pop_in_cloned_branch (ClutterActor *self,
gulong count);
/* Helper macro which translates by the anchor coord, applies the
given transformation and then translates back */
#define TRANSFORM_ABOUT_ANCHOR_COORD(a,m,c,_transform) G_STMT_START { \
@@ -4289,6 +4294,9 @@ clutter_actor_remove_child_internal (ClutterActor *self,
self->priv->age += 1;
if (self->priv->in_cloned_branch)
clutter_actor_pop_in_cloned_branch (child, self->priv->in_cloned_branch);
/* if the child that got removed was visible and set to
* expand then we want to reset the parent's state in
* case the child was the only thing that was making it
@@ -12910,6 +12918,9 @@ clutter_actor_add_child_internal (ClutterActor *self,
self->priv->age += 1;
if (self->priv->in_cloned_branch)
clutter_actor_push_in_cloned_branch (child, self->priv->in_cloned_branch);
/* if push_internal() has been called then we automatically set
* the flag on the actor
*/
@@ -20704,29 +20715,31 @@ clutter_actor_get_child_transform (ClutterActor *self,
}
static void
clutter_actor_push_in_cloned_branch (ClutterActor *self)
clutter_actor_push_in_cloned_branch (ClutterActor *self,
gulong count)
{
ClutterActor *iter;
for (iter = self->priv->first_child;
iter != NULL;
iter = iter->priv->next_sibling)
clutter_actor_push_in_cloned_branch (iter);
clutter_actor_push_in_cloned_branch (iter, count);
self->priv->in_cloned_branch += 1;
self->priv->in_cloned_branch += count;
}
static void
clutter_actor_pop_in_cloned_branch (ClutterActor *self)
clutter_actor_pop_in_cloned_branch (ClutterActor *self,
gulong count)
{
ClutterActor *iter;
self->priv->in_cloned_branch -= 1;
self->priv->in_cloned_branch -= count;
for (iter = self->priv->first_child;
iter != NULL;
iter = iter->priv->next_sibling)
clutter_actor_pop_in_cloned_branch (iter);
clutter_actor_pop_in_cloned_branch (iter, count);
}
void
@@ -20742,7 +20755,7 @@ _clutter_actor_attach_clone (ClutterActor *actor,
g_hash_table_add (priv->clones, clone);
clutter_actor_push_in_cloned_branch (actor);
clutter_actor_push_in_cloned_branch (actor, 1);
}
void
@@ -20757,7 +20770,7 @@ _clutter_actor_detach_clone (ClutterActor *actor,
g_hash_table_lookup (priv->clones, clone) == NULL)
return;
clutter_actor_pop_in_cloned_branch (actor);
clutter_actor_pop_in_cloned_branch (actor, 1);
g_hash_table_remove (priv->clones, clone);

View File

@@ -244,7 +244,7 @@ AC_ARG_ENABLE(remote-desktop,
enable_remote_desktop=no
)
AS_IF([test "$enable_remote_desktop" = "yes"], [
MUTTER_PC_MODULES="$MUTTER_PC_MODULES libpipewire-0.1 >= 0.2.0"
MUTTER_PC_MODULES="$MUTTER_PC_MODULES libpipewire-0.2 >= 0.2.2"
AC_DEFINE([HAVE_REMOTE_DESKTOP],[1], [Defined if screen cast and remote desktop support is enabled])
])
AM_CONDITIONAL([HAVE_REMOTE_DESKTOP],[test "$enable_remote_desktop" = "yes"])

123
po/de.po
View File

@@ -2,9 +2,9 @@
# Copyright (C) 2002-2004 Free Software Foundation, Inc.
# Matthias Warkus <mawarkus@gnome.org>, 2002.
# Christian Neumair <chris@gnome-de.org>, 2002-2004.
# Hendrik Richter <hendrikr@gnome.org>, 2005, 2006, 2007, 2008.
# Hendrik Richter <hendrikr@gnome.org>, 2005-2008.
# Mario Blättermann <mario.blaettermann@gmail.com>, 2010-2013, 2016-2018.
# Christian Kirbach <Christian.Kirbach@googlemail.com>, 2009, 2011, 2012.
# Christian Kirbach <Christian.Kirbach@googlemail.com>, 2009, 2011-2012.
# Wolfgang Stöggl <c72578@yahoo.de> 2011, 2017.
# Tobias Endrigkeit <tobiasendrigkeit@googlemail.com>, 2012.
# Tim Sabsch <timæsabsch.com>, 2018.
@@ -13,16 +13,16 @@ msgid ""
msgstr ""
"Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n"
"POT-Creation-Date: 2018-02-26 07:59+0000\n"
"PO-Revision-Date: 2018-02-26 21:26+0100\n"
"Last-Translator: Tim Sabsch <tim@sabsch.com>\n"
"POT-Creation-Date: 2018-07-07 09:58+0000\n"
"PO-Revision-Date: 2018-08-04 19:59+0200\n"
"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
"Language: de\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: Poedit 2.0.6\n"
"X-Generator: Poedit 2.0.9\n"
#: data/50-mutter-navigation.xml:6
msgid "Navigation"
@@ -404,10 +404,7 @@ msgid ""
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
"manage HiDPI monitors. Does not require a restart."
msgstr ""
"Um experimentelle Funktionsmerkmale zu aktivieren, fügen Sie das "
"entsprechende Schlüsselwort zur Liste hinzu. Möglicherweise muss der "
@@ -418,26 +415,22 @@ msgstr ""
"framebuffer« weist Mutter an, in der Voreinstellung logische Bildschirme "
"in einem logischen Pixel-Koordinatensystem anzuordnen, wobei die Bildschirm-"
"Framebuffer anstelle der Fensterinhalte skaliert werden, um HiDPI-"
"Bildschirme besser versorgen zu können. Dafür ist kein Neustart "
"erforderlich. • »remote-desktop« aktiviert Remotedesktop-Unterstützung. Um "
"das Teilen von Bildschirmen mittels Remotedesktop zu unterstützen, muss "
"»screen-cast« ebenfalls aktiviert sein. • »screen-cast« aktiviert »screen "
"cast«-Unterstützung."
"Bildschirme besser versorgen zu können. Dafür ist kein Neustart erforderlich."
#: data/org.gnome.mutter.gschema.xml.in:145
#: data/org.gnome.mutter.gschema.xml.in:141
msgid "Select window from tab popup"
msgstr "Fenster aus Tab-Anzeige auswählen"
#: data/org.gnome.mutter.gschema.xml.in:150
#: data/org.gnome.mutter.gschema.xml.in:146
msgid "Cancel tab popup"
msgstr "Tab-Anzeige abbrechen"
#: data/org.gnome.mutter.gschema.xml.in:155
#: data/org.gnome.mutter.gschema.xml.in:151
msgid "Switch monitor configurations"
msgstr "Bildschirmkonfigurationen wechseln"
# Ich denke nicht, dass »rotate« hier die Bildschirmdrehung meint, sondern eher eine Liste aus Konfigurationen rotiert (d.h. umgewälzt) wird.
#: data/org.gnome.mutter.gschema.xml.in:160
#: data/org.gnome.mutter.gschema.xml.in:156
msgid "Rotates the built-in monitor configuration"
msgstr "Wechselt die Konfiguration des eingebauten Bildschirms"
@@ -561,22 +554,22 @@ msgstr "Bildschirm wechseln"
msgid "Show on-screen help"
msgstr "Bildschirmhilfe anzeigen"
#: src/backends/meta-monitor-manager.c:900
#: src/backends/meta-monitor-manager.c:907
msgid "Built-in display"
msgstr "Eingebaute Anzeige"
#: src/backends/meta-monitor-manager.c:923
#: src/backends/meta-monitor-manager.c:930
msgid "Unknown"
msgstr "Unbekannt"
#: src/backends/meta-monitor-manager.c:925
#: src/backends/meta-monitor-manager.c:932
msgid "Unknown Display"
msgstr "Unbekannte Anzeige"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:933
#: src/backends/meta-monitor-manager.c:940
#, c-format
msgid "%s %s"
msgstr "%s %s"
@@ -591,66 +584,65 @@ msgstr ""
"Ein weiterer Compositing-Verwalter läuft bereits auf Bildschirm %i der "
"Anzeige »%s«."
#: src/core/bell.c:194
#: src/core/bell.c:254
msgid "Bell event"
msgstr "Klangereignis"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "X-Window-Systemanzeige »%s« konnte nicht geöffnet werden\n"
#: src/core/main.c:190
#: src/core/main.c:191
msgid "Disable connection to session manager"
msgstr "Verbindung zur Sitzungsverwaltung deaktivieren"
#: src/core/main.c:196
#: src/core/main.c:197
msgid "Replace the running window manager"
msgstr "Den aktuellen Fensterverwalter ersetzen"
#: src/core/main.c:202
#: src/core/main.c:203
msgid "Specify session management ID"
msgstr "Kennung der Sitzungsverwaltung angeben"
#: src/core/main.c:207
#: src/core/main.c:208
msgid "X Display to use"
msgstr "Zu verwendende X-Anzeige"
#: src/core/main.c:213
#: src/core/main.c:214
msgid "Initialize session from savefile"
msgstr "Sitzung anhand gespeicherter Datei starten"
#: src/core/main.c:219
#: src/core/main.c:220
msgid "Make X calls synchronous"
msgstr "X-Aufrufe abgleichen"
#: src/core/main.c:226
#: src/core/main.c:227
msgid "Run as a wayland compositor"
msgstr "Als Wayland-Compositor ausführen"
#: src/core/main.c:232
#: src/core/main.c:233
msgid "Run as a nested compositor"
msgstr "Als eingebetteten Compositor ausführen"
#: src/core/main.c:240
#: src/core/main.c:239
msgid "Run wayland compositor without starting Xwayland"
msgstr "Wayland-Compositor ausführen, ohne Xwayland zu starten"
#: src/core/main.c:247
msgid "Run as a full display server, rather than nested"
msgstr "Als vollwertigen Display-Server verwenden (nicht eingebettet)"
#: src/core/main.c:246
#: src/core/main.c:253
msgid "Run with X11 backend"
msgstr "Mit X11-Backend ausführen"
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#: src/core/meta-close-dialog-default.c:148
#, c-format
msgid "“%s” is not responding."
msgstr "»%s« antwortet nicht."
#: src/core/meta-close-dialog-default.c:149
#: src/core/meta-close-dialog-default.c:150
msgid "Application is not responding."
msgstr "Die Anwendung antwortet nicht."
#: src/core/meta-close-dialog-default.c:154
#: src/core/meta-close-dialog-default.c:155
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
@@ -658,11 +650,11 @@ msgstr ""
"Sie können der Anwendung noch etwas Zeit geben oder ein sofortiges Beenden "
"erzwingen."
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Force Quit"
msgstr "_Beenden erzwingen"
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Wait"
msgstr "_Warten"
@@ -692,25 +684,11 @@ msgstr "Version ausgeben"
msgid "Mutter plugin to use"
msgstr "Zu benutzendes Mutter-Plugin"
#: src/core/prefs.c:1997
#: src/core/prefs.c:1915
#, c-format
msgid "Workspace %d"
msgstr "Arbeitsfläche %d"
#: src/core/screen.c:583
#, c-format
msgid ""
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Bildschirm »%s« hat bereits einen Fensterverwalter. Versuchen Sie die Option "
"»--replace«, um den aktuellen Fensterverwalter zu ersetzen."
#: src/core/screen.c:668
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Bildschirm %d auf Anzeige »%s« ist ungültig\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr "Mutter wurde ohne Unterstützung für den redseligen Modus kompiliert\n"
@@ -720,7 +698,30 @@ msgstr "Mutter wurde ohne Unterstützung für den redseligen Modus kompiliert\n"
msgid "Mode Switch: Mode %d"
msgstr "Moduswechsel: Modus %d"
#: src/x11/session.c:1818
#: src/x11/meta-x11-display.c:666
#, c-format
msgid ""
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Bildschirm »%s« hat bereits einen Fensterverwalter. Versuchen Sie die Option "
"»--replace«, um den aktuellen Fensterverwalter zu ersetzen."
#: src/x11/meta-x11-display.c:1010
msgid "Failed to initialize GDK\n"
msgstr "GDK konnte nicht initialisiert werden\n"
#: src/x11/meta-x11-display.c:1034
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "X-Window-Systemanzeige »%s« konnte nicht geöffnet werden\n"
#: src/x11/meta-x11-display.c:1117
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Bildschirm %d auf Anzeige »%s« ist ungültig\n"
#: src/x11/session.c:1819
msgid ""
"These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in."
@@ -728,7 +729,7 @@ msgstr ""
"Diese Fenster unterstützen das Speichern der aktuellen Einstellungen nicht "
"und müssen bei der nächsten Anmeldung manuell neu gestartet werden."
#: src/x11/window-props.c:559
#: src/x11/window-props.c:565
#, c-format
msgid "%s (on %s)"
msgstr "%s (auf %s)"

128
po/lt.po
View File

@@ -12,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: lt\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n"
"POT-Creation-Date: 2018-03-01 18:57+0000\n"
"PO-Revision-Date: 2018-03-03 13:37+0200\n"
"POT-Creation-Date: 2018-07-07 09:58+0000\n"
"PO-Revision-Date: 2018-08-05 23:42+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@@ -389,6 +389,18 @@ msgid "Enable experimental features"
msgstr "Įjungti eksperimentines savybes"
#: data/org.gnome.mutter.gschema.xml.in:108
#| msgid ""
#| "To enable experimental features, add the feature keyword to the list. "
#| "Whether the feature requires restarting the compositor depends on the "
#| "given feature. Any experimental feature is not required to still be "
#| "available, or configurable. Dont expect adding anything in this setting "
#| "to be future proof. Currently possible keywords: • “scale-monitor-"
#| "framebuffer” — makes mutter default to layout logical monitors in a "
#| "logical pixel coordinate space, while scaling monitor framebuffers "
#| "instead of window content, to manage HiDPI monitors. Does not require a "
#| "restart. • “remote-desktop” — enables remote desktop support. To support "
#| "remote desktop with screen sharing, “screen-cast” must also be enabled. • "
#| "“screen-cast” — enables screen cast support."
msgid ""
"To enable experimental features, add the feature keyword to the list. "
"Whether the feature requires restarting the compositor depends on the given "
@@ -397,37 +409,31 @@ msgid ""
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
"manage HiDPI monitors. Does not require a restart."
msgstr ""
"Norėdami įjungti eksperimentines savybes, pridėkite į sąrašą raktinį žodį. "
"Ar savybė reikalauja kompozitoriaus paleidimo iš naujo priklauso nuo "
"konkrečios savybės. Nei viena eksperimentinė savybė privalo būti prieinama "
"konkrečios savybės. Nei viena eksperimentinė savybė neprivalo būti prieinama "
"ar konfigūruojama. Nesitikėkite, kad ką nors pridėjus į šį sąrašą, tai "
"išliks ir ateityje. Šiuo metu galimi raktažodžiai: • „scale-monitor-"
"framebuffer“ — mutter numatytai išdėsto loginius monitorius loginėje "
"pikselių koordinačių erdvėje, tuo pat ištempiant monitorių kadrų buferius "
"vietoje langų turinio, tokiu būdu valdant didelio tankio monitorius. "
"Nereikalauja paleisti iš naujo. • „remote-desktop“ įjungia nutolusio "
"darbalaukio palaikymą. Norint nutolusio darbalaukio su dalinimusi ekranu, "
"taip pat reikia įjungti „screen-cast“. • „screen-cast“ įjungia ekrano "
"transliacijos palaikymą."
"Nereikalauja paleisti iš naujo."
#: data/org.gnome.mutter.gschema.xml.in:145
#: data/org.gnome.mutter.gschema.xml.in:141
msgid "Select window from tab popup"
msgstr "Pasirinkti langą iš tab iššokimo"
#: data/org.gnome.mutter.gschema.xml.in:150
#: data/org.gnome.mutter.gschema.xml.in:146
msgid "Cancel tab popup"
msgstr "Atšaukti tab iššokimą"
#: data/org.gnome.mutter.gschema.xml.in:155
#: data/org.gnome.mutter.gschema.xml.in:151
msgid "Switch monitor configurations"
msgstr "Perjungti monitorių konfigūracijas"
#: data/org.gnome.mutter.gschema.xml.in:160
#: data/org.gnome.mutter.gschema.xml.in:156
msgid "Rotates the built-in monitor configuration"
msgstr "Suka integruotas monitorių konfigūracijas"
@@ -548,22 +554,22 @@ msgstr "Perjungti monitorių"
msgid "Show on-screen help"
msgstr "Rodyti pagalbą ekrane"
#: src/backends/meta-monitor-manager.c:900
#: src/backends/meta-monitor-manager.c:907
msgid "Built-in display"
msgstr "Integruotas vaizduoklis"
#: src/backends/meta-monitor-manager.c:923
#: src/backends/meta-monitor-manager.c:930
msgid "Unknown"
msgstr "Nežinomas"
#: src/backends/meta-monitor-manager.c:925
#: src/backends/meta-monitor-manager.c:932
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:933
#: src/backends/meta-monitor-manager.c:940
#, c-format
msgid "%s %s"
msgstr "%s %s"
@@ -576,76 +582,75 @@ msgid ""
"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:254
msgid "Bell event"
msgstr "Skambučio įvykis"
#: 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:190
#: src/core/main.c:191
msgid "Disable connection to session manager"
msgstr "Išjungti susijungimą su sesijos tvarkytuve"
#: src/core/main.c:196
#: src/core/main.c:197
msgid "Replace the running window manager"
msgstr "Pakeisti veikiančią langų tvarkytuvę"
#: src/core/main.c:202
#: src/core/main.c:203
msgid "Specify session management ID"
msgstr "Nurodyti sesijos tvarkymo ID"
#: src/core/main.c:207
#: src/core/main.c:208
msgid "X Display to use"
msgstr "Naudotinas X ekranas"
#: src/core/main.c:213
#: src/core/main.c:214
msgid "Initialize session from savefile"
msgstr "Inicializuoti sesiją iš išsaugojimo failo"
#: src/core/main.c:219
#: src/core/main.c:220
msgid "Make X calls synchronous"
msgstr "Sinchronizuoti X iškvietimus"
#: src/core/main.c:226
#: src/core/main.c:227
msgid "Run as a wayland compositor"
msgstr "Vykdyti kaip wayland kompozitorių"
#: src/core/main.c:232
#: src/core/main.c:233
msgid "Run as a nested compositor"
msgstr "Vykdyti kaip įdėtinį kompozitorių"
#: src/core/main.c:240
#: src/core/main.c:239
msgid "Run wayland compositor without starting Xwayland"
msgstr "Paleisti wayland kompozitorių nepaleidžiant Xwayland"
#: src/core/main.c:247
msgid "Run as a full display server, rather than nested"
msgstr "Vykdyti kaip visą vaizduoklio serverį, o ne įdėtinį"
#: src/core/main.c:246
#: src/core/main.c:253
msgid "Run with X11 backend"
msgstr "Paleisti su X11 realizacija"
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#: src/core/meta-close-dialog-default.c:148
#, c-format
msgid "“%s” is not responding."
msgstr "%s neatsiliepia į komandas."
#: src/core/meta-close-dialog-default.c:149
#: src/core/meta-close-dialog-default.c:150
msgid "Application is not responding."
msgstr "Programa neatsiliepia į komandas."
#: src/core/meta-close-dialog-default.c:154
#: src/core/meta-close-dialog-default.c:155
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/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Force Quit"
msgstr "_Priverstinai išeiti"
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Wait"
msgstr "_Laukti"
@@ -673,25 +678,11 @@ msgstr "Parodyti versiją"
msgid "Mutter plugin to use"
msgstr "Naudojamas Mutter įskiepis"
#: src/core/prefs.c:1997
#: src/core/prefs.c:1915
#, c-format
msgid "Workspace %d"
msgstr "Darbo sritis %d"
#: src/core/screen.c:583
#, c-format
msgid ""
"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:668
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n"
#: 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"
@@ -701,7 +692,30 @@ msgstr "Mutter buvo sukompiliuota be išsamaus veikimo veiksenos\n"
msgid "Mode Switch: Mode %d"
msgstr "Veiksenos perjungimas: veiksena %d"
#: src/x11/session.c:1818
#: src/x11/meta-x11-display.c:666
#, c-format
msgid ""
"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/x11/meta-x11-display.c:1010
msgid "Failed to initialize GDK\n"
msgstr "Nepavyko inicializuoti GDK\n"
#: src/x11/meta-x11-display.c:1034
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Nepavyko atverti X Window sistemos vaizduoklio „%s“\n"
#: src/x11/meta-x11-display.c:1117
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Ekranas %d vaizduoklyje „%s“ yra netinkamas\n"
#: src/x11/session.c:1819
msgid ""
"These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in."
@@ -709,7 +723,7 @@ msgstr ""
"Š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:559
#: src/x11/window-props.c:565
#, c-format
msgid "%s (on %s)"
msgstr "%s (kompiuteryje %s)"

116
po/pl.po
View File

@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: mutter\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n"
"POT-Creation-Date: 2018-02-06 04:14+0000\n"
"PO-Revision-Date: 2018-02-08 02:05+0100\n"
"POT-Creation-Date: 2018-07-07 09:58+0000\n"
"PO-Revision-Date: 2018-08-04 20:08+0200\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
"Language-Team: Polish <community-poland@mozilla.org>\n"
"Language: pl\n"
@@ -405,10 +405,7 @@ msgid ""
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
"manage HiDPI monitors. Does not require a restart."
msgstr ""
"Aby włączyć eksperymentalne funkcje, należy dodać słowo kluczowe funkcji do "
"tej listy. Niektóre funkcje wymagają ponownego uruchomienia menedżera okien. "
@@ -417,24 +414,21 @@ msgstr ""
"„scale-monitor-framebuffer” — sprawia, że menedżer okien do zarządzania "
"monitorami o wysokiej rozdzielczości domyślnie układa logiczne monitory "
"w przestrzeni współrzędnych logicznych pikseli, jednocześnie skalując bufory "
"ramki monitorów zamiast zawartości okien. Nie wymaga ponownego uruchomienia. "
"• „remote-desktop” — włącza obsługę zdalnego pulpitu. Aby dodać "
"udostępnianie ekranu, należy włączyć także opcję „screen-cast”. • „screen-"
"cast” — włącza obsługę nagrywania ekranu."
"ramki monitorów zamiast zawartości okien. Nie wymaga ponownego uruchomienia."
#: data/org.gnome.mutter.gschema.xml.in:145
#: data/org.gnome.mutter.gschema.xml.in:141
msgid "Select window from tab popup"
msgstr "Wybór okna z wyskakującego okna dla tabulacji"
#: data/org.gnome.mutter.gschema.xml.in:150
#: data/org.gnome.mutter.gschema.xml.in:146
msgid "Cancel tab popup"
msgstr "Anulowanie wyskakującego okna dla tabulacji"
#: data/org.gnome.mutter.gschema.xml.in:155
#: data/org.gnome.mutter.gschema.xml.in:151
msgid "Switch monitor configurations"
msgstr "Przełączenie konfiguracji monitorów"
#: data/org.gnome.mutter.gschema.xml.in:160
#: data/org.gnome.mutter.gschema.xml.in:156
msgid "Rotates the built-in monitor configuration"
msgstr "Obrócenie wbudowanego monitora"
@@ -538,7 +532,7 @@ msgstr ""
#. TRANSLATORS: This string refers to a button that switches between
#. * different modes.
#.
#: src/backends/meta-input-settings.c:2260
#: src/backends/meta-input-settings.c:2325
#, c-format
msgid "Mode Switch (Group %d)"
msgstr "Przełącznik trybu (%d. grupa)"
@@ -546,30 +540,30 @@ msgstr "Przełącznik trybu (%d. grupa)"
#. TRANSLATORS: This string refers to an action, cycles drawing tablets'
#. * mapping through the available outputs.
#.
#: src/backends/meta-input-settings.c:2283
#: src/backends/meta-input-settings.c:2348
msgid "Switch monitor"
msgstr "Przełączenie monitora"
#: src/backends/meta-input-settings.c:2285
#: src/backends/meta-input-settings.c:2350
msgid "Show on-screen help"
msgstr "Ekran pomocy"
#: src/backends/meta-monitor-manager.c:900
#: src/backends/meta-monitor-manager.c:907
msgid "Built-in display"
msgstr "Wbudowany ekran"
#: src/backends/meta-monitor-manager.c:923
#: src/backends/meta-monitor-manager.c:930
msgid "Unknown"
msgstr "Nieznany"
#: src/backends/meta-monitor-manager.c:925
#: src/backends/meta-monitor-manager.c:932
msgid "Unknown Display"
msgstr "Nieznany ekran"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:933
#: src/backends/meta-monitor-manager.c:940
#, c-format
msgid "%s %s"
msgstr "%s %s"
@@ -583,76 +577,75 @@ msgid ""
msgstr ""
"Inny menedżer składania jest już uruchomiony na podekranie %i ekranu „%s”."
#: src/core/bell.c:194
#: src/core/bell.c:254
msgid "Bell event"
msgstr "Zdarzenie sygnału dźwiękowego"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Otwarcie połączenia z ekranem „%s” systemu X Window się nie powiodło\n"
#: src/core/main.c:190
#: src/core/main.c:191
msgid "Disable connection to session manager"
msgstr "Rozłącza połączenie z menedżerem sesji"
#: src/core/main.c:196
#: src/core/main.c:197
msgid "Replace the running window manager"
msgstr "Zastępuje uruchomionego menedżera okien"
#: src/core/main.c:202
#: src/core/main.c:203
msgid "Specify session management ID"
msgstr "Podaje identyfikator zarządzania sesją"
#: src/core/main.c:207
#: src/core/main.c:208
msgid "X Display to use"
msgstr "Używany ekran X"
#: src/core/main.c:213
#: src/core/main.c:214
msgid "Initialize session from savefile"
msgstr "Inicjuje sesję z zapisanego pliku"
#: src/core/main.c:219
#: src/core/main.c:220
msgid "Make X calls synchronous"
msgstr "Synchroniczne wywołania X"
#: src/core/main.c:226
#: src/core/main.c:227
msgid "Run as a wayland compositor"
msgstr "Uruchamia jako menedżer składania Wayland"
#: src/core/main.c:232
#: src/core/main.c:233
msgid "Run as a nested compositor"
msgstr "Uruchamia jako osadzony menedżer składania"
#: src/core/main.c:240
#: src/core/main.c:239
msgid "Run wayland compositor without starting Xwayland"
msgstr "Uruchamia menedżer składania Wayland bez uruchamiania Xwayland"
#: src/core/main.c:247
msgid "Run as a full display server, rather than nested"
msgstr "Uruchamia jako pełny serwer wyświetlania zamiast osadzonego"
#: src/core/main.c:246
#: src/core/main.c:253
msgid "Run with X11 backend"
msgstr "Uruchamia za pomocą mechanizmu X11"
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#: src/core/meta-close-dialog-default.c:148
#, c-format
msgid "“%s” is not responding."
msgstr "Okno „%s” nie odpowiada."
#: src/core/meta-close-dialog-default.c:149
#: src/core/meta-close-dialog-default.c:150
msgid "Application is not responding."
msgstr "Program nie odpowiada."
#: src/core/meta-close-dialog-default.c:154
#: src/core/meta-close-dialog-default.c:155
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
msgstr "Można poczekać chwilę dłużej lub wymusić zakończenie programu."
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Force Quit"
msgstr "_Zakończ"
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Wait"
msgstr "_Czekaj"
@@ -680,12 +673,22 @@ msgstr "Wyświetla wersję"
msgid "Mutter plugin to use"
msgstr "Używana wtyczka menedżera Mutter"
#: src/core/prefs.c:1997
#: src/core/prefs.c:1915
#, c-format
msgid "Workspace %d"
msgstr "%d. obszar roboczy"
#: src/core/screen.c:583
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr ""
"Menedżer Mutter został skompilowany bez obsługi trybu z obszerną informacją\n"
#: src/wayland/meta-wayland-tablet-pad.c:567
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Przełącznik trybu: %d. tryb"
#: src/x11/meta-x11-display.c:666
#, c-format
msgid ""
"Display “%s” already has a window manager; try using the --replace option to "
@@ -694,22 +697,21 @@ msgstr ""
"Na ekranie „%s” działa już menedżer okien. Aby zastąpić działającego "
"menedżera okien, należy użyć opcji „--replace”."
#: src/core/screen.c:668
#: src/x11/meta-x11-display.c:1010
msgid "Failed to initialize GDK\n"
msgstr "Zainicjowanie biblioteki GDK się nie powiodło\n"
#: src/x11/meta-x11-display.c:1034
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Otwarcie połączenia z ekranem „%s” systemu X Window się nie powiodło\n"
#: src/x11/meta-x11-display.c:1117
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Podekran %d ekranu „%s” jest nieprawidłowy\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr ""
"Menedżer Mutter został skompilowany bez obsługi trybu z obszerną informacją\n"
#: src/wayland/meta-wayland-tablet-pad.c:563
#, c-format
msgid "Mode Switch: Mode %d"
msgstr "Przełącznik trybu: %d. tryb"
#: src/x11/session.c:1818
#: src/x11/session.c:1819
msgid ""
"These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in."
@@ -717,7 +719,7 @@ msgstr ""
"Te okna nie obsługują opcji zapisu obecnego stanu („save current setup”), "
"więc przy następnym zalogowaniu będą musiały zostać uruchomione ręcznie."
#: src/x11/window-props.c:559
#: src/x11/window-props.c:565
#, c-format
msgid "%s (on %s)"
msgstr "%s (na %s)"

118
po/sl.po
View File

@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: mutter master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/mutter/issues\n"
"POT-Creation-Date: 2018-04-03 20:43+0000\n"
"PO-Revision-Date: 2018-04-09 20:28+0200\n"
"POT-Creation-Date: 2018-08-03 10:14+0000\n"
"PO-Revision-Date: 2018-08-03 17:00+0200\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: sl_SI\n"
@@ -395,35 +395,29 @@ msgid ""
"proof. Currently possible keywords: • “scale-monitor-framebuffer” — makes "
"mutter default to layout logical monitors in a logical pixel coordinate "
"space, while scaling monitor framebuffers instead of window content, to "
"manage HiDPI monitors. Does not require a restart. • “remote-desktop” — "
"enables remote desktop support. To support remote desktop with screen "
"sharing, “screen-cast” must also be enabled. • “screen-cast” — enables "
"screen cast support."
"manage HiDPI monitors. Does not require a restart."
msgstr ""
"Za omogočanje preizkusnih možnosti, dodajte na seznam ključne besedo "
"možnosti. Ali vpisana možnost zahteva ponovni zagon sestavljalnika, je "
"Za omogočanje preizkusnih možnosti je treba dodati ključne besede na seznam "
"ključev. Ali vpisana možnost zahteva ponovni zagon sestavljalnika, je "
"odvisno od posamezne možnosti. Te možnosti niso zahtevane niti nastavljive. "
"Trenutno so na voljo ključne besede: • »scale-monitor-framebuffer« določi "
"privzeto rabo sistema mutter za logične zaslone v logičnem točkovnem "
"koordinatnem prostoru, pri čemer prilagaja predpomnilnik in ne vsebine za "
"upravljanje z zasloni HiDPI. Možnost ne zahteva ponovnega zagona. • »remote-"
"desktop« omogoči podporo oddaljenim namizjem. Za souporabo zaslona mora "
"biti omogočena tudi možnost »screen-cast«. • »screen-cast« omogoči podporo "
"objavljanja na zaslon."
"upravljanje z zasloni HiDPI. Možnost ne zahteva ponovnega zagona."
#: data/org.gnome.mutter.gschema.xml.in:145
#: data/org.gnome.mutter.gschema.xml.in:141
msgid "Select window from tab popup"
msgstr "Izbor okna iz pojavnega zavihka"
#: data/org.gnome.mutter.gschema.xml.in:150
#: data/org.gnome.mutter.gschema.xml.in:146
msgid "Cancel tab popup"
msgstr "Prekliči pojavni zavihek"
#: data/org.gnome.mutter.gschema.xml.in:155
#: data/org.gnome.mutter.gschema.xml.in:151
msgid "Switch monitor configurations"
msgstr "Nastavitve nadzornika preklopa"
#: data/org.gnome.mutter.gschema.xml.in:160
#: data/org.gnome.mutter.gschema.xml.in:156
msgid "Rotates the built-in monitor configuration"
msgstr "Zavrti vgrajene nastavitve zaslona"
@@ -542,22 +536,22 @@ msgstr "Nadzornik preklopa"
msgid "Show on-screen help"
msgstr "Pokaži zaslonsko pomoč"
#: src/backends/meta-monitor-manager.c:900
#: src/backends/meta-monitor-manager.c:886
msgid "Built-in display"
msgstr "Vgrajen zaslon"
#: src/backends/meta-monitor-manager.c:923
#: src/backends/meta-monitor-manager.c:909
msgid "Unknown"
msgstr "Neznano"
#: src/backends/meta-monitor-manager.c:925
#: src/backends/meta-monitor-manager.c:911
msgid "Unknown Display"
msgstr "Neznan zaslon"
#. TRANSLATORS: this is a monitor vendor name, followed by a
#. * size in inches, like 'Dell 15"'
#.
#: src/backends/meta-monitor-manager.c:933
#: src/backends/meta-monitor-manager.c:919
#, c-format
msgid "%s %s"
msgstr "%s %s"
@@ -571,66 +565,65 @@ msgid ""
msgstr ""
"Drug upravljalnik sestavljanja je že zagnan na zaslonu %i prikaza »%s«."
#: src/core/bell.c:194
#: src/core/bell.c:254
msgid "Bell event"
msgstr "Dogodek zvonjenja"
#: src/core/display.c:608
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Odpiranje zaslona »%s« okenskega sistema X je spodletelo\n"
#: src/core/main.c:190
#: src/core/main.c:191
msgid "Disable connection to session manager"
msgstr "Onemogoči povezavo z upravljalnikom sej"
#: src/core/main.c:196
#: src/core/main.c:197
msgid "Replace the running window manager"
msgstr "Zamenjaj trenutni upravljalnik oken"
#: src/core/main.c:202
#: src/core/main.c:203
msgid "Specify session management ID"
msgstr "Navedite ID upravljanja seje"
#: src/core/main.c:207
#: src/core/main.c:208
msgid "X Display to use"
msgstr "Zaslon X za uporabo"
#: src/core/main.c:213
#: src/core/main.c:214
msgid "Initialize session from savefile"
msgstr "Začni sejo iz shranjene datoteke"
#: src/core/main.c:219
#: src/core/main.c:220
msgid "Make X calls synchronous"
msgstr "Uskladi klice X"
#: src/core/main.c:226
#: src/core/main.c:227
msgid "Run as a wayland compositor"
msgstr "Zaženi izbirnik wayland"
#: src/core/main.c:232
#: src/core/main.c:233
msgid "Run as a nested compositor"
msgstr "Zaženi kot gnezden vpisovalnik"
#: src/core/main.c:240
#: src/core/main.c:239
msgid "Run wayland compositor without starting Xwayland"
msgstr "Zaženi sestavljalnik wayland brez zagona okolja Xwayland"
#: src/core/main.c:247
msgid "Run as a full display server, rather than nested"
msgstr "Zaženi kot polni strežnik zaslona in ne vstavljeno"
#: src/core/main.c:246
#: src/core/main.c:253
msgid "Run with X11 backend"
msgstr "Zaženi z zaledjem X11"
#. Translators: %s is a window title
#: src/core/meta-close-dialog-default.c:147
#: src/core/meta-close-dialog-default.c:148
#, c-format
msgid "“%s” is not responding."
msgstr "Okno »%s« se ne odziva."
#: src/core/meta-close-dialog-default.c:149
#: src/core/meta-close-dialog-default.c:150
msgid "Application is not responding."
msgstr "Program se ne odziva."
#: src/core/meta-close-dialog-default.c:154
#: src/core/meta-close-dialog-default.c:155
msgid ""
"You may choose to wait a short while for it to continue or force the "
"application to quit entirely."
@@ -638,11 +631,11 @@ msgstr ""
"Lahko še malo počakate, če program morda spet začne delovati, ali pa vsilite "
"končanje delovanja."
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Force Quit"
msgstr "_Vsili konec"
#: src/core/meta-close-dialog-default.c:161
#: src/core/meta-close-dialog-default.c:162
msgid "_Wait"
msgstr "_Počakaj"
@@ -669,25 +662,11 @@ msgid "Mutter plugin to use"
msgstr "Vstavek Mutter za uporabo"
# G:1 K:0 O:0
#: src/core/prefs.c:1997
#: src/core/prefs.c:1787
#, c-format
msgid "Workspace %d"
msgstr "Delovna površina %d"
#: src/core/screen.c:583
#, c-format
msgid ""
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Zaslon »%s« že ima določen upravljalnik oken; poskušajte uporabiti možnost --"
"replace za zamenjavo trenutnega upravljalnika zaslona."
#: src/core/screen.c:668
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Zaslon %d na prikazu »%s« ni veljaven\n"
#: src/core/util.c:120
msgid "Mutter was compiled without support for verbose mode\n"
msgstr ""
@@ -698,8 +677,31 @@ msgstr ""
msgid "Mode Switch: Mode %d"
msgstr "Način preklopa: način %d"
#: src/x11/meta-x11-display.c:666
#, c-format
msgid ""
"Display “%s” already has a window manager; try using the --replace option to "
"replace the current window manager."
msgstr ""
"Zaslon »%s« že ima določen upravljalnik oken; poskušajte uporabiti možnost --"
"replace za zamenjavo trenutnega upravljalnika zaslona."
#: src/x11/meta-x11-display.c:1010
msgid "Failed to initialize GDK\n"
msgstr "Začenjanje okolja GDK je spodletelo\n"
#: src/x11/meta-x11-display.c:1034
#, c-format
msgid "Failed to open X Window System display “%s”\n"
msgstr "Odpiranje zaslona »%s« okenskega sistema X je spodletelo\n"
#: src/x11/meta-x11-display.c:1117
#, c-format
msgid "Screen %d on display “%s” is invalid\n"
msgstr "Zaslon %d na prikazu »%s« ni veljaven\n"
# G:2 K:6 O:0
#: src/x11/session.c:1818
#: src/x11/session.c:1819
msgid ""
"These windows do not support “save current setup” and will have to be "
"restarted manually next time you log in."
@@ -707,7 +709,7 @@ msgstr ""
"Ta okna ne podpirajo možnosti »shranjevanja trenutnih nastavitev«, zato jih "
"bo treba ob naslednji prijavi zagnati ročno."
#: src/x11/window-props.c:559
#: src/x11/window-props.c:565
#, c-format
msgid "%s (on %s)"
msgstr "%s (na %s)"

View File

@@ -68,6 +68,8 @@ struct _MetaGpuKms
int max_buffer_height;
gboolean page_flips_not_supported;
MetaKmsResources resources;
};
G_DEFINE_TYPE (MetaGpuKms, meta_gpu_kms, META_TYPE_GPU)
@@ -726,20 +728,29 @@ init_outputs (MetaGpuKms *gpu_kms,
setup_output_clones (gpu);
}
static void
static gboolean
meta_kms_resources_init (MetaKmsResources *resources,
int fd)
int fd,
GError **error)
{
drmModeRes *drm_resources;
unsigned int i;
drm_resources = drmModeGetResources (fd);
if (drm_resources == NULL) {
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, "No resources");
return FALSE;
}
resources->resources = drm_resources;
resources->n_encoders = (unsigned int) drm_resources->count_encoders;
resources->encoders = g_new (drmModeEncoder *, resources->n_encoders);
for (i = 0; i < resources->n_encoders; i++)
resources->encoders[i] = drmModeGetEncoder (fd, drm_resources->encoders[i]);
return TRUE;
}
static void
@@ -761,9 +772,7 @@ meta_gpu_kms_read_current (MetaGpu *gpu,
MetaGpuKms *gpu_kms = META_GPU_KMS (gpu);
MetaMonitorManager *monitor_manager =
meta_gpu_get_monitor_manager (gpu);
MetaKmsResources resources;
meta_kms_resources_init (&resources, gpu_kms->fd);
MetaKmsResources resources = gpu_kms->resources;
gpu_kms->max_buffer_width = resources.resources->max_width;
gpu_kms->max_buffer_height = resources.resources->max_height;
@@ -812,6 +821,11 @@ meta_gpu_kms_new (MetaMonitorManagerKms *monitor_manager_kms,
gpu_kms->fd = kms_fd;
gpu_kms->file_path = g_strdup (kms_file_path);
if (!meta_kms_resources_init (&gpu_kms->resources, gpu_kms->fd, error)) {
g_clear_object (&gpu_kms);
return NULL;
}
drmSetClientCap (gpu_kms->fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
source = g_source_new (&kms_event_funcs, sizeof (MetaKmsSource));
@@ -841,7 +855,7 @@ meta_gpu_kms_finalize (GObject *object)
meta_launcher_close_restricted (launcher, gpu_kms->fd);
g_clear_pointer (&gpu_kms->file_path, g_free);
g_source_destroy (gpu_kms->source);
g_clear_pointer (&gpu_kms->source, g_source_destroy);
free_resources (gpu_kms);

View File

@@ -85,6 +85,13 @@ meta_xwayland_keyboard_grab_end (MetaXwaylandKeyboardActiveGrab *active_grab)
{
MetaWaylandSeat *seat = active_grab->seat;
if (seat->keyboard->grab->interface->key == meta_xwayland_keyboard_grab_key)
{
meta_wayland_keyboard_end_grab (active_grab->keyboard_grab.keyboard);
meta_wayland_keyboard_set_focus (active_grab->keyboard_grab.keyboard, NULL);
meta_display_sync_wayland_input_focus (meta_get_display ());
}
if (!active_grab->surface)
return;
@@ -104,13 +111,6 @@ meta_xwayland_keyboard_grab_end (MetaXwaylandKeyboardActiveGrab *active_grab)
active_grab->window_associate_handler = 0;
}
if (seat->keyboard->grab->interface->key == meta_xwayland_keyboard_grab_key)
{
meta_wayland_keyboard_end_grab (active_grab->keyboard_grab.keyboard);
meta_wayland_keyboard_set_focus (active_grab->keyboard_grab.keyboard, NULL);
meta_display_sync_wayland_input_focus (meta_get_display ());
}
active_grab->surface = NULL;
}