use of javafx.stage.Screen in project VocabHunter by VocabHunter.
the class EnvironmentManagerImpl method isVisible.
@Override
public boolean isVisible(final Placement placement) {
ObservableList<Screen> screens = Screen.getScreensForRectangle(rectangle(placement));
if (screens.size() == 1) {
Screen screen = screens.get(0);
Rectangle2D bounds = screen.getVisualBounds();
if (placement.isPositioned()) {
return bounds.contains(placement.getX(), placement.getY(), placement.getWidth(), placement.getHeight());
} else {
return bounds.getWidth() >= placement.getWidth() && bounds.getHeight() >= placement.getHeight();
}
} else {
return false;
}
}
use of javafx.stage.Screen in project jgnash by ccavanaugh.
the class StageUtils method getMaxVisualBounds.
/**
* Returns the maximum visual bounds of the users desktop.
*
* @return maximum usable desktop bounds
*/
private static Rectangle2D getMaxVisualBounds() {
double maxX = 0;
double maxY = 0;
double minX = Double.MAX_VALUE;
double minY = Double.MAX_VALUE;
for (final Screen screen : Screen.getScreens()) {
minX = Math.min(minX, screen.getVisualBounds().getMinX());
minY = Math.min(minY, screen.getVisualBounds().getMinY());
maxX = Math.max(maxX, screen.getVisualBounds().getMaxX());
maxY = Math.max(maxY, screen.getVisualBounds().getMaxY());
}
return new Rectangle2D(minX, minY, maxX - minX, maxY - minY);
}
Aggregations