Преглед изворни кода

Editor save/cancel buttons stay visually in place (#16562)

Change-Id: Ia63ffc36bee83e1bd20dc6e1a83616f94574a89b
tags/7.4.0.rc1
Henrik Paul пре 9 година
родитељ
комит
77604ed986

+ 17
- 6
client/src/com/vaadin/client/widgets/Grid.java Прегледај датотеку

@@ -944,6 +944,10 @@ public class Grid<T> extends ResizeComposite implements
private static final double BUTTON_HEIGHT = 25;
private static final double BUTTON_WIDTH = 50;
private static final double BUTTON_MARGIN = 5;
private static final double SAVE_BUTTON_LEFT_MARGIN_PX = 0;
private static final double CANCEL_BUTTON_LEFT_MARGIN_PX = SAVE_BUTTON_LEFT_MARGIN_PX
+ BUTTON_WIDTH + BUTTON_MARGIN;

public static final int KEYCODE_SHOW = KeyCodes.KEY_ENTER;
public static final int KEYCODE_HIDE = KeyCodes.KEY_ESCAPE;

@@ -1263,8 +1267,6 @@ public class Grid<T> extends ResizeComposite implements
setBounds(editorOverlay, tr.getOffsetLeft(), overlayTop, width,
height);

updateHorizontalScrollPosition();

scrollHandler = grid.addScrollHandler(new ScrollHandler() {
@Override
public void onScroll(ScrollEvent event) {
@@ -1320,10 +1322,12 @@ public class Grid<T> extends ResizeComposite implements
* Chrome and Firefox. So we measure it.
*/
double buttonTop = getButtonTop(tr, saveButton.getOffsetHeight());
setBounds(saveButton.getElement(), 0, buttonTop, BUTTON_WIDTH,
BUTTON_HEIGHT);
setBounds(cancelButton.getElement(), BUTTON_WIDTH + BUTTON_MARGIN,
setBounds(saveButton.getElement(), SAVE_BUTTON_LEFT_MARGIN_PX,
buttonTop, BUTTON_WIDTH, BUTTON_HEIGHT);
setBounds(cancelButton.getElement(), CANCEL_BUTTON_LEFT_MARGIN_PX,
buttonTop, BUTTON_WIDTH, BUTTON_HEIGHT);

updateHorizontalScrollPosition();
}

private double getButtonTop(TableRowElement tr, int buttonHeight) {
@@ -1405,7 +1409,14 @@ public class Grid<T> extends ResizeComposite implements
}

private void updateHorizontalScrollPosition() {
editorOverlay.getStyle().setLeft(-grid.getScrollLeft(), Unit.PX);
double scrollLeft = grid.getScrollLeft();

editorOverlay.getStyle().setLeft(-scrollLeft, Unit.PX);

double saveLeftPx = scrollLeft + SAVE_BUTTON_LEFT_MARGIN_PX;
double cancelLeftPx = scrollLeft + CANCEL_BUTTON_LEFT_MARGIN_PX;
saveButton.getElement().getStyle().setLeft(saveLeftPx, Unit.PX);
cancelButton.getElement().getStyle().setLeft(cancelLeftPx, Unit.PX);
}

protected void setGridEnabled(boolean enabled) {

+ 0
- 2
uitest/src/com/vaadin/testbench/elements/GridElement.java Прегледај датотеку

@@ -89,7 +89,6 @@ public class GridElement extends AbstractComponentElement {
* useless.
*/
public void save() {
getField(0);
List<WebElement> buttons = findElements(By.xpath("./button"));
buttons.get(0).click();
}
@@ -101,7 +100,6 @@ public class GridElement extends AbstractComponentElement {
* useless.
*/
public void cancel() {
getField(0);
List<WebElement> buttons = findElements(By.xpath("./button"));
buttons.get(1).click();
}

Loading…
Откажи
Сачувај