diff --git a/settings/controller/appsettingscontroller.php b/settings/controller/appsettingscontroller.php
index f5cb043da20ba78057db079d2563f7e0d29282f0..9022e48a342ef96d81f4b75f4b29abaccea6c5bb 100644
--- a/settings/controller/appsettingscontroller.php
+++ b/settings/controller/appsettingscontroller.php
@@ -96,11 +96,13 @@ class AppSettingsController extends Controller {
 
 	/**
 	 * @NoCSRFRequired
+	 * @param int $category
 	 * @return TemplateResponse
 	 */
-	public function viewApps() {
+	public function viewApps($category = 0) {
 		$params = [];
 		$params['experimentalEnabled'] = $this->config->getSystemValue('appstore.experimental.enabled', false);
+		$params['category'] = $category;
 		$this->navigationManager->setActiveEntry('core_apps');
 
 		$templateResponse = new TemplateResponse($this->appName, 'apps', $params, 'user');
diff --git a/settings/js/apps.js b/settings/js/apps.js
index 987153b778c5f8092b0a1ddbe6a01d2836eab457..bb3b1b85c3b36b873e515adcf35cfa2de30678d2 100644
--- a/settings/js/apps.js
+++ b/settings/js/apps.js
@@ -40,7 +40,8 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		}
 
 		var categories = [
-			{displayName: 'Enabled', id: '0'}
+			{displayName: t('settings', 'Enabled'), id: '0'},
+			{displayName: t('settings', 'Not enabled'), id: '1'}
 		];
 
 		var source   = $("#categories-template").html();
@@ -48,7 +49,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		var html = template(categories);
 		$('#apps-categories').html(html);
 
-		OC.Settings.Apps.loadCategory(0);
+		OC.Settings.Apps.loadCategory(parseInt($('#app-navigation').attr('data-category'), 10));
 
 		this._loadCategoriesCall = $.ajax(OC.generateUrl('settings/apps/categories'), {
 			data:{},
@@ -398,14 +399,14 @@ OC.Settings.Apps = OC.Settings.Apps || {
 			.text('');
 	},
 
-	showReloadMessage: function(appId) {
+	showReloadMessage: function() {
 		OC.dialogs.info(
 			t(
 				'settings',
 				'The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds.'
 			),
 			t('settings','App update'),
-			function (result) {
+			function () {
 				window.location.reload();
 			},
 			true
@@ -443,6 +444,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		$(document).on('click', 'ul#apps-categories li', function () {
 			var categoryId = $(this).data('categoryId');
 			OC.Settings.Apps.loadCategory(categoryId);
+			OC.Util.History.pushState('category=' + categoryId);
 		});
 
 		$(document).on('click', '.app-description-toggle-show', function () {
@@ -508,7 +510,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		});
 
 		$(document).on('click', '#enable-experimental-apps', function () {
-			var state = $(this).prop('checked')
+			var state = $(this).prop('checked');
 			$.ajax(OC.generateUrl('settings/apps/experimental'), {
 				data: {state: state},
 				type: 'POST',
diff --git a/settings/templates/apps.php b/settings/templates/apps.php
index 7e6c151fa657cc5250b4bee2df3ccc37dc5c5167..5d9abe021ace25ba006348efdbe5c0bcdb3eec98 100644
--- a/settings/templates/apps.php
+++ b/settings/templates/apps.php
@@ -127,7 +127,7 @@ script(
 	</div>
 </script>
 
-<div id="app-navigation" class="icon-loading">
+<div id="app-navigation" class="icon-loading" data-category="<?php p($_['category']);?>">
 	<ul id="apps-categories">
 
 	</ul>
diff --git a/tests/settings/controller/AppSettingsControllerTest.php b/tests/settings/controller/AppSettingsControllerTest.php
index d6379deb9c81abf196c25d138d7ecd1bf3bd6dd2..62eebc2de506a589309ee33d6ca5601af6c08bdb 100644
--- a/tests/settings/controller/AppSettingsControllerTest.php
+++ b/tests/settings/controller/AppSettingsControllerTest.php
@@ -223,9 +223,28 @@ class AppSettingsControllerTest extends TestCase {
 		$policy = new ContentSecurityPolicy();
 		$policy->addAllowedImageDomain('https://apps.owncloud.com');
 
-		$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false], 'user');
+		$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 0], 'user');
 		$expected->setContentSecurityPolicy($policy);
 
 		$this->assertEquals($expected, $this->appSettingsController->viewApps());
 	}
+
+	public function testViewAppsNotEnabled() {
+		$this->config
+			->expects($this->once())
+			->method('getSystemValue')
+			->with('appstore.experimental.enabled', false);
+		$this->navigationManager
+			->expects($this->once())
+			->method('setActiveEntry')
+			->with('core_apps');
+
+		$policy = new ContentSecurityPolicy();
+		$policy->addAllowedImageDomain('https://apps.owncloud.com');
+
+		$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 1], 'user');
+		$expected->setContentSecurityPolicy($policy);
+
+		$this->assertEquals($expected, $this->appSettingsController->viewApps(1));
+	}
 }