Merge remote branch 'origin/master' into zeitgeist
This commit is contained in:
commit
9551e1c2f5
16
configure.ac
16
configure.ac
@ -89,6 +89,8 @@ PKG_CHECK_MODULES(GNOME_SHELL, gio-2.0 >= $GIO_MIN_VERSION
|
||||
telepathy-glib >= $TELEPATHY_GLIB_MIN_VERSION
|
||||
polkit-agent-1 >= $POLKIT_MIN_VERSION)
|
||||
|
||||
PKG_CHECK_MODULES(SHELL_PERF_HELPER, gtk+-3.0 gio-2.0)
|
||||
|
||||
GJS_VERSION=`$PKG_CONFIG --modversion gjs-internals-1.0`
|
||||
AC_DEFINE_UNQUOTED([GJS_VERSION], ["$GJS_VERSION"], [The version of GJS we're linking to])
|
||||
AC_SUBST([GJS_VERSION], ["$GJS_VERSION"])
|
||||
@ -190,20 +192,6 @@ AC_ARG_ENABLE(jhbuild-wrapper-script,
|
||||
AS_HELP_STRING([--jhbuild-wrapper-script=yes],[Make "gnome-shell" script work for jhbuild]),,enable_jhbuild_wrapper_script=no)
|
||||
AM_CONDITIONAL(USE_JHBUILD_WRAPPER_SCRIPT, test "x$enable_jhbuild_wrapper_script" = xyes)
|
||||
|
||||
AC_MSG_CHECKING([for Ubuntu])
|
||||
if test -f /etc/ubuntu_version; then
|
||||
enable_dynamic_mozjs_hack_default=yes
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
enable_dynamic_mozjs_hack_default=no
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(dynamic-mozjs-hack,
|
||||
AS_HELP_STRING([--dynamic-mozjs-hack=no],[Look for libmozjs.so using pkg-config]),,enable_dynamic_mozjs_hack=$enable_dynamic_mozjs_hack_default)
|
||||
ENABLE_DYNAMIC_MOZJS_HACK=$enable_dynamic_mozjs_hack
|
||||
AC_SUBST(ENABLE_DYNAMIC_MOZJS_HACK)
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
data/Makefile
|
||||
|
@ -150,6 +150,8 @@ StTooltip StLabel {
|
||||
-slider-height: 0.3em;
|
||||
-slider-background-color: #333333;
|
||||
-slider-border-color: #5f5f5f;
|
||||
-slider-active-background-color: #76b0ec;
|
||||
-slider-active-border-color: #1f6dbc;
|
||||
-slider-border-width: 1px;
|
||||
-slider-handle-radius: 0.5em;
|
||||
}
|
||||
@ -464,15 +466,6 @@ StTooltip StLabel {
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.view-tab-boxpointer {
|
||||
-arrow-border-radius: 9px;
|
||||
-arrow-background-color: rgba(0,0,0,0.5);
|
||||
-arrow-border-width: 2px;
|
||||
-arrow-border-color: rgba(255,255,255,0.5);
|
||||
-arrow-base: 30px;
|
||||
-arrow-rise: 15px;
|
||||
}
|
||||
|
||||
#searchResults {
|
||||
padding: 20px 10px 10px 10px;
|
||||
spacing: 18px;
|
||||
@ -1484,12 +1477,12 @@ StTooltip StLabel {
|
||||
}
|
||||
|
||||
.polkit-dialog-main-layout {
|
||||
spacing: 10px;
|
||||
spacing: 24px;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.polkit-dialog-message-layout {
|
||||
spacing: 10px;
|
||||
spacing: 16px;
|
||||
}
|
||||
|
||||
.polkit-dialog-headline {
|
||||
@ -1513,6 +1506,10 @@ StTooltip StLabel {
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.polkit-dialog-user-root-label {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
.polkit-dialog-password-label:ltr {
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
@ -1528,33 +1525,21 @@ StTooltip StLabel {
|
||||
}
|
||||
|
||||
.polkit-dialog-error-label {
|
||||
font-size: 12px;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.polkit-dialog-error-box {
|
||||
padding-top: 15px;
|
||||
spacing: 5px;
|
||||
}
|
||||
|
||||
.polkit-dialog-checking-label {
|
||||
font-size: 12px;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.polkit-dialog-checking-box {
|
||||
padding-top: 15px;
|
||||
spacing: 5px;
|
||||
font-size: 10pt;
|
||||
color: #ffff00;
|
||||
padding-bottom: 8px;
|
||||
}
|
||||
|
||||
.polkit-dialog-info-label {
|
||||
font-size: 12px;
|
||||
color: white;
|
||||
font-size: 10pt;
|
||||
padding-bottom: 8px;
|
||||
}
|
||||
|
||||
.polkit-dialog-info-box {
|
||||
padding-top: 15px;
|
||||
spacing: 5px;
|
||||
/* intentionally left transparent to avoid dialog changing size */
|
||||
.polkit-dialog-null-label {
|
||||
font-size: 10pt;
|
||||
color: rgba(0,0,0,0);
|
||||
padding-bottom: 8px;
|
||||
}
|
||||
|
||||
|
||||
|
@ -102,3 +102,24 @@ Inhibitor.prototype = {
|
||||
};
|
||||
DBus.proxifyPrototype(Inhibitor.prototype, InhibitorIface);
|
||||
Signals.addSignalMethods(Inhibitor.prototype);
|
||||
|
||||
|
||||
// Not the full interface, only the methods we use
|
||||
const SessionManagerIface = {
|
||||
name: 'org.gnome.SessionManager',
|
||||
methods: [
|
||||
{ name: 'Logout', inSignature: 'u', outSignature: '' },
|
||||
{ name: 'Shutdown', inSignature: '', outSignature: '' }
|
||||
]
|
||||
};
|
||||
|
||||
function SessionManager() {
|
||||
this._init();
|
||||
}
|
||||
|
||||
SessionManager.prototype = {
|
||||
_init: function() {
|
||||
DBus.session.proxifyObject(this, 'org.gnome.SessionManager', '/org/gnome/SessionManager');
|
||||
}
|
||||
};
|
||||
DBus.proxifyPrototype(SessionManager.prototype, SessionManagerIface);
|
@ -21,26 +21,77 @@ let METRICS = {
|
||||
overviewFpsSubsequent:
|
||||
{ description: "Frames rate when going to the overview, second time",
|
||||
units: "frames / s" },
|
||||
overviewFps5Windows:
|
||||
{ description: "Frames rate when going to the overview, 5 windows open",
|
||||
units: "frames / s" },
|
||||
overviewFps10Windows:
|
||||
{ description: "Frames rate when going to the overview, 10 windows open",
|
||||
units: "frames / s" },
|
||||
overviewFps5Maximized:
|
||||
{ description: "Frames rate when going to the overview, 5 maximized windows open",
|
||||
units: "frames / s" },
|
||||
overviewFps10Maximized:
|
||||
{ description: "Frames rate when going to the overview, 10 maximized windows open",
|
||||
units: "frames / s" },
|
||||
overviewFps5Alpha:
|
||||
{ description: "Frames rate when going to the overview, 5 alpha-transparent windows open",
|
||||
units: "frames / s" },
|
||||
overviewFps10Alpha:
|
||||
{ description: "Frames rate when going to the overview, 10 alpha-transparent windows open",
|
||||
units: "frames / s" },
|
||||
usedAfterOverview:
|
||||
{ description: "Malloc'ed bytes after the overview is shown once",
|
||||
units: "B" },
|
||||
leakedAfterOverview:
|
||||
{ description: "Additional malloc'ed bytes the second time the overview is shown",
|
||||
units: "B" }
|
||||
units: "B" },
|
||||
applicationsShowTimeFirst:
|
||||
{ description: "Time to switch to applications view, first time",
|
||||
units: "us" },
|
||||
applicationsShowTimeSubsequent:
|
||||
{ description: "Time to switch to applications view, second time",
|
||||
units: "us"}
|
||||
};
|
||||
|
||||
let WINDOW_CONFIGS = [
|
||||
{ width: 640, height: 480, alpha: false, maximized: false, count: 1, metric: 'overviewFpsSubsequent' },
|
||||
{ width: 640, height: 480, alpha: false, maximized: false, count: 5, metric: 'overviewFps5Windows' },
|
||||
{ width: 640, height: 480, alpha: false, maximized: false, count: 10, metric: 'overviewFps10Windows' },
|
||||
{ width: 640, height: 480, alpha: false, maximized: true, count: 5, metric: 'overviewFps5Maximized' },
|
||||
{ width: 640, height: 480, alpha: false, maximized: true, count: 10, metric: 'overviewFps10Maximized' },
|
||||
{ width: 640, height: 480, alpha: true, maximized: false, count: 5, metric: 'overviewFps5Alpha' },
|
||||
{ width: 640, height: 480, alpha: true, maximized: false, count: 10, metric: 'overviewFps10Alpha' }
|
||||
];
|
||||
|
||||
function run() {
|
||||
Scripting.defineScriptEvent("overviewShowStart", "Starting to show the overview");
|
||||
Scripting.defineScriptEvent("overviewShowDone", "Overview finished showing");
|
||||
Scripting.defineScriptEvent("afterShowHide", "After a show/hide cycle for the overview");
|
||||
Scripting.defineScriptEvent("applicationsShowStart", "Starting to switch to applications view");
|
||||
Scripting.defineScriptEvent("applicationsShowDone", "Done switching to applications view");
|
||||
|
||||
Main.overview.connect('shown', function() {
|
||||
Scripting.scriptEvent('overviewShowDone');
|
||||
});
|
||||
|
||||
yield Scripting.sleep(1000);
|
||||
|
||||
for (let i = 0; i < 2 * WINDOW_CONFIGS.length; i++) {
|
||||
// We go to the overview twice for each configuration; the first time
|
||||
// to calculate the mipmaps for the windows, the second time to get
|
||||
// a clean set of numbers.
|
||||
if ((i % 2) == 0) {
|
||||
let config = WINDOW_CONFIGS[i / 2];
|
||||
yield Scripting.destroyTestWindows();
|
||||
|
||||
for (let k = 0; k < config.count; k++)
|
||||
yield Scripting.createTestWindow(config.width, config.height, config.alpha, config.maximized);
|
||||
|
||||
yield Scripting.waitTestWindows();
|
||||
yield Scripting.sleep(1000);
|
||||
yield Scripting.waitLeisure();
|
||||
for (let i = 0; i < 2; i++) {
|
||||
}
|
||||
|
||||
Scripting.scriptEvent('overviewShowStart');
|
||||
Main.overview.show();
|
||||
|
||||
@ -53,6 +104,21 @@ function run() {
|
||||
Scripting.collectStatistics();
|
||||
Scripting.scriptEvent('afterShowHide');
|
||||
}
|
||||
|
||||
yield Scripting.destroyTestWindows();
|
||||
yield Scripting.sleep(1000);
|
||||
|
||||
Main.overview.show();
|
||||
yield Scripting.waitLeisure();
|
||||
|
||||
for (let i = 0; i < 2; i++) {
|
||||
Scripting.scriptEvent('applicationsShowStart');
|
||||
Main.overview.viewSelector.switchTab('applications');
|
||||
yield Scripting.waitLeisure();
|
||||
Scripting.scriptEvent('applicationsShowDone');
|
||||
Main.overview.viewSelector.switchTab('windows');
|
||||
yield Scripting.waitLeisure();
|
||||
}
|
||||
}
|
||||
|
||||
let showingOverview = false;
|
||||
@ -64,6 +130,8 @@ let mallocUsedSize = 0;
|
||||
let overviewShowCount = 0;
|
||||
let firstOverviewUsedSize;
|
||||
let haveSwapComplete = false;
|
||||
let applicationsShowStart;
|
||||
let applicationsShowCount = 0;
|
||||
|
||||
function script_overviewShowStart(time) {
|
||||
showingOverview = true;
|
||||
@ -79,6 +147,18 @@ function script_overviewShowDone(time) {
|
||||
finishedShowingOverview = true;
|
||||
}
|
||||
|
||||
function script_applicationsShowStart(time) {
|
||||
applicationsShowStart = time;
|
||||
}
|
||||
|
||||
function script_applicationsShowDone(time) {
|
||||
applicationsShowCount++;
|
||||
if (applicationsShowCount == 1)
|
||||
METRICS.applicationsShowTimeFirst.value = time - applicationsShowStart;
|
||||
else
|
||||
METRICS.applicationsShowTimeSubsequent.value = time - applicationsShowStart;
|
||||
}
|
||||
|
||||
function script_afterShowHide(time) {
|
||||
if (overviewShowCount == 1) {
|
||||
METRICS.usedAfterOverview.value = mallocUsedSize;
|
||||
@ -113,9 +193,15 @@ function _frameDone(time) {
|
||||
if (overviewShowCount == 1) {
|
||||
METRICS.overviewLatencyFirst.value = overviewLatency;
|
||||
METRICS.overviewFpsFirst.value = fps;
|
||||
} else {
|
||||
} else if (overviewShowCount == 2) {
|
||||
METRICS.overviewLatencySubsequent.value = overviewLatency;
|
||||
METRICS.overviewFpsSubsequent.value = fps;
|
||||
}
|
||||
|
||||
// Other than overviewFpsFirst, we collect FPS metrics the second
|
||||
// we show each window configuration. overviewShowCount is 1,2,3...
|
||||
if (overviewShowCount % 2 == 0) {
|
||||
let config = WINDOW_CONFIGS[(overviewShowCount / 2) - 1];
|
||||
METRICS[config.metric].value = fps;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -185,21 +185,6 @@ DateMenuButton.prototype = {
|
||||
}
|
||||
|
||||
let displayDate = new Date();
|
||||
let msecRemaining;
|
||||
if (showSeconds) {
|
||||
msecRemaining = 1000 - displayDate.getMilliseconds();
|
||||
if (msecRemaining < 50) {
|
||||
displayDate.setSeconds(displayDate.getSeconds() + 1);
|
||||
msecRemaining += 1000;
|
||||
}
|
||||
} else {
|
||||
msecRemaining = 60000 - (1000 * displayDate.getSeconds() +
|
||||
displayDate.getMilliseconds());
|
||||
if (msecRemaining < 500) {
|
||||
displayDate.setMinutes(displayDate.getMinutes() + 1);
|
||||
msecRemaining += 60000;
|
||||
}
|
||||
}
|
||||
|
||||
this._clock.set_text(displayDate.toLocaleFormat(clockFormat));
|
||||
|
||||
@ -209,7 +194,7 @@ DateMenuButton.prototype = {
|
||||
dateFormat = _("%A %B %e, %Y");
|
||||
this._date.set_text(displayDate.toLocaleFormat(dateFormat));
|
||||
|
||||
Mainloop.timeout_add(msecRemaining, Lang.bind(this, this._updateClockAndDate));
|
||||
Mainloop.timeout_add_seconds(1, Lang.bind(this, this._updateClockAndDate));
|
||||
return false;
|
||||
},
|
||||
|
||||
|
@ -64,6 +64,11 @@ function init() {
|
||||
Tweener.init();
|
||||
String.prototype.format = Format.format;
|
||||
|
||||
// Work around https://bugzilla.mozilla.org/show_bug.cgi?id=508783
|
||||
Date.prototype.toLocaleFormat = function(format) {
|
||||
return Shell.util_format_date(format, this.getTime());
|
||||
};
|
||||
|
||||
// Set the default direction for St widgets (this needs to be done before any use of St)
|
||||
if (Gettext_gtk30.gettext('default:LTR') == 'default:RTL') {
|
||||
St.Widget.set_default_direction(St.TextDirection.RTL);
|
||||
|
@ -263,9 +263,13 @@ function _checkWorkspaces() {
|
||||
}
|
||||
|
||||
let activeWorkspaceIndex = global.screen.get_active_workspace_index();
|
||||
let currentWorkspaceEmpty = emptyWorkspaces[activeWorkspaceIndex];
|
||||
let removingCurrentWorkspace = (emptyWorkspaces[activeWorkspaceIndex] &&
|
||||
activeWorkspaceIndex < emptyWorkspaces.length - 1);
|
||||
// Don't enter the overview when removing multiple empty workspaces at startup
|
||||
let showOverview = (removingCurrentWorkspace &&
|
||||
!emptyWorkspaces.every(function(x) { return x; }));
|
||||
|
||||
if (currentWorkspaceEmpty) {
|
||||
if (removingCurrentWorkspace) {
|
||||
// "Merge" the empty workspace we are removing with the one at the end
|
||||
wm.blockAnimations();
|
||||
}
|
||||
@ -276,11 +280,11 @@ function _checkWorkspaces() {
|
||||
global.screen.remove_workspace(_workspaces[i], global.get_current_time());
|
||||
}
|
||||
|
||||
if (currentWorkspaceEmpty) {
|
||||
if (removingCurrentWorkspace) {
|
||||
global.screen.get_workspace_by_index(global.screen.n_workspaces - 1).activate(global.get_current_time());
|
||||
wm.unblockAnimations();
|
||||
|
||||
if (!overview.visible)
|
||||
if (!overview.visible && showOverview)
|
||||
overview.show();
|
||||
}
|
||||
|
||||
|
@ -180,10 +180,10 @@ Overview.prototype = {
|
||||
this._group.add_actor(this.viewSelector.actor);
|
||||
|
||||
this._workspacesDisplay = new WorkspacesView.WorkspacesDisplay();
|
||||
this.viewSelector.addViewTab(_("Windows"), this._workspacesDisplay.actor, 'text-x-generic');
|
||||
this.viewSelector.addViewTab('windows', _("Windows"), this._workspacesDisplay.actor, 'text-x-generic');
|
||||
|
||||
let appView = new AppDisplay.AllAppDisplay();
|
||||
this.viewSelector.addViewTab(_("Applications"), appView.actor, 'system-run');
|
||||
this.viewSelector.addViewTab('applications', _("Applications"), appView.actor, 'system-run');
|
||||
|
||||
// Default search providers
|
||||
this.viewSelector.addSearchProvider(new AppDisplay.AppSearchProvider());
|
||||
@ -224,6 +224,7 @@ Overview.prototype = {
|
||||
this._resetWindowSwitchTimeout();
|
||||
this._lastHoveredWindow = null;
|
||||
DND.removeMonitor(this._dragMonitor);
|
||||
this.endItemDrag();
|
||||
},
|
||||
|
||||
_resetWindowSwitchTimeout: function() {
|
||||
|
@ -176,37 +176,8 @@ PlacesManager.prototype = {
|
||||
Util.spawn(['nautilus-connect-server']);
|
||||
});
|
||||
|
||||
let networkApp = null;
|
||||
try {
|
||||
networkApp = Shell.AppSystem.get_default().load_from_desktop_file('gnome-network-scheme.desktop');
|
||||
} catch(e) {
|
||||
try {
|
||||
networkApp = Shell.AppSystem.get_default().load_from_desktop_file('network-scheme.desktop');
|
||||
} catch(e) {
|
||||
log('Cannot create "Network" item, .desktop file not found or corrupt.');
|
||||
}
|
||||
}
|
||||
|
||||
if (networkApp != null) {
|
||||
this._network = new PlaceInfo('special:network', networkApp.get_name(),
|
||||
function(size) {
|
||||
return networkApp.create_icon_texture(size);
|
||||
},
|
||||
function (params) {
|
||||
params = Params.parse(params, { workspace: null,
|
||||
timestamp: 0 });
|
||||
|
||||
networkApp.launch_full(params.timestamp, [],
|
||||
params.workspace ? params.workspace.index() : -1);
|
||||
});
|
||||
}
|
||||
|
||||
this._defaultPlaces.push(this._home);
|
||||
this._defaultPlaces.push(this._desktopMenu);
|
||||
|
||||
if (this._network)
|
||||
this._defaultPlaces.push(this._network);
|
||||
|
||||
this._defaultPlaces.push(this._connect);
|
||||
|
||||
/*
|
||||
|
@ -49,6 +49,8 @@ AuthenticationDialog.prototype = {
|
||||
this.actionId = actionId;
|
||||
this.message = message;
|
||||
this.userNames = userNames;
|
||||
this._wasDismissed = false;
|
||||
this._completed = false;
|
||||
|
||||
let mainContentBox = new St.BoxLayout({ style_class: 'polkit-dialog-main-layout',
|
||||
vertical: false });
|
||||
@ -100,17 +102,24 @@ AuthenticationDialog.prototype = {
|
||||
Lang.bind(this, this._onUserChanged));
|
||||
|
||||
// Special case 'root'
|
||||
if (userName == 'root')
|
||||
let userIsRoot = false;
|
||||
if (userName == 'root') {
|
||||
userIsRoot = true;
|
||||
userRealName = _('Administrator');
|
||||
}
|
||||
|
||||
// Work around Gdm.UserManager returning an empty string for the real name
|
||||
if (userRealName.length == 0)
|
||||
userRealName = userName;
|
||||
|
||||
if (userIsRoot) {
|
||||
let userLabel = new St.Label(({ style_class: 'polkit-dialog-user-root-label',
|
||||
text: userRealName }));
|
||||
messageBox.add(userLabel);
|
||||
} else {
|
||||
let userBox = new St.BoxLayout({ style_class: 'polkit-dialog-user-layout',
|
||||
vertical: false });
|
||||
messageBox.add(userBox);
|
||||
|
||||
this._userIcon = new St.Icon();
|
||||
this._userIcon.hide();
|
||||
userBox.add(this._userIcon,
|
||||
@ -118,7 +127,6 @@ AuthenticationDialog.prototype = {
|
||||
y_fill: false,
|
||||
x_align: St.Align.END,
|
||||
y_align: St.Align.START });
|
||||
|
||||
let userLabel = new St.Label(({ style_class: 'polkit-dialog-user-label',
|
||||
text: userRealName }));
|
||||
userBox.add(userLabel,
|
||||
@ -126,6 +134,7 @@ AuthenticationDialog.prototype = {
|
||||
y_fill: false,
|
||||
x_align: St.Align.END,
|
||||
y_align: St.Align.MIDDLE });
|
||||
}
|
||||
|
||||
this._onUserChanged();
|
||||
|
||||
@ -141,32 +150,28 @@ AuthenticationDialog.prototype = {
|
||||
{expand: true });
|
||||
this._passwordBox.hide();
|
||||
|
||||
this._errorBox = new St.BoxLayout({ style_class: 'polkit-dialog-error-box' });
|
||||
messageBox.add(this._errorBox);
|
||||
let errorIcon = new St.Icon({ icon_name: 'dialog-error',
|
||||
icon_size: 24,
|
||||
style_class: 'polkit-dialog-error-icon' });
|
||||
this._errorBox.add(errorIcon, { y_align: St.Align.MIDDLE });
|
||||
this._errorMessage = new St.Label({ style_class: 'polkit-dialog-error-label' });
|
||||
this._errorMessage.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
|
||||
this._errorMessage.clutter_text.line_wrap = true;
|
||||
this._errorBox.add(this._errorMessage, { expand: true,
|
||||
y_align: St.Align.MIDDLE,
|
||||
y_fill: true });
|
||||
this._errorBox.hide();
|
||||
this._errorMessageLabel = new St.Label({ style_class: 'polkit-dialog-error-label' });
|
||||
this._errorMessageLabel.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
|
||||
this._errorMessageLabel.clutter_text.line_wrap = true;
|
||||
messageBox.add(this._errorMessageLabel);
|
||||
this._errorMessageLabel.hide();
|
||||
|
||||
this._infoBox = new St.BoxLayout({ style_class: 'polkit-dialog-info-box' });
|
||||
messageBox.add(this._infoBox);
|
||||
let infoIcon = new St.Icon({ icon_name: 'dialog-information',
|
||||
icon_size: 24,
|
||||
style_class: 'polkit-dialog-info-icon' });
|
||||
this._infoBox.add(infoIcon, { y_align: St.Align.MIDDLE });
|
||||
this._infoMessage = new St.Label({ style_class: 'polkit-dialog-info-label'});
|
||||
this._infoMessage.clutter_text.line_wrap = true;
|
||||
this._infoBox.add(this._infoMessage, { expand: true,
|
||||
y_align: St.Align.MIDDLE,
|
||||
y_fill: true });
|
||||
this._infoBox.hide();
|
||||
this._infoMessageLabel = new St.Label({ style_class: 'polkit-dialog-info-label' });
|
||||
this._infoMessageLabel.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
|
||||
this._infoMessageLabel.clutter_text.line_wrap = true;
|
||||
messageBox.add(this._infoMessageLabel);
|
||||
this._infoMessageLabel.hide();
|
||||
|
||||
/* text is intentionally non-blank otherwise the height is not the same as for
|
||||
* infoMessage and errorMessageLabel - but it is still invisible because
|
||||
* gnome-shell.css sets the color to be transparent
|
||||
*/
|
||||
this._nullMessageLabel = new St.Label({ style_class: 'polkit-dialog-null-label',
|
||||
text: 'abc'});
|
||||
this._nullMessageLabel.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
|
||||
this._nullMessageLabel.clutter_text.line_wrap = true;
|
||||
messageBox.add(this._nullMessageLabel);
|
||||
this._nullMessageLabel.show();
|
||||
|
||||
this.setButtons([{ label: _('Cancel'),
|
||||
action: Lang.bind(this, this.cancel),
|
||||
@ -234,8 +239,9 @@ AuthenticationDialog.prototype = {
|
||||
this._session.response(response);
|
||||
// When the user responds, dismiss already shown info and
|
||||
// error texts (if any)
|
||||
this._errorBox.hide();
|
||||
this._infoBox.hide();
|
||||
this._errorMessageLabel.hide();
|
||||
this._infoMessageLabel.hide();
|
||||
this._nullMessageLabel.show();
|
||||
},
|
||||
|
||||
_onAuthenticateButtonPressed: function() {
|
||||
@ -243,7 +249,24 @@ AuthenticationDialog.prototype = {
|
||||
},
|
||||
|
||||
_onSessionCompleted: function(session, gainedAuthorization) {
|
||||
this._passwordBox.hide();
|
||||
if (this._completed)
|
||||
return;
|
||||
|
||||
this._completed = true;
|
||||
|
||||
if (!gainedAuthorization) {
|
||||
/* Unless we are showing an existing error message from the PAM
|
||||
* module (the PAM module could be reporting the authentication
|
||||
* error providing authentication-method specific information),
|
||||
* show "Sorry, that didn't work. Please try again."
|
||||
*/
|
||||
if (!this._errorMessageLabel.visible && !this._wasDismissed) {
|
||||
this._errorMessageLabel.set_text(_('Sorry, that didn\'t work. Please try again.'));
|
||||
this._errorMessageLabel.show();
|
||||
this._infoMessageLabel.hide();
|
||||
this._nullMessageLabel.hide();
|
||||
}
|
||||
}
|
||||
this._emitDone(!gainedAuthorization, false);
|
||||
},
|
||||
|
||||
@ -267,20 +290,25 @@ AuthenticationDialog.prototype = {
|
||||
|
||||
_onSessionShowError: function(session, text) {
|
||||
this._passwordEntry.set_text('');
|
||||
this._errorMessage.set_text(text);
|
||||
this._errorBox.show();
|
||||
this._errorMessageLabel.set_text(text);
|
||||
this._errorMessageLabel.show();
|
||||
this._infoMessageLabel.hide();
|
||||
this._nullMessageLabel.hide();
|
||||
this._ensureOpen();
|
||||
},
|
||||
|
||||
_onSessionShowInfo: function(session, text) {
|
||||
this._passwordEntry.set_text('');
|
||||
this._infoMessage.set_text(text);
|
||||
this._infoBox.show();
|
||||
this._infoMessageLabel.set_text(text);
|
||||
this._infoMessageLabel.show();
|
||||
this._errorMessageLabel.hide();
|
||||
this._nullMessageLabel.hide();
|
||||
this._ensureOpen();
|
||||
},
|
||||
|
||||
destroySession: function() {
|
||||
if (this._session) {
|
||||
if (!this._completed)
|
||||
this._session.cancel();
|
||||
this._session = null;
|
||||
}
|
||||
@ -288,6 +316,7 @@ AuthenticationDialog.prototype = {
|
||||
|
||||
_onUserChanged: function() {
|
||||
if (this._user.is_loaded) {
|
||||
if (this._userIcon) {
|
||||
let iconFileName = this._user.get_icon_file();
|
||||
let iconFile = Gio.file_new_for_path(iconFileName);
|
||||
let icon;
|
||||
@ -299,9 +328,11 @@ AuthenticationDialog.prototype = {
|
||||
this._userIcon.set_gicon (icon);
|
||||
this._userIcon.show();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
cancel: function() {
|
||||
this._wasDismissed = true;
|
||||
this.close(global.get_current_time());
|
||||
this._emitDone(false, true);
|
||||
},
|
||||
|
@ -485,12 +485,30 @@ PopupSliderMenuItem.prototype = {
|
||||
let sliderBorderColor = themeNode.get_color('-slider-border-color');
|
||||
let sliderColor = themeNode.get_color('-slider-background-color');
|
||||
|
||||
let sliderActiveBorderColor = themeNode.get_color('-slider-active-border-color');
|
||||
let sliderActiveColor = themeNode.get_color('-slider-active-background-color');
|
||||
|
||||
cr.setSourceRGBA (
|
||||
sliderActiveColor.red / 255,
|
||||
sliderActiveColor.green / 255,
|
||||
sliderActiveColor.blue / 255,
|
||||
sliderActiveColor.alpha / 255);
|
||||
cr.rectangle(handleRadius, (height - sliderHeight) / 2, sliderWidth * this._value, sliderHeight);
|
||||
cr.fillPreserve();
|
||||
cr.setSourceRGBA (
|
||||
sliderActiveBorderColor.red / 255,
|
||||
sliderActiveBorderColor.green / 255,
|
||||
sliderActiveBorderColor.blue / 255,
|
||||
sliderActiveBorderColor.alpha / 255);
|
||||
cr.setLineWidth(sliderBorderWidth);
|
||||
cr.stroke();
|
||||
|
||||
cr.setSourceRGBA (
|
||||
sliderColor.red / 255,
|
||||
sliderColor.green / 255,
|
||||
sliderColor.blue / 255,
|
||||
sliderColor.alpha / 255);
|
||||
cr.rectangle(handleRadius, (height - sliderHeight) / 2, sliderWidth, sliderHeight);
|
||||
cr.rectangle(handleRadius + sliderWidth * this._value, (height - sliderHeight) / 2, sliderWidth * (1 - this._value), sliderHeight);
|
||||
cr.fillPreserve();
|
||||
cr.setSourceRGBA (
|
||||
sliderBorderColor.red / 255,
|
||||
@ -806,6 +824,8 @@ PopupMenuBase.prototype = {
|
||||
let columnWidths = [];
|
||||
let items = this.box.get_children();
|
||||
for (let i = 0; i < items.length; i++) {
|
||||
if (!items[i].visible)
|
||||
continue;
|
||||
if (items[i]._delegate instanceof PopupBaseMenuItem || items[i]._delegate instanceof PopupMenuBase) {
|
||||
let itemColumnWidths = items[i]._delegate.getColumnWidths();
|
||||
for (let j = 0; j < itemColumnWidths.length; j++) {
|
||||
|
@ -1,5 +1,6 @@
|
||||
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
|
||||
|
||||
const DBus = imports.dbus;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Mainloop = imports.mainloop;
|
||||
|
||||
@ -68,6 +69,104 @@ function waitLeisure() {
|
||||
};
|
||||
}
|
||||
|
||||
const PerfHelperIface = {
|
||||
name: 'org.gnome.Shell.PerfHelper',
|
||||
methods: [{ name: 'CreateWindow', inSignature: 'iibb', outSignature: '' },
|
||||
{ name: 'WaitWindows', inSignature: '', outSignature: '' },
|
||||
{ name: 'DestroyWindows', inSignature: '', outSignature: ''}]
|
||||
};
|
||||
|
||||
const PerfHelper = function () {
|
||||
this._init();
|
||||
};
|
||||
|
||||
PerfHelper.prototype = {
|
||||
_init: function() {
|
||||
DBus.session.proxifyObject(this, 'org.gnome.Shell.PerfHelper', '/org/gnome/Shell/PerfHelper');
|
||||
}
|
||||
};
|
||||
|
||||
DBus.proxifyPrototype(PerfHelper.prototype, PerfHelperIface);
|
||||
|
||||
let _perfHelper = null;
|
||||
function _getPerfHelper() {
|
||||
if (_perfHelper == null)
|
||||
_perfHelper = new PerfHelper();
|
||||
|
||||
return _perfHelper;
|
||||
}
|
||||
|
||||
/**
|
||||
* createTestWindow:
|
||||
* @width: width of window, in pixels
|
||||
* @height: height of window, in pixels
|
||||
* @alpha: whether the window should be alpha transparent
|
||||
* @maximized: whethe the window should be created maximized
|
||||
*
|
||||
* Creates a window using gnome-shell-perf-helper for testing purposes.
|
||||
* While this function can be used with yield in an automation
|
||||
* script to pause until the D-Bus call to the helper process returns,
|
||||
* because of the normal X asynchronous mapping process, to actually wait
|
||||
* until the window has been mapped and exposed, use waitTestWindows().
|
||||
*/
|
||||
function createTestWindow(width, height, alpha, maximized) {
|
||||
let cb;
|
||||
let perfHelper = _getPerfHelper();
|
||||
|
||||
perfHelper.CreateWindowRemote(width, height, alpha, maximized,
|
||||
function(result, excp) {
|
||||
if (cb)
|
||||
cb();
|
||||
});
|
||||
|
||||
return function(callback) {
|
||||
cb = callback;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* waitTestWindows:
|
||||
*
|
||||
* Used within an automation script to pause until all windows previously
|
||||
* created with createTestWindow have been mapped and exposed.
|
||||
*/
|
||||
function waitTestWindows() {
|
||||
let cb;
|
||||
let perfHelper = _getPerfHelper();
|
||||
|
||||
perfHelper.WaitWindowsRemote(function(result, excp) {
|
||||
if (cb)
|
||||
cb();
|
||||
});
|
||||
|
||||
return function(callback) {
|
||||
cb = callback;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* destroyTestWindows:
|
||||
*
|
||||
* Destroys all windows previously created with createTestWindow().
|
||||
* While this function can be used with yield in an automation
|
||||
* script to pause until the D-Bus call to the helper process returns,
|
||||
* this doesn't guarantee that Mutter has actually finished the destroy
|
||||
* process because of normal X asynchronicity.
|
||||
*/
|
||||
function destroyTestWindows() {
|
||||
let cb;
|
||||
let perfHelper = _getPerfHelper();
|
||||
|
||||
perfHelper.DestroyWindowsRemote(function(result, excp) {
|
||||
if (cb)
|
||||
cb();
|
||||
});
|
||||
|
||||
return function(callback) {
|
||||
cb = callback;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* defineScriptEvent
|
||||
* @name: The event will be called script.<name>
|
||||
@ -147,8 +246,8 @@ function _collect(scriptModule, outputFile) {
|
||||
Shell.write_string_to_stream(out, '"events":\n');
|
||||
Shell.PerfLog.get_default().dump_events(out);
|
||||
|
||||
let monitors = global.get_monitors()
|
||||
let primary = global.get_primary_monitor()
|
||||
let monitors = global.get_monitors();
|
||||
let primary = global.get_primary_monitor();
|
||||
Shell.write_string_to_stream(out, ',\n"monitors":\n[');
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
let monitor = monitors[i];
|
||||
@ -168,6 +267,20 @@ function _collect(scriptModule, outputFile) {
|
||||
let first = true;
|
||||
for (let name in scriptModule.METRICS) {
|
||||
let metric = scriptModule.METRICS[name];
|
||||
// Extra checks here because JSON.stringify generates
|
||||
// invalid JSON for undefined values
|
||||
if (metric.description == null) {
|
||||
log("Error: No description found for metric " + name);
|
||||
continue;
|
||||
}
|
||||
if (metric.units == null) {
|
||||
log("Error: No units found for metric " + name);
|
||||
continue;
|
||||
}
|
||||
if (metric.value == null) {
|
||||
log("Error: No value found for metric " + name);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!first)
|
||||
Shell.write_string_to_stream(out, ',\n ');
|
||||
|
@ -471,9 +471,15 @@ PinNotification.prototype = {
|
||||
|
||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
||||
if (action == 'ok') {
|
||||
if (this._numeric)
|
||||
this._applet.agent_reply_passkey(this._devicePath, parseInt(this._entry.text));
|
||||
else
|
||||
if (this._numeric) {
|
||||
let num = parseInt(this._entry.text);
|
||||
if (isNaN(num)) {
|
||||
// user reply was empty, or was invalid
|
||||
// cancel the operation
|
||||
num = -1;
|
||||
}
|
||||
this._applet.agent_reply_passkey(this._devicePath, num);
|
||||
} else
|
||||
this._applet.agent_reply_pincode(this._devicePath, this._entry.text);
|
||||
} else {
|
||||
if (this._numeric)
|
||||
|
@ -16,7 +16,6 @@ const Util = imports.misc.util;
|
||||
const Gettext = imports.gettext.domain('gnome-shell');
|
||||
const _ = Gettext.gettext;
|
||||
|
||||
const VOLUME_MAX = 65536.0; /* PA_VOLUME_NORM */
|
||||
const VOLUME_ADJUSTMENT_STEP = 0.05; /* Volume adjustment step in % */
|
||||
|
||||
const VOLUME_NOTIFY_ID = 1;
|
||||
@ -37,6 +36,8 @@ Indicator.prototype = {
|
||||
this._control.connect('default-source-changed', Lang.bind(this, this._readInput));
|
||||
this._control.connect('stream-added', Lang.bind(this, this._maybeShowInput));
|
||||
this._control.connect('stream-removed', Lang.bind(this, this._maybeShowInput));
|
||||
this._volumeMax = this._control.get_vol_max_norm();
|
||||
this._volumeMaxAmplified = this._control.get_vol_max_amplified();
|
||||
|
||||
this._output = null;
|
||||
this._outputVolumeId = 0;
|
||||
@ -72,9 +73,9 @@ Indicator.prototype = {
|
||||
|
||||
_getMaxVolume: function(property) {
|
||||
if (this[property].get_can_decibel())
|
||||
return (VOLUME_MAX * 1.5);
|
||||
return this._volumeMaxAmplified;
|
||||
else
|
||||
return VOLUME_MAX;
|
||||
return this._volumeMax;
|
||||
},
|
||||
|
||||
_onScrollEvent: function(actor, event) {
|
||||
|
@ -50,6 +50,7 @@ StatusMenuButton.prototype = {
|
||||
this._user = this._gdm.get_user(GLib.get_user_name());
|
||||
this._presence = new GnomeSession.Presence();
|
||||
this._presenceItems = {};
|
||||
this._session = new GnomeSession.SessionManager();
|
||||
|
||||
this._account_mgr = Tp.AccountManager.dup()
|
||||
|
||||
@ -210,7 +211,7 @@ StatusMenuButton.prototype = {
|
||||
|
||||
_onQuitSessionActivate: function() {
|
||||
Main.overview.hide();
|
||||
Util.spawn(['gnome-session-quit', '--logout']);
|
||||
this._session.LogoutRemote(0);
|
||||
},
|
||||
|
||||
_onSuspendOrPowerOffActivate: function() {
|
||||
@ -222,7 +223,7 @@ StatusMenuButton.prototype = {
|
||||
this._upClient.suspend_sync(null);
|
||||
}));
|
||||
} else {
|
||||
Util.spawn(['gnome-session-quit', '--power-off']);
|
||||
this._session.ShutdownRemote();
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -77,14 +77,16 @@ BaseTab.prototype = {
|
||||
Signals.addSignalMethods(BaseTab.prototype);
|
||||
|
||||
|
||||
function ViewTab(label, pageActor, a11yIcon) {
|
||||
this._init(label, pageActor, a11yIcon);
|
||||
function ViewTab(id, label, pageActor, a11yIcon) {
|
||||
this._init(id, label, pageActor, a11yIcon);
|
||||
}
|
||||
|
||||
ViewTab.prototype = {
|
||||
__proto__: BaseTab.prototype,
|
||||
|
||||
_init: function(label, pageActor, a11yIcon) {
|
||||
_init: function(id, label, pageActor, a11yIcon) {
|
||||
this.id = id;
|
||||
|
||||
let titleActor = new St.Button({ label: label,
|
||||
style_class: 'view-tab-title' });
|
||||
titleActor.connect('clicked', Lang.bind(this, this._activate));
|
||||
@ -383,8 +385,8 @@ ViewSelector.prototype = {
|
||||
}));
|
||||
},
|
||||
|
||||
addViewTab: function(title, pageActor, a11yIcon) {
|
||||
let viewTab = new ViewTab(title, pageActor, a11yIcon);
|
||||
addViewTab: function(id, title, pageActor, a11yIcon) {
|
||||
let viewTab = new ViewTab(id, title, pageActor, a11yIcon);
|
||||
this._tabs.push(viewTab);
|
||||
this._tabBox.add(viewTab.title);
|
||||
this._addTab(viewTab);
|
||||
@ -433,6 +435,14 @@ ViewSelector.prototype = {
|
||||
}
|
||||
},
|
||||
|
||||
switchTab: function(id) {
|
||||
for (let i = 0; i < this._tabs.length; i++)
|
||||
if (this._tabs[i].id == id) {
|
||||
this._switchTab(this._tabs[i]);
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
_switchDefaultTab: function() {
|
||||
if (this._tabs.length > 0)
|
||||
this._switchTab(this._tabs[0]);
|
||||
|
@ -320,6 +320,9 @@ WorkspacesView.prototype = {
|
||||
Main.overview.disconnect(this._overviewShownId);
|
||||
global.window_manager.disconnect(this._switchWorkspaceNotifyId);
|
||||
|
||||
if (this._inDrag)
|
||||
this._dragEnd();
|
||||
|
||||
if (this._timeoutId) {
|
||||
Mainloop.source_remove(this._timeoutId);
|
||||
this._timeoutId = 0;
|
||||
|
@ -1,3 +1,4 @@
|
||||
af
|
||||
ar
|
||||
bg
|
||||
ca
|
||||
|
4
po/el.po
4
po/el.po
@ -10,7 +10,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell.po.master\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-03-08 14:59+0200\n"
|
||||
"POT-Creation-Date: 2011-03-13 19:13+0200\n"
|
||||
"PO-Revision-Date: 2011-01-23 00:04+0200\n"
|
||||
"Last-Translator: Kostas Papadimas <pkst@gnome.org>\n"
|
||||
"Language-Team: Greek <team@gnome.gr>\n"
|
||||
@ -622,7 +622,7 @@ msgstr "ΤΟΠΟΘΕΣΙΕΣ $ ΣΥΣΚΕΥΕΣ"
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
#: ../js/ui/runDialog.js:201
|
||||
msgid "Please enter a command:"
|
||||
|
82
po/es.po
82
po/es.po
@ -2,6 +2,7 @@
|
||||
# Copyright (C) 2009 gnome-shell's COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the gnome-shell package.
|
||||
# Jorge González <jorgegonz@svn.gnome.org>, 2009, 2010, 2011.
|
||||
# Benjamín Valero Espinosa <benjavalero@gmail.com>, 2011.
|
||||
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2010, 2011.
|
||||
#
|
||||
msgid ""
|
||||
@ -9,8 +10,8 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell.master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&component=general\n"
|
||||
"POT-Creation-Date: 2011-03-09 18:36+0000\n"
|
||||
"PO-Revision-Date: 2011-03-09 19:37+0100\n"
|
||||
"POT-Creation-Date: 2011-03-09 21:00+0000\n"
|
||||
"PO-Revision-Date: 2011-03-10 10:59+0100\n"
|
||||
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
|
||||
"Language-Team: Español <gnome-es-list@gnome.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -95,16 +96,16 @@ msgid ""
|
||||
"at the optimal thread count on the system."
|
||||
msgstr ""
|
||||
"Establece la tubería GStreamer usada para codificar grabaciones. Sigue la "
|
||||
"sintaxis usada para gst-launch. La tubería debería tener un sumidero "
|
||||
"(«sink») de ensamblaje/sesensamblaje donde el vídeo que se está grabando se "
|
||||
"graba. Generalmente tendrá un origen de ensamblado/desensamblado; la salida "
|
||||
"de ese punto se escibirá en el archivo de salida. No obstante la tubería "
|
||||
"también puede tomar parte en su propia salida; esto se puede usar para "
|
||||
"enviar la salida a un servidor «icecast» a través de shout2send o similar. "
|
||||
"Cuando no está establecido o lo está a un valor vacío, se usará la tubería "
|
||||
"predeterminada. Actualmente es «videorate ! vp8enc quality=10 speed=2 "
|
||||
"threads=%T ! queue ! webmmux» y greba en WEBM usando el códec VP8. Se usa %T "
|
||||
"como suposición para el número de hilos óptimos en el sistema."
|
||||
"sintaxis usada para gst-launch. La tubería debería tener un sumidero («sink») "
|
||||
"de ensamblaje/sesensamblaje donde el vídeo que se está grabando se graba. "
|
||||
"Generalmente tendrá un origen de ensamblado/desensamblado; la salida de ese "
|
||||
"punto se escibirá en el archivo de salida. No obstante la tubería también "
|
||||
"puede tomar parte en su propia salida; esto se puede usar para enviar la "
|
||||
"salida a un servidor «icecast» a través de shout2send o similar. Cuando no "
|
||||
"está establecido o lo está a un valor vacío, se usará la tubería "
|
||||
"predeterminada. Actualmente es «videorate ! vp8enc quality=10 speed=2 threads="
|
||||
"%T ! queue ! webmmux» y greba en WEBM usando el códec VP8. Se usa %T como "
|
||||
"suposición para el número de hilos óptimos en el sistema."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:14
|
||||
msgid "Show date in clock"
|
||||
@ -373,7 +374,7 @@ msgstr "Esta semana"
|
||||
msgid "Next week"
|
||||
msgstr "La semana que viene"
|
||||
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:931
|
||||
msgid "Remove"
|
||||
msgstr "Quitar"
|
||||
|
||||
@ -476,7 +477,7 @@ msgstr "Pulse «Apagar» para salir de esas aplicaciones y apagar el sistema."
|
||||
#: ../js/ui/endSessionDialog.js:76
|
||||
#, c-format
|
||||
msgid "The system will shut down automatically in %d seconds."
|
||||
msgstr "El sistema se apagará automáticamente en %d segundo."
|
||||
msgstr "El sistema se apagará automáticamente en %d segundos."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:77
|
||||
msgid "Shutting down the system."
|
||||
@ -538,11 +539,11 @@ msgstr "Ver fuente"
|
||||
msgid "Web Page"
|
||||
msgstr "Página web"
|
||||
|
||||
#: ../js/ui/messageTray.js:926
|
||||
#: ../js/ui/messageTray.js:924
|
||||
msgid "Open"
|
||||
msgstr "Abrir"
|
||||
|
||||
#: ../js/ui/messageTray.js:1963
|
||||
#: ../js/ui/messageTray.js:1961
|
||||
msgid "System Information"
|
||||
msgstr "Información del sistema"
|
||||
|
||||
@ -618,39 +619,39 @@ msgstr "Buscando…"
|
||||
msgid "No matching results."
|
||||
msgstr "No se encontró ningún resultado coincidente."
|
||||
|
||||
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
|
||||
#: ../js/ui/statusMenu.js:113 ../js/ui/statusMenu.js:177
|
||||
msgid "Power Off..."
|
||||
msgstr "Apagar…"
|
||||
|
||||
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
|
||||
#: ../js/ui/statusMenu.js:115 ../js/ui/statusMenu.js:176
|
||||
msgid "Suspend"
|
||||
msgstr "Suspender"
|
||||
|
||||
#: ../js/ui/statusMenu.js:125
|
||||
#: ../js/ui/statusMenu.js:136
|
||||
msgid "Available"
|
||||
msgstr "Disponible"
|
||||
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
#: ../js/ui/statusMenu.js:141
|
||||
msgid "Busy"
|
||||
msgstr "Ocupado"
|
||||
|
||||
#: ../js/ui/statusMenu.js:138
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "My Account"
|
||||
msgstr "Mi cuenta"
|
||||
|
||||
#: ../js/ui/statusMenu.js:142
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "System Settings"
|
||||
msgstr "Configuración del sistema"
|
||||
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
#: ../js/ui/statusMenu.js:160
|
||||
msgid "Lock Screen"
|
||||
msgstr "Bloquear la pantalla"
|
||||
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
#: ../js/ui/statusMenu.js:164
|
||||
msgid "Switch User"
|
||||
msgstr "Cambiar de usuario"
|
||||
|
||||
#: ../js/ui/statusMenu.js:158
|
||||
#: ../js/ui/statusMenu.js:169
|
||||
msgid "Log Out..."
|
||||
msgstr "Cerrar la sesión…"
|
||||
|
||||
@ -696,7 +697,7 @@ msgstr "Contraste alto"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "<b>Texto:</b>"
|
||||
msgstr "Texto grande"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:241
|
||||
#: ../js/ui/status/bluetooth.js:337 ../js/ui/status/bluetooth.js:371
|
||||
@ -851,7 +852,7 @@ msgstr[1] "horas"
|
||||
#: ../js/ui/status/power.js:122
|
||||
msgid "minute"
|
||||
msgid_plural "minutes"
|
||||
msgstr[0] "miuto"
|
||||
msgstr[0] "minuto"
|
||||
msgstr[1] "minutos"
|
||||
|
||||
#: ../js/ui/status/power.js:125
|
||||
@ -940,7 +941,7 @@ msgstr "%s está ocupado/a."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:348
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#, no-c-format
|
||||
msgid "Sent at %X on %A"
|
||||
msgstr "Enviado a las %X el %A"
|
||||
@ -1223,8 +1224,8 @@ msgstr "%1$s: %2$s"
|
||||
#~ "If true and format is either \"12-hour\" or \"24-hour\", display seconds "
|
||||
#~ "in time."
|
||||
#~ msgstr ""
|
||||
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los "
|
||||
#~ "segundos en la hora."
|
||||
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los segundos "
|
||||
#~ "en la hora."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This key specifies the format used by the panel clock when the format key "
|
||||
@ -1241,19 +1242,18 @@ msgstr "%1$s: %2$s"
|
||||
#~ msgid ""
|
||||
#~ "This key specifies the hour format used by the panel clock. Possible "
|
||||
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
|
||||
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
|
||||
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
|
||||
#~ "to the format specified in the custom_format key. Note that if set to "
|
||||
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
|
||||
#~ "ignored."
|
||||
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
|
||||
#~ "01-01. If set to \"custom\", the clock will display time according to the "
|
||||
#~ "format specified in the custom_format key. Note that if set to either "
|
||||
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
|
||||
#~ msgstr ""
|
||||
#~ "Esta clave especifica el formato de la hora especificado por el reloj del "
|
||||
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 "
|
||||
#~ "horas), «unix» y «custom» (personalizado).Si se establece a «unix» el "
|
||||
#~ "reloj mostrará la hora en segundos desde la época (1 de enero de 1970). "
|
||||
#~ "Si se establece a «custom» el reloj mostrará la hora según el formato "
|
||||
#~ "especificado en la clave «custom_format». Note que si se establece a "
|
||||
#~ "«unix» o «custom» se ignoran las claves «show_date» y «show_seconds»."
|
||||
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 horas), "
|
||||
#~ "«unix» y «custom» (personalizado).Si se establece a «unix» el reloj mostrará "
|
||||
#~ "la hora en segundos desde la época (1 de enero de 1970). Si se establece "
|
||||
#~ "a «custom» el reloj mostrará la hora según el formato especificado en la "
|
||||
#~ "clave «custom_format». Note que si se establece a «unix» o «custom» se "
|
||||
#~ "ignoran las claves «show_date» y «show_seconds»."
|
||||
|
||||
#~ msgid "Clock Format"
|
||||
#~ msgstr "Formato del reloj"
|
||||
|
177
po/he.po
177
po/he.po
@ -8,14 +8,17 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-03-02 19:57+0200\n"
|
||||
"PO-Revision-Date: 2011-03-02 19:58+0200\n"
|
||||
"POT-Creation-Date: 2011-03-10 18:43+0200\n"
|
||||
"PO-Revision-Date: 2011-03-10 18:45+0200\n"
|
||||
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
|
||||
"Language-Team: Hebrew <he@li.org>\n"
|
||||
"Language-Team: Hebrew <sh.yaron@gmail.com>\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==1 ? 0 : (n>2||n==0) ? 1 :2;\n"
|
||||
"X-Poedit-Language: Hebrew\n"
|
||||
"X-Poedit-Country: ISRAEL\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
|
||||
#: ../data/gnome-shell.desktop.in.in.h:1
|
||||
msgid "GNOME Shell"
|
||||
@ -188,27 +191,27 @@ msgid "Execution of '%s' failed:"
|
||||
msgstr "ההרצה של '%s' נכשלה:"
|
||||
|
||||
#. Translators: Filter to display all applications
|
||||
#: ../js/ui/appDisplay.js:195
|
||||
#: ../js/ui/appDisplay.js:226
|
||||
msgid "All"
|
||||
msgstr "הכול"
|
||||
|
||||
#: ../js/ui/appDisplay.js:282
|
||||
#: ../js/ui/appDisplay.js:324
|
||||
msgid "APPLICATIONS"
|
||||
msgstr "יישומים"
|
||||
|
||||
#: ../js/ui/appDisplay.js:312
|
||||
#: ../js/ui/appDisplay.js:350
|
||||
msgid "SETTINGS"
|
||||
msgstr "הגדרות"
|
||||
|
||||
#: ../js/ui/appDisplay.js:572
|
||||
#: ../js/ui/appDisplay.js:612
|
||||
msgid "New Window"
|
||||
msgstr "חלון חדש"
|
||||
|
||||
#: ../js/ui/appDisplay.js:575
|
||||
#: ../js/ui/appDisplay.js:615
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "הסרה מהמועדפים"
|
||||
|
||||
#: ../js/ui/appDisplay.js:576
|
||||
#: ../js/ui/appDisplay.js:616
|
||||
msgid "Add to Favorites"
|
||||
msgstr "הוספה למועדפים"
|
||||
|
||||
@ -368,7 +371,7 @@ msgstr "השבוע"
|
||||
msgid "Next week"
|
||||
msgstr "בשבוע הבא"
|
||||
|
||||
#: ../js/ui/dash.js:174
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:931
|
||||
msgid "Remove"
|
||||
msgstr "הסרה"
|
||||
|
||||
@ -376,54 +379,54 @@ msgstr "הסרה"
|
||||
msgid "Date and Time Settings"
|
||||
msgstr "הגדרות תאריך ושעה"
|
||||
|
||||
#: ../js/ui/dateMenu.js:110
|
||||
#: ../js/ui/dateMenu.js:111
|
||||
msgid "Open Calendar"
|
||||
msgstr "פתיחת היומן"
|
||||
|
||||
#. Translators: This is the time format with date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:162
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
msgid "%a %b %e, %R:%S"
|
||||
msgstr "%a %b %e, %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:163
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
msgid "%a %b %e, %R"
|
||||
msgstr "%a %b %e, %R"
|
||||
|
||||
#. Translators: This is the time format without date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:167
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
msgid "%a %R:%S"
|
||||
msgstr "%a %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:168
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
msgid "%a %R"
|
||||
msgstr "%a %R"
|
||||
|
||||
#. Translators: This is a time format with date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:175
|
||||
#: ../js/ui/dateMenu.js:177
|
||||
msgid "%a %b %e, %l:%M:%S %p"
|
||||
msgstr "%a %b %e, %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:176
|
||||
#: ../js/ui/dateMenu.js:178
|
||||
msgid "%a %b %e, %l:%M %p"
|
||||
msgstr "%a %b %e, %l:%M %p"
|
||||
|
||||
#. Translators: This is a time format without date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:180
|
||||
#: ../js/ui/dateMenu.js:182
|
||||
msgid "%a %l:%M:%S %p"
|
||||
msgstr "%a %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:181
|
||||
#: ../js/ui/dateMenu.js:183
|
||||
msgid "%a %l:%M %p"
|
||||
msgstr "%a %l:%M %p"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#.
|
||||
#: ../js/ui/dateMenu.js:207
|
||||
#: ../js/ui/dateMenu.js:209
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%A ה־%e ב%B, %Y"
|
||||
|
||||
@ -500,37 +503,41 @@ msgstr "אישור"
|
||||
msgid "Cancel"
|
||||
msgstr "ביטול"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:587
|
||||
#: ../js/ui/lookingGlass.js:588
|
||||
msgid "No extensions installed"
|
||||
msgstr "לא מותקנות הרחבות"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:624
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
msgid "Enabled"
|
||||
msgstr "פעיל"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:626 ../src/gvc/gvc-mixer-control.c:1087
|
||||
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1087
|
||||
msgid "Disabled"
|
||||
msgstr "מנוטרל"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:628
|
||||
#: ../js/ui/lookingGlass.js:629
|
||||
msgid "Error"
|
||||
msgstr "שגיאה"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:630
|
||||
#: ../js/ui/lookingGlass.js:631
|
||||
msgid "Out of date"
|
||||
msgstr "לא בתוקף"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:655
|
||||
#: ../js/ui/lookingGlass.js:656
|
||||
msgid "View Source"
|
||||
msgstr "צפייה במקור"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:661
|
||||
#: ../js/ui/lookingGlass.js:662
|
||||
msgid "Web Page"
|
||||
msgstr "דף אינטרנט"
|
||||
|
||||
#: ../js/ui/messageTray.js:1902
|
||||
#: ../js/ui/messageTray.js:924
|
||||
msgid "Open"
|
||||
msgstr "פתיחה"
|
||||
|
||||
#: ../js/ui/messageTray.js:1961
|
||||
msgid "System Information"
|
||||
msgstr "פרטי המערכת"
|
||||
|
||||
@ -546,18 +553,28 @@ msgstr "חלונות"
|
||||
msgid "Applications"
|
||||
msgstr "יישומים"
|
||||
|
||||
#. Translators: this is the name of the dock/favorites area on
|
||||
#. the left of the overview
|
||||
#: ../js/ui/overview.js:202
|
||||
msgid "Dash"
|
||||
msgstr "חלונית"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:529
|
||||
#: ../js/ui/panel.js:560
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "יציאה מ־%s"
|
||||
|
||||
#. Button on the left side of the panel.
|
||||
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:897
|
||||
#: ../js/ui/panel.js:919
|
||||
msgid "Activities"
|
||||
msgstr "פעילויות"
|
||||
|
||||
#: ../js/ui/panel.js:1020
|
||||
msgid "Panel"
|
||||
msgstr "לוח"
|
||||
|
||||
#: ../js/ui/placeDisplay.js:122
|
||||
#, c-format
|
||||
msgid "Failed to unmount '%s'"
|
||||
@ -580,7 +597,7 @@ msgstr "מקומות והתקנים"
|
||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||
#. switches containing "◯" and "|"). Other values will
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:612
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
@ -588,91 +605,91 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Please enter a command:"
|
||||
msgstr "נא להזין פקודה:"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:295
|
||||
#: ../js/ui/searchDisplay.js:283
|
||||
msgid "Searching..."
|
||||
msgstr "בחיפוש..."
|
||||
|
||||
#: ../js/ui/searchDisplay.js:309
|
||||
#: ../js/ui/searchDisplay.js:297
|
||||
msgid "No matching results."
|
||||
msgstr "אין תוצאות תואמות."
|
||||
|
||||
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
|
||||
#: ../js/ui/statusMenu.js:113 ../js/ui/statusMenu.js:177
|
||||
msgid "Power Off..."
|
||||
msgstr "כיבוי..."
|
||||
|
||||
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
|
||||
#: ../js/ui/statusMenu.js:115 ../js/ui/statusMenu.js:176
|
||||
msgid "Suspend"
|
||||
msgstr "השהיה"
|
||||
|
||||
#: ../js/ui/statusMenu.js:125
|
||||
#: ../js/ui/statusMenu.js:136
|
||||
msgid "Available"
|
||||
msgstr "זמין"
|
||||
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
#: ../js/ui/statusMenu.js:141
|
||||
msgid "Busy"
|
||||
msgstr "עסוק"
|
||||
|
||||
#: ../js/ui/statusMenu.js:138
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "My Account"
|
||||
msgstr "החשבון שלי"
|
||||
|
||||
#: ../js/ui/statusMenu.js:142
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "System Settings"
|
||||
msgstr "הגדרות המערכת"
|
||||
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
#: ../js/ui/statusMenu.js:160
|
||||
msgid "Lock Screen"
|
||||
msgstr "נעילת המסך"
|
||||
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
#: ../js/ui/statusMenu.js:164
|
||||
msgid "Switch User"
|
||||
msgstr "החלפת משתמש"
|
||||
|
||||
#: ../js/ui/statusMenu.js:158
|
||||
#: ../js/ui/statusMenu.js:169
|
||||
msgid "Log Out..."
|
||||
msgstr "ניתוק..."
|
||||
|
||||
#: ../js/ui/status/accessibility.js:81
|
||||
#: ../js/ui/status/accessibility.js:62
|
||||
msgid "Zoom"
|
||||
msgstr "תקריב"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:88
|
||||
#: ../js/ui/status/accessibility.js:69
|
||||
msgid "Screen Reader"
|
||||
msgstr "מקריא מסך"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:92
|
||||
#: ../js/ui/status/accessibility.js:73
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "מקלדת מסך"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:96
|
||||
#: ../js/ui/status/accessibility.js:77
|
||||
msgid "Visual Alerts"
|
||||
msgstr "התראות חזותיות"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:99
|
||||
#: ../js/ui/status/accessibility.js:80
|
||||
msgid "Sticky Keys"
|
||||
msgstr "מקשים דביקים"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:102
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
msgid "Slow Keys"
|
||||
msgstr "מקשים אטיים"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:105
|
||||
#: ../js/ui/status/accessibility.js:86
|
||||
msgid "Bounce Keys"
|
||||
msgstr "מקשים קופצים"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:108
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
msgid "Mouse Keys"
|
||||
msgstr "מקשי עכבר"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:112
|
||||
#: ../js/ui/status/accessibility.js:93
|
||||
msgid "Universal Access Settings"
|
||||
msgstr "הגדרות גישה אוניברסלית"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:164
|
||||
#: ../js/ui/status/accessibility.js:145
|
||||
msgid "High Contrast"
|
||||
msgstr "ניגודיות גבוהה"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:209
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "טקסט גדול"
|
||||
|
||||
@ -843,51 +860,51 @@ msgstr[0] "דקה אחת נותרה"
|
||||
msgstr[1] "%d דקות נותרו"
|
||||
msgstr[2] "שתי דקות נותרו"
|
||||
|
||||
#: ../js/ui/status/power.js:241
|
||||
#: ../js/ui/status/power.js:227
|
||||
msgid "AC adapter"
|
||||
msgstr "מתאם חשמל"
|
||||
|
||||
#: ../js/ui/status/power.js:243
|
||||
#: ../js/ui/status/power.js:229
|
||||
msgid "Laptop battery"
|
||||
msgstr "סוללת נייד"
|
||||
|
||||
#: ../js/ui/status/power.js:245
|
||||
#: ../js/ui/status/power.js:231
|
||||
msgid "UPS"
|
||||
msgstr "אל־פסק"
|
||||
|
||||
#: ../js/ui/status/power.js:247
|
||||
#: ../js/ui/status/power.js:233
|
||||
msgid "Monitor"
|
||||
msgstr "צג"
|
||||
|
||||
#: ../js/ui/status/power.js:249
|
||||
#: ../js/ui/status/power.js:235
|
||||
msgid "Mouse"
|
||||
msgstr "עכבר"
|
||||
|
||||
#: ../js/ui/status/power.js:251
|
||||
#: ../js/ui/status/power.js:237
|
||||
msgid "Keyboard"
|
||||
msgstr "מקלדת"
|
||||
|
||||
#: ../js/ui/status/power.js:253
|
||||
#: ../js/ui/status/power.js:239
|
||||
msgid "PDA"
|
||||
msgstr "מחשב כף יד"
|
||||
|
||||
#: ../js/ui/status/power.js:255
|
||||
#: ../js/ui/status/power.js:241
|
||||
msgid "Cell phone"
|
||||
msgstr "טלפון סלולרי"
|
||||
|
||||
#: ../js/ui/status/power.js:257
|
||||
#: ../js/ui/status/power.js:243
|
||||
msgid "Media player"
|
||||
msgstr "נגן מדיה"
|
||||
|
||||
#: ../js/ui/status/power.js:259
|
||||
#: ../js/ui/status/power.js:245
|
||||
msgid "Tablet"
|
||||
msgstr "טבלת שליטה"
|
||||
|
||||
#: ../js/ui/status/power.js:261
|
||||
#: ../js/ui/status/power.js:247
|
||||
msgid "Computer"
|
||||
msgstr "מחשב"
|
||||
|
||||
#: ../js/ui/status/power.js:263 ../src/shell-app-system.c:1013
|
||||
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
|
||||
msgid "Unknown"
|
||||
msgstr "לא ידוע"
|
||||
|
||||
@ -922,7 +939,7 @@ msgstr "%s עסוק/ה."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:348
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#, no-c-format
|
||||
msgid "Sent at %X on %A"
|
||||
msgstr "נשלח ב־%X בשעה %A"
|
||||
@ -931,16 +948,20 @@ msgstr "נשלח ב־%X בשעה %A"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:103
|
||||
#: ../js/ui/viewSelector.js:117
|
||||
msgid "Type to search..."
|
||||
msgstr "יש להקליד כדי לחפש..."
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:43
|
||||
#: ../js/ui/viewSelector.js:137 ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "חיפוש"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:42
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "%s סיים את תהליך ההתחלה"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:45
|
||||
#: ../js/ui/windowAttentionHandler.js:44
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "'%s' מוכן"
|
||||
@ -969,11 +990,15 @@ msgstr[2] "2 קלטים"
|
||||
msgid "System Sounds"
|
||||
msgstr "צלילי מערכת"
|
||||
|
||||
#: ../src/shell-global.c:1298
|
||||
#: ../src/main.c:395
|
||||
msgid "Print version"
|
||||
msgstr "Print version"
|
||||
|
||||
#: ../src/shell-global.c:1308
|
||||
msgid "Less than a minute ago"
|
||||
msgstr "לפני פחות מדקה"
|
||||
|
||||
#: ../src/shell-global.c:1302
|
||||
#: ../src/shell-global.c:1312
|
||||
#, c-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
@ -981,7 +1006,7 @@ msgstr[0] "לפני דקה"
|
||||
msgstr[1] "לפני %d דקות"
|
||||
msgstr[2] "לפני 2 דקות"
|
||||
|
||||
#: ../src/shell-global.c:1307
|
||||
#: ../src/shell-global.c:1317
|
||||
#, c-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
@ -989,7 +1014,7 @@ msgstr[0] "לפני שעה"
|
||||
msgstr[1] "לפני %d שעות"
|
||||
msgstr[2] "לפני שעתיים"
|
||||
|
||||
#: ../src/shell-global.c:1312
|
||||
#: ../src/shell-global.c:1322
|
||||
#, c-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
@ -997,7 +1022,7 @@ msgstr[0] "לפני יום"
|
||||
msgstr[1] "לפני %d ימים"
|
||||
msgstr[2] "לפני יומיים"
|
||||
|
||||
#: ../src/shell-global.c:1317
|
||||
#: ../src/shell-global.c:1327
|
||||
#, c-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
@ -1019,10 +1044,6 @@ msgstr "תיקיית הבית"
|
||||
msgid "File System"
|
||||
msgstr "מערכת הקבצים"
|
||||
|
||||
#: ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "חיפוש"
|
||||
|
||||
#. Translators: the first string is the name of a gvfs
|
||||
#. * method, and the second string is a path. For
|
||||
#. * example, "Trash: some-directory". It means that the
|
||||
|
173
po/it.po
173
po/it.po
@ -8,8 +8,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-03-02 13:37+0100\n"
|
||||
"PO-Revision-Date: 2011-03-02 13:37+0100\n"
|
||||
"POT-Creation-Date: 2011-03-11 01:54+0100\n"
|
||||
"PO-Revision-Date: 2011-03-11 01:56+0100\n"
|
||||
"Last-Translator: Luca Ferretti <lferrett@gnome.org>\n"
|
||||
"Language-Team: Italian <tp@lists.linux.it>\n"
|
||||
"Language: it\n"
|
||||
@ -194,27 +194,27 @@ msgid "Execution of '%s' failed:"
|
||||
msgstr "Esecuzione di «%s» non riuscita:"
|
||||
|
||||
#. Translators: Filter to display all applications
|
||||
#: ../js/ui/appDisplay.js:195
|
||||
#: ../js/ui/appDisplay.js:226
|
||||
msgid "All"
|
||||
msgstr "Tutte"
|
||||
|
||||
#: ../js/ui/appDisplay.js:282
|
||||
#: ../js/ui/appDisplay.js:324
|
||||
msgid "APPLICATIONS"
|
||||
msgstr "APPLICAZIONI"
|
||||
|
||||
#: ../js/ui/appDisplay.js:312
|
||||
#: ../js/ui/appDisplay.js:350
|
||||
msgid "SETTINGS"
|
||||
msgstr "IMPOSTAZIONI"
|
||||
|
||||
#: ../js/ui/appDisplay.js:572
|
||||
#: ../js/ui/appDisplay.js:612
|
||||
msgid "New Window"
|
||||
msgstr "Nuova finestra"
|
||||
|
||||
#: ../js/ui/appDisplay.js:575
|
||||
#: ../js/ui/appDisplay.js:615
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Rimuovi dai preferiti"
|
||||
|
||||
#: ../js/ui/appDisplay.js:576
|
||||
#: ../js/ui/appDisplay.js:616
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Aggiungi ai preferiti"
|
||||
|
||||
@ -376,7 +376,7 @@ msgstr "Questa settimana"
|
||||
msgid "Next week"
|
||||
msgstr "Prossima settimana"
|
||||
|
||||
#: ../js/ui/dash.js:174
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:931
|
||||
msgid "Remove"
|
||||
msgstr "Rimuovi"
|
||||
|
||||
@ -384,54 +384,54 @@ msgstr "Rimuovi"
|
||||
msgid "Date and Time Settings"
|
||||
msgstr "Impostazioni data e ora"
|
||||
|
||||
#: ../js/ui/dateMenu.js:110
|
||||
#: ../js/ui/dateMenu.js:111
|
||||
msgid "Open Calendar"
|
||||
msgstr "Apri calendario"
|
||||
|
||||
#. Translators: This is the time format with date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:162
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
msgid "%a %b %e, %R:%S"
|
||||
msgstr "%a %e %b, %k.%M.%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:163
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
msgid "%a %b %e, %R"
|
||||
msgstr "%a %e %b, %k.%M"
|
||||
|
||||
#. Translators: This is the time format without date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:167
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
msgid "%a %R:%S"
|
||||
msgstr "%a %k.%M.%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:168
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
msgid "%a %R"
|
||||
msgstr "%a %k.%M"
|
||||
|
||||
#. Translators: This is a time format with date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:175
|
||||
#: ../js/ui/dateMenu.js:177
|
||||
msgid "%a %b %e, %l:%M:%S %p"
|
||||
msgstr "%a %e %b, %l.%M.%S %P"
|
||||
|
||||
#: ../js/ui/dateMenu.js:176
|
||||
#: ../js/ui/dateMenu.js:178
|
||||
msgid "%a %b %e, %l:%M %p"
|
||||
msgstr "%a %e %b, %l.%M %P"
|
||||
|
||||
#. Translators: This is a time format without date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:180
|
||||
#: ../js/ui/dateMenu.js:182
|
||||
msgid "%a %l:%M:%S %p"
|
||||
msgstr "%a %l.%M.%S %P"
|
||||
|
||||
#: ../js/ui/dateMenu.js:181
|
||||
#: ../js/ui/dateMenu.js:183
|
||||
msgid "%a %l:%M %p"
|
||||
msgstr "%a %l.%M %P"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#.
|
||||
#: ../js/ui/dateMenu.js:207
|
||||
#: ../js/ui/dateMenu.js:209
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%a %e %B %Y"
|
||||
|
||||
@ -516,39 +516,43 @@ msgstr "Conferma"
|
||||
msgid "Cancel"
|
||||
msgstr "Annulla"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:587
|
||||
#: ../js/ui/lookingGlass.js:588
|
||||
msgid "No extensions installed"
|
||||
msgstr "Nessuna estensione installata"
|
||||
|
||||
# (ndt) o abilitata?
|
||||
#: ../js/ui/lookingGlass.js:624
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
msgid "Enabled"
|
||||
msgstr "Abilitato"
|
||||
|
||||
# (ndt) o disabilitata?
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:626 ../src/gvc/gvc-mixer-control.c:1087
|
||||
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1087
|
||||
msgid "Disabled"
|
||||
msgstr "Disabilitato"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:628
|
||||
#: ../js/ui/lookingGlass.js:629
|
||||
msgid "Error"
|
||||
msgstr "Errore"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:630
|
||||
#: ../js/ui/lookingGlass.js:631
|
||||
msgid "Out of date"
|
||||
msgstr "Non aggiornato"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:655
|
||||
#: ../js/ui/lookingGlass.js:656
|
||||
msgid "View Source"
|
||||
msgstr "Visualizza sorgente"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:661
|
||||
#: ../js/ui/lookingGlass.js:662
|
||||
msgid "Web Page"
|
||||
msgstr "Pagina web"
|
||||
|
||||
#: ../js/ui/messageTray.js:1902
|
||||
#: ../js/ui/messageTray.js:924
|
||||
msgid "Open"
|
||||
msgstr "Apri"
|
||||
|
||||
#: ../js/ui/messageTray.js:1961
|
||||
msgid "System Information"
|
||||
msgstr "Informazione di sistema"
|
||||
|
||||
@ -564,18 +568,29 @@ msgstr "Finestre"
|
||||
msgid "Applications"
|
||||
msgstr "Applicazioni"
|
||||
|
||||
# cruscotto?!?!?!?!?!?!?
|
||||
#. Translators: this is the name of the dock/favorites area on
|
||||
#. the left of the overview
|
||||
#: ../js/ui/overview.js:202
|
||||
msgid "Dash"
|
||||
msgstr "Dash"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:529
|
||||
#: ../js/ui/panel.js:560
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "Chiudi %s"
|
||||
|
||||
#. Button on the left side of the panel.
|
||||
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:897
|
||||
#: ../js/ui/panel.js:919
|
||||
msgid "Activities"
|
||||
msgstr "Attività"
|
||||
|
||||
#: ../js/ui/panel.js:1020
|
||||
msgid "Panel"
|
||||
msgstr "Pannello"
|
||||
|
||||
# (ndt) libera, ma unmount non si può proprio vedere...
|
||||
#: ../js/ui/placeDisplay.js:122
|
||||
#, c-format
|
||||
@ -599,7 +614,7 @@ msgstr "RISORSE E DISPOSITIVI"
|
||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||
#. switches containing "◯" and "|"). Other values will
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:612
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-us"
|
||||
|
||||
@ -607,91 +622,91 @@ msgstr "toggle-switch-us"
|
||||
msgid "Please enter a command:"
|
||||
msgstr "Inserire un comando:"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:295
|
||||
#: ../js/ui/searchDisplay.js:283
|
||||
msgid "Searching..."
|
||||
msgstr "Ricerca..."
|
||||
|
||||
#: ../js/ui/searchDisplay.js:309
|
||||
#: ../js/ui/searchDisplay.js:297
|
||||
msgid "No matching results."
|
||||
msgstr "Nessun risultato corrispondente."
|
||||
|
||||
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
|
||||
#: ../js/ui/statusMenu.js:113 ../js/ui/statusMenu.js:177
|
||||
msgid "Power Off..."
|
||||
msgstr "Spegni..."
|
||||
|
||||
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
|
||||
#: ../js/ui/statusMenu.js:115 ../js/ui/statusMenu.js:176
|
||||
msgid "Suspend"
|
||||
msgstr "Sospendi"
|
||||
|
||||
#: ../js/ui/statusMenu.js:125
|
||||
#: ../js/ui/statusMenu.js:136
|
||||
msgid "Available"
|
||||
msgstr "Disponibile"
|
||||
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
#: ../js/ui/statusMenu.js:141
|
||||
msgid "Busy"
|
||||
msgstr "Non disponibile"
|
||||
|
||||
#: ../js/ui/statusMenu.js:138
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "My Account"
|
||||
msgstr "Account personale"
|
||||
|
||||
#: ../js/ui/statusMenu.js:142
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "System Settings"
|
||||
msgstr "Impostazioni di sistema"
|
||||
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
#: ../js/ui/statusMenu.js:160
|
||||
msgid "Lock Screen"
|
||||
msgstr "Blocca schermo"
|
||||
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
#: ../js/ui/statusMenu.js:164
|
||||
msgid "Switch User"
|
||||
msgstr "Cambia utente"
|
||||
|
||||
#: ../js/ui/statusMenu.js:158
|
||||
#: ../js/ui/statusMenu.js:169
|
||||
msgid "Log Out..."
|
||||
msgstr "Termina sessione..."
|
||||
|
||||
#: ../js/ui/status/accessibility.js:81
|
||||
#: ../js/ui/status/accessibility.js:62
|
||||
msgid "Zoom"
|
||||
msgstr "Ingrandimento"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:88
|
||||
#: ../js/ui/status/accessibility.js:69
|
||||
msgid "Screen Reader"
|
||||
msgstr "Lettore schermo"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:92
|
||||
#: ../js/ui/status/accessibility.js:73
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "Tastiera a schermo"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:96
|
||||
#: ../js/ui/status/accessibility.js:77
|
||||
msgid "Visual Alerts"
|
||||
msgstr "Allerte visive"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:99
|
||||
#: ../js/ui/status/accessibility.js:80
|
||||
msgid "Sticky Keys"
|
||||
msgstr "Permanenza tasti"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:102
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
msgid "Slow Keys"
|
||||
msgstr "Rallentamento tasti"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:105
|
||||
#: ../js/ui/status/accessibility.js:86
|
||||
msgid "Bounce Keys"
|
||||
msgstr "Pressione ravvicinata tasti"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:108
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
msgid "Mouse Keys"
|
||||
msgstr "Mouse da tastiera"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:112
|
||||
#: ../js/ui/status/accessibility.js:93
|
||||
msgid "Universal Access Settings"
|
||||
msgstr "Impostazioni accesso universale"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:164
|
||||
#: ../js/ui/status/accessibility.js:145
|
||||
msgid "High Contrast"
|
||||
msgstr "Contrasto elevato"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:209
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "Caratteri grandi"
|
||||
|
||||
@ -861,52 +876,52 @@ msgid_plural "%d minutes remaining"
|
||||
msgstr[0] "%d minuto rimanente"
|
||||
msgstr[1] "%d minuti rimanenti"
|
||||
|
||||
#: ../js/ui/status/power.js:241
|
||||
#: ../js/ui/status/power.js:227
|
||||
msgid "AC adapter"
|
||||
msgstr "Alimentatore di corrente"
|
||||
|
||||
#: ../js/ui/status/power.js:243
|
||||
#: ../js/ui/status/power.js:229
|
||||
msgid "Laptop battery"
|
||||
msgstr "Batteria del portatile"
|
||||
|
||||
#: ../js/ui/status/power.js:245
|
||||
#: ../js/ui/status/power.js:231
|
||||
msgid "UPS"
|
||||
msgstr "UPS"
|
||||
|
||||
#: ../js/ui/status/power.js:247
|
||||
#: ../js/ui/status/power.js:233
|
||||
msgid "Monitor"
|
||||
msgstr "Monitor"
|
||||
|
||||
#: ../js/ui/status/power.js:249
|
||||
#: ../js/ui/status/power.js:235
|
||||
msgid "Mouse"
|
||||
msgstr "Mouse"
|
||||
|
||||
#: ../js/ui/status/power.js:251
|
||||
#: ../js/ui/status/power.js:237
|
||||
msgid "Keyboard"
|
||||
msgstr "Tastiera"
|
||||
|
||||
#: ../js/ui/status/power.js:253
|
||||
#: ../js/ui/status/power.js:239
|
||||
msgid "PDA"
|
||||
msgstr "PDS"
|
||||
|
||||
# c'era una discussione su tp...
|
||||
#: ../js/ui/status/power.js:255
|
||||
#: ../js/ui/status/power.js:241
|
||||
msgid "Cell phone"
|
||||
msgstr "Cellulare"
|
||||
|
||||
#: ../js/ui/status/power.js:257
|
||||
#: ../js/ui/status/power.js:243
|
||||
msgid "Media player"
|
||||
msgstr "Lettore multimediale"
|
||||
|
||||
#: ../js/ui/status/power.js:259
|
||||
#: ../js/ui/status/power.js:245
|
||||
msgid "Tablet"
|
||||
msgstr "Tablet"
|
||||
|
||||
#: ../js/ui/status/power.js:261
|
||||
#: ../js/ui/status/power.js:247
|
||||
msgid "Computer"
|
||||
msgstr "Computer"
|
||||
|
||||
#: ../js/ui/status/power.js:263 ../src/shell-app-system.c:1013
|
||||
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
|
||||
msgid "Unknown"
|
||||
msgstr "Sconosciuto"
|
||||
|
||||
@ -941,7 +956,7 @@ msgstr "%s non è disponibile."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:348
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#, no-c-format
|
||||
msgid "Sent at %X on %A"
|
||||
msgstr "Inviato alle %-H.%M di %A"
|
||||
@ -950,17 +965,21 @@ msgstr "Inviato alle %-H.%M di %A"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:103
|
||||
#: ../js/ui/viewSelector.js:117
|
||||
msgid "Type to search..."
|
||||
msgstr "Digitare per cercare..."
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:43
|
||||
#: ../js/ui/viewSelector.js:137 ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:42
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "Avvio di %s completato"
|
||||
|
||||
# (ndt) dovrebbe essere il nome dell'applicazione
|
||||
#: ../js/ui/windowAttentionHandler.js:45
|
||||
#: ../js/ui/windowAttentionHandler.js:44
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "«%s» è pronto"
|
||||
@ -987,32 +1006,36 @@ msgstr[1] "%u ingressi"
|
||||
msgid "System Sounds"
|
||||
msgstr "Audio di sistema"
|
||||
|
||||
#: ../src/shell-global.c:1298
|
||||
#: ../src/main.c:395
|
||||
msgid "Print version"
|
||||
msgstr "Stampa la versione"
|
||||
|
||||
#: ../src/shell-global.c:1308
|
||||
msgid "Less than a minute ago"
|
||||
msgstr "Meno di un minuto fa"
|
||||
|
||||
#: ../src/shell-global.c:1302
|
||||
#: ../src/shell-global.c:1312
|
||||
#, c-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
msgstr[0] "%d minuto fa"
|
||||
msgstr[1] "%d minuti fa"
|
||||
|
||||
#: ../src/shell-global.c:1307
|
||||
#: ../src/shell-global.c:1317
|
||||
#, c-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
msgstr[0] "%d ora fa"
|
||||
msgstr[1] "%d ore fa"
|
||||
|
||||
#: ../src/shell-global.c:1312
|
||||
#: ../src/shell-global.c:1322
|
||||
#, c-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
msgstr[0] "%d giorno fa"
|
||||
msgstr[1] "%d giorni fa"
|
||||
|
||||
#: ../src/shell-global.c:1317
|
||||
#: ../src/shell-global.c:1327
|
||||
#, c-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
@ -1035,10 +1058,6 @@ msgstr "Cartella home"
|
||||
msgid "File System"
|
||||
msgstr "File system"
|
||||
|
||||
#: ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
# (ndt) valutare...
|
||||
#. Translators: the first string is the name of a gvfs
|
||||
#. * method, and the second string is a path. For
|
||||
|
251
po/ko.po
251
po/ko.po
@ -5,15 +5,16 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=general\n"
|
||||
"POT-Creation-Date: 2011-02-27 06:38+0900\n"
|
||||
"PO-Revision-Date: 2011-02-27 06:40+0900\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&component=general\n"
|
||||
"POT-Creation-Date: 2011-03-08 05:43+0000\n"
|
||||
"PO-Revision-Date: 2011-03-14 10:40+0900\n"
|
||||
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
|
||||
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
|
||||
"Language: Korean\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: Korean\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: ../data/gnome-shell.desktop.in.in.h:1
|
||||
@ -180,27 +181,27 @@ msgid "Execution of '%s' failed:"
|
||||
msgstr "'%s' 실행이 실패했습니다:"
|
||||
|
||||
#. Translators: Filter to display all applications
|
||||
#: ../js/ui/appDisplay.js:175
|
||||
#: ../js/ui/appDisplay.js:226
|
||||
msgid "All"
|
||||
msgstr "모두"
|
||||
|
||||
#: ../js/ui/appDisplay.js:262
|
||||
#: ../js/ui/appDisplay.js:324
|
||||
msgid "APPLICATIONS"
|
||||
msgstr "프로그램"
|
||||
|
||||
#: ../js/ui/appDisplay.js:292
|
||||
msgid "PREFERENCES"
|
||||
msgstr "기본 설정"
|
||||
#: ../js/ui/appDisplay.js:350
|
||||
msgid "SETTINGS"
|
||||
msgstr "설정"
|
||||
|
||||
#: ../js/ui/appDisplay.js:552
|
||||
#: ../js/ui/appDisplay.js:612
|
||||
msgid "New Window"
|
||||
msgstr "새 창"
|
||||
|
||||
#: ../js/ui/appDisplay.js:555
|
||||
#: ../js/ui/appDisplay.js:615
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "즐겨찾기에서 제거"
|
||||
|
||||
#: ../js/ui/appDisplay.js:556
|
||||
#: ../js/ui/appDisplay.js:616
|
||||
msgid "Add to Favorites"
|
||||
msgstr "즐겨찾기에 추가"
|
||||
|
||||
@ -217,19 +218,19 @@ msgstr "%s 프로그램을 즐겨찾기에서 제거했습니다."
|
||||
#. Translators: Shown in calendar event list for all day events
|
||||
#. * Keep it short, best if you can use less then 10 characters
|
||||
#.
|
||||
#: ../js/ui/calendar.js:65
|
||||
#: ../js/ui/calendar.js:66
|
||||
msgctxt "event list time"
|
||||
msgid "All Day"
|
||||
msgstr "종일"
|
||||
|
||||
#. Translators: Shown in calendar event list, if 24h format
|
||||
#: ../js/ui/calendar.js:70
|
||||
#: ../js/ui/calendar.js:71
|
||||
msgctxt "event list time"
|
||||
msgid "%H:%M"
|
||||
msgstr "%H:%M"
|
||||
|
||||
#. Transators: Shown in calendar event list, if 12h format
|
||||
#: ../js/ui/calendar.js:77
|
||||
#: ../js/ui/calendar.js:78
|
||||
msgctxt "event list time"
|
||||
msgid "%l:%M %p"
|
||||
msgstr "%p %l:%M"
|
||||
@ -239,43 +240,43 @@ msgstr "%p %l:%M"
|
||||
#. * NOTE: These grid abbreviations are always shown together
|
||||
#. * and in order, e.g. "S M T W T F S".
|
||||
#.
|
||||
#: ../js/ui/calendar.js:117
|
||||
#: ../js/ui/calendar.js:118
|
||||
msgctxt "grid sunday"
|
||||
msgid "S"
|
||||
msgstr "일"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Monday
|
||||
#: ../js/ui/calendar.js:119
|
||||
#: ../js/ui/calendar.js:120
|
||||
msgctxt "grid monday"
|
||||
msgid "M"
|
||||
msgstr "월"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Tuesday
|
||||
#: ../js/ui/calendar.js:121
|
||||
#: ../js/ui/calendar.js:122
|
||||
msgctxt "grid tuesday"
|
||||
msgid "T"
|
||||
msgstr "화"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Wednesday
|
||||
#: ../js/ui/calendar.js:123
|
||||
#: ../js/ui/calendar.js:124
|
||||
msgctxt "grid wednesday"
|
||||
msgid "W"
|
||||
msgstr "수"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Thursday
|
||||
#: ../js/ui/calendar.js:125
|
||||
#: ../js/ui/calendar.js:126
|
||||
msgctxt "grid thursday"
|
||||
msgid "T"
|
||||
msgstr "목"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Friday
|
||||
#: ../js/ui/calendar.js:127
|
||||
#: ../js/ui/calendar.js:128
|
||||
msgctxt "grid friday"
|
||||
msgid "F"
|
||||
msgstr "금"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Saturday
|
||||
#: ../js/ui/calendar.js:129
|
||||
#: ../js/ui/calendar.js:130
|
||||
msgctxt "grid saturday"
|
||||
msgid "S"
|
||||
msgstr "토"
|
||||
@ -286,136 +287,136 @@ msgstr "토"
|
||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||
#. * both be 'T').
|
||||
#.
|
||||
#: ../js/ui/calendar.js:142
|
||||
#: ../js/ui/calendar.js:143
|
||||
msgctxt "list sunday"
|
||||
msgid "Su"
|
||||
msgstr "일"
|
||||
|
||||
#. Translators: Event list abbreviation for Monday
|
||||
#: ../js/ui/calendar.js:144
|
||||
#: ../js/ui/calendar.js:145
|
||||
msgctxt "list monday"
|
||||
msgid "M"
|
||||
msgstr "월"
|
||||
|
||||
#. Translators: Event list abbreviation for Tuesday
|
||||
#: ../js/ui/calendar.js:146
|
||||
#: ../js/ui/calendar.js:147
|
||||
msgctxt "list tuesday"
|
||||
msgid "T"
|
||||
msgstr "화"
|
||||
|
||||
#. Translators: Event list abbreviation for Wednesday
|
||||
#: ../js/ui/calendar.js:148
|
||||
#: ../js/ui/calendar.js:149
|
||||
msgctxt "list wednesday"
|
||||
msgid "W"
|
||||
msgstr "수"
|
||||
|
||||
#. Translators: Event list abbreviation for Thursday
|
||||
#: ../js/ui/calendar.js:150
|
||||
#: ../js/ui/calendar.js:151
|
||||
msgctxt "list thursday"
|
||||
msgid "Th"
|
||||
msgstr "목"
|
||||
|
||||
#. Translators: Event list abbreviation for Friday
|
||||
#: ../js/ui/calendar.js:152
|
||||
#: ../js/ui/calendar.js:153
|
||||
msgctxt "list friday"
|
||||
msgid "F"
|
||||
msgstr "금"
|
||||
|
||||
#. Translators: Event list abbreviation for Saturday
|
||||
#: ../js/ui/calendar.js:154
|
||||
#: ../js/ui/calendar.js:155
|
||||
msgctxt "list saturday"
|
||||
msgid "S"
|
||||
msgstr "토"
|
||||
|
||||
#. Translators: Text to show if there are no events
|
||||
#: ../js/ui/calendar.js:701
|
||||
#: ../js/ui/calendar.js:704
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "일정이 없습니다"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
||||
#: ../js/ui/calendar.js:717
|
||||
#: ../js/ui/calendar.js:720
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%B %d일 %A"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
||||
#: ../js/ui/calendar.js:720
|
||||
#: ../js/ui/calendar.js:723
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%Y년 %B %d일 %A"
|
||||
|
||||
#: ../js/ui/calendar.js:730
|
||||
#: ../js/ui/calendar.js:733
|
||||
msgid "Today"
|
||||
msgstr "오늘"
|
||||
|
||||
#: ../js/ui/calendar.js:734
|
||||
#: ../js/ui/calendar.js:737
|
||||
msgid "Tomorrow"
|
||||
msgstr "내일"
|
||||
|
||||
#: ../js/ui/calendar.js:743
|
||||
#: ../js/ui/calendar.js:746
|
||||
msgid "This week"
|
||||
msgstr "이번주"
|
||||
|
||||
#: ../js/ui/calendar.js:751
|
||||
#: ../js/ui/calendar.js:754
|
||||
msgid "Next week"
|
||||
msgstr "다음주"
|
||||
|
||||
#: ../js/ui/dash.js:174
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
|
||||
msgid "Remove"
|
||||
msgstr "제거"
|
||||
|
||||
#: ../js/ui/dateMenu.js:93
|
||||
#: ../js/ui/dateMenu.js:91
|
||||
msgid "Date and Time Settings"
|
||||
msgstr "날짜 및 시각 설정"
|
||||
|
||||
#: ../js/ui/dateMenu.js:112
|
||||
#: ../js/ui/dateMenu.js:111
|
||||
msgid "Open Calendar"
|
||||
msgstr "달력 열기"
|
||||
|
||||
#. Translators: This is the time format with date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:151
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
msgid "%a %b %e, %R:%S"
|
||||
msgstr "%b %e일 (%a), %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:152
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
msgid "%a %b %e, %R"
|
||||
msgstr "%b %e일 (%a), %R"
|
||||
|
||||
#. Translators: This is the time format without date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:156
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
msgid "%a %R:%S"
|
||||
msgstr "(%a) %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:157
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
msgid "%a %R"
|
||||
msgstr "(%a) %R"
|
||||
|
||||
#. Translators: This is a time format with date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
#: ../js/ui/dateMenu.js:177
|
||||
msgid "%a %b %e, %l:%M:%S %p"
|
||||
msgstr "%b %e일 (%a), %p %l:%M:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
#: ../js/ui/dateMenu.js:178
|
||||
msgid "%a %b %e, %l:%M %p"
|
||||
msgstr "%b %e일 (%a), %p %l:%M"
|
||||
|
||||
#. Translators: This is a time format without date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
#: ../js/ui/dateMenu.js:182
|
||||
msgid "%a %l:%M:%S %p"
|
||||
msgstr "(%a) %p %l:%M:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
#: ../js/ui/dateMenu.js:183
|
||||
msgid "%a %l:%M %p"
|
||||
msgstr "(%a) %p %l:%M"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#.
|
||||
#: ../js/ui/dateMenu.js:196
|
||||
#: ../js/ui/dateMenu.js:209
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%Y년 %B %e일 %A"
|
||||
|
||||
@ -492,37 +493,41 @@ msgstr "확인"
|
||||
msgid "Cancel"
|
||||
msgstr "취소"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:587
|
||||
#: ../js/ui/lookingGlass.js:588
|
||||
msgid "No extensions installed"
|
||||
msgstr "확장 기능을 설치하지 않았습니다"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:624
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
msgid "Enabled"
|
||||
msgstr "사용"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:626 ../src/gvc/gvc-mixer-control.c:1087
|
||||
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1087
|
||||
msgid "Disabled"
|
||||
msgstr "사용 않음"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:628
|
||||
#: ../js/ui/lookingGlass.js:629
|
||||
msgid "Error"
|
||||
msgstr "오류"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:630
|
||||
#: ../js/ui/lookingGlass.js:631
|
||||
msgid "Out of date"
|
||||
msgstr "오래 된 버전"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:655
|
||||
#: ../js/ui/lookingGlass.js:656
|
||||
msgid "View Source"
|
||||
msgstr "소스 보기"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:661
|
||||
#: ../js/ui/lookingGlass.js:662
|
||||
msgid "Web Page"
|
||||
msgstr "웹페이지"
|
||||
|
||||
#: ../js/ui/messageTray.js:1902
|
||||
#: ../js/ui/messageTray.js:926
|
||||
msgid "Open"
|
||||
msgstr "열기"
|
||||
|
||||
#: ../js/ui/messageTray.js:1963
|
||||
msgid "System Information"
|
||||
msgstr "시스템 정보"
|
||||
|
||||
@ -538,17 +543,27 @@ msgstr "창"
|
||||
msgid "Applications"
|
||||
msgstr "프로그램"
|
||||
|
||||
#. Translators: this is the name of the dock/favorites area on
|
||||
#. the left of the overview
|
||||
#: ../js/ui/overview.js:202
|
||||
msgid "Dash"
|
||||
msgstr "대시보드"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:537
|
||||
#: ../js/ui/panel.js:532
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "%s 끝내기"
|
||||
|
||||
#. Button on the left side of the panel.
|
||||
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:905
|
||||
#: ../js/ui/panel.js:893
|
||||
msgid "Activities"
|
||||
msgstr "요약"
|
||||
msgstr "현재 활동"
|
||||
|
||||
#: ../js/ui/panel.js:994
|
||||
msgid "Panel"
|
||||
msgstr "패널"
|
||||
|
||||
#: ../js/ui/placeDisplay.js:122
|
||||
#, c-format
|
||||
@ -572,7 +587,7 @@ msgstr "위치 및 장치"
|
||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||
#. switches containing "◯" and "|"). Other values will
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:612
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
@ -580,91 +595,91 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Please enter a command:"
|
||||
msgstr "명령을 입력하십시오:"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:295
|
||||
#: ../js/ui/searchDisplay.js:283
|
||||
msgid "Searching..."
|
||||
msgstr "검색하는 중..."
|
||||
|
||||
#: ../js/ui/searchDisplay.js:309
|
||||
#: ../js/ui/searchDisplay.js:297
|
||||
msgid "No matching results."
|
||||
msgstr "일치하는 결과가 없습니다."
|
||||
|
||||
#: ../js/ui/statusMenu.js:99 ../js/ui/statusMenu.js:163
|
||||
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
|
||||
msgid "Power Off..."
|
||||
msgstr "컴퓨터 끄기..."
|
||||
|
||||
#: ../js/ui/statusMenu.js:101 ../js/ui/statusMenu.js:162
|
||||
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
|
||||
msgid "Suspend"
|
||||
msgstr "절전"
|
||||
|
||||
#: ../js/ui/statusMenu.js:122
|
||||
#: ../js/ui/statusMenu.js:125
|
||||
msgid "Available"
|
||||
msgstr "대화 가능"
|
||||
|
||||
#: ../js/ui/statusMenu.js:127
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
msgid "Busy"
|
||||
msgstr "다른 용무 중"
|
||||
|
||||
#: ../js/ui/statusMenu.js:135
|
||||
#: ../js/ui/statusMenu.js:138
|
||||
msgid "My Account"
|
||||
msgstr "내 계정"
|
||||
|
||||
#: ../js/ui/statusMenu.js:139
|
||||
#: ../js/ui/statusMenu.js:142
|
||||
msgid "System Settings"
|
||||
msgstr "시스템 설정"
|
||||
|
||||
#: ../js/ui/statusMenu.js:146
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "Lock Screen"
|
||||
msgstr "화면 잠그기"
|
||||
|
||||
#: ../js/ui/statusMenu.js:150
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "Switch User"
|
||||
msgstr "사용자 바꾸기"
|
||||
|
||||
#: ../js/ui/statusMenu.js:155
|
||||
#: ../js/ui/statusMenu.js:158
|
||||
msgid "Log Out..."
|
||||
msgstr "로그아웃..."
|
||||
|
||||
#: ../js/ui/status/accessibility.js:81
|
||||
#: ../js/ui/status/accessibility.js:62
|
||||
msgid "Zoom"
|
||||
msgstr "크기 조정"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:88
|
||||
#: ../js/ui/status/accessibility.js:69
|
||||
msgid "Screen Reader"
|
||||
msgstr "화면 읽기"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:92
|
||||
#: ../js/ui/status/accessibility.js:73
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "화면 키보드"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:96
|
||||
#: ../js/ui/status/accessibility.js:77
|
||||
msgid "Visual Alerts"
|
||||
msgstr "화면 알림"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:99
|
||||
#: ../js/ui/status/accessibility.js:80
|
||||
msgid "Sticky Keys"
|
||||
msgstr "고정 키"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:102
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
msgid "Slow Keys"
|
||||
msgstr "느린 키"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:105
|
||||
#: ../js/ui/status/accessibility.js:86
|
||||
msgid "Bounce Keys"
|
||||
msgstr "탄력 키"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:108
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
msgid "Mouse Keys"
|
||||
msgstr "마우스 키"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:112
|
||||
#: ../js/ui/status/accessibility.js:93
|
||||
msgid "Universal Access Settings"
|
||||
msgstr "보편적 접근성 설정"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:164
|
||||
#: ../js/ui/status/accessibility.js:145
|
||||
msgid "High Contrast"
|
||||
msgstr "고대비"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:209
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "큰 글자"
|
||||
|
||||
@ -793,79 +808,85 @@ msgstr "지역화 설정"
|
||||
msgid "Power Settings"
|
||||
msgstr "전원 설정"
|
||||
|
||||
#: ../js/ui/status/power.js:112
|
||||
#. 0 is reported when UPower does not have enough data
|
||||
#. to estimate battery life
|
||||
#: ../js/ui/status/power.js:110
|
||||
msgid "Estimating..."
|
||||
msgstr "예상치 계산 중..."
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#, c-format
|
||||
msgid "%d hour remaining"
|
||||
msgid_plural "%d hours remaining"
|
||||
msgstr[0] "%d시간 남음"
|
||||
|
||||
#. TRANSLATORS: this is a time string, as in "%d hours %d minutes remaining"
|
||||
#: ../js/ui/status/power.js:115
|
||||
#: ../js/ui/status/power.js:120
|
||||
#, c-format
|
||||
msgid "%d %s %d %s remaining"
|
||||
msgstr "%d%s %d%s 남음"
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#: ../js/ui/status/power.js:122
|
||||
msgid "hour"
|
||||
msgid_plural "hours"
|
||||
msgstr[0] "시간"
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#: ../js/ui/status/power.js:122
|
||||
msgid "minute"
|
||||
msgid_plural "minutes"
|
||||
msgstr[0] "분"
|
||||
|
||||
#: ../js/ui/status/power.js:120
|
||||
#: ../js/ui/status/power.js:125
|
||||
#, c-format
|
||||
msgid "%d minute remaining"
|
||||
msgid_plural "%d minutes remaining"
|
||||
msgstr[0] "%d분 남음"
|
||||
|
||||
#: ../js/ui/status/power.js:235
|
||||
#: ../js/ui/status/power.js:227
|
||||
msgid "AC adapter"
|
||||
msgstr "AC 어댑터"
|
||||
|
||||
#: ../js/ui/status/power.js:237
|
||||
#: ../js/ui/status/power.js:229
|
||||
msgid "Laptop battery"
|
||||
msgstr "노트북 배터리"
|
||||
|
||||
#: ../js/ui/status/power.js:239
|
||||
#: ../js/ui/status/power.js:231
|
||||
msgid "UPS"
|
||||
msgstr "UPS"
|
||||
|
||||
#: ../js/ui/status/power.js:241
|
||||
#: ../js/ui/status/power.js:233
|
||||
msgid "Monitor"
|
||||
msgstr "모니터"
|
||||
|
||||
#: ../js/ui/status/power.js:243
|
||||
#: ../js/ui/status/power.js:235
|
||||
msgid "Mouse"
|
||||
msgstr "마우스"
|
||||
|
||||
#: ../js/ui/status/power.js:245
|
||||
#: ../js/ui/status/power.js:237
|
||||
msgid "Keyboard"
|
||||
msgstr "키보드"
|
||||
|
||||
#: ../js/ui/status/power.js:247
|
||||
#: ../js/ui/status/power.js:239
|
||||
msgid "PDA"
|
||||
msgstr "PDA"
|
||||
|
||||
#: ../js/ui/status/power.js:249
|
||||
#: ../js/ui/status/power.js:241
|
||||
msgid "Cell phone"
|
||||
msgstr "휴대전화"
|
||||
|
||||
#: ../js/ui/status/power.js:251
|
||||
#: ../js/ui/status/power.js:243
|
||||
msgid "Media player"
|
||||
msgstr "미디어 플레이어"
|
||||
|
||||
#: ../js/ui/status/power.js:253
|
||||
#: ../js/ui/status/power.js:245
|
||||
msgid "Tablet"
|
||||
msgstr "태블릿"
|
||||
|
||||
#: ../js/ui/status/power.js:255
|
||||
#: ../js/ui/status/power.js:247
|
||||
msgid "Computer"
|
||||
msgstr "컴퓨터"
|
||||
|
||||
#: ../js/ui/status/power.js:257 ../src/shell-app-system.c:1013
|
||||
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
|
||||
msgid "Unknown"
|
||||
msgstr "알 수 없음"
|
||||
|
||||
@ -910,16 +931,20 @@ msgstr "보낸 때: %A %H시 %M분"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:103
|
||||
#: ../js/ui/viewSelector.js:117
|
||||
msgid "Type to search..."
|
||||
msgstr "검색하려면 입력하십시오..."
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:43
|
||||
#: ../js/ui/viewSelector.js:137 ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "검색"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:42
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "%s 프로그램이 시작했습니다"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:45
|
||||
#: ../js/ui/windowAttentionHandler.js:44
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "'%s' 프로그램이 준비되었습니다"
|
||||
@ -944,29 +969,34 @@ msgstr[0] "%u개 입력"
|
||||
msgid "System Sounds"
|
||||
msgstr "시스템 소리"
|
||||
|
||||
#: ../src/shell-global.c:1363
|
||||
# 커맨드라인 옵션 설명
|
||||
#: ../src/main.c:395
|
||||
msgid "Print version"
|
||||
msgstr "버전을 표시합니다"
|
||||
|
||||
#: ../src/shell-global.c:1308
|
||||
msgid "Less than a minute ago"
|
||||
msgstr "1분 이내"
|
||||
|
||||
#: ../src/shell-global.c:1367
|
||||
#: ../src/shell-global.c:1312
|
||||
#, c-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
msgstr[0] "%d분 전"
|
||||
|
||||
#: ../src/shell-global.c:1372
|
||||
#: ../src/shell-global.c:1317
|
||||
#, c-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
msgstr[0] "%d시간 전"
|
||||
|
||||
#: ../src/shell-global.c:1377
|
||||
#: ../src/shell-global.c:1322
|
||||
#, c-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
msgstr[0] "%d일 전"
|
||||
|
||||
#: ../src/shell-global.c:1382
|
||||
#: ../src/shell-global.c:1327
|
||||
#, c-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
@ -986,10 +1016,6 @@ msgstr "내 폴더"
|
||||
msgid "File System"
|
||||
msgstr "파일시스템"
|
||||
|
||||
#: ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "검색"
|
||||
|
||||
#. Translators: the first string is the name of a gvfs
|
||||
#. * method, and the second string is a path. For
|
||||
#. * example, "Trash: some-directory". It means that the
|
||||
@ -999,3 +1025,6 @@ msgstr "검색"
|
||||
#, c-format
|
||||
msgid "%1$s: %2$s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
#~ msgid "PREFERENCES"
|
||||
#~ msgstr "기본 설정"
|
||||
|
366
po/nl.po
366
po/nl.po
@ -8,10 +8,10 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-02-11 23:09+0100\n"
|
||||
"PO-Revision-Date: 2011-02-11 23:09+0100\n"
|
||||
"POT-Creation-Date: 2011-03-12 23:52+0100\n"
|
||||
"PO-Revision-Date: 2011-03-12 23:52+0100\n"
|
||||
"Last-Translator: Wouter Bolsterlee <wbolster@gnome.org>\n"
|
||||
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
|
||||
"Language: nl\n"
|
||||
@ -60,26 +60,30 @@ msgstr ""
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:6
|
||||
msgid "History for command (Alt-F2) dialog"
|
||||
msgstr "Geschiedenis voor het opdracht-dialoogvenster (Alt-F2)"
|
||||
msgstr "Geschiedenis voor het opdrachtvenster (Alt-F2)"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:7
|
||||
msgid "History for the looking glass dialog"
|
||||
msgstr "Geschiedenis voor het ‘looking glass’-venster"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:8
|
||||
msgid "If true, display date in the clock, in addition to time."
|
||||
msgstr ""
|
||||
"Indien ingeschakeld wordt naast de tijd ook de datum in de klok getoond"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:8
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:9
|
||||
msgid "If true, display seconds in time."
|
||||
msgstr "Indien ingeschakeld worden de secondes van de tijd getoond"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:9
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:10
|
||||
msgid "If true, display the ISO week date in the calendar."
|
||||
msgstr "Indien ingeschakeld worden weeknummers in de kalender getoond."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:10
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:11
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
msgstr "Lijst van desktopbestand-id's voor favoriete toepassingen"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:12
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:13
|
||||
#, no-c-format
|
||||
msgid ""
|
||||
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
|
||||
@ -105,19 +109,19 @@ msgstr ""
|
||||
"met de VP8-codec. %T wordt gebruikt voor een schatting van het optimaal "
|
||||
"aantal threads op dit systeem."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:13
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:14
|
||||
msgid "Show date in clock"
|
||||
msgstr "Datum tonen in klok"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:14
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:15
|
||||
msgid "Show the week date in the calendar"
|
||||
msgstr "Weeknummers tonen in kalender"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:15
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:16
|
||||
msgid "Show time with seconds"
|
||||
msgstr "Tijd tonen inclusief seconden"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:16
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:17
|
||||
msgid ""
|
||||
"The applications corresponding to these identifiers will be displayed in the "
|
||||
"favorites area."
|
||||
@ -125,7 +129,7 @@ msgstr ""
|
||||
"De toepassingen die aan deze identifiers voldoen worden in het "
|
||||
"favorietengebied weergegeven"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:17
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:18
|
||||
msgid ""
|
||||
"The filename for recorded screencasts will be a unique filename based on the "
|
||||
"current date, and use this extension. It should be changed when recording to "
|
||||
@ -135,7 +139,7 @@ msgstr ""
|
||||
"de huidige datum en gebruikt deze extensie. Dit moet aangepast worden bij "
|
||||
"het gebruik van een ander containerformaat."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:18
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:19
|
||||
msgid ""
|
||||
"The framerate of the resulting screencast recordered by GNOME Shell's "
|
||||
"screencast recorder in frames-per-second."
|
||||
@ -143,11 +147,11 @@ msgstr ""
|
||||
"De framerate (in frames per seconde) voor de opnames die door de "
|
||||
"schermopname van Gnome Shell gemaakt worden."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:19
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:20
|
||||
msgid "The gstreamer pipeline used to encode the screencast"
|
||||
msgstr "De gstreamer-pijplijn voor het coderen van de screencast"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:20
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:21
|
||||
msgid ""
|
||||
"The shell normally monitors active applications in order to present the most "
|
||||
"used ones (e.g. in launchers). While this data will be kept private, you may "
|
||||
@ -159,15 +163,15 @@ msgstr ""
|
||||
"deze gebruiker zijn, kan het wenselijk zijn dit om privacy-redenen uit te "
|
||||
"schakelen. Let er wel op dat dit historische gegevens niet verwijdert."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:21
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:22
|
||||
msgid "Uuids of extensions to disable"
|
||||
msgstr "Uuid's van uit te schakelen uitbreidingen"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:22
|
||||
msgid "Whether to collect stats about applications usage"
|
||||
msgstr "Of statistieken worden bijgehouden over toepassingsgebruik"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:23
|
||||
msgid "Whether to collect stats about applications usage"
|
||||
msgstr "Of statistieken worden bijgehouden over gebruik van toepassingen"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:24
|
||||
msgid "disabled OpenSearch providers"
|
||||
msgstr "uitgeschakelde OpenSearch-providers"
|
||||
|
||||
@ -191,27 +195,27 @@ msgid "Execution of '%s' failed:"
|
||||
msgstr "Uitvoeren van ‘%s’ mislukt:"
|
||||
|
||||
#. Translators: Filter to display all applications
|
||||
#: ../js/ui/appDisplay.js:174
|
||||
#: ../js/ui/appDisplay.js:226
|
||||
msgid "All"
|
||||
msgstr "Alles"
|
||||
|
||||
#: ../js/ui/appDisplay.js:261
|
||||
#: ../js/ui/appDisplay.js:324
|
||||
msgid "APPLICATIONS"
|
||||
msgstr "TOEPASSINGEN"
|
||||
|
||||
#: ../js/ui/appDisplay.js:291
|
||||
msgid "PREFERENCES"
|
||||
msgstr "VOORKEUREN"
|
||||
#: ../js/ui/appDisplay.js:350
|
||||
msgid "SETTINGS"
|
||||
msgstr "INSTELLINGEN"
|
||||
|
||||
#: ../js/ui/appDisplay.js:592
|
||||
#: ../js/ui/appDisplay.js:612
|
||||
msgid "New Window"
|
||||
msgstr "Nieuw venster"
|
||||
|
||||
#: ../js/ui/appDisplay.js:596
|
||||
#: ../js/ui/appDisplay.js:615
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Uit favorieten verwijderen"
|
||||
|
||||
#: ../js/ui/appDisplay.js:597
|
||||
#: ../js/ui/appDisplay.js:616
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Aan favorieten toevoegen"
|
||||
|
||||
@ -228,19 +232,19 @@ msgstr "%s is verwijderd uit uw favorieten."
|
||||
#. Translators: Shown in calendar event list for all day events
|
||||
#. * Keep it short, best if you can use less then 10 characters
|
||||
#.
|
||||
#: ../js/ui/calendar.js:65
|
||||
#: ../js/ui/calendar.js:66
|
||||
msgctxt "event list time"
|
||||
msgid "All Day"
|
||||
msgstr "Gehele dag"
|
||||
|
||||
#. Translators: Shown in calendar event list, if 24h format
|
||||
#: ../js/ui/calendar.js:70
|
||||
#: ../js/ui/calendar.js:71
|
||||
msgctxt "event list time"
|
||||
msgid "%H:%M"
|
||||
msgstr "%H:%M"
|
||||
|
||||
#. Transators: Shown in calendar event list, if 12h format
|
||||
#: ../js/ui/calendar.js:77
|
||||
#: ../js/ui/calendar.js:78
|
||||
msgctxt "event list time"
|
||||
msgid "%l:%M %p"
|
||||
msgstr "%l:%M %p"
|
||||
@ -250,43 +254,43 @@ msgstr "%l:%M %p"
|
||||
#. * NOTE: These grid abbreviations are always shown together
|
||||
#. * and in order, e.g. "S M T W T F S".
|
||||
#.
|
||||
#: ../js/ui/calendar.js:117
|
||||
#: ../js/ui/calendar.js:118
|
||||
msgctxt "grid sunday"
|
||||
msgid "S"
|
||||
msgstr "Z"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Monday
|
||||
#: ../js/ui/calendar.js:119
|
||||
#: ../js/ui/calendar.js:120
|
||||
msgctxt "grid monday"
|
||||
msgid "M"
|
||||
msgstr "M"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Tuesday
|
||||
#: ../js/ui/calendar.js:121
|
||||
#: ../js/ui/calendar.js:122
|
||||
msgctxt "grid tuesday"
|
||||
msgid "T"
|
||||
msgstr "D"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Wednesday
|
||||
#: ../js/ui/calendar.js:123
|
||||
#: ../js/ui/calendar.js:124
|
||||
msgctxt "grid wednesday"
|
||||
msgid "W"
|
||||
msgstr "W"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Thursday
|
||||
#: ../js/ui/calendar.js:125
|
||||
#: ../js/ui/calendar.js:126
|
||||
msgctxt "grid thursday"
|
||||
msgid "T"
|
||||
msgstr "D"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Friday
|
||||
#: ../js/ui/calendar.js:127
|
||||
#: ../js/ui/calendar.js:128
|
||||
msgctxt "grid friday"
|
||||
msgid "F"
|
||||
msgstr "V"
|
||||
|
||||
#. Translators: Calendar grid abbreviation for Saturday
|
||||
#: ../js/ui/calendar.js:129
|
||||
#: ../js/ui/calendar.js:130
|
||||
msgctxt "grid saturday"
|
||||
msgid "S"
|
||||
msgstr "Z"
|
||||
@ -297,81 +301,81 @@ msgstr "Z"
|
||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||
#. * both be 'T').
|
||||
#.
|
||||
#: ../js/ui/calendar.js:142
|
||||
#: ../js/ui/calendar.js:143
|
||||
msgctxt "list sunday"
|
||||
msgid "Su"
|
||||
msgstr "Zo"
|
||||
|
||||
#. Translators: Event list abbreviation for Monday
|
||||
#: ../js/ui/calendar.js:144
|
||||
#: ../js/ui/calendar.js:145
|
||||
msgctxt "list monday"
|
||||
msgid "M"
|
||||
msgstr "Ma"
|
||||
|
||||
#. Translators: Event list abbreviation for Tuesday
|
||||
#: ../js/ui/calendar.js:146
|
||||
#: ../js/ui/calendar.js:147
|
||||
msgctxt "list tuesday"
|
||||
msgid "T"
|
||||
msgstr "Di"
|
||||
|
||||
#. Translators: Event list abbreviation for Wednesday
|
||||
#: ../js/ui/calendar.js:148
|
||||
#: ../js/ui/calendar.js:149
|
||||
msgctxt "list wednesday"
|
||||
msgid "W"
|
||||
msgstr "Wo"
|
||||
|
||||
#. Translators: Event list abbreviation for Thursday
|
||||
#: ../js/ui/calendar.js:150
|
||||
#: ../js/ui/calendar.js:151
|
||||
msgctxt "list thursday"
|
||||
msgid "Th"
|
||||
msgstr "Do"
|
||||
|
||||
#. Translators: Event list abbreviation for Friday
|
||||
#: ../js/ui/calendar.js:152
|
||||
#: ../js/ui/calendar.js:153
|
||||
msgctxt "list friday"
|
||||
msgid "F"
|
||||
msgstr "Vr"
|
||||
|
||||
#. Translators: Event list abbreviation for Saturday
|
||||
#: ../js/ui/calendar.js:154
|
||||
#: ../js/ui/calendar.js:155
|
||||
msgctxt "list saturday"
|
||||
msgid "S"
|
||||
msgstr "Za"
|
||||
|
||||
#. Translators: Text to show if there are no events
|
||||
#: ../js/ui/calendar.js:701
|
||||
#: ../js/ui/calendar.js:704
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "Niets gepland"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
||||
#: ../js/ui/calendar.js:717
|
||||
#: ../js/ui/calendar.js:720
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%a %d %B"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
||||
#: ../js/ui/calendar.js:720
|
||||
#: ../js/ui/calendar.js:723
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%a %d %B %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:730
|
||||
#: ../js/ui/calendar.js:733
|
||||
msgid "Today"
|
||||
msgstr "Vandaag"
|
||||
|
||||
#: ../js/ui/calendar.js:734
|
||||
#: ../js/ui/calendar.js:737
|
||||
msgid "Tomorrow"
|
||||
msgstr "Morgen"
|
||||
|
||||
#: ../js/ui/calendar.js:743
|
||||
#: ../js/ui/calendar.js:746
|
||||
msgid "This week"
|
||||
msgstr "Deze week"
|
||||
|
||||
#: ../js/ui/calendar.js:751
|
||||
#: ../js/ui/calendar.js:754
|
||||
msgid "Next week"
|
||||
msgstr "Volgende week"
|
||||
|
||||
#: ../js/ui/dash.js:174
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:931
|
||||
msgid "Remove"
|
||||
msgstr "Verwijderen"
|
||||
|
||||
@ -379,47 +383,47 @@ msgstr "Verwijderen"
|
||||
msgid "Date and Time Settings"
|
||||
msgstr "Datum- en tijdinstellingen"
|
||||
|
||||
#: ../js/ui/dateMenu.js:110
|
||||
#: ../js/ui/dateMenu.js:111
|
||||
msgid "Open Calendar"
|
||||
msgstr "Agenda openen"
|
||||
|
||||
#. Translators: This is the time format with date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:149
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
msgid "%a %b %e, %R:%S"
|
||||
msgstr "%a %e %b, %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:150
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
msgid "%a %b %e, %R"
|
||||
msgstr "%a %e %b, %R"
|
||||
|
||||
#. Translators: This is the time format without date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:154
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
msgid "%a %R:%S"
|
||||
msgstr "%a %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:155
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
msgid "%a %R"
|
||||
msgstr "%a %R"
|
||||
|
||||
#. Translators: This is a time format with date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:162
|
||||
#: ../js/ui/dateMenu.js:177
|
||||
msgid "%a %b %e, %l:%M:%S %p"
|
||||
msgstr "%a %e %b, %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:163
|
||||
#: ../js/ui/dateMenu.js:178
|
||||
msgid "%a %b %e, %l:%M %p"
|
||||
msgstr "%a %e %b, %l:%M %p"
|
||||
|
||||
#. Translators: This is a time format without date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:167
|
||||
#: ../js/ui/dateMenu.js:182
|
||||
msgid "%a %l:%M:%S %p"
|
||||
msgstr "%a %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:168
|
||||
#: ../js/ui/dateMenu.js:183
|
||||
msgid "%a %l:%M %p"
|
||||
msgstr "%a %l:%M %p"
|
||||
|
||||
@ -427,7 +431,7 @@ msgstr "%a %l:%M %p"
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#.
|
||||
#: ../js/ui/dateMenu.js:194
|
||||
#: ../js/ui/dateMenu.js:209
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%a %e %B %Y"
|
||||
|
||||
@ -509,37 +513,41 @@ msgstr "Bevestigen"
|
||||
msgid "Cancel"
|
||||
msgstr "Annuleren"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:584
|
||||
#: ../js/ui/lookingGlass.js:588
|
||||
msgid "No extensions installed"
|
||||
msgstr "Geen uitbreidingen geïnstalleerd"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:621
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
msgid "Enabled"
|
||||
msgstr "Ingeschakeld"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:623 ../src/gvc/gvc-mixer-control.c:1087
|
||||
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1091
|
||||
msgid "Disabled"
|
||||
msgstr "Uitgeschakeld"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
#: ../js/ui/lookingGlass.js:629
|
||||
msgid "Error"
|
||||
msgstr "Fout"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:627
|
||||
#: ../js/ui/lookingGlass.js:631
|
||||
msgid "Out of date"
|
||||
msgstr "Gedateerd"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:652
|
||||
#: ../js/ui/lookingGlass.js:656
|
||||
msgid "View Source"
|
||||
msgstr "Broncode weergeven"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:658
|
||||
#: ../js/ui/lookingGlass.js:662
|
||||
msgid "Web Page"
|
||||
msgstr "Webpagina"
|
||||
|
||||
#: ../js/ui/messageTray.js:1854
|
||||
#: ../js/ui/messageTray.js:924
|
||||
msgid "Open"
|
||||
msgstr "Openen"
|
||||
|
||||
#: ../js/ui/messageTray.js:1961
|
||||
msgid "System Information"
|
||||
msgstr "Systeeminformatie"
|
||||
|
||||
@ -547,26 +555,37 @@ msgstr "Systeeminformatie"
|
||||
msgid "Undo"
|
||||
msgstr "Ongedaan maken"
|
||||
|
||||
#: ../js/ui/overview.js:159
|
||||
#: ../js/ui/overview.js:183
|
||||
msgid "Windows"
|
||||
msgstr "Vensters"
|
||||
|
||||
#: ../js/ui/overview.js:162
|
||||
#: ../js/ui/overview.js:186
|
||||
msgid "Applications"
|
||||
msgstr "Toepassingen"
|
||||
|
||||
# Betere vertaling is welkom (Wouter Bolsterlee)
|
||||
#. Translators: this is the name of the dock/favorites area on
|
||||
#. the left of the overview
|
||||
#: ../js/ui/overview.js:202
|
||||
msgid "Dash"
|
||||
msgstr "Zijbalk"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:480
|
||||
#: ../js/ui/panel.js:560
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "%s afsluiten"
|
||||
|
||||
#. Button on the left side of the panel.
|
||||
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:614
|
||||
#: ../js/ui/panel.js:919
|
||||
msgid "Activities"
|
||||
msgstr "Activiteiten"
|
||||
|
||||
#: ../js/ui/panel.js:1020
|
||||
msgid "Panel"
|
||||
msgstr "Paneel"
|
||||
|
||||
#: ../js/ui/placeDisplay.js:122
|
||||
#, c-format
|
||||
msgid "Failed to unmount '%s'"
|
||||
@ -589,101 +608,99 @@ msgstr "LOCATIES & APPARATEN"
|
||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||
#. switches containing "◯" and "|"). Other values will
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:512
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
#: ../js/ui/runDialog.js:209
|
||||
#: ../js/ui/runDialog.js:201
|
||||
msgid "Please enter a command:"
|
||||
msgstr "Voer een opdracht in:"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:295
|
||||
#: ../js/ui/searchDisplay.js:283
|
||||
msgid "Searching..."
|
||||
msgstr "Zoeken…"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:309
|
||||
#: ../js/ui/searchDisplay.js:297
|
||||
msgid "No matching results."
|
||||
msgstr "Geen overeenkomende resultaten."
|
||||
|
||||
#: ../js/ui/statusMenu.js:102
|
||||
#: ../js/ui/statusMenu.js:113 ../js/ui/statusMenu.js:177
|
||||
msgid "Power Off..."
|
||||
msgstr "Uitschakelen…"
|
||||
|
||||
#: ../js/ui/statusMenu.js:115 ../js/ui/statusMenu.js:176
|
||||
msgid "Suspend"
|
||||
msgstr "Slaapstand"
|
||||
|
||||
#: ../js/ui/statusMenu.js:136
|
||||
msgid "Available"
|
||||
msgstr "Beschikbaar"
|
||||
|
||||
#: ../js/ui/statusMenu.js:107
|
||||
#: ../js/ui/statusMenu.js:141
|
||||
msgid "Busy"
|
||||
msgstr "Bezig"
|
||||
|
||||
#: ../js/ui/statusMenu.js:115
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "My Account"
|
||||
msgstr "Mijn account"
|
||||
|
||||
#: ../js/ui/statusMenu.js:119
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "System Settings"
|
||||
msgstr "Systeeminstellingen"
|
||||
|
||||
#: ../js/ui/statusMenu.js:126
|
||||
#: ../js/ui/statusMenu.js:160
|
||||
msgid "Lock Screen"
|
||||
msgstr "Scherm vergrendelen"
|
||||
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
#: ../js/ui/statusMenu.js:164
|
||||
msgid "Switch User"
|
||||
msgstr "Gebruiker wisselen"
|
||||
|
||||
#: ../js/ui/statusMenu.js:135
|
||||
#: ../js/ui/statusMenu.js:169
|
||||
msgid "Log Out..."
|
||||
msgstr "Afmelden…"
|
||||
|
||||
#. This is temporarily removed, see
|
||||
#. http://bugzilla.gnome.org/show_bug.cgi?id=636680
|
||||
#. for details.
|
||||
#. item = new PopupMenu.PopupMenuItem(_("Suspend..."));
|
||||
#. item.connect('activate', Lang.bind(this, this._onShutDownActivate));
|
||||
#. this.menu.addMenuItem(item);
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "Shut Down..."
|
||||
msgstr "Afsluiten…"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
#: ../js/ui/status/accessibility.js:62
|
||||
msgid "Zoom"
|
||||
msgstr "Zoomen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
#: ../js/ui/status/accessibility.js:69
|
||||
msgid "Screen Reader"
|
||||
msgstr "Schermlezer"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:92
|
||||
#: ../js/ui/status/accessibility.js:73
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "Schermtoetsenbord"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:95
|
||||
#: ../js/ui/status/accessibility.js:77
|
||||
msgid "Visual Alerts"
|
||||
msgstr "Visuele attenderingen"
|
||||
msgstr "Visuele alerteringen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:98
|
||||
#: ../js/ui/status/accessibility.js:80
|
||||
msgid "Sticky Keys"
|
||||
msgstr "PlakToetsen"
|
||||
msgstr "Plaktoetsen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:101
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
msgid "Slow Keys"
|
||||
msgstr "Trage Toetsen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:104
|
||||
#: ../js/ui/status/accessibility.js:86
|
||||
msgid "Bounce Keys"
|
||||
msgstr "Springende toetsen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:107
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
msgid "Mouse Keys"
|
||||
msgstr "MuisToetsen"
|
||||
msgstr "Muistoetsen"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:111
|
||||
#: ../js/ui/status/accessibility.js:93
|
||||
msgid "Universal Access Settings"
|
||||
msgstr "Toegankelijkheidsinstellingen"
|
||||
msgstr "Instellingen voor toegankelijkheid"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:163
|
||||
#: ../js/ui/status/accessibility.js:145
|
||||
msgid "High Contrast"
|
||||
msgstr "Hoog contrast"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:205
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "Grote tekst"
|
||||
|
||||
@ -738,7 +755,7 @@ msgstr "Toetsenbordvoorkeuren"
|
||||
msgid "Mouse Settings"
|
||||
msgstr "Muisvoorkeuren"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:263 ../js/ui/status/volume.js:63
|
||||
#: ../js/ui/status/bluetooth.js:263 ../js/ui/status/volume.js:66
|
||||
msgid "Sound Settings"
|
||||
msgstr "Geluidsvoorkeuren"
|
||||
|
||||
@ -767,7 +784,7 @@ msgstr "Afwijzen"
|
||||
#: ../js/ui/status/bluetooth.js:412
|
||||
#, c-format
|
||||
msgid "Pairing confirmation for %s"
|
||||
msgstr "Koppelbevestiging van voor %s"
|
||||
msgstr "Koppelbevestiging voor %s"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:418 ../js/ui/status/bluetooth.js:452
|
||||
#, c-format
|
||||
@ -781,11 +798,11 @@ msgstr "Bevestig dat de PIN-code ‘%s’ hetzelfde is als die van het apparaat.
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:421
|
||||
msgid "Matches"
|
||||
msgstr "PIN is hetzelfde"
|
||||
msgstr "Komt overeen"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:422
|
||||
msgid "Does not match"
|
||||
msgstr "PIN is niet hezelfde"
|
||||
msgstr "Komt niet overeen"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:445
|
||||
#, c-format
|
||||
@ -794,13 +811,17 @@ msgstr "Verzoek tot koppelen met %s"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:453
|
||||
msgid "Please enter the PIN mentioned on the device."
|
||||
msgstr "Geef de PIN-code die apparaat aangeef."
|
||||
msgstr "Geef de op het apparaat aangegeven PIN-code."
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:469
|
||||
msgid "OK"
|
||||
msgstr "OK"
|
||||
|
||||
#: ../js/ui/status/keyboard.js:72
|
||||
#: ../js/ui/status/keyboard.js:73
|
||||
msgid "Show Keyboard Layout..."
|
||||
msgstr "Toetsenbordindeling tonen…"
|
||||
|
||||
#: ../js/ui/status/keyboard.js:76
|
||||
msgid "Localization Settings"
|
||||
msgstr "Regionale instellingen"
|
||||
|
||||
@ -808,7 +829,13 @@ msgstr "Regionale instellingen"
|
||||
msgid "Power Settings"
|
||||
msgstr "Energievoorkeuren"
|
||||
|
||||
#: ../js/ui/status/power.js:112
|
||||
#. 0 is reported when UPower does not have enough data
|
||||
#. to estimate battery life
|
||||
#: ../js/ui/status/power.js:110
|
||||
msgid "Estimating..."
|
||||
msgstr "Schatten…"
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#, c-format
|
||||
msgid "%d hour remaining"
|
||||
msgid_plural "%d hours remaining"
|
||||
@ -816,102 +843,102 @@ msgstr[0] "%d uur resterend"
|
||||
msgstr[1] "%d uur resterend"
|
||||
|
||||
#. TRANSLATORS: this is a time string, as in "%d hours %d minutes remaining"
|
||||
#: ../js/ui/status/power.js:115
|
||||
#: ../js/ui/status/power.js:120
|
||||
#, c-format
|
||||
msgid "%d %s %d %s remaining"
|
||||
msgstr "%d %s %d %s resterend"
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#: ../js/ui/status/power.js:122
|
||||
msgid "hour"
|
||||
msgid_plural "hours"
|
||||
msgstr[0] "uur"
|
||||
msgstr[1] "uur"
|
||||
|
||||
#: ../js/ui/status/power.js:117
|
||||
#: ../js/ui/status/power.js:122
|
||||
msgid "minute"
|
||||
msgid_plural "minutes"
|
||||
msgstr[0] "minuut"
|
||||
msgstr[1] "minuten"
|
||||
|
||||
#: ../js/ui/status/power.js:120
|
||||
#: ../js/ui/status/power.js:125
|
||||
#, c-format
|
||||
msgid "%d minute remaining"
|
||||
msgid_plural "%d minutes remaining"
|
||||
msgstr[0] "%d minuut resterend"
|
||||
msgstr[1] "%d minuten resterend"
|
||||
|
||||
#: ../js/ui/status/power.js:235
|
||||
#: ../js/ui/status/power.js:227
|
||||
msgid "AC adapter"
|
||||
msgstr "Netstroom"
|
||||
|
||||
#: ../js/ui/status/power.js:237
|
||||
#: ../js/ui/status/power.js:229
|
||||
msgid "Laptop battery"
|
||||
msgstr "Laptop-accu"
|
||||
|
||||
#: ../js/ui/status/power.js:239
|
||||
#: ../js/ui/status/power.js:231
|
||||
msgid "UPS"
|
||||
msgstr "UPS"
|
||||
|
||||
#: ../js/ui/status/power.js:241
|
||||
#: ../js/ui/status/power.js:233
|
||||
msgid "Monitor"
|
||||
msgstr "Monitor"
|
||||
|
||||
#: ../js/ui/status/power.js:243
|
||||
#: ../js/ui/status/power.js:235
|
||||
msgid "Mouse"
|
||||
msgstr "Muis"
|
||||
|
||||
#: ../js/ui/status/power.js:245
|
||||
#: ../js/ui/status/power.js:237
|
||||
msgid "Keyboard"
|
||||
msgstr "Toetsenbord"
|
||||
|
||||
#: ../js/ui/status/power.js:247
|
||||
#: ../js/ui/status/power.js:239
|
||||
msgid "PDA"
|
||||
msgstr "PDA"
|
||||
|
||||
#: ../js/ui/status/power.js:249
|
||||
#: ../js/ui/status/power.js:241
|
||||
msgid "Cell phone"
|
||||
msgstr "Mobiele telefoon"
|
||||
|
||||
#: ../js/ui/status/power.js:251
|
||||
#: ../js/ui/status/power.js:243
|
||||
msgid "Media player"
|
||||
msgstr "Mediaspeler"
|
||||
|
||||
#: ../js/ui/status/power.js:253
|
||||
#: ../js/ui/status/power.js:245
|
||||
msgid "Tablet"
|
||||
msgstr "Tablet"
|
||||
|
||||
#: ../js/ui/status/power.js:255
|
||||
#: ../js/ui/status/power.js:247
|
||||
msgid "Computer"
|
||||
msgstr "Computer"
|
||||
|
||||
#: ../js/ui/status/power.js:257 ../src/shell-app-system.c:1013
|
||||
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
|
||||
msgid "Unknown"
|
||||
msgstr "Onbekend"
|
||||
|
||||
#: ../js/ui/status/volume.js:42
|
||||
#: ../js/ui/status/volume.js:45
|
||||
msgid "Volume"
|
||||
msgstr "Volume"
|
||||
|
||||
#: ../js/ui/status/volume.js:55
|
||||
#: ../js/ui/status/volume.js:58
|
||||
msgid "Microphone"
|
||||
msgstr "Microfoon"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:563
|
||||
#: ../js/ui/telepathyClient.js:239
|
||||
#, c-format
|
||||
msgid "%s is online."
|
||||
msgstr "%s is online."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:568
|
||||
#: ../js/ui/telepathyClient.js:244
|
||||
#, c-format
|
||||
msgid "%s is offline."
|
||||
msgstr "%s is offline."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:571
|
||||
#: ../js/ui/telepathyClient.js:247
|
||||
#, c-format
|
||||
msgid "%s is away."
|
||||
msgstr "%s is afwezig."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:574
|
||||
#: ../js/ui/telepathyClient.js:250
|
||||
#, c-format
|
||||
msgid "%s is busy."
|
||||
msgstr "%s is bezig."
|
||||
@ -919,28 +946,36 @@ msgstr "%s is bezig."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:669
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#, no-c-format
|
||||
msgid "Sent at %X on %A"
|
||||
msgstr "Verzonden om %H:%M op %A %e %B %Y"
|
||||
|
||||
#: ../js/ui/viewSelector.js:26
|
||||
msgid "Search your computer"
|
||||
msgstr "De computer doorzoeken"
|
||||
#. Translators: this is the text displayed
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:119
|
||||
msgid "Type to search..."
|
||||
msgstr "Typ om te zoeken…"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:43
|
||||
#: ../js/ui/viewSelector.js:139 ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Zoeken"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:42
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "%s is opgestart"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:45
|
||||
#: ../js/ui/windowAttentionHandler.js:44
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "‘%s’ is klaar"
|
||||
|
||||
#. translators:
|
||||
#. * The number of sound outputs on a particular device
|
||||
#: ../src/gvc/gvc-mixer-control.c:1094
|
||||
#: ../src/gvc/gvc-mixer-control.c:1098
|
||||
#, c-format
|
||||
msgid "%u Output"
|
||||
msgid_plural "%u Outputs"
|
||||
@ -949,49 +984,57 @@ msgstr[1] "%u uitvoerkanalen"
|
||||
|
||||
#. translators:
|
||||
#. * The number of sound inputs on a particular device
|
||||
#: ../src/gvc/gvc-mixer-control.c:1104
|
||||
#: ../src/gvc/gvc-mixer-control.c:1108
|
||||
#, c-format
|
||||
msgid "%u Input"
|
||||
msgid_plural "%u Inputs"
|
||||
msgstr[0] "%u invoerkanaal"
|
||||
msgstr[1] "%u invoerkanalen"
|
||||
|
||||
#: ../src/gvc/gvc-mixer-control.c:1402
|
||||
#: ../src/gvc/gvc-mixer-control.c:1406
|
||||
msgid "System Sounds"
|
||||
msgstr "Systeemgeluiden"
|
||||
|
||||
#: ../src/shell-global.c:1363
|
||||
#: ../src/main.c:395
|
||||
msgid "Print version"
|
||||
msgstr "Versie weergeven"
|
||||
|
||||
#: ../src/shell-global.c:1308
|
||||
msgid "Less than a minute ago"
|
||||
msgstr "Minder dan een minuut geleden"
|
||||
|
||||
#: ../src/shell-global.c:1367
|
||||
#: ../src/shell-global.c:1312
|
||||
#, c-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
msgstr[0] "%d minuut geleden"
|
||||
msgstr[1] "%d minuten geleden"
|
||||
|
||||
#: ../src/shell-global.c:1372
|
||||
#: ../src/shell-global.c:1317
|
||||
#, c-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
msgstr[0] "%d uur geleden"
|
||||
msgstr[1] "%d uur geleden"
|
||||
|
||||
#: ../src/shell-global.c:1377
|
||||
#: ../src/shell-global.c:1322
|
||||
#, c-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
msgstr[0] "%d dag geleden"
|
||||
msgstr[1] "%d dagen geleden"
|
||||
|
||||
#: ../src/shell-global.c:1382
|
||||
#: ../src/shell-global.c:1327
|
||||
#, c-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
msgstr[0] "%d week geleden"
|
||||
msgstr[1] "%d weken geleden"
|
||||
|
||||
#: ../src/shell-polkit-authentication-agent.c:334
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "Authenticatievenster is door de gebruiker afgesloten"
|
||||
|
||||
#: ../src/shell-util.c:89
|
||||
msgid "Home Folder"
|
||||
msgstr "Persoonlijke map"
|
||||
@ -1002,10 +1045,6 @@ msgstr "Persoonlijke map"
|
||||
msgid "File System"
|
||||
msgstr "Bestandssysteem"
|
||||
|
||||
#: ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Zoeken"
|
||||
|
||||
#. Translators: the first string is the name of a gvfs
|
||||
#. * method, and the second string is a path. For
|
||||
#. * example, "Trash: some-directory". It means that the
|
||||
@ -1016,6 +1055,15 @@ msgstr "Zoeken"
|
||||
msgid "%1$s: %2$s"
|
||||
msgstr "%1$s: %2$s"
|
||||
|
||||
#~ msgid "PREFERENCES"
|
||||
#~ msgstr "VOORKEUREN"
|
||||
|
||||
#~ msgid "Shut Down..."
|
||||
#~ msgstr "Afsluiten…"
|
||||
|
||||
#~ msgid "Search your computer"
|
||||
#~ msgstr "De computer doorzoeken"
|
||||
|
||||
#~ msgid "Clock"
|
||||
#~ msgstr "Klok"
|
||||
|
||||
|
172
po/uk.po
172
po/uk.po
@ -7,8 +7,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-03-02 17:36+0200\n"
|
||||
"PO-Revision-Date: 2011-03-02 17:37+0300\n"
|
||||
"POT-Creation-Date: 2011-03-10 18:48+0200\n"
|
||||
"PO-Revision-Date: 2011-03-10 20:18+0300\n"
|
||||
"Last-Translator: Korostil Daniel <ted.korostiled@gmail.com>\n"
|
||||
"Language-Team: translation@linux.org.ua\n"
|
||||
"Language: uk\n"
|
||||
@ -193,27 +193,27 @@ msgid "Execution of '%s' failed:"
|
||||
msgstr "Не вдалось виконати «%s»:"
|
||||
|
||||
#. Translators: Filter to display all applications
|
||||
#: ../js/ui/appDisplay.js:195
|
||||
#: ../js/ui/appDisplay.js:226
|
||||
msgid "All"
|
||||
msgstr "Всі"
|
||||
|
||||
#: ../js/ui/appDisplay.js:282
|
||||
#: ../js/ui/appDisplay.js:324
|
||||
msgid "APPLICATIONS"
|
||||
msgstr "ПРОГРАМИ"
|
||||
|
||||
#: ../js/ui/appDisplay.js:312
|
||||
#: ../js/ui/appDisplay.js:350
|
||||
msgid "SETTINGS"
|
||||
msgstr "ПАРАМЕТРИ"
|
||||
|
||||
#: ../js/ui/appDisplay.js:572
|
||||
#: ../js/ui/appDisplay.js:612
|
||||
msgid "New Window"
|
||||
msgstr "Нове вікно"
|
||||
|
||||
#: ../js/ui/appDisplay.js:575
|
||||
#: ../js/ui/appDisplay.js:615
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Вилучити з улюбленого"
|
||||
|
||||
#: ../js/ui/appDisplay.js:576
|
||||
#: ../js/ui/appDisplay.js:616
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Додати до улюбленого"
|
||||
|
||||
@ -373,7 +373,7 @@ msgstr "Цей тиждень"
|
||||
msgid "Next week"
|
||||
msgstr "Наступний тиждень"
|
||||
|
||||
#: ../js/ui/dash.js:174
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:931
|
||||
msgid "Remove"
|
||||
msgstr "Вилучити"
|
||||
|
||||
@ -381,54 +381,54 @@ msgstr "Вилучити"
|
||||
msgid "Date and Time Settings"
|
||||
msgstr "Параметри дати і часу"
|
||||
|
||||
#: ../js/ui/dateMenu.js:110
|
||||
#: ../js/ui/dateMenu.js:111
|
||||
msgid "Open Calendar"
|
||||
msgstr "Відкрити календар"
|
||||
|
||||
#. Translators: This is the time format with date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:162
|
||||
#: ../js/ui/dateMenu.js:164
|
||||
msgid "%a %b %e, %R:%S"
|
||||
msgstr "%a %b %e, %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:163
|
||||
#: ../js/ui/dateMenu.js:165
|
||||
msgid "%a %b %e, %R"
|
||||
msgstr "%a %b %e, %R"
|
||||
|
||||
#. Translators: This is the time format without date used
|
||||
#. in 24-hour mode.
|
||||
#: ../js/ui/dateMenu.js:167
|
||||
#: ../js/ui/dateMenu.js:169
|
||||
msgid "%a %R:%S"
|
||||
msgstr "%a %R:%S"
|
||||
|
||||
#: ../js/ui/dateMenu.js:168
|
||||
#: ../js/ui/dateMenu.js:170
|
||||
msgid "%a %R"
|
||||
msgstr "%a %R"
|
||||
|
||||
#. Translators: This is a time format with date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:175
|
||||
#: ../js/ui/dateMenu.js:177
|
||||
msgid "%a %b %e, %l:%M:%S %p"
|
||||
msgstr "%a %b %e, %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:176
|
||||
#: ../js/ui/dateMenu.js:178
|
||||
msgid "%a %b %e, %l:%M %p"
|
||||
msgstr "%a %b %e, %l:%M %p"
|
||||
|
||||
#. Translators: This is a time format without date used
|
||||
#. for AM/PM.
|
||||
#: ../js/ui/dateMenu.js:180
|
||||
#: ../js/ui/dateMenu.js:182
|
||||
msgid "%a %l:%M:%S %p"
|
||||
msgstr "%a %l:%M:%S %p"
|
||||
|
||||
#: ../js/ui/dateMenu.js:181
|
||||
#: ../js/ui/dateMenu.js:183
|
||||
msgid "%a %l:%M %p"
|
||||
msgstr "%a %l:%M %p"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#.
|
||||
#: ../js/ui/dateMenu.js:207
|
||||
#: ../js/ui/dateMenu.js:209
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%A %B %e, %Y"
|
||||
|
||||
@ -506,37 +506,41 @@ msgstr "Підтвердити"
|
||||
msgid "Cancel"
|
||||
msgstr "Скасувати"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:587
|
||||
#: ../js/ui/lookingGlass.js:588
|
||||
msgid "No extensions installed"
|
||||
msgstr "Не встановлено розширення"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:624
|
||||
#: ../js/ui/lookingGlass.js:625
|
||||
msgid "Enabled"
|
||||
msgstr "Увімкнено"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:626 ../src/gvc/gvc-mixer-control.c:1087
|
||||
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1087
|
||||
msgid "Disabled"
|
||||
msgstr "Вимкнено"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:628
|
||||
#: ../js/ui/lookingGlass.js:629
|
||||
msgid "Error"
|
||||
msgstr "Помилка"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:630
|
||||
#: ../js/ui/lookingGlass.js:631
|
||||
msgid "Out of date"
|
||||
msgstr "Застаріло"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:655
|
||||
#: ../js/ui/lookingGlass.js:656
|
||||
msgid "View Source"
|
||||
msgstr "Переглянути джерело"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:661
|
||||
#: ../js/ui/lookingGlass.js:662
|
||||
msgid "Web Page"
|
||||
msgstr "Веб-сторінка"
|
||||
|
||||
#: ../js/ui/messageTray.js:1902
|
||||
#: ../js/ui/messageTray.js:924
|
||||
msgid "Open"
|
||||
msgstr "Відкрити"
|
||||
|
||||
#: ../js/ui/messageTray.js:1961
|
||||
msgid "System Information"
|
||||
msgstr "Інформація про систему"
|
||||
|
||||
@ -552,18 +556,28 @@ msgstr "Вікна"
|
||||
msgid "Applications"
|
||||
msgstr "Програми"
|
||||
|
||||
#. Translators: this is the name of the dock/favorites area on
|
||||
#. the left of the overview
|
||||
#: ../js/ui/overview.js:202
|
||||
msgid "Dash"
|
||||
msgstr "Риска"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:529
|
||||
#: ../js/ui/panel.js:560
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "Вийти з %s"
|
||||
|
||||
#. Button on the left side of the panel.
|
||||
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:897
|
||||
#: ../js/ui/panel.js:919
|
||||
msgid "Activities"
|
||||
msgstr "Дії"
|
||||
|
||||
#: ../js/ui/panel.js:1020
|
||||
msgid "Panel"
|
||||
msgstr "Панель"
|
||||
|
||||
#: ../js/ui/placeDisplay.js:122
|
||||
#, c-format
|
||||
msgid "Failed to unmount '%s'"
|
||||
@ -586,7 +600,7 @@ msgstr "МІСЦЯ ТА ПРИСТРОЇ"
|
||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||
#. switches containing "◯" and "|"). Other values will
|
||||
#. simply result in invisible toggle switches.
|
||||
#: ../js/ui/popupMenu.js:612
|
||||
#: ../js/ui/popupMenu.js:618
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
@ -594,91 +608,91 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Please enter a command:"
|
||||
msgstr "Будь ласка, введіть команду:"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:295
|
||||
#: ../js/ui/searchDisplay.js:283
|
||||
msgid "Searching..."
|
||||
msgstr "Пошук…"
|
||||
|
||||
#: ../js/ui/searchDisplay.js:309
|
||||
#: ../js/ui/searchDisplay.js:297
|
||||
msgid "No matching results."
|
||||
msgstr "Нема збігів."
|
||||
|
||||
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
|
||||
#: ../js/ui/statusMenu.js:113 ../js/ui/statusMenu.js:177
|
||||
msgid "Power Off..."
|
||||
msgstr "Вимкнення живлення…"
|
||||
|
||||
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
|
||||
#: ../js/ui/statusMenu.js:115 ../js/ui/statusMenu.js:176
|
||||
msgid "Suspend"
|
||||
msgstr "Призупинити"
|
||||
|
||||
#: ../js/ui/statusMenu.js:125
|
||||
#: ../js/ui/statusMenu.js:136
|
||||
msgid "Available"
|
||||
msgstr "Доступний"
|
||||
|
||||
#: ../js/ui/statusMenu.js:130
|
||||
#: ../js/ui/statusMenu.js:141
|
||||
msgid "Busy"
|
||||
msgstr "Зайнятий"
|
||||
|
||||
#: ../js/ui/statusMenu.js:138
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
msgid "My Account"
|
||||
msgstr "Мій обліковий запис"
|
||||
|
||||
#: ../js/ui/statusMenu.js:142
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
msgid "System Settings"
|
||||
msgstr "Системні параметри"
|
||||
|
||||
#: ../js/ui/statusMenu.js:149
|
||||
#: ../js/ui/statusMenu.js:160
|
||||
msgid "Lock Screen"
|
||||
msgstr "Заблокувати екран"
|
||||
|
||||
#: ../js/ui/statusMenu.js:153
|
||||
#: ../js/ui/statusMenu.js:164
|
||||
msgid "Switch User"
|
||||
msgstr "Змінити користувача"
|
||||
|
||||
#: ../js/ui/statusMenu.js:158
|
||||
#: ../js/ui/statusMenu.js:169
|
||||
msgid "Log Out..."
|
||||
msgstr "Завершити сеанс…"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:81
|
||||
#: ../js/ui/status/accessibility.js:62
|
||||
msgid "Zoom"
|
||||
msgstr "Масштаб"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:88
|
||||
#: ../js/ui/status/accessibility.js:69
|
||||
msgid "Screen Reader"
|
||||
msgstr "Читання з екрану"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:92
|
||||
#: ../js/ui/status/accessibility.js:73
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "Екранна клавіатура"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:96
|
||||
#: ../js/ui/status/accessibility.js:77
|
||||
msgid "Visual Alerts"
|
||||
msgstr "Візуальні тривоги"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:99
|
||||
#: ../js/ui/status/accessibility.js:80
|
||||
msgid "Sticky Keys"
|
||||
msgstr "Липкі клавіші"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:102
|
||||
#: ../js/ui/status/accessibility.js:83
|
||||
msgid "Slow Keys"
|
||||
msgstr "Повільні клавіші"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:105
|
||||
#: ../js/ui/status/accessibility.js:86
|
||||
msgid "Bounce Keys"
|
||||
msgstr "Пружні клавіші"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:108
|
||||
#: ../js/ui/status/accessibility.js:89
|
||||
msgid "Mouse Keys"
|
||||
msgstr "Клавіші миші"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:112
|
||||
#: ../js/ui/status/accessibility.js:93
|
||||
msgid "Universal Access Settings"
|
||||
msgstr "Параметри універсального доступу"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:164
|
||||
#: ../js/ui/status/accessibility.js:145
|
||||
msgid "High Contrast"
|
||||
msgstr "Висока контрастність"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:209
|
||||
#: ../js/ui/status/accessibility.js:182
|
||||
msgid "Large Text"
|
||||
msgstr "Більший текст"
|
||||
|
||||
@ -849,51 +863,51 @@ msgstr[0] "Залишилось %d хвилина"
|
||||
msgstr[1] "Залишилось %d хвилини"
|
||||
msgstr[2] "Залишилось %d хвилин"
|
||||
|
||||
#: ../js/ui/status/power.js:241
|
||||
#: ../js/ui/status/power.js:227
|
||||
msgid "AC adapter"
|
||||
msgstr "Блок живлення"
|
||||
|
||||
#: ../js/ui/status/power.js:243
|
||||
#: ../js/ui/status/power.js:229
|
||||
msgid "Laptop battery"
|
||||
msgstr "Батарея ноутбука"
|
||||
|
||||
#: ../js/ui/status/power.js:245
|
||||
#: ../js/ui/status/power.js:231
|
||||
msgid "UPS"
|
||||
msgstr "UPS"
|
||||
|
||||
#: ../js/ui/status/power.js:247
|
||||
#: ../js/ui/status/power.js:233
|
||||
msgid "Monitor"
|
||||
msgstr "Монітор"
|
||||
|
||||
#: ../js/ui/status/power.js:249
|
||||
#: ../js/ui/status/power.js:235
|
||||
msgid "Mouse"
|
||||
msgstr "Миша"
|
||||
|
||||
#: ../js/ui/status/power.js:251
|
||||
#: ../js/ui/status/power.js:237
|
||||
msgid "Keyboard"
|
||||
msgstr "Клавіатура"
|
||||
|
||||
#: ../js/ui/status/power.js:253
|
||||
#: ../js/ui/status/power.js:239
|
||||
msgid "PDA"
|
||||
msgstr "КПК"
|
||||
|
||||
#: ../js/ui/status/power.js:255
|
||||
#: ../js/ui/status/power.js:241
|
||||
msgid "Cell phone"
|
||||
msgstr "Мобільний телефон"
|
||||
|
||||
#: ../js/ui/status/power.js:257
|
||||
#: ../js/ui/status/power.js:243
|
||||
msgid "Media player"
|
||||
msgstr "Програвач"
|
||||
|
||||
#: ../js/ui/status/power.js:259
|
||||
#: ../js/ui/status/power.js:245
|
||||
msgid "Tablet"
|
||||
msgstr "Планшет"
|
||||
|
||||
#: ../js/ui/status/power.js:261
|
||||
#: ../js/ui/status/power.js:247
|
||||
msgid "Computer"
|
||||
msgstr "Комп'ютер"
|
||||
|
||||
#: ../js/ui/status/power.js:263 ../src/shell-app-system.c:1013
|
||||
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
|
||||
msgid "Unknown"
|
||||
msgstr "Невідомо"
|
||||
|
||||
@ -928,7 +942,7 @@ msgstr "%s зайнятий."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:348
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#, no-c-format
|
||||
msgid "Sent at %X on %A"
|
||||
msgstr "Відправити на %X в %A"
|
||||
@ -937,16 +951,20 @@ msgstr "Відправити на %X в %A"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:103
|
||||
#: ../js/ui/viewSelector.js:117
|
||||
msgid "Type to search..."
|
||||
msgstr "Введіть для пошуку…"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:43
|
||||
#: ../js/ui/viewSelector.js:137 ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Пошук"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:42
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "%s завершив запуск"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:45
|
||||
#: ../js/ui/windowAttentionHandler.js:44
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "«%s» готовий"
|
||||
@ -975,11 +993,15 @@ msgstr[2] "%u входів"
|
||||
msgid "System Sounds"
|
||||
msgstr "Системні звуки"
|
||||
|
||||
#: ../src/shell-global.c:1298
|
||||
#: ../src/main.c:395
|
||||
msgid "Print version"
|
||||
msgstr "Показати версію"
|
||||
|
||||
#: ../src/shell-global.c:1308
|
||||
msgid "Less than a minute ago"
|
||||
msgstr "Менше хвилини тому"
|
||||
|
||||
#: ../src/shell-global.c:1302
|
||||
#: ../src/shell-global.c:1312
|
||||
#, c-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
@ -987,7 +1009,7 @@ msgstr[0] "%d хвилина тому"
|
||||
msgstr[1] "%d хвилини тому"
|
||||
msgstr[2] "%d хвилин тому"
|
||||
|
||||
#: ../src/shell-global.c:1307
|
||||
#: ../src/shell-global.c:1317
|
||||
#, c-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
@ -995,7 +1017,7 @@ msgstr[0] "%d година тому"
|
||||
msgstr[1] "%d години тому"
|
||||
msgstr[2] "%d годин тому"
|
||||
|
||||
#: ../src/shell-global.c:1312
|
||||
#: ../src/shell-global.c:1322
|
||||
#, c-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
@ -1003,7 +1025,7 @@ msgstr[0] "%d день тому"
|
||||
msgstr[1] "%d дні тому"
|
||||
msgstr[2] "%d днів тому"
|
||||
|
||||
#: ../src/shell-global.c:1317
|
||||
#: ../src/shell-global.c:1327
|
||||
#, c-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
@ -1025,10 +1047,6 @@ msgstr "Домашня тека"
|
||||
msgid "File System"
|
||||
msgstr "Файлова система"
|
||||
|
||||
#: ../src/shell-util.c:250
|
||||
msgid "Search"
|
||||
msgstr "Пошук"
|
||||
|
||||
#. Translators: the first string is the name of a gvfs
|
||||
#. * method, and the second string is a path. For
|
||||
#. * example, "Trash: some-directory". It means that the
|
||||
|
@ -44,7 +44,7 @@ libgvc_la_SOURCES = \
|
||||
$(libgvc_la_private_sources)
|
||||
|
||||
Gvc-1.0.gir: libgvc.la
|
||||
Gvc_1_0_gir_INCLUDES = GObject-2.0
|
||||
Gvc_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0
|
||||
Gvc_1_0_gir_CFLAGS = $(INCLUDES) -I$(srcdir)/gvc -DWITH_INTROSPECTION
|
||||
Gvc_1_0_gir_LIBS = libgvc.la
|
||||
Gvc_1_0_gir_FILES = $(addprefix $(srcdir)/,$(libgvc_la_gir_sources))
|
||||
|
@ -39,7 +39,6 @@ generated_script_substitutions = \
|
||||
-e "s|@libexecdir[@]|$(libexecdir)|" \
|
||||
-e "s|@libdir[@]|$(libdir)|" \
|
||||
-e "s|@pkgdatadir[@]|$(pkgdatadir)|" \
|
||||
-e "s|@ENABLE_DYNAMIC_MOZJS_HACK[@]|$(ENABLE_DYNAMIC_MOZJS_HACK)|" \
|
||||
-e "s|@PYTHON[@]|$(PYTHON)|" \
|
||||
-e "s|@VERSION[@]|$(VERSION)|" \
|
||||
-e "s|@sysconfdir[@]|$(sysconfdir)|"
|
||||
@ -169,6 +168,14 @@ endif BUILD_RECORDER
|
||||
|
||||
########################################
|
||||
|
||||
libexec_PROGRAMS += gnome-shell-perf-helper
|
||||
|
||||
gnome_shell_perf_helper_SOURCES = shell-perf-helper.c
|
||||
gnome_shell_perf_helper_CPPFLAGS = $(SHELL_PERF_HELPER_CFLAGS)
|
||||
gnome_shell_perf_helper_LDADD = $(SHELL_PERF_HELPER_LIBS)
|
||||
|
||||
########################################
|
||||
|
||||
# In order to run the interactive tests for GUI components, we need to have
|
||||
# an executable that exports the St components. Libtool doesn't have a way
|
||||
# to include all the symbols from a convenience library into a executable
|
||||
|
@ -79,11 +79,56 @@ def get_running_session_environs():
|
||||
result[key] = environs[key]
|
||||
return result
|
||||
|
||||
_bus = None
|
||||
_bus_iface = None
|
||||
_name_owner_changed_hook = None
|
||||
|
||||
def on_name_owner_changed(name, prev_owner, new_owner):
|
||||
if _name_owner_changed_hook:
|
||||
_name_owner_changed_hook(name, prev_owner, new_owner)
|
||||
|
||||
def get_bus():
|
||||
global _bus
|
||||
if _bus is None:
|
||||
dbus_loop = DBusGMainLoop()
|
||||
_bus = dbus.SessionBus(mainloop=dbus_loop)
|
||||
return _bus
|
||||
|
||||
def get_bus_iface():
|
||||
global _bus_iface
|
||||
if _bus_iface is None:
|
||||
bus = get_bus()
|
||||
bus_proxy = bus.get_object('org.freedesktop.DBus', '/org/freedesktop/DBus')
|
||||
_bus_iface = dbus.Interface(bus_proxy, 'org.freedesktop.DBus')
|
||||
_bus_iface.connect_to_signal('NameOwnerChanged', on_name_owner_changed)
|
||||
return _bus_iface
|
||||
|
||||
def wait_for_dbus_name(wait_name):
|
||||
global _name_owner_changed_hook
|
||||
|
||||
bus_iface = get_bus_iface()
|
||||
loop = gobject.MainLoop()
|
||||
|
||||
def on_name_owner_changed(name, prev_owner, new_owner):
|
||||
if not (name == wait_name and new_owner != ''):
|
||||
return
|
||||
loop.quit()
|
||||
return
|
||||
_name_owner_changed_hook = on_name_owner_changed
|
||||
|
||||
def on_timeout():
|
||||
print "\nFailed to start %s: timed out" % (wait_name,)
|
||||
sys.exit(1)
|
||||
gobject.timeout_add_seconds(7, on_timeout)
|
||||
|
||||
loop.run()
|
||||
_name_owner_changed_hook = None
|
||||
|
||||
def start_dconf_await_service():
|
||||
DCONF_NAME = 'ca.desrt.dconf'
|
||||
|
||||
dbus_loop = DBusGMainLoop()
|
||||
bus = dbus.SessionBus(mainloop=dbus_loop)
|
||||
bus = get_bus()
|
||||
get_bus_iface() # connect to NameOwnerChanged signal
|
||||
|
||||
# See if the service is already running or normal D-Bus activation works
|
||||
need_manual_activate = False
|
||||
@ -122,25 +167,30 @@ def start_dconf_await_service():
|
||||
print "\nFailed to start %s: %s" % (dconf_path, e)
|
||||
sys.exit(1)
|
||||
|
||||
bus_proxy = bus.get_object('org.freedesktop.DBus', '/org/freedesktop/DBus')
|
||||
bus_iface = dbus.Interface(bus_proxy, 'org.freedesktop.DBus')
|
||||
wait_for_dbus_name (DCONF_NAME)
|
||||
|
||||
loop = gobject.MainLoop()
|
||||
PERF_HELPER_NAME = "org.gnome.Shell.PerfHelper"
|
||||
PERF_HELPER_IFACE = "org.gnome.Shell.PerfHelper"
|
||||
PERF_HELPER_PATH = "/org/gnome/Shell/PerfHelper"
|
||||
|
||||
def on_name_owner_changed(name, prev_owner, new_owner):
|
||||
if not (name == DCONF_NAME and new_owner != ''):
|
||||
return
|
||||
print "started"
|
||||
loop.quit()
|
||||
return
|
||||
bus_iface.connect_to_signal('NameOwnerChanged', on_name_owner_changed)
|
||||
def start_perf_helper():
|
||||
get_bus_iface() # connect to NameOwnerChanged signal
|
||||
|
||||
def on_timeout():
|
||||
print "\nFailed to start %s: timed out" % (dconf_path,)
|
||||
sys.exit(1)
|
||||
gobject.timeout_add_seconds(7, on_timeout)
|
||||
self_dir = os.path.dirname(os.path.abspath(sys.argv[0]))
|
||||
running_from_source_tree = os.path.exists(os.path.join(self_dir, 'gnome-shell-jhbuild.in'))
|
||||
|
||||
loop.run()
|
||||
if running_from_source_tree:
|
||||
perf_helper_path = os.path.join(self_dir, "gnome-shell-perf-helper")
|
||||
else:
|
||||
perf_helper_path = "@libexecdir@/gnome-shell-perf-helper"
|
||||
|
||||
subprocess.Popen([perf_helper_path])
|
||||
wait_for_dbus_name (PERF_HELPER_NAME)
|
||||
|
||||
def stop_perf_helper():
|
||||
bus = get_bus()
|
||||
proxy = bus.get_object(PERF_HELPER_NAME, PERF_HELPER_PATH)
|
||||
proxy.Exit(dbus_interface=PERF_HELPER_IFACE)
|
||||
|
||||
def start_shell(perf_output=None):
|
||||
self_dir = os.path.dirname(os.path.abspath(sys.argv[0]))
|
||||
@ -185,6 +235,7 @@ def start_shell(perf_output=None):
|
||||
|
||||
if options.perf is not None:
|
||||
env['SHELL_PERF_MODULE'] = options.perf
|
||||
env['MUTTER_WM_CLASS_FILTER'] = 'Gnome-shell-perf-helper'
|
||||
|
||||
if perf_output is not None:
|
||||
env['SHELL_PERF_OUTPUT'] = perf_output
|
||||
@ -362,6 +413,8 @@ def run_performance_test():
|
||||
logs = []
|
||||
metric_summaries = {}
|
||||
|
||||
start_perf_helper()
|
||||
|
||||
for i in xrange(0, iters):
|
||||
# We create an empty temporary file that the shell will overwrite
|
||||
# with the contents.
|
||||
@ -372,17 +425,24 @@ def run_performance_test():
|
||||
normal_exit = False
|
||||
try:
|
||||
normal_exit = run_shell(perf_output=output_file)
|
||||
except:
|
||||
stop_perf_helper()
|
||||
raise
|
||||
finally:
|
||||
if not normal_exit:
|
||||
os.remove(output_file)
|
||||
|
||||
if not normal_exit:
|
||||
stop_perf_helper()
|
||||
return False
|
||||
|
||||
try:
|
||||
f = open(output_file)
|
||||
output = json.load(f)
|
||||
f.close()
|
||||
except:
|
||||
stop_perf_helper()
|
||||
raise
|
||||
finally:
|
||||
os.remove(output_file)
|
||||
|
||||
@ -409,6 +469,8 @@ def run_performance_test():
|
||||
|
||||
logs.append(output['log'])
|
||||
|
||||
stop_perf_helper()
|
||||
|
||||
if options.perf_output or options.perf_upload:
|
||||
# Write a complete report, formatted as JSON. The Javascript/C code that
|
||||
# generates the individual reports we are summarizing here is very careful
|
||||
@ -548,3 +610,8 @@ try:
|
||||
finally:
|
||||
if options.replace and (options.perf or not normal_exit):
|
||||
restore_gnome()
|
||||
|
||||
if normal_exit:
|
||||
sys.exit(0)
|
||||
else:
|
||||
sys.exit(1)
|
||||
|
@ -157,7 +157,7 @@ gvc_mixer_card_get_profile (GvcMixerCard *card)
|
||||
GList *l;
|
||||
|
||||
g_return_val_if_fail (GVC_IS_MIXER_CARD (card), NULL);
|
||||
g_return_val_if_fail (card->priv->profiles != NULL, FALSE);
|
||||
g_return_val_if_fail (card->priv->profiles != NULL, NULL);
|
||||
|
||||
for (l = card->priv->profiles; l != NULL; l = l->next) {
|
||||
GvcMixerCardProfile *p = l->data;
|
||||
@ -266,7 +266,7 @@ gvc_mixer_card_change_profile (GvcMixerCard *card,
|
||||
const GList *
|
||||
gvc_mixer_card_get_profiles (GvcMixerCard *card)
|
||||
{
|
||||
g_return_val_if_fail (GVC_IS_MIXER_CARD (card), FALSE);
|
||||
g_return_val_if_fail (GVC_IS_MIXER_CARD (card), NULL);
|
||||
return card->priv->profiles;
|
||||
}
|
||||
|
||||
|
@ -615,13 +615,13 @@ static void
|
||||
update_default_source_from_name (GvcMixerControl *control,
|
||||
const char *name)
|
||||
{
|
||||
gboolean changed;
|
||||
gboolean changed = FALSE;
|
||||
|
||||
if ((control->priv->default_source_name == NULL
|
||||
&& name != NULL)
|
||||
|| (control->priv->default_source_name != NULL
|
||||
&& name == NULL)
|
||||
|| strcmp (control->priv->default_source_name, name) != 0) {
|
||||
|| (name != NULL && strcmp (control->priv->default_source_name, name) != 0)) {
|
||||
changed = TRUE;
|
||||
}
|
||||
|
||||
@ -640,13 +640,13 @@ static void
|
||||
update_default_sink_from_name (GvcMixerControl *control,
|
||||
const char *name)
|
||||
{
|
||||
gboolean changed;
|
||||
gboolean changed = FALSE;
|
||||
|
||||
if ((control->priv->default_sink_name == NULL
|
||||
&& name != NULL)
|
||||
|| (control->priv->default_sink_name != NULL
|
||||
&& name == NULL)
|
||||
|| strcmp (control->priv->default_sink_name, name) != 0) {
|
||||
|| (name != NULL && strcmp (control->priv->default_sink_name, name) != 0)) {
|
||||
changed = TRUE;
|
||||
}
|
||||
|
||||
@ -710,6 +710,58 @@ add_stream (GvcMixerControl *control,
|
||||
gvc_mixer_stream_get_id (stream));
|
||||
}
|
||||
|
||||
static void
|
||||
set_icon_name_from_proplist (GvcMixerStream *stream,
|
||||
pa_proplist *l,
|
||||
const char *default_icon_name)
|
||||
{
|
||||
const char *t;
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_DEVICE_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_MEDIA_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_WINDOW_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_APPLICATION_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_MEDIA_ROLE))) {
|
||||
|
||||
if (strcmp (t, "video") == 0 ||
|
||||
strcmp (t, "phone") == 0) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "music") == 0) {
|
||||
t = "audio";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "game") == 0) {
|
||||
t = "applications-games";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "event") == 0) {
|
||||
t = "dialog-information";
|
||||
goto finish;
|
||||
}
|
||||
}
|
||||
|
||||
t = default_icon_name;
|
||||
|
||||
finish:
|
||||
gvc_mixer_stream_set_icon_name (stream, t);
|
||||
}
|
||||
|
||||
static void
|
||||
update_sink (GvcMixerControl *control,
|
||||
const pa_sink_info *info)
|
||||
@ -767,7 +819,7 @@ update_sink (GvcMixerControl *control,
|
||||
gvc_mixer_stream_set_name (stream, info->name);
|
||||
gvc_mixer_stream_set_card_index (stream, info->card);
|
||||
gvc_mixer_stream_set_description (stream, info->description);
|
||||
gvc_mixer_stream_set_icon_name (stream, "audio-card");
|
||||
set_icon_name_from_proplist (stream, info->proplist, "audio-card");
|
||||
gvc_mixer_stream_set_volume (stream, (guint)max_volume);
|
||||
gvc_mixer_stream_set_is_muted (stream, info->mute);
|
||||
gvc_mixer_stream_set_can_decibel (stream, !!(info->flags & PA_SINK_DECIBEL_VOLUME));
|
||||
@ -856,7 +908,7 @@ update_source (GvcMixerControl *control,
|
||||
gvc_mixer_stream_set_name (stream, info->name);
|
||||
gvc_mixer_stream_set_card_index (stream, info->card);
|
||||
gvc_mixer_stream_set_description (stream, info->description);
|
||||
gvc_mixer_stream_set_icon_name (stream, "audio-input-microphone");
|
||||
set_icon_name_from_proplist (stream, info->proplist, "audio-input-microphone");
|
||||
gvc_mixer_stream_set_volume (stream, (guint)max_volume);
|
||||
gvc_mixer_stream_set_is_muted (stream, info->mute);
|
||||
gvc_mixer_stream_set_can_decibel (stream, !!(info->flags & PA_SOURCE_DECIBEL_VOLUME));
|
||||
@ -880,54 +932,6 @@ update_source (GvcMixerControl *control,
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
set_icon_name_from_proplist (GvcMixerStream *stream,
|
||||
pa_proplist *l,
|
||||
const char *default_icon_name)
|
||||
{
|
||||
const char *t;
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_MEDIA_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_WINDOW_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_APPLICATION_ICON_NAME))) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ((t = pa_proplist_gets (l, PA_PROP_MEDIA_ROLE))) {
|
||||
|
||||
if (strcmp (t, "video") == 0 ||
|
||||
strcmp (t, "phone") == 0) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "music") == 0) {
|
||||
t = "audio";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "game") == 0) {
|
||||
t = "applications-games";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (strcmp (t, "event") == 0) {
|
||||
t = "dialog-information";
|
||||
goto finish;
|
||||
}
|
||||
}
|
||||
|
||||
t = default_icon_name;
|
||||
|
||||
finish:
|
||||
gvc_mixer_stream_set_icon_name (stream, t);
|
||||
}
|
||||
|
||||
static void
|
||||
set_is_event_stream_from_proplist (GvcMixerStream *stream,
|
||||
pa_proplist *l)
|
||||
@ -1121,7 +1125,7 @@ update_card (GvcMixerControl *control,
|
||||
const pa_card_info *info)
|
||||
{
|
||||
GvcMixerCard *card;
|
||||
gboolean is_new;
|
||||
gboolean is_new = FALSE;
|
||||
#if 1
|
||||
guint i;
|
||||
const char *key;
|
||||
@ -1989,6 +1993,11 @@ gvc_mixer_control_dispose (GObject *object)
|
||||
{
|
||||
GvcMixerControl *control = GVC_MIXER_CONTROL (object);
|
||||
|
||||
if (control->priv->reconnect_id != 0) {
|
||||
g_source_remove (control->priv->reconnect_id);
|
||||
control->priv->reconnect_id = 0;
|
||||
}
|
||||
|
||||
if (control->priv->pa_context != NULL) {
|
||||
pa_context_unref (control->priv->pa_context);
|
||||
control->priv->pa_context = NULL;
|
||||
@ -2230,3 +2239,20 @@ gvc_mixer_control_new (const char *name)
|
||||
NULL);
|
||||
return GVC_MIXER_CONTROL (control);
|
||||
}
|
||||
|
||||
/* FIXME: Remove when PA 0.9.23 is used */
|
||||
#ifndef PA_VOLUME_UI_MAX
|
||||
#define PA_VOLUME_UI_MAX pa_sw_volume_from_dB(+11.0)
|
||||
#endif
|
||||
|
||||
gdouble
|
||||
gvc_mixer_control_get_vol_max_norm (GvcMixerControl *control)
|
||||
{
|
||||
return (gdouble) PA_VOLUME_NORM;
|
||||
}
|
||||
|
||||
gdouble
|
||||
gvc_mixer_control_get_vol_max_amplified (GvcMixerControl *control)
|
||||
{
|
||||
return (gdouble) PA_VOLUME_UI_MAX;
|
||||
}
|
||||
|
@ -91,6 +91,9 @@ gboolean gvc_mixer_control_set_default_sink (GvcMixerControl *con
|
||||
gboolean gvc_mixer_control_set_default_source (GvcMixerControl *control,
|
||||
GvcMixerStream *stream);
|
||||
|
||||
gdouble gvc_mixer_control_get_vol_max_norm (GvcMixerControl *control);
|
||||
gdouble gvc_mixer_control_get_vol_max_amplified (GvcMixerControl *control);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GVC_MIXER_CONTROL_H */
|
||||
|
@ -156,25 +156,12 @@ gvc_mixer_event_role_get_property (GObject *object,
|
||||
}
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gvc_mixer_event_role_constructor (GType type,
|
||||
guint n_construct_properties,
|
||||
GObjectConstructParam *construct_params)
|
||||
{
|
||||
GObject *object;
|
||||
|
||||
object = G_OBJECT_CLASS (gvc_mixer_event_role_parent_class)->constructor (type, n_construct_properties, construct_params);
|
||||
|
||||
return object;
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_event_role_class_init (GvcMixerEventRoleClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GvcMixerStreamClass *stream_class = GVC_MIXER_STREAM_CLASS (klass);
|
||||
|
||||
object_class->constructor = gvc_mixer_event_role_constructor;
|
||||
object_class->finalize = gvc_mixer_event_role_finalize;
|
||||
object_class->set_property = gvc_mixer_event_role_set_property;
|
||||
object_class->get_property = gvc_mixer_event_role_get_property;
|
||||
|
@ -43,7 +43,6 @@ struct GvcMixerSinkInputPrivate
|
||||
static void gvc_mixer_sink_input_class_init (GvcMixerSinkInputClass *klass);
|
||||
static void gvc_mixer_sink_input_init (GvcMixerSinkInput *mixer_sink_input);
|
||||
static void gvc_mixer_sink_input_finalize (GObject *object);
|
||||
static void gvc_mixer_sink_input_dispose (GObject *object);
|
||||
|
||||
G_DEFINE_TYPE (GvcMixerSinkInput, gvc_mixer_sink_input, GVC_TYPE_MIXER_STREAM)
|
||||
|
||||
@ -107,26 +106,12 @@ gvc_mixer_sink_input_change_is_muted (GvcMixerStream *stream,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gvc_mixer_sink_input_constructor (GType type,
|
||||
guint n_construct_properties,
|
||||
GObjectConstructParam *construct_params)
|
||||
{
|
||||
GObject *object;
|
||||
|
||||
object = G_OBJECT_CLASS (gvc_mixer_sink_input_parent_class)->constructor (type, n_construct_properties, construct_params);
|
||||
|
||||
return object;
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_input_class_init (GvcMixerSinkInputClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GvcMixerStreamClass *stream_class = GVC_MIXER_STREAM_CLASS (klass);
|
||||
|
||||
object_class->constructor = gvc_mixer_sink_input_constructor;
|
||||
object_class->dispose = gvc_mixer_sink_input_dispose;
|
||||
object_class->finalize = gvc_mixer_sink_input_finalize;
|
||||
|
||||
stream_class->push_volume = gvc_mixer_sink_input_push_volume;
|
||||
@ -141,15 +126,6 @@ gvc_mixer_sink_input_init (GvcMixerSinkInput *sink_input)
|
||||
sink_input->priv = GVC_MIXER_SINK_INPUT_GET_PRIVATE (sink_input);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_input_dispose (GObject *object)
|
||||
{
|
||||
g_return_if_fail (object != NULL);
|
||||
g_return_if_fail (GVC_IS_MIXER_SINK_INPUT (object));
|
||||
|
||||
G_OBJECT_CLASS (gvc_mixer_sink_input_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_input_finalize (GObject *object)
|
||||
{
|
||||
|
@ -43,7 +43,6 @@ struct GvcMixerSinkPrivate
|
||||
static void gvc_mixer_sink_class_init (GvcMixerSinkClass *klass);
|
||||
static void gvc_mixer_sink_init (GvcMixerSink *mixer_sink);
|
||||
static void gvc_mixer_sink_finalize (GObject *object);
|
||||
static void gvc_mixer_sink_dispose (GObject *object);
|
||||
|
||||
G_DEFINE_TYPE (GvcMixerSink, gvc_mixer_sink, GVC_TYPE_MIXER_STREAM)
|
||||
|
||||
@ -139,26 +138,12 @@ gvc_mixer_sink_change_port (GvcMixerStream *stream,
|
||||
#endif /* PA_MICRO > 15 */
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gvc_mixer_sink_constructor (GType type,
|
||||
guint n_construct_properties,
|
||||
GObjectConstructParam *construct_params)
|
||||
{
|
||||
GObject *object;
|
||||
|
||||
object = G_OBJECT_CLASS (gvc_mixer_sink_parent_class)->constructor (type, n_construct_properties, construct_params);
|
||||
|
||||
return object;
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_class_init (GvcMixerSinkClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GvcMixerStreamClass *stream_class = GVC_MIXER_STREAM_CLASS (klass);
|
||||
|
||||
object_class->constructor = gvc_mixer_sink_constructor;
|
||||
object_class->dispose = gvc_mixer_sink_dispose;
|
||||
object_class->finalize = gvc_mixer_sink_finalize;
|
||||
|
||||
stream_class->push_volume = gvc_mixer_sink_push_volume;
|
||||
@ -174,15 +159,6 @@ gvc_mixer_sink_init (GvcMixerSink *sink)
|
||||
sink->priv = GVC_MIXER_SINK_GET_PRIVATE (sink);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_dispose (GObject *object)
|
||||
{
|
||||
g_return_if_fail (object != NULL);
|
||||
g_return_if_fail (GVC_IS_MIXER_SINK (object));
|
||||
|
||||
G_OBJECT_CLASS (gvc_mixer_sink_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_sink_finalize (GObject *object)
|
||||
{
|
||||
|
@ -60,25 +60,12 @@ gvc_mixer_source_output_change_is_muted (GvcMixerStream *stream,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gvc_mixer_source_output_constructor (GType type,
|
||||
guint n_construct_properties,
|
||||
GObjectConstructParam *construct_params)
|
||||
{
|
||||
GObject *object;
|
||||
|
||||
object = G_OBJECT_CLASS (gvc_mixer_source_output_parent_class)->constructor (type, n_construct_properties, construct_params);
|
||||
|
||||
return object;
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_source_output_class_init (GvcMixerSourceOutputClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GvcMixerStreamClass *stream_class = GVC_MIXER_STREAM_CLASS (klass);
|
||||
|
||||
object_class->constructor = gvc_mixer_source_output_constructor;
|
||||
object_class->finalize = gvc_mixer_source_output_finalize;
|
||||
|
||||
stream_class->push_volume = gvc_mixer_source_output_push_volume;
|
||||
|
@ -43,7 +43,6 @@ struct GvcMixerSourcePrivate
|
||||
static void gvc_mixer_source_class_init (GvcMixerSourceClass *klass);
|
||||
static void gvc_mixer_source_init (GvcMixerSource *mixer_source);
|
||||
static void gvc_mixer_source_finalize (GObject *object);
|
||||
static void gvc_mixer_source_dispose (GObject *object);
|
||||
|
||||
G_DEFINE_TYPE (GvcMixerSource, gvc_mixer_source, GVC_TYPE_MIXER_STREAM)
|
||||
|
||||
@ -139,26 +138,12 @@ gvc_mixer_source_change_port (GvcMixerStream *stream,
|
||||
#endif /* PA_MICRO > 15 */
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gvc_mixer_source_constructor (GType type,
|
||||
guint n_construct_properties,
|
||||
GObjectConstructParam *construct_params)
|
||||
{
|
||||
GObject *object;
|
||||
|
||||
object = G_OBJECT_CLASS (gvc_mixer_source_parent_class)->constructor (type, n_construct_properties, construct_params);
|
||||
|
||||
return object;
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_source_class_init (GvcMixerSourceClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GvcMixerStreamClass *stream_class = GVC_MIXER_STREAM_CLASS (klass);
|
||||
|
||||
object_class->constructor = gvc_mixer_source_constructor;
|
||||
object_class->dispose = gvc_mixer_source_dispose;
|
||||
object_class->finalize = gvc_mixer_source_finalize;
|
||||
|
||||
stream_class->push_volume = gvc_mixer_source_push_volume;
|
||||
@ -174,15 +159,6 @@ gvc_mixer_source_init (GvcMixerSource *source)
|
||||
source->priv = GVC_MIXER_SOURCE_GET_PRIVATE (source);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_source_dispose (GObject *object)
|
||||
{
|
||||
g_return_if_fail (object != NULL);
|
||||
g_return_if_fail (GVC_IS_MIXER_SOURCE (object));
|
||||
|
||||
G_OBJECT_CLASS (gvc_mixer_source_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
static void
|
||||
gvc_mixer_source_finalize (GObject *object)
|
||||
{
|
||||
|
@ -390,6 +390,21 @@ gvc_mixer_stream_get_icon_name (GvcMixerStream *stream)
|
||||
return stream->priv->icon_name;
|
||||
}
|
||||
|
||||
/**
|
||||
* gvc_mixer_stream_get_gicon:
|
||||
* @stream: a #GvcMixerStream
|
||||
*
|
||||
* Returns: (transfer full): a new #GIcon
|
||||
*/
|
||||
GIcon *
|
||||
gvc_mixer_stream_get_gicon (GvcMixerStream *stream)
|
||||
{
|
||||
g_return_val_if_fail (GVC_IS_MIXER_STREAM (stream), NULL);
|
||||
if (stream->priv->icon_name == NULL)
|
||||
return NULL;
|
||||
return g_themed_icon_new_with_default_fallbacks (stream->priv->icon_name);
|
||||
}
|
||||
|
||||
gboolean
|
||||
gvc_mixer_stream_set_icon_name (GvcMixerStream *stream,
|
||||
const char *icon_name)
|
||||
@ -496,7 +511,7 @@ gvc_mixer_stream_change_port (GvcMixerStream *stream,
|
||||
const GList *
|
||||
gvc_mixer_stream_get_ports (GvcMixerStream *stream)
|
||||
{
|
||||
g_return_val_if_fail (GVC_IS_MIXER_STREAM (stream), FALSE);
|
||||
g_return_val_if_fail (GVC_IS_MIXER_STREAM (stream), NULL);
|
||||
return stream->priv->ports;
|
||||
}
|
||||
|
||||
|
@ -24,6 +24,7 @@
|
||||
#include <glib-object.h>
|
||||
#include "gvc-pulseaudio-fake.h"
|
||||
#include "gvc-channel-map.h"
|
||||
#include <gio/gio.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
@ -84,6 +85,7 @@ gboolean gvc_mixer_stream_change_is_muted (GvcMixerStream *stream,
|
||||
gboolean gvc_mixer_stream_is_running (GvcMixerStream *stream);
|
||||
const char * gvc_mixer_stream_get_name (GvcMixerStream *stream);
|
||||
const char * gvc_mixer_stream_get_icon_name (GvcMixerStream *stream);
|
||||
GIcon * gvc_mixer_stream_get_gicon (GvcMixerStream *stream);
|
||||
const char * gvc_mixer_stream_get_description (GvcMixerStream *stream);
|
||||
const char * gvc_mixer_stream_get_application_id (GvcMixerStream *stream);
|
||||
gboolean gvc_mixer_stream_is_event_stream (GvcMixerStream *stream);
|
||||
|
@ -77,7 +77,8 @@ main(int argc, char **argv)
|
||||
clutter_x11_set_display (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
|
||||
clutter_x11_disable_event_retrieval ();
|
||||
|
||||
clutter_init (&argc, &argv);
|
||||
if (clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS)
|
||||
return 1;
|
||||
|
||||
gdk_window_add_filter (NULL, event_filter, NULL);
|
||||
|
||||
|
346
src/shell-perf-helper.c
Normal file
346
src/shell-perf-helper.c
Normal file
@ -0,0 +1,346 @@
|
||||
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
|
||||
|
||||
/* gnome-shell-perf-helper: a program to create windows for performance tests
|
||||
*
|
||||
* Running performance tests with whatever windows a user has open results
|
||||
* in unreliable results, so instead we hide all other windows and talk
|
||||
* to this program over D-Bus to create just the windows we want.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#include <gdk/gdkx.h>
|
||||
|
||||
#define BUS_NAME "org.gnome.Shell.PerfHelper"
|
||||
|
||||
static void destroy_windows (void);
|
||||
static void finish_wait_windows (void);
|
||||
static void check_finish_wait_windows (void);
|
||||
|
||||
static const gchar introspection_xml[] =
|
||||
"<node>"
|
||||
" <interface name='org.gnome.Shell.PerfHelper'>"
|
||||
" <method name='Exit'/>"
|
||||
" <method name='CreateWindow'>"
|
||||
" <arg type='i' name='width' direction='in'/>"
|
||||
" <arg type='i' name='height' direction='in'/>"
|
||||
" <arg type='b' name='alpha' direction='in'/>"
|
||||
" <arg type='b' name='maximized' direction='in'/>"
|
||||
" </method>"
|
||||
" <method name='WaitWindows'/>"
|
||||
" <method name='DestroyWindows'/>"
|
||||
" </interface>"
|
||||
"</node>";
|
||||
|
||||
typedef struct {
|
||||
GtkWidget *window;
|
||||
int width;
|
||||
int height;
|
||||
|
||||
guint alpha : 1;
|
||||
guint maximized : 1;
|
||||
guint mapped : 1;
|
||||
guint exposed : 1;
|
||||
guint pending : 1;
|
||||
} WindowInfo;
|
||||
|
||||
static int opt_idle_timeout = 30;
|
||||
|
||||
static GOptionEntry opt_entries[] =
|
||||
{
|
||||
{ "idle-timeout", 'r', 0, G_OPTION_ARG_INT, &opt_idle_timeout, "Exit after N seconds", "N" },
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
static Display *xdisplay;
|
||||
static Window xroot;
|
||||
static Atom atom_wm_state;
|
||||
static Atom atom__net_wm_name;
|
||||
static Atom atom_utf8_string;
|
||||
|
||||
static guint timeout_id;
|
||||
static GList *our_windows;
|
||||
static GList *wait_windows_invocations;
|
||||
|
||||
static gboolean
|
||||
on_timeout (gpointer data)
|
||||
{
|
||||
timeout_id = 0;
|
||||
|
||||
destroy_windows ();
|
||||
gtk_main_quit ();
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
establish_timeout ()
|
||||
{
|
||||
if (timeout_id != 0)
|
||||
g_source_remove (timeout_id);
|
||||
|
||||
timeout_id = g_timeout_add (opt_idle_timeout * 1000, on_timeout, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
destroy_windows (void)
|
||||
{
|
||||
GList *l;
|
||||
|
||||
for (l = our_windows; l; l = l->next)
|
||||
{
|
||||
WindowInfo *info = l->data;
|
||||
gtk_widget_destroy (info->window);
|
||||
g_free (info);
|
||||
}
|
||||
|
||||
g_list_free (our_windows);
|
||||
our_windows = NULL;
|
||||
|
||||
check_finish_wait_windows ();
|
||||
}
|
||||
|
||||
static gboolean
|
||||
on_window_map_event (GtkWidget *window,
|
||||
GdkEventAny *event,
|
||||
WindowInfo *info)
|
||||
{
|
||||
info->mapped = TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
on_window_draw (GtkWidget *window,
|
||||
cairo_t *cr,
|
||||
WindowInfo *info)
|
||||
{
|
||||
cairo_rectangle_int_t allocation;
|
||||
gtk_widget_get_allocation (window, &allocation);
|
||||
|
||||
/* We draw an arbitrary pattern of red lines near the border of the
|
||||
* window to make it more clear than empty windows if something
|
||||
* is drastrically wrong.
|
||||
*/
|
||||
|
||||
cairo_save (cr);
|
||||
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
|
||||
|
||||
if (info->alpha)
|
||||
cairo_set_source_rgba (cr, 1, 1, 1, 0.5);
|
||||
else
|
||||
cairo_set_source_rgb (cr, 1, 1, 1);
|
||||
|
||||
cairo_paint (cr);
|
||||
cairo_restore (cr);
|
||||
|
||||
cairo_set_source_rgb (cr, 1, 0, 0);
|
||||
cairo_set_line_width (cr, 10);
|
||||
cairo_move_to (cr, 0, 40);
|
||||
cairo_line_to (cr, allocation.width, 40);
|
||||
cairo_move_to (cr, 0, allocation.height - 40);
|
||||
cairo_line_to (cr, allocation.width, allocation.height - 40);
|
||||
cairo_move_to (cr, 40, 0);
|
||||
cairo_line_to (cr, 40, allocation.height);
|
||||
cairo_move_to (cr, allocation.width - 40, 0);
|
||||
cairo_line_to (cr, allocation.width - 40, allocation.height);
|
||||
cairo_stroke (cr);
|
||||
|
||||
info->exposed = TRUE;
|
||||
|
||||
if (info->exposed && info->mapped && info->pending)
|
||||
{
|
||||
info->pending = FALSE;
|
||||
check_finish_wait_windows ();
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
create_window (int width,
|
||||
int height,
|
||||
gboolean alpha,
|
||||
gboolean maximized)
|
||||
{
|
||||
WindowInfo *info;
|
||||
|
||||
info = g_new0 (WindowInfo, 1);
|
||||
info->width = width;
|
||||
info->height = height;
|
||||
info->alpha = alpha;
|
||||
info->maximized = maximized;
|
||||
info->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||
if (alpha)
|
||||
gtk_widget_set_visual (info->window, gdk_screen_get_rgba_visual (gdk_screen_get_default ()));
|
||||
if (maximized)
|
||||
gtk_window_maximize (GTK_WINDOW (info->window));
|
||||
info->pending = TRUE;
|
||||
|
||||
gtk_widget_set_size_request (info->window, width, height);
|
||||
gtk_widget_set_app_paintable (info->window, TRUE);
|
||||
g_signal_connect (info->window, "map-event", G_CALLBACK (on_window_map_event), info);
|
||||
g_signal_connect (info->window, "draw", G_CALLBACK (on_window_draw), info);
|
||||
gtk_widget_show (info->window);
|
||||
|
||||
our_windows = g_list_prepend (our_windows, info);
|
||||
}
|
||||
|
||||
static void
|
||||
finish_wait_windows (void)
|
||||
{
|
||||
GList *l;
|
||||
|
||||
for (l = wait_windows_invocations; l; l = l->next)
|
||||
g_dbus_method_invocation_return_value (l->data, NULL);
|
||||
|
||||
g_list_free (wait_windows_invocations);
|
||||
wait_windows_invocations = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
check_finish_wait_windows (void)
|
||||
{
|
||||
GList *l;
|
||||
gboolean have_pending = FALSE;
|
||||
|
||||
for (l = our_windows; l; l = l->next)
|
||||
{
|
||||
WindowInfo *info = l->data;
|
||||
if (info->pending)
|
||||
have_pending = TRUE;
|
||||
}
|
||||
|
||||
if (!have_pending)
|
||||
finish_wait_windows ();
|
||||
}
|
||||
|
||||
static void
|
||||
handle_method_call (GDBusConnection *connection,
|
||||
const gchar *sender,
|
||||
const gchar *object_path,
|
||||
const gchar *interface_name,
|
||||
const gchar *method_name,
|
||||
GVariant *parameters,
|
||||
GDBusMethodInvocation *invocation,
|
||||
gpointer user_data)
|
||||
{
|
||||
/* Push off the idle timeout */
|
||||
establish_timeout ();
|
||||
|
||||
if (g_strcmp0 (method_name, "Exit") == 0)
|
||||
{
|
||||
destroy_windows ();
|
||||
|
||||
g_dbus_method_invocation_return_value (invocation, NULL);
|
||||
g_dbus_connection_flush_sync (connection, NULL, NULL);
|
||||
|
||||
gtk_main_quit ();
|
||||
}
|
||||
else if (g_strcmp0 (method_name, "CreateWindow") == 0)
|
||||
{
|
||||
int width, height;
|
||||
gboolean alpha, maximized;
|
||||
|
||||
g_variant_get (parameters, "(iibb)", &width, &height, &alpha, &maximized);
|
||||
|
||||
create_window (width, height, alpha, maximized);
|
||||
g_dbus_method_invocation_return_value (invocation, NULL);
|
||||
}
|
||||
else if (g_strcmp0 (method_name, "WaitWindows") == 0)
|
||||
{
|
||||
wait_windows_invocations = g_list_prepend (wait_windows_invocations, invocation);
|
||||
check_finish_wait_windows ();
|
||||
}
|
||||
else if (g_strcmp0 (method_name, "DestroyWindows") == 0)
|
||||
{
|
||||
destroy_windows ();
|
||||
g_dbus_method_invocation_return_value (invocation, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
static const GDBusInterfaceVTable interface_vtable =
|
||||
{
|
||||
handle_method_call,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static void
|
||||
on_bus_acquired (GDBusConnection *connection,
|
||||
const gchar *name,
|
||||
gpointer user_data)
|
||||
{
|
||||
GDBusNodeInfo *introspection_data = g_dbus_node_info_new_for_xml (introspection_xml, NULL);
|
||||
|
||||
g_dbus_connection_register_object (connection,
|
||||
"/org/gnome/Shell/PerfHelper",
|
||||
introspection_data->interfaces[0],
|
||||
&interface_vtable,
|
||||
NULL, /* user_data */
|
||||
NULL, /* user_data_free_func */
|
||||
NULL); /* GError** */
|
||||
}
|
||||
|
||||
static void
|
||||
on_name_acquired (GDBusConnection *connection,
|
||||
const gchar *name,
|
||||
gpointer user_data)
|
||||
{
|
||||
}
|
||||
|
||||
static void
|
||||
on_name_lost (GDBusConnection *connection,
|
||||
const gchar *name,
|
||||
gpointer user_data)
|
||||
{
|
||||
destroy_windows ();
|
||||
gtk_main_quit ();
|
||||
}
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
GdkDisplay *display;
|
||||
GdkScreen *screen;
|
||||
GOptionContext *context;
|
||||
GError *error = NULL;
|
||||
|
||||
/* Since we depend on this, avoid the possibility of lt-gnome-shell-perf-helper */
|
||||
g_set_prgname ("gnome-shell-perf-helper");
|
||||
|
||||
context = g_option_context_new (" - server to create windows for performance testing");
|
||||
g_option_context_add_main_entries (context, opt_entries, NULL);
|
||||
g_option_context_add_group (context, gtk_get_option_group (TRUE));
|
||||
if (!g_option_context_parse (context, &argc, &argv, &error))
|
||||
{
|
||||
g_print ("option parsing failed: %s\n", error->message);
|
||||
return 1;
|
||||
}
|
||||
|
||||
display = gdk_display_get_default ();
|
||||
screen = gdk_screen_get_default ();
|
||||
|
||||
xdisplay = gdk_x11_display_get_xdisplay (display);
|
||||
xroot = gdk_x11_window_get_xid (gdk_screen_get_root_window (screen));
|
||||
atom_wm_state = gdk_x11_get_xatom_by_name_for_display (display, "WM_STATE");
|
||||
atom__net_wm_name = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_NAME");
|
||||
atom_utf8_string = gdk_x11_get_xatom_by_name_for_display (display, "UTF8_STRING");
|
||||
|
||||
g_bus_own_name (G_BUS_TYPE_SESSION,
|
||||
BUS_NAME,
|
||||
G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
|
||||
G_BUS_NAME_OWNER_FLAGS_REPLACE,
|
||||
on_bus_acquired,
|
||||
on_name_acquired,
|
||||
on_name_lost,
|
||||
NULL,
|
||||
NULL);
|
||||
|
||||
establish_timeout ();
|
||||
|
||||
gtk_main ();
|
||||
|
||||
return 0;
|
||||
}
|
@ -439,3 +439,42 @@ shell_util_set_hidden_from_pick (ClutterActor *actor,
|
||||
g_object_set_data (G_OBJECT (actor), "shell-stop-pick", NULL);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* shell_util_format_date:
|
||||
* @format: a strftime-style string format, as parsed by
|
||||
* g_date_time_format()
|
||||
* @time_ms: milliseconds since 1970-01-01 00:00:00 UTC; the
|
||||
* value returned by Date.getTime()
|
||||
*
|
||||
* Formats a date for the current locale. This should be
|
||||
* used instead of the Spidermonkey Date.toLocaleFormat()
|
||||
* extension because Date.toLocaleFormat() is buggy for
|
||||
* Unicode format strings:
|
||||
* https://bugzilla.mozilla.org/show_bug.cgi?id=508783
|
||||
*
|
||||
* Return value: the formatted date. If the date is
|
||||
* outside of the range of a GDateTime (which contains
|
||||
* any plausible dates we actually care about), will
|
||||
* return an empty string.
|
||||
*/
|
||||
char *
|
||||
shell_util_format_date (const char *format,
|
||||
gint64 time_ms)
|
||||
{
|
||||
GDateTime *datetime;
|
||||
GTimeVal tv;
|
||||
char *result;
|
||||
|
||||
tv.tv_sec = time_ms / 1000;
|
||||
tv.tv_usec = (time_ms % 1000) * 1000;
|
||||
|
||||
datetime = g_date_time_new_from_timeval_local (&tv);
|
||||
if (!datetime) /* time_ms is out of range of GDateTime */
|
||||
return g_strdup ("");
|
||||
|
||||
result = g_date_time_format (datetime, format);
|
||||
|
||||
g_date_time_unref (datetime);
|
||||
return result;
|
||||
}
|
||||
|
@ -13,6 +13,9 @@ GIcon *shell_util_get_icon_for_uri (const char *text_uri);
|
||||
GIcon *shell_util_icon_from_string (const char *string, GError **error);
|
||||
void shell_util_set_hidden_from_pick (ClutterActor *actor, gboolean hidden);
|
||||
|
||||
char *shell_util_format_date (const char *format,
|
||||
gint64 time_ms);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __SHELL_UTIL_H__ */
|
||||
|
@ -735,7 +735,7 @@ st_entry_new (const gchar *text)
|
||||
*
|
||||
* Returns: the text for the entry. This must not be freed by the application
|
||||
*/
|
||||
G_CONST_RETURN gchar *
|
||||
const gchar *
|
||||
st_entry_get_text (StEntry *entry)
|
||||
{
|
||||
g_return_val_if_fail (ST_IS_ENTRY (entry), NULL);
|
||||
@ -843,8 +843,7 @@ st_entry_set_hint_text (StEntry *entry,
|
||||
* Returns: the current value of the hint property. This string is owned by the
|
||||
* #StEntry and should not be freed or modified.
|
||||
*/
|
||||
G_CONST_RETURN
|
||||
gchar *
|
||||
const gchar *
|
||||
st_entry_get_hint_text (StEntry *entry)
|
||||
{
|
||||
g_return_val_if_fail (ST_IS_ENTRY (entry), NULL);
|
||||
|
@ -65,14 +65,14 @@ struct _StEntryClass
|
||||
GType st_entry_get_type (void) G_GNUC_CONST;
|
||||
|
||||
StWidget * st_entry_new (const gchar *text);
|
||||
G_CONST_RETURN gchar *st_entry_get_text (StEntry *entry);
|
||||
const gchar * st_entry_get_text (StEntry *entry);
|
||||
void st_entry_set_text (StEntry *entry,
|
||||
const gchar *text);
|
||||
ClutterActor* st_entry_get_clutter_text (StEntry *entry);
|
||||
|
||||
void st_entry_set_hint_text (StEntry *entry,
|
||||
const gchar *text);
|
||||
G_CONST_RETURN gchar *st_entry_get_hint_text (StEntry *entry);
|
||||
const gchar * st_entry_get_hint_text (StEntry *entry);
|
||||
|
||||
void st_entry_set_primary_icon (StEntry *entry,
|
||||
ClutterActor *icon);
|
||||
|
@ -355,7 +355,7 @@ st_label_new (const gchar *text)
|
||||
*
|
||||
* Returns: the text for the label. This must not be freed by the application
|
||||
*/
|
||||
G_CONST_RETURN gchar *
|
||||
const gchar *
|
||||
st_label_get_text (StLabel *label)
|
||||
{
|
||||
g_return_val_if_fail (ST_IS_LABEL (label), NULL);
|
||||
|
@ -61,7 +61,7 @@ struct _StLabelClass
|
||||
GType st_label_get_type (void) G_GNUC_CONST;
|
||||
|
||||
StWidget * st_label_new (const gchar *text);
|
||||
G_CONST_RETURN gchar *st_label_get_text (StLabel *label);
|
||||
const gchar * st_label_get_text (StLabel *label);
|
||||
void st_label_set_text (StLabel *label,
|
||||
const gchar *text);
|
||||
ClutterActor * st_label_get_clutter_text (StLabel *label);
|
||||
|
@ -49,21 +49,23 @@ static const gchar *fade_glsl_shader =
|
||||
" vec4 color = cogl_color_in * texture2D (tex, vec2 (cogl_tex_coord_in[0].xy));\n"
|
||||
" float y = height * cogl_tex_coord_in[0].y;\n"
|
||||
" float x = width * cogl_tex_coord_in[0].x;\n"
|
||||
" float ratio = 0.0;\n"
|
||||
" float ratio = 1.0;\n"
|
||||
" float fade_bottom_start = height - offset_bottom;\n"
|
||||
" \n"
|
||||
" if (offset_top != 0.0 && y < offset_top && ((rtl && x > scrollbar_width) || (!rtl && x < (width - scrollbar_width)))) {\n"
|
||||
" ratio = y / offset_top;\n"
|
||||
" float ratio_top = y / offset_top;\n"
|
||||
" float ratio_bottom = (height - y)/(height - fade_bottom_start);\n"
|
||||
" bool in_scroll_area = ((rtl && x > scrollbar_width) || (!rtl && x < (width - scrollbar_width)));\n"
|
||||
" bool fade_top = y < offset_top && in_scroll_area;\n"
|
||||
" bool fade_bottom = y > fade_bottom_start && in_scroll_area;\n"
|
||||
"\n"
|
||||
" if (fade_top) {\n"
|
||||
" ratio = ratio_top;\n"
|
||||
" }\n"
|
||||
" else if (fade_bottom) {\n"
|
||||
" ratio = ratio_bottom;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
" cogl_color_out = color * ratio;\n"
|
||||
" }\n"
|
||||
" else if (offset_bottom != 0.0 && y > fade_bottom_start && ((rtl && x > scrollbar_width) || (!rtl && x < (width - scrollbar_width)))) {\n"
|
||||
" ratio = (height - y)/(height - fade_bottom_start);\n"
|
||||
" cogl_color_out = color * ratio;\n"
|
||||
" }\n"
|
||||
" else { \n"
|
||||
" cogl_color_out = color;\n"
|
||||
" }\n"
|
||||
"}\n";
|
||||
"}";
|
||||
|
||||
struct _StScrollViewFade
|
||||
{
|
||||
|
@ -1398,10 +1398,11 @@ static char **
|
||||
symbolic_names_for_icon (const char *name)
|
||||
{
|
||||
char **parts, **names;
|
||||
int i;
|
||||
int i, numnames;
|
||||
|
||||
parts = g_strsplit (name, "-", -1);
|
||||
names = g_new (char *, g_strv_length (parts) + 1);
|
||||
numnames = g_strv_length (parts);
|
||||
names = g_new (char *, numnames + 1);
|
||||
for (i = 0; parts[i]; i++)
|
||||
{
|
||||
if (i == 0)
|
||||
@ -1418,6 +1419,15 @@ symbolic_names_for_icon (const char *name)
|
||||
names[i] = NULL;
|
||||
|
||||
g_strfreev (parts);
|
||||
|
||||
/* need to reverse here, because longest (most specific)
|
||||
name has to come first */
|
||||
for (i = 0; i < (numnames / 2); i++) {
|
||||
char *tmp = names[i];
|
||||
names[i] = names[numnames - i - 1];
|
||||
names[numnames - i - 1] = tmp;
|
||||
}
|
||||
|
||||
return names;
|
||||
}
|
||||
|
||||
|
@ -377,7 +377,7 @@ st_tooltip_update_position (StTooltip *tooltip)
|
||||
*
|
||||
* Returns: the text for the tooltip. This must not be freed by the application
|
||||
*/
|
||||
G_CONST_RETURN gchar *
|
||||
const gchar *
|
||||
st_tooltip_get_label (StTooltip *tooltip)
|
||||
{
|
||||
g_return_val_if_fail (ST_IS_TOOLTIP (tooltip), NULL);
|
||||
@ -489,7 +489,7 @@ st_tooltip_set_tip_area (StTooltip *tooltip,
|
||||
* Returns: the #ClutterGeometry, owned by the tooltip which must not be freed
|
||||
* by the application.
|
||||
*/
|
||||
G_CONST_RETURN ClutterGeometry*
|
||||
const ClutterGeometry*
|
||||
st_tooltip_get_tip_area (StTooltip *tooltip)
|
||||
{
|
||||
g_return_val_if_fail (ST_IS_TOOLTIP (tooltip), NULL);
|
||||
|
@ -60,13 +60,13 @@ struct _StTooltipClass
|
||||
|
||||
GType st_tooltip_get_type (void) G_GNUC_CONST;
|
||||
|
||||
G_CONST_RETURN gchar *st_tooltip_get_label (StTooltip *tooltip);
|
||||
const gchar * st_tooltip_get_label (StTooltip *tooltip);
|
||||
void st_tooltip_set_label (StTooltip *tooltip,
|
||||
const gchar *text);
|
||||
|
||||
void st_tooltip_set_tip_area (StTooltip *tooltip,
|
||||
const ClutterGeometry *area);
|
||||
G_CONST_RETURN ClutterGeometry* st_tooltip_get_tip_area (StTooltip *tooltip);
|
||||
const ClutterGeometry* st_tooltip_get_tip_area (StTooltip *tooltip);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
@ -96,7 +96,7 @@ void st_widget_add_style_pseudo_class (StWidget *acto
|
||||
const gchar *pseudo_class);
|
||||
void st_widget_remove_style_pseudo_class (StWidget *actor,
|
||||
const gchar *pseudo_class);
|
||||
G_CONST_RETURN gchar *st_widget_get_style_pseudo_class (StWidget *actor);
|
||||
const gchar * st_widget_get_style_pseudo_class (StWidget *actor);
|
||||
gboolean st_widget_has_style_pseudo_class (StWidget *actor,
|
||||
const gchar *pseudo_class);
|
||||
|
||||
@ -106,13 +106,13 @@ void st_widget_add_style_class_name (StWidget *acto
|
||||
const gchar *style_class);
|
||||
void st_widget_remove_style_class_name (StWidget *actor,
|
||||
const gchar *style_class);
|
||||
G_CONST_RETURN gchar *st_widget_get_style_class_name (StWidget *actor);
|
||||
const gchar * st_widget_get_style_class_name (StWidget *actor);
|
||||
gboolean st_widget_has_style_class_name (StWidget *actor,
|
||||
const gchar *style_class);
|
||||
|
||||
void st_widget_set_style (StWidget *actor,
|
||||
const gchar *style);
|
||||
G_CONST_RETURN gchar *st_widget_get_style (StWidget *actor);
|
||||
const gchar * st_widget_get_style (StWidget *actor);
|
||||
void st_widget_set_theme (StWidget *actor,
|
||||
StTheme *theme);
|
||||
StTheme * st_widget_get_theme (StWidget *actor);
|
||||
|
@ -426,7 +426,8 @@ main (int argc, char **argv)
|
||||
StTheme *theme;
|
||||
StThemeContext *context;
|
||||
|
||||
clutter_init (&argc, &argv);
|
||||
if (clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS)
|
||||
return 1;
|
||||
|
||||
theme = st_theme_new ("st/test-theme.css",
|
||||
NULL, NULL);
|
||||
|
@ -31,7 +31,8 @@ int main (int argc, char **argv)
|
||||
|
||||
g_thread_init (NULL);
|
||||
gst_init (&argc, &argv);
|
||||
clutter_init (&argc, &argv);
|
||||
if (clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS)
|
||||
return 1;
|
||||
|
||||
clutter_color_from_string (&red, "red");
|
||||
clutter_color_from_string (&green, "green");
|
||||
|
@ -184,7 +184,9 @@
|
||||
<autotools id="libcanberra" autogen-sh="configure">
|
||||
<branch repo="0pointer.de" module="libcanberra/libcanberra-0.26.tar.gz" version="0.26"
|
||||
hash="sha256:4b5d8d2c2835133620adbc53745dd107b6e58b9a2963059e8f457143fee00982"
|
||||
md5sum="ee2c66ada7c851a4e7b6eb1682285a24" size="463209" />
|
||||
md5sum="ee2c66ada7c851a4e7b6eb1682285a24" size="463209">
|
||||
<patch file="libcanberra-quit-add.patch" strip="1"/>
|
||||
</branch>
|
||||
<dependencies>
|
||||
<dep package="gtk3"/>
|
||||
</dependencies>
|
||||
|
24
tools/build/libcanberra-quit-add.patch
Normal file
24
tools/build/libcanberra-quit-add.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff -up libcanberra-0.26/src/canberra-gtk-module.c.quit-add libcanberra-0.26/src/canberra-gtk-module.c
|
||||
--- libcanberra-0.26/src/canberra-gtk-module.c.quit-add 2011-01-07 22:48:49.388992626 -0500
|
||||
+++ libcanberra-0.26/src/canberra-gtk-module.c 2011-01-07 22:49:02.339995153 -0500
|
||||
@@ -932,11 +932,6 @@ static void connect_settings(void) {
|
||||
connected = TRUE;
|
||||
}
|
||||
|
||||
-static gboolean quit_handler(gpointer data) {
|
||||
- dispatch_queue();
|
||||
- return FALSE;
|
||||
-}
|
||||
-
|
||||
G_MODULE_EXPORT void gtk_module_init(gint *argc, gchar ***argv[]) {
|
||||
|
||||
/* This is the same quark libgnomeui uses! */
|
||||
@@ -963,8 +958,6 @@ G_MODULE_EXPORT void gtk_module_init(gin
|
||||
install_hook(GTK_TYPE_WIDGET, "drag-drop", &signal_id_widget_drag_drop);
|
||||
install_hook(GTK_TYPE_WIDGET, "drag-failed", &signal_id_widget_drag_failed);
|
||||
install_hook(GTK_TYPE_EXPANDER, "activate", &signal_id_expander_activate);
|
||||
-
|
||||
- gtk_quit_add(1, quit_handler, NULL);
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT gchar* g_module_check_init(GModule *module);
|
Loading…
Reference in New Issue
Block a user