Commit graph

595 commits

Author SHA1 Message Date
warsam
a05acf8d35 Make "Always" confirmation behavior setting work by handling it for ongoing sync patches
- Add "Always" option to confirmationBehavior setting
- Route WebSocket patches through the confirmation callback
- Fix UI not transitioning back to Connected after confirming ongoing patches
- Fix DomLabel Flipper motor cleanup on unmount to prevent errors
2026-01-27 04:59:17 -06:00
Joe
730cdbda28 Refactor ConfirmingPage button layout and update snapshot files for syncSourceOnly mode
- Adjusted the layout of the reject button in ConfirmingPage for improved UI consistency.
- Updated multiple snapshot files to include the new syncSourceOnly flag, enhancing the server's sync capabilities in tests.
2026-01-24 05:51:41 -06:00
Joe
b30aa8280d Implement sync source-only mode in ServeSession and ChangeBatcher
- Added support for a new sync mode in ServeSession that filters property changes to only include the Source property when the server indicates it is in source-only mode.
- Updated ChangeBatcher to handle the new syncSourceOnly parameter, ensuring that only relevant property changes are processed based on the server's capabilities.
- Enhanced API response to include sync_source_only flag, indicating the server's sync capabilities.
- Adjusted related functions to accommodate the new sync logic, improving data synchronization efficiency.
2026-01-24 05:24:08 -06:00
Joe
8650cdbd82 Update button layout order in ConfirmingPage and enhance error handling in change processor
- Changed the layout order of the reject button in the ConfirmingPage to improve UI consistency.
- Added error handling for file operations in the change processor, logging errors when file removal or writing fails, enhancing robustness and debuggability.
2026-01-24 05:12:46 -06:00
Joe
06d5ff4d80 Add warning theming and reject confirmation dialog to ConfirmingPage
- Introduced a new 'Warning' style in the theme for buttons, enhancing visual feedback for destructive actions.
- Updated the ConfirmingPage to include a reject confirmation dialog, allowing users to confirm their decision before rejecting changes.
- Adjusted button styles in the confirmation dialog to reflect the new warning theming, improving consistency and user experience.
2026-01-24 04:52:59 -06:00
Joe
2b716351c1 Refactor JSON handling and improve code clarity
- Updated error messages in Http.jsonDecode for better context.
- Enhanced serialization error handling in CompactJson5Serializer.
- Reformatted struct definitions in tests for improved readability.
- Adjusted assertions in tests for better clarity and consistency.
- Refactored project file name checks for improved readability.
2026-01-22 22:22:03 -06:00
Joe
fdd1d145cf json5 work 2026-01-22 22:19:00 -06:00
Joe
c64aec6132 Enhance WhitespaceUtil with LCS-based diff algorithm for improved change detection
- Implemented a Longest Common Subsequence (LCS) algorithm to accurately compute line differences, enhancing the detection of whitespace-only changes.
- Refactored the CountLineDifferences function to utilize LCS for both exact and normalized comparisons, improving performance and clarity.
- Added normalization option to handle whitespace discrepancies effectively, ensuring more precise diff results.
2026-01-21 00:38:33 -06:00
Joe
cd05690d8a Refactor PatchTree and applyPatch for improved readability and logic consistency
- Restructured property change checks in PatchTree.build to enhance clarity and maintainability.
- Updated applyPatch to improve the handling of instance retrieval logic for removed instances.
- Simplified the findDuplicateNames function in diff.lua for better readability and consistency in handling duplicate names.
2026-01-20 23:05:16 -06:00
Joe
d21331cb65 Enhance fuzzy equality function for improved precision handling
- Updated the fuzzyEq function to utilize both absolute and relative epsilon for better precision when comparing numbers. This change improves the handling of small and large values, ensuring more accurate equality checks in the reconciliation process.
2026-01-20 23:02:14 -06:00
Joe
3c33054afd Add support for ignoring auto-created instances in sync process
- Introduced a new configuration for ignored class names in Config.lua to streamline the sync process by skipping instances that are auto-created by Roblox, such as TouchTransmitter and Camera.
- Updated PatchTree, applyPatch, and diff functions to utilize this configuration, enhancing efficiency by preventing unnecessary processing of these instances.
2026-01-20 22:58:44 -06:00
Joe
c5c6bf9a10 Update PatchTree and applyPatch to skip TouchTransmitter instances during patch processing
- Modified the logic in PatchTree.build and applyPatch functions to skip instances of ClassName "TouchTransmitter", which are auto-created by Roblox for touch events.
- This change enhances the efficiency of patch applications by preventing unnecessary processing of these instances.
2026-01-20 22:54:07 -06:00
Joe
aa09717545 Enhance PatchTree and applyPatch to skip TouchInterest instances during patch processing
- Added logic in PatchTree.build and applyPatch functions to skip instances of ClassName "TouchInterest", which are auto-created by Roblox for touch events.
- This change improves the handling of patch applications by preventing unnecessary processing of these instances.
2026-01-20 22:17:26 -06:00
Joe
4a09689090 Enhance WhitespaceUtil and Reconciler to handle duplicate names and improve diffing logic
- Updated WhitespaceUtil to return distinct values for totalDiff and whitespaceDiff when differences exceed 100 lines, based on content changes.
- Introduced findDuplicateNames function in Reconciler to identify and skip instances with duplicate names, ensuring reliable syncing.
- Enhanced diffing logic to account for ambiguous paths and log skipped duplicates during the sync process.
- Improved error handling in syncback_dir_no_meta to log and skip children with duplicate names in the file system.
2026-01-20 22:10:19 -06:00
Joe
06457bc0db Enhance property handling in PatchTree.build function to support EnumItem conversion for incoming raw numbers. Improved readability by restructuring property change checks and maintaining line change calculations for Source properties. 2026-01-20 21:49:42 -06:00
Joe
4caac7a31c Refactor line change calculations in PatchTree.build function for improved readability and maintainability. 2026-01-20 20:46:51 -06:00
CoderJoey
c36421626d
Merge branch 'rojo-rbx:master' into master 2026-01-20 20:10:14 -06:00
Joe
7045c460ab Implement component lifecycle management in DomLabel. Added isMounted flag to prevent updates after unmounting and ensured proper disconnection of motor step connection during component unmounting, enhancing stability and performance. 2026-01-20 19:56:04 -06:00
boatbomber
68eab3479a
Fix notification unmount thread cancel bug (#1211) 2026-01-19 16:35:19 -08:00
Ken Loeffler
02b41133f8
Use post for ref patch and serialize (#1192) 2026-01-19 22:44:42 +00:00
Joe
9bedbd70fd Add whitespace change detection utility and integrate into PatchTree. Enhanced PatchTree to count line changes specifically for Source properties, distinguishing between total and whitespace-only changes. Updated theme colors for visual representation of whitespace changes in the UI. 2026-01-13 21:46:57 -06:00
Micah
42568b9709
Release Rojo v7.7.0-rc.1 (#1174) 2025-11-27 12:10:57 -08:00
boatbomber
87f58e0a55
Use WebSocket instead of Long Polling (#1142) 2025-11-26 19:57:01 -08:00
Ken Loeffler
015b5bda14
Set crate and plugin versions to 7.7.0-prealpha (#1170) 2025-11-21 07:02:09 -08:00
boatbomber
071b6e7e23
Improved string diff viewer (#994) 2025-11-18 20:26:44 -08:00
quaywinn
31ec216a95
Remove pairs() and ipairs() (#1150) 2025-11-18 18:49:52 -08:00
quaywinn
03410ced6d
Use buffer for ClassIcon EditableImages (#1149) 2025-11-07 13:07:19 -08:00
Micah
825726c883
Release 7.6.1 (#1151) 2025-11-06 18:49:05 -08:00
boatbomber
54e63d88d4
Slightly improve initial sync hangs (#1140) 2025-11-06 00:06:42 -08:00
boatbomber
181cc37744
Improve sync fallback robustness (#1135) 2025-10-20 20:13:47 -07:00
boatbomber
cd78f5c02c
Fix postcommit callbacks being skipped (#1132) 2025-10-14 12:13:59 -07:00
Micah
441c469966
Release Rojo v7.6.0 (#1125) 2025-10-10 19:17:55 -07:00
Micah
80a381dbb1
Use SerializationService as a fallback for when patch application fails (#1030) 2025-09-21 15:09:20 -07:00
boatbomber
54e0ff230b
Improvements to sync reminder UX (#1096) 2025-08-28 17:15:34 -07:00
wad
4e9e6233ff
fix: apply gameId and placeId only after initial sync (#1104) 2025-08-15 18:12:36 -07:00
Sebastian Stachowicz
3002d250a1
Fix Table diff colors (#1084) 2025-07-31 19:36:03 -07:00
Sebastian Stachowicz
7f68d9887b
Fixed nil -> nil props showing up as failing in patch visualizer (plugin) (#1081) 2025-07-25 15:27:11 -07:00
morosanu
7860f2717f
Fix auto connect for play mode (#1066) 2025-07-22 15:12:16 -07:00
boatbomber
60f19df9a0
Show update indicator on version header (#1069) 2025-06-21 02:53:45 +00:00
boatbomber
951f0cda0b
Show the plugin version on the Error page (#1068) 2025-06-20 18:28:04 -07:00
Micah
b2c4f550ee
Release v7.5.1 (#1035) 2025-04-25 13:56:01 -07:00
Ken Loeffler
d935115591
Release 7.5.0 (#1033) 2025-04-25 19:46:16 +01:00
Cameron Campbell
bd2ea42732
Fixes issues with refs in the plugin. (#1005) 2025-04-18 08:44:11 -07:00
Micah
a7a4f6d8f2
Update rbx-dom-lua database to latest version (#1029) 2025-04-13 07:42:41 -07:00
Parritz
7dee898400
Add place ID blacklist config (#1021) 2025-04-03 08:37:40 -07:00
Micah
833320de64
Update rbx-dom (#1023) 2025-04-02 11:32:27 -07:00
boatbomber
0d6ff8ef8a
Improve notification layout (#997) 2025-01-13 16:06:49 -08:00
boatbomber
19ca2b12fc
Add locked tooltip (#998)
Adds the ability to define descriptive tooltips for settings when they
are locked.


![image](https://github.com/user-attachments/assets/5d5778c8-911b-4358-b4e6-f0389270ad76)


Makes some minor improvements to tooltip layout logic as well.
2024-12-28 15:03:11 -08:00
boatbomber
b7d3394464
Plugin dev ux improvements (#992)
Co-authored-by: kennethloeffler <kenloef@gmail.com>
2024-11-10 15:53:58 -08:00
boatbomber
8c33100d7a
Use FontFace and consistent text sizing (#988) 2024-11-09 12:05:57 +00:00