Browse Source

minor bug fixes

pull/12/head
Jannik 3 years ago
parent
commit
e47f3ea2f7
  1. 100
      src/main/java/kellerkinder/HomeFlix/application/MainWindowController.java
  2. 9
      src/main/resources/fxml/MainWindow.fxml

100
src/main/java/kellerkinder/HomeFlix/application/MainWindowController.java

@ -137,17 +137,16 @@ public class MainWindowController {
@FXML private TableColumn<SourceDataType, String> sourceColumn;
@FXML private TableColumn<SourceDataType, String> modeColumn;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnStreamUrl;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnTitle;
@FXML private TreeTableColumn<FilmTabelDataType, ImageView> columnFavorite;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnSeason;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnEpisode;
// table-mode
@FXML private AnchorPane tableModeAnchorPane;
@FXML private JFXTextField searchTextField;
@FXML private TreeTableView<FilmTabelDataType> filmsTreeTable;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnStreamUrl;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnTitle;
@FXML private TreeTableColumn<FilmTabelDataType, ImageView> columnFavorite;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnSeason;
@FXML private TreeTableColumn<FilmTabelDataType, String> columnEpisode;
@FXML private TreeItem<FilmTabelDataType> filmRoot = new TreeItem<>(new FilmTabelDataType("", "", "", "", false, null, null));
@ -161,7 +160,8 @@ public class MainWindowController {
@FXML private JFXButton forwardBtn;
// poster-mode
// @FXML private AnchorPane posterModeAnchorPane;
@FXML private AnchorPane posterModeAnchorPane;
@FXML private ScrollPane posterModeScrollPane;
private DBController dbController;
private UpdateController updateController;
@ -220,7 +220,7 @@ public class MainWindowController {
// load sources list in gui
addSourceToTable();
// posterModeStartup(); // TODO testing DO NOT USE THIS!!
// posterModeStartup(); // TODO testing DO NOT USE THIS!!
}
// Initialize general UI elements
@ -464,51 +464,53 @@ public class MainWindowController {
// Table-Mode fxml actions
@FXML
private void playbtnclicked() {
if (currentTableFilm.getStreamUrl().contains("_rootNode")) {
LOGGER.info("rootNode found, getting last watched episode");
currentTableFilm = dbController.getLastWatchedEpisode(currentTableFilm.getTitle());
}
if (isSupportedFormat(currentTableFilm)) {
new Player(getCurrentTableFilm());
} else {
LOGGER.error("using fallback player!");
if (System.getProperty("os.name").contains("Linux")) {
String line;
String output = "";
Process p;
try {
p = Runtime.getRuntime().exec("which vlc");
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
output = line;
if (currentTableFilm.getStreamUrl().length() > 0) {
if (currentTableFilm.getStreamUrl().contains("_rootNode")) {
LOGGER.info("rootNode found, getting last watched episode");
currentTableFilm = dbController.getLastWatchedEpisode(currentTableFilm.getTitle());
}
if (isSupportedFormat(currentTableFilm)) {
new Player(getCurrentTableFilm());
} else {
LOGGER.error("using fallback player!");
if (System.getProperty("os.name").contains("Linux")) {
String line;
String output = "";
Process p;
try {
p = Runtime.getRuntime().exec("which vlc");
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
output = line;
}
LOGGER.info("which vlc: " + output);
input.close();
} catch (IOException e1) {
e1.printStackTrace();
}
LOGGER.info("which vlc: " + output);
input.close();
} catch (IOException e1) {
e1.printStackTrace();
}
if (output.contains("which: no vlc") || output == "") {
JFXInfoAlert vlcInfoAlert = new JFXInfoAlert("Info",
XMLController.getLocalBundle().getString("vlcNotInstalled"),
btnStyle, primaryStage);
vlcInfoAlert.showAndWait();
} else {
if (output.contains("which: no vlc") || output == "") {
JFXInfoAlert vlcInfoAlert = new JFXInfoAlert("Info",
XMLController.getLocalBundle().getString("vlcNotInstalled"),
btnStyle, primaryStage);
vlcInfoAlert.showAndWait();
} else {
try {
new ProcessBuilder("vlc", getCurrentStreamUrl()).start();
} catch (IOException e) {
LOGGER.warn("An error has occurred while opening the file!", e);
}
}
} else if (System.getProperty("os.name").contains("Windows") || System.getProperty("os.name").contains("Mac OS X")) {
try {
new ProcessBuilder("vlc", getCurrentStreamUrl()).start();
Desktop.getDesktop().open(new File(getCurrentStreamUrl()));
} catch (IOException e) {
LOGGER.warn("An error has occurred while opening the file!", e);
}
} else {
LOGGER.error(System.getProperty("os.name") + ", OS is not supported, please contact a developer! ");
}
} else if (System.getProperty("os.name").contains("Windows") || System.getProperty("os.name").contains("Mac OS X")) {
try {
Desktop.getDesktop().open(new File(getCurrentStreamUrl()));
} catch (IOException e) {
LOGGER.warn("An error has occurred while opening the file!", e);
}
} else {
LOGGER.error(System.getProperty("os.name") + ", OS is not supported, please contact a developer! ");
}
}
}
@ -894,6 +896,10 @@ public class MainWindowController {
return mimeType != null && (mimeType.contains("mp4") || mimeType.contains("vp6"));
}
/**
* Poser Mode WIP
*/
private void posterModeStartup() {
checkAllPosters();
}

9
src/main/resources/fxml/MainWindow.fxml

@ -64,6 +64,15 @@
<JFXButton fx:id="forwardBtn" contentDisplay="CENTER" onAction="#forwardBtnclicked" prefHeight="25.0" prefWidth="90.0" AnchorPane.bottomAnchor="132.0" AnchorPane.rightAnchor="12.0" />
</children>
</AnchorPane>
<ScrollPane fx:id="posterModeScrollPane" visible="false" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="32.0">
<content>
<AnchorPane fx:id="posterModeAnchorPane">
<padding>
<Insets bottom="17.0" />
</padding>
</AnchorPane>
</content>
</ScrollPane>
<ScrollPane fx:id="settingsScrollPane" prefHeight="568.0" prefWidth="800.0" style="-fx-background: white;" visible="false" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="150.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="32.0">
<content>
<AnchorPane fx:id="settingsAnchorPane" prefWidth="832.0" style="-fx-background-color: white;">

Loading…
Cancel
Save

Du besuchst diese Seite mit einem veralteten IPv4-Internetzugang. Möglicherweise treten in Zukunft Probleme mit der Erreichbarkeit und Performance auf. Bitte frage deinen Internetanbieter oder Netzwerkadministrator nach IPv6-Unterstützung.
You are visiting this site with an outdated IPv4 internet access. You may experience problems with accessibility and performance in the future. Please ask your ISP or network administrator for IPv6 support.
Weitere Infos | More Information
Klicke zum schließen | Click to close