mirror of
https://github.com/balena-io/etcher.git
synced 2025-04-29 01:37:18 +00:00

When the user clicks on the backdrop of a modal, the modal promise gets rejected, therefore triggering our application error handler. UI Bootstrap provides a way to disable the backdrop completely, but doesn't provide a way to allow a backdrop click to simply close the modal rather than rejecting it, as if an issue happened. To mitigate this issue, and still preserve the backdrop functionality, we created `ModalService`, which abstracts the messy details of calling `$uibModal`, and has custom logic to ignore "backdrop click" errors. Change-Type: patch Changelog-Entry: Fix "backdrop click" uncaught errors on modals. Signed-off-by: Juan Cruz Viotti <jviottidc@gmail.com>
33 lines
1.0 KiB
JavaScript
33 lines
1.0 KiB
JavaScript
/*
|
|
* Copyright 2016 Resin.io
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
/**
|
|
* @module Etcher.Components.TooltipModal
|
|
*/
|
|
|
|
const angular = require('angular');
|
|
const MODULE_NAME = 'Etcher.Components.TooltipModal';
|
|
const TooltipModal = angular.module(MODULE_NAME, [
|
|
require('../modal/modal')
|
|
]);
|
|
|
|
TooltipModal.controller('TooltipModalController', require('./controllers/tooltip-modal'));
|
|
TooltipModal.service('TooltipModalService', require('./services/tooltip-modal'));
|
|
|
|
module.exports = MODULE_NAME;
|