WerWolv
0ac8fcd1eb
feat: Added binary pattern search to find view
2022-08-03 10:19:34 +02:00
WerWolv
1d9e8dbda7
fix: Always evaluate in/out variables correctly
...
Fixes #629
2022-08-02 23:36:18 +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
64f962dbb2
patterns: Updated pattern language
2022-08-01 12:46:45 +02:00
WerWolv
763f15fa36
sys: Added setting to synchronize pattern source code between providers
2022-07-31 20:07:15 +02:00
WerWolv
43988b8a7e
ui: Modernize look and feel of data information view
2022-07-31 16:57:35 +02:00
WerWolv
4460d09140
ui: Fixed highlighting alpha value
2022-07-31 16:09:57 +02:00
WerWolv
a2443b26f7
fix: Crash when searching for an empty string
2022-07-31 15:17:24 +02:00
WerWolv
4d3538781b
sys: Copy pattern source code from current provider to newly created one
2022-07-31 11:09:20 +02:00
WerWolv
1ed88f3910
fix: Byte editing mode not exiting when clicking somewhere else
...
Fixes #607
2022-07-30 23:01:25 +02:00
WerWolv
45ea22083e
fix: Out of bounds memory read in hex editor with multi-byte visualizers
2022-07-30 22:44:02 +02:00
WerWolv
9ede1ab32c
sys: Added provider open error message
2022-07-30 22:34:23 +02:00
WerWolv
3d5568f65f
sys: Fixed global shortcuts not working correctly
...
Fixes #606
2022-07-30 22:01:49 +02:00
WerWolv
7a4541dac7
ui: Change the provider selector from a dropdown to a tab bar
2022-07-30 21:25:18 +02:00
WerWolv
004cab13dc
sys: Replaced many info logs with debug logs
2022-07-30 11:26:51 +02:00
WerWolv
419a2875b3
sys: Added filter option to find view
2022-07-29 18:49:43 +02:00
WerWolv
ce193a0098
ui: Improved hovering detection for drawing hex editor tooltips
2022-07-29 18:02:44 +02:00
WerWolv
19222aefcc
fix: Accidental syntax error
2022-07-29 14:05: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
93aa1247df
fix: Switching page when jumping to selection not working
2022-07-26 15:01:21 +02:00
WerWolv
d356993e33
fix: Various search issues
2022-07-26 13:28:21 +02:00
WerWolv
cf017540e2
ui: Fixed rendering of advanced decoding highlighting with multi-byte visualizers
2022-07-25 23:46:32 +02:00
WerWolv
c776bb6c03
ui: Fixed hex editor highlighting with multi-byte visualizers
2022-07-25 15:13:26 +02:00
WerWolv
74f17fd638
ui: Properly hide hidden patterns in hex editor view
2022-07-25 11:33:30 +02:00
WerWolv
f3f13ae4d3
fix: Jumping to selection not working correctly with set base address
2022-07-23 21:31:54 +02:00
WerWolv
c618eec843
fix: Hex editor selection not working correctly when setting base address
2022-07-23 20:46:20 +02:00
WerWolv
c1a2697e42
ui: Added filter to bookmarks view
2022-07-23 20:38:38 +02:00
WerWolv
d4dd57c7c8
fix: Setting base address causing hex editor to display zeros
2022-07-23 18:21:37 +02:00
WerWolv
9e3c6898ad
fix: Multi-byte hex editor visualizers displaying incorrect bytes
2022-07-23 15:21:24 +02:00
WerWolv
fe86f69da3
fix: Duplicate pattern data view entries when sorting the list
...
Fixes #584
2022-07-18 11:40:49 +02:00
WerWolv
ca3b5b72ca
ui: Fixed highlighting color and tooltips
2022-07-17 13:12:28 +02:00
WerWolv
0c9eab70d5
fix: Crash when searching for an empty string
2022-07-16 13:01:40 +02:00
WerWolv
c20634e093
sys: Fixed crash on exit
2022-07-16 12:14:15 +02:00
WerWolv
5ee3b550bc
ui: Fixed advanced decoding cell sizes
2022-07-16 12:14:06 +02:00
WerWolv
831dac9b47
patterns: Updated pattern language
2022-07-15 11:38:46 +02:00
WerWolv
626c34dce8
sys: Upgrade codebase to C++23
2022-07-15 11:37:10 +02:00
Lukas Cone
35c209c791
fix: In/Out variables not working, add recusive pattern scan ( #579 )
2022-07-14 11:37:02 +02:00
WerWolv
315109aa1f
fix: Open File shortcut only working when Hex Editor view is selected
...
Fixes #576
2022-07-08 14:26:13 +02:00
WerWolv
4cd390ab02
fix: Various more unicode issues
2022-07-05 00:00:00 +02:00
WerWolv
d0f1a40f16
fix: Command Palette focus not working
2022-07-02 21:38:58 +02:00
WerWolv
de269e7a48
sys: Remove remaining references to hex.builtin from libimhex
2022-07-02 17:53:13 +02:00
WerWolv
ab1f4df9d9
fix: In/Out variables not being added to the interface when using menu item to load pattern
2022-07-01 19:56:28 +02:00
WerWolv
710771b8b1
patterns: Cleanup pattern search
2022-07-01 19:12:01 +02:00
WerWolv
2d982e2088
fix: Drastically improve pattern highlighting performance
2022-07-01 19:05:53 +02:00
WerWolv
eadcc6f38c
sys: Modernize some constexpr arrays
2022-07-01 12:14:15 +02:00
WerWolv
3db50a690c
fix: Various issues with UTF-8 paths
2022-06-30 19:39:06 +02:00
WerWolv
034cc0cd2f
ui: Improved byte selection text
2022-06-30 11:29:20 +02:00
WerWolv
8db2bdb6a7
fix: In/Out parameters not working correctly when using the preprocessor
2022-06-29 10:25:30 +02:00
WerWolv
d50be26771
lang: Fixed hardcoded localization string
...
#556
2022-06-27 18:41:13 +02:00
WerWolv
673027c82d
fix: Crash on exit
2022-06-27 17:01:21 +02:00
WerWolv
b1b33b2ae4
ui: Added back missing selection byte count value
2022-06-25 23:01:38 +02:00
WerWolv
6506291e4e
ui: Updated About page icon
2022-06-25 12:29:16 +02:00
WerWolv
3471b314dd
build: Switch to GCC on MacOS ( #552 )
...
* build: Experimentally switch to gcc on macOS
* build: Corrected gcc paths
* build: Enable objective c support on macOS
* build: Enable ObjC and ObjC++ on macOS
* build: Add ObjC and ObjC++ flags
* build: Try compiling objc with clang
* build: Remove invalid flags again
* fix: Let's not include objc headers in C++ code
* sys: Move macos utils code to its own file
* fix: Missing unistd include on mac
* sys: Removed loader script stuff since it's currently unused and broken
* fix: Missing include
* fix: Another missing include
* fix: CFURLCreateWithBytes wants a pointer to mutable data
* fix: Try disabling name mangling of ObjC functions
* sys: Move macos utils declarations to its own header file
* fix: C Linkage
* fix: Move objc function prototypes to C++ headers
* fix: More missing includes
* fix: Warning error
* sys: Call ObjC with C ABI instead of trying to use C++
* build: Update libraries
* sys: Fixed build errors
* sys: No const correctness I guess
* sys: Fixed prototypes
* sys: This is C now
* sys: More nullptr -> NULL
* sys: Fix crash on exit
* sys: Try using proper std concepts instead of custom ones
* sys: Replaced another hex::is_signed
* build: Upgrade to gcc 12 and MacOS Monterey
* build: Fixed MacOS runner name
* build: Cache correct ccache folder on macOS
2022-06-25 12:19:59 +02:00
WerWolv
c238767750
fix: Hex editor selection moving with shift + arrow keys not working correctly
2022-06-19 15:09:38 +02:00
WerWolv
116aeede2d
lang: Fixed some localization issues
2022-06-17 14:35:54 +02:00
Polshakov Dmitry
662d80abea
feat: Add ability to remove bytes ( #531 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-06-17 14:21:56 +02:00
WerWolv
f6ddb3c5e7
fix: Hex editor cell editing value taking value of next cell when double clicking
...
Fixes #541
2022-06-17 14:08:12 +02:00
WerWolv
4dcd26a21f
fix: Editing value not being updated correctly when moving to next hex cell
...
Fixes #538
2022-06-17 10:16:58 +02:00
WerWolv
5e67a1f27b
sys: Refactor tar file operations into their own class
2022-06-16 15:42:08 +02:00
WerWolv
6266883e81
fix: Crash when undocking hex editor view
2022-06-14 13:37:37 +02:00
WerWolv
5551e82fea
ui: Fix hash function name localization
2022-06-14 11:54:34 +02:00
WerWolv
1e511acf37
fix: More vector out of bounds accesses
2022-06-14 10:17:50 +02:00
WerWolv
141ee62af9
ui: Fixed various background color issues with the new hex editor view
...
Closes #533
2022-06-13 23:43:34 +02:00
WerWolv
a5d202ffc8
fix: Vector out of bounds access
2022-06-13 21:56:02 +02:00
WerWolv
a56ba50cf9
ux: Improved scrolling behaviour in hex editor view
...
Fixes #528
2022-06-09 15:57:25 +02:00
WerWolv
fdaad55cc6
ui: Fix misaligned selection highlighting in very big files
2022-06-09 15:10:33 +02:00
WerWolv
bad109ef8d
fix: Resize and Insert bytes popups not working correctly
2022-06-03 18:47:03 +02:00
WerWolv
d1d73bcff6
fix: Editing bytes in the hex editor being broken
...
Fixed #521
2022-06-03 10:53:03 +02:00
WerWolv
fadca9a34a
fix: Bookmark header collapsing when name gets changed
2022-06-03 10:35:47 +02:00
WerWolv
fe6be686b7
ui/ux: Complete rewrite of the Hash view
2022-05-30 16:36:46 +02:00
WerWolv
4701b1b67c
fix: Pasting bytes in hex editor yielding wrong results
...
Closes #516
2022-05-29 19:00:21 +02:00
WerWolv
efed07ac8b
ux: Fixed another hex editor scroll issue
2022-05-28 22:31:40 +02:00
WerWolv
28a8adb26d
fix: Hex editor selection scrolling not working correctly
2022-05-28 13:38:36 +02:00
WerWolv
ffb9a8b7ed
feature: Added Invert option to data inspector
2022-05-27 20:46:16 +02:00
WerWolv
b751f98e91
ui/ux: Rewrite of the entire hex editor view to make it more flexible ( #512 )
...
* ui/ux: Initial recreation of the hex editor view
* ui/ux: Added back support for editing cells
* ux: Make scrolling and selecting bytes feel nice again
* ui/ux: Improved byte selecting, added footer
* sys: Make math evaluator more generic to support integer only calculations
* patterns: Moved value formatting into pattern language
* ui/ux: Added Goto and Search popups, improved selection
* ui: Added better tooltips for bookmarks and patterns
* sys: Use worse hex search algorithm on macOS
Sadly it still doesn't support `std::boyer_moore_horsepool_searcher`
* ui: Added back missing events, menu items and shortcuts
* fix: Bookmark highlighting being rendered off by one
* fix: Various macOS build errors
* fix: size_t is not u64 on macos
* fix: std::fmod and std::pow not working with integer types on macos
* fix: Missing semicolons
* sys: Added proper integer pow function
* ui: Added back support for custom encodings
* fix: Editor not jumping to selection when selection gets changed
* ui: Turn Hexii setting into a data visualizer
* sys: Added back remaining shortcuts
* sys: Remove old hex editor files
* sys: Moved more legacy things away from the hex editor view, updated localization
* fix: Hex editor scrolling behaving weirdly and inconsistently
* sys: Cleaned up Hex editor code
* sys: Added selection color setting, localized all new settings
* fix: Search feature not working correctly
* ui: Replace custom ImGui::Disabled function with native ImGui ones
* ui: Fix bookmark tooltip rendering issues
* fix: Another size_t not being 64 bit issue on MacOS
2022-05-27 20:42:07 +02:00
WerWolv
c4b7d89713
fix: Random build errors with GCC 12.1.0
2022-05-17 20:46:42 +02:00
WerWolv
87e616ad23
patterns: Fixed MIME pragma not being registered correctly
2022-04-27 08:54:38 +02:00
WerWolv
ea2c2df614
sys: Updated pattern language library
2022-04-18 01:22:06 +02:00
WerWolv
17383083fb
patterns: Use standalone pattern language library instead of built-in one
2022-04-17 16:57:30 +02:00
WerWolv
0462cc3d0c
sys: Enable -Wall, -Wextra, -Werror and fix all warnings on all Platforms ( #483 )
...
* sys: Make ImHex compile with -Wall -Wextra -Werror
* sys: Fixed various build errors on Linux
* sys: Explicitly ignore return value of `system` function
* sys: More fixes for the warnings GitHub Actions enables somehow
* sys: More fixes
* sys: Remove -Werror again to see all GitHub Actions warnings
* sys: Hopefully fixed all remaining warnings
* sys: Added back -Werror
* git: Change windows icon in GitHub Actions
2022-03-27 00:01:28 +01:00
WerWolv
965207d688
ui: Replace data inspector endian and format radio boxes with sliders
2022-03-26 17:44:01 +01:00
WerWolv
0f0a836fa0
ui: Enable undo and redo menu items only if that action is available
2022-03-26 17:21:51 +01:00
WerWolv
29fb1de882
ui/ux: Make information view plots not capture scroll, removed plot background
2022-03-26 17:19:08 +01:00
WerWolv
a4d3173da9
ux: Moved bookmark remove button from body to header
2022-03-26 16:55:48 +01:00
WerWolv
35a520f132
ux: Disable various menu items when no provider is active
2022-03-26 16:42:11 +01:00
WerWolv
591d98b55b
sys: Improved string search filtering
2022-03-25 21:08:38 +01:00
WerWolv
f39ec58435
ui: Use pretty hexadecimal input fields in more places
2022-03-25 21:07:41 +01:00
WerWolv
ea848dbfc0
ux: Added support for mathematical expressions in goto fields
2022-03-22 09:06:02 +01:00
Polshakov Dmitry
5dfa9cf501
patterns: Move logic to draw patterns into separate class ( #472 )
...
* refactor(patterns): add visitor interface
* refactor(patterns): add public accessors
* refactor(patterns): add method to get pattern value
* refactor(pattern): make some methods public
* refactor(pattern): extract code to draw GUI
* refactor(patterns): remove GUI related code from patterns
* refactor: move common GUI function from pattern to pattern_drawer
* refactor(pattern_drawer): extract common code into methods
* refactor: rename ImGuiDrawer -> PatternDrawer
* refactor(patternr): move displayEnd into PatternDrawer
* refactor: use ArrayPattern concept to restrict argument type
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-03-21 13:52:07 +01:00
WerWolv
2d87d29fa0
patterns: Fixed recursive types
2022-03-17 00:10:16 +01:00
WerWolv
f6a498854c
ui: Added console to yara view, add support for yara's new console module
2022-03-15 23:48:49 +01:00
WerWolv
74ef9ece30
ui: Properly clear highlighting cache when switching provider
...
Fixes #471
2022-03-13 17:33:27 +01:00
Lukas Cone
3da1b3f05d
ui/patterns: Added settings tooltips, fixed pattern crash ( #464 )
...
* fix: pattern segfault typo
* ui: added few tooltips into settings
Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-03-05 23:32:30 +01:00
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
efe6137067
ui: Improved look of the about page
2022-03-04 19:06:29 +01:00
WerWolv
2739320f10
sys: Refactor of filesystem functions. Fixed crashes where fs errors weren't caught correctly
...
Addresses the crash mentioned in #462
2022-03-04 11:36:37 +01:00
WerWolv
483ba95d80
fix: Some text boxes not being writable
2022-03-03 09:24:09 +01:00
WerWolv
2300b0c692
fix: Searching not working at all
2022-03-03 09:06:10 +01:00
WerWolv
6c9e969099
ui: Improved base address setter popup
2022-03-01 16:23:53 +01:00
WerWolv
76f8e6d6ef
fix: Crash when searching for empty strings
2022-03-01 16:18:39 +01:00
WerWolv
174cf3ed95
fix: Crash when entering too much text in various text boxes
2022-03-01 16:12:00 +01:00
WerWolv
5a02c38fcd
store: Fixed more download issues when some folders don't have write perms
2022-02-28 23:10:04 +01:00
WerWolv
66d1b3fd2f
patterns: Huge refactor of Pattern Language runtime to use smart pointers ( #458 )
...
* patterns: Initial work to refactor pattern language to use smart pointers
* patterns: Fixed remaining issues, moved patterns to unique files
* sys: Added missing includes for macOS
2022-02-27 23:25:39 +01:00
WerWolv
75bd7805c9
ux: Added custom font and font size setting to settings menu, improve rebooting behaviour
2022-02-21 21:46:25 +01:00
WerWolv
7d9c24ff51
net: Increase store load timeout to 30 seconds
2022-02-21 18:57:53 +01:00
WerWolv
a8e83154f0
fix: Remove button of content store entries not updating correctly
2022-02-21 18:40:51 +01:00
WerWolv
27c2c4dc33
fix: Compile error because of prematurely committed change
2022-02-21 13:52:13 +01:00
WerWolv
754eb89f04
patterns: Fixed jumping to and displaying tooltips of static array entries
2022-02-20 23:54:31 +01:00
WerWolv
08da408471
ui: Added help text to data processor
2022-02-19 16:54:43 +01:00
Lukas Cone
26f998ecb6
feature: User now can add custom directories ( #444 )
...
* feat: user directories
* ux: show setting categories in order they were created
* feat: add descriptable setting categories
2022-02-18 22:34:54 +01:00
WerWolv
4c8efed256
fix: Crashing when scrolling through the hex editor too quickly
2022-02-17 21:49:40 +01:00
WerWolv
7117592f38
sys: Add highlighting provider function support, move pattern highlighting code out of hex editor
2022-02-16 14:57:13 +01:00
WerWolv
b9030d7e47
fix: Issue with erasing characters when pasting then into ImHex
2022-02-16 10:54:17 +01:00
WerWolv
60af9970c1
fix: Opening files with unicode characters in their path
2022-02-16 10:04:05 +01:00
WerWolv
d6b887b7db
sys: Added basic editing support to data inspector
2022-02-15 21:50:27 +01:00
twevs
de86aee6a2
ui: Fixed columns in diffing view. ( #441 )
2022-02-14 21:35:55 +01:00
Polshakov Dmitry
8be39488ec
fix: Hex editor search buttons not working ( #439 )
...
* fix: reset focus only once after window opening
* refactor: extract search functions
* fix: restore focus after search/goto
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-13 20:13:59 +01:00
WerWolv
bd30411ba7
ui: Replaced all hex input textboxes with the new ones
2022-02-08 21:51:09 +01:00
WerWolv
abd3fe6ed1
sys/ux: Improved selection requests
2022-02-08 18:38:54 +01:00
WerWolv
b3728ae658
ui/ux: hexeditor -> hex_editor, Improved performance and flickering when highlighting bytes
2022-02-06 21:02:31 +01:00
WerWolv
eade95dff7
fix: Pattern source code being deleted when closing a provider
2022-02-05 22:26:00 +01:00
WerWolv
ca57f91bfa
nodes: Added Digram visualizer node
2022-02-05 22:19:32 +01:00
WerWolv
618eead341
sys: Drastically improve highlighting performance
2022-02-04 00:29:47 +01:00
WerWolv
ba68f463e5
ui: Added to matched yara rules
2022-02-02 21:08:46 +01:00
WerWolv
4c51efc5e0
pattern: Improved parsing of integer literals, added support for hex floats
2022-02-02 16:03:18 +01:00
WerWolv
876dbe8179
sys: Final cleanup to get rid of everything builtin in the main application
2022-02-02 00:36:09 +01:00
WerWolv
ce59226909
sys: Reformat all
2022-02-01 22:09:44 +01:00
WerWolv
1991afb87b
sys: Get rid of SharedData struct and cleanup code structure ( #411 )
...
* sys: Initial refactoring of the SharedData class
* sys/pattern: More refactoring, make every provider have its own patterns
* sys: Finished up refactoring. No more SharedData!
* sys: Fixed compile on Unix
* tests: Fixed unit tests
* sys: Moved view and lang files
* pattern: Added assignment operator support to for loops
* tests: Fixed compile issue
2022-02-01 18:09:40 +01:00
WerWolv
61fc479c79
pattern: Fixed many code inconsistencies and bugs
2022-01-31 14:37:12 +01:00
WerWolv
af57b39d8f
pattern: Added #pragma once to prevent multi-includes of files
2022-01-30 17:49:18 +01:00
WerWolv
66a13266e6
fix: Pasting bytes not working at all
2022-01-30 11:58:03 +01:00
WerWolv
3f5b258629
ux: Auto focus goto and find text box. Execute function on enter
2022-01-29 21:49:15 +01:00
WerWolv
6319449cbd
sys: Added RISC-V, M68K, M680X, Webassembly, MOS65XX and BPF architecture to disassembler
2022-01-24 23:56:02 +01:00
WerWolv
0e08b0226b
sys: Added clang-format file, formatted entire project
2022-01-24 20:53:17 +01:00
WerWolv
a66fec489c
ui: Added some hint text for in/out variable tab, improved centered hints
2022-01-24 00:46:19 +01:00
WerWolv
65212f22a6
pattern/ux: Added copying support to console, clip content, removed prefix
2022-01-24 00:45:46 +01:00
WerWolv
49610f59ea
ux: Added interface to choose encoding files more easily
2022-01-23 21:52:43 +01:00
WerWolv
9cf7fc4a2e
store: Added encoding files to store, fixed crash when folder doesn't exist
2022-01-23 21:52:24 +01:00
WerWolv
053c897056
ui: Added ImHex logo to about page
2022-01-23 20:46:19 +01:00
WerWolv
2aed6ec13f
ux: Added option to save and load data processors
2022-01-23 11:54:25 +01:00
WerWolv
714d421334
api: Moved menu item adding to a new registry-type API
2022-01-23 11:54:21 +01:00
WerWolv
6c6fe8ad5c
ui: Added license to about page
2022-01-22 23:11:28 +01:00
WerWolv
48aacc0c2e
sys: (s8, s16, s32, s64, s128) -> (i8, i16, i32, i64, i128)
2022-01-22 22:37:52 +01:00
WerWolv
9ddd97a6eb
provider: Added insert bytes feature
2022-01-20 23:24:26 +01:00
WerWolv
ee8b665472
ui: Added API to add custom layouts, imhex application and api cleanup
2022-01-18 00:10:10 +01:00
WerWolv
a70ece7b9c
sys: Bunch of cleanup, use fs::path instead of std::string for paths
2022-01-16 01:51:31 +01:00
WerWolv
ed8ee35a86
ui: Fixed sizing of several popups
2022-01-16 00:48:35 +01:00
WerWolv
8a6b110d0b
ux: Improve loading of encoding files, make advanced encoding enabled by default
2022-01-15 23:44:15 +01:00
WerWolv
1f65fbf422
ui: Fixed hex editor selection frame
2022-01-15 20:56:06 +01:00
WerWolv
25e4902a1c
ui: Improved displaying of a bunch of values in the inspector
2022-01-15 15:15:25 +01:00