Plugin Directory

Changeset 3443228


Ignore:
Timestamp:
01/20/2026 12:20:53 PM (2 months ago)
Author:
dinethchamuditha
Message:

Fixes a major conflict where the website scroll or buttons could freeze on Product Pages.

Location:
tryloom
Files:
38 added
5 edited

Legend:

Unmodified
Added
Removed
  • tryloom/trunk/assets/css/frontend.css

    r3425550 r3443228  
    44 * @package WooCommerce_Try_On
    55 */
     6
     7/**
     8 * Scroll Lock Class
     9 * Used to prevent body scrolling when popup/lightbox is open.
     10 * Uses a class instead of inline styles to avoid conflicts with theme scripts.
     11 */
     12body.tryloom-scroll-lock {
     13    overflow: hidden !important;
     14    position: fixed;
     15    width: 100%;
     16    height: 100%;
     17}
    618
    719:root {
     
    259271
    260272.tryloom-popup-close:hover {
    261     transform: rotate(90deg) scale(1.2);
     273    transform: rotate(90deg) scale(1);
    262274    color: var(--tryloom-close-hover);
     275    background: transparent
    263276}
    264277
  • tryloom/trunk/assets/js/frontend.js

    r3425550 r3443228  
    704704                    $('.tryloom-lightbox-content img').attr('src', imgSrc);
    705705                    $('.tryloom-lightbox').addClass('open');
    706                     $('body').css('overflow', 'hidden'); // Prevent scrolling
     706                    $('body').addClass('tryloom-scroll-lock'); // Prevent scrolling
    707707                }
    708708            });
     
    718718                    $('.tryloom-lightbox-content img').attr('src', imgSrc);
    719719                    $('.tryloom-lightbox').addClass('open');
    720                     $('body').css('overflow', 'hidden');
     720                    $('body').addClass('tryloom-scroll-lock');
    721721                }
    722722            });
     
    726726                if (e.target === this) {
    727727                    $('.tryloom-lightbox').removeClass('open');
    728                     $('body').css('overflow', 'auto'); // Re-enable scrolling
     728                    $('body').removeClass('tryloom-scroll-lock'); // Re-enable scrolling
    729729                }
    730730            });
     
    734734                if (e.keyCode === 27) { // Escape key
    735735                    $('.tryloom-lightbox').removeClass('open');
    736                     $('body').css('overflow', 'auto'); // Re-enable scrolling
     736                    $('body').removeClass('tryloom-scroll-lock'); // Re-enable scrolling
    737737                }
    738738            });
     
    746746        openPopup: function (productId) {
    747747            // Disable page scrolling
    748             $('body').css('overflow', 'hidden');
     748            $('body').addClass('tryloom-scroll-lock');
    749749
    750750            // Get the popup element
     
    841841
    842842            // Re-enable page scrolling
    843             $('body').css('overflow', 'auto');
     843            $('body').removeClass('tryloom-scroll-lock');
    844844        },
    845845
  • tryloom/trunk/includes/api/class-tryloom-api.php

    r3442039 r3443228  
    269269            'product_image' => $product_image_base64,
    270270            'store_domain' => wp_parse_url(site_url(), PHP_URL_HOST),
    271             'plugin_version' => defined('TRYLOOM_VERSION') ? TRYLOOM_VERSION : '1.2.2',
     271            'plugin_version' => defined('TRYLOOM_VERSION') ? TRYLOOM_VERSION : '1.2.3',
    272272            'method' => $try_on_method,
    273273            'instance_id' => $this->get_instance_id(),
  • tryloom/trunk/readme.txt

    r3442064 r3443228  
    118118== Changelog ==
    119119
     120= 1.2.3 =
     121* Fix: Resolved a critical "Scroll Lock" conflict that caused the page interface to freeze on certain themes (e.g., Minimog) when interacting with Cart or Search drawers.
     122* Update: Replaced aggressive inline-style scroll locking with a passive "Class-Based" system (tryloom-scroll-lock) to prevent interference with theme navigation.
     123* Fix: Corrected a Z-Index layering issue where the plugin container could block clicks on underlying buttons even when closed.
     124* Improvement: Added a "Safety Net" script to force-release any scroll locks immediately upon page load.
     125* Improvement: Optimized CSS pointer-events to ensure the plugin is completely "transparent" to mouse clicks when not in use.
     126
    120127= 1.2.2 =
    121128* Fix: Optimized asset loading logic to prevent script execution on non-product pages.
     
    177184== Upgrade Notice ==
    178185
    179 = 1.2.2 = Maintenance Update: Fixes a theme compatibility conflict involving navigation menus and optimizes site-wide performance by strictly isolating plugin assets to WooCommerce pages. Highly recommended for users of Minimog and other Elementor-based themes.
     186= 1.2.3 =
     187Critical Update: Fixes a major conflict where the website scroll or buttons (Cart/Search) could freeze on Product Pages. Recommended for all users immediately.
     188
     189= 1.2.2 =
     190Maintenance Update: Fixes a theme compatibility conflict involving navigation menus and optimizes site-wide performance by strictly isolating plugin assets to WooCommerce pages. Highly recommended for users of Minimog and other Elementor-based themes.
    180191
    181192= 1.2.1 =
  • tryloom/trunk/tryloom.php

    r3442039 r3443228  
    44 * Plugin URI: https://gettryloom.com/
    55 * Description: TryLoom lets customers virtually try on clothing, shoes, hats, and eyewear in WooCommerce.
    6  * Version: 1.2.2
    7  * Stable tag: 1.2.2
     6 * Version: 1.2.3
     7 * Stable tag: 1.2.3
    88 * Author: ToolTeek
    99 * Author URI: https://toolteek.com/
     
    2626
    2727// Define plugin constants.
    28 define('TRYLOOM_VERSION', '1.2.2');
     28define('TRYLOOM_VERSION', '1.2.3');
    2929define('TRYLOOM_PLUGIN_DIR', plugin_dir_path(__FILE__));
    3030define('TRYLOOM_PLUGIN_URL', plugin_dir_url(__FILE__));
Note: See TracChangeset for help on using the changeset viewer.