I have got a simple NSTextView inside a NSPopover. Most often selection and text editing works as suggested; i.e. i-beam cursor and current selection deselects when I click somewhere else inside the selection.
However, sometimes when the NSPopover is toggled the cursor is replaced with a pointer cursor and the selection won't disappear on click. While in this state the text is also draggable.
I want my NSTextView to behave just like in TextEdit and similar apps; the selection should never be draggable and should deselect on a single click. The cursor should also stay as i-beam.
How can I accomplish this behavior?
current and expected behavior, illustrated
Related
In this video I first click on a field within the first tab, then click the soft keyboard's "check" button. This hides the soft keyboard and takes the focus away from that field. I then navigate across tabs and back to the first. No field has the focus at this point. This is the expected behavior.
In the second iteration, I click in the notes field. Without closing the soft keyboard, I then click the submit button. That button calls FocusScope.of(context).unfocus(); which hides the soft keyboard and takes the focus away from the notes field (the teal border disappears). However, at this point I click on the next tab and the soft keyboard reappears. And when I click back the first tab the notes field once again has the focus.
Why does this happen?
What underlying code does the "check button" on the keyboard call and can I wire this up to the button rater than calling the .unfocus() method to get the expected result?
Edit: Still no explanation. The undesirable persistent keyboard does not occur on iOS.
I have an ag-grid popup cellEditor which contains an angular mat-select control. Is there a way to prevent the popup cell editor default behavior of closing on a click outside the cell? When an item is selected the ag-grid popup cellEditor closes. I believe this is due to the click on the select drop down being interpreted as outside the cell. Is it possible to prevent popup cell closure for this case or even in all cases such that I can control it completely via code using gridApi.stopEditing()?
See https://material.angular.io/components/select/overview for information on the select control. I am not including full details here as it is likely not important.
Image of popup editor, You can see how cell is before editor is invoked as well. See where the blue number one appears
When keyboard selecting a row in a GWT DataGrid, how do you deselect it?
When you select a row like this:
table.setKeyboardSelectedRow(rowInd, true);
You can unselect the row by clicking outside the grid. How do I make this same 'unselection' programmatically?
Selecting a row like this:
table.setKeyboardSelectedRow(rowInd, false);
Since the focus is not on this selection, it does not blur out like usual when you click outside the grid. I need to keep the focus on something else, but I wish to still deselect this row at a certain point. How do you deselect a keyboard selection programmatically?
Note: using the Selection Model's setSelection() with a false param does not deselect keyboard selection, only the selection made by the selection model. Using setKeyboardSelectedRow(-1) also does not work.
I find it baffling that GWT does not offer a way to unselect a keyboard selected row!
I have a simple vertical one-dimensional menu. Menu items are not fix, they change dynamically according to data received from the server. (So I cannot write fix code for them.)
In css I declared selected MenuItem to be bold.
My wish is simply to make the selected MenuItem remain bold after selection. But when I click it, it loses focus and the first MenuItem becomes bold.
How could that be fixed?
I have an editor which is comprised of a table and a set of selection-specific form fields below it, so that when I make a selection in the table, the fields below it will change. When the editor is sized too small, the fields container gets a scrollbar:
The problem is that when I make a selection in the table, I can't scroll the fields container down (with the mouse wheel) because the focus is still within the table. Currently I have to select one of the fields to be able to scroll its container or manually drag the scrollbar itself, but it's much easier to just click or hover anywhere in the target container to focus it for mouse wheel scrolling.
How can I make the composite body (in my case, a Form) selectable? Or even better, is there a way to control scrolling depending on where the mouse cursor is?
If you want to control scrolling based on where the mouse cursor is located, you're going to have to write a combination org.eclipse.swt.events.MouseMoveListener and org.eclipse.swt.events.MouseWheelListener.
Component method setFocus() brings the component into keyboard focus.
I've not tried to do this. Be sure to handle the case where the user does not have a scroll wheel on their mouse.