Commit Graph

123 Commits

Author SHA1 Message Date
Gustavo Carvalho
6b8a3601ad chore: bump version to 0.6.4 2026-03-08 10:18:35 -03:00
Gustavo Carvalho
fdfd3c06ef fix: recreate shortcut without permissions (#209)
* feat: Add UI for manual desktop environment shortcut registration

* chore: remove automatic registration on startup
2026-03-08 10:12:54 -03:00
dependabot[bot]
2b85f2bc37 chore(deps): bump the dev-dependencies group with 6 updates (#192)
* chore(deps): bump the dev-dependencies group with 6 updates

Bumps the dev-dependencies group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.13` | `19.2.14` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.54.0` | `8.55.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.54.0` | `8.55.0` |
| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.3` | `5.1.4` |
| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.0.0` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.54.0` | `8.55.0` |


Updates `@types/react` from 19.2.13 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `@typescript-eslint/eslint-plugin` from 8.54.0 to 8.55.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.54.0 to 8.55.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/parser)

Updates `@vitejs/plugin-react` from 5.1.3 to 5.1.4
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@5.1.4/packages/plugin-react)

Updates `eslint` from 9.39.2 to 10.0.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v9.39.2...v10.0.0)

Updates `typescript-eslint` from 8.54.0 to 8.55.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-version: 19.2.14
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 5.1.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: eslint
  dependency-version: 10.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: typescript-eslint
  dependency-version: 8.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: downgrade eslint to version 9.39.2

* chore(deps): update uuid dependency to version 1.21.0

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gustavo Carvalho <gustaavoribeeiro@hotmail.com>
2026-02-16 16:56:21 -03:00
Gustavo Carvalho
03a9e612ae chore: bump version to 0.6.3 2026-02-15 01:08:11 -03:00
Kinou
24ffbc40b9 feat: move setup wizard to separate window (#179)
* feat: move setup wizard to separate window (MPA) with rust backend command

* fix: Remove forced GDK_SCALE exports to respect system DPI scaling

- Remove GDK_SCALE and GDK_DPI_SCALE forced exports from wrapper.sh
  These were forcing 1x scaling even on HiDPI displays with 2x scaling
- Add setup window closure handler to exit app if wizard not completed
- Fix TypeScript error with setInterval return type
- Update install.sh wrapper generation to match wrapper.sh changes

Fixes scaling issues on HiDPI displays (4K monitors with 2x scaling)

* chore: address code review comments

* chore: fix lint issues

* refactor: merge setup.html into index.html, fix race conditions and improve error handling
2026-02-15 00:34:55 -03:00
Gustavo Carvalho
0687af8a40 chore: bump version to 0.6.2 2026-02-14 23:37:27 -03:00
Gustavo Carvalho
d1c005d5be fix: detect nvidia don't trigger set -e 2026-02-14 23:36:59 -03:00
Gustavo Carvalho
d1e339b8bd chore: bump version to 0.6.1 2026-02-14 01:57:39 -03:00
Gustavo Carvalho
17cf8d1081 chore: disables transparency for Nvidia and App Image temporarily (#177)
* docs: update README to clarify window transparency handling

* feat: implement rendering environment detection

* chore: optimize rendering environment hook

* fix: improve NVIDIA detection
2026-02-14 01:56:21 -03:00
Gustavo Carvalho
e586952b39 chore: bump version to 0.6.0 2026-02-13 21:32:08 -03:00
Gustavo Carvalho
0cde431e72 feat: multi arch support (#175)
* feat: multi arch support

* fix: sanitize GTK environment

Co-authored-by: kinou-p <kinou-p@users.noreply.github.com>
2026-02-13 21:31:44 -03:00
Gustavo Carvalho
d1af288f5c refactor: remove unnecessary Linux-specific conditional compilation 2026-02-13 19:56:04 -03:00
Gustavo Carvalho
e96522d2c6 chore: bump version to 0.5.5 2026-02-13 09:21:16 -03:00
Gustavo Carvalho
f1563966ee fix: pin order (#173)
* fix: pin order

* chore: simplify logic
2026-02-13 09:20:40 -03:00
Gustavo Carvalho
04e2ed1e06 chore: bump version to 0.5.4 2026-02-13 08:44:01 -03:00
Gustavo Carvalho
a679b7fd08 feat: move pasted item to top (#171)
* feat: move pasted item to top

* chore: avoid moving item if its correct position

---------

Co-authored-by: gustavosett <gustavosett@debian.myguest.virtualbox.org>
2026-02-13 08:10:07 -03:00
Gustavo Carvalho
e5739a2dc8 chore: bump version to 0.5.3 2026-02-10 05:04:41 -03:00
Gustavo Carvalho
055a2c505f chore: bump version to 0.5.2 2026-01-30 07:00:57 -03:00
Eyad
314e8d377f Feat/dynamic tray icon (#135)
* feat: Add Dynamic Tray Icon

---------

Co-authored-by: Antigravity Bot <bot@antigravity.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-29 02:42:55 -03:00
Gustavo Carvalho
47056d551a chore: bump version to 0.5.1 2026-01-20 00:02:22 -03:00
freshCoder21313
c298453cb8 feat: implement automatic history cleanup based on time intervals (#123)
* feat: implement automatic history cleanup based on time intervals

- Add `cleanup_old_items` method to `ClipboardManager` to remove non-pinned items older than a specified interval.
- Update `UserSettings` to include `auto_delete_interval` and `auto_delete_unit`.
- Trigger cleanup in the background thread (every ~30 seconds) and immediately when the main window is toggled.
- Emit a `history-cleared` event when items are auto-deleted to keep the UI in sync.

* refactor: centralize auto-delete interval calculation in UserSettings

Extract the logic for converting auto-delete intervals (minutes, hours, days, weeks) into a dedicated method `auto_delete_interval_in_minutes` within the UserSettings struct.

This change:
- Removes duplicated logic in main.rs
- Improves code maintainability by centralizing the unit conversion
- Introduces safer numeric operations using saturating_mul
- Simplifies the interval check in the clipboard watcher background task

* feat: ensure clipboard history persistence and improve event handling

- Expose `save_history` in `ClipboardManager` to allow explicit persistence during cleanup.
- Trigger `save_history` in `main.rs` when old items are cleaned up to ensure the disk state matches the memory state before emitting events.
- Update `user_settings.rs` to treat unknown auto-delete units as unreachable for better error tracking.
- Enhance `useClipboardHistory.ts` by adding a `history-sync` listener and implementing mount guards to prevent memory leaks and state updates on unmounted components.
2026-01-16 15:47:34 -03:00
Gustavo Carvalho
ff6db1282a chore: bump version to 0.5.0 2026-01-06 16:00:34 -03:00
dependabot[bot]
cd63f37bcf chore(deps): bump the all-cargo group in /src-tauri with 2 updates (#114)
* chore(deps): bump the all-cargo group in /src-tauri with 2 updates

Updates the requirements on [reqwest](https://github.com/seanmonstar/reqwest) and [whoami](https://github.com/ardaku/whoami) to permit the latest version.

Updates `reqwest` to 0.13.1
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.12.0...v0.13.1)

Updates `whoami` to 2.0.0
- [Release notes](https://github.com/ardaku/whoami/releases)
- [Commits](https://github.com/ardaku/whoami/compare/v1.5.0...v2.0.0)

---
updated-dependencies:
- dependency-name: reqwest
  dependency-version: 0.13.1
  dependency-type: direct:production
  dependency-group: all-cargo
- dependency-name: whoami
  dependency-version: 2.0.0
  dependency-type: direct:production
  dependency-group: all-cargo
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: handle error when retrieving username in fix_permissions_now function

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gustavo Carvalho <gustaavoribeeiro@hotmail.com>
2026-01-06 15:59:15 -03:00
Hen
11c4d08471 fix: debian dependencies had wrong package (#115) 2026-01-06 15:27:02 -03:00
Gustavo Carvalho
52ac857647 chore: bump version to 0.4.28 2026-01-06 14:15:06 -03:00
Gustavo Carvalho
40c192d307 fix: remove forced x11 backend (#116) 2026-01-06 14:14:27 -03:00
Gustavo Carvalho
d12afdf6be chore: bump version to 0.4.27 2026-01-04 09:16:01 -03:00
Gustavo Carvalho
f5d952d9ec fix: ensure software rendering in virtualized environments 2026-01-04 09:15:32 -03:00
Gustavo Carvalho
9bc99a3687 chore: bump version to 0.4.26 2026-01-04 05:41:16 -03:00
Gustavo Carvalho
a5546669cf fix: revert resolve WebKit incompatibility on Pop!_OS (#109)
This reverts commit dc7e1288e0.
2026-01-04 05:40:17 -03:00
Gustavo Carvalho
bd9c8772f0 chore: bump version to 0.4.25 2026-01-03 22:59:18 -03:00
Gustavo Carvalho
dc7e1288e0 fix: resolve WebKit incompatibility on Pop!_OS (#109) 2026-01-03 22:52:19 -03:00
Gustavo Carvalho
0f1538589b chore: improve backup handling by creating a single backup file if it doesn't exist (#105) 2026-01-03 18:24:14 -03:00
Gustavo Carvalho
d95feffbb9 chore: bump version to 0.4.24 2026-01-03 17:20:52 -03:00
Gustavo Carvalho
72cb57c4e3 feat: implement COSMIC shortcut handling with RON format support (#97)
* feat: implement COSMIC shortcut handling with RON format support

* chore: ajusts from copilot review

* feat: add RON string escaping

* chore: enhance COSMIC shortcut normalization
2026-01-03 17:20:02 -03:00
Gustavo Carvalho
d50e207606 feat: make it resizable (#95) 2026-01-03 15:24:05 -03:00
Gustavo Carvalho
6c2640159a fix: add missing dependencies for package installation (#94) 2026-01-03 15:05:14 -03:00
Gustavo Carvalho
a048638427 chore: bump version to 0.4.23 2026-01-01 15:11:11 -03:00
Gustavo Carvalho
3875462449 feat: theme detection mechanism (#88)
* feat: theme detection mechanism

* feat: implement D-Bus theme detection

* feat: implement centralized system theme detection mechanism
2026-01-01 14:22:41 -03:00
Gustavo Carvalho
d87027887e chore: bump version to 0.4.22 2026-01-01 07:26:57 -03:00
Gustavo Carvalho
544733782c chore: bump version to 0.4.21 2026-01-01 02:30:08 -03:00
Gustavo Carvalho
bb053f6ef4 feat: WIN + . shortcut (#84)
* feat: win dot shortcut

* fix: LXQt shortcut section

* feat: add percent-encoding dependency

* feat: add LXDE shortcut binding support

* feat: enhance INI encoding and XML escaping in shortcut manager
2026-01-01 02:29:32 -03:00
Gustavo Carvalho
b1f8f78898 chore: bump version to 0.4.20 2026-01-01 01:33:03 -03:00
Gustavo Carvalho
0bec6ea6b4 feat: ui scale setting (#83) 2026-01-01 01:32:29 -03:00
Gustavo Carvalho
f5c72e6926 chore: bump version to 0.4.19 2025-12-27 07:34:11 -03:00
Gustavo Carvalho
c86cc8ebb5 chore: bump version to 0.4.18 2025-12-27 03:48:38 -03:00
Gustavo Carvalho
d870cdd35b chore: bump version to 0.4.17 2025-12-26 20:07:15 -03:00
Gustavo Carvalho
80d52366ab feat: history limit (#68)
* feat: improve pinning logic in clipboard history

* feat: sort clipboard history items with pinned items first

* feat: add configurable maximum clipboard history size

* chore: remove zero check

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: expose DEFAULT_MAX_HISTORY_SIZE

* feat: set default maximum history size from clipboard manager

* chore: make sort by key stable

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: improve sort by consistense

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: ensure history is persisted only when trimmed items exceed configured limit

* feat: minimum and maximum history size constants

* fix: enforcey history limit already truncate history

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: enforce history limit considering pinned items

* feat: improve clipboard history synchronization

* feat: add logging for checking limits

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: enhance clipboard history updates with delta handling

* feat: improve max history size input handling to prevent accidental data loss

* fix: ajust typo

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: improve comment

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: improve history change detection

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-26 20:05:50 -03:00
freshCoder21313
0211ab7d9e feat: smart actions (#67)
* feat: extract Kaomoji and Symbols feature

* style(lint & format): Improve code formatting and adjust whitespace
- Modified whitespace, blank lines, and prop alignment across ClipboardApp, KaomojiPicker, and user_settings.rs.
- Categorized as 'style' for cosmetic changes that enhance readability without altering any logic or functionality.
- Decision made to standardize prop indentation and remove unnecessary blank lines for consistent code style.

* chore: apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat(merge | expand-feature): add smart actions and setup wizard

* refactor: reorganize components and add minor features

* refactor: address review feedback and fix rich text rendering

- Enable rendering of `RichText` content in history items.
- Simplify `#[serde(default)]` usage in user settings.
- Improve regex error handling in clipboard search.
- Clean up imports, indentation, and redundant code in components.
- Enhance smart action regex and error logging.

* feat(clipboard): add history persistence and fixed related error (restart duplication)

- Implement JSON-based persistence for clipboard history
- Replace randomized DefaultHasher with deterministic FnvHasher to ensure stable hashing across restarts
- Initialize duplication checks from loaded history to prevent duplicate entries on startup

* feat(search): support RichText content
- Updated search logic in src/components/ClipboardTab.tsx.
- Categorized as 'feat' for adding new content type support to existing search capabilities.
- Introduced a `searchableText` variable to unify content extraction for filtering.

* refactor: centralize `BooleanSettingKey` type and enhance smart action URL detection and execution.

* refactor: restore the ability to execute smart actions using switch statements, handle errors, and log undefined actions of smartActions.

---------

Co-authored-by: Gustavo Carvalho <gustaavoribeeiro@hotmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-26 16:59:55 -03:00
Gustavo Carvalho
af8d00adde chore: bump version to 0.4.16 2025-12-26 01:53:19 -03:00