Compare commits

...

16 Commits

Author SHA1 Message Date
71daa39349 Bump version to 3.14.4
Update NEWS.
2015-03-23 19:36:31 +01:00
92e0cc1008 build: Work around distcheck issue 2015-03-23 19:36:31 +01:00
d19e78af24 Refresh all background instances after suspend if needed
NVIDIA drivers don't preserve FBO contents across suspend / resume
cycles which results in broken backgrounds. We can work around that by
forcing a refresh when coming out of suspend.

https://bugzilla.gnome.org/show_bug.cgi?id=739178
2015-03-20 10:23:47 +01:00
4b0cbafdcd viewSelector: Mirror open-app-view edge drag gesture for RTL
It makes sense for the gesture to reflect the position of the
activities button / dash. In RTL locales, those are located on
the right rather than the left, so make the gesture apply to
the opposite edge in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=737502
2015-03-17 10:27:16 +01:00
c01ec075ab Added Bosnian translation 2015-03-14 16:58:33 +00:00
c4b2968f9f loginDialog: Pass-through UserWidget's label-actor
https://bugzilla.gnome.org/show_bug.cgi?id=729603
2015-03-06 17:25:44 +01:00
eab8ea9a1e appDisplay: Fix leaking signal connections
The overview has a longer life-time than dash items, so we are leaking a
signal connection each time an item is destroyed.

https://bugzilla.gnome.org/show_bug.cgi?id=745570
2015-03-04 12:57:43 +01:00
6ecaf0e0fc Revert "workspace: Grab the key focus when hovering over a window"
Turns out this makes interaction with the OSK or candidate popups
using a mouse basically impossible since they get dismissed when the
key focus is captured by a window in the overview.

This reverts commit aeb9f5775f.

https://bugzilla.gnome.org/show_bug.cgi?id=745245
2015-03-02 15:56:32 +01:00
840482c750 WorkspacesDisplay: update the primary monitor index too
The primary monitor index might change so we need to update it too.

https://bugzilla.gnome.org/show_bug.cgi?id=743993
2015-03-02 15:49:49 +01:00
681e1b2075 dash: Fix leaking signal connections
The overview has a longer life-time than dash items, so we are
leaking a signal connection each time an item is destroyed.
Spotted by Michele (<micxgx@gmail.com>)

https://bugzilla.gnome.org/show_bug.cgi?id=744575
2015-02-27 14:46:39 +01:00
bff6f71488 screenShield: Do not wake up screen after adding hidden source
The screen should be woken up when a new notification is shown on
the lock screen, but not when a notification arrives while disabled.
Add a missing condition to fix.

https://bugzilla.gnome.org/show_bug.cgi?id=744114
2015-02-27 14:45:53 +01:00
0adf3b84a7 system: Fix visibility of suspend button
It depends on the availability of suspend, not shutdown ...
2015-02-04 12:24:08 +01:00
fd635ba933 calendar: update current day highlight on day change
https://bugzilla.gnome.org/show_bug.cgi?id=742492
2015-01-11 17:41:13 +01:00
fd4f2f405f slider: Don't hardcode scroll interval for smooth scrolling
Use the SLIDER_SCROLL_STEP constant instead for consistency.

https://bugzilla.gnome.org/show_bug.cgi?id=742648
2015-01-11 17:40:56 +01:00
1a30f1b2f0 Updated Slovenian translation 2014-12-25 19:21:52 +01:00
412d40f844 calendar: Stop computing week number ourselves
Correctly computing the ISO week number is tricky and we already
have code in the platform to do it, so just refer its computation
to GDateTime rather than doing it ourselves.

https://bugzilla.gnome.org/show_bug.cgi?id=736722
2014-12-19 17:25:11 +01:00
20 changed files with 1993 additions and 114 deletions

17
NEWS
View File

@ -1,3 +1,20 @@
3.14.4
======
* Fix erroneous week numbers in calendar [Florian; #736722]
* Make slider scrolling smoother [Adel; #742648]
* Fix current day highlight on day change [Sebastian; #742492]
* Do not wake up the screen for disabled notifications [Florian; #744114]
* gdm: Fix user list accessibility [Florian; #729603]
* Work around background corruption with NVIDIA driver [Rui; #739178]
* Misc. bug fixes [Florian, Rui, Michele; #744575, #743993, #745245, #745570,
#737502]
Contributors:
Michele, Adel Gadllah, Sebastian Keller, Rui Matos, Florian Müllner
Translations:
Matej Urbančič [sl], Samir Ribic [bs]
3.14.3
======
* Properly remove network connections from list [Ryan; #740227]

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.14.3],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.14.4],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@ -76,7 +76,7 @@ AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.15.90
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.14.3
MUTTER_MIN_VERSION=3.14.4
GTK_MIN_VERSION=3.13.2
GIO_MIN_VERSION=2.37.0
LIBECAL_MIN_VERSION=3.5.3

View File

@ -22,6 +22,7 @@ const Clutter = imports.gi.Clutter;
const Gdm = imports.gi.Gdm;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
@ -70,6 +71,9 @@ const UserListItem = new Lang.Class({
this._userWidget = new UserWidget.UserWidget(this.user);
layout.add(this._userWidget.actor);
this._userWidget.actor.bind_property('label-actor', this.actor, 'label-actor',
GObject.BindingFlags.SYNC_CREATE);
this._timedLoginIndicator = new St.Bin({ style_class: 'login-dialog-timed-login-indicator',
scale_x: 0 });
layout.add(this._timedLoginIndicator);

View File

@ -1658,7 +1658,10 @@ const AppIcon = new Lang.Class({
if (!isPoppedUp)
this._onMenuPoppedDown();
}));
Main.overview.connect('hiding', Lang.bind(this, function () { this._menu.close(); }));
let id = Main.overview.connect('hiding', Lang.bind(this, function () { this._menu.close(); }));
this.actor.connect('destroy', function() {
Main.overview.disconnect(id);
});
this._menuManager.addMenu(this._menu);
}

View File

@ -90,23 +90,6 @@ function _formatEventTime(event, clockFormat, periodBegin, periodEnd) {
return ret;
}
function _getCalendarWeekForDate(date) {
// Based on the algorithms found here:
// http://en.wikipedia.org/wiki/Talk:ISO_week_date
let midnightDate = new Date(date.getFullYear(), date.getMonth(), date.getDate());
// Need to get Monday to be 1 ... Sunday to be 7
let dayOfWeek = 1 + ((midnightDate.getDay() + 6) % 7);
let nearestThursday = new Date(midnightDate.getFullYear(), midnightDate.getMonth(),
midnightDate.getDate() + (4 - dayOfWeek));
let jan1st = new Date(nearestThursday.getFullYear(), 0, 1);
let diffDate = nearestThursday - jan1st;
let dayNumber = Math.floor(Math.abs(diffDate) / MSECS_IN_DAY);
let weekNumber = Math.floor(dayNumber / 7) + 1;
return weekNumber;
}
function _getCalendarDayAbbreviation(dayNumber) {
let abbreviations = [
/* Translators: Calendar grid abbreviation for Sunday.
@ -620,6 +603,7 @@ const Calendar = new Lang.Class({
beginDate.setHours(12);
this._calendarBegin = new Date(beginDate);
this._markedAsToday = now;
let year = beginDate.getYear();
@ -687,7 +671,7 @@ const Calendar = new Lang.Class({
this._buttons.push(button);
if (this._useWeekdate && iter.getDay() == 4) {
let label = new St.Label({ text: _getCalendarWeekForDate(iter).toString(),
let label = new St.Label({ text: iter.toLocaleFormat('%V'),
style_class: 'calendar-day-base calendar-week-number'});
layout.attach(label, rtl ? 7 : 0, row, 1, 1);
}
@ -711,7 +695,7 @@ const Calendar = new Lang.Class({
else
this._monthLabel.text = this._selectedDate.toLocaleFormat(this._headerFormat);
if (!this._calendarBegin || !_sameMonth(this._selectedDate, this._calendarBegin))
if (!this._calendarBegin || !_sameMonth(this._selectedDate, this._calendarBegin) || !_sameDay(now, this._markedAsToday))
this._rebuildCalendar();
this._buttons.forEach(Lang.bind(this, function(button) {

View File

@ -513,10 +513,13 @@ const Dash = new Lang.Class({
this._syncLabel(item, appIcon);
}));
Main.overview.connect('hiding', Lang.bind(this, function() {
let id = Main.overview.connect('hiding', Lang.bind(this, function() {
this._labelShowing = false;
item.hideLabel();
}));
item.child.connect('destroy', function() {
Main.overview.disconnect(id);
});
if (appIcon) {
appIcon.connect('sync-tooltip', Lang.bind(this, function() {

View File

@ -11,6 +11,7 @@ const St = imports.gi.St;
const Background = imports.ui.background;
const BackgroundMenu = imports.ui.backgroundMenu;
const LoginManager = imports.misc.loginManager;
const DND = imports.ui.dnd;
const Main = imports.ui.main;
@ -248,6 +249,18 @@ const LayoutManager = new Lang.Class({
global.screen.connect('in-fullscreen-changed',
Lang.bind(this, this._updateFullscreen));
this._monitorsChanged();
// NVIDIA drivers don't preserve FBO contents across
// suspend/resume, see
// https://bugzilla.gnome.org/show_bug.cgi?id=739178
if (Shell.util_need_background_refresh()) {
LoginManager.getLoginManager().connect('prepare-for-sleep',
function(lm, suspending) {
if (suspending)
return;
Meta.Background.refresh_all();
});
}
},
// This is called by Main after everything else is constructed

View File

@ -301,7 +301,8 @@ const NotificationsBox = new Lang.Class({
});
this._updateVisibility();
this.emit('wake-up-screen');
if (obj.sourceBox.visible)
this.emit('wake-up-screen');
}
},

View File

@ -197,7 +197,7 @@ const Slider = new Lang.Class({
let [dx, dy] = event.get_scroll_delta();
// Even though the slider is horizontal, use dy to match
// the UP/DOWN above.
delta = -dy / 10;
delta = -dy * SLIDER_SCROLL_STEP;
}
this._value = Math.min(Math.max(0, this._value + delta), 1);

View File

@ -285,7 +285,7 @@ const Indicator = new Lang.Class({
let disabled = Main.sessionMode.isLocked ||
(Main.sessionMode.isGreeter &&
this._loginScreenSettings.get_boolean(DISABLE_RESTART_KEY));
this._suspendAction.visible = this._haveShutdown && !disabled;
this._suspendAction.visible = this._haveSuspend && !disabled;
this._updateActionsVisibility();
},

View File

@ -6,6 +6,7 @@ const Clutter = imports.gi.Clutter;
const AccountsService = imports.gi.AccountsService;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const GObject = imports.gi.GObject;
const Lang = imports.lang;
const St = imports.gi.St;
@ -117,6 +118,7 @@ const UserWidgetLabel = new Lang.Class({
this._currentLabel = this._realNameLabel;
else
this._currentLabel = this._userNameLabel;
this.label_actor = this._currentLabel;
let childBox = new Clutter.ActorBox();
childBox.x1 = 0;
@ -158,6 +160,9 @@ const UserWidget = new Lang.Class({
this._label = new UserWidgetLabel(user);
this.actor.add_child(this._label);
this._label.bind_property('label-actor', this.actor, 'label-actor',
GObject.BindingFlags.SYNC_CREATE);
this._userLoadedId = this._user.connect('notify::is-loaded', Lang.bind(this, this._updateUser));
this._userChangedId = this._user.connect('changed', Lang.bind(this, this._updateUser));
this._updateUser();

View File

@ -214,10 +214,13 @@ const ViewSelector = new Lang.Class({
Shell.KeyBindingMode.OVERVIEW,
Lang.bind(Main.overview, Main.overview.toggle));
let gesture;
gesture = new EdgeDragAction.EdgeDragAction(St.Side.LEFT,
Shell.KeyBindingMode.NORMAL);
let side;
if (Clutter.get_default_text_direction() == Clutter.TextDirection.RTL)
side = St.Side.RIGHT;
else
side = St.Side.LEFT;
let gesture = new EdgeDragAction.EdgeDragAction(side,
Shell.KeyBindingMode.NORMAL);
gesture.connect('activated', Lang.bind(this, function() {
if (Main.overview.visible)
Main.overview.hide();

View File

@ -156,7 +156,6 @@ const WindowClone = new Lang.Class({
this.actor.add_action(clickAction);
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this.actor.connect('key-press-event', Lang.bind(this, this._onKeyPress));
this.actor.connect('enter-event', Lang.bind(this, this._onEnter));
this._draggable = DND.makeDraggable(this.actor,
{ restoreOnSuccess: true,
@ -353,10 +352,6 @@ const WindowClone = new Lang.Class({
return false;
},
_onEnter: function() {
this.actor.grab_key_focus();
},
_onClicked: function(action, actor) {
this._activate();
},

View File

@ -538,6 +538,7 @@ const WorkspacesDisplay = new Lang.Class({
for (let i = 0; i < this._workspacesViews.length; i++)
this._workspacesViews[i].destroy();
this._primaryIndex = Main.layoutManager.primaryIndex;
this._workspacesViews = [];
let monitors = Main.layoutManager.monitors;
for (let i = 0; i < monitors.length; i++) {

View File

@ -7,6 +7,7 @@ be
bg
bn
bn_IN
bs
ca
ca@valencia
cs

View File

@ -1,2 +1,4 @@
data/org.gnome.shell.evolution.calendar.gschema.xml.in
src/calendar-server/evolution-calendar.desktop.in
# Meh, autofools :-(
sub/src/calendar-server/evolution-calendar.desktop.in

1804
po/bs.po Normal file

File diff suppressed because it is too large Load Diff

166
po/sl.po
View File

@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-09-13 16:14+0000\n"
"PO-Revision-Date: 2014-09-13 21:02+0100\n"
"POT-Creation-Date: 2014-12-19 16:26+0000\n"
"PO-Revision-Date: 2014-12-25 19:18+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: Slovenian\n"
@ -125,11 +125,11 @@ msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "App Picker View"
msgstr ""
msgstr "Pogled izbirnika programov"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:10
msgid "Index of the currently selected view in the application picker."
msgstr ""
msgstr "Kazalo trenutno izbranega pogleda v izbirniku programa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
msgid "History for command (Alt-F2) dialog"
@ -224,6 +224,8 @@ msgstr "Tipkovna bližnjica za prikaz dejavnega obvestila."
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Tipkovna bližnjica, ki omogoča ustavljanje in ponovni zagon vseh zagnanih "
"programov za razhroščevanje."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Which keyboard to use"
@ -242,6 +244,9 @@ msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
msgstr ""
"Izbrana možnost določa, da bodo v trenutnem pogledu prikazana le okna, ki so "
"v izbrani delovni površini v preklopniku. V nasprotnem primeru so prikazana "
"vsa okna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "The application icon mode."
@ -262,6 +267,8 @@ msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"Izbrana možnost določa, da bodo v trenutnem pogledu prikazana le okna v "
"preklopniku. V nasprotnem primeru so prikazana vsa okna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "Attach modal dialog to the parent window"
@ -293,7 +300,7 @@ msgstr ""
#: ../data/org.gnome.Shell.PortalHelper.desktop.in.h:1
msgid "Captive Portal"
msgstr ""
msgstr "Združen pogled"
#: ../js/extensionPrefs/main.js:123
#, javascript-format
@ -304,54 +311,54 @@ msgstr "Prišlo je do napake med nalaganjem pogovornega okna z možnosti za %s:"
msgid "GNOME Shell Extensions"
msgstr "Razširitve lupine Gnome"
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:143
#: ../js/gdm/authPrompt.js:146 ../js/ui/components/networkAgent.js:143
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:915
msgid "Cancel"
msgstr "Prekliči"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
#: ../js/gdm/authPrompt.js:168 ../js/gdm/authPrompt.js:216
msgid "Next"
msgstr "Naslednji"
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Odkleni"
#: ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:214
msgctxt "button"
msgid "Sign In"
msgstr "Prijava"
#: ../js/gdm/loginDialog.js:269
#: ../js/gdm/loginDialog.js:275
msgid "Choose Session"
msgstr "Izbor seje"
#: ../js/gdm/loginDialog.js:429
#: ../js/gdm/loginDialog.js:434
msgid "Not listed?"
msgstr "Ali je ni na seznamu?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:619
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(na primer, uporabnika ali %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:269
#: ../js/gdm/loginDialog.js:624 ../js/ui/components/networkAgent.js:269
#: ../js/ui/components/networkAgent.js:287
msgid "Username: "
msgstr "Uporabniško ime: "
#: ../js/gdm/loginDialog.js:922
#: ../js/gdm/loginDialog.js:955
msgid "Login Window"
msgstr "Prijavno okno"
#: ../js/gdm/util.js:323
#: ../js/gdm/util.js:341
msgid "Authentication error"
msgstr "Napaka overitve"
#: ../js/gdm/util.js:453
#: ../js/gdm/util.js:473
msgid "(or swipe finger)"
msgstr "(ali pa povlecite prst)"
@ -384,28 +391,28 @@ msgstr "Pogosto"
msgid "All"
msgstr "Vse"
#: ../js/ui/appDisplay.js:1789
#: ../js/ui/appDisplay.js:1791
msgid "New Window"
msgstr "Novo okno"
#: ../js/ui/appDisplay.js:1815 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1817 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Odstrani iz priljubljenih"
#: ../js/ui/appDisplay.js:1821
#: ../js/ui/appDisplay.js:1823
msgid "Add to Favorites"
msgstr "Dodaj med priljubljene"
#: ../js/ui/appDisplay.js:1830
#: ../js/ui/appDisplay.js:1832
msgid "Show Details"
msgstr "Pokaži besedilo"
#: ../js/ui/appFavorites.js:124
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "Program \"%s\" je dodan med priljubljeno."
#: ../js/ui/appFavorites.js:158
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "Program \"%s\" je odstranjen iz priljubljenih."
@ -422,14 +429,14 @@ msgstr "Spremeni ozadje ..."
#. 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:67
#: ../js/ui/calendar.js:70
msgctxt "event list time"
msgid "All Day"
msgstr "Celodnevno"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:73
#: ../js/ui/calendar.js:77
msgctxt "event list time"
msgid "%H%M"
msgstr "%H%M"
@ -437,7 +444,7 @@ msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:86
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l%M%p"
@ -447,43 +454,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:113
#: ../js/ui/calendar.js:100
msgctxt "grid sunday"
msgid "S"
msgstr "N"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:115
#: ../js/ui/calendar.js:102
msgctxt "grid monday"
msgid "M"
msgstr "P"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:117
#: ../js/ui/calendar.js:104
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:119
#: ../js/ui/calendar.js:106
msgctxt "grid wednesday"
msgid "W"
msgstr "S"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:121
#: ../js/ui/calendar.js:108
msgctxt "grid thursday"
msgid "T"
msgstr "Č"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:123
#: ../js/ui/calendar.js:110
msgctxt "grid friday"
msgid "F"
msgstr "P"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:125
#: ../js/ui/calendar.js:112
msgctxt "grid saturday"
msgid "S"
msgstr "S"
@ -494,85 +501,85 @@ msgstr "S"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:138
#: ../js/ui/calendar.js:125
msgctxt "list sunday"
msgid "Su"
msgstr "Ne"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:140
#: ../js/ui/calendar.js:127
msgctxt "list monday"
msgid "M"
msgstr "P"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:142
#: ../js/ui/calendar.js:129
msgctxt "list tuesday"
msgid "T"
msgstr "T"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:144
#: ../js/ui/calendar.js:131
msgctxt "list wednesday"
msgid "W"
msgstr "S"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:146
#: ../js/ui/calendar.js:133
msgctxt "list thursday"
msgid "Th"
msgstr "Če"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:148
#: ../js/ui/calendar.js:135
msgctxt "list friday"
msgid "F"
msgstr "Pe"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:150
#: ../js/ui/calendar.js:137
msgctxt "list saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:453
#: ../js/ui/calendar.js:462
msgid "Previous month"
msgstr "Predhodni mesec"
#: ../js/ui/calendar.js:463
#: ../js/ui/calendar.js:472
msgid "Next month"
msgstr "Naslednji mesec"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:810
msgid "Nothing Scheduled"
msgstr "Nič ni razporejeno"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:799
#: ../js/ui/calendar.js:826
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %m."
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:802
#: ../js/ui/calendar.js:829
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B %Y"
#: ../js/ui/calendar.js:813
#: ../js/ui/calendar.js:839
msgid "Today"
msgstr "Danes"
#: ../js/ui/calendar.js:817
#: ../js/ui/calendar.js:843
msgid "Tomorrow"
msgstr "Jutri"
#: ../js/ui/calendar.js:828
#: ../js/ui/calendar.js:854
msgid "This week"
msgstr "Ta teden"
#: ../js/ui/calendar.js:836
#: ../js/ui/calendar.js:862
msgid "Next week"
msgstr "Naslednji teden"
@ -972,7 +979,7 @@ msgstr "Poglej račun"
msgid "Unknown reason"
msgstr "Neznan vzrok"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:154
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:155
msgid "Windows"
msgstr "Okna"
@ -984,22 +991,22 @@ msgstr "Pokaži programe"
msgid "Dash"
msgstr "Pregledna plošča"
#: ../js/ui/dateMenu.js:96
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Odpri koledar"
#: ../js/ui/dateMenu.js:100
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Odpri ure"
#: ../js/ui/dateMenu.js:107
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Nastavitve časa in datuma"
#. 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:204
#: ../js/ui/dateMenu.js:132
msgid "%A %B %e, %Y"
msgstr "%a, %e. %b., %R"
@ -1155,7 +1162,7 @@ msgstr "Namesti"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Prejmi in namesti “%s” preko povezave na extensions.gnome.org?"
#: ../js/ui/keyboard.js:692 ../js/ui/status/keyboard.js:523
#: ../js/ui/keyboard.js:700 ../js/ui/status/keyboard.js:535
msgid "Keyboard"
msgstr "Tipkovnica"
@ -1211,48 +1218,40 @@ msgstr "Poglej vir"
msgid "Web Page"
msgstr "Spletna stran"
#: ../js/ui/messageTray.js:1326
#: ../js/ui/messageTray.js:1332
msgid "Open"
msgstr "Odpri"
#: ../js/ui/messageTray.js:1333
#: ../js/ui/messageTray.js:1339
msgid "Remove"
msgstr "Odstrani"
#: ../js/ui/messageTray.js:1630
#: ../js/ui/messageTray.js:1636
msgid "Notifications"
msgstr "Obvestila"
#: ../js/ui/messageTray.js:1637
#: ../js/ui/messageTray.js:1643
msgid "Clear Messages"
msgstr "Počisti sporočila"
#: ../js/ui/messageTray.js:1656
#: ../js/ui/messageTray.js:1662
msgid "Notification Settings"
msgstr "Nastavitve obvestil"
#: ../js/ui/messageTray.js:1709
#: ../js/ui/messageTray.js:1715
msgid "Tray Menu"
msgstr "Meni sistemske vrstice"
#: ../js/ui/messageTray.js:1926
#: ../js/ui/messageTray.js:1939
msgid "No Messages"
msgstr "Ni sporočil"
#: ../js/ui/messageTray.js:1968
#: ../js/ui/messageTray.js:1986
msgid "Message Tray"
msgstr "Sporočilna vrstica"
#: ../js/ui/messageTray.js:2971
msgid "System Information"
msgstr "Podrobnosti sistema"
#: ../js/ui/notificationDaemon.js:513 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Neznano"
#: ../js/ui/overviewControls.js:482 ../js/ui/screenShield.js:151
#: ../js/ui/messageTray.js:2443 ../js/ui/overviewControls.js:483
#: ../js/ui/screenShield.js:151
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1261,6 +1260,15 @@ msgstr[1] "%d novo sporočilo"
msgstr[2] "%d novi sporočili"
msgstr[3] "%d nova sporočila"
#: ../js/ui/messageTray.js:3013
msgid "System Information"
msgstr "Podrobnosti sistema"
#: ../js/ui/notificationDaemon.js:513 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Neznano"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Razveljavi"
@ -1330,19 +1338,19 @@ msgstr "Zakleni"
msgid "GNOME needs to lock the screen"
msgstr "Zakleniti je treba zaslon"
#: ../js/ui/screenShield.js:833 ../js/ui/screenShield.js:1304
#: ../js/ui/screenShield.js:833 ../js/ui/screenShield.js:1309
msgid "Unable to lock"
msgstr "Zaklep ni mogoč"
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1305
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1310
msgid "Lock was blocked by an application"
msgstr "Zaklep je preprečil program"
#: ../js/ui/search.js:594
#: ../js/ui/search.js:611
msgid "Searching…"
msgstr "Iskanje ..."
#: ../js/ui/search.js:596
#: ../js/ui/search.js:613
msgid "No results."
msgstr "Ni najdenih zadetkov."
@ -1446,7 +1454,7 @@ msgstr "Ni vzpostavljene povezave"
msgid "Brightness"
msgstr "Svetlost"
#: ../js/ui/status/keyboard.js:547
#: ../js/ui/status/keyboard.js:559
msgid "Show Keyboard Layout"
msgstr "Pokaži razporeditev tipkovnice"
@ -1701,11 +1709,11 @@ msgstr "Prijava kot drug uporabnik"
msgid "Unlock Window"
msgstr "Odkleni okno"
#: ../js/ui/viewSelector.js:158
#: ../js/ui/viewSelector.js:159
msgid "Applications"
msgstr "Programi"
#: ../js/ui/viewSelector.js:162
#: ../js/ui/viewSelector.js:163
msgid "Search"
msgstr "Poišči"

View File

@ -5,6 +5,9 @@
#include <sys/types.h>
#include <sys/wait.h>
#include <GL/gl.h>
#include <cogl/cogl.h>
#include "shell-util.h"
#include <glib/gi18n-lib.h>
#include <gtk/gtk.h>
@ -330,3 +333,33 @@ shell_util_cursor_tracker_to_clutter (MetaCursorTracker *tracker,
clutter_actor_hide (CLUTTER_ACTOR (texture));
}
}
typedef const gchar *(*ShellGLGetString) (GLenum);
static const gchar *
get_gl_vendor (void)
{
static const gchar *vendor = NULL;
if (!vendor)
{
ShellGLGetString gl_get_string;
gl_get_string = (ShellGLGetString) cogl_get_proc_address ("glGetString");
if (gl_get_string)
vendor = gl_get_string (GL_VENDOR);
}
return vendor;
}
gboolean
shell_util_need_background_refresh (void)
{
if (!clutter_check_windowing_backend (CLUTTER_WINDOWING_X11))
return FALSE;
if (g_strcmp0 (get_gl_vendor (), "NVIDIA Corporation") == 0)
return TRUE;
return FALSE;
}

View File

@ -44,6 +44,8 @@ GdkPixbuf *shell_util_create_pixbuf_from_data (const guchar *data,
void shell_util_cursor_tracker_to_clutter (MetaCursorTracker *tracker,
ClutterTexture *texture);
gboolean shell_util_need_background_refresh (void);
G_END_DECLS
#endif /* __SHELL_UTIL_H__ */