Skip to content

Commit

Permalink
Merge pull request #2775 from ClearlyClaire/glitch-soc/merge-upstream
Browse files Browse the repository at this point in the history
Merge upstream changes up to c929b4c
  • Loading branch information
ClearlyClaire authored Jul 12, 2024
2 parents 813f86d + 8d2a93b commit 5464224
Show file tree
Hide file tree
Showing 43 changed files with 203 additions and 181 deletions.
4 changes: 2 additions & 2 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-offense-counts --no-auto-gen-timestamp`
# using RuboCop version 1.64.1.
# using RuboCop version 1.65.0.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
Expand All @@ -14,7 +14,7 @@ Lint/NonLocalExitFromIterator:
Metrics/AbcSize:
Max: 90

# Configuration parameters: CountBlocks, Max.
# Configuration parameters: CountBlocks, CountModifierForms, Max.
Metrics/BlockNesting:
Exclude:
- 'lib/tasks/mastodon.rake'
Expand Down
6 changes: 3 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ GEM
css_parser (1.17.1)
addressable
csv (3.3.0)
database_cleaner-active_record (2.1.0)
database_cleaner-active_record (2.2.0)
activerecord (>= 5.a)
database_cleaner-core (~> 2.0.0)
database_cleaner-core (2.0.1)
Expand Down Expand Up @@ -590,8 +590,8 @@ GEM
pastel (0.8.0)
tty-color (~> 0.5)
pg (1.5.6)
pghero (3.5.0)
activerecord (>= 6)
pghero (3.6.0)
activerecord (>= 6.1)
premailer (1.23.0)
addressable
css_parser (>= 1.12.0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ class StatusContent extends PureComponent {

if (mention) {
link.addEventListener('click', this.onMentionClick.bind(this, mention), false);
link.removeAttribute('title');
link.setAttribute('title', `@${mention.get('acct')}`);
link.setAttribute('data-hover-card-account', mention.get('id'));
if (rewriteMentions !== 'no') {
while (link.firstChild) link.removeChild(link.firstChild);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ export default class StatusHeader extends PureComponent {
target='_blank'
onClick={this.handleAccountClick}
rel='noopener noreferrer'
title={status.getIn(['account', 'acct'])}
data-hover-card-account={status.getIn(['account', 'id'])}
>
<div className='status__avatar'>
Expand Down
4 changes: 2 additions & 2 deletions app/javascript/flavours/glitch/features/ui/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ import { clearHeight } from '../../actions/height_cache';
import { expandNotifications, notificationsSetVisibility } from '../../actions/notifications';
import { fetchServer, fetchServerTranslationLanguages } from '../../actions/server';
import { expandHomeTimeline } from '../../actions/timelines';
import initialState, { me, owner, singleUserMode, trendsEnabled, trendsAsLanding } from '../../initial_state';
import initialState, { me, owner, singleUserMode, trendsEnabled, trendsAsLanding, disableHoverCards } from '../../initial_state';

import BundleColumnError from './components/bundle_column_error';
import Header from './components/header';
Expand Down Expand Up @@ -651,7 +651,7 @@ class UI extends PureComponent {

{layout !== 'mobile' && <PictureInPicture />}
<NotificationsContainer />
<HoverCardController />
{!disableHoverCards && <HoverCardController />}
<LoadingBarContainer className='loading-bar' />
<ModalContainer />
<UploadArea active={draggingOver} onClose={this.closeUploadModal} />
Expand Down
2 changes: 2 additions & 0 deletions app/javascript/flavours/glitch/initial_state.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
* @property {boolean} crop_images
* @property {boolean=} delete_modal
* @property {boolean=} disable_swiping
* @property {boolean=} disable_hover_cards
* @property {string=} disabled_account_id
* @property {string} display_media
* @property {string} domain
Expand Down Expand Up @@ -106,6 +107,7 @@ export const boostModal = getMeta('boost_modal');
export const cropImages = getMeta('crop_images');
export const deleteModal = getMeta('delete_modal');
export const disableSwiping = getMeta('disable_swiping');
export const disableHoverCards = getMeta('disable_hover_cards');
export const disabledAccountId = getMeta('disabled_account_id');
export const displayMedia = getMeta('display_media');
export const domain = getMeta('domain');
Expand Down
2 changes: 1 addition & 1 deletion app/javascript/mastodon/components/status.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -562,7 +562,7 @@ class Status extends ImmutablePureComponent {
<RelativeTimestamp timestamp={status.get('created_at')} />{status.get('edited_at') && <abbr title={intl.formatMessage(messages.edited, { date: intl.formatDate(status.get('edited_at'), { year: 'numeric', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }) })}> *</abbr>}
</a>

<a onClick={this.handleAccountClick} href={`/@${status.getIn(['account', 'acct'])}`} data-hover-card-account={status.getIn(['account', 'id'])} className='status__display-name' target='_blank' rel='noopener noreferrer'>
<a onClick={this.handleAccountClick} href={`/@${status.getIn(['account', 'acct'])}`} title={status.getIn(['account', 'acct'])} data-hover-card-account={status.getIn(['account', 'id'])} className='status__display-name' target='_blank' rel='noopener noreferrer'>
<div className='status__avatar'>
{statusAvatar}
</div>
Expand Down
2 changes: 1 addition & 1 deletion app/javascript/mastodon/components/status_content.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ class StatusContent extends PureComponent {

if (mention) {
link.addEventListener('click', this.onMentionClick.bind(this, mention), false);
link.removeAttribute('title');
link.setAttribute('title', `@${mention.get('acct')}`);
link.setAttribute('href', `/@${mention.get('acct')}`);
link.setAttribute('data-hover-card-account', mention.get('id'));
} else if (link.textContent[0] === '#' || (link.previousSibling && link.previousSibling.textContent && link.previousSibling.textContent[link.previousSibling.textContent.length - 1] === '#')) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -435,7 +435,7 @@ class Notification extends ImmutablePureComponent {

const targetAccount = report.get('target_account');
const targetDisplayNameHtml = { __html: targetAccount.get('display_name_html') };
const targetLink = <bdi><Link className='notification__display-name' data-hover-card-account={targetAccount.get('id')} to={`/@${targetAccount.get('acct')}`} dangerouslySetInnerHTML={targetDisplayNameHtml} /></bdi>;
const targetLink = <bdi><Link className='notification__display-name' title={targetAccount.get('acct')} data-hover-card-account={targetAccount.get('id')} to={`/@${targetAccount.get('acct')}`} dangerouslySetInnerHTML={targetDisplayNameHtml} /></bdi>;

return (
<HotKeys handlers={this.getHandlers()}>
Expand All @@ -458,7 +458,7 @@ class Notification extends ImmutablePureComponent {
const { notification } = this.props;
const account = notification.get('account');
const displayNameHtml = { __html: account.get('display_name_html') };
const link = <bdi><Link className='notification__display-name' href={`/@${account.get('acct')}`} data-hover-card-account={account.get('id')} to={`/@${account.get('acct')}`} dangerouslySetInnerHTML={displayNameHtml} /></bdi>;
const link = <bdi><Link className='notification__display-name' href={`/@${account.get('acct')}`} title={account.get('acct')} data-hover-card-account={account.get('id')} to={`/@${account.get('acct')}`} dangerouslySetInnerHTML={displayNameHtml} /></bdi>;

switch(notification.get('type')) {
case 'follow':
Expand Down
4 changes: 2 additions & 2 deletions app/javascript/mastodon/features/ui/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import { clearHeight } from '../../actions/height_cache';
import { expandNotifications } from '../../actions/notifications';
import { fetchServer, fetchServerTranslationLanguages } from '../../actions/server';
import { expandHomeTimeline } from '../../actions/timelines';
import initialState, { me, owner, singleUserMode, trendsEnabled, trendsAsLanding } from '../../initial_state';
import initialState, { me, owner, singleUserMode, trendsEnabled, trendsAsLanding, disableHoverCards } from '../../initial_state';

import BundleColumnError from './components/bundle_column_error';
import Header from './components/header';
Expand Down Expand Up @@ -588,7 +588,7 @@ class UI extends PureComponent {

{layout !== 'mobile' && <PictureInPicture />}
<NotificationsContainer />
<HoverCardController />
{!disableHoverCards && <HoverCardController />}
<LoadingBarContainer className='loading-bar' />
<ModalContainer />
<UploadArea active={draggingOver} onClose={this.closeUploadModal} />
Expand Down
2 changes: 2 additions & 0 deletions app/javascript/mastodon/initial_state.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
* @property {boolean=} boost_modal
* @property {boolean=} delete_modal
* @property {boolean=} disable_swiping
* @property {boolean=} disable_hover_cards
* @property {string=} disabled_account_id
* @property {string} display_media
* @property {string} domain
Expand Down Expand Up @@ -86,6 +87,7 @@ export const autoPlayGif = getMeta('auto_play_gif');
export const boostModal = getMeta('boost_modal');
export const deleteModal = getMeta('delete_modal');
export const disableSwiping = getMeta('disable_swiping');
export const disableHoverCards = getMeta('disable_hover_cards');
export const disabledAccountId = getMeta('disabled_account_id');
export const displayMedia = getMeta('display_media');
export const domain = getMeta('domain');
Expand Down
4 changes: 4 additions & 0 deletions app/javascript/mastodon/locales/be.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,9 @@
"account.follow_back": "Падпісацца ў адказ",
"account.followers": "Падпісчыкі",
"account.followers.empty": "Ніхто пакуль не падпісаны на гэтага карыстальніка.",
"account.followers_counter": "{count, plural, one {{counter} падпісчык} few {{counter} падпісчыкі} many {{counter} падпісчыкаў} other {{counter} падпісчыка}}",
"account.following": "Падпіскі",
"account.following_counter": "{count, plural, one {{counter} падпіска} few {{counter} падпіскі} many {{counter} падпісак} other {{counter} падпіскі}}",
"account.follows.empty": "Карыстальнік ні на каго не падпісаны.",
"account.go_to_profile": "Перайсці да профілю",
"account.hide_reblogs": "Схаваць пашырэнні ад @{name}",
Expand All @@ -61,6 +63,7 @@
"account.requested_follow": "{name} адправіў запыт на падпіску",
"account.share": "Абагуліць профіль @{name}",
"account.show_reblogs": "Паказаць падштурхоўванні ад @{name}",
"account.statuses_counter": "{count, plural, one {{counter} допіс} few {{counter} допісы} many {{counter} допісаў} other {{counter} допісу}}",
"account.unblock": "Разблакіраваць @{name}",
"account.unblock_domain": "Разблакіраваць дамен {domain}",
"account.unblock_short": "Разблакіраваць",
Expand Down Expand Up @@ -412,6 +415,7 @@
"limited_account_hint.title": "Гэты профіль быў схаваны мадэратарамі",
"link_preview.author": "Ад {name}",
"link_preview.more_from_author": "Больш ад {name}",
"link_preview.shares": "{count, plural, one {{counter} допіс} few {{counter} допісы} many {{counter} допісаў} other {{counter} допісу}}",
"lists.account.add": "Дадаць да спісу",
"lists.account.remove": "Выдаліць са спісу",
"lists.delete": "Выдаліць спіс",
Expand Down
4 changes: 4 additions & 0 deletions app/models/concerns/user/has_settings.rb
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,10 @@ def setting_disable_swiping
settings['web.disable_swiping']
end

def setting_disable_hover_cards
settings['web.disable_hover_cards']
end

def setting_always_send_emails
settings['always_send_emails']
end
Expand Down
1 change: 1 addition & 0 deletions app/models/user_settings.rb
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ class KeyError < Error; end
setting :use_pending_items, default: false
setting :use_system_font, default: false
setting :disable_swiping, default: false
setting :disable_hover_cards, default: false
setting :delete_modal, default: true
setting :reblog_modal, default: false
setting :favourite_modal, default: false
Expand Down
1 change: 1 addition & 0 deletions app/serializers/initial_state_serializer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ def meta
store[:expand_spoilers] = object_account_user.setting_expand_spoilers
store[:reduce_motion] = object_account_user.setting_reduce_motion
store[:disable_swiping] = object_account_user.setting_disable_swiping
store[:disable_hover_cards] = object_account_user.setting_disable_hover_cards
store[:advanced_layout] = object_account_user.setting_advanced_layout
store[:use_blurhash] = object_account_user.setting_use_blurhash
store[:use_pending_items] = object_account_user.setting_use_pending_items
Expand Down
1 change: 1 addition & 0 deletions app/views/settings/preferences/appearance/show.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
= ff.input :'web.auto_play', wrapper: :with_label, recommended: true, label: I18n.t('simple_form.labels.defaults.setting_auto_play_gif')
= ff.input :'web.reduce_motion', wrapper: :with_label, label: I18n.t('simple_form.labels.defaults.setting_reduce_motion')
= ff.input :'web.disable_swiping', wrapper: :with_label, label: I18n.t('simple_form.labels.defaults.setting_disable_swiping')
= ff.input :'web.disable_hover_cards', wrapper: :with_label, label: I18n.t('simple_form.labels.defaults.setting_disable_hover_cards')
= ff.input :'web.use_system_font', wrapper: :with_label, label: I18n.t('simple_form.labels.defaults.setting_system_font_ui')
= ff.input :'web.use_system_emoji_font', wrapper: :with_label, label: I18n.t('simple_form.labels.defaults.setting_system_emoji_font'), glitch_only: true

Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.da.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ da:
setting_default_privacy: Fortrolighed for indlæg
setting_default_sensitive: Markér altid medier som sensitive
setting_delete_modal: Vis bekræftelsesdialog før et indlæg slettes
setting_disable_hover_cards: Deaktivér profilforhåndsvisning ved svæv (hover)
setting_disable_swiping: Deaktivér strygebevægelser
setting_display_media: Medievisning
setting_display_media_default: Standard
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.de.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ de:
setting_default_privacy: Beitragssichtbarkeit
setting_default_sensitive: Medien immer mit einer Inhaltswarnung versehen
setting_delete_modal: Bestätigungsdialog beim Löschen eines Beitrags anzeigen
setting_disable_hover_cards: Profilvorschau deaktivieren, wenn die Maus über das Profil bewegt wird
setting_disable_swiping: Wischgesten deaktivieren
setting_display_media: Darstellung von Medien
setting_display_media_default: Standard
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ en:
setting_default_privacy: Posting privacy
setting_default_sensitive: Always mark media as sensitive
setting_delete_modal: Show confirmation dialog before deleting a post
setting_disable_hover_cards: Disable profile preview on hover
setting_disable_swiping: Disable swiping motions
setting_display_media: Media display
setting_display_media_default: Default
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.es-AR.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ es-AR:
setting_default_privacy: Privacidad de mensajes
setting_default_sensitive: Siempre marcar medios como sensibles
setting_delete_modal: Mostrar diálogo de confirmación antes de eliminar un mensaje
setting_disable_hover_cards: Deshabilitar previsualización del perfil al pasar el cursor
setting_disable_swiping: Deshabilitar movimientos de deslizamiento
setting_display_media: Visualización de medios
setting_display_media_default: Predeterminada
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.es-MX.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ es-MX:
setting_default_privacy: Privacidad de publicaciones
setting_default_sensitive: Marcar siempre imágenes como sensibles
setting_delete_modal: Mostrar diálogo de confirmación antes de borrar un toot
setting_disable_hover_cards: Desactivar vista previa del perfil al pasar el cursor
setting_disable_swiping: Deshabilitar movimientos de deslizamiento
setting_display_media: Visualización multimedia
setting_display_media_default: Por defecto
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.es.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ es:
setting_default_privacy: Privacidad de publicaciones
setting_default_sensitive: Marcar siempre imágenes como sensibles
setting_delete_modal: Mostrar diálogo de confirmación antes de borrar una publicación
setting_disable_hover_cards: Desactivar vista previa del perfil al pasar el cursor
setting_disable_swiping: Deshabilitar movimientos de deslizamiento
setting_display_media: Visualización multimedia
setting_display_media_default: Por defecto
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.fi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ fi:
setting_default_privacy: Julkaisun näkyvyys
setting_default_sensitive: Merkitse media aina arkaluonteiseksi
setting_delete_modal: Kysy vahvistusta ennen julkaisun poistamista
setting_disable_hover_cards: Poista käytöstä profiilin esikatselu osoitettaessa
setting_disable_swiping: Poista pyyhkäisyeleet käytöstä
setting_display_media: Median näyttäminen
setting_display_media_default: Oletus
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.fo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ fo:
setting_default_privacy: Hvussu privatir eru postar?
setting_default_sensitive: Merk altíð miðlafílur sum viðkvæmar
setting_delete_modal: Vís váttanarmynd, áðrenn postar verða strikaðir
setting_disable_hover_cards: Ger undanvísing, tá músin verður flutt yvir vangan, óvirkna
setting_disable_swiping: Ger sveipurørslur óvirknar
setting_display_media: Vístir miðlar
setting_display_media_default: Sjálvvirði
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.gl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ gl:
setting_default_privacy: Privacidade da publicación
setting_default_sensitive: Marcar sempre multimedia como sensible
setting_delete_modal: Solicitar confirmación antes de eliminar unha publicación
setting_disable_hover_cards: Desactivar vista previa do perfil ao poñerse enriba
setting_disable_swiping: Desactivar opcións de desprazamento
setting_display_media: Mostrar multimedia
setting_display_media_default: Por defecto
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.is.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ is:
setting_default_privacy: Gagnaleynd færslna
setting_default_sensitive: Alltaf merkja myndefni sem viðkvæmt
setting_delete_modal: Birta staðfestingarglugga áður en færslu er eytt
setting_disable_hover_cards: Gera óvirka forskoðun notandasniðs við yfirsvif
setting_disable_swiping: Gera strokuhreyfingar óvirkar
setting_display_media: Birting myndefnis
setting_display_media_default: Sjálfgefið
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.it.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ it:
setting_default_privacy: Privacy dei post
setting_default_sensitive: Segna sempre i media come sensibili
setting_delete_modal: Mostra dialogo di conferma prima di eliminare un post
setting_disable_hover_cards: Disabilita l'anteprima del profilo al passaggio del mouse
setting_disable_swiping: Disabilita i movimenti di scorrimento
setting_display_media: Visualizzazione dei media
setting_display_media_default: Predefinita
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.nl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ nl:
setting_default_privacy: Zichtbaarheid van nieuwe berichten
setting_default_sensitive: Media altijd als gevoelig markeren
setting_delete_modal: Vraag voor het verwijderen van een bericht een bevestiging
setting_disable_hover_cards: Profielvoorbeeld uitschakelen bij zweven
setting_disable_swiping: Swipebewegingen uitschakelen
setting_display_media: Mediaweergave
setting_display_media_default: Standaard
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.pl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ pl:
setting_default_privacy: Widoczność wpisów
setting_default_sensitive: Zawsze oznaczaj zawartość multimedialną jako wrażliwą
setting_delete_modal: Pytaj o potwierdzenie przed usunięciem wpisu
setting_disable_hover_cards: Wyłącz podgląd profilu po najechaniu
setting_disable_swiping: Wyłącz ruchy przesuwania
setting_display_media: Wyświetlanie zawartości multimedialnej
setting_display_media_default: Domyślne
Expand Down
1 change: 1 addition & 0 deletions config/locales/simple_form.pt-PT.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ pt-PT:
setting_default_privacy: Privacidade da publicação
setting_default_sensitive: Marcar sempre os media como problemáticos
setting_delete_modal: Solicitar confirmação antes de eliminar uma publicação
setting_disable_hover_cards: Desativar visualização de perfil ao passar o cursor
setting_disable_swiping: Desativar os movimentos de deslize
setting_display_media: Visualização de media
setting_display_media_default: Pré-definição
Expand Down
Loading

0 comments on commit 5464224

Please sign in to comment.