From dea8c2aba22194db5a04bfdb265c773eab583e79 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 10 Jan 2025 11:14:13 +0900 Subject: [PATCH] remove no longer needed patches --- 4Pane-4.0-gtk320-sizing.patch | 267 ---------------------------------- 4Pane-7.0-wx3.2.patch | 140 ------------------ 4Pane.spec | 2 - 3 files changed, 409 deletions(-) delete mode 100644 4Pane-4.0-gtk320-sizing.patch delete mode 100644 4Pane-7.0-wx3.2.patch diff --git a/4Pane-4.0-gtk320-sizing.patch b/4Pane-4.0-gtk320-sizing.patch deleted file mode 100644 index e25188d..0000000 --- a/4Pane-4.0-gtk320-sizing.patch +++ /dev/null @@ -1,267 +0,0 @@ -diff --git a/MyFiles.cpp b/MyFiles.cpp -index fdd6b50..fa088eb 100644 ---- a/MyFiles.cpp -+++ b/MyFiles.cpp -@@ -249,6 +249,7 @@ CreateAcceleratorTable(); // Make a new one, w - void FileGenericDirCtrl::DoSize() - { - int w, h; GetClientSize(&w, &h); -+if (w==0 || h==0) return; // Not yet ready for sizing - - GetTreeCtrl()->SetSize(0, HEADER_HEIGHT + 1, w, h - HEADER_HEIGHT - 1); // Set the treectrl 'body' size - headerwindow->SetSize(0, 0, w, HEADER_HEIGHT); // Set the header-window size -diff --git a/MyFrame.cpp b/MyFrame.cpp -index 889feb4..074572c 100644 ---- a/MyFrame.cpp -+++ b/MyFrame.cpp -@@ -619,6 +619,15 @@ Connect(wxID_ANY, PasteThreadType, PasteThreadEventHandler(MyFrame::OnPasteThrea - #if defined __WXX11__ - Connect(wxEVT_IDLE, (wxObjectEventFunction)&MyFrame::OnIdle); - #endif -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ // Workarounds for display glitches with gtk+3.20 -+ m_resizetimer.SetOwner(this, 10000); -+ Connect(10000, wxEVT_TIMER, wxTimerEventHandler(MyFrame::OnResizeTimer), NULL, this); -+ m_resizetimer.Start(10); -+ -+ Layout->m_notebook->StartTimer(); -+#endif - } - - #ifdef __WXX11__ -@@ -631,6 +640,21 @@ Disconnect(wxID_ANY); - } - #endif - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+void MyFrame::OnResizeTimer(wxTimerEvent& WXUNUSED(event)) -+{ -+int x, y; GetSize(&x,&y); -+if (y > 50) -+ { static int count(0); -+ if (++count < 10) return; -+ if (count % 2) SetSize(x-1, y); -+ else SetSize(x+1, y); -+ -+ if (count > 11 && !(count % 2)) m_resizetimer.Stop(); -+ } -+} -+#endif -+ - MyFrame::~MyFrame() - { - m_DragMutex.Unlock(); -@@ -1850,6 +1874,10 @@ MyTab* tab = GetActiveTab(); - if (tab == NULL) return; - - tab->PerformSplit(horizontal); -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_resizetimer.Start(10); -+#endif - } - - void MyFrame::SplitVertical(wxCommandEvent& WXUNUSED(event)) -@@ -1858,6 +1886,10 @@ MyTab* tab = GetActiveTab(); - if (tab == NULL) return; - - tab->PerformSplit(vertical); -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_resizetimer.Start(10); -+#endif - } - - void MyFrame::Unsplit(wxCommandEvent& WXUNUSED(event)) -@@ -1866,11 +1898,19 @@ MyTab* tab = GetActiveTab(); - if (tab == NULL) return; - - tab->PerformSplit(unsplit); -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_resizetimer.Start(10); -+#endif - } - - void MyFrame::OnTabTemplateLoadMenu(wxCommandEvent& event) - { - Layout->m_notebook->LoadTemplate(event.GetId() - SHCUT_TABTEMPLATERANGE_START); -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_resizetimer.Start(10); -+#endif - } - - void MyFrame::OnConfigureShortcuts(wxCommandEvent& WXUNUSED(event)) -@@ -2053,6 +2093,10 @@ void LayoutWindows::UnShowBottom() // If bottompanel is visible, unsplit it - if (!m_splitterMain->IsSplit()) return; // Can't unsplit it if it's not split - - m_splitterMain->Unsplit(bottompanel); -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_frame->m_resizetimer.Start(10); -+#endif - } - - void LayoutWindows::DoTool(enum toolchoice whichtool) // Invoke the requested tool in the bottom panel -diff --git a/MyFrame.h b/MyFrame.h -index a54d089..85e4ec0 100644 ---- a/MyFrame.h -+++ b/MyFrame.h -@@ -458,6 +458,13 @@ void OnIdle( wxIdleEvent& event ); // One-off to make the toolbar textctrl sh - void OnMouseCaptureLost(wxMouseCaptureLostEvent& event) {OnEndDrag((wxMouseEvent&)event); } // If the mouse escapes, try and do something sensible - #endif - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void OnResizeTimer(wxTimerEvent& event); -+ public: -+ wxTimer m_resizetimer; -+#endif -+ -+protected: - void OnTextFilepathEnter(wxCommandEvent& WXUNUSED(event)){ TextFilepathEnter(); } - - void DoMiscUI(wxUpdateUIEvent& event); // UpdateUI for misc items -diff --git a/MyNotebook.cpp b/MyNotebook.cpp -index b628627..71faa53 100644 ---- a/MyNotebook.cpp -+++ b/MyNotebook.cpp -@@ -27,6 +27,13 @@ - #include "MyFiles.h" - #include "MyNotebook.h" - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void ResizeTimer::Notify() -+ { -+ if (m_nb) -+ m_nb->OnTimerResize(); -+ } -+#endif - - MyNotebook::MyNotebook(wxSplitterWindow *main, wxWindowID id, const wxPoint& pos, const wxSize& size, long style) - : wxNotebook((wxWindow*)main, id, pos, size, style) -@@ -48,6 +55,10 @@ UnRedoManager::frame = MyFrame::mainframe; // Tell UnRedoManager's (static) - - DeviceMan = new DeviceAndMountManager; // Organises things to do with mounting partitions & devices - LaunchFromMenu = new LaunchMiscTools; // Launches user-defined external programs & scripts from the Tools menu -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ m_timer = new ResizeTimer(this); -+#endif - } - - MyNotebook::~MyNotebook() -@@ -61,6 +72,10 @@ delete DeleteLocation; - delete BookmarkMan; - } - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void MyNotebook::StartTimer() { if ( m_timer) m_timer->StartOnce(50); } -+#endif -+ - void MyNotebook::LoadTabs(int TemplateNo /*=-1*/, const wxString& startdir0 /*=""*/, const wxString& startdir1 /*=""*/) // Load the default tabs, or if TemplateNo > -1, load that tab template - { - wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) return; -@@ -123,6 +138,10 @@ for (tab=0; tab < GetPageCount(); ++tab) // We can now safely unhide - - MyFrame::mainframe->GetMenuBar()->Check(SHCUT_SAVETABS_ONEXIT, saveonexit); // Set the menu item check according to bool - DoLoadTemplateMenu(); // Get the correct no of loadable templates listed on the menu -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ StartTimer(); -+#endif - } - - void MyNotebook::DoLoadTemplateMenu() // Get the correct no of loadable templates listed on the menu -@@ -298,8 +317,13 @@ if (after == -1) // -1 flags to append, not - { if (InsertPage(after, page, pageName, true)) ++nextpageno; - else return; // If page couldn't be created, bug out - } -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ StartTimer(); -+#endif - } - -+ - void MyNotebook::AppendTab() - { - CreateTab(GetPageCount()); // By passing GetPageCount(), the correct tabdata should be used -@@ -359,8 +383,18 @@ if (InsertPage(page + 1, duppage, pageName, true)) - #if defined (__WXGTK__) - ShowTabs(true); // Show the tab heads now, as by definition there must be >1 tab - #endif -+ -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ StartTimer(); -+#endif - } - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void MyNotebook::OnTimerResize() -+ { -+ int x, y; GetSize(&x,&y); SetSize(x-1, y-1); wxSafeYield(); SetSize(x, y); -+ } -+#endif - - void MyNotebook::OnSelChange(wxNotebookEvent& event) - { -diff --git a/MyNotebook.h b/MyNotebook.h -index 8fc36db..0287530 100644 ---- a/MyNotebook.h -+++ b/MyNotebook.h -@@ -17,6 +17,23 @@ class DeviceAndMountManager; - class Bookmarks; - class LaunchMiscTools; - -+#if defined __WXGTK__ -+ #include -+#endif -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ class MyNotebook; -+ -+ class ResizeTimer : public wxTimer -+ { -+ public: -+ ResizeTimer(MyNotebook* nb) : wxTimer(), m_nb(nb) {} -+ void Notify(); -+ -+ protected: -+ MyNotebook* m_nb; -+ }; -+#endif -+ - class MyNotebook : public wxNotebook - { - public: -@@ -38,11 +55,19 @@ void OnAdvanceSelection(wxCommandEvent& event){AdvanceSelection(event.GetId() == - void OnSameTabSize(wxCommandEvent& event){ EqualSizedTabs = ! EqualSizedTabs; EqualWidthTabs(EqualSizedTabs); } - #endif - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void OnTimerResize(); -+#endif -+ - void LoadTemplate(int TemplateNo); // Triggered by a menu event, loads the selected tab template - void SaveDefaults(int TemplateNo = -1, const wxString& title = wxT(""));// Save current tab setup. If TemplateNo > -1 save as a template; otherwise just do a 'normal' save - void SaveAsTemplate(); // Save the current tab setup as a template - void DeleteTemplate(); // Delete an existing template - -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ void StartTimer(); -+#endif -+ - DirectoryForDeletions* DeleteLocation; // Organises unique dirnames for deleted/trashed files - UnRedoManager* UnRedoMan; // The sole instance of UnRedoManager - DeviceAndMountManager* DeviceMan; // Find where floppy, cds are -@@ -76,6 +101,9 @@ void RenameTab(); - void EqualWidthTabs(bool equal_tabs); - #endif - int nextpageno; -+#if defined(__WXGTK3__) && GTK_CHECK_VERSION(3,20,0) -+ ResizeTimer* m_timer; -+#endif - private: - DECLARE_EVENT_TABLE() - }; diff --git a/4Pane-7.0-wx3.2.patch b/4Pane-7.0-wx3.2.patch deleted file mode 100644 index 52dcce8..0000000 --- a/4Pane-7.0-wx3.2.patch +++ /dev/null @@ -1,140 +0,0 @@ -From 66ae9a6f2ac526d80559967cda428cd48e5859ee Mon Sep 17 00:00:00 2001 -From: dghart -Date: Sat, 12 Feb 2022 15:45:54 +0000 -Subject: [PATCH] Compilation fixes for wxWidgets 3.1.6 - -Workarounds for the addition of wxBitmapBundle. ---- - Devices.cpp | 4 ++++ - MyDirs.cpp | 9 +++++++++ - MyTreeCtrl.cpp | 49 ++++++++++++++++++++++++++++++++++++++----------- - 3 files changed, 51 insertions(+), 11 deletions(-) - -diff --git a/Devices.cpp b/Devices.cpp -index 5b8cfe9..dc77cdc 100644 ---- a/Devices.cpp -+++ b/Devices.cpp -@@ -210,7 +210,11 @@ wxString bitmap; config->Read(Rootname+subgrp+wxT("/Bitmap"), &bitmap); - wxString tooltip; config->Read(Rootname+subgrp+wxT("/Tooltip"), &tooltip); - - bitmap = BITMAPSDIR + bitmap; -+#if wxVERSION_NUMBER > 3105 -+Create(MyFrame::mainframe->panelette, -1, wxBitmapBundle::FromBitmap(bitmap), wxDefaultPosition, wxDefaultSize, wxNO_BORDER); -+#else - Create(MyFrame::mainframe->panelette, -1, bitmap, wxDefaultPosition, wxDefaultSize, wxNO_BORDER); -+#endif - SetToolTip(tooltip); - } - -diff --git a/MyDirs.cpp b/MyDirs.cpp -index 68f41a8..f370d5b 100644 ---- a/MyDirs.cpp -+++ b/MyDirs.cpp -@@ -522,10 +522,19 @@ for (size_t n=0; n < count; ++n) - array->Item(n)->tooltip, wxITEM_NORMAL); - else - { if (array->Item(n)->bitmaplocation.AfterLast(('/')) == wxT("MyDocuments.xpm")) // If Documents and the label is empty, supply a default -+#if wxVERSION_NUMBER > 3105 -+ toolBar->AddTool(IDM_TOOLBAR_bmfirst+n, label.empty() ? wxString(_("Documents")) : label,wxBitmapBundle::FromBitmap(array->Item(n)->bitmaplocation), -+ array->Item(n)->tooltip, wxITEM_NORMAL); -+ else -+ toolBar->AddTool(IDM_TOOLBAR_bmfirst + n, label, wxBitmapBundle::FromBitmap(array->Item(n)->bitmaplocation), array->Item(n)->tooltip, wxITEM_NORMAL); -+ -+#else - toolBar->AddTool(IDM_TOOLBAR_bmfirst+n, label.empty() ? wxString(_("Documents")) : label, array->Item(n)->bitmaplocation, -+ - array->Item(n)->tooltip, wxITEM_NORMAL); - else - toolBar->AddTool(IDM_TOOLBAR_bmfirst + n, label, array->Item(n)->bitmaplocation, array->Item(n)->tooltip, wxITEM_NORMAL); -+#endif //wxVERSION_NUMBER > 3105 - } - } - -diff --git a/MyTreeCtrl.cpp b/MyTreeCtrl.cpp -index bc1b607..735b6cf 100644 ---- a/MyTreeCtrl.cpp -+++ b/MyTreeCtrl.cpp -@@ -1336,7 +1336,27 @@ void MyTreeCtrl::PaintLevel(wxGenericTreeItem *item, wxDC &dc, int level, int &y - dc.DrawLine(3, y_mid, x - 5, y_mid); - dc.DrawLine(x + 5, y_mid, x + m_spacing, y_mid); - } -+#if wxVERSION_NUMBER > 3105 -+ if ( m_imagesButtons.HasImages() ) -+ { -+ // draw the image button here -+ int image_h = 0, image_w = 0; -+ int image = item->IsExpanded() ? wxTreeItemIcon_Expanded -+ : wxTreeItemIcon_Normal; -+ if ( item->IsSelected() ) -+ image += wxTreeItemIcon_Selected - wxTreeItemIcon_Normal; -+ -+ wxImageList* const -+ imageListButtons = m_imagesButtons.GetImageList(); -+ imageListButtons->GetSize(image, image_w, image_h); -+ int xx = x - image_w/2; -+ int yy = y_mid - image_h/2; - -+ wxDCClipper clip(dc, xx, yy, image_w, image_h); -+ imageListButtons->Draw(image, dc, xx, yy, -+ wxIMAGELIST_DRAW_TRANSPARENT); -+ } -+#else // !wxVERSION_NUMBER > 3105 - if (m_imageListButtons != NULL) - { - // draw the image button here -@@ -1352,9 +1372,10 @@ void MyTreeCtrl::PaintLevel(wxGenericTreeItem *item, wxDC &dc, int level, int &y - wxIMAGELIST_DRAW_TRANSPARENT); - dc.DestroyClippingRegion(); - } -- -+#endif - } - } -+ - else // no custom buttons - { - static const int wImage = 9; -@@ -1495,15 +1516,17 @@ if (headerwindow->IsHidden(i)) continue; // // - image = NO_IMAGE; // //item->GetImage(i); - } - -- if(image != NO_IMAGE) -- { -- if(m_imageListNormal) { -- m_imageListNormal->GetSize(image, image_w, image_h); -- image_w += 4; -- } -- else { -- image = NO_IMAGE; -- } -+ if (image != NO_IMAGE) -+ { -+#if wxVERSION_NUMBER > 3105 -+ if (GetImageList()) { -+ GetImageList()->GetSize(image, image_w, image_h); -+#else -+ if (m_imageListNormal) { -+ m_imageListNormal->GetSize(image, image_w, image_h); -+#endif // wxVERSION_NUMBER > 3105 -+ image_w += 4; -+ } else { image = NO_IMAGE; } - } - - // honor text alignment -@@ -1581,8 +1604,12 @@ if (headerwindow->IsHidden(i)) continue; // // - item->GetY() + extraH, clip_width, - total_h); - -- if(image != NO_IMAGE) { -+ if (image != NO_IMAGE) { -+#if wxVERSION_NUMBER > 3105 -+ GetImageList()->Draw(image, dc, image_x, -+#else - m_imageListNormal->Draw(image, dc, image_x, -+#endif - item->GetY() +((total_h > image_h)? - ((total_h-image_h)/2):0), - wxIMAGELIST_DRAW_TRANSPARENT); --- -2.37.1 - diff --git a/4Pane.spec b/4Pane.spec index be409ab..c979e6d 100644 --- a/4Pane.spec +++ b/4Pane.spec @@ -19,8 +19,6 @@ Summary: Multi-pane, detailed-list file manager License: GPL-3.0-only AND LGPL-2.0-or-later AND CC0-1.0 URL: http://www.4pane.co.uk/ Source0: http://downloads.sourceforge.net/fourpane/4pane-%{version}.tar.gz -# https://sourceforge.net/p/fourpane/git4pane/ci/66ae9a6f2ac526d80559967cda428cd48e5859ee/ -Patch0: 4Pane-7.0-wx3.2.patch BuildRequires: gcc-c++ BuildRequires: bzip2-devel