WerWolv
5aa1046541
fix: Potential crash when log file is unavailable
2024-03-15 21:06:47 +01:00
WerWolv
3897245a7e
fix: Control characters ending up in log files
2024-03-15 17:57:12 +01:00
WerWolv
373db3de95
fix: Potential crash on Linux when loading external libraries
2024-03-15 17:54:09 +01:00
WerWolv
cbc31f3c18
feat: Added short forms for commonly used commands
2024-03-14 18:24:31 +01:00
WerWolv
cf320266df
fix: Linux build issues
2024-03-14 17:49:04 +01:00
WerWolv
2c711ea206
feat: Load additional libraries from ImHex's /lib folder
2024-03-13 19:49:04 +01:00
WerWolv
6972736abf
fix: Remaining build issues
2024-03-13 09:40:37 +01:00
WerWolv
3798654f92
fix: Unix build issues with dladdr
2024-03-13 08:38:40 +01:00
WerWolv
fdf01dfb50
impr: Get rid of cimgui shared library by hooking pinvoke handler
2024-03-12 23:17:49 +01:00
WerWolv
c610d804b1
build: Added cimgui
2024-03-11 21:09:56 +01:00
WerWolv
0186f2f456
feat: Added support for adding custom providers through C#
2024-03-10 22:05:26 +01:00
WerWolv
d4d1acb555
feat: Added --verbose
command line option to enable debug logs
2024-03-10 15:22:14 +01:00
WerWolv
45a3bdffe0
impr: Load small files into memory, open larger files as read-only by default
...
#841 , #1585
2024-03-10 14:31:39 +01:00
WerWolv
0cb10fcc34
fix: Endless loop when throwing exception in deferred tasks
2024-03-01 20:54:27 +01:00
iTrooz
97f5175c84
impr: Better recovery from exceptions thrown in main thread ( #1577 )
...
This PR improves many things which can be seen by the commit name, but
the most important thing is the addition of a popup telling the user
when an exception is thrown
![image](https://github.com/WerWolv/ImHex/assets/42669835/db796416-9cce-4aa5-ad60-c22f05b5fc73 )
2024-03-01 18:21:15 +01:00
WerWolv
667b940feb
fix: Build with precompiled headers for WebAssembly
2024-02-29 21:29:26 +01:00
WerWolv
bb3de7d510
fix: Build with precompiled headers on Linux
2024-02-29 21:15:51 +01:00
WerWolv
7bdde15796
build: Don't add defines to libimhex after precompiling headers
2024-02-29 20:39:14 +01:00
WerWolv
dd62bee264
build: Added precompiled headers
2024-02-29 19:57:20 +01:00
WerWolv
d5f323a2cd
feat: Allow workspaces to be deleted the same way as layouts
...
Fixed #1576
2024-02-28 22:10:48 +01:00
iTrooz
47362559ef
tests: Add infrastructure for testing plugins ( #1538 )
...
This PR adds a test architecture to be able to test plugins
Main infrastructure done by @WerWolv
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2024-02-26 20:51:08 +01:00
WerWolv
ea601a7d03
feat: Added option to highlight pattern parents in the hex editor when hovering
2024-02-25 14:30:56 +01:00
WerWolv
7434fdec6f
impr: Move advanced analysis yara rules to the patterns repo
2024-02-25 11:32:05 +01:00
WerWolv
752a2d2e8d
fix: Magic information querying being wrong with non-zero base address
2024-02-24 23:53:34 +01:00
WerWolv
859574c014
impr: .0f -> .0F
2024-02-24 23:34:29 +01:00
WerWolv
00b3d7809c
fix: Various issues with the digram and layered distribution diagrams
2024-02-24 23:23:53 +01:00
Nik
ec69849749
feat: Added font picker to the settings ( #1570 )
2024-02-24 22:46:52 +01:00
WerWolv
2f7b949bd1
impr: Split out digram and layered distribution in their own section
2024-02-24 18:54:35 +01:00
WerWolv
4100e48fe2
impr: Render digram and layered distribution to texture to improve frame rate
2024-02-24 18:07:20 +01:00
WerWolv
393bea6d4b
impr: Don't pass unique_ptr by const reference
2024-02-24 15:06:28 +01:00
WerWolv
9d02379583
impr: Don't allow opening the same file twice
...
Fixes #1569
2024-02-24 12:06:06 +01:00
WerWolv
3c365d65a4
impr: Nicer looking logger output colors
2024-02-24 11:28:47 +01:00
WerWolv
a7d6a4968e
fix: Certain language strings not loading correctly
2024-02-23 20:33:39 +01:00
WerWolv
75c03d56d2
fix: Opening files on macOS through the Open with...
option
...
Fixes #1070
2024-02-23 20:17:33 +01:00
WerWolv
026713750d
impr: Implement better string limiting algorithm
2024-02-23 18:32:12 +01:00
WerWolv
4d91e7f347
impr: Handle read-only files more gracefully
2024-02-23 17:59:37 +01:00
WerWolv
8059f22a32
impr: Make sure that highlight invalidation doesn't happen more than once per frame
2024-02-23 17:47:59 +01:00
WerWolv
a271658154
impr: Added once execution and task progress increment helpers
2024-02-23 17:47:40 +01:00
WerWolv
e6854d6a6a
fix: String limiting slicing unicode characters
2024-02-22 23:44:49 +01:00
WerWolv
5db041adb7
impr: Make sure crashes during logging cannot cause a deadlock
2024-02-22 20:48:35 +01:00
WerWolv
56e7c15064
impr: Refactor and modularize data information view
2024-02-21 00:06:52 +01:00
WerWolv
a2ffac9424
impr: Reorder achievement save routine to never accidentally clear the file
2024-02-20 00:10:05 +01:00
WerWolv
74d59705ad
fix: Issues where files are only being partially overwritten instead of truncated
2024-02-19 22:22:59 +01:00
WerWolv
adc51d3773
fix: Crash when restarting ImHex more than once
2024-02-19 22:06:46 +01:00
WerWolv
016d47b9d7
web: Make sure settings are loaded correctly
2024-02-18 14:02:21 +01:00
WerWolv
01c934f53a
impr: Rework setting change listeners
2024-02-18 11:29:18 +01:00
WerWolv
ed292a1e7a
impr: Implement basic exception catching in main thread
2024-02-18 02:12:57 +01:00
WerWolv
dfdd06b24c
impr: Set name of background service thread
2024-02-15 22:10:11 +01:00
WerWolv
2f88994c37
fix: Data inspector not updating correctly when data has changed
...
Fixes #1545
2024-02-15 13:01:34 +01:00
WerWolv
5cfcca0bc4
feat: Allow switching off borderless window mode
2024-02-11 14:12:14 +01:00
WerWolv
daf4e5cad6
refactor: More cleanup of the main file
2024-02-11 13:46:06 +01:00
Nik
bcbcb1f23c
impr: Various web build improvements, API cleanup ( #1541 )
2024-02-10 23:31:05 +01:00
iTrooz
f332963c75
build: remove IMHEX_COMMIT_HASH_SHORT cmake flag ( #1539 )
2024-02-10 01:40:33 +00:00
WerWolv
c3d755a3e2
fix: Decoding of Windows error messages being broken
2024-02-07 21:51:37 +01:00
WerWolv
1c28d4f610
fix: Error message formatting
2024-02-04 20:59:33 +01:00
WerWolv
77baf6f522
fix: Native error message formatting on Windows
2024-02-04 20:21:16 +01:00
WerWolv
f583df6c7d
impr: Improve overwriting individual characters in the hex editor editing mode
2024-02-04 17:19:08 +01:00
WerWolv
a6f4d0cdec
impr: Unfocus ImGui windows when main window loses focus
2024-02-03 23:56:08 +01:00
WerWolv
fe3facfc95
impr: Implement borderless window mode for macOS
2024-02-03 22:39:31 +01:00
WerWolv
a03e8dd879
impr: Harden settings system to not crash ImHex when having outdated configs
...
Fixes #1514
2024-02-03 12:16:36 +01:00
WerWolv
2ea0bbe5ca
fix: Window title not always updating correctly
2024-02-03 11:29:04 +01:00
WerWolv
e864c1aaac
fix: Crash due to libmagic bug when using MAGIC_COMPRESS
with magic_buffer
...
#1529
2024-02-02 23:22:46 +01:00
WerWolv
959a404e1c
fix: Don't pass nullptrs to libmagic
...
#1485
2024-02-01 22:35:24 +01:00
WerWolv
baaf84298c
impr: Disable console color output in web version
2024-02-01 12:09:43 +01:00
WerWolv
4fd4b3dfad
fix: Using cli arguments with statically linked plugins not working
2024-02-01 11:40:27 +01:00
WerWolv
7709f4e307
feat: Allow setting language through the command line
2024-02-01 10:58:45 +01:00
WerWolv
944b3a5b6c
fix: Selection valid check not working correctly
2024-01-31 15:31:51 +01:00
WerWolv
4a9bac3cd5
fix: Crash when opening file picker
2024-01-31 15:31:23 +01:00
WerWolv
80953a2286
feat: Allow jumping from hex editor to patterns and from patterns to source line
2024-01-31 11:26:22 +01:00
WerWolv
e7b615c7e7
fix: Memory leak in event manager
2024-01-30 22:00:42 +01:00
WerWolv
f4d1049be4
fix: More build errors
2024-01-30 16:32:48 +01:00
WerWolv
c2ff6f4e6b
fix: Missing includes
2024-01-30 15:50:00 +01:00
WerWolv
79834b9566
impr: Added language selection to oobe screen
2024-01-30 14:57:36 +01:00
WerWolv
d584edf546
impr: Improve situation where ImHex crashes on exit when resources aren't cleared properly
2024-01-30 11:21:34 +01:00
WerWolv
76e304c34e
build: Fix various issues with linking, clang and unity builds
2024-01-29 22:57:39 +01:00
WerWolv
2e74a78f46
build: Improve unity builds
2024-01-29 21:18:32 +01:00
WerWolv
6a146e239a
fix: Workspaces not being exported correctly
2024-01-29 20:50:00 +01:00
WerWolv
cecb8b8d31
fix: Linking issues and menu bar not appearing sometimes
2024-01-29 15:44:18 +01:00
Nik
339541a56f
impr: Restructure various components much better ( #1520 )
2024-01-28 22:14:59 +01:00
WerWolv
069544eb93
feat: Added Minimap to Hex Editor
2024-01-28 15:28:55 +01:00
WerWolv
d2a26017d7
fix: Build error due to mismatching types
2024-01-27 16:56:18 +01:00
WerWolv
61048757e6
impr: Allow custom encodings with only single-byte characters to be displayed immediately
2024-01-27 16:49:31 +01:00
WerWolv
4c06fd2fb8
impr: Allow plugins to be loaded in debug builds
2024-01-26 21:11:56 +01:00
iTrooz
b7349e42c7
feat: Allow users to open multiple files with the same name in the web version + make web Dockerfile able to run web server by itself ( #1518 )
2024-01-26 18:52:05 +00:00
WerWolv
bde476dfb7
build: Make sure libraries are correctly linked in external plugins
2024-01-26 12:36:07 +01:00
Nik
6ae86ce906
build: Get rid of pkgconfig as much as possible ( #1517 )
2024-01-26 12:13:22 +01:00
WerWolv
919110b024
impr: Make data information view have per-provider state
2024-01-25 22:49:56 +01:00
WerWolv
9c25a1609e
feat: Add more magic information to the information view
2024-01-25 22:49:22 +01:00
WerWolv
920b403ee3
build: Fixed libimhex not finding nlohmann json on some platforms
2024-01-25 11:05:02 +01:00
WerWolv
390c1469b1
build: Fix rpath issues on macOS
2024-01-24 22:30:40 +01:00
WerWolv
b605c463a1
impr: Further improve interfacing with external plugins
2024-01-22 23:35:00 +01:00
WerWolv
00491c8d90
git: Put libimhex and the ui plugin library under LGPLv2.1
2024-01-22 19:05:04 +01:00
WerWolv
60e7362f4e
feat: Allow extra plugin folders to be specified with the --plugins
cli option
2024-01-22 12:53:07 +01:00
Nik
58603ed12a
impr: Better experience when first starting ImHex ( #1510 )
2024-01-21 18:39:51 +01:00
Nik
d005b5d2d9
feat: Allow toolbar icons to be modified ( #1509 )
2024-01-21 18:39:32 +01:00
Nik
a13b5bf8c0
feat: Implement Myers' diffing algorithm ( #1508 )
2024-01-21 18:39:13 +01:00
Ada
cc97c0e525
fix: Segfault when launching ImHex with file arguments ( #1501 )
...
d511080814
introduced a regression where
running imhex with arguments (i.e. `imhex blob1.bin blob2.bin`) will
segfault due to a null pointer dereference.
### Implementation description
This patch updates `getSubCommands` to follow the same control flow as
`getFeatures`, where if the function returns a null pointer, it will
return gracefully rather than crash.
2024-01-18 11:11:06 +01:00
WerWolv
82a3017629
feat: Added always on top and fullscreen mode toggle
2024-01-15 20:52:08 +01:00
WerWolv
d511080814
impr: Make plugin features and subcommands work in statically linked builds
2024-01-13 00:34:13 +01:00
WerWolv
ea7483f9a7
impr: Get rid of the concept of built-in plugins
...
#1489
2024-01-12 23:03:13 +01:00
WerWolv
72f4331703
feat: Added virtual files to the pattern language
2024-01-11 20:11:22 +01:00
WerWolv
3449525ead
feat: Added drag-n-drop overlay for windows
2024-01-10 23:46:50 +01:00
WerWolv
1c17ec5599
fix: Avoid heap allocations in thread local storage
2024-01-10 20:13:53 +01:00
WerWolv
f518bdadbd
fix: Properly clear thread-local thread name
2024-01-09 21:46:54 +01:00
WerWolv
d5c8021b41
fix: Use a thread-local storage for thread names instead
2024-01-09 16:16:20 +01:00
WerWolv
929b5176ce
impr: Fallback to old thread name API when new one isn't available
2024-01-09 13:43:34 +01:00
WerWolv
dd9a2e1818
fix: Errors being thrown during library init
2024-01-09 11:38:56 +01:00
WerWolv
0b5656dcc4
fix: Manually initialize library plugins
2024-01-09 11:31:56 +01:00
WerWolv
037d77f28e
impr: Improve plugin unload logging
2024-01-09 10:54:53 +01:00
WerWolv
301e95b708
impr: Move plugin unload logging to plugins
2024-01-09 10:53:50 +01:00
WerWolv
874bac7de2
impr: Include thread name in log
2024-01-09 10:39:06 +01:00
WerWolv
bfafc692db
impr: Added icons to all menu items
2024-01-08 21:51:48 +01:00
WerWolv
9530100455
fix: Texture interpreting raw data as structured images
2024-01-08 09:39:01 +01:00
WerWolv
cab329556c
impr: Make sure plugins are only loaded once
2024-01-07 18:45:17 +01:00
WerWolv
1c5d6cbe94
impr: Added error reporting for plugin unloading
2024-01-07 16:07:53 +01:00
WerWolv
576bc80716
impr: Use full windows to draw tutorial popups
2024-01-06 22:54:18 +01:00
WerWolv
f9ab16049b
fix: Make sure plugins are unloaded in opposite load order
2024-01-06 16:09:05 +01:00
WerWolv
464495987a
fix: Crash due to task manager not being fully reset
2024-01-04 21:33:17 +01:00
WerWolv
556fd2bbc3
build: Really only build the things that are necessary
2024-01-04 13:18:27 +01:00
WerWolv
0097d1782e
build: Fix external plugins not having a imhex version set
2024-01-04 12:01:40 +01:00
WerWolv
ebf379f7c1
build: Fix some sdk variables not being set correctly
2024-01-04 10:39:07 +01:00
WerWolv
eca41cac16
build: Fix more link and define issues
2024-01-04 01:06:38 +01:00
WerWolv
a8e2e132d1
build: Fix library linking and define setting issues
2024-01-04 01:01:51 +01:00
WerWolv
ff48d37598
build: Make SDK not try to link to unbundled libraries
2024-01-04 00:37:56 +01:00
WerWolv
e2b7a69fc8
fix: Warnings when trying to load progress for achievements that aren't in save file
2023-12-31 13:53:28 +01:00
Nik
950eaea8af
impr: Make decompression support actually useful ( #1481 )
2023-12-31 11:39:24 +01:00
WerWolv
b76e7ff678
impr: Remove duplicate window name from macOS title bar
2023-12-30 23:52:25 +01:00
Nik
5a0a5ad445
build: Fix macOS M1 build entirely ( #1480 )
2023-12-30 19:11:33 +01:00
WerWolv
af63b42eaf
impr: Make task progress bar show animation when no progress is set
2023-12-28 22:14:45 +01:00
WerWolv
5adeac6bbc
fix: Make sure library plugins are always initialized
2023-12-28 14:59:23 +01:00
WerWolv
3c6f52f5ea
impr: Harden achievement progress store function
2023-12-27 16:57:44 +01:00
WerWolv
874619f62e
impr: Harden settings store function
2023-12-27 16:53:03 +01:00
WerWolv
74b5c93caf
impr: Code style improvements
2023-12-27 16:33:49 +01:00
WerWolv
1cf692cecf
fix: PerProvider move event not being unsubscribed
2023-12-27 11:33:04 +01:00
WerWolv
af5b871383
fix: Provider not having any valid regions by default
2023-12-27 11:31:25 +01:00
WerWolv
37d60411bb
fix: Hyperlink items disappearing inside of scrolling containers
2023-12-27 02:14:38 +01:00
WerWolv
4e0a93fc20
fix: MemoryProvider not having any valid regions
2023-12-27 01:05:34 +01:00
WerWolv
96fe608d60
impr: Switch most usages of modals over to toasts
2023-12-26 00:22:47 +01:00
WerWolv
98bc89cb39
impr: Make sure all views are closed before loading new workspace or layout
2023-12-24 14:51:47 +01:00
WerWolv
e2489151f3
feat: Added decompressing support
2023-12-24 13:14:51 +01:00
WerWolv
9066891ce2
fix: ImHex not starting on some platforms
2023-12-24 12:20:51 +01:00
WerWolv
65e2f1b5af
fix: Synchronized scrolling not working correctly
2023-12-24 00:06:16 +01:00
WerWolv
83f8370e2a
impr: Don't display plugins in the list that couldn't be loaded
2023-12-23 23:12:15 +01:00
WerWolv
fe24db7c57
feat: Move hashes into plugin, merged in extra hashes plugin
2023-12-23 22:01:47 +01:00
Nik
61bfe10bc2
refactor: Rework features that use external libraries into optional plugins ( #1470 )
2023-12-23 21:09:41 +01:00
Nik
84bfd10416
build: Restructured entire custom plugin system ( #1469 )
2023-12-22 23:39:38 +01:00
WerWolv
b934ca6ad3
impr: Allow a entire 64 bit address space to be displayed in the hex editor
2023-12-22 16:58:50 +01:00
Justus Garbe
ad8e3e38f0
Revert pattern language until it's stable again ( #1468 )
...
- Revert pattern language
2023-12-21 22:01:07 +01:00
WerWolv
e2ae567b9f
fix: Logger not printing project prefix properly
2023-12-20 15:10:53 +01:00
WerWolv
e951359a46
feat: Add frame time graph to FPS display
2023-12-20 13:42:42 +01:00