IDEMPIERE-1149 Implements SetFocus on field. Shouldn't set initial focus to detail tab.
This commit is contained in:
parent
72180bb630
commit
6ab722f237
|
@ -1410,7 +1410,7 @@ DataStatusListener, IADTabpanel, IdSpace, IFieldEditorContainer
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void focus() {
|
public void focus() {
|
||||||
if (formContainer.isVisible())
|
if (form.isVisible())
|
||||||
this.focusToFirstEditor(true);
|
this.focusToFirstEditor(true);
|
||||||
else
|
else
|
||||||
listPanel.focus();
|
listPanel.focus();
|
||||||
|
|
|
@ -730,7 +730,7 @@ public class GridView extends Vbox implements EventListener<Event>, IdSpace, IFi
|
||||||
setFocusToField(columnOnClick);
|
setFocusToField(columnOnClick);
|
||||||
columnOnClick = null;
|
columnOnClick = null;
|
||||||
} else {
|
} else {
|
||||||
renderer.focusToFirstEditor();
|
focusToFirstEditorIfNotDetailTab();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
focusToRow(row);
|
focusToRow(row);
|
||||||
|
@ -761,6 +761,30 @@ public class GridView extends Vbox implements EventListener<Event>, IdSpace, IFi
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void focusToFirstEditorIfNotDetailTab() {
|
||||||
|
ADTabpanel adtabpanel = null;
|
||||||
|
boolean setFocus = true;
|
||||||
|
Component parent = listbox.getParent();
|
||||||
|
while (parent != null) {
|
||||||
|
if (parent instanceof ADTabpanel) {
|
||||||
|
adtabpanel = (ADTabpanel) parent;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
parent = parent.getParent();
|
||||||
|
}
|
||||||
|
if (adtabpanel != null)
|
||||||
|
{
|
||||||
|
ADWindow adwindow = ADWindow.findADWindow(adtabpanel);
|
||||||
|
if (adwindow != null) {
|
||||||
|
IADTabpanel selectedADTabpanel = adwindow.getADWindowContent().getADTab().getSelectedTabpanel();
|
||||||
|
if (selectedADTabpanel != adtabpanel)
|
||||||
|
setFocus = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (setFocus)
|
||||||
|
renderer.focusToFirstEditor();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* scroll grid to the current focus row
|
* scroll grid to the current focus row
|
||||||
*/
|
*/
|
||||||
|
@ -774,7 +798,7 @@ public class GridView extends Vbox implements EventListener<Event>, IdSpace, IFi
|
||||||
setFocusToField(columnOnClick);
|
setFocusToField(columnOnClick);
|
||||||
columnOnClick = null;
|
columnOnClick = null;
|
||||||
} else {
|
} else {
|
||||||
renderer.focusToFirstEditor();
|
focusToFirstEditorIfNotDetailTab();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Component cmp = null;
|
Component cmp = null;
|
||||||
|
|
Loading…
Reference in New Issue