WerWolv
accd554600
sys: Reduce compile time on Windows a bit
2022-10-02 20:35:38 +02:00
Nik
9c484e7b57
fix: Various clang / clang-tidy warnings ( #764 )
2022-10-02 17:30:26 +02:00
WerWolv
b365e16cc9
fix: Multiple issues with the calculator
2022-10-02 14:18:56 +02:00
WerWolv
d643f8f8f7
feat: Allow bookmarks to be reordered
...
Closes #750
2022-09-28 21:40:31 +02:00
WerWolv
c769e9cc32
ui: Highlight modified bytes in red
2022-09-28 15:01:43 +02:00
WerWolv
ceaf80a186
sys: Don't keep files open in File Provider
...
Closes #752
2022-09-26 11:49:35 +02:00
WerWolv
4e5d56e2c0
fix: Files opened by the file provider appearing locked for other applications
2022-09-19 23:07:44 +02:00
WerWolv
9893e7a965
ui: Display array patterns in pattern data view in chunks of 512 entries
2022-09-19 14:16:23 +02:00
WerWolv
f8b4d04713
feat: Added numeric value search to find view
2022-09-19 10:34:57 +02:00
WerWolv
3cdc8c5884
fix: OpenGL textures not being cleaned up correctly
2022-09-18 20:38:45 +02:00
WerWolv
b2932773b9
feat: Added unique selection and scrolling position to each provider
2022-09-18 16:22:08 +02:00
WerWolv
9d7e2eccac
feat: Added "Require full match" toggle to regex string search
2022-09-13 14:06:19 +02:00
WerWolv
d990ee102a
sys: More cleanup
2022-09-07 23:11:24 +02:00
WerWolv
cfde9939b4
sys: Refactor and cleanup pattern drawer
2022-09-07 23:11:13 +02:00
WerWolv
073323b517
ui: Fix invalid indentation with inlined patterns
2022-09-06 20:04:55 +02:00
WerWolv
d9a47fe815
fix: Crashes when resizing file
...
Fixes #721
2022-09-04 11:16:24 +02:00
WerWolv
0a115a3c03
fix: Filtering search occurrences in Find view with multiple files being broken
...
Fixes #685
2022-09-03 23:15:30 +02:00
WerWolv
55b877d5e0
fix: Region validity check not working correctly with non-zero base address
...
Fixes #683
2022-08-17 16:28:44 +02:00
WerWolv
e779285be4
feat: Added basic ability to interrupt long running tasks
2022-08-17 16:15:36 +02:00
WerWolv
49d47a0eed
feat: Added bookmark import/export function
2022-08-14 14:45:32 +02:00
WerWolv
78785ddc3c
fix: More provider display issues
2022-08-14 14:45:18 +02:00
WerWolv
85f0e04d0e
feat: Allow recents to also display other providers
2022-08-14 10:07:45 +02:00
WerWolv
440ba3823e
fix: Hex editor displaying ?? for every byte after editing
2022-08-14 09:38:38 +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
f62ca307b0
ui: Streamline region selection in different views
...
Fixes #660
2022-08-07 12:20:40 +02:00
WerWolv
88f8bb9848
sys: Updated to new pattern language library structure
2022-08-06 21:38:09 +02:00
WerWolv
d7accb6916
feat: Allow Find view to find overlapping occurrences
...
Closes #653
2022-08-06 12:57:47 +02:00
WerWolv
c468801c6e
feat: Added support for ASCII + UTF16 string extraction
...
Closes #641
2022-08-03 11:38:36 +02:00
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
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
419a2875b3
sys: Added filter option to find view
2022-07-29 18:49:43 +02:00
WerWolv
b7324913e9
sys: Replaced Search view with a generic Find view
...
Closes #551
2022-07-29 13:59:57 +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
c20634e093
sys: Fixed crash on exit
2022-07-16 12:14:15 +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
3db50a690c
fix: Various issues with UTF-8 paths
2022-06-30 19:39:06 +02:00
WerWolv
8db2bdb6a7
fix: In/Out parameters not working correctly when using the preprocessor
2022-06-29 10:25:30 +02:00
WerWolv
c238767750
fix: Hex editor selection moving with shift + arrow keys not working correctly
2022-06-19 15:09:38 +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
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
6266883e81
fix: Crash when undocking hex editor view
2022-06-14 13:37:37 +02:00
WerWolv
aed9d15625
ux: Fix hex editor selection sometimes setting end to max address
2022-06-14 11:58:50 +02:00
WerWolv
653a688fe6
fix: Very inefficient iterating over static array patterns
...
Fixes #532
2022-06-14 10:29:41 +02:00
Polshakov Dmitry
91ac9ca120
fix: change displayEnd by reference in case of double click ( #530 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-06-09 15:58:18 +02:00
WerWolv
fe6be686b7
ui/ux: Complete rewrite of the Hash view
2022-05-30 16:36:46 +02:00
WerWolv
efed07ac8b
ux: Fixed another hex editor scroll issue
2022-05-28 22:31:40 +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
Lukas Cone
202a02af10
fix: Crash on linux when opened file gets modified ( #487 )
2022-04-17 23:07:14 +02:00
WerWolv
17383083fb
patterns: Use standalone pattern language library instead of built-in one
2022-04-17 16:57:30 +02:00
Polshakov Dmitry
4928c044af
patterns: Move pattern drawer into builtin plugin ( #482 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-04-08 16:08:02 +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
591d98b55b
sys: Improved string search filtering
2022-03-25 21:08:38 +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
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
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
57c449936f
sys: Improved math evaluator
2022-03-04 19:20:21 +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
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
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
7117592f38
sys: Add highlighting provider function support, move pattern highlighting code out of hex editor
2022-02-16 14:57:13 +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
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
b3728ae658
ui/ux: hexeditor -> hex_editor, Improved performance and flickering when highlighting bytes
2022-02-06 21:02:31 +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
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
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
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
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
a5a1ae6725
fix: Providers not compiling on Unix
2022-01-16 02:29:25 +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
c88d428fb5
sys: std::filesystem -> fs
2022-01-13 14:33:30 +01:00
WerWolv
1f8c9b9f71
api: Move copy-as data formatting code to builtin-plugin, add api for it
2022-01-13 00:27:31 +01:00
WerWolv
f6e4d56de6
patterns: Fixed [[static]] attribute and majorly reduced memory usage
...
Fixes #394
2022-01-12 22:02:47 +01:00
WerWolv
d399a6427a
sys: Use custom literals for scaled values
2022-01-11 23:48:18 +01:00
WerWolv
e35ea13f60
sys: Improved view const-correctness
2022-01-10 21:05:37 +01:00
WerWolv
e1fb0a5d72
ui: Fixed settings window being huge
2022-01-10 21:05:18 +01:00
WerWolv
d38d261bbc
provider: Fixed applying of IPS patches. Handle applying asynchronously
2022-01-09 21:27:59 +01:00
WerWolv
936d1d6072
sys: Moved to a better shortcut handling system
2021-12-23 15:11:38 +01:00
WerWolv
ea92e17ca0
patterns: Added basic support for in/out variables
2021-12-18 22:56:36 +01:00
WerWolv
891cc42f08
ui: Added global running tasks progress bar
2021-12-16 23:48:52 +01:00
WerWolv
1770235648
build: Build and statically link capstone to work around Ubuntu issues
...
Sigh...
2021-12-15 23:28:47 +01:00
WerWolv
f325d50ab8
yara: Actually fixed reading data
2021-12-15 22:52:35 +01:00
WerWolv
41ce0f57ed
ui: Improved About page, removed super outdated cheat sheets
2021-12-12 13:35:07 +01:00
WerWolv
1a0b0e2385
provider: Automatically load available disks on windows
2021-12-12 11:56:26 +01:00
WerWolv
b2a9965617
api: Improved Provider registering api, hide implementation functions better
2021-12-12 11:52:58 +01:00
WerWolv
8a36897fd9
provider: Added raw disk provider
2021-12-12 00:42:12 +01:00
WerWolv
3e736b36b6
api: Refactored providers to allow for loading interfaces and config views
2021-12-12 00:41:44 +01:00
WerWolv
8f2e382c8a
patterns: Added std::env and ability to pass parameters to patterns from the UI
2021-12-10 11:55:27 +01:00
WerWolv
ea4f4c45cb
sys: std::jthread -> std::thread to support libc++
2021-12-07 23:36:28 +01:00
WerWolv
cc5a437573
provider: Added basic GDB Server provider
2021-12-07 22:47:57 +01:00
WerWolv
4a53717676
sys: Moved all views to builtin plugin
2021-12-07 22:47:41 +01:00
WerWolv
104000fbc4
Huge refactoring of builtin features into an external plugin
2021-01-22 18:01:42 +01:00