LoginSignup
6
6

More than 5 years have passed since last update.

Android 6.0のFloating ActionModeに対応する必要があるもの/ないもの

Last updated at Posted at 2015-10-13

Floating ActionModeとは

iPhoneみたいに、長押ししたそばにコピペのオペレーションメニューがポップアップで出る
機能です。
(どうやってアップルの特許を回避したのかが、個人的には気になりますね・・・w)

Floating ActionMode
https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-text-selectionから引用

リファレンスによると、「startActionModeの第二引数でActionMode.TYPE_FLOATINGを指定せよ」みたいなことが書いてあります。

通常のTextViewは特に対応不要

Editor: Turn on Floating Toolbar Action Mode for Text Selection
https://android.googlesource.com/platform/frameworks/base/+/b8ed5b75da7b48e3f5c40cd9bae1d29fd5a8db9b%5E%21/core/java/android/widget/Editor.java

これのおかげで、特になにもActionModeにカスタマイズをしていないTextView(もしくはそれを継承したクラス)は、かってにFloating ActionModeがサポートされます

WebViewは・・・

TextViewじゃない、自前実装でもないテキストは、だいたいWebViewですが、
10/9現在、最新の「AndroidシステムのWebView」を利用しても、Floating ActionModeにはなっていませんし、Floating ActionModeを独自で使う、ということもおそらくできません。

[Android] Supporting floating select ActionModes for web content

Add floating toolbar support for web content selections.
BUG=389153
Review URL: https://codereview.chromium.org/1242613002

https://chromium.googlesource.com/chromium/src.git/+/98a1a3a17168e4b61e723dc973dad81c1190d78a%5E%21/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java

ただ、じつはFloating ActionModeに対応することじたいは、もう対応が入っています。
ContentViewCore.java.jpg

しらべてみたところ、Chromium 46くらい(上のスクリーンショットは48ですがw)でマージされているのに対し、10月9日現在世の中に出回っているAndroid WebViewはchromium 45

つまり、もうしばらくしてAndroidシステムのWebViewが46にアップデートされれば、なにもしなくても、WebViewのテキストもFloating ActionModeをサポートするようになります!

結論

変なカスタマイズを作りこもうとせず、気長に待つのが一番です!

 
 

補足(2015/10/21 追記)

とかいってたら、Chrome 46がリリースされましたね。
http://googlechromereleases.blogspot.jp/2015/10/stable-channel-update-for-chrome-os_20.html

Floating Action Modeが使えるようになってました。
Screenshot_20151021-192318.png

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6