Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AVIM - Firefox - Tự bỏ hết dấu khi comment trên Facebook #105

Closed
thuandt opened this issue Nov 19, 2014 · 16 comments
Closed

AVIM - Firefox - Tự bỏ hết dấu khi comment trên Facebook #105

thuandt opened this issue Nov 19, 2014 · 16 comments
Assignees

Comments

@thuandt
Copy link

thuandt commented Nov 19, 2014

Mình dùng AVIM trên Firefox đã nhiều năm nay và không có vấn đề gì cả.

Sau bản cập nhật vừa rồi *.5.0.3, khi gõ Tiếng Việt bằng AVIM trên Facebook mình bị hiện tượng như sau: khi gõ comment một post trên facebook, gõ tiếng việt có dấu bình thường, nhưng nếu đánh space rồi backspace lại thì nó tự strip hết dấu đi chỉ còn Tiếng Việt không dấu. Trước khi cập nhật mình không bị vậy.

Hiện tượng này chỉ xảy ra khi comment còn post bài mới thì vẫn bình thường.

Mình sử dụng Facebook giao diện Tiếng Anh, Firefox 33.0, Hệ điều hành: Ubuntu 14.04. Mình dùng khá nhiều Addons, tuy nhiên với phiên bản trước của AVIM thì không bị vậy.

@1ec5
Copy link
Owner

1ec5 commented Nov 19, 2014

Đáng tiếc là mình không gặp được vấn đề này trong Firefox 33.0 trên Mac. :-\ Mình sẽ thử trên Ubuntu lát nữa. Trong số addon có cài addon nào có liên quan đến bàn phím hay từ điển không? Ngoài ra, vấn đề này có xảy ra trên trang khác nào không? (Facebook hơi khó kiểm tra chắc chắn vì mỗi người xem một trang hơi khác do A/B testing.)

@thuandt
Copy link
Author

thuandt commented Nov 20, 2014

Kì lạ là vấn đề này chỉ xảy ra trên Facebook không xảy ra với các trang khác và nếu sử dụng phiên bản stable cũ (20080728.450) thì không vấn đề gì.

Những Addons mình đang sử dụng:

Software:Firefox 33.0 (20141013200257)
OS:Linux (x86_64-gcc3)

-AVIM 20080728.450
-Adblock Plus 2.6.6
-Adblock Plus Pop-up Addon 0.9.2
-BitTorrent WebUI+ 0.2.3.0
-DownThemAll! 2.0.17
-Download YouTube Videos as MP4 1.7.30
-Element Hiding Helper for Adblock Plus 1.3
-FlashGot 1.5.6.7
-HTTPS-Everywhere 4.0.2
-LastPass 3.1.54
-MEGA 2.0.195
-NoScript 2.6.9.4
-Organize Search Engines 1.7
-Pentadactyl hg7127
-Pushbullet 36
-Session Manager 0.8.1.7pre20141016b
-Thumbnail Zoom Plus 3.1
-Tumblr Post 1.36
-Ubuntu Firefox Modifications 2.9
-YouTube Auto Replay 2.91
-YouTube High Definition 33.5
-YouTube Unblocker 0.6.5

@1ec5
Copy link
Owner

1ec5 commented Nov 20, 2014

Cám ơn bạn. Nếu cài đặt 20080728.525 hay 20080728.524 có gặp vấn đề không?

@1ec5
Copy link
Owner

1ec5 commented Nov 20, 2014

Mình đã thử trong Ubuntu như vẫn không thấy gì. (Mình không cài được một số phần mở rộng ở trên như DjView.) Nếu bạn tạm vô hiệu hóa những phần mở rộng có thể có liên quan đến bàn phím (nhất là Pentadactyl) và NoScript, có khắc phục lỗi được không? Mong là có thể tìm ra nguồn gốc của sự xung đột này.

@thuandt
Copy link
Author

thuandt commented Nov 20, 2014

Một số thứ như DjView là plugin thôi (mình đã update danh sách Addons đúng đang dùng).

Về AVIM thì phiên 20080728.525 bắt đầu xuất hiện bug này, phiên bản 20080728.524 không gặp vấn đề gì cả.

Mình sẽ test lại với một số addons được disable và sẽ báo lại sau.

@kingmax123
Copy link

Mình đang dùng:

  • AVIM bản mới nhất, tải từ addon.mozilla.org.
  • Firefox version mới nhất, auto update (33.1.1) << có lẽ là bị ở đây, version cũ của firefox không bị.
  • Mac OS 10.9.5

Tình trạng khi comment facebook như sau: sau khi gõ và enter thì bị mất hết dấu. Có thể chưa enter nhưng vẫn mất dấu. Ví dụ gõ Nguyễn Anh Tuấn [enter] thì sẽ ra Nguyen Anh Tuan.

@1ec5
Copy link
Owner

1ec5 commented Nov 21, 2014

Về AVIM thì phiên 20080728.525 bắt đầu xuất hiện bug này, phiên bản 20080728.524 không gặp vấn đề gì cả.

Trong tài khoản Facebook của mình thì hộp comment là một <textarea> bình thường, nhưng các phiên bản khác của Facebook (do A/B testing) có thể khác hẳn…

Nếu hộp comment có lỗi là một hộp văn bản có định dạng thì vấn đề có thể xảy ra do 6607365 hoặc một thay đổi gần lúc đó.

Các bạn có thấy lỗi gì trong Tools > Developer > Browser Console (Công cụ > Nhà phát triển Web > Dòng lệnh của Trình duyệt) khi các dấu bị mất?

@1ec5
Copy link
Owner

1ec5 commented Nov 23, 2014

Xin làm ơn:

  1. Đưa con nháy vào hộp comment.
  2. Vào Tools > Developer > Browser Console (Công cụ > Nhà phát triển Web > Dòng lệnh của Trình duyệt).
  3. Bấm nút Clear.
  4. Nhập comment và bấm Enter để cho mất dấu.
  5. Trở lại Browser Console, sao chép các thông báo, và gửi cho mình qua e-mail (tên người dùng là “mxn”; máy chủ là “1ec5.org”).

Cám ơn nhiều.

@ppt3693
Copy link

ppt3693 commented Nov 26, 2014

Mình đã làm theo như hướng dẫn của bạn và xuất hiện các lỗi sau, theo hình chụp ở bên duới
screenshot - 11262014 - 09 33 05 am
screenshot - 11262014 - 09 34 17 am
Mình đang sử dụng Firefox 33.0, Xubuntu 12.04.
Mình rất thích AVIM, mong bạn sớm khắc phục.
Xin cảm ơn bạn nhiều.

@1ec5 1ec5 self-assigned this Nov 26, 2014
@1ec5
Copy link
Owner

1ec5 commented Nov 26, 2014

Mãi bây giờ mình mới gặp được vấn đề này: khi chức năng gợi ý bạn bè (autocomplete) xuất hiện, nó hay xóa mất nửa văn bản đã nhập vào. Có thể là Facebook duy trì văn bản riêng và chỉ đồng bộ hóa khi nhận được một event gì đó. AVIM vẫn gửi event oninput như trước; có thể cần gửi một event nữa.

Mình chỉ gặp được vấn đề vài ngày sau khi đổi giao diện từ tiếng Việt sang tiếng Anh, lúc đó Facebook tình cờ nâng cấp tới phiên bản mới hơn (có các nút “Status”, “Home” rõ hơn ở trên).

@ppt3693
Copy link

ppt3693 commented Nov 26, 2014

Mình cũng thấy là khi mình nhấn Shift để viết hoa là nó cũng bị tuơng tự như vậy. Ngoài ra, mình còn phát hiện thêm là lỗi này cũng xuất hiện với add-on Vimperator. Mình phải để Vimperator không hoạt động trên Facebook thì Ibus-unikey của mình mới hoạt động bình thường được. Trước đây thì mình không gặp những lỗi trên, nó chỉ xuất hiện vào tối hôm qua.

@1ec5
Copy link
Owner

1ec5 commented Nov 26, 2014

Theo git bisect, các lỗi trong hộp comment là do f87e7d0. Chưa biết thay đổi này thiếu gì.

Hộp comment mới của Facebook là một khung contenteditable thay vì một hộp văn bản thuần (và những phần tử trang trí đằng sau) như trước. Facebook quan sát khung này để ghi nhớ các ký tự được đưa vào khung. Khi hiện/ẩn popup gợi ý bạn bè hoặc đăng comment, Facebook thay thế nội dung của khung bằng các ký tự đã ghi nhớ.

Nếu comment out các phần hỗ trợ hoàn tác trong splice() thì vẫn bị lỗi. Có thể là vì AVIM chỉ thay thế một phần của nút văn bản vô danh (anonymous text node) dùng replaceData(). AVIM 20080728.524 phải xóa trống nút văn bản rồi chèn giá trị mới.

avim-chrome không gặp lỗi vì Chrome không sử dụng mô hình nút văn bản vô danh như Firefox. Các bộ gõ trên hệ điều hành như Unikey và ibus-unikey vẫn hoạt động bình thường vì chúng dựa trên API bộ gõ của hệ điều hành.

@1ec5
Copy link
Owner

1ec5 commented Nov 27, 2014

Trong f87e7d0, mình thay thế các lệnh gọi CharacterData.deleteData()CharacterData.insertData() bằng một lệnh gọi CharacterData.replaceData().

Facebook quan sát nội dung của khung bằng MutationObserver.observe(…, {characterDataOldValue: true, characterData: true, subtree: true}). Vì một lý do nào đó, MutationObserver không có thông báo về việc thay thế một chuỗi con trong nút văn bản mà chỉ thông báo khi xóa và chèn chuỗi con.

@1ec5 1ec5 closed this as completed in 0f3bad9 Nov 27, 2014
@1ec5
Copy link
Owner

1ec5 commented Nov 27, 2014

Phiên bản 5.3.1 không còn làm cho các comment trên Facebook bị méo mó. Sau khi các editor tại Mozilla Add-ons chấp nhận phiên bản này, Firefox sẽ tự động cập nhật AVIM, hoặc các bạn có thể cập nhật thủ công tại trang chủ AVIM. Cám ơn mọi người đã giúp nhận ra và khắc phục vấn đề này!

@ppt3693
Copy link

ppt3693 commented Nov 27, 2014

Xin cám ơn bạn rất nhiều :)

@1ec5
Copy link
Owner

1ec5 commented Jun 12, 2016

Vấn đề này đã trở lại: #171.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants