New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 818870 link

Starred by 4 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug
M-X



Sign in to add a comment

Should Secure Text Entry on Mac use IME (e.g. ui::InputMethod)?

Project Member Reported by tapted@chromium.org, Mar 5 2018

Issue description

Context: https://chromium-review.googlesource.com/c/chromium/src/+/943064/3/ui/views/controls/textfield/textfield.cc#1057

That CL is adding logic to views::Textfield to support secure text entry on Mac.

But views::Textfield is a ui::TextInputClient. So is RenderWidgetHostViewAura. But RenderWidgetHostViewMac is *not* a ui::TextInputClient (should it be?)

RenderWidgetHostViewMac uses a `SetTextInputActive(bool active)` member function to control secure text entry and https://crrev.com/c/943064 would add that function to views::Textield as well.


Question for IME folks: should this instead be the responsibility of the InputMethod?

E.g. views::Textfield already calls GetInputMethod()->SetFocusedTextInputClient(this); InputMethodMac could override InputMethodBase::OnDidChangeFocusedClient() and call the appropriate methods to set up secure text entry. 


Question for rsesek: would this fit with how secure text entry should work on Mac and  Issue 677220 ? (I don't know much about secure text entry..)


I'm not sure whether this should block https://crrev.com/c/943064 but it's certainly going to be something to address when exploring MacAura. That is, stuff being added to views::Textfield in that CL may need replacing when RenderWidgetHostViewAura starts getting used on Mac.
 
ui::InputMethod/ui::TextInputClient currently don't have a concept that secure text input is in progress, this has to be factored in as well.
Cc: suzhe@chromium.org
AFAIK, the text input on Mac has NOT been based on ui::InputMethod framework like Windows/Linux.
ui::InputMethodMac is dummy and not actually working on Mac.

views::Textfield is a cross-platform class which should be a ui::TextInputClient so that it can work on Windows/Linux.
RenderWidgetHostViewMac is Mac-specific so it's unnecessary to make it a ui::TextInputClient.

+suzhe@ may know more.

Comment 3 by suzhe@chromium.org, Mar 7 2018

Cc: thakis@chromium.org
I haven't been working on it for many years. There must be a reason, but unfortunately I don't remember it.

Robert and Nico, do you still remember the reason?

Labels: MacViews-Browser M-X
MacViews triage: marking this M-X for MacViews-Browser; I don't see a concrete issue here.
Labels: -Proj-MacViews

Sign in to add a comment