Commit Graph

5651 Commits

Author SHA1 Message Date
WerWolv
49c56e28b4 build: Improve snapcraft manifest and CI 2025-08-14 17:10:33 +02:00
WerWolv
3ec4f086ec build: Remove unused resource file 2025-08-14 17:09:53 +02:00
WerWolv
3cb5dd226c build: Updated ImGui to v1.92.2b 2025-08-13 22:46:27 +02:00
WerWolv
6a1aa2c13e impr: Close context menus on focus loss 2025-08-13 22:17:50 +02:00
WerWolv
4b73e1a184 fix: Search bar icon being too high up on macOS 2025-08-13 21:08:03 +02:00
WerWolv
5fa9aaa6a6 fix: Crash when opening provider after warm-restarting ImHex 2025-08-13 20:35:25 +02:00
WerWolv
63711f652f fix: Fonts being scaled twice as big by default on macOS 2025-08-13 20:24:00 +02:00
WerWolv
d07b4417d7 build: Updated libwolv 2025-08-13 17:32:52 +02:00
WerWolv
95ae5a26ed fix: Don't load workspaces from non-writable places since they can't be updated then 2025-08-13 17:32:04 +02:00
WerWolv
d8ad23630a build: Revert back to old way of installing vcpkg packages 2025-08-12 23:27:48 +02:00
WerWolv
c03d9301e2 build: Fetch vcpkg commits before install 2025-08-12 22:42:31 +02:00
WerWolv
6ec6851a8a build: Revert back vcpkg baseline commit 2025-08-12 21:36:55 +02:00
WerWolv
a7d3a916cc tests: Update localization key checker script for new language files 2025-08-12 21:07:30 +02:00
WerWolv
e1d1c4acca build: Fix vcpkg mess 2025-08-12 21:04:46 +02:00
WerWolvTranslationBot
bd17e0edc1 lang: Remove remaining unused keys (#2403)
Translations update from [Weblate](https://weblate.werwolv.net) for
[ImHex/Builtin](https://weblate.werwolv.net/projects/imhex/builtin/).


It also includes following components:

* [ImHex/Diffing](https://weblate.werwolv.net/projects/imhex/diffing/)

* [ImHex/Yara
Rules](https://weblate.werwolv.net/projects/imhex/yara-rules/)

*
[ImHex/Disassembler](https://weblate.werwolv.net/projects/imhex/disassembler/)

* [ImHex/Fonts](https://weblate.werwolv.net/projects/imhex/fonts/)

* [ImHex/Hashes](https://weblate.werwolv.net/projects/imhex/hashes/)

* [ImHex/Remote](https://weblate.werwolv.net/projects/imhex/remote/)

* [ImHex/Script
Loader](https://weblate.werwolv.net/projects/imhex/script-loader/)

* [ImHex/UI](https://weblate.werwolv.net/projects/imhex/ui/)

*
[ImHex/Visualizers](https://weblate.werwolv.net/projects/imhex/visualizers/)

* [ImHex/Windows](https://weblate.werwolv.net/projects/imhex/windows/)



Current translation status:

![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/builtin/horizontal-auto.svg)

---------

Co-authored-by: Weblate <noreply@weblate.org>
2025-08-12 20:54:41 +02:00
WerWolv
6e88d08c17 git: Fix langtool 2025-08-12 20:30:16 +02:00
WerWolvTranslationBot
278babe7f2 lang: Initial Weblate re-integration (#2402)
Translations update from [Weblate](https://weblate.werwolv.net) for
[ImHex/Builtin](https://weblate.werwolv.net/projects/imhex/builtin/).


It also includes following components:

* [ImHex/Diffing](https://weblate.werwolv.net/projects/imhex/diffing/)

* [ImHex/Yara
Rules](https://weblate.werwolv.net/projects/imhex/yara-rules/)

*
[ImHex/Disassembler](https://weblate.werwolv.net/projects/imhex/disassembler/)

* [ImHex/Fonts](https://weblate.werwolv.net/projects/imhex/fonts/)

* [ImHex/Hashes](https://weblate.werwolv.net/projects/imhex/hashes/)

* [ImHex/Remote](https://weblate.werwolv.net/projects/imhex/remote/)

* [ImHex/Script
Loader](https://weblate.werwolv.net/projects/imhex/script-loader/)

* [ImHex/UI](https://weblate.werwolv.net/projects/imhex/ui/)

*
[ImHex/Visualizers](https://weblate.werwolv.net/projects/imhex/visualizers/)

* [ImHex/Windows](https://weblate.werwolv.net/projects/imhex/windows/)



Current translation status:

![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/builtin/horizontal-auto.svg)

---------

Co-authored-by: Weblate <noreply@weblate.org>
2025-08-12 20:24:59 +02:00
WerWolv
b23f33ab6c build: Update vcpkg baseline commit 2025-08-12 19:22:54 +02:00
WerWolv
50b25882cd fix: MSVC build errors 2025-08-12 19:21:00 +02:00
WerWolv
28bfceab6c build: Updated ImGui to v1.92.2 2025-08-12 18:01:04 +02:00
WerWolv
6febe9982b impr: Significantly reduce memory usage 2025-08-12 18:00:47 +02:00
WerWolv
b5a3a8b4c2 impr: Rewrite Localization Manager to use more standard format and load localizations on the fly 2025-08-12 18:00:10 +02:00
WerWolv
25c8f4b588 fix: Jump to certain array-member patterns not working
Fixes #2398
2025-08-11 21:46:47 +02:00
WerWolv
09b2e20a3d impr: Save most of the hex editor settings
#2398
2025-08-11 21:03:18 +02:00
WerWolv
e9d95c78f6 fix: Store install issues when paths are symlinked 2025-08-11 17:45:17 +02:00
WerWolv
ad2a36676c fix: Issues when running the updater on Linux 2025-08-11 17:44:49 +02:00
WerWolv
43da36a957 build: Use vcpkg manifest instead of manually installing deps 2025-08-11 17:44:20 +02:00
WerWolv
71e9f7b239 build: Add option to exclude bundling the SDK 2025-08-11 17:43:53 +02:00
WerWolv
b566d31f28 build: Don't modify CMAKE_XXX_FLAGS directly 2025-08-11 17:43:31 +02:00
paxcut
c4d167f8d4 fix: Highlighter can fail to update a files contents. (#2400)
If you project has two patterns and one is very big, switching providers
while the big file is being highlighted makes the small one skip its own
coloring. The error was caused by a failure to interrupt the ongoing
lengthy highlighting process in a timely manner. It appears that calling
task interrupt allows the task to run to completion and when the task
runs to completion then the retrying mechanism is not trigger and the
small pattern never has a task assigned for coloring.

This was fixed by creating a variable that signals the intention to
interrupt the current highlighting process. The most used function in
the highlighter (used to update the current token) checks the variable
and throws an out of range exception causing the interruption of the
current highlighter and triggering the retry mechanic.
2025-08-10 23:57:17 -07:00
paxcut
50f1fe2b2d improv: moved text editor to the ui plugin. (#2397)
Reorganized source code into files named in the fashion of imhex and
split large functions into smaller ones. Moved all function definitions
out of the header except for one-liners. All variable types were
switched to use imHex standard (u8,...) and removed duplicated functions
that were needed when the text editor was isolated.

Minor improvements to find/replace while making sure they still worked
with utf-8 chars.
2025-08-10 14:35:21 -07:00
WerWolv
75e73ddcd9 fix: Properly clean up plugin features 2025-08-10 22:45:50 +02:00
WerWolv
3616c3ad7b fix: Move jthread include 2025-08-10 22:41:06 +02:00
WerWolv
23d673f920 fix: Multiple FreeBSD build and run errors 2025-08-10 22:38:12 +02:00
WerWolv
8c9f3fa569 impr: Slightly modernize hashes view 2025-08-10 20:05:07 +02:00
WerWolv
80003a4843 impr: Condense and modernize find view 2025-08-10 20:04:36 +02:00
WerWolv
12785c00bd impr: Condense and modernize data inspector view 2025-08-10 18:25:06 +02:00
Remik1r3n
8f94b46149 fix: Chinese translate error for Windows context menu setting (#2396)
### Problem description
In current Chinese translation, "Windows context menu entry" in General
settings has been tranlated to 窗口上下文菜单项. and for Traditional Chinese,
it's 視窗內容功能表項目 (basically the same).

The previous translations were not conveying the correct meaning
associated with the term "Windows context menu entry". They were too
literal and did not clearly describe the functionality related to the
Windows Explorer context menu.

"窗口" in Chinese means a physical window, **not the Microsoft Windows
OS**. The Windows OS is usually referred to as "微软视窗" (rare) or left as
"Windows".

"上下文菜单" is a very "direct" translation of "Context menu" that is hard to
understand for most users. Chinese user usually call it "右键菜单", which is
"Right-Click Menu".

### Implementation description
I've changed it to 添加到文件资源管理器右键菜单 for Simplified Chinese, and
加至檔案總管的環境選單 for Tranditional Chinese.
2025-08-10 14:27:15 +02:00
WerWolv
73a59fe5c1 impr: Modernize Tools view 2025-08-10 12:36:11 +02:00
WerWolv
5028b354cc impr: Clean up window setup code 2025-08-10 12:34:03 +02:00
WerWolv
3e98d0a0f8 fix: Updater crashing if APPIMAGE env var isn't defined 2025-08-10 09:41:52 +02:00
WerWolv
902c8dcd8d git: Retry snap installation a few times in case of network issues 2025-08-10 00:20:04 +02:00
WerWolv
66e407549e fix: Missing return value in update function 2025-08-09 23:49:59 +02:00
WerWolv
0870ab4d3c feat: Add option to check for updates to the Extras menu 2025-08-09 23:46:15 +02:00
WerWolv
6be0eeff72 impr: Allow more release types to be updated 2025-08-09 23:31:07 +02:00
WerWolv
9246d040ad fix: Remove another unused lambda capture 2025-08-09 22:40:10 +02:00
WerWolv
549866bfd9 fix: Remove unused lambda capture 2025-08-09 22:09:26 +02:00
Goomii
d81f0668a1 feat: Improved usability of the TCP Client/Server tool (#2175)
### Problem description
Messages in the TCP tool were only visible as a text string in the
messages list and unable to be opened in the hex view.
There was also no way to send data other than as a typed in text string
in the input field.

### Implementation description
* Added the ability to double-click on a message in the messages list to
open it in a provider tab.
* Added a new button to the client tab to send the current provider to
the connected server.
* Updated the list look to show the message index in a column

### Screenshots



https://github.com/user-attachments/assets/198d78c7-7c94-4f48-ac8c-3581e2ac12e4

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2025-08-09 22:07:58 +02:00
kur$
6b4fef806c fix: Added protection against deleting symlinks (#2288)
This PR improves the safety and reliability of the deleteOldFiles()
function by:

Preventing symlink attacks

Uses std::filesystem::canonical() to resolve all paths, eliminating ./..
and symlinks
Verifies each file is actually inside the target directory before
deletion
Safer file operations
Explicitly skips non-regular files (directories/symlinks)

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2025-08-09 19:58:36 +02:00
WerWolv
4e5b2675a0 fix: Remove unused if 2025-08-09 19:53:32 +02:00