Merge branch 'master' of gitlab.gnome.org:GNOME/gnome-shell

This commit is contained in:
Daniel Mustieles 2020-02-07 11:54:07 +01:00
commit 4f3e847897
19 changed files with 559 additions and 566 deletions

42
NEWS
View File

@ -1,3 +1,45 @@
3.35.90
=======
* Update default favorite apps [Michael; !907]
* Add Shell.Blur effect [Georges; !864, !924]
* Overhaul scroll/swipe gestures [Alexander; !821, !825, !826]
* Fix VPN connections when delaying request [Florian; #2008]
* Overhaul theme [Sam, Jakub, nana-4; !904, !931, !957]
* Improve visual appearance of Weather integration [Florian; #1143]
* Implement new system dialog designs [Jonas; #1343]
* Animate position changes of app icons [Georges; !882]
* Add St.Viewport [Georges; !929]
* Make app folders behave as dialogs [Georges; !896]
* Add do-not-disturb functionality to calendar popup [Florian; #239]
* Show hint actor in focused entries [Jonas; !944]
* Switch screen-recorder back to VP8 [Björn; #256]
* Allow to run perf-tool as wayland compositor [Olivier; !941]
* Handle extension updates [Florian; !945]
* Animate showing and hiding caps-lock warning [Jonas; !952]
* Support "auto" lengths in CSS [Florian; !971]
* Turn extension-prefs into the offical Extensions app [Florian; #1968]
* Sandbox the portal helper [Michael; !983]
* Misc. bug fixes and cleanups [Florian, Björn, Jakub, Alexander, Daniel V.,
Jonas, nana-4, Carlos, Sebastian, Daniel G., Georges, Piotr; !918, !917,
!919, !920, #763, #791659, !927, #2091, !930, !926, !888, !934, !168, #2133,
#682, #2142, #2131, !943, #2132, #1958, #2146, !951, #1779, #2130, !964,
!965, !948, #2151, #1746, !967, !760, !968, !970, !973, #2169, #2176, !978,
!980, !979, #2177, !981, #2180, !974]
Contributors:
Michael Catanzaro, Björn Daase, Jonas Dreßler, Piotr Drąg, Olivier Fourdan,
Carlos Garnacho, Sam Hewitt, Sebastian Keller, Andre Klapper,
Alexander Mikhaylenko, Daniel García Moreno, Florian Müllner,
Georges Basile Stavracas Neto, Jakub Steiner, Daniel van Vugt, nana-4
Translators:
Asier Sarasua Garmendia [eu], Daniel Mustieles [es], Andrej Shadura [sk],
Carmen Bianca BAKKER [eo], Sucipto [id], Dušan Kazik [sk], Goran Vidović [hr],
sicklylife [ja], Kukuh Syafaat [id], Yi-Jyun Pan [zh_TW],
Rafael Fontenelle [pt_BR], Jordi Mas [ca], Jiri Grönroos [fi],
Fabio Tomat [fur], Umarzuki Bin Mochlis Moktar [ms], Daniel Korostil [uk],
Jor Teron [mjw], Anders Jonsson [sv], Aurimas Černius [lt]
3.35.3
======
* Add discrete GPU support for NVidia drivers [Bastien; #1810]

View File

@ -91,13 +91,9 @@ stage {
// icon tiles
%icon_tile {
background-color: transparent; // no background
color: $osd_fg_color;
border-radius: $base_border_radius + 4px;
padding: $base_padding;
border-width: 2px;
border-style: solid;
border-color: transparent;
border: 2px solid transparent;
transition-duration: 100ms;
text-align: center;
}
@ -155,14 +151,17 @@ stage {
// notification styling
%notification_bubble {
@mixin notification_bubble($flat: false) {
border-width: 1px;
border-style: solid;
border-radius: $base_border_radius + 2px;
padding: 0;
margin: $base_margin;
@if $flat {
@include button(undecorated);
} @else {
@include button(normal);
}
&:focus {
@include button(focus);

View File

@ -137,7 +137,7 @@
// normal button
@if $t==normal {
color: $tc;
background-color: lighten($c, 3%) !important;
background-color: lighten($c, 3%);
border-color: draw_border_color($c);
@include draw_shadows($button_shadow);
// box-shadow: 0 1px 1px 0 rgba(0,0,0,0.1);
@ -157,7 +157,7 @@
// hover button
@else if $t==hover {
color: $tc;
background-color: lighten($c, if($variant == 'light', 8%, 5%)) !important;
background-color: lighten($c, if($variant == 'light', 8%, 5%));
border-color: if($variant == 'light', draw_border_color(lighten($c, 7%)), draw_border_color($c));
@include draw_shadows($button_shadow);
text-shadow: 0 1px $text_shadow_color;
@ -167,7 +167,7 @@
// active button
@else if $t==active {
color: $tc;
background-color: darken($c,3%) !important;
background-color: darken($c,3%);
border-color: draw_border_color(if($variant == 'light', $c, darken($c,7%)));
text-shadow: none;
icon-shadow: none;
@ -178,7 +178,7 @@
@else if $t==insensitive {
color: $insensitive_fg_color;
border-color: $insensitive_borders_color;
background-color: $insensitive_bg_color !important;
background-color: $insensitive_bg_color;
box-shadow: none;
text-shadow: none;
icon-shadow: none;
@ -194,3 +194,38 @@
icon-shadow: none;
}
}
// overview icons
@mixin overview-icon($color) {
.overview-icon {
@extend %icon_tile;
color: $color;
}
&:hover,
&:selected {
.overview-icon {
background-color: transparentize($color, .9);
}
}
&:focus {
.overview-icon {
background-color: transparentize($color, .7);
// border-color: $selected_bg_color;
}
}
&:drop {
.overview-icon {
background-color: transparentize($selected_bg_color, .15);
}
}
&:active,
&:checked {
.overview-icon {
background-color: transparentize(darken($osd_bg_color, 10%), .5);
}
}
}

View File

@ -11,7 +11,6 @@ $app_icon_padding: 24px;
.overview-icon {
icon-size: $app_icon_size;
StIcon { margin-bottom: $base_margin; } // margin on icon so label isn't close
}
}
@ -33,47 +32,14 @@ $app_grid_fg_color: #fff;
// Icon tiles in the app grid
.app-well-app,
.app-folder {
%app-well-app {
@include overview-icon($app_grid_fg_color);
.overview-icon {
@extend %icon_tile;
color: $app_grid_fg_color !important;
}
.overview-icon.overview-icon-with-label {
padding: 10px 8px 5px 8px;
&:selected {
.overview-icon {
background-color: transparentize($osd_bg_color,0.7);
color: $app_grid_fg_color;
}
}
&:hover,
&:focus,
&:selected {
.overview-icon {
background-color: transparentize($osd_fg_color,0.9);
color: $osd_fg_color;
}
}
&:focus {
.overview-icon {
background-color: transparentize($osd_fg_color,0.7 );
// border-color: $selected_bg_color;
color: $app_grid_fg_color;
}
}
&:drop {
.overview-icon {
background-color: transparentize($selected_bg_color,.15);
}
}
&:active,
&:checked {
.overview-icon {
background-color: transparentize(darken($osd_bg_color,10%), 0.5);
> StBoxLayout {
spacing: $base_spacing;
}
}
}
@ -81,7 +47,6 @@ $app_grid_fg_color: #fff;
/* App Folders */
.app-folder {
.overview-icon {
@extend %icon_tile;
}
}
@ -178,11 +143,6 @@ $app_grid_fg_color: #fff;
padding: 0px 88px 10px 88px;
}
.app-well-app > .overview-icon.overview-icon-with-label {
padding: 10px 8px 5px 8px;
spacing: $base_spacing;
}
// Label when no frequent apps
.no-frequent-applications-label { @extend %status_text; }
@ -203,40 +163,34 @@ $app_grid_fg_color: #fff;
// buttons
.app-view-control {
padding: $base_padding $base_padding*5;
margin: 0;
background-color: transparentize($osd_bg_color, 0.5);
border-width: 1px;
padding: 4px 32px;
margin: 0 4px;
&, &:hover, &:checked {
@include button(undecorated);
color: darken($osd_fg_color, 25%);
}
&:hover {
background-color: transparentize($osd_bg_color, 0.5) !important;
box-shadow:none !important;
color: darken($osd_fg_color, 25%);
color: $osd_fg_color;
box-shadow: inset 0 -2px darken($osd_fg_color, 25%);
}
&:active {
box-shadow: none;
background-color: $selected_bg_color !important;
&:hover {
background-color: lighten($selected_bg_color, 11%) !important;
}
box-shadow: inset 0 -2px $osd_fg_color;
}
&:checked {
background-color: $selected_bg_color !important;
color: $selected_fg_color;
box-shadow: none;
&:active { background-color: darken($selected_bg_color, 4%) !important; }
&:hover { background-color: lighten($selected_bg_color, 7%) !important; }
color: $osd_fg_color;
box-shadow: inset 0 -2px $selected_bg_color;
}
&:first-child {
border-right-width: 0 !important;
border-radius: $base_border_radius 0 0 $base_border_radius;
border-right-width: 0;
border-radius: 0;
}
&:last-child {
border-radius: 0 $base_border_radius $base_border_radius 0;
border-radius: 0;
}
}

View File

@ -5,34 +5,37 @@
// overall menu
#calendarArea {
padding:0;
margin:0;
}
// Calendar menu side column
.datemenu-calendar-column {
spacing: 0;
spacing: $base_spacing;
border: 0 solid $bubble_borders_color;
padding: $base_padding * 2;
padding-bottom: 3em; // account for the notifications clear button
padding-top:0;
padding: 0 $base_padding * 2;
&:ltr {margin-right: $base_margin * 2; border-left-width: 1px; }
&:rtl {margin-left: $base_margin * 2; border-right-width: 1px; }
// today button (the date)
.datemenu-today-button {
padding: $base_padding * 1.5;
margin: $base_margin;
border: 1px solid transparent;
border-radius: $base_border_radius + 2px;
&:hover { @include button(hover);}
&:focus { @include button(focus);}
&:active {
@include button(active);
.datemenu-displays-section {
}
.datemenu-displays-box {
spacing: $base_spacing;
}
}
.events-section-title {
@include notification_bubble($flat: true);
color: desaturate(darken($fg_color,40%), 10%);
font-weight: bold;
padding: .4em;
}
/* today button (the date) */
.datemenu-today-button {
@include notification_bubble($flat: true);
padding: $base_padding * 1.5;
// weekday label
.day-label {
@include fontsize($base_font_size+1);
@ -46,42 +49,10 @@
}
}
// calendar
.calendar {
@extend %notification_bubble;
margin:$base_margin !important;
margin-bottom: $base_padding + $base_margin !important;
padding:$base_padding !important;
// more below for sub-elements
}
.datemenu-displays-section {
margin:0;
}
.datemenu-displays-box {
spacing: $base_spacing;
margin:0;
// world clocks and weather
.world-clocks-button,
.weather-button {
@extend %notification_bubble;
padding:$base_padding !important;
}
}
}
.events-section-title {
color: desaturate(darken($fg_color,40%), 10%);
font-weight: bold;
border-radius: 4px;
padding: .4em;
}
/* Calendar */
.calendar {
@include notification_bubble;
padding: $base_padding;
// month
.calendar-month-label {
@ -132,6 +103,7 @@
@include fontsize($base_font_size - 4);
}
}
.calendar-day { //border collapse hack - see calendar.js
border-width: 0;
}
@ -140,8 +112,12 @@
border-top-width: 1px;
}
.calendar-day-left { border-left-width: 1px; }
.calendar-day-left {
border-left-width: 1px;
}
.calendar-work-day {}
.calendar-nonwork-day {
color: $insensitive_fg_color;
}
@ -161,13 +137,14 @@
&:active,&:selected {
background-color: $selected_bg_color;
color: $selected_fg_color;
&:hover,&:focus {
background-color:lighten($selected_bg_color, 3%);
color: $selected_fg_color;
}
}
}
.calendar-day-with-events {
color: lighten($fg_color,10%);
font-weight: bold;
@ -176,7 +153,6 @@
.calendar-other-month-day {
color: transparentize($fg_color ,0.5);
opacity: 0.5;
}
.calendar-week-number {
@ -192,50 +168,15 @@
}
}
/* Weather */
.weather-box {
spacing: $base_spacing;
padding:$base_padding;
.weather-header {
color: desaturate(darken($fg_color,40%), 10%);
font-weight: bold;
&.location {
font-weight: normal;
@include fontsize($base_font_size - 1);
}
}
.weather-grid {
margin-top: $base_margin;
spacing-rows: $base_spacing;
spacing-columns: $base_spacing * 2;
}
.weather-forecast-time {
color: darken($fg_color,30%);
font-feature-settings: "tnum";
@include fontsize($base_font_size - 2);
font-weight: normal;
padding-top: 0.2em;
padding-bottom: 0.4em;
}
.weather-forecast-icon {
icon-size: $base_icon_size * 2;
}
.weather-forecast-temp {
font-weight: bold;
}
}
/* World clocks */
.world-clocks-button {
@include notification_bubble;
padding: $base_padding * 2;
.world-clocks-grid {
padding:$base_padding;
spacing-rows: $base_spacing;
spacing-columns: $base_spacing * 2;
}
// title
.world-clocks-header {
@ -266,3 +207,49 @@
@include fontsize($base_font_size - 1);
}
}
/* Weather */
.weather-button {
@include notification_bubble;
padding: $base_padding * 2;
.weather-box {
spacing: $base_spacing + $base_margin;
}
.weather-header-box {
spacing: $base_spacing;
}
.weather-header {
color: desaturate(darken($fg_color,40%), 10%);
font-weight: bold;
&.location {
font-weight: normal;
@include fontsize($base_font_size - 1);
}
}
.weather-grid {
spacing-rows: $base_spacing;
spacing-columns: $base_spacing * 2;
}
.weather-forecast-time {
color: darken($fg_color,30%);
font-feature-settings: "tnum";
@include fontsize($base_font_size - 2);
font-weight: normal;
padding-top: 0.2em;
padding-bottom: 0.4em;
}
.weather-forecast-icon {
icon-size: $base_icon_size * 2;
}
.weather-forecast-temp {
font-weight: bold;
}
}

View File

@ -9,12 +9,11 @@ $dash_border_radius: $modal_radius * 1.5;
@include fontsize($base_font_size - 2);
padding: ($dash_spacing / 2) 0;
//fixme: can't have non uniform borders :(
border-radius: 0 $dash_border_radius $dash_border_radius 0;
border-left-width: 0 !important;
border-left-width: 0;
&:rtl {
border-radius: $dash_border_radius 0 0 $dash_border_radius;
border-right-width: 0 !important;
border-right-width: 0;
}
.placeholder {
@ -49,36 +48,13 @@ $dash_border_radius: $modal_radius * 1.5;
// Show apps button
.show-apps {
color: $osd_fg_color;
@include overview-icon($osd_fg_color);
& .overview-icon {
@extend %icon_tile;
color: $osd_fg_color;
}
&:hover,
&:focus,
&:selected {
.overview-icon {
background-color: transparentize($osd_fg_color,0.9);
color: $osd_fg_color;
}
}
&:drop .overview-icon {
background-color: transparentize($selected_bg_color,.15);
}
&:active, &:checked {
&:checked {
.overview-icon {
background-color: darken($osd_bg_color,10%);
}
}
&:checked, &:focus {
.show-apps-icon {
color: $fg_color;
transition-duration: 100ms;
}
}
}

View File

@ -10,7 +10,7 @@ $default_key_bg_color: if($variant=='light', darken($osd_bg_color, 11%), lighten
// draw keys using button function
#keyboard {
background-color: transparentize(if($variant=='light', darken($bg_color, 5%), darken($bg_color, 8%)), 0.1);
box-shadow: inset 0 1px 0 0 $osd_outer_borders_color !important;
box-shadow: inset 0 1px 0 0 $osd_outer_borders_color;
.page-indicator {
padding: $base_padding;

View File

@ -11,7 +11,7 @@
.message-list-sections {
spacing: $base_spacing;
margin: $base_margin * 4; // to account for scrollbar
margin: 0 $base_margin * 4; // to account for scrollbar
}
.message-list-section,
@ -19,40 +19,61 @@
spacing: $base_spacing;
}
.message-list-section-list {
&:ltr {padding:0;}
&:rtl {padding:0;}
}
// do-not-disturb + clear button
.message-list-controls {
margin: $base_margin $base_margin*2;
margin: ($base_margin * 2) ($base_margin * 4) 0;
// NOTE: remove the padding if notification_bubble could remove margin for drop shadow
padding: $base_margin;
spacing: $base_spacing;
}
// message bubbles
.message {
@extend %notification_bubble;
@include notification_bubble;
// title
.message-title {
color: $fg_color;
font-weight: bold;
margin-bottom:4px;
// icon container
.message-icon-bin {
padding: ($base_padding * 3) 0 ($base_padding * 3) ($base_padding * 2);
&:rtl {
padding: ($base_padding * 3) ($base_padding * 2) ($base_padding * 3) 0;
}
// icon size and color
> StIcon {
icon-size: $base_icon_size*2; // 32px
-st-icon-style: symbolic;
}
// fallback
> .fallback-app-icon {
width: $base_icon_size;
height: $base_icon_size;
}
}
// content
.message-content {
color: darken($fg_color, 10%);
padding: $base_padding 0;
margin:$base_margin * 2;
&:ltr {
margin-left: $base_margin;
padding-right:$base_padding;
padding: $base_padding + $base_margin * 2;
spacing: 4px;
}
&:rtl {
margin-right: $base_margin;
padding-left:$base_padding;
// title
.message-title {
font-weight: bold;
}
// secondary container in title box
.message-secondary-bin {
padding: 0 $base_margin * 2;
// notification time stamp
> .event-time {
color: transparentize($fg_color, 0.5);
@include fontsize($base_font_size - 2);
text-align: right;
/* HACK: the label should be baseline-aligned with a 1em label, fake this with some bottom padding */
padding-bottom: 0.13em;
}
}
@ -63,48 +84,10 @@
&:active { color: if($variant=='light', lighten($fg_color, 40%), darken($fg_color, 20%)); }
}
// icon container
.message-icon-bin {
padding: $base_padding;
margin:$base_padding 0;
&:rtl {
// padding: $base_padding;
// body
.message-body {
color: darken($fg_color, 10%);
}
// icon size and color
> StIcon {
color: $fg_color;
icon-size: $base_icon_size*2; // 32px
-st-icon-style: symbolic;
padding:0;
margin:$base_padding;
}
// fallback
> .fallback-app-icon {
width: $base_icon_size;
height: $base_icon_size;
}
}
// secondary container in title box
.message-secondary-bin {
padding: 0;
// notification time stamp
> .event-time {
color: transparentize($fg_color, 0.5);
@include fontsize($base_font_size - 2);
text-align: right;
margin: 0 $base_margin * 2;
/* HACK: the label should be baseline-aligned with a 1em label, fake this with some bottom padding */
padding-bottom: $base_padding;
}
}
}
/* Media Controls */
@ -125,9 +108,9 @@
&:insensitive { color: darken($fg_color,40%); }
// fix border-radius for last button on hover
&:last-child:ltr { &:hover {border-radius: 0 $base_border_radius+2 $base_border_radius+2 0;} }
&:last-child:rtl { &:hover {border-radius: $base_border_radius+2 0 0 $base_border_radius+2;} }
// fix border-radius for last button
&:last-child:ltr { border-radius: 0 $base_border_radius+2 $base_border_radius+2 0; }
&:last-child:rtl { border-radius: $base_border_radius+2 0 0 $base_border_radius+2; }
}
// album-art
@ -142,6 +125,5 @@
border: 1px solid transparent;
border-radius: $base_border_radius;
icon-size: $base_icon_size * 2 !important;
padding: $base_padding * 2;
}
}

View File

@ -7,39 +7,8 @@ $notification_banner_width: 34em;
.notification-banner {
min-height: $notification_banner_height;
width: $notification_banner_width;
@include fontsize($base_font_size);
margin: $base_margin;
border-radius: $modal_radius;
.message-title { color: $fg_color }
.message-content { color: $fg_color; }
&:hover { background: $bg_color; }
&, &:focus, &:active {
background-color: $bg_color;
.message-title { color: $fg_color }
.message-content { color: $fg_color; }
}
// icon
.message-icon-bin > StIcon {
icon-size: $base_icon_size * 2;
color: $fg_color;
}
.notification-icon {
padding: 5px;
}
.notification-content {
padding: 5px;
spacing: 5px;
}
.secondary-icon { icon-size: $base_icon_size; }
.notification-actions {
padding-top: 0;
spacing: 0;
}
@ -63,8 +32,6 @@ $notification_banner_width: 34em;
border-radius: 0.9em; // should be 0.8 but whatever; wish I could do 50%;
}
.secondary-icon { icon-size: $base_icon_size; }
// chat bubbles
.chat-body { spacing: 5px; }
.chat-response { margin: 5px; }

View File

@ -87,7 +87,6 @@ $popover_arrow_height: 12px;
height: 1px; //not really the whole box
margin: 6px 64px;
background-color: lighten($borders_color, 2%);
border: none !important;
}
// desktop background menu

View File

@ -3,19 +3,16 @@
// search overview container
#searchResultsContent {
max-width: 1024px;
spacing: $base_margin * 2;
}
// search results sections "the boxes"
.search-section {
// This should be equal to #searchResultsContent spacing
spacing: $base_margin * 2;
padding:0 !important;
margin:0 !important;
background-color:transparent;
box-shadow:none;
border:none;
// separator
.search-section-separator {
// margin-top: $base_padding * 2;
// height: 1px;
// background-color: $osd_outer_borders_color;
height: 0;
@ -32,8 +29,24 @@
text-shadow: 0 1px if($variant == 'light', rgba(255,255,255,0.2), rgba(0,0,0,0.2));
color: $osd_fg_color;
padding: $base_padding * 3;
margin: $base_margin 0;
spacing: 0;
// This is the space between the provider icon and the results container
spacing: $base_margin * 2;
}
%search-section-content-item {
@extend %icon_tile;
&:focus,
&:hover,
&:selected {
background-color: transparentize($osd_fg_color, .9);
transition-duration: 200ms;
}
&:active,
&:checked {
background-color: transparentize(darken($osd_bg_color, 10%), .1);
}
}
// "no results" text
@ -43,54 +56,12 @@
// Search results with icons
.grid-search-result {
> .overview-icon {
@extend %icon_tile;
color: $osd_fg_color;
}
> .overview-icon.overview-icon-with-label {
padding: 10px 8px 5px 8px;
spacing: $base_spacing;
}
&:hover,
&:focus,
&:selected {
.overview-icon {
background-color: transparentize($osd_bg_color,0.8);
color: $osd_fg_color;
}
}
&:drop .overview-icon {
background-color: transparentize($selected_bg_color,.15);
}
&:active .overview-icon,
&:checked .overview-icon {
background-color: transparentize(darken($osd_bg_color,10%), 0.5);
}
@extend %app-well-app;
}
// search result provider
.search-provider-icon {
@extend %icon_tile;
padding: $base_padding;
spacing: 0;
margin-right: $base_margin * 2;
&:focus,
&:selected,
&:hover {
background-color: transparentize($osd_fg_color,.9);
transition-duration: 200ms;
}
&:active,
&:checked {
background-color: transparentize(darken($osd_bg_color,10%),.1);
}
@extend %search-section-content-item;
// content
.list-search-provider-content {
@ -113,34 +84,16 @@
// search result listitem
.list-search-result {
@extend %icon_tile;
spacing: 0;
padding: $base_padding;
color: $osd_fg_color;
border-radius: $base_border_radius + 2px !important;
&:focus,
&:selected,
&:hover {
background-color: transparentize($osd_fg_color,.9);
transition-duration: 200ms;
}
&:active,
&:checked {
background-color: transparentize(darken($osd_bg_color,10%),.1);
}
@extend %search-section-content-item;
// content
.list-search-result-content {
spacing: 0;
spacing: $base_padding;
}
// list item title
// list item title (with leading icon)
.list-search-result-title {
color: $osd_fg_color;
spacing: $base_spacing * 2;
padding-right: $base_padding;
// font-weight: bold;
}

View File

@ -45,14 +45,11 @@
padding: $base_padding;
border-radius: $modal_radius 0 0 $modal_radius;
border-right-width: 0 !important;
//fixme: can't have non uniform borders :(
border-top-left-radius:0 !important;
border-bottom-left-radius:0 !important;
border-right-width: 0;
&:rtl {
border-radius: 0 $modal_radius $modal_radius 0;
border-left-width: 0 !important;
border-left-width: 0;
}
// drag and drop indicator

View File

@ -256,7 +256,7 @@
<property name="margin">6</property>
<property name="icon_name">software-update-available-symbolic</property>
<style>
<class name="warning"/>>
<class name="warning"/>
</style>
</object>
</child>
@ -284,7 +284,7 @@
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">Logout…</property>
<property name="label" translatable="yes">Log Out…</property>
<property name="visible">True</property>
<property name="valign">center</property>
<property name="action-name">win.logout</property>

View File

@ -118,6 +118,10 @@ class PortalWindow extends Gtk.ApplicationWindow {
this._webContext = WebKit.WebContext.new_ephemeral();
this._webContext.set_cache_model(WebKit.CacheModel.DOCUMENT_VIEWER);
this._webContext.set_network_proxy_settings(WebKit.NetworkProxyMode.NO_PROXY, null);
if (this._webContext.set_sandbox_enabled) {
// We have WebKitGTK 2.26 or newer.
this._webContext.set_sandbox_enabled(true);
}
this._webView = WebKit.WebView.new_with_context(this._webContext);
this._webView.connect('decide-policy', this._onDecidePolicy.bind(this));

View File

@ -530,8 +530,10 @@ var AllView = GObject.registerClass({
// Overridden from BaseAppView
animate(animationDirection, onComplete) {
this._scrollView.reactive = false;
this._swipeTracker.enabled = false;
let completionFunc = () => {
this._scrollView.reactive = true;
this._swipeTracker.enabled = this.mapped;
if (onComplete)
onComplete();
};

View File

@ -270,6 +270,8 @@ const ScrollGesture = GObject.registerClass({
return;
this._enabled = enabled;
this._began = false;
this.notify('enabled');
}

View File

@ -1,5 +1,5 @@
project('gnome-shell', 'c',
version: '3.35.3',
version: '3.35.90',
meson_version: '>= 0.47.0',
license: 'GPLv2+'
)
@ -25,7 +25,7 @@ gio_req = '>= 2.56.0'
gi_req = '>= 1.49.1'
gjs_req = '>= 1.63.2'
gtk_req = '>= 3.15.0'
mutter_req = '>= 3.35.3'
mutter_req = '>= 3.35.90'
polkit_req = '>= 0.100'
schemas_req = '>= 3.33.1'
startup_req = '>= 0.11'

View File

@ -24,8 +24,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2020-01-28 15:54+0000\n"
"PO-Revision-Date: 2020-01-28 18:42-0300\n"
"POT-Creation-Date: 2020-02-06 19:01+0000\n"
"PO-Revision-Date: 2020-02-06 20:40-0300\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
@ -60,12 +60,13 @@ msgstr "Mostrar todos os aplicativos"
msgid "Open the application menu"
msgstr "Abre o menu do aplicativo"
#: data/gnome-shell-extension-prefs.desktop.in.in:4
#: js/extensionPrefs/main.js:209
msgid "Shell Extensions"
msgstr "Extensões do shell"
#: data/org.gnome.Extensions.desktop.in.in:4 js/extensionPrefs/main.js:218
#: js/extensionPrefs/ui/extensions-window.ui:61
#| msgid "Shell Extensions"
msgid "Extensions"
msgstr "Extensões"
#: data/gnome-shell-extension-prefs.desktop.in.in:5
#: data/org.gnome.Extensions.desktop.in.in:7
msgid "Configure GNOME Shell Extensions"
msgstr "Configurar extensões do Shell do GNOME"
@ -422,11 +423,45 @@ msgstr "Atrasar foco altera o modo do mouse até o ponteiro parar de mover"
msgid "Network Login"
msgstr "Sessão de Rede"
#: js/extensionPrefs/main.js:102 js/extensionPrefs/main.js:525
#: js/extensionPrefs/main.js:140
#, javascript-format
msgid "Remove “%s”?"
msgstr "Remover “%s”?"
#: js/extensionPrefs/main.js:141
msgid ""
"If you remove the extension, you need to return to download it if you want "
"to enable it again"
msgstr ""
"Se você remover a extensão, você precisa voltar a baixá-la se você quiser "
"habilitá-la novamente"
#: js/extensionPrefs/main.js:144 js/gdm/authPrompt.js:170
#: js/ui/audioDeviceSelection.js:57 js/ui/components/networkAgent.js:107
#: js/ui/components/polkitAgent.js:139 js/ui/endSessionDialog.js:374
#: js/ui/extensionDownloader.js:166 js/ui/shellMountOperation.js:376
#: js/ui/shellMountOperation.js:386 js/ui/status/network.js:910
msgid "Cancel"
msgstr "Cancelar"
#: js/extensionPrefs/main.js:145
msgid "Remove"
msgstr "Remover"
#: js/extensionPrefs/main.js:217
msgid "translator-credits"
msgstr "Rafael Fontenelle <rafaelff@gnome.org>"
#: js/extensionPrefs/main.js:219
#| msgid "Configure GNOME Shell Extensions"
msgid "Manage your GNOME Extensions"
msgstr "Gerenciar suas extensões do GNOME"
#: js/extensionPrefs/main.js:261 js/extensionPrefs/ui/extensions-window.ui:222
msgid "Somethings gone wrong"
msgstr "Algo deu errado"
#: js/extensionPrefs/main.js:109
#: js/extensionPrefs/main.js:268
msgid ""
"Were very sorry, but theres been a problem: the settings for this "
"extension cant be displayed. We recommend that you report the issue to the "
@ -436,39 +471,101 @@ msgstr ""
"ser exibidas. Recomendamos que você relate o problema aos autores da "
"extensão."
#: js/extensionPrefs/main.js:116
#: js/extensionPrefs/main.js:275
msgid "Technical Details"
msgstr "Detalhes técnicos"
#: js/extensionPrefs/main.js:151
#: js/extensionPrefs/main.js:310
msgid "Copy Error"
msgstr "Copiar erro"
#: js/extensionPrefs/main.js:178
#: js/extensionPrefs/main.js:337
msgid "Homepage"
msgstr "Site"
#: js/extensionPrefs/main.js:179
#: js/extensionPrefs/main.js:338
msgid "Visit extension homepage"
msgstr "Visita a página web da extensão"
#: js/extensionPrefs/main.js:467
msgid "No Extensions Installed"
#: js/extensionPrefs/main.js:449
#, javascript-format
msgid "%d extension will be updated on next login."
msgid_plural "%d extensions will be updated on next login."
msgstr[0] "%d extensão será atualizada na próxima sessão."
msgstr[1] "%d extensões serão atualizadas na próxima sessão."
#: js/extensionPrefs/ui/extension-row.ui:100
#: subprojects/extensions-tool/src/command-create.c:211
#: subprojects/extensions-tool/src/main.c:173
msgid "Description"
msgstr "Descrição"
#: js/extensionPrefs/ui/extension-row.ui:123
#: subprojects/extensions-tool/src/main.c:185
msgid "Version"
msgstr "Versão"
#: js/extensionPrefs/ui/extension-row.ui:151
msgid "Author"
msgstr "Autor"
#: js/extensionPrefs/ui/extension-row.ui:175
msgid "Website"
msgstr "Site"
#: js/extensionPrefs/ui/extension-row.ui:192
msgid "Remove…"
msgstr "Remover…"
#: js/extensionPrefs/ui/extensions-window.ui:8
msgid "Help"
msgstr "Ajuda"
#: js/extensionPrefs/ui/extensions-window.ui:12
#| msgid "List extensions"
msgid "About Extensions"
msgstr "Sobre as Extensões"
#: js/extensionPrefs/ui/extensions-window.ui:27
#| msgid ""
#| "Extensions can be installed through Software or <a href=\"https://"
#| "extensions.gnome.org\">extensions.gnome.org</a>."
msgid ""
"To find and add extensions, visit <a href=\"https://extensions.gnome.org"
"\">extensions.gnome.org</a>."
msgstr ""
"Para encontrar e adicionar extensões, visite <a href=\"https://extensions."
"gnome.org\">extensions.gnome.org</a>."
#: js/extensionPrefs/ui/extensions-window.ui:35
msgid "Warning"
msgstr "Aviso"
#: js/extensionPrefs/ui/extensions-window.ui:46
msgid ""
"Extensions can cause system issues, including performance problems. If you "
"encounter problems with your system, it is recommended to disable all "
"extensions."
msgstr ""
"Extensões podem causar problemas no sistema, incluindo problemas de "
"desempenho. Se você encontrar problemas com o seu sistema, é recomendável "
"desativar todas as extensões."
#: js/extensionPrefs/ui/extensions-window.ui:133
msgid "Manually Installed"
msgstr "Instalada manualmente"
#: js/extensionPrefs/ui/extensions-window.ui:157
#| msgid "Built-in Only"
msgid "Built-In"
msgstr "Interna"
#: js/extensionPrefs/ui/extensions-window.ui:198
#| msgid "Install Extension"
msgid "No Installed Extensions"
msgstr "Nenhuma extensão instalada"
#: js/extensionPrefs/main.js:477
msgid ""
"Extensions can be installed through Software or <a href=\"https://extensions."
"gnome.org\">extensions.gnome.org</a>."
msgstr ""
"Extensões podem ser instaladas por meio do Software ou <a href=\"https://"
"extensions.gnome.org\">extensions.gnome.org</a>."
#: js/extensionPrefs/main.js:492
msgid "Browse in Software"
msgstr "Navegar no Software"
#: js/extensionPrefs/main.js:532
#: js/extensionPrefs/ui/extensions-window.ui:234
msgid ""
"Were very sorry, but it was not possible to get the list of installed "
"extensions. Make sure you are logged into GNOME and try again."
@ -476,24 +573,21 @@ msgstr ""
"Sentimos muito, mas não foi possível obter a lista de extensões instaladas. "
"Certifique-se de estar em uma sessão do GNOME e tente novamente."
#: js/gdm/authPrompt.js:174 js/ui/audioDeviceSelection.js:57
#: js/ui/components/networkAgent.js:129 js/ui/components/polkitAgent.js:138
#: js/ui/endSessionDialog.js:374 js/ui/extensionDownloader.js:190
#: js/ui/shellMountOperation.js:381 js/ui/shellMountOperation.js:391
#: js/ui/status/network.js:910
msgid "Cancel"
msgstr "Cancelar"
#: js/extensionPrefs/ui/extensions-window.ui:287
#| msgid "Log Out"
msgid "Log Out…"
msgstr "Encerrar sessão…"
#: js/gdm/authPrompt.js:188 js/gdm/authPrompt.js:241 js/gdm/authPrompt.js:476
#: js/gdm/authPrompt.js:184 js/gdm/authPrompt.js:237 js/gdm/authPrompt.js:468
msgid "Next"
msgstr "Próximo"
#: js/gdm/authPrompt.js:237 js/ui/shellMountOperation.js:385
#: js/gdm/authPrompt.js:233 js/ui/shellMountOperation.js:380
#: js/ui/unlockDialog.js:44
msgid "Unlock"
msgstr "Desbloquear"
#: js/gdm/authPrompt.js:239
#: js/gdm/authPrompt.js:235
msgctxt "button"
msgid "Sign In"
msgstr "Entrar"
@ -516,8 +610,8 @@ msgstr "(ex.: usuário ou %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: js/gdm/loginDialog.js:899 js/ui/components/networkAgent.js:256
#: js/ui/components/networkAgent.js:279 js/ui/components/networkAgent.js:297
#: js/gdm/loginDialog.js:899 js/ui/components/networkAgent.js:234
#: js/ui/components/networkAgent.js:257 js/ui/components/networkAgent.js:275
msgid "Username: "
msgstr "Nome de usuário: "
@ -595,81 +689,78 @@ msgstr "alternar usuário;trocar de usuário"
#. Translators: A list of keywords that match the lock orientation action, separated by semicolons
#: js/misc/systemActions.js:131
#| msgid "lock orientation;screen;rotation"
msgid "lock orientation;unlock orientation;screen;rotation"
msgstr "bloqueio de orientação;desbloqueio de orientação;tela;rotação"
#: js/misc/systemActions.js:251
#| msgid "Lock Screen Rotation"
msgctxt "search-result"
msgid "Unlock Screen Rotation"
msgstr "Desbloquear rotação de tela"
#: js/misc/systemActions.js:252
#| msgid "Lock Screen Rotation"
msgctxt "search-result"
msgid "Lock Screen Rotation"
msgstr "Bloquear rotação de tela"
#: js/misc/util.js:116
#: js/misc/util.js:120
msgid "Command not found"
msgstr "Comando não encontrado"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: js/misc/util.js:152
#: js/misc/util.js:156
msgid "Could not parse command:"
msgstr "Não foi possível analisar comando:"
#: js/misc/util.js:160
#: js/misc/util.js:164
#, javascript-format
msgid "Execution of “%s” failed:"
msgstr "A execução de “%s” falhou:"
#: js/misc/util.js:177
#: js/misc/util.js:181
msgid "Just now"
msgstr "Agora mesmo"
#: js/misc/util.js:179
#: js/misc/util.js:183
#, javascript-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d minuto atrás"
msgstr[1] "%d minutos atrás"
#: js/misc/util.js:183
#: js/misc/util.js:187
#, javascript-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d hora atrás"
msgstr[1] "%d horas atrás"
#: js/misc/util.js:187
#: js/misc/util.js:191
msgid "Yesterday"
msgstr "Ontem"
#: js/misc/util.js:189
#: js/misc/util.js:193
#, javascript-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d dia atrás"
msgstr[1] "%d dias atrás"
#: js/misc/util.js:193
#: js/misc/util.js:197
#, javascript-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "%d semana atrás"
msgstr[1] "%d semanas atrás"
#: js/misc/util.js:197
#: js/misc/util.js:201
#, javascript-format
msgid "%d month ago"
msgid_plural "%d months ago"
msgstr[0] "%d mês atrás"
msgstr[1] "%d meses atrás"
#: js/misc/util.js:200
#: js/misc/util.js:204
#, javascript-format
msgid "%d year ago"
msgid_plural "%d years ago"
@ -677,20 +768,20 @@ msgstr[0] "%d ano atrás"
msgstr[1] "%d anos atrás"
#. Translators: Time in 24h format
#: js/misc/util.js:233
#: js/misc/util.js:237
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30"
#: js/misc/util.js:239
#: js/misc/util.js:243
#, no-c-format
msgid "Yesterday, %H%M"
msgstr "Ontem, %H%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30"
#: js/misc/util.js:245
#: js/misc/util.js:249
#, no-c-format
msgid "%A, %H%M"
msgstr "%A, %H%M"
@ -698,7 +789,7 @@ msgstr "%A, %H%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30"
#: js/misc/util.js:251
#: js/misc/util.js:255
#, no-c-format
msgid "%B %-d, %H%M"
msgstr "%-d de %B, %H%M"
@ -706,7 +797,7 @@ msgstr "%-d de %B, %H%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30"
#: js/misc/util.js:257
#: js/misc/util.js:261
#, no-c-format
msgid "%B %-d %Y, %H%M"
msgstr "%-d de %B de %Y, %H%M"
@ -714,20 +805,20 @@ msgstr "%-d de %B de %Y, %H%M"
#. Show only the time if date is on today
#. eslint-disable-line no-lonely-if
#. Translators: Time in 12h format
#: js/misc/util.js:262
#: js/misc/util.js:266
msgid "%l%M %p"
msgstr "%l%M %p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm"
#: js/misc/util.js:268
#: js/misc/util.js:272
#, no-c-format
msgid "Yesterday, %l%M %p"
msgstr "Ontem, %l%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm"
#: js/misc/util.js:274
#: js/misc/util.js:278
#, no-c-format
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
@ -735,7 +826,7 @@ msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm"
#: js/misc/util.js:280
#: js/misc/util.js:284
#, no-c-format
msgid "%B %-d, %l%M %p"
msgstr "%-d de %B, %l%M %p"
@ -743,17 +834,17 @@ msgstr "%-d de %B, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"
#: js/misc/util.js:286
#: js/misc/util.js:290
#, no-c-format
msgid "%B %-d %Y, %l%M %p"
msgstr "%-d de %B de %Y, %l%M %p"
#. TRANSLATORS: this is the title of the wifi captive portal login window
#: js/portalHelper/main.js:40
#: js/portalHelper/main.js:42
msgid "Hotspot Login"
msgstr "Autenticação de ponto de acesso"
#: js/portalHelper/main.js:86
#: js/portalHelper/main.js:88
msgid ""
"Your connection to this hotspot login is not secure. Passwords or other "
"information you enter on this page can be viewed by people nearby."
@ -772,44 +863,44 @@ msgstr "Negar acesso"
msgid "Grant Access"
msgstr "Conceder acesso"
#: js/ui/appDisplay.js:904
#: js/ui/appDisplay.js:906
msgid "Unnamed Folder"
msgstr "Pasta sem nome"
#: js/ui/appDisplay.js:927
#: js/ui/appDisplay.js:929
msgid "Frequently used applications will appear here"
msgstr "Aplicativos usados frequentemente vão aparecer aqui"
#: js/ui/appDisplay.js:1062
#: js/ui/appDisplay.js:1064
msgid "Frequent"
msgstr "Frequente"
#: js/ui/appDisplay.js:1069
#: js/ui/appDisplay.js:1071
msgid "All"
msgstr "Todos"
#. Translators: This is the heading of a list of open windows
#: js/ui/appDisplay.js:2452 js/ui/panel.js:75
#: js/ui/appDisplay.js:2454 js/ui/panel.js:75
msgid "Open Windows"
msgstr "Janelas abertas"
#: js/ui/appDisplay.js:2472 js/ui/panel.js:82
#: js/ui/appDisplay.js:2474 js/ui/panel.js:82
msgid "New Window"
msgstr "Nova janela"
#: js/ui/appDisplay.js:2483
#: js/ui/appDisplay.js:2485
msgid "Launch using Dedicated Graphics Card"
msgstr "Inicia usando placa de vídeo dedicada"
#: js/ui/appDisplay.js:2511 js/ui/dash.js:239
#: js/ui/appDisplay.js:2513 js/ui/dash.js:239
msgid "Remove from Favorites"
msgstr "Remover dos favoritos"
#: js/ui/appDisplay.js:2517
#: js/ui/appDisplay.js:2519
msgid "Add to Favorites"
msgstr "Adicionar aos favoritos"
#: js/ui/appDisplay.js:2527 js/ui/panel.js:93
#: js/ui/appDisplay.js:2529 js/ui/panel.js:93
msgid "Show Details"
msgstr "Mostrar detalhes"
@ -1027,55 +1118,48 @@ msgstr "A versão do udisks instalado não possui suporte à configuração do P
msgid "Open with %s"
msgstr "Abrir com %s"
#: js/ui/components/keyring.js:70 js/ui/components/polkitAgent.js:278
msgid "Password:"
msgstr "Senha:"
#: js/ui/components/keyring.js:104
msgid "Type again:"
msgstr "Digite novamente:"
#: js/ui/components/networkAgent.js:115
#: js/ui/components/networkAgent.js:89
msgid ""
"Alternatively you can connect by pushing the “WPS” button on your router."
msgstr ""
"Alternativamente, você pode conectar pressionando o botão “WPS” em seu "
"roteador."
#: js/ui/components/networkAgent.js:123 js/ui/status/network.js:223
#: js/ui/components/networkAgent.js:101 js/ui/status/network.js:223
#: js/ui/status/network.js:314 js/ui/status/network.js:913
msgid "Connect"
msgstr "Conectar"
#. Cisco LEAP
#: js/ui/components/networkAgent.js:224 js/ui/components/networkAgent.js:236
#: js/ui/components/networkAgent.js:260 js/ui/components/networkAgent.js:281
#: js/ui/components/networkAgent.js:301 js/ui/components/networkAgent.js:311
#: js/ui/components/networkAgent.js:202 js/ui/components/networkAgent.js:214
#: js/ui/components/networkAgent.js:238 js/ui/components/networkAgent.js:259
#: js/ui/components/networkAgent.js:279 js/ui/components/networkAgent.js:289
msgid "Password: "
msgstr "Senha: "
#. static WEP
#: js/ui/components/networkAgent.js:229
#: js/ui/components/networkAgent.js:207
msgid "Key: "
msgstr "Chave: "
#: js/ui/components/networkAgent.js:264 js/ui/components/networkAgent.js:287
#: js/ui/components/networkAgent.js:242 js/ui/components/networkAgent.js:265
msgid "Private key password: "
msgstr "Senha da chave privada: "
#: js/ui/components/networkAgent.js:285
#: js/ui/components/networkAgent.js:263
msgid "Identity: "
msgstr "Identidade: "
#: js/ui/components/networkAgent.js:299
#: js/ui/components/networkAgent.js:277
msgid "Service: "
msgstr "Serviço: "
#: js/ui/components/networkAgent.js:328 js/ui/components/networkAgent.js:703
msgid "Authentication required by wireless network"
msgstr "Autenticação requisitada pela rede sem fio"
#: js/ui/components/networkAgent.js:306 js/ui/components/networkAgent.js:334
#: js/ui/components/networkAgent.js:681 js/ui/components/networkAgent.js:702
msgid "Authentication required"
msgstr "Autenticação necessária"
#: js/ui/components/networkAgent.js:329 js/ui/components/networkAgent.js:704
#: js/ui/components/networkAgent.js:307 js/ui/components/networkAgent.js:682
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -1084,58 +1168,54 @@ msgstr ""
"Senhas ou chaves criptografadas são necessárias para acessar a rede sem fio "
"“%s”."
#: js/ui/components/networkAgent.js:333 js/ui/components/networkAgent.js:708
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:686
msgid "Wired 802.1X authentication"
msgstr "Autenticação 802.1X cabeada"
#: js/ui/components/networkAgent.js:335
#: js/ui/components/networkAgent.js:313
msgid "Network name: "
msgstr "Nome da rede: "
#: js/ui/components/networkAgent.js:340 js/ui/components/networkAgent.js:712
#: js/ui/components/networkAgent.js:318 js/ui/components/networkAgent.js:690
msgid "DSL authentication"
msgstr "Autenticação DSL"
#: js/ui/components/networkAgent.js:347 js/ui/components/networkAgent.js:717
#: js/ui/components/networkAgent.js:325 js/ui/components/networkAgent.js:695
msgid "PIN code required"
msgstr "Código PIN requisitado"
#: js/ui/components/networkAgent.js:348 js/ui/components/networkAgent.js:718
#: js/ui/components/networkAgent.js:326 js/ui/components/networkAgent.js:696
msgid "PIN code is needed for the mobile broadband device"
msgstr "O código PIN é necessário para o dispositivo móvel de banda larga"
#: js/ui/components/networkAgent.js:349
#: js/ui/components/networkAgent.js:327
msgid "PIN: "
msgstr "PIN: "
#: js/ui/components/networkAgent.js:356 js/ui/components/networkAgent.js:724
msgid "Mobile broadband network password"
msgstr "Senha da rede de banda larga móvel"
#: js/ui/components/networkAgent.js:357 js/ui/components/networkAgent.js:709
#: js/ui/components/networkAgent.js:713 js/ui/components/networkAgent.js:725
#: js/ui/components/networkAgent.js:729
#: js/ui/components/networkAgent.js:335 js/ui/components/networkAgent.js:687
#: js/ui/components/networkAgent.js:691 js/ui/components/networkAgent.js:703
#: js/ui/components/networkAgent.js:707
#, javascript-format
msgid "A password is required to connect to “%s”."
msgstr "Uma senha é necessária para se conectar a “%s”."
#: js/ui/components/networkAgent.js:692 js/ui/status/network.js:1688
#: js/ui/components/networkAgent.js:670 js/ui/status/network.js:1688
msgid "Network Manager"
msgstr "Gerenciador de rede"
#: js/ui/components/networkAgent.js:728
#: js/ui/components/networkAgent.js:706
msgid "VPN password"
msgstr "Senha de VPN"
#: js/ui/components/polkitAgent.js:41
#: js/ui/components/polkitAgent.js:39
msgid "Authentication Required"
msgstr "Autenticação necessária"
#: js/ui/components/polkitAgent.js:81
#: js/ui/components/polkitAgent.js:80
msgid "Administrator"
msgstr "Administrador"
#: js/ui/components/polkitAgent.js:141
#: js/ui/components/polkitAgent.js:142
msgid "Authenticate"
msgstr "Autenticação"
@ -1143,10 +1223,15 @@ msgstr "Autenticação"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: js/ui/components/polkitAgent.js:259 js/ui/shellMountOperation.js:365
#: js/ui/components/polkitAgent.js:254 js/ui/shellMountOperation.js:402
msgid "Sorry, that didnt work. Please try again."
msgstr "Desculpe, isto não funcionou. Por favor, tente novamente."
#: js/ui/components/polkitAgent.js:277 js/ui/shellMountOperation.js:326
#| msgid "Remember Password"
msgid "Enter Password…"
msgstr "Lembrar senha…"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: js/ui/components/telepathyClient.js:787
@ -1362,34 +1447,39 @@ msgstr "%s (remoto)"
msgid "%s (console)"
msgstr "%s (console)"
#: js/ui/extensionDownloader.js:194
#: js/ui/extensionDownloader.js:170
msgid "Install"
msgstr "Instalar"
#: js/ui/extensionDownloader.js:200
#| msgid "Uninstall extension"
#: js/ui/extensionDownloader.js:176
msgid "Install Extension"
msgstr "Instalar extensão"
#: js/ui/extensionDownloader.js:201
#: js/ui/extensionDownloader.js:177
#, javascript-format
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Baixar e instalar “%s” de extensions.gnome.org?"
#: js/ui/extensionSystem.js:228
#| msgid "No Extensions Installed"
msgid "Extension Updates Available"
msgstr "Atualizações de extensões disponíveis"
#: js/ui/extensionSystem.js:229
msgid "Extension updates are ready to be installed."
msgstr "Atualizações de extensões estão prontas para serem instaladas."
#: js/ui/inhibitShortcutsDialog.js:79
#| msgid "%s wants to inhibit shortcuts"
msgid "Allow inhibiting shortcuts"
msgstr "Permitir inibir atalhos"
#. Translators: %s is an application name like "Settings"
#: js/ui/inhibitShortcutsDialog.js:82
#, javascript-format
#| msgid "Application wants to inhibit shortcuts"
msgid "The application %s wants to inhibit shortcuts"
msgstr "O aplicativo %s deseja inibir atalhos"
#: js/ui/inhibitShortcutsDialog.js:83
#| msgid "Application wants to inhibit shortcuts"
msgid "An application wants to inhibit shortcuts"
msgstr "Um aplicativo deseja inibir atalhos"
@ -1638,12 +1728,10 @@ msgid "Top Bar"
msgstr "Barra superior"
#: js/ui/runDialog.js:58
#| msgid "Enter a Command"
msgid "Run a Command"
msgstr "Executar um comando"
#: js/ui/runDialog.js:73
#| msgid "Press Esc to exit"
msgid "Press ESC to close"
msgstr "Pressione Esc para fechar"
@ -1675,7 +1763,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d nova notificação"
msgstr[1] "%d novas notificações"
#: js/ui/screenShield.js:454 js/ui/status/system.js:98
#: js/ui/screenShield.js:454 js/ui/status/system.js:103
msgid "Lock"
msgstr "Bloquear"
@ -1733,20 +1821,20 @@ msgstr "Ocultar texto"
msgid "Caps lock is on."
msgstr "Caps lock está ligado."
#: js/ui/shellMountOperation.js:287
#: js/ui/shellMountOperation.js:285
msgid "Hidden Volume"
msgstr "Volume oculto"
#: js/ui/shellMountOperation.js:290
#: js/ui/shellMountOperation.js:288
msgid "Windows System Volume"
msgstr "Volume de sistema Windows"
#: js/ui/shellMountOperation.js:293
#: js/ui/shellMountOperation.js:291
msgid "Uses Keyfiles"
msgstr "Usa arquivos de chave"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:299
#: js/ui/shellMountOperation.js:298
#, javascript-format
msgid ""
"To unlock a volume that uses keyfiles, use the <i>%s</i> utility instead."
@ -1755,35 +1843,32 @@ msgstr ""
"%s</i>."
#: js/ui/shellMountOperation.js:306
msgid "PIM Number"
msgstr "Número PIM"
#| msgid "PIM Number"
msgid "Enter PIM Number…"
msgstr "Insira um número PIM…"
#: js/ui/shellMountOperation.js:325
msgid "The PIM must be a number or empty."
msgstr "O PIM deve ser um número ou vazio."
#: js/ui/shellMountOperation.js:336
msgid "Password"
msgstr "Senha"
#: js/ui/shellMountOperation.js:372
#: js/ui/shellMountOperation.js:365
msgid "Remember Password"
msgstr "Lembrar senha"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:396
#: js/ui/shellMountOperation.js:391
#, javascript-format
msgid "Open %s"
msgstr "Abrir o %s"
#: js/ui/shellMountOperation.js:423
msgid "The PIM must be a number or empty."
msgstr "O PIM deve ser um número ou vazio."
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:468
#: js/ui/shellMountOperation.js:469
#, javascript-format
msgid "Unable to start %s"
msgstr "Não foi possível iniciar o %s"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:470
#: js/ui/shellMountOperation.js:471
#, javascript-format
msgid "Couldnt find the %s application"
msgstr "Não foi possível localizar o aplicativo %s"
@ -1919,7 +2004,6 @@ msgstr "Permitir acesso a localização"
#. Translators: %s is an application name
#: js/ui/status/location.js:357
#, javascript-format
#| msgid "Give %s access to your location?"
msgid "The app %s wants to access your location"
msgstr "O aplicativo %s deseja acesso a sua localização"
@ -2201,23 +2285,23 @@ msgstr "Desativar"
msgid "Airplane Mode On"
msgstr "Modo avião ligado"
#: js/ui/status/system.js:111
#: js/ui/status/system.js:116
msgid "Power Off / Log Out"
msgstr "Desligar / encerrar sessão"
#: js/ui/status/system.js:114
#: js/ui/status/system.js:119
msgid "Log Out"
msgstr "Encerrar sessão"
#: js/ui/status/system.js:126
#: js/ui/status/system.js:131
msgid "Switch User…"
msgstr "Alternar usuário…"
#: js/ui/status/system.js:140
#: js/ui/status/system.js:145
msgid "Suspend"
msgstr "Suspender"
#: js/ui/status/system.js:152
#: js/ui/status/system.js:157
msgid "Power Off…"
msgstr "Desligar…"
@ -2316,22 +2400,24 @@ msgstr "“%s” está pronto"
# Título de janela de confirmação; Se grande demais, pode ser exibida com "..."
# Vide: https://bugzilla.gnome.org/show_bug.cgi?id=786331
#: js/ui/windowManager.js:54
msgid "Do you want to keep these display settings?"
msgstr "Deseja manter essas configurações da tela?"
#. Translators: This string should be shorter than 30 characters
#: js/ui/windowManager.js:55
#| msgid "Do you want to keep these display settings?"
msgid "Keep these display settings?"
msgstr "Manter essas configurações da tela?"
#. Translators: this and the following message should be limited in length,
#. to avoid ellipsizing the labels.
#.
#: js/ui/windowManager.js:68
#: js/ui/windowManager.js:64
msgid "Revert Settings"
msgstr "Reverter configurações"
#: js/ui/windowManager.js:71
#: js/ui/windowManager.js:67
msgid "Keep Changes"
msgstr "Manter alterações"
#: js/ui/windowManager.js:89
#: js/ui/windowManager.js:85
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -2340,7 +2426,7 @@ msgstr[1] "Alterações nas configurações serão revertidas em %d segundos"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height.
#: js/ui/windowManager.js:546
#: js/ui/windowManager.js:542
#, javascript-format
msgid "%d × %d"
msgstr "%d × %d"
@ -2485,11 +2571,6 @@ msgstr ""
"Descrição é uma explicação uma só frase do que sua extensão faz.\n"
"Exemplos são: %s"
#: subprojects/extensions-tool/src/command-create.c:211
#: subprojects/extensions-tool/src/main.c:173
msgid "Description"
msgstr "Descrição"
#: subprojects/extensions-tool/src/command-create.c:222
msgid ""
"UUID is a globally-unique identifier for your extension.\n"
@ -2692,10 +2773,6 @@ msgstr "URL"
msgid "Original author"
msgstr "Autor original"
#: subprojects/extensions-tool/src/main.c:185
msgid "Version"
msgstr "Versão"
#: subprojects/extensions-tool/src/main.c:188
msgid "State"
msgstr "Estado"
@ -2798,6 +2875,24 @@ msgstr[1] "%u entradas"
msgid "System Sounds"
msgstr "Sons do sistema"
#~ msgid "Browse in Software"
#~ msgstr "Navegar no Software"
#~ msgid "Password:"
#~ msgstr "Senha:"
#~ msgid "Type again:"
#~ msgstr "Digite novamente:"
#~ msgid "Authentication required by wireless network"
#~ msgstr "Autenticação requisitada pela rede sem fio"
#~ msgid "Mobile broadband network password"
#~ msgstr "Senha da rede de banda larga móvel"
#~ msgid "Password"
#~ msgstr "Senha"
#~ msgctxt "search-result"
#~ msgid "Lock Orientation"
#~ msgstr "Bloquear orientação"
@ -2913,9 +3008,6 @@ msgstr "Sons do sistema"
#~ msgstr[0] "%d dispositivo conectado"
#~ msgstr[1] "%d dispositivos conectados"
#~ msgid "Authentication required"
#~ msgstr "Autenticação necessária"
# UPS significa uninterruptible power supply, mas no Brasil vejo usando mais
# "No-break", que é a mesma coisa, então optei pela segunda. -- Rafael Fontenelle
#~ msgid "UPS"

View File

@ -1443,8 +1443,9 @@ st_texture_cache_load_file_sync_to_cogl_texture (StTextureCache *cache,
if (policy == ST_TEXTURE_CACHE_POLICY_FOREVER)
{
double resource_scale_double = resource_scale;
g_hash_table_insert (cache->priv->keyed_cache, g_strdup (key), image);
g_hash_table_insert (cache->priv->used_scales, &resource_scale, &resource_scale);
g_hash_table_insert (cache->priv->used_scales, &resource_scale_double, &resource_scale_double);
}
}
@ -1491,10 +1492,11 @@ st_texture_cache_load_file_sync_to_cairo_surface (StTextureCache *cache,
if (policy == ST_TEXTURE_CACHE_POLICY_FOREVER)
{
double resource_scale_double = resource_scale;
cairo_surface_reference (surface);
g_hash_table_insert (cache->priv->keyed_surface_cache,
g_strdup (key), surface);
g_hash_table_insert (cache->priv->used_scales, &resource_scale, &resource_scale);
g_hash_table_insert (cache->priv->used_scales, &resource_scale_double, &resource_scale_double);
}
}
else