-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat/virtual joystick #10
base: base-63
Are you sure you want to change the base?
Conversation
private chairOnSit?: Chair | ||
public joystickMovement?: JoystickMovement |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's good to see that you've added a new property joystickMovement
to handle the virtual joystick input. However, please ensure that the JoystickMovement
type is properly defined and imported, and that the handleJoystickMovement
method is correctly updating the joystickMovement
property.
let joystickLeft = false | ||
let joystickRight = false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The integration of joystick input into the PlayerSelector
update logic is well done. Just ensure that the joystickMovement
property is always in a valid state when accessed, and consider adding null checks or default values to prevent any potential runtime errors.
bottom: 60px; | ||
left: 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adjusting the Backdrop
styled component to accommodate the virtual joystick is a good approach. However, please verify that the new bottom
and max-width
values do not negatively impact the chat component's layout on different screen sizes or resolutions.
right: 0px; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please ensure that the new position of the close button in the Wrapper
styled component does not overlap with any other UI elements or make it difficult for users to interact with the button.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@PR-Review sorry can you clarify
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JWS-aAI Certainly! My comment was regarding the changes you made to the position of the close button within the Wrapper
styled component in both ComputerDialog.tsx
and WhiteboardDialog.tsx
. You've changed the top
and right
properties to 0px
, which moves the close button to the very top-right corner of its container.
Here's what you should check to clarify the impact of this change:
-
Overlap with Other Elements: Ensure that the new position of the close button does not cause it to overlap with any other elements in the UI, such as headers, borders, or any other interactive components.
-
Ease of Interaction: Confirm that the button is still easily clickable and that its new position does not hinder the user's ability to interact with it. For example, if the button is too close to the edge of the screen or other UI elements, it might be difficult for users to click on it, especially on touch devices.
-
Consistent Styling: Check that the styling is consistent with the overall design of the application and that the button's new position looks intentional and well-integrated into the layout.
To address these points, you may need to test the UI on different devices and screen sizes, and possibly adjust padding or margins to ensure the button is both visually pleasing and functionally accessible.
const [showRoomInfo, setShowRoomInfo] = useState(false) | ||
const showJoystick = useAppSelector((state) => state.user.showJoystick) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding toggle buttons for the virtual joystick is a user-friendly feature. Please make sure that the tooltip text is clear and that the icons used are intuitive for the users. Also, verify that the state management for showJoystick
is properly synchronized across the application to prevent any inconsistencies.
flex-direction: column; | ||
min-width: max-content; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The adjustments to the Wrapper
and WhiteboardWrapper
styled components, including the close button's position and the margin-right value, should be carefully tested to ensure they do not disrupt the layout or usability of the whiteboard dialog on various screen sizes.
}, | ||
setShowJoystick: (state, action: PayloadAction<boolean>) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The addition of the showJoystick
state and the setShowJoystick
reducer is a good implementation for managing the joystick visibility. Please ensure that the initial state of showJoystick
is set correctly for different screen sizes and that it responds appropriately to window resize events.
Thank you for your contribution to the SkyOffice project. I've finished reviewing the pull request for the virtual joystick feature. Overall, the implementation seems solid, and the feature is a valuable addition to the application. I've left some comments regarding best practices, code safety, and UI considerations. Please take a look at them and make any necessary adjustments. If you have any questions or need further clarification on any of the comments, feel free to reach out. Once again, great work on this feature, and I look forward to seeing it integrated into the application. |
@PR-Review Ok thanks, any suggestions what to start with, real quick |
@JWS-aAI Certainly! Here are a few quick suggestions to start with:
Start with these items, and once they're addressed, the rest of the comments can be tackled in order of priority or dependency. If you need further assistance, feel free to ask. Good luck! |
New feature added: Basic Virtual Joystick
Hi, I decide implement this feature because it appears to be in high demand. Hope you find interesting.
Description:
For implement this, I use this component: https://github.com/elmarti/react-joystick-component
Note: This feature will conflict with this PR: #.62
I can take care of resolving conflicts
Related issues: