if the argument is a model. This ensures that the proper gorm hooks are
called which was causing the full screen view on the Places page to
crash.
Also fixed a bug in Messages.js that caused a crash.
- Add user preferences section to settings
- Make settings page available for all users
- Move log out button to settings page
- Make it possible for each user to choose their desired language
- Added missing dependencies array on useEffect hook in ProtectedMedia.js
- The new property of ProtectedImage component is renamed from loading to lazyLoading and its type is changed to boolean. Since <img loading /> attribute is pointless when it is not supported by the browser or when it is used with default value "eager", there is no much sense in setting it at all.
- Added description how does the new property works as part of the docblock.
- LazyLoad helper is now a singleton class reusing the same IntersectionObserver instance for performance reasons
- IntersectionObserver is now disconnected when the component is unmounted for performance reasons
- StyledPhoto is now using useCallback to avoid unnecessary rerenderings
- Fixed issue setting loading attribute to the <img /> rendered by <ProtectedImage/> component
- If it is possible, HTMLImageElement.loading is used a lightweight native browser lazy loading solution
- Custom lazyLoad library is created depending on IntersectionObserver. If IntersectionObserver is not available, the images are eagerly loaded
- removed react-lazyload from the dependencies
Exiftool meta data parsed as intergers and not strings. Keep internal
exif parsing functionality.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>