36 Commits

Author SHA1 Message Date
Zamitto da800b0ffe chore: nl on gitignore 2026-05-04 07:41:29 -03:00
Zamitto 384824b16c chore: update upload-build script 2026-05-04 07:26:25 -03:00
Eight dbc6f33815 Feature/big picture beta (#2178)
* feat(big-picture): initialize Big Picture module with HTML, Vite config, and main app structure

* feat(big-picture): add Vite configuration and build scripts for Big Picture module

* feat(big-picture): implement openBigPictureWindow functionality in main and preload processes

* feat(big-picture): add Big Picture window functionality and integrate into sidebar

* feat(i18n): add translation key for "Big Picture" in English, Portuguese, and Russian

* refactor(big-picture): change App export to default and update import in main

* refactor(window-manager): streamline URL loading for Big Picture window and enable DevTools in non-packaged environments

* feat(constants): add IS_BROWSER and IS_DESKTOP constants for environment detection

* feat(big-picture): add SCSS styling and layout structure for Big Picture component

* feat(dependencies): add @fontsource/space-grotesk and @phosphor-icons/react packages to package.json

* feat(big-picture): implement routing and add Catalogue, Downloads, and Settings pages

* feat(big-picture): add Sidebar component with routing and styling

* feat(big-picture): implement close functionality in Settings page with responsive behavior

* style(big-picture): reset margins for headings and paragraphs in app.scss

* feat(big-picture): add Library page and update routing in Sidebar and main application

* chore(package): remove build script for big-picture from package.json

* feat(big-picture): add Library page functionality with sorting and searching capabilities

* feat(big-picture): add GameCard component with styling and structure

* refactor(big-picture): reorganize Library page structure and update styles for improved layout

* refactor: centralize globals and normalize sidebar/game-card layout

* feat: implement gamepad service and navigation services for enhanced input handling

* feat(big-picture): export services for gamepad and navigation functionalities

* feat(big-picture): add gamepad and navigation stores for state management

* feat(big-picture): add navigation hooks for enhanced user navigation and gamepad support

* refactor(big-picture): reorganize component structure by creating common directory and adding GameCard component

* feat(big-picture): add context providers for focus item actions, layer, and region

* feat(big-picture): implement NavigationInputProvider for gamepad navigation handling

* refactor(big-picture): simplify callback function formatting in useNavigationActions hook

* feat(big-picture): add NavigationStateBridge provider for navigation state synchronization

* feat(big-picture): add new focus-related components and update exports for improved navigation handling

* feat(big-picture): add gamepad layout definitions and export helper functions for gamepad handling

* feat(big-picture): introduce focus item actions and gamepad types for enhanced navigation handling

* refactor(big-picture): update import paths for types and services to improve module structure

* chore(dependencies): add zustand package for state management

* fix(big-picture): address accessibility issue by adding tabIndex for focus item

* refactor(big-picture): comment out unused updateAxisState method in GamepadService for future reference

* feat(big-picture): add GridFocusGroup component and update navigation service for grid orientation support

* feat(big-picture): integrate NavigationInputProvider and refactor App component structure for improved navigation

* feat(big-picture): add NavigationDiagnostics component for enhanced gamepad input debugging and integrate into App component

* feat(big-picture): implement gamepad visualizer components for enhanced input feedback and diagnostics

* fix(big-picture): set initial state of NavigationDiagnostics to open and enhance logging structure for better diagnostics

* feat(big-picture): enhance NavigationDiagnostics to display gamepad layout and connected pads for improved input diagnostics

* refactor(big-picture): rename NavigationDiagnostics to NavigationDiagnosticsPanel and restructure component for improved clarity and functionality

* refactor(big-picture): update GamepadService to include event parameters in button press and stick move callbacks for improved event handling

* feat(big-picture): add GamepadButtonPressEvent and GamepadStickMoveEvent interfaces for enhanced event handling

* refactor(big-picture): update useGamepad hook to include event parameters in button press and stick move callbacks for improved type safety

* feat(big-picture): add lastGamepadEvent state and display in NavigationDiagnosticsPanel for enhanced gamepad input tracking

* refactor(big-picture): enhance GamepadService to manage active gamepad state and improve input event handling with new meta information

* refactor(big-picture): improve gamepad input handling by adding event validation and resetting hold sessions based on active gamepad index

* refactor(big-picture): extend useGamepad hook to include active gamepad details and event validation for improved input handling

* refactor(big-picture): add activeGamepadIndex to gamepad store for improved state management and input handling

* refactor(big-picture): introduce GamepadInputStatus and GamepadInputEventMeta for enhanced gamepad event handling

* refactor(big-picture): enhance NavigationDiagnosticsPanel to include gamepad event status and active gamepad index for improved diagnostics

* refactor(big-picture): restructure GamepadService to manage stick states in a centralized map for improved state handling and timer management

* refactor(big-picture): enhance gamepad input handling by adding echo suppression features and updating diagnostics to reflect echo events

* style(big-picture): update game card and library page styles for improved layout and responsiveness

* refactor(big-picture): enhance gamepad input mapping by introducing new axis button and trigger mappings, and updating GamepadService to handle diverse input types

* refactor(big-picture): add support for multiple gamepad platforms and enhance input mappings for improved compatibility

* refactor(big-picture): add additional Xbox platform support in gamepad layout for enhanced compatibility

* refactor(big-picture): enhance NavigationDiagnosticsPanel with detailed gamepad debugging information and runtime platform detection

* refactor(big-picture): add Linux Standard Gamepad layout and update gamepad layout retrieval logic for platform-specific handling

* refactor(big-picture): implement D-pad repeat functionality in GamepadService for improved input responsiveness

* refactor(big-picture): improve D-pad and stick repeat functionality in GamepadService with accelerated repeat intervals for enhanced responsiveness

* refactor(big-picture): implement smooth scrolling for focused elements with new scrollFocusedElementIntoView helper

* feat(big-picture): add common UI components including Button, Input, Divider, Typography, ScrollArea, RouterAnchor, and UserProfile

* feat(big-picture): add string utility function to convert names to slugs

* feat(big-picture): add user details and search hooks for improved user experience

* feat(big-picture): enhance sidebar with library and profile components for improved navigation and user experience

* feat(big-picture): add PostCSS plugin for scoping CSS styles to the big picture component

* refactor(big-picture): streamline library hook and page by consolidating update logic into the hook

* refactor(big-picture): integrate HorizontalFocusGroup for improved layout management in the app component

* refactor(big-picture): update button, input, and user profile components to use FocusItem for improved accessibility and styling consistency

* refactor(big-picture): enhance sidebar layout and accessibility by replacing divs with RouteAnchor and integrating VerticalFocusGroup

* style(big-picture): add global styles for unordered lists and list items to ensure consistent spacing and appearance

* refactor(big-picture): improve sidebar layout by adding a focus region for the library list and updating styles

* refactor(big-picture): update import paths to use 'node:path' and enhance component props with Readonly types for better immutability

* refactor(big-picture): comment out unused UserProfile and user details hooks in sidebar for future implementation

* refactor(big-picture): simplify global checks and improve conditional logic in various services and components

* style(big-picture): refine button styles by removing redundant border and adjusting cursor property

* refactor(big-picture): replace clsx with classnames for improved class name management in ScrollArea component

* feat(big-picture): add common UI components including Accordion, Button, Checkbox, Chip, Divider, HorizontalCard, ImageLightbox, Input, ListCard, Modal, RouteAnchor, ScrollArea, SourceAnchor, and Tooltip with corresponding styles

* refactor(big-picture): improve code readability by formatting function and variable declarations in Button and Modal components

* refactor(big-picture): enhance layout structure and styling for improved responsiveness in App component

* feat(big-picture): enhance Chip component with variant support for solid and ghost styles

* style(big-picture): update Accordion component styles to enhance interactivity and visual consistency

* refactor(big-picture): enhance Divider component styles for improved orientation handling

* refactor(big-picture): simplify Tooltip component by removing unnecessary state and event handlers for improved performance

* feat(big-picture): implement Catalogue page with comprehensive component showcase and styling

* fix(big-picture): address accessibility issues in Checkbox component by adding role and ARIA attributes

* refactor(big-picture): rename router-anchor to route-anchor and update icon import for consistency

* chore(deps): add @radix-ui/react-slot package to dependencies

* refactor(settings): replace native button with custom Button component for consistency and improved styling

* refactor(big-picture): add asChild prop to focus groups for flexible component rendering

* feat(big-picture): add Header component with search functionality and integrate into layout

* refactor(big-picture): integrate Header and VerticalFocusGroup into layout for improved structure

* refactor(big-picture): remove unused styles and consolidate button styles for improved maintainability

* style(big-picture): rename style file to styles.scss and add header styles for improved layout

* refactor(big-picture): clean up Sidebar component by removing unused imports and commented-out code for better readability

* refactor(big-picture): remove RouteAnchor component to streamline codebase and eliminate redundancy

* refactor(big-picture): streamline UserProfile component by removing unnecessary wrappers and ensuring consistent image handling

* refactor(big-picture): update layout structure by removing inline styles and applying class names for better maintainability

* refactor(big-picture): enhance CSS scoping by adding renderer style handling and exclusion logic

* style(big-picture): add custom scrollbar styles and enhance layout structure for better UI experience

* refactor(big-picture): update header navigation logic to use dynamic base path for improved flexibility

* refactor(big-picture): update Sidebar component to use 'asChild' prop for improved flexibility in rendering

* fix: sonar comments

* refactor(big-picture): update Input component to use 'asChild' prop and clean up Sidebar layout by removing commented code

* refactor(big-picture): reorganize NavigationDiagnostics component for improved layout and functionality

* feat(big-picture): add pages export structure for improved component organization

* feat(big-picture): add Steam types for enhanced integration with Steam API

* feat(big-picture): add AnimatedHeroImage component for enhanced visual effects

* feat(big-picture): enhance AnimatedHeroImage component with advanced blending effects and improved styling

* feat(big-picture): add LibraryHero component with styling and functionality for displaying last played games

* refactor(big-picture): add exclusion logic for CSS selectors to improve scoping functionality

* feat(big-picture): enhance Button component with custom color support and improved styling transitions

* feat(big-picture): update LibraryHero component with enhanced background layering, responsive design, and improved content layout

* feat(big-picture): add color and date helper functions for improved color manipulation and relative date formatting

* refactor(big-picture): simplify LibraryPage layout by removing unused elements and integrating LibraryHero for last played games display

* feat(big-picture): introduce VerticalGameCard component with customizable progress display and hover effects

* feat(big-picture): update Catalogue component to include VerticalGameCard with new hover effects and progress display

* feat(big-picture): export VerticalGameCard component from common index for improved accessibility

* fix(big-picture): adjust card width styling to exclude vertical-game-card for better layout consistency

* feat(big-picture): enhance LibraryPage layout with improved styling and new components for better user experience

* feat(big-picture): enhance LibraryHero component with focus navigation and additional props for improved accessibility

* feat(big-picture): add game and image helper functions for improved game achievement progress and image source resolution

* feat(big-picture): add useDominantColor hook for extracting dominant color from images

* feat(big-picture): wrap button components with FocusItem for improved accessibility and focus management

* feat(big-picture): add asChild prop to FocusItem for flexible component rendering

* feat(big-picture): implement LibraryFocusGrid component with responsive grid layout for game cards

* feat(big-picture): enhance navigation service with block type handling for focus overrides

* feat(big-picture): update game subtitle formatting to use formatPlayedTime helper for dynamic time display

* fix(big-picture): update FocusItem component usage to include asChild prop for better rendering consistency

* fix(big-picture): refine FocusItem component to conditionally apply focus styles and attributes for better accessibility

* refactor(big-picture): update VerticalGameCard component to improve image error handling and enhance styles for better focus visibility

* fix(big-picture): adjust FocusItem component to conditionally apply outline style based on asChild prop for improved rendering

* fix(big-picture): update grid layout in FocusGrid component for improved responsiveness and adjust game card dimensions

* feat(big-picture): integrate NavigationAutoScrollBridge for enhanced navigation experience

* refactor(big-picture): remove unused scrollFocusedElementIntoView import from FocusItem component

* feat(big-picture): add autoScrollMode and getScrollAnchor props to GridFocusGroup for enhanced navigation control

* feat(big-picture): add autoScrollMode and getScrollAnchor props to HorizontalFocusGroup for improved navigation functionality

* feat(big-picture): add autoScrollMode and getScrollAnchor props to VerticalFocusGroup for improved navigation functionality

* feat(big-picture): enhance VerticalGameCard with progress completion state and dynamic icon rendering

* feat(big-picture): add placeholder and completed state styles to VerticalGameCard for enhanced visual feedback

* refactor(big-picture): optimize LibraryHero component with improved layer handling and refactoring of event callbacks

* feat(big-picture): export new components from library and providers for enhanced modularity

* feat(big-picture): add library navigation constants and utility functions for focus grid management

* feat(big-picture): implement useLibraryGridNavigation hook for managing focus grid navigation in the library

* feat(big-picture): create VerticalLibraryGameCard component for displaying game details in the library

* feat(big-picture): implement NavigationAutoScrollBridge for automatic scrolling based on focus changes

* feat(big-picture): enhance date formatting and improve focus auto-scroll functionality with new options and utility functions

* feat(big-picture): add FocusAutoScrollMode and update navigation region interface for enhanced scrolling options

* feat(big-picture): integrate library filters and grid components for improved game library management

* style(library): format SCSS for success border color to improve readability

* feat(big-picture): enhance LibraryFilters component with tab navigation overrides and new tab IDs for improved focus management

* refactor(library): streamline tab ID exports in navigation component for improved clarity

* i dont know at this point

* style(home): fix SCSS padding formatting for improved consistency

* refactor(navigation): change variable declaration from `let` to `const` for animation frame ID in NavigationAutoScrollBridge

* feat(big-picture): add new components for game UI including Box, AchievementsBox, Hero, PlaytimeBar, and RequirementsToPlay

* feat(big-picture): implement GameReviews component with review loading, voting, and sorting functionality

* feat(big-picture): add normalizeRequirementsHtml function to process HTML lists for improved rendering

* feat(big-picture): add tertiary button variant and update styles for improved UI

* feat(big-picture): add HowLongToBeatBox component for displaying game duration information

* feat(big-picture): add ScreenshotCarousel and VideoPlayer components for enhanced media display in game pages

* feat(big-picture): create index file for game components and add library update event handling

* feat(big-picture): implement Game page layout and styles, including game details and sidebar components

* refactor(big-picture): remove background color on hover for game button styles

* refactor(big-picture): remove unused setIsModalOpen prop from Hero component and update Game component to reflect changes

* refactor(big-picture): migrate useHlsVideo hook to shared directory and update imports in VideoPlayer components

* refactor(big-picture): enhance Input component with focus management and update styles for better layout

* refactor(big-picture): improve header component focus management and update styles for better responsiveness

* feat(big-picture): add Game component and enhance navigation with new game details path

* refactor(big-picture): update vertical game card components to improve accessibility and keyboard navigation

* refactor(big-picture): simplify navigation logic and remove unused search parameters in header component

* refactor(big-picture): update header styles to use CSS variables for height and adjust layout positioning

* fix(i18n): remove duplicate russian resume seeding key

Co-authored-by: Hachi-R <58823742+Hachi-R@users.noreply.github.com>

* fix(navigation): correct regex for trailing slashes in pathname normalization

* fix(navigation): optimize pathname normalization by replacing regex with a loop to remove trailing slashes

* refactor(big-picture): simplify header component search logic and enhance styles for focus visibility

* refactor(big-picture): remove unused firstPopularGameId prop from HomePageHero and update navigation logic

* refactor(big-picture): enhance HomePageHero component with improved game navigation and state management

* refactor(big-picture): add library-game-state hook and enhance navigation constants for HomePageHero

* feat(big-picture): add launch option for Big Picture mode in settings and translations

* feat(window-manager): implement user preferences for Big Picture mode and manage main window state

* feat(navigation): add constants and utility functions for game navigation elements

* feat(hero): enhance action button functionality and navigation for game hero component

* feat(game): implement navigation overrides and enhance focus management for How Long to Beat component

* feat(achievements): add focus navigation overrides and enhance accessibility for achievements component

* feat(requirements): add focus navigation overrides for minimum and recommended buttons to enhance accessibility

* feat(supported-languages): add focus navigation overrides for supported languages component to improve accessibility

* feat(screenshot-carousel): implement focus navigation overrides and enhance accessibility for screenshot carousel component

* feat(game-reviews): implement focus navigation overrides for game reviews component to enhance accessibility

* feat(game-stats): implement focus navigation overrides for game stats section to enhance accessibility

* feat(game-reviews): add load more button functionality and focus management for game reviews component

* feat(home): integrate featured game into HomePageHero and enhance focus management for PopularGames component

* feat(home): refactor Home component to use VerticalFocusGroup for improved focus management and accessibility

* style: update game screenshot carousel button focus styles

- Added focus styles for the previous and next buttons in the game screenshot carousel to improve accessibility and visual feedback.
- Removed duplicate focus styles from the previous location in the stylesheet for cleaner code.

* feat(home): add normalization functions for shop assets and trending games, enhance focus management in Home component

* fix: game pag navigation

* feat(library): enhance game launch functionality and update button labels

* style: enhance tab and header focus styles, update global overflow property

---------

Co-authored-by: japa2k <teruyuki709@gmail.com>
Co-authored-by: japa2k <71810047+japa2k@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-04-26 18:45:26 +01:00
Moyase 66438a5657 feat: transfer game feature (updated #2170) (#2179)
* test

* test2

* Fixed selecting drive

* working transfer manual +drives

* fixed transfer + % button display

* Add file transfer speed, ETA, and cancel confirmation, switch from powershell to CMD move

* Adds pause/resume controls for game file transfers

Introduces handlers and UI elements to allow users to pause and resume game file transfers, improving control over transfer processes. Updates transfer error messages for greater user clarity.

Enhances UX by making transfer states and errors more descriptive and actionable.

* new branch

* fix 1.0

* Delete Future-updates.md

* fix 1.1

* BYTE-BASED progress

* working on faster moving

* steam alike moving files

* feat: add native C++ move engine for game transfers

* removed pause + resume

* moving + cancel 1.0

* commit 1

* removed extra file + res/ps buttons

* finall

* final 1.1

* final 1.2

* Added `transfer-game-completed`

* fixed cancel window

* Fixed ETA format

* Changing CSS

* Done !!

* fixed better cancel algorythm

* deleted extra files + increased performance

* added back transfer % button in the panel

* fix security check + if game is in the same directory

* fixing annotations

* fixed security checks 2.0

* Fix line endings

* fix prettier formatting

* chore: remove unused Visual Studio files and update translation strings for file transfer feature

- Deleted various Visual Studio workspace and project files to clean up the repository.
- Updated translation files for English, Spanish, Portuguese, and Russian to include new keys related to the file transfer feature, enhancing user experience.
- Enabled logging interceptor in the Hydra API for improved network logging.
- Refactored logging in the process watcher to include detailed playtime trace logs for better tracking of game sessions.

* chore: update husky scripts and clean up code formatting

- Changed husky pre-commit and pre-push scripts to use 'yarn run' for consistency.
- Updated the process-watcher to streamline the trackGamePlaytime function call.
- Improved code formatting in the GeneralSettingsSection component for better readability.

* refactor: improve drive querying and error handling in getAvailableDrives

- Refactored the getAvailableDrives function to enhance readability and maintainability.
- Introduced helper functions for PowerShell path retrieval and drive CSV parsing.
- Replaced console logging with appropriate error handling and logging.
- Updated the GeneralSettingsSection component to improve error handling and drive selection logic.
- Added a new error display in the UI for better user feedback on drive selection issues.

* refactor: enhance drive querying and UI components for game options

- Updated drive querying logic to support both Windows and Linux platforms.
- Replaced synchronous PowerShell calls with asynchronous file system operations for improved performance.
- Added a new "locations" category in the game options modal with relevant UI components.
- Enhanced the GeneralSettingsSection to conditionally render sections based on props, improving flexibility.
- Updated styles for selected options in the game options modal for better visual feedback.

* chore: clean up game options modal

- Cleaned up the GeneralSettingsSection in the game options modal for improved readability and maintainability.

* chore: remove move_engine.cc

- Deleted the move_engine.cc file as part of project cleanup.

* refactor: enhance game file transfer validation and update logic

- Improved path normalization for game root and target root to ensure consistent comparisons across platforms.
- Added checks for existing destination folders and enhanced error handling during database updates after file transfers.
- Updated the game options initial category to "locations" in the hero panel actions for better user experience.

* chore: format error handling in game file transfer

- Reformatted the error handling code in transfer-game-files.ts for improved readability.

* chore: update translation strings and remove TO-DO file

- Added new translation keys for transfer-related messages in English, Spanish, Portuguese, and Russian to enhance user experience.
- Removed the obsolete TO-DO.md file as it is no longer needed.
- Updated subproject commit to indicate a dirty state.

* fix: streamline error handling in game options modal

- Simplified the error handling logic in the GameOptionsModal by removing unnecessary line breaks for better readability.

---------

Co-authored-by: yassine <166349232+yassine808@users.noreply.github.com>
Co-authored-by: Helio Kroger <me@heliokroger.com>
2026-04-26 00:56:30 +01:00
Chubby Granny Chaser 54396a0f85 refactor: migrate torrent backend to python RPC service 2026-03-23 23:16:10 +00:00
Chubby Granny Chaser c8e368fa8f refactor: replace Python RPC and aria2 with native addon 2026-03-20 11:43:16 +00:00
Chubby Granny Chaser 6c5742c91d Revert "Feature/catalogue performance and stats" 2026-03-11 08:14:52 +00:00
felipesaguiarn 9f6997d4b8 chore: fix git hooks by ignoring venv and temporary files 2026-03-04 00:52:48 -03:00
Chubby Granny Chaser 592ac45740 feat: adding cross cloud save 2025-05-11 19:07:30 +01:00
Chubby Granny Chaser c090a27ff3 chore: removing rust rpc 2025-04-15 15:41:08 +01:00
Chubby Granny Chaser afa78e4634 feat: removing aria2 2025-04-12 18:16:16 +01:00
Chubby Granny Chaser 087dd9fb2e feat: adding rust codebase 2025-04-11 17:27:33 +01:00
Chubby Granny Chaser b86746287f chore: refactoring toast 2025-01-23 14:03:28 +00:00
Chubby Granny Chaser 726c753568 feat: adding sentry to renderer 2024-12-31 04:44:05 +00:00
JackEnx 90841bf5e4 fix: gitignore 2024-12-24 13:50:40 -03:00
JackEnx 5564644378 refactor: rpc executable objects 2024-12-24 13:48:50 -03:00
Hachi-R db01980eb8 refactor: clean up code 2024-12-22 20:20:46 -03:00
Hachi-R fd5b2e08a5 lint 2024-12-22 06:58:20 -03:00
Chubby Granny Chaser 8af29abd92 fix: removing sentry 2024-11-02 17:06:30 +00:00
Chubby Granny Chaser e64a414309 feat: adding cloud sync 2024-09-25 19:37:28 +01:00
Zamitto 4a149aa62d feat: remove aria2 (again) 2024-08-05 20:47:37 -03:00
Chubby Granny Chaser eebb5fec61 fix: removing aria2 source folder 2024-07-02 17:07:47 +01:00
Chubby Granny Chaser ac27438a35 ci: adding sentry 2024-06-28 20:27:22 +01:00
Chubby Granny Chaser 7cd121cb80 feat: adding healthcheck 2024-06-27 18:46:59 +01:00
Chubby Granny Chaser 85516c1744 feat: correcting date in process-watcher 2024-05-29 17:20:47 +01:00
Chubby Granny Chaser 08a336b392 feat: updating real-debrid translations 2024-05-29 16:22:30 +01:00
Zamitto dda8791f6d update gitignore 2024-05-26 20:42:12 -03:00
Zamitto a921887271 feat: replace log lib 2024-05-22 13:40:21 -03:00
Chubby Granny Chaser 4941709296 feat: adding aria2 2024-05-20 02:21:11 +01:00
Chubby Granny Chaser dc7591ee28 feat: removing sentry 2024-05-14 16:54:14 +01:00
Zamitto f14ddba807 fix: update fastlist directory 2024-04-30 16:04:42 -03:00
Hydra a4df6e9bab feat: adding tray icon 2024-04-28 05:59:06 +01:00
Hydra 498a889f1d chore: merge with main 2024-04-25 05:52:19 +01:00
Hydra fc6cd710ac feat: adding pycache to gitignore 2024-04-24 10:22:12 +01:00
Hydra 1db5a9c295 feat: migrating to electron-vite 2024-04-21 06:26:29 +01:00
Hydra f1bdec484e first commit 2024-04-18 08:46:06 +01:00