Add config setting for stream previews in thumbnails

This setting allows to switch stream previews of in the thumbnail
views. The little play circle will not show up.
This commit is contained in:
0xboobface 2018-12-16 17:19:57 +01:00
parent ebb5310d26
commit f75687752c
3 changed files with 23 additions and 8 deletions

View File

@ -174,7 +174,9 @@ public class ThumbCell extends StackPane {
StackPane.setAlignment(pausedIndicator, Pos.TOP_LEFT); StackPane.setAlignment(pausedIndicator, Pos.TOP_LEFT);
getChildren().add(pausedIndicator); getChildren().add(pausedIndicator);
if(Config.getInstance().getSettings().previewInThumbnails) {
getChildren().add(createPreviewTrigger()); getChildren().add(createPreviewTrigger());
}
selectionOverlay = new Rectangle(); selectionOverlay = new Rectangle();
selectionOverlay.visibleProperty().bind(selectionProperty); selectionOverlay.visibleProperty().bind(selectionProperty);

View File

@ -64,6 +64,7 @@ public class SettingsTab extends Tab implements TabSelectionListener {
private CheckBox chooseStreamQuality = new CheckBox(); private CheckBox chooseStreamQuality = new CheckBox();
private CheckBox multiplePlayers = new CheckBox(); private CheckBox multiplePlayers = new CheckBox();
private CheckBox updateThumbnails = new CheckBox(); private CheckBox updateThumbnails = new CheckBox();
private CheckBox previewInThumbnails = new CheckBox();
private CheckBox showPlayerStarting = new CheckBox(); private CheckBox showPlayerStarting = new CheckBox();
private RadioButton recordLocal; private RadioButton recordLocal;
private RadioButton recordRemote; private RadioButton recordRemote;
@ -422,7 +423,7 @@ public class SettingsTab extends Tab implements TabSelectionListener {
Config.getInstance().getSettings().showPlayerStarting = showPlayerStarting.isSelected(); Config.getInstance().getSettings().showPlayerStarting = showPlayerStarting.isSelected();
saveConfig(); saveConfig();
}); });
GridPane.setMargin(l, new Insets(CHECKBOX_MARGIN, 0, 0, 0)); GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(showPlayerStarting, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN)); GridPane.setMargin(showPlayerStarting, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
layout.add(showPlayerStarting, 1, row++); layout.add(showPlayerStarting, 1, row++);
@ -434,7 +435,7 @@ public class SettingsTab extends Tab implements TabSelectionListener {
Config.getInstance().getSettings().determineResolution = loadResolution.isSelected(); Config.getInstance().getSettings().determineResolution = loadResolution.isSelected();
saveConfig(); saveConfig();
}); });
GridPane.setMargin(l, new Insets(CHECKBOX_MARGIN, 0, 0, 0)); GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(loadResolution, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN)); GridPane.setMargin(loadResolution, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
layout.add(loadResolution, 1, row++); layout.add(loadResolution, 1, row++);
@ -445,7 +446,7 @@ public class SettingsTab extends Tab implements TabSelectionListener {
Config.getInstance().getSettings().chooseStreamQuality = chooseStreamQuality.isSelected(); Config.getInstance().getSettings().chooseStreamQuality = chooseStreamQuality.isSelected();
saveConfig(); saveConfig();
}); });
GridPane.setMargin(l, new Insets(CHECKBOX_MARGIN, 0, 0, 0)); GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(chooseStreamQuality, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN)); GridPane.setMargin(chooseStreamQuality, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
layout.add(chooseStreamQuality, 1, row++); layout.add(chooseStreamQuality, 1, row++);
@ -456,10 +457,21 @@ public class SettingsTab extends Tab implements TabSelectionListener {
Config.getInstance().getSettings().updateThumbnails = updateThumbnails.isSelected(); Config.getInstance().getSettings().updateThumbnails = updateThumbnails.isSelected();
saveConfig(); saveConfig();
}); });
GridPane.setMargin(l, new Insets(CHECKBOX_MARGIN, 0, 0, 0)); GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(updateThumbnails, new Insets(CHECKBOX_MARGIN, 0, CHECKBOX_MARGIN, CHECKBOX_MARGIN)); GridPane.setMargin(updateThumbnails, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
layout.add(updateThumbnails, 1, row++); layout.add(updateThumbnails, 1, row++);
l = new Label("Preview in thumbnails");
layout.add(l, 0, row);
previewInThumbnails.setSelected(Config.getInstance().getSettings().previewInThumbnails);
previewInThumbnails.setOnAction((e) -> {
Config.getInstance().getSettings().previewInThumbnails = previewInThumbnails.isSelected();
saveConfig();
});
GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(previewInThumbnails, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
layout.add(previewInThumbnails, 1, row++);
l = new Label("Start Tab"); l = new Label("Start Tab");
layout.add(l, 0, row); layout.add(l, 0, row);
startTab = new ComboBox<>(); startTab = new ComboBox<>();
@ -468,8 +480,8 @@ public class SettingsTab extends Tab implements TabSelectionListener {
saveConfig(); saveConfig();
}); });
layout.add(startTab, 1, row++); layout.add(startTab, 1, row++);
GridPane.setMargin(l, new Insets(0, 0, 0, 0)); GridPane.setMargin(l, new Insets(3, 0, 0, 0));
GridPane.setMargin(startTab, new Insets(0, 0, 0, CHECKBOX_MARGIN)); GridPane.setMargin(startTab, new Insets(CHECKBOX_MARGIN, 0, 0, CHECKBOX_MARGIN));
l = new Label("Colors (Base / Accent)"); l = new Label("Colors (Base / Accent)");
layout.add(l, 0, row); layout.add(l, 0, row);

View File

@ -69,6 +69,7 @@ public class Settings {
public List<Model> models = new ArrayList<>(); public List<Model> models = new ArrayList<>();
public List<EventHandlerConfiguration> eventHandlers = new ArrayList<>(); public List<EventHandlerConfiguration> eventHandlers = new ArrayList<>();
public boolean determineResolution = false; public boolean determineResolution = false;
public boolean previewInThumbnails = true;
public boolean requireAuthentication = false; public boolean requireAuthentication = false;
public boolean chooseStreamQuality = false; public boolean chooseStreamQuality = false;
public int maximumResolution = 0; public int maximumResolution = 0;