PLAYGARAJ v2.5.5 - CHAT AND UX UPDATE

PLAYGARAJ v2.5.5 - CHAT AND UX UPDATE

Hello PlayGaraj community! ✌️

Based on your valuable feedback, we have prepared a fantastic mid-season update to completely optimize the Chat system—one of the most actively used parts of our app—and elevate it to the most premium level both visually and functionally!

With this update, we have rooted out the performance issues during chat launches and made your messaging experience highly modern and fluid. Here is what has changed in the PlayGaraj chat system with the v2.5.5 version:


🛠️ FIXED ISSUES AND PERFORMANCE OPTIMIZATIONS

Critical Improvements:

  1. Chat Screen Transition and Loading Lags Fixed: For our users with a high number of active chats, the stuttering and freezing issues experienced when entering the chat menu have been completely resolved!
    • Firestore Stream Caching: The Firestore database connection, which previously had to be built from scratch every time the chat list refreshed, is now smartly cached in the widget State. This prevents unnecessary database reads and reduces CPU load to zero.
    • Transition Deferring: Heavy background database queries running during screen slide animations have been blocked. The data stream is deferred until the transition animation (375ms) completely finishes, resulting in 100% fluid, buttery-smooth screen transitions.
  2. Message Input Area Screen Takeover Bug Resolved: The bug where the message input area would expand infinitely vertically when typing long or multi-line messages, blocking the entire chat feed, has been fixed! Now, the message typing area can expand up to a maximum of 5 lines. Once it exceeds 5 lines, it becomes scrollable within itself and never obstructs other parts of the chat screen.
  3. Live Synchronization of User Info and Profile Pictures (Real-Time Self-Healing): The issue where old information remained on the chat list and chat screen when the people you chatted with changed their profile pictures or usernames has been completely resolved!
    • Read-Time Self-Healing: The moment you open the chat window, the other user's most up-to-date profile data is fetched in the background at zero cost (via the already ongoing online status check, without additional database queries). It is compared with the old denormalized records in the database, and in case of any mismatch, the data is automatically updated in the background using a secure Firestore Transaction. Similarly, the current user's changed data is also auto-healed.
    • 100% Real-Time Sync: The AppBar of the chat screen is directly linked to this live data stream. The moment the other party adds or changes their picture, you will see the new image within milliseconds on both the chat screen and the chat list screen, without needing to restart the app!

User Experience (UX) Enhancements:

  1. Instant Send Response (Optimistic Send UX): The issue where the message would briefly hang in the input area after pressing the send button, giving the feeling that it "didn't go through," has been fixed! Now, the moment you press the send button, the message box instantly clears, and the chat window empties. The message sending process is completed in the background within milliseconds.
  2. Smart Message Recovery on Error: If the network connection drops or an unexpected error occurs while sending a message, your typed messages are no longer lost! When an error happens, our system automatically restores your typed text back into the message input box and notifies you with a red SnackBar warning. This way, you can try sending it again without losing your message.
  3. Listing Edit and Creation Screen Inconsistencies Resolved: The Edit Listing page has been made fully compatible with the Add Listing page!
    • The term "Price" has been removed and replaced with "Listing Value" in accordance with modern standards.
    • The broader "Unit" option has been introduced to replace the "Currency" option.
    • Obsolete currencies have been removed from the dropdown list, updating the unit options exclusively to "Game Money" and "Custom Offer".
    • The "Custom Offer" option has been locked for non-PRO users, and an informative warning dialog has been added.
    • Decimal price values with a ".0" extension in older listings now display cleanly and elegantly as integers.
  4. Smart Automatic Server Selection and Language Fallback: The initial automatic server detection and selection mechanism for our new servers added in the v2.5.0 update (Philippines 🇵🇭, India 🇮🇳, Iraq 🇮🇶, Mexico 🇲🇽, Pakistan 🇵🇰) has been perfected!
    • Region and Language Integration: Even if no region/country code is defined on your device, the corresponding regional server (Pakistan, Philippines, India, Mexico, Saudi Arabia) is automatically determined and saved at app launch based on your device's language code (e.g., Urdu ur, Tagalog/Filipino tl/fil, Hindi hi, Spanish es, Arabic ar). Thus, our users in new servers are automatically connected to the nearest regional server without any extra steps.

🚀 PREMIUM INNOVATIONS IN CHAT INTERFACE

  1. Revamped Modern "Pill" Designed Input Panel (Unified Input Pill)

    The message input area at the bottom of the chat screen has been upgraded to the standards of modern chat apps:

    • Unified Container: The photo send button, listing add button, and text box are all placed inside a highly stylish, rounded, and unified "pill" container (BorderRadius.circular(28)).
    • Smart Vertical Alignment (CrossAxisAlignment.end): Vertical shifting of the file and listing add buttons during multi-line text inputs has been prevented. All buttons always remain aligned to the bottom row vertically, providing ease of use.
    • Thematic Harmony: The container background has been matched with a sleek semi-transparent gray tone in the light theme and a deep charcoal color in the dark theme, resulting in an eye-friendly, aesthetic design.
  2. Context-Aware Send Button

    The send button is now much more dynamic and interactive:

    • When the text area is empty, the button remains passive-looking and semi-transparent (50% opacity).
    • The moment you enter even a single letter into the message area, the button instantly comes alive, reaches full opacity, and a very stylish circular color glow (boxShadow) appears behind it. Pressing the button now offers a visual feast.
  3. Swipe-to-Reply

    We've added a WhatsApp/Instagram style swipe-to-reply feature that will multiply your messaging speed and prevent confusion in chats!

    • Intuitive Gesture Control: Whether you slightly swipe right on a message you wrote or one sent by the other party, the reply mode automatically activates as the message box springs back with a stylish bounce animation.
    • Instant Reply Preview Panel (Reply Banner): The message you are replying to appears right above the message input area as a preview strip with a stylish vertical colored bar on the left and the sender's name. Special smart tags (📷 Photo, 🚗 Vehicle Listing, etc.) are automatically shown for text, listing, or image messages.
    • Stylish Reply Bubble: When you reply and send the message, a semi-transparent, highly aesthetic preview box showing which message you replied to is placed at the top of the new message bubble. This preview perfectly matches both light and dark theme colors and the message's own color tone.
    • Cross-Format Support: You can just as easily reply to a listing, a photo, or an image message, not just plain text.
  4. Emoji Reactions on Messages

    We've added the much-loved emoji reaction feature from WhatsApp and Instagram to add much more fun and expressive richness to your chats!

    • Easy and Intuitive Use: When you long-press on any message bubble (whether yours or the other party's), a premium emoji bar with a glass effect (blur) instantly appears on the screen.
    • Lively Spring Animation: The emoji bar comes in with a highly fluid grow and bounce animation. When you tap or hold-and-release on the emojis, a very sweet scale animation plays.
    • 7 Different Emotion Expressions: The exact emojis you can react with are: 👍, ❤️, 😂, 😢, 🥳, 🥺, 😡.
    • Toggle Feature: You can instantly remove (toggle) a reaction you left on a message by tapping the exact same emoji again, or update your reaction by pressing a different emoji.
    • Stylish and Aesthetic Look (Inline Badges): Emojis left on a message are displayed just below the message bubble inside a stylish, small, rounded-edge, slightly overlapping aesthetic capsule.
    • Dynamic Positioning and Breathing Space: Reactions are automatically positioned relative to your message bubble (bottom-right for sent messages, bottom-left for received messages). Additionally, an extra breathing space is automatically left under messages with reactions to prevent the chat feed from looking cramped.
    • Instant Sync: Thanks to the Firestore infrastructure, the emoji reactions you leave or remove are updated live on the other party's screen within milliseconds.
  5. Long-Press Clipboard Copying

    We added a long-press to copy feature so you can easily save important info, addresses, or listing details within the chat!

    • Easy Access: Right below the premium emoji bar that opens when you long-press a message, an extremely stylish glassmorphic "Copy Message" button appears.
    • Smart Text Detection:
      - For plain text messages, the message content is copied directly.
      - For vehicle listings, the title and price of the listing are automatically formatted (as "Title - Price") and copied.
      - For image messages, the caption/tag below the image is smartly copied.
    • Stylish and Haptic Feedback: When you tap the button, an instant ripple effect (InkWell) triggers, the dialog window closes fluidly, and the copy operation is executed.
    • Premium Notification (Floating SnackBar): When the copying is complete, a floating SnackBar/Toast notification with rounded corners, matching the app's main colors, and featuring a stylish checkmark on the left appears at the bottom of the screen ("Message copied!").
  6. Real-Time Typing Indicator

    An animated "Typing..." indicator has been added to maximize engagement in the chat and provide a fluid dialogue environment!

    • Animated Ellipsis Bubble: When the other party starts typing, a stylish three-dot animation bubble appears, just like in WhatsApp. Without using any external packages, rhythmic waving of three dots that animate, scale up and down, and change opacity sequentially was achieved using Flutter's native animation engine.
    • Zero-Cost Streaming: Instead of opening a new database query to instantly listen to whether the other party is typing, we expanded the live data stream we currently use for online status tracking. This established a perfect architecture with zero additional Read cost that won't strain your database limits.
    • Smart Debouncing: The typing status is reported to Firestore only on the first keystroke. Subsequent keystrokes do not send a new write request to the database; instead, a local Timer is reset. If no new letter is entered for 4 seconds, if the text box is completely cleared, or the moment the message is sent, the typing status is instantly and automatically cleared in the background. Thus, unnecessary data traffic is 100% prevented.

🔒 SECURITY & STABILITY IMPROVEMENTS

* Note: Internal backend security details have been safely redacted for public release.

Alongside this update, we have implemented important infrastructure enhancements to ensure a safer and more consistent experience across devices.

  • Enhanced PRO Subscription Validation: We have optimized the subscription verification mechanism to ensure accurate status syncing, especially when managing multiple sessions or switching accounts. Your PRO benefits are now securely and exclusively tied to your active profile, preventing any overlapping states between different accounts.

This security update does not require any action from our current PRO members; your subscriptions will continue to work seamlessly.


Update your app right now and enjoy this new, premium chat experience! We wish you enjoyable negotiations and highly profitable trades! 🚗💨

Comments

Popular posts from this blog

What is PlayGaraj? The Safe Haven for Virtual Car Collectors

How to Trade In-Game Cars Safely: Avoiding Scams

PLAYGARAJ v2.5.0 - RELEASE NOTES AND NEW FEATURES