| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
style'
I have refrained from changing the internal code (variables, etc) - since that will need a migration for existing user preferences on their local installation.
That can be taken up separately after more analysis.
|
| |
|
| |
|
|
|
|
|
|
|
| |
These changes are mainly to ensure that 'shell.open*' invocations are only in a single file.
* Moved 'openPath' into the 'url-helpers' file.
* Extract 'openExternalUrl' into a common location in 'url-helpers'
This is done so that we can then apply vetting rules to ensure that there is no security concern as described in https://benjamin-altpeter.de/shell-openexternal-dangers/
|
|
|
|
| |
to quickly open the Ferdi profile folder
|
|
|
|
| |
(from the sidebar context menu)
|
|
|
|
|
|
|
|
| |
- add missing meta charset to index.html
- dont restrict scaling for user in index.html
- load animations.css conditionally based on motion preference
- load transitions conditionally in js and css based on motion preference
Co-authored-by: Vijay Raghavan Aravamudhan <vraravam@users.noreply.github.com>
|
|
|
|
|
|
| |
different
(shortcut accelerator vs tooltip text)
|
| |
|
| |
|
|
|
|
|
|
| |
app starts up
fixes #1743
|
| |
|
|
|
|
|
|
| |
work in windows)
fixes #1746
|
|
|
|
|
|
|
|
|
|
| |
- replace deprecated fs.exists with fs.existsSync
- replace console.log with debug
- replace hardcoded FERDI_VERSION in start.js with dynamic one from package.json
- correct JSDoc annotations in Handler.js
- simplify macOSPermissions.js
- updates to various eslint rules
- add FileReader to known globals
|
| |
|
| |
|
|
|
|
| |
hibernated service (#1680)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Use hibernation strategy from settings instead of hardcoded 5 minutes
* Fix conditions with isHibernationEnabled, previously disableHibernation
* Make service hibernation obey global setting
Also refactors hibernation to move some hibernation enablement logic
into the Service model
* Remove global hibernation enable switch
Implements option 4 from
https://github.com/getferdi/ferdi/pull/1486#issuecomment-860290992
according to
https://github.com/getferdi/ferdi/pull/1486#issuecomment-876558694
* Implements #865 : Add 'hibernate service' and 'wake up service' in the sidebar context menu.
* Removed 'hibernationEnabled' check on main settings screen
Since this is an (imo) incongruous behavior for the first time user.
They will see a message, but with no ability to choose the hibernation strategy.
* Autogenerated files from conflict fixes
Co-authored-by: Kristóf Marussy <kristof@marussy.com>
Co-authored-by: Vijay A <avijayr@protonmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
- serviceLimit
- planSelection
- trialStatusBar
and other Franz features that were for different tiers of subscription.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* Upgrade various dependencies to latest, remove unnecessary electron-hunspell
- upgrade eslint and friends to latest
- remove deprecated 'node-sass' in favor of 'sass'
- disable new rules from 'eslint-config-airbnb' that are conflicting with current code style
- add workspace config for 'vscode' that silences 'experimentalDecorator' warning and forces 'prettier' to single quote
* Run yarn lint to autofix with new ruleset and worked down lint issues to zero
|
|
|
|
| |
'environment.js'. (#1588)
|
| |
|
|
|
|
| |
in the website).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduced a global and a service-specific 'user-agent' value that can be set by the user from the preference section.
The global override is in Advanced, while the service override was moved to the bottom of the service editor form (and now occupies the full width of the form).
Show 'restart reqd' prompt for user-agent setting.
The order of the user-agent is the following:
1. Any request header overrides in the recipe will still override the user agent string.
2. If the user has set a user agent override for the service, use that.
3. If the recipe has a predefined user agent, use that.
4. If the user has set a global user agent override, use that.
5. Otherwise, use the user agent string corresponding to the underlying Electron version.
If the current webpage is the Google login form, we still remove the Chrome version number from the user agent string.
The value that would be used if no custom override is set (recipe-provided value or global override for the service, current Electron instance for the global override) is shown as a placeholder in the input box on the corresponding setting screen.
Co-authored-by: Kristóf Marussy <kristof@marussy.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Return false instead of null in isTodosServiceAdded
* Resolve from TODOS_RECIPES_ID instead of hardcoded TODOS_RECIPE_ID
* Fix TodosWebview width toggling when isTodosServiceActive
* Add more todo service recipe IDs
* Refactor todos state management
* Moved todos service URL and recipe ID computation logic to todos/store
* Simplified TodosWebview by delegating to the store for the URL and
removing the (unused) payment logic
* Made the todos service computation logic in the Service model depend
on the logic in todos/store
* Made ServicesStore depend on the todos service logic from the Service
model
* Todos appearance fixes
* Hide double horizontal rules if todo settings are hidden due to an
added todo service
* Hide todos panel border when the panel is hidden or expanded
* Make expanded todos panel obey sidebar width and vertical style
settings
* Make todos/store use isValidExternalURL
* Harden isValidExternalURL against malformed URLs
* Reduce todo URL string duplication in config.js
Co-authored-by: Kristóf Marussy <kristof@marussy.com>
|
|
|
|
| |
context menu actions (#1494)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Expose Chrome version to todos webview (fix #1211)
The TickTick todo service fails to load if the Chrome version number
does not appear in the User-Agent string. However, login to Google Tasks
is prevented by the same.
We adopt the "chromeless" User-Agent logic from the service webview,
which selectively exposes the Chrome version everywhere except the
Google login screen. The common logic was moved into the
userAgent-helpers module.
* Refactor user agent switching
* "Chromeless" user agent switching is extracted into a separate model
* Both the service and the todos webview uses the same model
|
| |
|
|
|
| |
* Locked new version of 'recipes' submodule with corresponding changes.
|
|
|
|
| |
catchup from Franz source). [skip ci]
|
| |
|
|
|
|
|
|
|
| |
screen (#1416)
* Separated privacy & security settings into its own tab in the preferences screen.
* Fixing review comments.
|
|
|
|
|
|
|
| |
* Adding DuckDuckGo as an alternative search engine.
* Fixing review comments.
* Fixing review comments.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Computing the cache size can take a long time if the cache is large.
Previously, cache size computation was triggered by opening the Settings
pane, which slowed down changing settings even if the user wasn't
interested in the cache size.
This patch defers cache size computation until the Advanced tab is open
in the Setting page.
Additionally, cache size rendering (in MB / GB) is moved from the
AppStore into the EditSettingsForm to fix the notCleared functionality.
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Linux, the default Ctrl+Alt+{Left, Right} shortcuts are not always
usable, because many desktop environments use them for workspace
switching.
We also set Ctrl+Tab and Ctrl+Shift+Tab as a service switching shortcut.
On Linux, these shortcuts are displayed in the menu, while on other
platforms, the older shortcuts remain displayed.
However, both shortcuts are enabled on all platforms, unless they are
eaten by the desktop environment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix property spelling in Sidebar component
* Fix typo in todos partition name
* Use the FerdiDev setting.json in dev mode
The app.setPath calls are still a mess and need to be fixed, but this at
least allows me to experiment locally.
* Make @meetfranz/theme follow the accent color
We inject the value of the accent color into the themes, so the buttons
show the appropriate color. This allows removing some existing css
hacks.
In order to do this, the themes had to be turned into functions that
take the brand color (accent color) as an argument instead of
hard-coding it.
The css-based accent color for legacy components is left unchanged.
* Remove superfluous scrollbars
While overflow: scroll doesn't look ugly on macs, because the system
hides scrollbars by default (except on hower), on Linux and Windows, the
disabled scrollbars appearing by default look ugly.
We set overflow-y: auto instead to display a scrollbar only when needed.
* Simplify theme generation in @meetfranz/themes
* Remove default accent color code duplication
* Apply accent color to styles not in themeInfo.json
Some colors are darkened/lightened versions of the primary brand color,
so they are not caught by build-theme-info. We create these styles with
`color` manually.
* Inset shadow on sidebar
This creates a more flat look that projecting a shadow over the service,
and avoid compositing a shadow over the webview.
* Apply accent color to vertical style tab bar
* Workspace drawer styling in vertical mode
* Fix sidebar layout
In vertical mode, the top of the service was clipped by the sidebar
Also removes unnecessary whitespace in sidebar
* Fix 1px wide line on right when todos are hidden
* Fix window menu
When building the menu bar, the File / app menu is added later, so we
must be careful about indexing the menu bar.
* Update locale files
* Report the default accent color accurately
* Fix inverted button with dark theme
* Fix crash with invalid accent color
Fall back to the default accent color instead
* Darker secondary buttons in dark mode
* Vertical workspace drawer style outside debug mode
In order to reliably apply the style, we need to add a class name to the
drawer manually, as component names only appear in class names in debug
mode.
|
|
|
|
| |
#1373) (#1375)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Co-authored-by: FranzBot <i18n@meetfranz.com>
Co-authored-by: vantezzen <hello@vantezzen.io>
Co-authored-by: Makazzz <makazzzpro@live.ca>
Co-authored-by: Stefan Malzner <stefan@adlk.io>
Co-authored-by: Amine Mouafik <amine@mouafik.fr>
|
| |
|