Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rehex for openSUSE:Factory checked 
in at 2025-12-20 21:46:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rehex (Old)
 and      /work/SRC/openSUSE:Factory/.rehex.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rehex"

Sat Dec 20 21:46:45 2025 rev:18 rq:1323766 version:0.63.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/rehex/rehex.changes      2025-09-09 
20:30:59.555116397 +0200
+++ /work/SRC/openSUSE:Factory/.rehex.new.1928/rehex.changes    2025-12-20 
21:49:28.686610870 +0100
@@ -1,0 +2,9 @@
+Sat Dec 13 16:30:54 UTC 2025 - Andrea Manzini <[email protected]>
+
+- Update to 0.63.4:
+  * Save selected value colour map in default view 
+  * Fix blurry text/icons when using DPI scaling under modern Windows
+  * Fix crash when pressing enter in search for value and search for byte 
+    sequence dialogs
+
+-------------------------------------------------------------------

Old:
----
  rehex-0.63.3.tar.gz

New:
----
  rehex-0.63.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rehex.spec ++++++
--- /var/tmp/diff_new_pack.4Z4OcS/_old  2025-12-20 21:49:29.338637922 +0100
+++ /var/tmp/diff_new_pack.4Z4OcS/_new  2025-12-20 21:49:29.346638254 +0100
@@ -18,7 +18,7 @@
 
 
 Name:           rehex
-Version:        0.63.3
+Version:        0.63.4
 Release:        0
 Summary:        Reverse Engineers' Hex Editor
 License:        GPL-2.0-only

++++++ rehex-0.63.3.tar.gz -> rehex-0.63.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/CHANGES.txt new/rehex-0.63.4/CHANGES.txt
--- old/rehex-0.63.3/CHANGES.txt        2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/CHANGES.txt        2025-11-22 17:45:55.000000000 +0100
@@ -1,3 +1,12 @@
+Version 0.63.4 (2025-11-22):
+
+ * Save selected value colour map in default view (#268).
+
+ * Fix blurry text/icons when using DPI scaling under moden Windows (#267).
+
+ * Fix crash when pressing enter in search for value and search for byte
+   sequence dialogs (#272).
+
 Version 0.63.3 (2025-09-08):
 
  * Add option to change bitmap visualisation image background to a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/Makefile new/rehex-0.63.4/Makefile
--- old/rehex-0.63.3/Makefile   2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/Makefile   2025-11-22 17:45:55.000000000 +0100
@@ -138,7 +138,7 @@
 # Define this for releases
 # NOTE: This *MUST* be of the form a.b.c where each component is an integer to 
fit the format of
 # macOS version numbers and Windows version info resources.
-VERSION := 0.63.3
+VERSION := 0.63.4
 
 ifdef VERSION
        LONG_VERSION := Version $(VERSION)
@@ -154,8 +154,8 @@
        
        GIT_COMMIT_TIME ?= $(call shell-or-die,git log -1 --format="%ct")
        
-       VERSION      := e317aae0272534a4631143819631a5cf7c1ee87d
-       LONG_VERSION := Snapshot e317aae0272534a4631143819631a5cf7c1ee87d
+       VERSION      := 850f8d79d8c8b3a87be5ebbdc9abf1b214bd5e3f
+       LONG_VERSION := Snapshot 850f8d79d8c8b3a87be5ebbdc9abf1b214bd5e3f
 endif
 
 DEPDIR := .d
@@ -873,8 +873,8 @@
        git ls-files | xargs cp --parents -t rehex-$(VERSION)/
        
        # Inline any references to the HEAD commit sha/timestamp
-       sed -i -e 
"s|\$e317aae0272534a4631143819631a5cf7c1ee87d|e317aae0272534a4631143819631a5cf7c1ee87d|g"
 rehex-$(VERSION)/Makefile
-       sed -i -e "s|\$1757363993|1757363993|g" rehex-$(VERSION)/Makefile
+       sed -i -e 
"s|\$850f8d79d8c8b3a87be5ebbdc9abf1b214bd5e3f|850f8d79d8c8b3a87be5ebbdc9abf1b214bd5e3f|g"
 rehex-$(VERSION)/Makefile
+       sed -i -e "s|\$1763829681|1763829681|g" rehex-$(VERSION)/Makefile
 endif
        
        # Generate reproducible tarball. All files use git commit timestamp.
@@ -882,7 +882,7 @@
                LC_ALL=C sort -z | \
                tar \
                        --format=ustar \
-                       --mtime=@1757363993 \
+                       --mtime=@1763829681 \
                        --owner=0 --group=0 --numeric-owner \
                        --no-recursion --null  -T - \
                        -cf - | \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/doc/ldoc.config.ld 
new/rehex-0.63.4/doc/ldoc.config.ld
--- old/rehex-0.63.3/doc/ldoc.config.ld 2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/doc/ldoc.config.ld 2025-11-22 17:45:55.000000000 +0100
@@ -3,9 +3,6 @@
 full_description = "\
 Documentation for the API available to Lua plugins. You should probably start 
with the \
 [rehex](modules/rehex.html) module. \
-\
-**NOTE**: This API is very new and lacking in features. If you can't find a 
way to do what you \
-want with it, please open an issue on the [GitHub 
page](https://www.github.com/solemnwarning/rehex/). \
 "
 format = 'markdown'
 sort = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/msvc/vcpkg-deploy/vcpkg-deploy.vcxproj 
new/rehex-0.63.4/msvc/vcpkg-deploy/vcpkg-deploy.vcxproj
--- old/rehex-0.63.3/msvc/vcpkg-deploy/vcpkg-deploy.vcxproj     2025-09-08 
22:44:10.000000000 +0200
+++ new/rehex-0.63.4/msvc/vcpkg-deploy/vcpkg-deploy.vcxproj     2025-11-22 
17:45:55.000000000 +0100
@@ -63,7 +63,9 @@
       <GenerateDebugInformation>true</GenerateDebugInformation>
     </Link>
     <PreBuildEvent>
-      <Command>cd "$(SolutionDir)"
+      <Command>set VCPKG_VISUAL_STUDIO_PATH=$(VsInstallRoot)
+
+cd "$(SolutionDir)"
 "$(ProjectDir)install_vcpkg_dependencies.bat" x64-windows-static-v143 
"$(TargetDir)"</Command>
     </PreBuildEvent>
   </ItemDefinitionGroup>
@@ -83,6 +85,7 @@
 set REHEX_WINSDK_INCLUDES=$(WindowsSDK_IncludePath)
 set 
REHEX_WINSDK_LIBDIRS=$(UniversalCRT_LibraryPath_x86)$(WindowsSDK_LibraryPath_x86)
 set 
VCPKG_KEEP_ENV_VARS=REHEX_SOLUTION_DIR;REHEX_WINSDK_INCLUDES;REHEX_WINSDK_LIBDIRS
+set VCPKG_VISUAL_STUDIO_PATH=$(VsInstallRoot)
 
 cd "$(SolutionDir)"
 "$(ProjectDir)install_vcpkg_dependencies.bat" x86-windows-static-enlyze 
"$(TargetDir)"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/msvc/version.bat 
new/rehex-0.63.4/msvc/version.bat
--- old/rehex-0.63.3/msvc/version.bat   2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/msvc/version.bat   2025-11-22 17:45:55.000000000 +0100
@@ -1,7 +1,7 @@
 @echo off
 
-set LONG_VERSION=Version 0.63.3
-set SHORT_VERSION=0.63.3
-set VERSION_WORDS=0,63,3,0
+set LONG_VERSION=Version 0.63.4
+set SHORT_VERSION=0.63.4
+set VERSION_WORDS=0,63,4,0
 
 exit /b 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/res/rehex.exe.manifest 
new/rehex-0.63.4/res/rehex.exe.manifest
--- old/rehex-0.63.3/res/rehex.exe.manifest     2025-09-08 22:44:10.000000000 
+0200
+++ new/rehex-0.63.4/res/rehex.exe.manifest     2025-11-22 17:45:55.000000000 
+0100
@@ -26,4 +26,10 @@
       <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />
     </application>
   </compatibility>
+  <asmv3:application>
+    <asmv3:windowsSettings>
+      <dpiAware 
xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings";>true</dpiAware>
+      <dpiAwareness 
xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings";>PerMonitorV2</dpiAwareness>
+    </asmv3:windowsSettings>
+  </asmv3:application>
 </assembly>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/AppSettings.cpp 
new/rehex-0.63.4/src/AppSettings.cpp
--- old/rehex-0.63.3/src/AppSettings.cpp        2025-09-08 22:44:10.000000000 
+0200
+++ new/rehex-0.63.4/src/AppSettings.cpp        2025-11-22 17:45:55.000000000 
+0100
@@ -29,6 +29,7 @@
        preferred_asm_syntax(AsmSyntax::INTEL),
        goto_offset_base(GotoOffsetBase::AUTO),
        highlight_colours(HighlightColourMap::defaults()),
+       default_byte_colour_map(-1),
        main_window_commands(MainWindow::get_template_commands()),
        cursor_nav_mode(CursorNavMode::BYTE),
        goto_offset_modal(true),
@@ -153,6 +154,12 @@
                        wxGetApp().printf_error("Error loading value colour 
maps: %s\n", e.what());
                }
        }
+
+       long default_byte_colour_map = 
config->ReadLong("default-byte-colour-map", -1);
+       if(default_byte_colour_map == -1 || 
byte_colour_maps.find(default_byte_colour_map) != byte_colour_maps.end())
+       {
+               this->default_byte_colour_map = default_byte_colour_map;
+       }
        
        if(config->HasGroup("main-window-accelerators"))
        {
@@ -230,6 +237,8 @@
                        i->second->save(config);
                }
        }
+
+       config->Write("default-byte-colour-map", 
(long)(default_byte_colour_map));
        
        {
                config->DeleteGroup("main-window-accelerators");
@@ -304,6 +313,12 @@
        {
                if(byte_colour_maps.find(i->first) == byte_colour_maps.end())
                {
+                       if(i->first == default_byte_colour_map)
+                       {
+                               /* The default byte colour map has been 
deleted. */
+                               default_byte_colour_map = -1;
+                       }
+
                        i = this->byte_colour_maps.erase(i);
                }
                else{
@@ -317,6 +332,22 @@
        wxPostEvent(this, event);
 }
 
+int REHex::AppSettings::get_default_byte_colour_map() const
+{
+       return default_byte_colour_map;
+}
+
+void REHex::AppSettings::set_default_byte_colour_map(int id)
+{
+       if(byte_colour_maps.find(id) != byte_colour_maps.end())
+       {
+               default_byte_colour_map = id;
+       }
+       else{
+               default_byte_colour_map = -1;
+       }
+}
+
 const REHex::WindowCommandTable 
&REHex::AppSettings::get_main_window_commands() const
 {
        return main_window_commands;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/AppSettings.hpp 
new/rehex-0.63.4/src/AppSettings.hpp
--- old/rehex-0.63.3/src/AppSettings.hpp        2025-09-08 22:44:10.000000000 
+0200
+++ new/rehex-0.63.4/src/AppSettings.hpp        2025-11-22 17:45:55.000000000 
+0100
@@ -72,6 +72,9 @@
                        
                        std::map< int, std::shared_ptr<const ByteColourMap> > 
get_byte_colour_maps() const;
                        void set_byte_colour_maps(const std::map<int, 
ByteColourMap> &byte_colour_maps);
+
+                       int get_default_byte_colour_map() const;
+                       void set_default_byte_colour_map(int id);
                        
                        const WindowCommandTable &get_main_window_commands() 
const;
                        void set_main_window_accelerators(const 
WindowCommandTable &new_accelerators);
@@ -91,6 +94,7 @@
                        GotoOffsetBase goto_offset_base;
                        HighlightColourMap highlight_colours;
                        std::map< int, std::shared_ptr<ByteColourMap> > 
byte_colour_maps;
+                       int default_byte_colour_map;
                        WindowCommandTable main_window_commands;
                        CursorNavMode cursor_nav_mode;
                        bool goto_offset_modal;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/MainWindow.luadoc 
new/rehex-0.63.4/src/MainWindow.luadoc
--- old/rehex-0.63.3/src/MainWindow.luadoc      2025-09-08 22:44:10.000000000 
+0200
+++ new/rehex-0.63.4/src/MainWindow.luadoc      2025-11-22 17:45:55.000000000 
+0100
@@ -1,5 +1,5 @@
 ---
--- The main application window. Future versions of rehex may support multiple 
of these.
+-- The main application window(s).
 -- @classmod rehex.MainWindow
 
 --- Get the currently active document.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/Tab.cpp new/rehex-0.63.4/src/Tab.cpp
--- old/rehex-0.63.3/src/Tab.cpp        2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/src/Tab.cpp        2025-11-22 17:45:55.000000000 +0100
@@ -1483,6 +1483,20 @@
        
        int dsm_type = config->Read("data-map-scrollbar-type", 
(int)(data_map_scrollbar_type));
        set_dsm_type((DataMapScrollbarType)(dsm_type));
+
+       int default_byte_colour_map = 
wxGetApp().settings->get_default_byte_colour_map();
+       if(default_byte_colour_map >= 0)
+       {
+               auto maps = wxGetApp().settings->get_byte_colour_maps();
+
+               auto map_it = maps.find(default_byte_colour_map);
+               assert(map_it != maps.end());
+
+               if(map_it != maps.end())
+               {
+                       doc_ctrl->set_byte_colour_map(map_it->second);
+               }
+       }
 }
 
 void REHex::Tab::init_default_tools()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/mainwindow.cpp 
new/rehex-0.63.4/src/mainwindow.cpp
--- old/rehex-0.63.3/src/mainwindow.cpp 2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/src/mainwindow.cpp 2025-11-22 17:45:55.000000000 +0100
@@ -2018,6 +2018,24 @@
        #endif
        
        tab->save_view(config);
+
+       /* Find the selected byte colour map (if any) in the map list and save 
it as the default. The
+        * default is managed by AppSettings to keep it in sync with the map 
list.
+       */
+
+       auto maps = wxGetApp().settings->get_byte_colour_maps();
+       int default_map = -1;
+       
+       for(auto i = maps.begin(); i != maps.end(); ++i)
+       {
+               if(i->second == tab->doc_ctrl->get_byte_colour_map())
+               {
+                       default_map = i->first;
+                       break;
+               }
+       }
+
+       wxGetApp().settings->set_default_byte_colour_map(default_map);
 }
 
 void REHex::MainWindow::OnGithub(wxCommandEvent &event)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/search.cpp 
new/rehex-0.63.4/src/search.cpp
--- old/rehex-0.63.3/src/search.cpp     2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/src/search.cpp     2025-11-22 17:45:55.000000000 +0100
@@ -79,7 +79,7 @@
 REHex::Search::Search(wxWindow *parent, SharedDocumentPointer &doc, const char 
*title):
        wxDialog(parent, wxID_ANY, title),
        doc(doc), range_begin(0), range_end(-1), align_to(1), align_from(0), 
match_found_at(-1), running(false),
-       search_end_focus(NULL),
+       m_saved_focus(NULL),
        timer(this, ID_TIMER),
        auto_close(false),
        auto_wrap(false),
@@ -336,12 +336,14 @@
         * enter in, we stash the control and current selection (includes 
cursor position) so we can
         * restore it when the search is finished.
        */
-       
-       wxComboBox *control = dynamic_cast<wxComboBox*>(event.GetEventObject());
+
+       wxWindow *control = dynamic_cast<wxWindow*>(event.GetEventObject());
        assert(control != NULL);
        
-       search_end_focus = control;
-       control->GetSelection(&search_end_focus_from, &search_end_focus_to);
+       if(control != NULL)
+       {
+               save_focus(control);
+       }
        
        if(wxGetKeyState(WXK_SHIFT))
        {
@@ -362,13 +364,7 @@
        if(progress->WasCancelled())
        {
                end_search();
-               
-               if(search_end_focus != NULL)
-               {
-                       search_end_focus->SetFocus();
-                       search_end_focus->SetSelection(search_end_focus_from, 
search_end_focus_to);
-                       search_end_focus = NULL;
-               }
+               restore_focus();
                
                if(auto_close)
                {
@@ -422,12 +418,7 @@
                        }
                }
                
-               if(search_end_focus != NULL)
-               {
-                       search_end_focus->SetFocus();
-                       search_end_focus->SetSelection(search_end_focus_from, 
search_end_focus_to);
-                       search_end_focus = NULL;
-               }
+               restore_focus();
                
                if(auto_close)
                {
@@ -616,6 +607,50 @@
        }
 }
 
+void REHex::Search::save_focus(wxWindow *control)
+{
+       m_saved_focus = control;
+       
+       wxTextCtrl *tc = dynamic_cast<wxTextCtrl*>(control);
+       if(tc != NULL)
+       {
+               tc->GetSelection(&m_saved_focus_from, &m_saved_focus_to);
+               return;
+       }
+       
+       wxComboBox *cb = dynamic_cast<wxComboBox*>(control);
+       if(cb != NULL)
+       {
+               cb->GetSelection(&m_saved_focus_from, &m_saved_focus_to);
+               return;
+       }
+}
+
+void REHex::Search::restore_focus()
+{
+       if(m_saved_focus == NULL)
+       {
+               return;
+       }
+       
+       m_saved_focus->SetFocus();
+       
+       wxTextCtrl *tc = dynamic_cast<wxTextCtrl*>(m_saved_focus);
+       if(tc != NULL)
+       {
+               tc->SetSelection(m_saved_focus_from, m_saved_focus_to);
+       }
+       else{
+               wxComboBox *cb = dynamic_cast<wxComboBox*>(m_saved_focus);
+               if(cb != NULL)
+               {
+                       cb->SetSelection(m_saved_focus_from, m_saved_focus_to);
+               }
+       }
+       
+       m_saved_focus = NULL;
+}
+
 wxArrayString REHex::Search::Text::search_history;
 std::set<REHex::Search::Text*> REHex::Search::Text::instances;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rehex-0.63.3/src/search.hpp 
new/rehex-0.63.4/src/search.hpp
--- old/rehex-0.63.3/src/search.hpp     2025-09-08 22:44:10.000000000 +0200
+++ new/rehex-0.63.4/src/search.hpp     2025-11-22 17:45:55.000000000 +0100
@@ -76,8 +76,11 @@
                        
                        SearchDirection search_direction;
                        
-                       wxComboBox *search_end_focus;
-                       long search_end_focus_from, search_end_focus_to;
+                       wxWindow *m_saved_focus;
+                       long m_saved_focus_from, m_saved_focus_to;
+                       
+                       void save_focus(wxWindow *control);
+                       void restore_focus();
                        
                        wxProgressDialog *progress;
                        wxTimer timer;

Reply via email to