diff options
author | Christoph Wurst <christoph@winzerhof-wurst.at> | 2019-05-10 13:38:11 +0200 |
---|---|---|
committer | Christoph Wurst <christoph@winzerhof-wurst.at> | 2019-05-10 13:47:21 +0200 |
commit | 51d49c3134c9acf7e2daba5bcc8c87e14a7548f1 (patch) | |
tree | 2c74c588fbcfeb1bb3766ad4a97ab9e4e21dfdc1 /core/src/components/UserMenu.js | |
parent | 855486d7c14ac41c3b952591cc4acbaed996c45a (diff) | |
download | nextcloud-server-51d49c3134c9acf7e2daba5bcc8c87e14a7548f1.tar.gz nextcloud-server-51d49c3134c9acf7e2daba5bcc8c87e14a7548f1.zip |
Move initCore to the bundle
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'core/src/components/UserMenu.js')
-rw-r--r-- | core/src/components/UserMenu.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/core/src/components/UserMenu.js b/core/src/components/UserMenu.js new file mode 100644 index 00000000000..a9e7d8725bb --- /dev/null +++ b/core/src/components/UserMenu.js @@ -0,0 +1,53 @@ +/* + * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at> + * + * @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +import OC from '../OC' + +import $ from 'jquery' + +export const setUp = () => { + const $menu = $('#header #settings') + + // show loading feedback + $menu.delegate('a', 'click', event => { + let $page = $(event.target) + if (!$page.is('a')) { + $page = $page.closest('a') + } + if (event.which === 1 && !event.ctrlKey && !event.metaKey) { + $page.find('img').remove() + $page.find('div').remove() // prevent odd double-clicks + $page.prepend($('<div/>').addClass('icon-loading-small')) + } else { + // Close navigation when opening menu entry in + // a new tab + OC.hideMenus(() => false) + } + }) + + $menu.delegate('a', 'mouseup', event => { + if (event.which === 2) { + // Close navigation when opening app in + // a new tab via middle click + OC.hideMenus(() => false) + } + }) +} |