diff --git a/settings/css/settings.css b/settings/css/settings.css
index 3f23fb6680dbe..3d4a4a7810002 100644
--- a/settings/css/settings.css
+++ b/settings/css/settings.css
@@ -507,21 +507,19 @@ span.version {
opacity: .5;
}
-.app-level {
- margin-top: 8px;
-}
.app-level span {
color: #555;
background-color: transparent;
border: 1px solid #555;
border-radius: 3px;
- padding: 3px 6px;
+ padding: 4px 6px;
+ display: block
}
.app-level .official {
border-color: #37ce02;
background-position: left center;
background-position: 5px center;
- padding-left: 25px;
+ text-align: center;
}
.app-score {
@@ -540,45 +538,49 @@ span.version {
position: relative;
flex: 0 0 auto;
margin-left: 20px;
+ flex-flow: column wrap;
+ display: flex;
+ padding: 0;
}
#apps-list .section.apps-experimental {
flex-basis: 90%;
}
-
+/* 4 columns */
@media (min-width: 1601px) {
#apps-list .section {
- width: 22%;
+ width: calc(25% - 25px); /* 5margins*20/4 */
box-sizing: border-box;
}
#apps-list .section:nth-child(4n) {
margin-right: 20px;
}
}
-
+/* 3 columns */
@media (min-width: 1201px) and (max-width: 1600px) {
#apps-list .section {
- width: 30%;
+ width: calc(33% - 26px); /* 4margins*20/3 */
box-sizing: border-box;
}
#apps-list .section:nth-child(3n) {
margin-right: 20px;
}
}
-
-@media (min-width: 901px) and (max-width: 1200px), (min-width: 601px) and (max-width: 770px) {
+/* 2 columns */
+@media (min-width: 951px) and (max-width: 1200px), (min-width: 701px) and (max-width: 770px) {
#apps-list .section {
- width: 40%;
+ width: calc(50% - 30px);/* 3margins*20/2 */
box-sizing: border-box;
}
#apps-list .section:nth-child(2n) {
margin-right: 20px;
}
}
-
-@media (max-width: 600px), (min-width: 771px) and (max-width: 900px) {
+/* 1 column */
+@media (max-width: 700px), (min-width: 769px) and (max-width: 950px) {
#apps-list .section {
- width: 100%;
+ width: calc(100% - 40px);
box-sizing: border-box;
+ margin-right: 20px;
}
}
@@ -586,9 +588,6 @@ span.version {
margin-bottom: 8px;
display: inline;
}
-form.section {
- position: relative;
-}
.followupsection {
display: block;
padding: 0 30px 30px 30px;
@@ -597,18 +596,20 @@ form.section {
margin-top: -30px;
position: relative;
}
+.app-info-container,
+.app-details-container {
+ width: calc(100% - 110px);
+}
+.app-details-container {
+ flex-basis: 50%;
+}
.app-image {
float: left;
- padding-right: 10px;
- width: 80px;
- height: 80px;
+ margin-right: 10px;
+ width: 40px;
+ height: 40px;
opacity: 0.8;
-}
-.app-name,
-.app-version,
-.app-score,
-.app-level {
- display: inline-block;
+ overflow: hidden;
}
.app-description-toggle-show,
@@ -632,10 +633,6 @@ form.section {
white-space: pre-line;
}
-#apps-list .groups-enable {
- margin-top: 8px;
-}
-
#app-category-1 {
margin-bottom: 18px;
}
@@ -664,7 +661,25 @@ form.section {
margin-top: 1em;
margin-bottom: 1em;
}
-
+.app-actions-container {
+ display: flex;
+ flex-direction: column;
+ width: 100px;
+ flex-grow: 0;
+ flex-basis: 50%;
+}
+.app-actions-container > div,
+.app-actions-container > input:not([type='hidden']) {
+ margin: 0 0 3px 0;
+ flex-shrink: 0;
+}
+.app-actions-container .select2-container-multi .select2-choices {
+ padding: 0;
+}
+.app-actions-container .select2-container-multi .select2-choices .select2-search-choice {
+ margin: 2px;
+ margin-right: 0;
+}
/* LOG */
#log {
diff --git a/settings/js/apps.js b/settings/js/apps.js
index de35cd5367283..d56e6840882c2 100644
--- a/settings/js/apps.js
+++ b/settings/js/apps.js
@@ -116,7 +116,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
if (app.update) {
var $update = $('#app-' + app.id + ' .update');
$update.removeClass('hidden');
- $update.val(t('settings', 'Update to %s').replace(/%s/g, app.update));
+ $update.val(t('settings', 'Update (%s)').replace(/%s/g, app.update));
OC.Settings.Apps.State.availableUpdates++;
}
});
@@ -236,12 +236,12 @@ OC.Settings.Apps = OC.Settings.Apps || {
*/
imageUrl : function (url, appfromstore) {
- var img = '';
} else {
- img += '';
+ img += '';
}
return img;
},
@@ -420,8 +420,8 @@ OC.Settings.Apps = OC.Settings.Apps || {
element.val(t('settings','Uninstall'));
} else {
OC.Settings.Apps.rebuildNavigation();
- element.parent().fadeOut(function() {
- element.remove();
+ element.parents('.section').fadeOut(function() {
+ element.parents('.section').remove();
});
}
},'json');
diff --git a/settings/templates/apps.php b/settings/templates/apps.php
index 2f7d66cdf28b1..063845b3882e2 100644
--- a/settings/templates/apps.php
+++ b/settings/templates/apps.php
@@ -31,111 +31,119 @@