From 6ef4dd3bde13a24ce082126148815c4223f182ac Mon Sep 17 00:00:00 2001 From: Vlyan Date: Tue, 5 Jan 2021 17:49:38 +0100 Subject: [PATCH] Stop some missing propagation --- system/scripts/actors/base-sheet.js | 12 ++++++++++++ system/scripts/actors/character-sheet.js | 5 ++++- system/scripts/actors/twenty-questions-dialog.js | 6 ++++++ system/scripts/dice/dice-picker-dialog.js | 2 ++ system/scripts/help/help-dialog.js | 2 ++ system/scripts/items/item-sheet.js | 6 ++++++ system/templates/actors/character/identity.html | 2 +- 7 files changed, 33 insertions(+), 2 deletions(-) diff --git a/system/scripts/actors/base-sheet.js b/system/scripts/actors/base-sheet.js index 2a82787..ef17b5b 100644 --- a/system/scripts/actors/base-sheet.js +++ b/system/scripts/actors/base-sheet.js @@ -168,6 +168,8 @@ export class BaseSheetL5r5e extends ActorSheet { // Toggle html.find(".toggle-on-click").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const elmt = $(event.currentTarget).data("toggle"); const tgt = html.find("." + elmt); tgt.hasClass("toggle-active") ? tgt.removeClass("toggle-active") : tgt.addClass("toggle-active"); @@ -180,6 +182,8 @@ export class BaseSheetL5r5e extends ActorSheet { // *** Dice event on Skills clic *** html.find(".dice-picker").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const li = $(event.currentTarget); new game.l5r5e.DicePickerDialog({ skillId: li.data("skill") || null, @@ -191,17 +195,25 @@ export class BaseSheetL5r5e extends ActorSheet { // On focus on one numeric element, select all text for better experience html.find(".select-on-focus").on("focus", (event) => { + event.preventDefault(); + event.stopPropagation(); event.target.select(); }); // *** Items : add, edit, delete *** html.find(".item-add").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); this._addSubItem(event); }); html.find(`.item-edit`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); this._editSubItem(event); }); html.find(`.item-delete`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); this._deleteSubItem(event); }); } diff --git a/system/scripts/actors/character-sheet.js b/system/scripts/actors/character-sheet.js index 54cac5f..9015b8c 100644 --- a/system/scripts/actors/character-sheet.js +++ b/system/scripts/actors/character-sheet.js @@ -75,11 +75,14 @@ export class CharacterSheetL5r5e extends BaseSheetL5r5e { // *** Items : curriculum management *** html.find(`.item-curriculum`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); this._switchSubItemCurriculum(event); }); html.find(`button[name=validate-curriculum]`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); this.actor.data.data.identity.school_rank = this.actor.data.data.identity.school_rank + 1; - // Update actor this.actor.update({ data: { identity: { diff --git a/system/scripts/actors/twenty-questions-dialog.js b/system/scripts/actors/twenty-questions-dialog.js index 8f7e31d..46b2e7c 100644 --- a/system/scripts/actors/twenty-questions-dialog.js +++ b/system/scripts/actors/twenty-questions-dialog.js @@ -147,6 +147,8 @@ export class TwentyQuestionsDialog extends FormApplication { // Toggle html.find(".toggle-on-click").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const elmt = $(event.currentTarget).data("toggle"); const tgt = html.find("." + elmt); tgt.hasClass("toggle-active") ? tgt.removeClass("toggle-active") : tgt.addClass("toggle-active"); @@ -179,6 +181,8 @@ export class TwentyQuestionsDialog extends FormApplication { // Delete a dnd element html.find(".property-delete").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const stepKey = $(event.currentTarget).parents(".tq-drag-n-drop").data("step"); const itemId = $(event.currentTarget).parents(".property").data("propertyId"); this._deleteOwnedItem(stepKey, itemId); @@ -187,6 +191,8 @@ export class TwentyQuestionsDialog extends FormApplication { // Submit button html.find("#generate").on("click", async (event) => { + event.preventDefault(); + event.stopPropagation(); await this.object.toActor(this.actor, flattenObject(this.cache)); await this.close({ submit: true, force: true }); }); diff --git a/system/scripts/dice/dice-picker-dialog.js b/system/scripts/dice/dice-picker-dialog.js index 7d4a49a..93cbde6 100644 --- a/system/scripts/dice/dice-picker-dialog.js +++ b/system/scripts/dice/dice-picker-dialog.js @@ -272,6 +272,8 @@ export class DicePickerDialog extends FormApplication { // Select Ring html.find('input[name="approach"]').on("click", async (event) => { + event.preventDefault(); + event.stopPropagation(); this.object.ring.id = event.target.dataset.ringid; this.object.ring.value = event.target.value; this.render(false); diff --git a/system/scripts/help/help-dialog.js b/system/scripts/help/help-dialog.js index 596e189..52467bd 100644 --- a/system/scripts/help/help-dialog.js +++ b/system/scripts/help/help-dialog.js @@ -47,6 +47,8 @@ export class HelpDialog extends FormApplication { // Buttons ["edge", "drivethrurpg", "discord"].forEach((name) => { html.find(`button[name='${name}']`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); ui.notifications.info(game.i18n.localize(`l5r5e.logo.${name}-info`)); window.open(game.i18n.localize(`l5r5e.logo.${name}-link`), "_blank"); }); diff --git a/system/scripts/items/item-sheet.js b/system/scripts/items/item-sheet.js index 19ec495..4657b8a 100644 --- a/system/scripts/items/item-sheet.js +++ b/system/scripts/items/item-sheet.js @@ -85,6 +85,8 @@ export class ItemSheetL5r5e extends ItemSheet { // Toggle html.find(".toggle-on-click").on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const elmt = $(event.currentTarget).data("toggle"); const tgt = html.find("." + elmt); tgt.hasClass("toggle-active") ? tgt.removeClass("toggle-active") : tgt.addClass("toggle-active"); @@ -97,11 +99,15 @@ export class ItemSheetL5r5e extends ItemSheet { // On focus on one numeric element, select all text for better experience html.find(".select-on-focus").on("focus", (event) => { + event.preventDefault(); + event.stopPropagation(); event.target.select(); }); // Delete a property html.find(`.property-delete`).on("click", (event) => { + event.preventDefault(); + event.stopPropagation(); const li = $(event.currentTarget).parents(".property"); this._deleteProperty(li.data("propertyId")); }); diff --git a/system/templates/actors/character/identity.html b/system/templates/actors/character/identity.html index dea3f0b..206db83 100644 --- a/system/templates/actors/character/identity.html +++ b/system/templates/actors/character/identity.html @@ -14,7 +14,7 @@