misskey icon indicating copy to clipboard operation
misskey copied to clipboard

feat:フォロー/フォロワーを非公開としている場合、表示は「0」ではなく鍵アイコンを表示するように

Open mappi-pr opened this issue 2 years ago • 10 comments

What

Feat #10887 今までフォロー/フォロワーを非公開にしていた場合、 クライアント上での表示が0/0となっていましたが これを非公開/非公開としたいです。

また、設定が非公開となっている場合でもフォロー一覧、フォロワー一覧へのリンクが貼られてしまっているため これについても非公開の場合にはリンクしないようにしています。

Why

フォロー/フォロワーを非公開にしたユーザが真に0/0なのか、非公開状態なのか見分けがつかないため また、これにより一部のユーザが他ユーザのフォロー状況を正しく認知できていないため

Additional info (optional)

表示の範囲

  自分自身 フォローしているユーザ フォローしていないユーザ
公開 表示される 表示される 表示される
フォロワーのみ 表示される 表示される 「非公開」
非公開 表示される 「非公開」 「非公開」

コーディングについて

定数"isFfVisibility" を追加し無名関数で非公開状態のチェックをしてますが、 各画面で冗長的に処理が記載されております。 共通化すべきなど、Misskeyとしてのお作法がありましたらご教示いただけますでしょうか。

対応後イメージ

①ユーザページ image

②フォロー一覧ページ image

③タイムラインのポップアップ image

Checklist

  • [x] Read the contribution guide
  • [x] Test working in a local environment
  • [ ] (If needed) Add story of storybook
  • [x] (If needed) Update CHANGELOG.md
  • [ ] (If possible) Add tests

mappi-pr avatar Jun 01 '23 03:06 mappi-pr

Codecov Report

Merging #10934 (c7c5121) into develop (84d3a06) will decrease coverage by 0.13%. The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop   #10934      +/-   ##
===========================================
- Coverage    77.33%   77.21%   -0.13%     
===========================================
  Files          907      737     -170     
  Lines        91480    70136   -21344     
  Branches      7546     7051     -495     
===========================================
- Hits         70748    54154   -16594     
+ Misses       20732    15982    -4750     

see 170 files with indirect coverage changes

codecov[bot] avatar Jun 01 '23 03:06 codecov[bot]

@mappi-pr PRありがとうございます🫶

定数"isFfVisibility" を追加し無名関数で非公開状態のチェックをしてますが、 各画面で冗長的に処理が記載されております。

各画面で共有するロジックは src/scripts に置いているので、そちらに共通化するとより良いかと思います!


「非公開」の表示ですが、漢字が並ぶのはデザイン上窮屈な印象を感じます - くらいで良いのかなと思っています

この辺は @syuilo の意見も気になるところです

私からは以上です 🙇🏻

EbiseLutica avatar Jun 04 '23 04:06 EbiseLutica

ti-lock とか表示させるのでもいいかも

syuilo avatar Jun 04 '23 05:06 syuilo

@EbiseLutica @syuilo レビューいただきありがとうございます!

取り急ぎ表示の調整からさせていただきたく、 ti-lockで表示してみるとこんな感じになるのですが、いかがでしょうか・・・? image

mappi-pr avatar Jun 04 '23 07:06 mappi-pr

YOSASOU

syuilo avatar Jun 04 '23 07:06 syuilo

ti-lock めっちゃいいですね!!

(タップしたらがちゃがちゃ動いて欲しいって思った)

EbiseLutica avatar Jun 04 '23 07:06 EbiseLutica

あ、未ログイン状態でユーザーページにアクセスすると $i.idが読み取れなくてページが表示できなかったです。。。 直せるかどうかちょっと見てみます。

mappi-pr avatar Jun 04 '23 13:06 mappi-pr

@EbiseLutica

(タップしたらがちゃがちゃ動いて欲しいって思った)

mfmのshakeの感じでがちゃがちゃっとやってみました! (ちょっとうるさすぎ感もありますが。。。) isCatのネコ耳同様に、アニメーションOFFだと反応しないようになっています。

@syuilo アニメーション不要であれば、削除して再コミットします!

https://github.com/misskey-dev/misskey/assets/75538777/339f5aa3-c0ce-407a-bbb0-8469a214ad2d

mappi-pr avatar Jun 05 '23 03:06 mappi-pr

@EbiseLutica @syuilo 修正が完了いたしましたので、再度レビューお願いできますでしょうか。

レビュー後改定点

1. 非公開の場合の表示を鍵アイコンに変更 非公開の場合の表示を「非公開」の文字列から、鍵アイコンで表示するように変更いたしました。 これに伴い、PR/Chengelogのタイトルを変更いたしました。

2. 関数isFfVisibilityを共通関数化 非表示チェックを共通関数化し、/src/scripts 配下に新規ファイルとして切り出しました。 これに伴い、Null除けを考慮して一部処理順を変更しております。 (ログイン時・非ログイン時ともに、画面表示可能なことを確認済です)

3.マウスホバー時のアニメーションの追加 各画面にて、鍵アイコンがホバーされたときにロックされているかのようなガチャガチャとしたアニメーションを追加しました。 これらのアニメーションは、設定の「UIのアニメーションを減らす」で制御可能にしております。

https://github.com/misskey-dev/misskey/assets/75538777/339f5aa3-c0ce-407a-bbb0-8469a214ad2d

改定後イメージ

①ユーザページ image

②フォロー一覧ページ image

③タイムラインのポップアップ image

mappi-pr avatar Jun 05 '23 06:06 mappi-pr

ちょっと調整してからマージ

syuilo avatar Jul 08 '23 12:07 syuilo

単純に要素ごと消す実装にしてみました 🙏🏻

syuilo avatar Jul 18 '23 10:07 syuilo

@syuilo ありがとうございます💕

mappi-pr avatar Jul 18 '23 10:07 mappi-pr