無料ブログ「rentafree.net」の管理人ブログ

Android版のGoogle Chromeを試してみました

うちのブログエディターはタッチパネルだといろいろ厳しい状況なのですが、
今回、Android版のGoogle Chromeを試してみました。

ChromeはAndroid 4.1から標準ブラウザに代わってAndroid標準のブラウザになる感じみたいですが、
以前の標準ブラウザもChromeも同じWebkitなので大差なさそうな気もしますが、
何故か結構違う感じでした。

これまでは標準ブラウザでもその他のWebkitブラウザでも、
contenteditable(ブログエディターの表示を見ながら編集できる部分)上に文字入力をする際、
日本語IMだと変換確定まで何も表示されず、変換確定時には最初の1文字だけ入力される。
という致命的な状況でしたが、
Chromeの場合は日本語IMでも入力中にそのまま表示されるので、文字入力はできるようです。

その他気づいた点は、
標準ブラウザはoncontextmenuイベントが発生しませんでしたが、contenteditable上を含めて発生するようです。
ただし、テキスト選択になってしまう場合は発生しないようなので問題は残ります。
contextmenuに関しては、今までイベントが発生するのはFirefoxだけでしたが、
Firefoxはcontenteditable上では完全に発生しないので、Chromeのが解決近いかも・・・
この問題が解決すれば、PCのChromeと同じく旧バージョンのエディタになりますが、エディタのフル機能が使えるかも・・・

あと、
標準ブラウザは
<input type="range">
<input type="number">
に対応していませんでしたが、Chromeは対応してるぽい。
<input type="number">
は、スピンボタンが表示されませんが、
タッチだとスピンボタンの操作は無理があるので悪くないかも。
Operaはモバイルでもスピンボタンが表示されますが、小さすぎてタッチ無理。


そんな感じです。
Firefoxと同じで、
選択範囲の操作はできない感じですが、文字入力はできるので最低限の記事編集は出来そうです。

Nexus 7 近日日本発売みたいですね。

IEの脆弱性が報告されています

IEの脆弱性が報告されています。

対象バージョン
Internet Explorer 7
Internet Explorer 8
Internet Explorer 9

JVNの説明を見た感じでは、先日のJavaの脆弱性よりも攻撃は難しそうに感じますが、
「緊急」で同等の脆弱性に分類されているようです。

現時点でMicrosoftから対策アップデートは公開されていないようですが、公開予定とのことです。


IEを利用中の方は下のリンク先に脆弱性に関する情報が記載されていますので確認することをお勧めします。
JVNVU#480095

脆弱性識別番号(JVNVU#480095)でググるとさらに情報が得られると思います。



*追記
Microsoftからアップデートが出ているみたいです。
IEを利用している方はアップデートしたほうがいいと思います。

改善したい問題点等

IEのステルスアップデート?で問題が発生するようになっていたので、また問題が生じるようにならないか気になりますが、
かなり重要な問題と考えていた、IEのEnter問題は解決出来ましたが、
その他で把握していて改善したい問題点。

1. ブログエディターでOperaのEnterを<br>にできない。
2. タッチパネル機でコンテキストメニューが出ない。

まあ、以前から何度か書いてますが、こんなところ。

OperaのEnterは、
他ブラウザはEnter入力時に<p>や<div>ではなく<br>を挿入するように処理していますが、
元々は、他ブラウザと共通処理をするとキャレットが消滅するという現象が発生していました。
どうもこの現象、selectionを削除するとscriptでselectionを設定してもキャレットが表示されない。
という事のようで、
今回の対IE用の修正で、selection自体は削除せずにrangeのみ操作するように修正したのですが、
それにより、同じ処理をOperaで行なってもキャレットは消滅しなくなりました。
が、<br>を挿入しているのでキャレットは次の行に移動して欲しいところですが、移動しないようなので処理を分けたままにしています。
この問題の解決のために、いろいろな方法でrange置換を試していますが、Operaでの解決方法は見つかっていません。
解決方法が見つかり次第対応したいです。

タッチパネル機でコンテキストメニューが出ないのは、
マウスの無いタッチパネル機では、右クリックの代わりに長押しでコンテキストメニューが出て欲しいところですが、
主要ブラウザのどれもcontenteditable上でコンテキストメニューは普通にはでません。出す方法も見つかっていません。
Firefox以外では、contenteditable以外に関してもコンテキストメニュー出ませんし、oncontextmenuイベントすら発生しない。
ブラウザアップデートでPCブラウザと同じような動作をしてくれるようになってくれないと厳しい。
タッチパネル機のために右クリック操作を捨てるとPCで編集しにくくなってしまうと思いますし。


あとは、
* CSSのviewportによる公式サイト全体のモバイル機器での縮小表示回避。(Opera以外未実装)
* ブログエディターの<menu>でのコンテキストメニュー拡張。(Firefox以外未実装)
* <input type="range">とかHTML5の<input>。(OperaとWebkitは随分前から実装してるんだが・・・)
* ログインフォームを<iframe srcdoc seamless sandbox>にしてセキュリティーを高めたい。(Webkitは実装しているが、全ブラウザ問題あり)
こんなところ。
ブラウザ実装が進まないと対応できない。

ブログエディターの改行処理を修正しました

度々修正しているブログエディターの改行処理ですが、また修正しました。
IE9及びIE10でEnter時にキャレットが移動しない場合がある問題が発生していましたが、今回の修正で解決出来ました。
表面上はIE9又はIE10のみ挙動が変わるはずですが、旧エディター、新エディター、両方共修正しています。

ブログエディターの改行処理では、
Operaにおいて他ブラウザと同じ処理を行うとキャレットが消滅する問題があるためOperaはEnterが<br>ではなくブラウザ標準の<p>となりますが、
今回の修正後の処理をOperaに適用するとキャレットが消滅問題が回避できたのですが、
それでもキャレットが移動しない問題が発生したため、Operaは除外のままです。(Operaは<br>ではなく<p>のままです)
この問題も、解決方法が見つかったら対処したいです。

また、今回の修正の際に、
セレクション内にレンジが複数ある状態の場合、独自処理を行わないように変更しました。
以前の仕様では、セレクション内にレンジが複数ある場合は全て削除して<br>を挿入していましたが、
複数レンジの選択というのは、主要ブラウザではFirefox以外では行うことができない行為なので不要と判断しました。

ブログエディターを若干修正しました

ブラウザのウインドウサイズが小さい場合にエディター上部のボタンが右の「ソース」と重なる場合があったのを、
左側にmargin:80px確保して重ならないようにしました。

画面の小さいモバイル機器のための修正ですが、
タッチパネルによる右クリックの問題がまだ解決できてませんので、タブレット等での編集はPCに比べて機能が制限されます。

変更したのはFirefox用の新エディターのみです。

「よくありそうな質問」を修正しました

公式サイトの「よくありそうな質問」の「日本語以外のサイトを作っていいですか?」を修正しました。

元々この項目は、
「外国語の広告が用意できないため。」
として禁止していましたが、
「法律上問題がないか確認が難しいため。」
に変更しました。

サイト自体は日本語でできていて、一部に外国語のページがあるような場合はサイトの内容は大体把握できると思いますので許可します。
サイト全体が外国語のサイトを作りたい場合でも、事前に内容の報告をしていただければ許可できると思います。

無許可で外国語のサイトの作成は、ちょくちょくあるんですが、配信止めてます。

ちなみに、公式サイトの「よくありそうな質問」は、
こっそり変更してることがあります。

Firefox 17 でsandboxが実装されるみたい・・・

Firefox 17 で<iframe>のsandboxが実装されるぽい。
トップページのログインフォームのセキュリティー改善のために、
<iframe srcdoc seamless sandbox>
使いたいんだが、srcdocとseamlessはまだなのかな?
というか、Firefox 17の時点でまだまだだな・・・


先月はほとんどサービスの修正はしませんでしたが、今月も予定なしです。

いつの間にか発生するようになっていた、IE 9,10で初回Enter時にキャレットが移動しない問題はどうにかしたいが、
document.selection使う方法を試してみたが、
IE10でなんか警告(コンソール開かないと気づかない)が出ちゃうのでやめた。
Operaにも改行の問題があるが、document.selectionは、Operaにはついてない機能みたい。

他にもHTML5の新機能で利用したいのがいくつかあるが、ブラウザの実装が進んでない・・・