https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3050d93deb5746edc5c124345c9131f3d483e6cb

commit 3050d93deb5746edc5c124345c9131f3d483e6cb
Author:     Joachim Henze <[email protected]>
AuthorDate: Sat Dec 1 14:26:33 2018 +0100
Commit:     Joachim Henze <[email protected]>
CommitDate: Sat Dec 1 14:26:33 2018 +0100

    [BROWSEUI] Properly fix CORE-13003 "Explorer address bar display problem"
    
    The patches author is Doug Lyons. Thank you very much!
    The patch is an addendum to 0.4.9-dev-732-g
    ea0cc1c7831dbe7dec31f4f495befb5dfa90ab5c
---
 dll/win32/browseui/addressband.cpp | 21 +--------------------
 dll/win32/browseui/addressband.h   |  1 -
 2 files changed, 1 insertion(+), 21 deletions(-)

diff --git a/dll/win32/browseui/addressband.cpp 
b/dll/win32/browseui/addressband.cpp
index 54b0480c6a..820773495f 100644
--- a/dll/win32/browseui/addressband.cpp
+++ b/dll/win32/browseui/addressband.cpp
@@ -43,7 +43,6 @@ CAddressBand::CAddressBand()
     fGoButton = NULL;
     fComboBox = NULL;
     fGoButtonShown = false;
-    fAdjustNeeded = 0;
 }
 
 CAddressBand::~CAddressBand()
@@ -65,6 +64,7 @@ void CAddressBand::FocusChange(BOOL bFocus)
 
 HRESULT STDMETHODCALLTYPE CAddressBand::GetBandInfo(DWORD dwBandID, DWORD 
dwViewMode, DESKBANDINFO *pdbi)
 {
+    if (!m_hWnd || !pdbi)  return E_FAIL;  /* Verify window exists */
     if (pdbi->dwMask & DBIM_MINSIZE)
     {
         if (fGoButtonShown)
@@ -467,8 +467,6 @@ LRESULT CAddressBand::OnSize(UINT uMsg, WPARAM wParam, 
LPARAM lParam, BOOL &bHan
     long                                    newHeight;
     long                                    newWidth;
 
-    fAdjustNeeded = 1;
-
     if (fGoButtonShown == false)
     {
         bHandled = FALSE;
@@ -524,23 +522,6 @@ LRESULT CAddressBand::OnWindowPosChanging(UINT uMsg, 
WPARAM wParam, LPARAM lPara
     newHeight = positionInfoCopy.cy;
     newWidth = positionInfoCopy.cx;
 
-/*
-    Sometimes when we get here newWidth = 100 which comes from GetBandInfo and 
is less than the 200 that we need.
-    We need room for the "Address" text (50 pixels), the "GoButton" (50 
pixels), the left and right borders (30 pixels)
-    the icon (20 pixels) and the ComboBox (50 pixels) for handling the text of 
the current directory. This is 200 pixels.
-    When newWidth = 100 the Addressband ComboBox will only have a single 
character because it becomes 2 pixels wide.
-    The hack below readjusts the width to the minimum required to allow seeing 
the whole text and prints out a debug message.
-*/
-
-    if ((newWidth < 200) && (newWidth != 0))
-    {
-        if (fAdjustNeeded == 1)
-        {
-            ERR("CORE-13003 HACK: Addressband ComboBox width readjusted from 
%ld to 200.\n", newWidth);
-            newWidth = 200;
-            fAdjustNeeded = 0;
-        }
-    }
     SendMessage(fGoButton, TB_GETITEMRECT, 0, 
reinterpret_cast<LPARAM>(&buttonBounds));
 
     buttonWidth = buttonBounds.right - buttonBounds.left;
diff --git a/dll/win32/browseui/addressband.h b/dll/win32/browseui/addressband.h
index c4fd006ad6..465e1ab109 100644
--- a/dll/win32/browseui/addressband.h
+++ b/dll/win32/browseui/addressband.h
@@ -43,7 +43,6 @@ private:
     bool                                    fGoButtonShown;
     HIMAGELIST                              m_himlNormal;
     HIMAGELIST                              m_himlHot;
-    INT                                     fAdjustNeeded;
 
 public:
     CAddressBand();

Reply via email to