You need to use the @JoinFormula annotation so that you provide the deleted = true condition.
Considering that you mapped the board_window using a link entity, BoardWindow which has 2 @ManyToOne associations, one to Board and one to Window, and that the BoardWindow.
Code:
@ManyToMany(fetch = FetchType.LAZY)
@JoinFormula(
"( SELECT bw.window_id FROM boards_windows bw WHERE bw.board_id = id and bw.deleted = false )"
)
private List<Window> windows = new ArrayList()<>;
Check out this article for more details on how @JoinFormula works.