Unverified Commit e5d2fd66 authored by chrisgarrity's avatar chrisgarrity Committed by GitHub

Merge pull request #4176 from LLK/develop

Update release branch from develop
parents 5a09f9cd 9090aab6
This diff is collapsed.
...@@ -34,7 +34,7 @@ class UsernameStep extends React.Component { ...@@ -34,7 +34,7 @@ class UsernameStep extends React.Component {
}; };
// simple object to memoize remote requests for usernames. // simple object to memoize remote requests for usernames.
// keeps us from submitting multiple requests for same data. // keeps us from submitting multiple requests for same data.
this.usernameRemoteCache = {}; this.usernameRemoteCache = Object.create(null);
} }
componentDidMount () { componentDidMount () {
// Send info to analytics when we aren't on the standalone page. // Send info to analytics when we aren't on the standalone page.
...@@ -58,7 +58,7 @@ class UsernameStep extends React.Component { ...@@ -58,7 +58,7 @@ class UsernameStep extends React.Component {
} }
// simple function to memoize remote requests for usernames // simple function to memoize remote requests for usernames
validateUsernameRemotelyWithCache (username) { validateUsernameRemotelyWithCache (username) {
if (this.usernameRemoteCache.hasOwnProperty(username)) { if (typeof this.usernameRemoteCache[username] === 'object') {
return Promise.resolve(this.usernameRemoteCache[username]); return Promise.resolve(this.usernameRemoteCache[username]);
} }
// username is not in our cache // username is not in our cache
......
...@@ -34,10 +34,8 @@ ...@@ -34,10 +34,8 @@
background-color: $ui-blue-10percent; background-color: $ui-blue-10percent;
flex: 1; flex: 1;
height: calc(100% - 5rem); height: calc(100% - 5rem);
/* Firefox requires min-height:0: #3775 */
@media #{$small-height} { min-height: 0;
min-height: 0;
}
} }
.studio-list-inner-scrollbox { .studio-list-inner-scrollbox {
......
...@@ -24,7 +24,7 @@ module.exports = (text, opts) => { ...@@ -24,7 +24,7 @@ module.exports = (text, opts) => {
if (opts.usernames) { if (opts.usernames) {
replacedText = reactStringReplace(replacedText, /@([\w-]+)/g, (match, i) => ( replacedText = reactStringReplace(replacedText, /@([\w-]+)/g, (match, i) => (
<a <a
href={`/users/${match}`} href={match.toLowerCase() === 'welcomingcommittee' ? '/studios/146521/' : `/users/${match}`}
key={match + i} key={match + i}
>@{match}</a> >@{match}</a>
)); ));
......
...@@ -434,6 +434,12 @@ ...@@ -434,6 +434,12 @@
"routeAlias": "/info/?(\\?.*)?$", "routeAlias": "/info/?(\\?.*)?$",
"redirect": "/ideas" "redirect": "/ideas"
}, },
{
"name": "register-redirect",
"pattern": "^/accounts/standalone-registration/?$",
"routeAlias": "/accounts/standalone-registration/",
"redirect": "/join"
},
{ {
"name": "research-redirect", "name": "research-redirect",
"pattern": "^/info/research/?$", "pattern": "^/info/research/?$",
......
...@@ -109,7 +109,7 @@ const Credits = () => ( ...@@ -109,7 +109,7 @@ const Credits = () => (
id="credits.acknowledgementsTranslators" id="credits.acknowledgementsTranslators"
values={{ values={{
translatorsLink: ( translatorsLink: (
<a href="http://wiki.scratch.mit.edu/wiki/Translators"> <a href="https://en.scratch-wiki.info/wiki/Translators">
<FormattedMessage id="credits.acknowledgementsTranslatorsLinkText" /> <FormattedMessage id="credits.acknowledgementsTranslatorsLinkText" />
</a> </a>
) )
...@@ -151,8 +151,8 @@ const Credits = () => ( ...@@ -151,8 +151,8 @@ const Credits = () => (
{' '} {' '}
Ben Berg, Amos Blanton, Karen Brennan, Juanita Buitrago, Ben Berg, Amos Blanton, Karen Brennan, Juanita Buitrago,
Leo Burd, Gaia Carini, Kasia Chmielinski, Michelle Chung, Leo Burd, Gaia Carini, Kasia Chmielinski, Michelle Chung,
Shane Clements, Hannah Cole, Ellen Daoust, Sayamindu Dasgupta, Shane Clements, Hannah Cole, Sayamindu Dasgupta,
Margarita Dekoli, Dave Feinberg, Linda Fernsel, Margarita Dekoli, Dave Feinberg, Linda Fernsel, Elizabeth Foster,
Chris Graves, Joel Gritter, Megan Haddadi, Connor Hudson, Chris Graves, Joel Gritter, Megan Haddadi, Connor Hudson,
Christina Huang, Tony Hwang, Abdulrahman Idlbi, Randy Jou, Christina Huang, Tony Hwang, Abdulrahman Idlbi, Randy Jou,
Lily Kim, Tauntaun Kim, Saskia Leggett, Tim Mickel, Lily Kim, Tauntaun Kim, Saskia Leggett, Tim Mickel,
......
[ [
{
"userName": "originalwow",
"userId": 56182496,
"name": "Amielle"
},
{ {
"userName": "amylaser", "userName": "amylaser",
"userId": 17462181, "userId": 17462181,
...@@ -53,9 +58,14 @@ ...@@ -53,9 +58,14 @@
"userName": "codubee", "userName": "codubee",
"userId": 10866958, "userId": 10866958,
"name": "Colby" "name": "Colby"
},
{
"userName": "noncanonical",
"userId": 55851826,
"name": "Craig"
}, },
{ {
"userName": "harakou", "userName": "Harakou",
"userId": 373646, "userId": 373646,
"name": "Dalton" "name": "Dalton"
}, },
...@@ -65,9 +75,9 @@ ...@@ -65,9 +75,9 @@
"name": "DD" "name": "DD"
}, },
{ {
"userName": "rmiel", "userName": "SunnyDay4aBlueJay",
"userId": 34557192, "userId": 24164779,
"name": "Elizabeth" "name": "Ellen"
}, },
{ {
"userName": "ericr", "userName": "ericr",
...@@ -104,6 +114,11 @@ ...@@ -104,6 +114,11 @@
"userId": 2496866, "userId": 2496866,
"name": "Jolie" "name": "Jolie"
}, },
{
"userName": "Class12321",
"userId": 2871308,
"name": "Joshua"
},
{ {
"userName": "bluecrazie", "userName": "bluecrazie",
"userId": 50257624, "userId": 50257624,
......
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"download.whyAskForLocation" : "Why is {operatingsystem} asking for my location?", "download.whyAskForLocation" : "Why is {operatingsystem} asking for my location?",
"download.whyAskForLocationAnswer" : "Scratch uses bluetooth to connect to other devices, such as a micro:bit or LEGO BOOST. Bluetooth can be used to provide location data to the app, so Google requires every app that uses bluetooth ask users for permission to access their location. Scratch will not use bluetooth to track your location.", "download.whyAskForLocationAnswer" : "Scratch uses bluetooth to connect to other devices, such as a micro:bit or LEGO BOOST. Bluetooth can be used to provide location data to the app, so Google requires every app that uses bluetooth ask users for permission to access their location. Scratch will not use bluetooth to track your location.",
"download.whereProjectStored" : "Where does the Scratch App store my projects?", "download.whereProjectStored" : "Where does the Scratch App store my projects?",
"download.whereProjectStoredAnswer" : "Projects are saved internally in the app. To export a project file, click the 3-dot menu and select \"Share\". On the next screen select \"export\". The options visible depend on the applications installed on your device. Common options are Google Drive, Files, and email." "download.whereProjectStoredAnswer" : "Projects are saved internally in the app. To export a project file, click the 3-dot menu and select \"Share\". On the next screen select \"export\". The options visible depend on the applications installed on your device. Common options are Google Drive, Files, and email.",
"download.iconAltText" : "Download"
} }
...@@ -38,7 +38,6 @@ $stage-width: 480px; ...@@ -38,7 +38,6 @@ $stage-width: 480px;
.inner { .inner {
margin: 0 auto; margin: 0 auto;
overflow: auto;
@media #{$medium-and-smaller} { @media #{$medium-and-smaller} {
// subtract page padding // subtract page padding
...@@ -365,7 +364,7 @@ $stage-width: 480px; ...@@ -365,7 +364,7 @@ $stage-width: 480px;
.guiPlayer { .guiPlayer {
display: inline-block; display: inline-block;
position: relative; position: relative;
max-width: $player-width; width: $player-width;
z-index: 1; z-index: 1;
$alert-bg: rgba(255, 255, 255, .85); $alert-bg: rgba(255, 255, 255, .85);
...@@ -402,6 +401,7 @@ $stage-width: 480px; ...@@ -402,6 +401,7 @@ $stage-width: 480px;
flex: 1; flex: 1;
flex-flow: column; flex-flow: column;
margin-top: .3125rem; margin-top: .3125rem;
overflow: auto;
@media #{$medium-and-smaller} { @media #{$medium-and-smaller} {
margin-top: .5rem; margin-top: .5rem;
...@@ -479,7 +479,6 @@ $stage-width: 480px; ...@@ -479,7 +479,6 @@ $stage-width: 480px;
line-height: 1.5rem; line-height: 1.5rem;
flex: 1; flex: 1;
overflow-wrap: break-word; overflow-wrap: break-word;
word-break: break-word;
} }
.project-description:last-of-type { .project-description:last-of-type {
......
...@@ -104,6 +104,8 @@ ...@@ -104,6 +104,8 @@
.social-message { .social-message {
border: 0; border: 0;
padding: 0; padding: 0;
overflow-wrap: anywhere;
word-break: break-word;
} }
.activity-img { .activity-img {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment