diff --git a/.yarn/install-state.gz b/.yarn/install-state.gz index e3ac97cdc..6e37cc48d 100644 Binary files a/.yarn/install-state.gz and b/.yarn/install-state.gz differ diff --git a/app/javascript/flavours/glitch/features/getting_started/index.js b/app/javascript/flavours/glitch/features/getting_started/index.js index 8dcea1867..51aa8f8cf 100644 --- a/app/javascript/flavours/glitch/features/getting_started/index.js +++ b/app/javascript/flavours/glitch/features/getting_started/index.js @@ -35,7 +35,6 @@ const messages = defineMessages({ follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' }, lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' }, keyboard_shortcuts: { id: 'navigation_bar.keyboard_shortcuts', defaultMessage: 'Keyboard shortcuts' }, - lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' }, lists_subheading: { id: 'column_subheading.lists', defaultMessage: 'Lists' }, misc: { id: 'navigation_bar.misc', defaultMessage: 'Misc' }, menu: { id: 'getting_started.heading', defaultMessage: 'Getting started' }, diff --git a/app/javascript/flavours/glitch/locales/fr.js b/app/javascript/flavours/glitch/locales/fr.js index f327311b0..977f68e70 100644 --- a/app/javascript/flavours/glitch/locales/fr.js +++ b/app/javascript/flavours/glitch/locales/fr.js @@ -4,6 +4,14 @@ const messages = { 'navigation_bar.app_settings': 'Config de ouf', 'tabs_bar.local_timeline': 'Bilveusées locales', 'tabs_bar.federated_timeline': 'La mine de sel', + 'compose_form.publish': getRandomTermPouet(), + 'compose_form.save_changes': getRandomTermPouet(), + getRandomTermPouet:getRandomTermPouet, }; +export function getRandomTermPouet() { + let items = ['Pouet', 'Révolte', 'Couillère', 'Allez viens', 'On est bien', 'Sapristi', 'PWOUINNNN', 'Squalala', 'C\'est parti', 'Allez', 'Roulez jeunesse', 'Magnéto', 'Illuminer le monde']; + return items[Math.floor(Math.random() * items.length)]; +} + export default Object.assign({}, inherited, messages); diff --git a/app/javascript/flavours/glitch/styles/_custom_tk.scss b/app/javascript/flavours/glitch/styles/_custom_tk.scss index 98658017f..848fba318 100644 --- a/app/javascript/flavours/glitch/styles/_custom_tk.scss +++ b/app/javascript/flavours/glitch/styles/_custom_tk.scss @@ -60,7 +60,7 @@ background-position: top left; background-attachment: fixed; background-repeat: no-repeat; - background-size: cover; + background-size: 100vh; .compose-panel{ //background-image: linear-gradient(transparent, #15141A 90%); } @@ -79,3 +79,8 @@ margin-right: 2ch; } } +.skin-mastodon-light{ + .navigation-bar__profile, strong{ + color: white; + } +} diff --git a/app/javascript/mastodon/features/compose/components/compose_form.js b/app/javascript/mastodon/features/compose/components/compose_form.js index 55ffecb49..cbc174539 100644 --- a/app/javascript/mastodon/features/compose/components/compose_form.js +++ b/app/javascript/mastodon/features/compose/components/compose_form.js @@ -22,6 +22,7 @@ import { length } from 'stringz'; import { countableText } from '../util/counter'; import Icon from 'mastodon/components/icon'; import { maxChars } from '../../../initial_state'; +import { getRandomTermPouet } from '../../../../flavours/glitch/locales/fr'; const allowedAroundShortCode = '><\u0085\u0020\u00a0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\u0009\u000a\u000b\u000c\u000d'; @@ -32,6 +33,7 @@ const messages = defineMessages({ publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' }, saveChanges: { id: 'compose_form.save_changes', defaultMessage: 'Save changes' }, }); +let publishText = ''; export default @injectIntl class ComposeForm extends ImmutablePureComponent { @@ -74,17 +76,17 @@ class ComposeForm extends ImmutablePureComponent { handleChange = (e) => { this.props.onChange(e.target.value); - } + }; handleKeyDown = (e) => { if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) { this.handleSubmit(); } - } + }; getFulltextForCharacterCounting = () => { - return [this.props.spoiler? this.props.spoilerText: '', countableText(this.props.text)].join(''); - } + return [this.props.spoiler ? this.props.spoilerText : '', countableText(this.props.text)].join(''); + }; canSubmit = () => { const { isSubmitting, isChangingUpload, isUploading, anyMedia } = this.props; @@ -92,9 +94,11 @@ class ComposeForm extends ImmutablePureComponent { const isOnlyWhitespace = fulltext.length !== 0 && fulltext.trim().length === 0; return !(isSubmitting || isUploading || isChangingUpload || length(fulltext) > maxChars || (isOnlyWhitespace && !anyMedia)); - } + }; handleSubmit = (e) => { + console.log('handle du submit'); + if (this.props.text !== this.autosuggestTextarea.textarea.value) { // Something changed the text inside the textarea (e.g. browser extensions like Grammarly) // Update the state to match the current text @@ -106,31 +110,30 @@ class ComposeForm extends ImmutablePureComponent { } this.props.onSubmit(this.context.router ? this.context.router.history : null); - if (e) { e.preventDefault(); } - } + }; onSuggestionsClearRequested = () => { this.props.onClearSuggestions(); - } + }; onSuggestionsFetchRequested = (token) => { this.props.onFetchSuggestions(token); - } + }; onSuggestionSelected = (tokenStart, token, value) => { this.props.onSuggestionSelected(tokenStart, token, value, ['text']); - } + }; onSpoilerSuggestionSelected = (tokenStart, token, value) => { this.props.onSuggestionSelected(tokenStart, token, value, ['spoiler_text']); - } + }; handleChangeSpoilerText = (e) => { this.props.onChangeSpoilerText(e.target.value); - } + }; handleFocus = () => { if (this.composeForm && !this.props.singleColumn) { @@ -139,13 +142,13 @@ class ComposeForm extends ImmutablePureComponent { this.composeForm.scrollIntoView(); } } + }; + + componentDidMount() { + this._updateFocusAndSelection({}); } - componentDidMount () { - this._updateFocusAndSelection({ }); - } - - componentDidUpdate (prevProps) { + componentDidUpdate(prevProps) { this._updateFocusAndSelection(prevProps); } @@ -159,13 +162,13 @@ class ComposeForm extends ImmutablePureComponent { let selectionEnd, selectionStart; if (this.props.preselectDate !== prevProps.preselectDate && this.props.isInReply) { - selectionEnd = this.props.text.length; + selectionEnd = this.props.text.length; selectionStart = this.props.text.search(/\s/) + 1; } else if (typeof this.props.caretPosition === 'number') { selectionStart = this.props.caretPosition; - selectionEnd = this.props.caretPosition; + selectionEnd = this.props.caretPosition; } else { - selectionEnd = this.props.text.length; + selectionEnd = this.props.text.length; selectionStart = selectionEnd; } @@ -176,7 +179,7 @@ class ComposeForm extends ImmutablePureComponent { this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd); this.autosuggestTextarea.textarea.focus(); }).catch(console.error); - } else if(prevProps.isSubmitting && !this.props.isSubmitting) { + } else if (prevProps.isSubmitting && !this.props.isSubmitting) { this.autosuggestTextarea.textarea.focus(); } else if (this.props.spoiler !== prevProps.spoiler) { if (this.props.spoiler) { @@ -185,40 +188,53 @@ class ComposeForm extends ImmutablePureComponent { this.autosuggestTextarea.textarea.focus(); } } - } + }; setAutosuggestTextarea = (c) => { this.autosuggestTextarea = c; - } + }; setSpoilerText = (c) => { this.spoilerText = c; - } + }; setRef = c => { this.composeForm = c; }; handleEmojiPick = (data) => { - const { text } = this.props; - const position = this.autosuggestTextarea.textarea.selectionStart; - const needsSpace = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]); + const { text } = this.props; + const position = this.autosuggestTextarea.textarea.selectionStart; + const needsSpace = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]); this.props.onPickEmoji(position, data, needsSpace); - } + }; - render () { + render() { const { intl, onPaste, showSearch } = this.props; const disabled = this.props.isSubmitting; - let publishText = ''; - if (this.props.isEditing) { - publishText = intl.formatMessage(messages.saveChanges); - } else if (this.props.privacy === 'private' || this.props.privacy === 'direct') { - publishText = {intl.formatMessage(messages.publish)}; - } else { - publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish); + const locale = document.documentElement.lang; + + console.log('is editing', this.props.isEditing); + + + if (locale === 'fr') { + let items = ['Pouet', 'Révolte', 'Couillère', 'Allez viens', 'On est bien', 'Sapristi', 'PWOUINNNN', 'Squalala', 'C\'est parti', 'Allez', 'Roulez jeunesse', 'Magnéto', 'Illuminer le monde']; + + publishText = items[Math.floor(Math.random() * items.length)]; + }else{ + if (this.props.isEditing) { + publishText = intl.formatMessage(messages.saveChanges); + + + } else if (this.props.privacy === 'private' || this.props.privacy === 'direct') { + publishText = + {intl.formatMessage(messages.publish)}; + } else { + publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish); + } } return ( @@ -297,3 +313,4 @@ class ComposeForm extends ImmutablePureComponent { } } +