Changlist:
- Added Jim Palmer's well proven natural sort algorithm.
- Added natural sort license (MIT).
- Use natural sort everywhere inside TableWidget.js wherever we use .sort()
- Changed browser_storage_overflow.js so that the test is faster and more maintainable. The test now also tests column sorting (ascending and descending).
- Use natural sort everywhere inside storage.js wherever we need to slice the array. Without natural sort here we get e.g. row-1, row-10, row-100, row-2 etc.
MozReview-Commit-ID: FUY7pcLIYml
After bug 1276339, storage inspector started iterating over all directories in
the profile's storage to find IDB data for a host. This approach is too general
and can go through thousands of directories in a large profile.
By using more of what we know about the host and storage layout, we can pinpoint
the directories of interest more quickly.
MozReview-Commit-ID: 563GNMX1Ges
Changes:
- Added storage-listings-with-fragment.html and browser_storage-listings-with-fragment.js. The only difference between these and storage-listings.html and browser_storage-listings.js is that they contain url fragments wherever URLs are loaded e.g. #abc, #def etc.
- When referencing cookies in tests we used to only use the hostname but a full URL was needed for other storage types. For consistency we now use the full URL for all storage types.
- storage.js used to contain various getHostName() methods depending on which storage type was needed. This has been changed to a single method that acts according to which protocol is in use. Cookies are the only storage type that requires just a hostname for the http and https protocols so we strip them inside the cookies actor where required. null is returned when storage types are not available for a particular protocol e.g. data:// URLs.
- browser_storage_dynamic_windows.js and browser_storage_listings.js now detect cookies that were previously missed. This is a result of the getHostName() improvements.
MozReview-Commit-ID: 8ZzM1Xz5hwU
Ideally we would have used the GUID to join fields to build the compound key but because we show the uniqueId in the tree that would lead to an ugly user experience. As an
alternative we simply use e.g. db1 (default) as the uniqueId. This works as a unique key, is informative for the user and means minimal changes to tests.
MozReview-Commit-ID: I0XxTIoV33p
The `destroy` method in some actors would throw errors or was incomplete,
leading to various issues closing the toolbox after the previous patch.
This cleans up all such cases noticed through manual testing of the toolbox.
MozReview-Commit-ID: 6EZYFwjSri
Watch for browser swap events and update the message manager as necessary for
each of the actors that use the `setupInParent` multiprocess functionality.
MozReview-Commit-ID: HPibSONSYk4