Skip to content

Tags: the-ora/browser

Tags

v0.2.9

Toggle v0.2.9's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Chore: Cleanup root directory (#189)

* refactor(git-blame): remove `.git-blame-ignore-revs` file

* chore(docs): remove HOSTING_SETUP.md documentation

v0.2.8

Toggle v0.2.8's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat: auto Picture-in-Picture handling and improve favicon handling (#…

…160)

* Add Auto Picture-in-Picture Feature and Settings Integration

- Introduced a new setting for enabling/disabling automatic Picture-in-Picture (PiP) mode on tab switch.
- Updated SettingsStore to manage the autoPiPEnabled state and persist it.
- Enhanced GeneralSettingsView to include a toggle for the auto PiP feature.
- Modified TabManager to trigger PiP when switching to a new tab if the setting is enabled.
- Implemented JavaScript function to handle PiP requests in WebViewNavigationDelegate.

* Enhance Media Playback Management and Favicon Handling

- Updated Tab model to synchronize title changes with the media controller when a tab's title is set.
- Refactored favicon handling in MediaPlayerCard to use AsyncImage for improved loading and display.
- Modified FaviconService to cache favicons more efficiently and updated the favicon URL size for better resolution.
- Enhanced MediaController to track whether media sessions were played and filter visible sessions accordingly.
- Implemented session removal logic in TabManager to ensure proper cleanup of media sessions when tabs are closed.
- Improved JavaScript integration for media state tracking, including handling of media play events and title updates.

* Refactor Tab and Favicon Handling for Improved Code Clarity

- Aligned whitespace in the Tab model for better readability.
- Updated favicon handling in FaviconService to streamline fetching and caching logic.
- Introduced a new method for generating favicon URLs, enhancing maintainability.
- Improved asynchronous favicon fetching with better error handling and completion callbacks.
- Enhanced the average color computation for favicons to ensure accurate color representation.

* Refactor Favicon Handling to Use Shared Instance

- Updated instances of FaviconService to use the shared singleton instance across multiple files for consistency and improved memory management.
- Removed unnecessary faviconService parameters from functions in SearchEngine and LauncherView to streamline code.
- Cleaned up code by eliminating redundant faviconService declarations in various views.

* Enhance BrowserSplitView Opacity and Hit Testing Logic

- Updated opacity handling in BrowserSplitView to use a more concise comparison for active tab identification.
- Added allowsHitTesting modifier to ensure user interactions are only enabled for the active tab, improving user experience.

* Fix Typo in FaviconService Completion Handler

* refactor(TabManager): streamline Picture-in-Picture handling by consolidating logic into togglePiP method

* fix: update favicon URL handling to include size parameter for consistency across services

* refactor(Tab): standardize formatting and improve code readability by aligning variable declarations and method definitions

v0.2.7

Toggle v0.2.7's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: weird favicon loading and handling by accept custom favicon URL (#…

…156)

* refactor: update favicon handling to accept custom favicon URL in download method

* fix: formatting

* fix: formatting again

v0.2.6

Toggle v0.2.6's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Replace VerticalScrollView with ScrollView (#148)

* Replace VerticalScrollView with ScrollView

* Update ora/Modules/Sidebar/ContainerView.swift

Co-authored-by: Copilot <[email protected]>

* remove scrollbars

* remove scroll bar

---------

Co-authored-by: Kenenisa Alemayehu <[email protected]>
Co-authored-by: Copilot <[email protected]>

v0.2.5

Toggle v0.2.5's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat: support for duplicate tab (#129)

* added duplication feature

* fix : added calculation logic

* fix : drag and reorder issue when duplicate tabs are located

* fix : duplicate appears below duplicated tab instead of last

* fix : fixed merge conflicts with main

* fix : refactored duplicate method to use existing functions

* fix : refactored open tab to return the tab and reordered the tabs when new tab is created using duplicate

* fix : removed duplicate functions

* fixed the reorder tab issue

* Enhance TabManager to support silent loading of tabs. Added 'loadSilently' parameter to the tab opening method, allowing for silent initialization of web views based on user preferences.

* feat : added is alive check when duplicating tab to check if the tab is dormant or not

* feat : replaced is alive check with is web view ready

---------

Co-authored-by: Kenenisa Alemayehu <[email protected]>

v0.2.4

Toggle v0.2.4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Enhance Tab Management Settings and UI (#139)

* Refactor BrowserView for Improved Tab Management and UI Responsiveness

- Enhanced tab handling by ensuring only active web views are displayed.
- Introduced a new method for rendering web views based on the active tab.
- Improved sidebar toggle functionality and UI responsiveness.
- Cleaned up code formatting and removed unnecessary whitespace for better readability.

* Enhance Tab Management and UI with Media Playback Indicators

- Added isPlayingMedia property to Tab model for tracking media playback state.
- Updated FloatingTabSwitcher and TabItem views to display media playback indicators.
- Refactored BrowserView to improve tab rendering logic and maintain UI responsiveness.
- Ensured MediaController updates the isPlayingMedia property in the corresponding Tab.
- Improved recent tab sorting and rendering logic in TabManager for better user experience.

* Add Tab Management Settings for Automatic Cleanup

- Introduced settings for tab management, allowing users to configure timeouts for tab activity and removal.
- Added UI elements in GeneralSettingsView for adjusting tab alive and removal timeouts.
- Implemented logic in TabManager to automatically clean up and remove inactive tabs based on user-defined settings.
- Enhanced Tab model with isAlive property to determine recent activity of tabs.

* Enhance Tab Management Settings and UI

- Updated tab management settings to allow users to configure timeouts for tab activity and removal, with new options in GeneralSettingsView.
- Adjusted default timeout values for tab activity and removal to 1 hour and 1 day, respectively.
- Implemented automatic cleanup logic in TabManager to manage inactive tabs based on user-defined settings.
- Improved UI elements for better user experience in managing tab settings.
- Cleaned up code formatting and removed unnecessary whitespace for improved readability.

* Refactor BrowserView to Improve Code Readability

- Removed unnecessary whitespace and cleaned up code formatting in BrowserView.swift for better readability.
- Streamlined the rendering logic for active web views, enhancing overall code clarity.

* Fix Typo in HistoryManager Parameter Name Across Multiple Files

- Corrected the parameter name from `historyManger` to `historyManager` in the `restoreTransientState` method across `Tab.swift`, `BrowserView.swift`, and `TabManager.swift` to ensure consistency and prevent potential errors.

* Refactor Window Closing Logic and Update URL Loading in Tabs

- Modified the "Close Window" button to only close the Settings window when it is the active window.
- Updated URL loading logic in Tab class to conditionally use savedURL based on tab type, ensuring correct URL handling.
- Corrected parameter name from `historyManger` to `historyManager` in multiple files for consistency.

* feat: make maximum recent tabs configurable in settings

* feat: normalize tab timeout settings for improved user configuration

- Introduced normalization logic for tab alive and removal timeouts, ensuring values are within supported ranges.
- Updated default timeout values to enhance user experience and prevent invalid settings.
- Added a helper method to streamline timeout normalization process.

v0.2.3

Toggle v0.2.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: prevent appearance update crash when NSApp is nil (#115)

v0.2.2

Toggle v0.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update Wiki link to point to GitHub page

v0.2.1

Toggle v0.2.1's commit message
Merge branch 'main' of github.com:the-ora/browser

v0.2.0

Toggle v0.2.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Signed release generator scripts (#82)

* Enhance build-release.sh with environment variable loading and security checks

- Added a function to load environment variables from a .env file, ensuring required variables are set.
- Updated export options for DMG signing to use Developer ID and manual signing style.
- Implemented app bundle and DMG signing with Developer ID, including notarization and stapling of the notarization ticket.
- Added a security check to prevent the .env file from being committed to the repository.

* Add checklist for including screenshots in PRs

Added checklist item for including screenshots in PRs.

* feat: per-container storage isolation (#79)

* feat: implement per-container storage isolation

- Add per-container WKWebsiteDataStore for web data isolation
- Make History.container optional for better data management
- Update Tab model to use custom WKWebView config with container ID
- Enhance PrivacyService to clear data per container
- Add clearContainerHistory method in HistoryManager
- Improve container activation logic with webView readiness check
- Refactor TabScriptHandler for container-specific configurations
- Clean up excessive logging in UpdateService
- Add error handling for SwiftData store initialization

* refactor: improve code formatting and readability in Tab and TabScriptHandler

- Adjust spacing in WKWebView configuration for consistency
- Simplify conditional statement formatting in TabScriptHandler

* feat: update build-release.sh

- Enhanced app signing process with deep codesigning and added verification steps for notarization.

* chore: update .gitignore to include project.yml.bak

---------

Co-authored-by: Yonathan Dejene <[email protected]>