Repository navigation
Conversation
…ion manager and tests - Bump Votice SDK package version from 1.0.16 to 1.0.17 in README.md - Update ConfigurationManager version property to "1.0.17" - Modify ConfigurationManagerTests to expect version "1.0.17" instead of "1.0.16" in all relevant assertions no message
- Rename Assets.xcassets and Info.plist to be under a new Resources group in the Xcode project - Update Info.plist file type to text.plist.xml in project file - Change INFOPLIST_FILE paths to point to Resources/Info.plist in project settings - Adjust macOS App window minimum width from 1200 to 1280 in AppVoticeDemo.swift - Modify View extension to remove opacity from Circle fill color - Add width and height properties with thread-safe access to ConfigurationManager - Initialize width and height to 800x600 in ConfigurationManager reset method - Add optional progress property to SuggestionEntity model and update initializers and copy method - Replace fixed frame widths in SuggestionDetailView+tvOS and SuggestionListView+tvOS with ConfigurationManager width and height - Replace fixed frame sizes in SuggestionListView macOS views with ConfigurationManager width and height - Remove tvOS support warning comments from Votice.swift - Change feedbackNavigationView and feedbackView methods to accept width and height parameters instead of minWidth and minHeight - Update internal open method to use width and height parameters, enforce minimums of 800x600, set ConfigurationManager dimensions, and apply frame size accordingly
There was a problem hiding this comment.
Pull Request Overview
This PR bumps the SDK version from 1.0.16 to 1.0.17 and introduces several key improvements related to window sizing and view layout.
- Version bump to 1.0.17 across all relevant files
- Refactored frame sizing from
minWidth/minHeightto fixedwidth/heightparameters with dynamic configuration - Added
progressfield toSuggestionEntityfor tracking suggestion progress - Minor UI improvements including glass effect opacity adjustment
Reviewed Changes
Copilot reviewed 11 out of 15 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| Tests/VoticeTests/Managers/ConfigurationManagerTests.swift | Updated version number assertions to reflect new version 1.0.17 |
| Sources/Votice/Votice.swift | Removed tvOS warning, refactored parameters from minWidth/minHeight to width/height, added dynamic sizing configuration |
| Sources/Votice/UI/Views/SuggestionList/SuggestionListView.swift | Changed from hardcoded minWidth/minHeight to ConfigurationManager-based sizing |
| Sources/Votice/UI/Views/SuggestionList/SuggestionListView+tvOS.swift | Updated to use ConfigurationManager for width/height values |
| Sources/Votice/UI/Views/SuggestionDetail/SuggestionDetailView+tvOS.swift | Updated to use ConfigurationManager for width/height values |
| Sources/Votice/Core/Models/SuggestionEntity.swift | Added progress field to track suggestion progress state |
| Sources/Votice/Core/Managers/ConfigurationManager.swift | Added width/height properties with thread-safe accessors, updated version to 1.0.17 |
| Sources/Votice/Core/Extensions/View.swift | Removed opacity from glass effect fill color |
| README.md | Updated package version reference to 1.0.17 |
| Example/VoticeDemo/VoticeDemo/Shared/App/AppVoticeDemo.swift | Adjusted demo app window size from 1200x720 to 1280x720 |
| Example/VoticeDemo/VoticeDemo/Resources/Info.plist | Added new Info.plist file with font configurations |
| Example/VoticeDemo/VoticeDemo/Resources/Assets.xcassets/* | Added new asset catalog files for colors |
| Example/VoticeDemo/VoticeDemo.xcodeproj/project.pbxproj | Updated project structure to organize resources into Resources folder |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| var width: CGFloat { | ||
| get { | ||
| lock.withLock { _width } | ||
| } | ||
| set { | ||
| lock.withLock { _width = newValue } | ||
| } | ||
| } | ||
|
|
||
| var height: CGFloat { | ||
| get { | ||
| lock.withLock { _height } | ||
| } | ||
| set { | ||
| lock.withLock { _height = newValue } | ||
| } | ||
| } |
There was a problem hiding this comment.
The width and height properties are not declared in the ConfigurationManagerProtocol. These properties should be added to the protocol to maintain proper abstraction and ensure any implementations of this protocol include these properties.
| /// - width: width for macOS (default 800) | ||
| /// - height: height for macOS (default 600) |
There was a problem hiding this comment.
The documentation comments are incomplete. They should read 'Width for macOS and tvOS' and 'Height for macOS and tvOS' since the parameters now apply to both platforms, as evidenced by the #if os(macOS) || os(tvOS) condition at line 392.
| /// - width: width for macOS (default 800) | ||
| /// - height: height for macOS (default 600) |
There was a problem hiding this comment.
The documentation comments are incomplete. They should read 'Width for macOS and tvOS' and 'Height for macOS and tvOS' since the parameters now apply to both platforms, as evidenced by the #if os(macOS) || os(tvOS) condition at line 392.
This pull request introduces several improvements and refactorings to the Votice SDK, focusing on more flexible window sizing, internal configuration management, and minor enhancements to the Suggestion model. The most significant changes include making the width and height of the main views configurable at runtime, updating the SDK version, and improving resource organization in the demo app.
Window sizing and configuration management:
widthandheightproperties toConfigurationManager, allowing the main views to use configurable window sizes instead of hardcoded values. These can now be set at runtime, and are used in both macOS and tvOS views. [1] [2] [3] [4] [5] [6] [7] [8]Votice.swiftto usewidthandheightparameters (defaulting to 800x600) instead ofminWidth/minHeight, and ensured these values are enforced as minimums. [1] [2]Resource and project organization:
Info.plistand asset files into a newResourcesgroup in the Xcode project and updated references accordingly for better project structure. [1] [2] [3] [4]Info.plistin the project totext.plist.xmlfor accuracy.Model enhancements:
progressproperty toSuggestionEntityto support tracking suggestion progress. [1] [2] [3] [4] [5]Versioning and documentation:
1.0.16to1.0.17in code, documentation, and tests. [1] [2] [3] [4] [5]Other improvements: