プロジェクト

全般

プロフィール

Bug(バグ) #3364

スマートフォン向けUIで、ホーム画面以外から「PC表示に切り替え」ボタンを押した場合の挙動が正しくない

Youichi Kimuraほぼ11年前に追加. 約7年前に更新.

ステータス:
Won't fix(対応せず)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2013-06-17
期日:
進捗率:

0%

3.6 で発生するか:
No (いいえ)
3.8 で発生するか:
Yes (はい)

説明

現象

スマートフォン端末で、メンバー検索 (/member/search) やフレンドリスト (/friend/list) のようにURLのパスが2階層以上のページで「PC表示に切り替え」ボタンを押すと、PC向け画面に切り替わらずにホーム画面に移動する。また、「PC表示に切り替え」ボタンを押したページの階層以下でのみPC向け画面で表示される。

  1. スマートフォン端末から、コミュニティ検索 (/community/search) を開く
  2. 「PC表示に切り替え」ボタンを押す
  3. ホーム画面に移動するが、スマートフォン向け画面のまま表示される
  4. メンバー検索 (/member/search) など異なる階層のページでもスマートフォン向け画面となる
  5. コミュニティ検索 (/community/search) やコミュニティ作成 (/community/edit) ではPC向け画面に切り替わっている

原因

source:web/js/smt_main.js の「PC向け表示」ボタンに関するコードは下記のようになっている。

  $('#smt-switch')
    .show()
    .click(function() {
      document.cookie = "disable_smt=1";
      location.href = $(this).attr('href');
    });

document.cookie によって Cookie を設定しているが path が指定されていない。path が指定されていない場合のデフォルト値は、表示中のページのパスとなる。つまり、コミュニティ検索 (/community/search) ページの場合は /community/ が path にセットされる。よって、この場合は /community/ 以下の階層のページで disable_smt の値が有効となり、それ以外のページでは依然としてスマートフォン向け画面が表示されることになる。

修正内容

#3365 によって openpne.baseUrl を追加した上で、Cookie 設定時の path に openpne.baseUrl を指定することによって SNS 内の全てのページで disable_smt の値が有効となるようにする。


関連するチケット

ブロック元 OpenPNE 3 - Enhancement(機能追加・改善) #3365: OpenPNEが設置されているURLをJavaScriptコードから取得できるようにする Won't fix(対応せず) 2013-06-17
コピー先 OpenPNE 3 - Backport(バックポート) #3713: スマートフォン向けUIで、ホーム画面以外から「PC表示に切り替え」ボタンを押した場合の挙動が正しくない Invalid(無効) 2013-06-17
コピー先 OpenPNE 3 - Backport(バックポート) #3714: スマートフォン向けUIで、ホーム画面以外から「PC表示に切り替え」ボタンを押した場合の挙動が正しくない Fixed(完了) 2013-06-17

関係しているリビジョン

リビジョン b460dfa0 (差分)
Youichi Kimuraほぼ11年前に追加

fix bug in switching smartphone/PC layout (fix #3364)

履歴

#1 Youichi Kimuraほぼ11年前に更新

  • 説明 を更新 (diff)
  • ステータスNew(新規) から Accepted(着手) に変更

#2 Youichi Kimuraほぼ11年前に更新

  • 説明 を更新 (diff)

#3 Youichi Kimuraほぼ11年前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 b460dfa0c0e3c7fa022304f448fe15cfd21d26b9 で適用されました。

#4 isao sano9年以上前に更新

  • コピー先 Backport(バックポート) #3713: スマートフォン向けUIで、ホーム画面以外から「PC表示に切り替え」ボタンを押した場合の挙動が正しくない を追加

#5 isao sano9年以上前に更新

  • コピー先 Backport(バックポート) #3714: スマートフォン向けUIで、ホーム画面以外から「PC表示に切り替え」ボタンを押した場合の挙動が正しくない を追加

#6 kaoru n7年以上前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更

openpne.baseUrl が定義・設定されていないので、 例の 1, 2, において、path が /community/ に設定されます。

なお、opMessagePlugin の場合は、下記のように定義・設定されています。
https://github.com/tejimaya/opMessagePlugin/blob/master/web/js/smt-message.js#L37-L41

#7 Youichi Kimura7年以上前に更新

  • ステータスRejected(差し戻し) から Pending Review(レビュー待ち) に変更
  • 3.6 で発生するかUnknown (未調査) から No (いいえ) に変更
  • 3.8 で発生するかUnknown (未調査) から Yes (はい) に変更

b460dfa0 の修正は #3365 で追加される openpne.baseUrl に依存するため、 #3365 が先に取り込まれている必要があります。
(#3365 の 3.8.x 向けバックポートを #3989 に作成しておきました)

#8 kaoru n7年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

レビューOKです

#9 isao sano約7年前に更新

  • ステータスPending Testing(テスト待ち) から Won't fix(対応せず) に変更
  • 進捗率70 から 0 に変更

OpenPNE 3.8.21 にて対応済みであったため、対応せずとします。

他の形式にエクスポート: Atom PDF