summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2014-08-11 16:29:15 +0200
committerVincent Petry <pvince81@owncloud.com>2014-08-12 12:00:34 +0200
commite1a47683ef798f0569edebdf66e340ca439e357f (patch)
treee941a0f436771aa6326cff3c2d63dc246220c95a /core
parente4221869c2b99e91c88d50f7f4c5a5e28c6de042 (diff)
downloadnextcloud-server-e1a47683ef798f0569edebdf66e340ca439e357f.tar.gz
nextcloud-server-e1a47683ef798f0569edebdf66e340ca439e357f.zip
Trigger events when app-settings visibility changes
Diffstat (limited to 'core')
-rw-r--r--core/js/apps.js19
1 files changed, 15 insertions, 4 deletions
diff --git a/core/js/apps.js b/core/js/apps.js
index 5f221bb9826..d874f8598fa 100644
--- a/core/js/apps.js
+++ b/core/js/apps.js
@@ -43,15 +43,26 @@
var areaSelector = $(button).data('apps-slide-toggle');
var area = $(areaSelector);
+ function hideArea() {
+ area.slideUp(function() {
+ area.trigger(new $.Event('hide'));
+ });
+ }
+ function showArea() {
+ area.slideDown(function() {
+ area.trigger(new $.Event('show'));
+ });
+ }
+
// do nothing if the area is animated
if (!area.is(':animated')) {
// button toggles the area
if (button === event.target) {
if (area.is(':visible')) {
- area.slideUp();
+ hideArea();
} else {
- area.slideDown();
+ showArea();
}
// all other areas that have not been clicked but are open
@@ -59,7 +70,7 @@
} else {
var closest = $(event.target).closest(areaSelector);
if (area.is(':visible') && closest[0] !== area[0]) {
- area.slideUp();
+ hideArea();
}
}
}
@@ -73,4 +84,4 @@
registerAppsSlideToggle();
});
-}(document, jQuery, OC)); \ No newline at end of file
+}(document, jQuery, OC));