Project

General

Profile

機能 #1337

汎用Modelビューア

Added by toshi_a 初音 6 months ago. Updated 6 months ago.

Status:
終了
Priority:
通常
Target version:
Start date:
2019-05-26
Due date:
% Done:

0%

プラグイン名:
modelviewer

Description

プロフィールタブやメッセージ詳細といったプラグインで個別に対応するのを止め、特定のModelに着目したタブを表示するプラグインを新設する。

目標

  • World追加系プラグインを作ったときに、プロフィールタブなどの実装を簡単にする
  • それを使って現在のTwitterのプロフィールと同様のことを実現できる
  • これを利用して、Mastodonのプロフィール画面などを作る

サードパーティプラグイン

以下のようなコードで、Modelに対応したIntentが定義され、それを発行すれば開けるようにする。画面レイアウトとしては、今と同じように左に model.icon の画像があれば表示して、右側にkey-valueリストを表示する。
このkey-valueリストだけは自動的に判別できないので、開発者にコーディングしてもらう。

defmodelviewer(model_slug_or_class) do |model|
  [
   ['名前', model.title]
   ['所属インスタンス', model.instance.domain]
  ]
end
  • model_slug_or_class: ビューアを定義する対象となるModel

ユーザの操作などでModelが開かれたときに呼ばれるブロック:

  • model: 対象となるDiva::Model

fragmentの拡張

deffragment model_slug_or_class, fragment_slug, name do |model|
  set_icon Skin[:timeline]
  tl = timeline()
  tl << model.latest_toot
end
  • model_slug_or_class: fragmentを定義する対象となるModel
  • fragment_slug: fragmentの固有名。並び替えに必要になりそうだけど、実際どうなんかな
  • label: タブの名前
  • model: 対象となるDiva::Model

現在だとプロフィールタブの下にいっぱいあるタブ。defmodelviewerの中で定義せず、Modelに関連付ける。
あとから動的に差し込んだり、modelviewerを定義したのと異なるプラグインでfragmentを拡張できるようにすることで、プラグインを分けられるようにする。

その他

プロフィールのレジュームについて

user_detail_viewプラグインでは起動後に前回終了時に開いていたタブをレジュームするが、modelviewerでは実装しない。
人類はタブを閉じないが、今のmikutterには大量のタブを管理する良い方法がない。

Associated revisions

Revision b9fc3a25 (diff)
Added by toshi_a 初音 6 months ago

[mastodon] modelviewerでユーザプロフィールを表示する refs #1337

Revision 7f5efca1 (diff)
Added by toshi_a 初音 6 months ago

[mastodon] プロフィールタブ再起動したら残ってる refs #1337

Revision 1e28ec57 (diff)
Added by toshi_a 初音 6 months ago

[mastodon] AccountFieldをScoreに対応させる refs #1337

Revision b98d3584 (diff)
Added by toshi_a 初音 6 months ago

Pango::FontDescriptionに文字の描画サイズを返す機能を追加 refs #1337

Revision 2a375d55 (diff)
Added by toshi_a 初音 6 months ago

IntelligentTextViewを絵文字に対応させる refs #1337

Revision 442e8431 (diff)
Added by toshi_a 初音 6 months ago

[modelviewer] ヘッダのフィールドの値はScoreに対応したModelを受け付ける refs #1337

Revision 37d165bc (diff)
Added by toshi_a 初音 6 months ago

[mastodon] プロフィール補足情報のURLリンク、絵文字に対応 refs #1337

History

#1

Updated by toshi_a 初音 6 months ago

  • Status changed from 新規 to 実装待ち

topic/1337-modelviewer ブランチにて進行中。

あとやりたいこと:
  • ユーザの名前とかは大きめに表示したいのでなにか方法を
  • ヘッダの右側をIntelligentTextviewとかで表示する
#2

Updated by toshi_a 初音 6 months ago

  • Status changed from 実装待ち to 終了

Also available in: Atom PDF