## [Bug] Text Input Box Unresponsive and Text Not Displayed Correctly in Fundraising Creation Modal #193

Closed
opened 2026-05-24 16:14:18 +00:00 by enjin2310 · 2 comments

🧩 Summary

In the Fundraisers section, the text input box within the “Elige el tipo de recaudación” modal does not allow user interaction. Typed text either fails to appear or is rendered incorrectly, preventing users from proceeding with the fundraiser creation process.

🧪 Steps to Reproduce

  1. Navigate to learn.spikersoft.com/fundraisers.
  2. Click Nueva recaudación.
  3. In the modal step 1. Tipo, attempt to type in the text box.
  4. Observe that the input field does not respond properly — text is either invisible or partially rendered.

Expected Behavior

The text box should:

  • Accept keyboard input normally.
  • Display entered text clearly.
  • Allow users to proceed to the next step after valid input.

Actual Behavior

  • The input box appears active but does not register keystrokes.
  • Text is either missing or visually clipped.
  • The Continuar button remains functional but cannot validate input.

📸 Evidence

The attached screenshot shows the modal with the text field partially filled (“fle”) and rendering issues visible.

🧠 Possible Root Cause

  • CSS or JavaScript rendering conflict within the modal component.
  • Input field overlay or z-index issue blocking interaction.
  • Missing binding between the input element and the state handler.

🔧 Suggested Fix

  1. Inspect the modal’s input component for event listener conflicts.
  2. Ensure proper binding to the input state:
    <input
      type="text"
      value={fundraiserType}
      onChange={(e) => setFundraiserType(e.target.value)}
      className="input-field"
    />
    
### 🧩 Summary In the **Fundraisers** section, the text input box within the **“Elige el tipo de recaudación”** modal does not allow user interaction. Typed text either fails to appear or is rendered incorrectly, preventing users from proceeding with the fundraiser creation process. ### 🧪 Steps to Reproduce 1. Navigate to `learn.spikersoft.com/fundraisers`. 2. Click **Nueva recaudación**. 3. In the modal step **1. Tipo**, attempt to type in the text box. 4. Observe that the input field does not respond properly — text is either invisible or partially rendered. ### ✅ Expected Behavior The text box should: - Accept keyboard input normally. - Display entered text clearly. - Allow users to proceed to the next step after valid input. ### ❌ Actual Behavior - The input box appears active but does not register keystrokes. - Text is either missing or visually clipped. - The **Continuar** button remains functional but cannot validate input. ### 📸 Evidence The attached screenshot shows the modal with the text field partially filled (“fle”) and rendering issues visible. ### 🧠 Possible Root Cause - CSS or JavaScript rendering conflict within the modal component. - Input field overlay or z-index issue blocking interaction. - Missing binding between the input element and the state handler. ### 🔧 Suggested Fix 1. Inspect the modal’s input component for event listener conflicts. 2. Ensure proper binding to the input state: ```js <input type="text" value={fundraiserType} onChange={(e) => setFundraiserType(e.target.value)} className="input-field" />
Owner

Triage note: I can't reproduce this in the current build. The "Elige el tipo de recaudación" (step 1 / Tipo) screen was redesigned and no longer contains a free-text input — the fundraiser type is now chosen via selectable radio cards (Product Resale / Bake Sale / Service-Based / Custom), so there is no text box there to be unresponsive. This appears to have been resolved by the redesign since the report (reported against v2026.05.17a).

Leaving open for re-verification: please confirm against the latest deploy. If you were instead referring to the text inputs in the Items step (item name / cost), those are addressed in PR #14 (#194 / #195).

Triage note: I can't reproduce this in the current build. The "Elige el tipo de recaudación" (step 1 / Tipo) screen was redesigned and no longer contains a free-text input — the fundraiser type is now chosen via selectable radio cards (Product Resale / Bake Sale / Service-Based / Custom), so there is no text box there to be unresponsive. This appears to have been resolved by the redesign since the report (reported against v2026.05.17a). Leaving open for re-verification: please confirm against the latest deploy. If you were instead referring to the text inputs in the **Items** step (item name / cost), those are addressed in PR #14 (#194 / #195).
Owner

Root cause found and fixed. The modal's text input was wired correctly; the input was being swallowed by an app-wide listener leak from the games. The Minecraft (wasm-voxel) engine leaked a global document mousedown (with preventDefault) and global keydown/keyup handlers that were never removed when leaving the game, so for the rest of the SPA session (until reload) clicking into / typing in the “Elige el tipo de recaudación” field did nothing. The leaked game listeners are now torn down on destroy in spikersoft-angular PR #62 (merged to master), with the related game keydown-capture leaks fixed in PR #61 (merged). Closing — please reopen if it still reproduces on the latest deploy (noting whether a game was opened earlier in the session helps).

Root cause found and fixed. The modal's text input was wired correctly; the input was being swallowed by an app-wide listener leak from the games. The Minecraft (`wasm-voxel`) engine leaked a global `document` `mousedown` (with `preventDefault`) and global `keydown`/`keyup` handlers that were never removed when leaving the game, so for the rest of the SPA session (until reload) clicking into / typing in the “Elige el tipo de recaudación” field did nothing. The leaked game listeners are now torn down on destroy in spikersoft-angular PR #62 (merged to `master`), with the related game keydown-capture leaks fixed in PR #61 (merged). Closing — please reopen if it still reproduces on the latest deploy (noting whether a game was opened earlier in the session helps).
Sign in to join this conversation.