diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index a39835be1296c75a848c5bd3a5488429a804a4b2..573656f6b552ab704fd9f1ad893286475dda5049 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -11,6 +11,7 @@
     <file url="file://$PROJECT_DIR$/PlayWallComponents/src/main/resources" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/PlayWallCore" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/PlayWallCore/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/PlayWallCore/src/main/resources" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/PlayWallPlugins" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/PlayWallPlugins/PlayWallPluginAwake" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/PlayWallPlugins/PlayWallPluginAwake/src/main/java" charset="UTF-8" />
diff --git a/PlayWall/src/main/java/de/tobias/playpad/PlayPadLocalizationDelegate.java b/PlayWall/src/main/java/de/tobias/playpad/PlayPadLocalizationDelegate.java
index a30e062860f5617d297397d6106fe2ba38c6d48e..e53204208404fe38b94559157b8efe71bd370fcb 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/PlayPadLocalizationDelegate.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/PlayPadLocalizationDelegate.java
@@ -20,6 +20,7 @@ public class PlayPadLocalizationDelegate implements Localization.LocalizationDel
 
 	@Override
 	public Locale getLocale() {
-		return Locale.getDefault();
+		// TODO Locale GERMAN
+		return Locale.GERMAN;
 	}
 }
diff --git a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
index 408749b0e125b2e36713b938d43f9c277504daa4..b2bf4ab78fee9e28884c81cd21fb457db7f1f677 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/main/MainViewController.java
@@ -252,6 +252,12 @@ public class MainViewController extends NVC implements IMainViewController, Noti
 
 		// Request Focus for key listener
 		getParent().requestFocus();
+
+		getParent().getScene().focusOwnerProperty().addListener((observable, oldValue, newValue) -> {
+			if (newValue == null) {
+				getParent().requestFocus();
+			}
+		});
 	}
 
 	private void initMainLayout() {
diff --git a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernCartDesignHandlerImpl.scala b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernCartDesignHandlerImpl.scala
index 5bcdce6cc53b63bfb407e300118348890f744395..aec4ccf9145de83e3b41e86038504f1dbf585ea9 100644
--- a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernCartDesignHandlerImpl.scala
+++ b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernCartDesignHandlerImpl.scala
@@ -8,7 +8,6 @@ import de.tobias.playpad.pad.viewcontroller.IPadViewController
 import de.tobias.playpad.util.Minifier
 import de.tobias.playpad.view.PseudoClasses
 import javafx.util.Duration
-import org.apache.commons.lang3.StringUtils
 import org.springframework.expression.ExpressionParser
 import org.springframework.expression.common.TemplateParserContext
 import org.springframework.expression.spel.standard.SpelExpressionParser
@@ -19,7 +18,7 @@ import scala.jdk.CollectionConverters._
 class ModernCartDesignHandlerImpl extends ModernCartDesignHandler {
 
 	override def generateCss(design: ModernCartDesign, classSuffix: String, flat: Boolean): String = {
-		StringUtils.join(
+		String.join(
 			generateCss(design, flat, classSuffix, design.getBackgroundColor),
 			generateCss(design, flat, classSuffix, design.getPlayColor, s":${PseudoClasses.PLAY_CLASS.getPseudoClassName}"),
 			generateCss(design, flat, classSuffix, design.getBackgroundColor, s":${PseudoClasses.WARN_CLASS.getPseudoClassName}")
@@ -33,7 +32,7 @@ class ModernCartDesignHandlerImpl extends ModernCartDesignHandler {
 		val resource = ApplicationUtils.getApplication.getClasspathResource("style/modern-pad.css")
 		val string = Minifier minify resource.getAsString
 
-		val values: Map[String, Any] = Map(
+		val values: Map[String, AnyRef] = Map(
 			"prefix" -> padIdentifier,
 			"class" -> styleState,
 			"buttonColor" -> color.getButtonColor,
diff --git a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
index 84450cf5152e1593968a44554ea6ab38dd2cd4ca..ca1ade7277a8ba8e726e3d3b1844575ea2b47f0b 100644
--- a/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
+++ b/PlayWall/src/main/scala/de/tobias/playpad/design/ModernGlobalDesignHandlerImpl.scala
@@ -17,7 +17,6 @@ import de.tobias.playpad.{DisplayableColor, PlayPadMain}
 import javafx.scene.paint.Color
 import javafx.stage.Stage
 import javafx.util.Duration
-import org.apache.commons.lang3.StringUtils
 import org.springframework.expression.ExpressionParser
 import org.springframework.expression.common.TemplateParserContext
 import org.springframework.expression.spel.standard.SpelExpressionParser
@@ -64,7 +63,7 @@ class ModernGlobalDesignHandlerImpl extends ModernGlobalDesignHandler with Color
 	}
 
 	private def generateCss(design: ModernGlobalDesign): String = {
-		StringUtils.join(
+		String.join(
 			generateCss(design, design.getBackgroundColor),
 			generateCss(design, design.getPlayColor, s":${PseudoClasses.PLAY_CLASS.getPseudoClassName}"),
 			generateCss(design, design.getBackgroundColor, s":${PseudoClasses.WARN_CLASS.getPseudoClassName}")
@@ -78,7 +77,7 @@ class ModernGlobalDesignHandlerImpl extends ModernGlobalDesignHandler with Color
 		val resource = ApplicationUtils.getApplication.getClasspathResource("style/modern-global.css")
 		val string = Minifier minify resource.getAsString
 
-		val values: Map[String, Any] = Map(
+		val values: Map[String, AnyRef] = Map(
 			"class" -> styleState,
 			"buttonColor" -> color.getButtonColor,
 			"playbarTrackColor" -> color.getPlaybarColor,
diff --git a/PlayWall/src/main/scala/de/tobias/playpad/initialize/KeyboardDefaultMappingTask.scala b/PlayWall/src/main/scala/de/tobias/playpad/initialize/KeyboardDefaultMappingTask.scala
index cf64b19a2b485a981beb5db98b2f17d19dfa2587..9bb884fa0e75d7a36a93f352501f00041491bf31 100644
--- a/PlayWall/src/main/scala/de/tobias/playpad/initialize/KeyboardDefaultMappingTask.scala
+++ b/PlayWall/src/main/scala/de/tobias/playpad/initialize/KeyboardDefaultMappingTask.scala
@@ -1,16 +1,13 @@
 package de.tobias.playpad.initialize
 
 import de.thecodelabs.utils.application
-import de.thecodelabs.utils.application.container.PathType
 import de.thecodelabs.utils.util.Localization
 import de.tobias.playpad.PlayPadImpl
-import de.tobias.playpad.settings.GlobalSettings
 
 class KeyboardDefaultMappingTask extends PlayPadInitializeTask {
 	override def name(): String = "Keyboard Mapping"
 
 	override def run(app: application.App, instance: PlayPadImpl): Unit = {
-		val globalSettingsPath = app.getPath(PathType.CONFIGURATION, GlobalSettings.FILE_NAME)
 		val globalSettings = instance.getGlobalSettings
 
 		globalSettings.getKeyCollection.loadDefaultFromFile("components/Keys.xml", Localization.getBundle)
diff --git a/PlayWall/src/main/scala/de/tobias/playpad/initialize/ProfileLoadingTask.scala b/PlayWall/src/main/scala/de/tobias/playpad/initialize/ProfileLoadingTask.scala
index 9f9ff14a63c6a018cf242fa3e54525ca034cf247..c6f3b28b77789c34d7ab32e3d7e4c3161a457409 100644
--- a/PlayWall/src/main/scala/de/tobias/playpad/initialize/ProfileLoadingTask.scala
+++ b/PlayWall/src/main/scala/de/tobias/playpad/initialize/ProfileLoadingTask.scala
@@ -14,8 +14,7 @@ class ProfileLoadingTask extends PlayPadInitializeTask {
 	override def run(app: application.App, instance: PlayPadImpl): Unit = {
 		try ProfileReferenceManager.loadProfiles()
 		catch {
-			case e@(_: IOException | _: DocumentException) =>
-				Logger.error(e)
+			case e@(_: IOException | _: DocumentException) => Logger.error(e)
 		}
 	}
 }
diff --git a/PlayWallCore/src/main/java/de/tobias/playpad/project/Project.java b/PlayWallCore/src/main/java/de/tobias/playpad/project/Project.java
index e5b537f66e4d132f88e8f28ef2068ee4bae7b24c..bd70c1dfa78b1a6c1b50f3216ef46d1fdc0fb8b2 100644
--- a/PlayWallCore/src/main/java/de/tobias/playpad/project/Project.java
+++ b/PlayWallCore/src/main/java/de/tobias/playpad/project/Project.java
@@ -48,9 +48,9 @@ public class Project {
 	 */
 	final ProjectReference projectReference;
 
-	private transient IntegerProperty activePlayerProperty;
-	private transient IntegerProperty notFoundMediaProperty;
-	private transient ProjectUpdateListener syncListener;
+	private final transient IntegerProperty activePlayerProperty;
+	private final transient IntegerProperty notFoundMediaProperty;
+	private final transient ProjectUpdateListener syncListener;
 
 	public Project(ProjectReference ref) {
 		this.projectReference = ref;
@@ -136,7 +136,11 @@ public class Project {
 
 	// Pages
 	public Page getPage(int position) {
-		if (position >= pages.size() && position < ProjectSettings.MAX_PAGES) {
+		if (position >= ProjectSettings.MAX_PAGES) {
+			return null;
+		}
+
+		while (position >= pages.size()) {
 			addPage(new Page(position, this));
 		}
 		return pages.get(position);
diff --git a/PlayWallCore/src/main/java/de/tobias/playpad/project/ProjectSettings.java b/PlayWallCore/src/main/java/de/tobias/playpad/project/ProjectSettings.java
index 42efc1b298d0f22d317e2900d1a4ef04020d305d..0e4d089f1fa7f183a685ac292fc2fc363ca7cb2d 100644
--- a/PlayWallCore/src/main/java/de/tobias/playpad/project/ProjectSettings.java
+++ b/PlayWallCore/src/main/java/de/tobias/playpad/project/ProjectSettings.java
@@ -1,12 +1,22 @@
 package de.tobias.playpad.project;
 
 import de.thecodelabs.storage.settings.annotation.Key;
+import de.thecodelabs.utils.application.ApplicationUtils;
 
 import java.nio.file.Path;
 
 public class ProjectSettings {
 
-	public static final int MAX_PAGES = 10;
+	public static final int MAX_PAGES;
+
+	static {
+		Object maxPages = ApplicationUtils.getApplication().getUserDefaults().getData("MAX_PAGES");
+		if (maxPages != null) {
+			MAX_PAGES = Integer.parseInt(maxPages.toString());
+		} else {
+			MAX_PAGES = 10;
+		}
+	}
 
 	public static final int MAX_COLUMNS = 15;
 	public static final int MAX_ROWS = 15;
diff --git a/PlayWallPlugins/PlayWallPluginAwake/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginAwake/src/main/resources/plugin.yml
index 69f55695e937b67fea55dafaa1c497e9848a7831..31d4e6bacc40bcae08702a0d37d4afc9233232f3 100644
--- a/PlayWallPlugins/PlayWallPluginAwake/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginAwake/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "AwakePlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 3
+build: 5
diff --git a/PlayWallPlugins/PlayWallPluginEqualizer/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginEqualizer/src/main/resources/plugin.yml
index e42b0150ef571852672916048dea48f910cff346..c14ec70cc9806a4c1a0ec0ab38009bded4fd93ac 100644
--- a/PlayWallPlugins/PlayWallPluginEqualizer/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginEqualizer/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "EqualizerPlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 5
+build: 6
diff --git a/PlayWallPlugins/PlayWallPluginLaunchpad/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginLaunchpad/src/main/resources/plugin.yml
index 85e779456ef23f9db8907d465f4b197a340461b6..61c6c0118e1b2e99255205be0cca94044cfc8c64 100644
--- a/PlayWallPlugins/PlayWallPluginLaunchpad/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginLaunchpad/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "LaunchpadPlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 4
+build: 5
diff --git a/PlayWallPlugins/PlayWallPluginMedia/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginMedia/src/main/resources/plugin.yml
index fadb430128aa183e64dcdbd7344b25b19fc106a2..c664750bebf2009d4d47309241bd51a3c1d93461 100644
--- a/PlayWallPlugins/PlayWallPluginMedia/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginMedia/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "MediaPlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 8
+build: 9
diff --git a/PlayWallPlugins/PlayWallPluginNativeAudio/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginNativeAudio/src/main/resources/plugin.yml
index 8c3a771a746e658a6c518836fccb00029e83030d..234869dcc947e61bc19b7d861a80a4b3c8b02d42 100644
--- a/PlayWallPlugins/PlayWallPluginNativeAudio/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginNativeAudio/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "NativeAudio"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 1
+build: 2
diff --git a/PlayWallPlugins/PlayWallPluginPlayoutLog/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginPlayoutLog/src/main/resources/plugin.yml
index 074e1226a55ef3266d31a89be11b2b40fd56f8b5..1375cac9133e7a3877657879559bf9d63570b750 100644
--- a/PlayWallPlugins/PlayWallPluginPlayoutLog/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginPlayoutLog/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "PlayoutLogPlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 8
+build: 9
diff --git a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/resources/plugin.yml b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/resources/plugin.yml
index 20f98f590f65c3d60a2b38426294a052e816413b..2f569fa8af980990863c4413821ee980ece9c130 100644
--- a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/resources/plugin.yml
+++ b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/resources/plugin.yml
@@ -3,4 +3,4 @@ name: "WebApiPlugin"
 artifactId: "${pom.artifactId}"
 groupId: "${pom.groupId}"
 version: "${pom.version}"
-build: 1
+build: 2
diff --git a/pom.xml b/pom.xml
index 81c80d4559cbd065453ea96d678d09679f027513..08781928dbc439dbf7103ba7a058b26b6301fa27 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
     <packaging>pom</packaging>
 
     <properties>
-        <project.build.code>41</project.build.code>
+        <project.build.code>42</project.build.code>
         <project.versionDate>${maven.build.timestamp}</project.versionDate>
         <maven.build.timestamp.format>yyyy-MM-dd</maven.build.timestamp.format>
 
@@ -23,7 +23,7 @@
 
         <jlibs.version>2.0.6</jlibs.version>
         <libPlugins.version>2.2.1</libPlugins.version>
-        <versionizer-api.version>1.1.1</versionizer-api.version>
+        <versionizer-api.version>1.2.0</versionizer-api.version>
 
         <jlayer.version>1.0.1</jlayer.version>