Thomas
24106b860a
impr: Added some documentation to providers ( #1001 )
2023-04-01 11:17:19 +02:00
WerWolv
1460044e91
impr: Save custom encoding file to project
...
Fixes #1005
2023-03-31 11:06:51 +02:00
Thomas
fabb1596e5
impr: Handle and show NFD errors ( #995 )
...
This PR handles errors that NFD might encounter (both in Init() and the
other method to open the dialog), and log them in the logs and in the
GUI
This (among other) fix the crash I had running ImHex as root and opening
a file
2023-03-26 11:02:51 +02:00
Thomas
725e32250b
fix: Move config files to XDG_CONFIG_HOME ( #993 )
...
This pull request changes Config Directories on Linux to only include
the XDG_CONFIG_HOME directory, as opposed to all directories in
XDG_DATA_DIRS before (introduced in
https://github.com/WerWolv/ImHex/pull/644/files#diff-c1a4d2b63fed168a9a3568944e9cadeae096f2ddcec3649e4a9b2d29fd104be0L162-L166 ).
Reasons:
- This changes the location of the config file to the standard directory
meant for configurations
- This prevents the config file from being read/written in system
locations, like /usr/share
This PR also includes a migration task that will run on Linux and move
config/GUI dimensions to the new directory
as a bonus, as discussed on discord, it writes the logs to a Data
directory instead of a Config directory
2023-03-26 11:02:23 +02:00
WerWolv
635173e55a
impr: Make sure themes are added correctly when downloaded from the store
2023-03-23 20:35:16 +01:00
WerWolv
2296766746
build: Allow building with capstone 4.X again
2023-03-23 16:45:00 +01:00
WerWolv
8ef863cae1
fix: Progress not working with with new http wrapper
2023-03-23 13:32:35 +01:00
WerWolv
9463105172
fix: Header memory leak in http requests class
2023-03-23 12:08:33 +01:00
WerWolv
bb4819bce4
sys: Fixed http request stack overflow
2023-03-23 11:43:07 +01:00
WerWolv
15be24db62
sys: Updated to use the new HttpRequest helper instead of Net
2023-03-23 11:23:07 +01:00
WerWolv
8c5fd021f7
api: Hook up new http wrapper to the rest of ImHex
2023-03-22 23:05:18 +01:00
WerWolv
1a1ba19770
api: Added new, more flexible curl http wrapper
2023-03-22 21:48:14 +01:00
WerWolv
57a62d0544
impr: Clean up entire API and added doc comments
2023-03-21 15:33:43 +01:00
Thomas
8731b7582b
impr: Display a more detailed errors when opening a raw disk provider failed ( #970 )
...
PR title is self explaining
I may modify other providers implementations to display a detailed error
message later
I'm not sure how to deal with other locales because the format changed.
Before, I had to add and comment the key in all locale files, now I'm
not so sure.
2023-03-21 10:33:00 +01:00
WerWolv
a4dfaba03f
fix: All menu item shortcuts being global
2023-03-20 15:12:12 +01:00
WerWolv
6e23560e80
feat: Added all menu items to command palette
2023-03-20 14:11:43 +01:00
WerWolv
39e8d557e8
sys: Completely revamped main menu item system
2023-03-20 13:11:43 +01:00
WerWolv
367bd76046
ui: Mae sure all theme scaling values are scaled correctly
2023-03-18 10:52:50 +01:00
WerWolv
466dacaab4
ui: Improve the look and feel of the information view
2023-03-17 17:07:39 +01:00
WerWolv
1f8645fd43
fix: Occasional crash when multiple threads are reading data from a file provider
2023-03-17 11:43:50 +01:00
WerWolv
7cdba75bef
fix: Crash when not making a valid selection in provider load interfaces
2023-03-16 16:48:15 +01:00
WerWolv
3a840c4ced
impr: Properly display custom encoding characters that are split between lines
2023-03-14 09:35:43 +01:00
WerWolv
55f9faea10
sys: Updated more code to libwolv
2023-03-13 08:58:08 +01:00
WerWolv
fb2e668589
sys: Moved more functions to libwolv
2023-03-12 18:43:05 +01:00
WerWolv
0dafb3d230
sys: Replaced many helper functions with libwolv
2023-03-12 18:27:33 +01:00
Fenrisfulsur
069221757f
feat: Added chunk based entropy analysis to information view ( #933 )
...
Issue: https://github.com/WerWolv/ImHex/issues/522
Implementation of chunk based entropy analysis in diagram.hpp available
from the data information view and in the pattern language.
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-03-10 16:06:18 +01:00
WerWolv
0017cd2e40
feat: Added binary hex cell visualizer
...
Closes #939
2023-02-18 22:20:02 +01:00
WerWolv
bf8089dc7e
impr: Don't memory map files, never keep a write handle open for long
...
Closes #592
2023-02-17 10:26:09 +01:00
WerWolv
35437c0300
patterns: Added rotation and scale sliders to 3D visualizer
2023-02-16 23:24:24 +01:00
WerWolv
ac83bbeb0e
feat: Added a theme manager view to make it easier to make new themes
2023-02-16 18:06:40 +01:00
WerWolv
3067ff08ec
feat: Greatly improved diff view
...
Fixes #631
2023-02-15 17:01:36 +01:00
WerWolv
3003dea409
fix: Occasional error when loading recent files
2023-02-12 17:52:09 +01:00
WerWolv
d084ec78e9
nodes: Allow immediate values on integer and float inputs
...
Closes #427
2023-02-12 17:33:53 +01:00
WerWolv
a59c17aa83
nodes: Fixed loading saved nodes multiple times
2023-02-10 11:22:11 +01:00
WerWolv
5cc01ae89d
nodes: Added support for nested, shareable, custom data processor nodes
2023-02-09 23:07:04 +01:00
WerWolv
303dd28c7c
fix: Fix macOS build again
2023-02-08 14:11:42 +01:00
WerWolv
dd87dc7046
fix: Building on macOS
2023-02-08 13:51:56 +01:00
WerWolv
89a96c6d25
sys: Improve pattern visualizer API
2023-02-07 14:18:59 +01:00
WerWolv
c6e1f45dc3
feat: Added option to copy custom encoding strings from hex view
2023-01-28 21:12:35 +01:00
WerWolv
29c1a0cb78
feat: Allow multiple yara files to be selected at once
2023-01-28 00:01:53 +01:00
WerWolv
fee1b985c0
feat: Added better error messages for generating and importing ips patches
2023-01-25 10:38:04 +01:00
WerWolv
434b7649c3
fix: CRC8 hashing algorithm displaying 16 bits result
2023-01-25 00:06:48 +01:00
WerWolv
cf9df6e36d
feat: Added ability to query provider information from pattern language
2023-01-24 09:07:11 +01:00
WerWolv
915106f360
patterns: Fixed various issues with the 3d visualizer
2023-01-23 16:25:23 +01:00
WerWolv
1f50e834fc
fix: Copying bytes from non-zero page not working
2023-01-22 11:28:17 +01:00
WerWolv
89e0df86a2
feat: Added scaling and rotation to 3D visualizer
2023-01-21 13:00:02 +01:00
WerWolv
d4967018c2
feat: Added basic lighting and rotations to 3d visualizer model
2023-01-20 23:32:51 +01:00
WerWolv
8e759d9b5f
feat: Added basic 3D visualizer, moved visualizers to separate file
2023-01-20 21:16:28 +01:00
WerWolv
ef12798fe2
feat: Allow custom hashes to be saved to projects
2023-01-18 14:30:56 +01:00
WerWolv
c747c15567
fix: Buffer overflow caused by hex input boxes
2023-01-18 14:30:44 +01:00
Nik
48a57cd981
feat: Added stacktrace printing on crashes ( #892 )
...
* feat: Added simple stack trace output
* feat: Added backtrace wrapper
* build: Added libbacktrace include dirs to build
* build: Fixed libbacktrace variables
* build: More backtrace variable fixes
* build: Try to find backtrace include
* build: Get backtrace header from cmake script
* feat: Added backtrace support for execinfo
* feat: Added support for StackWalk on Windows
2023-01-17 21:38:56 +01:00
Kuruyia
a65f0a5238
feat: Support macOS keyboard shortcuts ( #889 )
2023-01-17 08:16:02 +01:00
WerWolv
1b56c7ffae
ui: Show task progress in task bar
2023-01-14 14:21:16 +01:00
WerWolv
dbcb13f473
patterns: Disallow application/octet-stream
to be used as MIME type
2023-01-09 08:38:19 +01:00
Thomas
ab29303c2e
sys: Clear project context when closing all providers, Display project name in window title ( #860 )
...
* clear project context when closing all providers
* Show project name on window title
* refactor RequestChangeWindowTitle to RequestUpdateWindowTitle
* add spaces
2023-01-07 17:31:22 +01:00
WerWolv
c26bed894b
sys: Add imhex/lib
path to plugin libraries search paths
2023-01-07 10:32:01 +01:00
WerWolv
763196f0cc
feat: Added filtering to Process Memory Provider
2023-01-05 09:30:15 +01:00
WerWolv
ff9048fcf0
fix: Crash on exit
...
Fixes #854
2023-01-05 09:29:33 +01:00
WerWolv
d7d19d7594
feat: Further improve process memory provider
2023-01-01 12:26:27 +01:00
WerWolv
87ed0d31d4
fix: Various invalid iterator and container accesses
2023-01-01 01:01:24 +01:00
WerWolv
85823e8e5d
build: Removed all usages of Python
2022-12-29 23:32:57 +01:00
WerWolv
7859a9bb1f
feat: Added native custom theme support
2022-12-29 19:26:00 +01:00
WerWolv
cf601586fc
fix: Deadlock when loading recent files
2022-12-28 23:06:27 +01:00
WerWolv
4b8e275254
fix: Crash when closing providers too quickly
2022-12-27 11:35:20 +01:00
WerWolv
e3f2541fde
sys: Make sure libromfs is never used in libimhex
2022-12-05 15:29:19 +01:00
WerWolv
1347f81236
sys: Added postJson Net helper function
2022-12-04 21:50:47 +01:00
WerWolv
3b94a42783
lang: Updated localization system to use a more versatile json format
2022-12-02 12:00:04 +01:00
André Blome
4aa314b3ab
feat: Added quick "save project" action ( #826 )
...
* add quick -save project- action
* translation for -save project as- added
* removed machine translations; header file name extension fixed
* moved openProject() for consistency
2022-11-25 10:47:11 +01:00
WerWolv
9074a6fcf1
fix: Edit menu items being always unavailable
2022-11-09 18:49:07 +01:00
WerWolv
4c5d2f6ebb
feat: Finish up work on new pl section system
2022-11-08 21:43:22 +01:00
WerWolv
a6742de405
sys: Literally, fuck Valve
2022-11-02 08:24:00 +01:00
WerWolv
5cf6baca88
fix: Yara matching not being interruptable
2022-10-28 14:32:28 +02:00
WerWolv
0c5e72ab6a
nodes: Improve precision of values passed between nodes
2022-10-26 08:54:08 +02:00
WerWolv
1eb9858f62
sys: Moved libimhex-rust out of project
2022-10-21 14:55:01 +02:00
WerWolv
241b93aab5
patterns: Added menu to Edit menu for placing types at current selection
2022-10-21 10:03:37 +02:00
WerWolv
1ab949b7ef
nodes: Added RGBA8 image visualizer
2022-10-13 15:13:53 +02:00
WerWolv
8b39c8f219
feat: Make all tool windows be detachable
2022-10-13 10:47:38 +02:00
WerWolv
a44de63e24
fix: Build failing on Linux
2022-10-09 16:34:53 +02:00
WerWolv
4070833229
ui: Highlight selected patterns in pattern data view
2022-10-09 15:56:26 +02:00
WerWolv
2b135cf7e0
ui: Limit maximum length of data displayed in pattern tooltip
2022-10-07 16:27:29 +02:00
WerWolv
484481f886
fix: Opening files with unicode names through the command line
2022-10-07 10:14:24 +02:00
WerWolv
e0c35e0002
fix: Data processor nodes not remembering their positions correctly
2022-10-06 09:14:46 +02:00
WerWolv
5ace199dc4
fix: Foreground tasks not being cancellable
2022-10-05 21:25:52 +02:00
WerWolv
7f2c60b0d7
fix: Race condition with data inspector
2022-10-05 12:02:40 +02:00
WerWolv
7bb9e7ee82
sys: Replaced awful task system with a much more efficient thread pool
2022-10-04 23:37:48 +02:00
WerWolv
b80517ab15
sys: Improved UTF-8 path handling in various places
...
Fixes #768
2022-10-04 09:10:58 +02:00
Nik
9c484e7b57
fix: Various clang / clang-tidy warnings ( #764 )
2022-10-02 17:30:26 +02:00
WerWolv
6a07a2f85d
feat: Look for custom inspector entries in imhex/scripts/inspectors
2022-10-02 14:18:40 +02:00
WerWolv
663fb88367
sys: Various cleanup
2022-09-30 12:49:28 +02:00
WerWolv
c769e9cc32
ui: Highlight modified bytes in red
2022-09-28 15:01:43 +02:00
WerWolv
e34703ea5a
fix: Saving and loading projects not working correctly
2022-09-22 09:05:09 +02:00
iTrooz_
3a94be9abb
ux: Display an error message if file picker can't be opened ( #748 )
...
* add error message for the file picker
* set a different message for Windows/MacOS
* fix typos
* Moved file dialog error handling to a callback function
Co-authored-by: Nik <werwolv98@gmail.com>
2022-09-20 15:47:59 +02:00
WerWolv
1d4cbbe418
ux: Handle project loading errors better
2022-09-20 15:33:36 +02:00
WerWolv
a55177edfa
fix: Curl SSL context not being thread safe in the slightest
2022-09-19 21:56:43 +02:00
WerWolv
4c01a749de
sys: Improved startup time by running startup tasks in parallel
2022-09-19 16:54:19 +02:00
WerWolv
7b61268f22
ux: Reduce file loading time to basically zero
2022-09-19 16:09:22 +02:00
WerWolv
814c595c12
ui: Added functionality icons to most text input fields
2022-09-19 11:29:51 +02:00
WerWolv
3cdc8c5884
fix: OpenGL textures not being cleaned up correctly
2022-09-18 20:38:45 +02:00
WerWolv
bf00503d1f
fix: BufferedReader messing up the second to last byte
2022-09-16 08:30:28 +02:00
WerWolv
66d64cf020
patterns: Refactor creation of default runtime
2022-09-15 09:34:40 +02:00
WerWolv
20a2331504
feat: Allow task stop button to abort pattern evaluation
2022-09-13 16:05:41 +02:00
WerWolv
aa658b7dbc
sys: Make sure constexpr variables don't get copied onto the stack
2022-09-12 21:28:02 +02:00
WerWolv
d990ee102a
sys: More cleanup
2022-09-07 23:11:24 +02:00
WerWolv
d9a47fe815
fix: Crashes when resizing file
...
Fixes #721
2022-09-04 11:16:24 +02:00
WerWolv
1a21627cdb
ui: Added error popup when an exception is thrown in a task
2022-09-03 23:56:57 +02:00
WerWolv
7f6aa9f9a6
fix: Backwards searching being broken
...
Fixes #713
2022-09-03 23:02:46 +02:00
WerWolv
3cb6c4f775
fix: Buffered reader returning zeros if provider size is below 16MiB
...
Fixes #707
2022-08-29 16:32:32 +02:00
WerWolv
f62edea450
build: Fix various clang build issues
2022-08-26 00:18:08 +02:00
WerWolv
1ddd3ea2b9
fix: Custom pattern include paths not working correctly
2022-08-18 00:30:02 +02:00
WerWolv
e779285be4
feat: Added basic ability to interrupt long running tasks
2022-08-17 16:15:36 +02:00
WerWolv
aa01d58b33
ui: Increase window size when a bigger font is being used
2022-08-16 11:49:07 +02:00
WerWolv
0c0caf6942
fix: Restarting ImHex not working correctly
2022-08-16 11:48:37 +02:00
WerWolv
29e970fd81
fix: Out of bounds strlen read
2022-08-16 00:29:53 +02:00
WerWolv
6b62a1963e
fix: Some occurrences of undefined behaviour
2022-08-15 21:08:09 +02:00
WerWolv
85f0e04d0e
feat: Allow recents to also display other providers
2022-08-14 10:07:45 +02:00
WerWolv
b580691871
feat: Added Intel Hex and Motorola SREC provider ( #670 )
...
* feat: Initial implementation of an Intel Hex provider
* fix: Reading of bytes from intel hex files
* lang: Added localization for new provider
* ui: Only show file name in intel hex provider name
* feat: Added Motorola SREC provider
2022-08-12 15:11:27 +02:00
WerWolv
5c13cf9dbf
sys: Added support for providers with unreadable regions
2022-08-10 09:26:48 +02:00
WerWolv
966f3b8597
sys: Replace existing bad project system with a much better one ( #663 )
...
* sys: Initial effort to replace existing project files with a better system
* sys: Added back marking provider as dirty
* sys: Remove git commit information from project files
* sys: Format data processor save file nicely
* fix: Automatic pattern loading not working correctly
* ui: Added warning popup when closing a provider with modifications
Closes #604
* sys: Fixed build issues
* tests: Removed useless debug logs
* patterns: Updated pattern language
* sys: Added log message when crashing with a signal
* sys: Make sure abnormal termination handlers are being called more reliably
2022-08-08 21:23:52 +02:00
WerWolv
2c740cab06
sys: Added select region command
2022-08-08 12:57:44 +02:00
WerWolv
f62ca307b0
ui: Streamline region selection in different views
...
Fixes #660
2022-08-07 12:20:40 +02:00
WerWolv
69d000488e
api: Added api function to create pattern
2022-08-06 22:29:59 +02:00
WerWolv
88f8bb9848
sys: Updated to new pattern language library structure
2022-08-06 21:38:09 +02:00
WerWolv
a97f853110
fix: More search issues
2022-08-06 13:16:53 +02:00
WerWolv
3dc5f0e2be
fix: Buffered Reader not reading last byte
...
Closes #653
2022-08-06 13:07:02 +02:00
WerWolv
d7accb6916
feat: Allow Find view to find overlapping occurrences
...
Closes #653
2022-08-06 12:57:47 +02:00
WerWolv
58f54caf55
ui: Added u24, i24, u48 and i48 to data inspector
...
Closes #651
2022-08-05 12:19:50 +02:00
WerWolv
352df24160
build: Move another warning disable to the build script
2022-08-05 08:42:09 +02:00
WerWolv
ace25d353b
fix: GLFW error on exit
2022-08-03 10:45:50 +02:00
WerWolv
0ac8fcd1eb
feat: Added binary pattern search to find view
2022-08-03 10:19:34 +02:00
WerWolv
59449bbe47
fix: Portable version detection not working correctly
2022-08-01 23:25:13 +02:00
WerWolv
b8c034f8c5
sys: Prevent portable Windows version from writing to AppData
...
Fixes #627
2022-08-01 14:51:40 +02:00
WerWolv
84e049be07
build: Fixed some issues to make porting to other systems easier
2022-08-01 14:35:25 +02:00
gudzpoz
eca5fb894f
feat: Added LEB128 in data inspector ( #615 )
...
* feat: Added LEB128 in data inspector
* feat: Added support for editing LEB128 values
* Moved LEB functions from utils.cpp to crypto.cpp
* Added placeholders for translations
* Made DataInspector::impl::Entry.maxSize mandatory
* Fixed undefined leftshifting behaviour
2022-08-01 13:20:20 +02:00
WerWolv
3d5568f65f
sys: Fixed global shortcuts not working correctly
...
Fixes #606
2022-07-30 22:01:49 +02:00
WerWolv
004cab13dc
sys: Replaced many info logs with debug logs
2022-07-30 11:26:51 +02:00
WerWolv
24c243bcf6
sys: Reset settings if it cannot be parsed anymore
2022-07-30 11:19:56 +02:00
WerWolv
2b9e43db82
fix: Crash when using BufferedReader ReverseIterator
2022-07-29 21:44:00 +02:00
WerWolv
419a2875b3
sys: Added filter option to find view
2022-07-29 18:49:43 +02:00
WerWolv
6f3a5e896c
sys: Fixed hidpi framebuffer scaling
...
Actually fixes #598
2022-07-29 17:37:30 +02:00
WerWolv
b7324913e9
sys: Replaced Search view with a generic Find view
...
Closes #551
2022-07-29 13:59:57 +02:00
WerWolv
fb4c21b97a
build: Fix weird macOS build errors ( #591 )
...
* cleanup
* Remove prints
2022-07-26 14:59:08 +02:00
WerWolv
d356993e33
fix: Various search issues
2022-07-26 13:28:21 +02:00
WerWolv
c1a2697e42
ui: Added filter to bookmarks view
2022-07-23 20:38:38 +02:00
WerWolv
31a746f3fc
fix: Issue opening files that contain special characters on Linux
...
This is a (hopefully temporary) hack. Fixes #568
2022-07-06 11:29:24 +02:00
WerWolv
e981fa53f3
fix: std::u8string usage with nlohmann::json
2022-07-05 09:01:09 +02:00
WerWolv
4cd390ab02
fix: Various more unicode issues
2022-07-05 00:00:00 +02:00
WerWolv
de269e7a48
sys: Remove remaining references to hex.builtin from libimhex
2022-07-02 17:53:13 +02:00
WerWolv
0ed885fe0f
sys: Removed all references to hex.builtin from main application
2022-07-02 16:22:38 +02:00
WerWolv
f9fc7051fc
tests: Added UTF-8 file operation tests
2022-07-02 10:05:25 +02:00
Shiroki Satsuki
ef5fbba56b
feature: Added network proxy support for hex::Net ( #562 )
...
* feat(i18n): update Chinese(Simplified) translation
* feat: proxy setting
* refactor: add hex::Net::setProxy
* fix: undefined symbol: hex::Net::m_proxyUrl
* style: m_proxyUrl -> s_proxyUrl
2022-07-01 14:05:32 +02:00