re-added text to main menu back link list entry in hall of fame
[rocksndiamonds.git] / src / libgame / gadgets.c
index c961021a3e2a56e855ed93d9096f270a5823ba63..e150a089809ae1f633b3d377a69219b42dd742fa 100644 (file)
@@ -1711,7 +1711,7 @@ boolean HandleGadgets(int mx, int my, int button)
     struct GadgetInfo *gi = last_gi;
     boolean gadget_changed = ((gi->event_mask & GD_EVENT_TEXT_LEAVING) != 0);
 
-    // check if text gadget has changed its value
+    // check if text input gadget has changed its value
     if (gi->type & GD_TYPE_TEXT_INPUT)
     {
       CheckRangeOfNumericInputGadget(gi);
@@ -1722,6 +1722,15 @@ boolean HandleGadgets(int mx, int my, int button)
        gadget_changed = FALSE;
     }
 
+    // check if text area gadget has changed its value
+    if (gi->type & GD_TYPE_TEXT_AREA)
+    {
+      if (!strEqual(gi->textarea.last_value, gi->textarea.value))
+       strcpy(gi->textarea.last_value, gi->textarea.value);
+      else
+       gadget_changed = FALSE;
+    }
+
     // selectbox does not change its value when closed by clicking outside
     if (gi->type & GD_TYPE_SELECTBOX)
       gadget_changed = FALSE;
@@ -1925,7 +1934,7 @@ boolean HandleGadgets(int mx, int my, int button)
     if (gadget_pressed)                // gadget pressed the first time
     {
       // initialize delay counter
-      DelayReached(&pressed_delay, 0);
+      ResetDelayCounter(&pressed_delay);
 
       // start gadget delay with longer delay after first click on gadget
       pressed_delay_value = GADGET_FRAME_DELAY_FIRST;