2. In addition, on moving the separator, the second ComboBox text is highlighted, but it's not activated.
Code: Select all
Global old
#height = 40
; Structure my_COMBOBOXINFO
;   cbSize.l
;   rcItem.RECT
;   rcButton.RECT
;   stateButton.l
;   hwndCombo.i
;   hwndEdit.i
;   hwndList.i
; EndStructure
; Procedure GetComboBoxEditHandle(hwndCombo)
;   Protected cbi.my_COMBOBOXINFO\cbSize = SizeOf(my_COMBOBOXINFO)
;   GetComboBoxInfo_(hwndCombo, cbi)
;   ProcedureReturn cbi\hwndEdit
; EndProcedure
Procedure wndproc(hwnd, msg, wParam, lParam)
  If msg = #WM_SIZE
    ;height = (lParam >> 16) & $FFFF
    If GadgetHeight(2) <> #height
      Debug "height: " + Str(GadgetHeight(2)) + " <-- 20"
    Else
      Debug "height: " + Str(GadgetHeight(2))
    EndIf
  EndIf
  
  ProcedureReturn CallWindowProc_(old, hwnd, msg, wParam, lParam)
EndProcedure
If OpenWindow(0, 0, 0, 523, 125, "", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
  ComboBoxGadget(1, 20, 15, 200, #height, #PB_ComboBox_Editable|#PB_ComboBox_LowerCase)
  ComboBoxGadget(2, 225, 15, 260, #height, #PB_ComboBox_Editable|#PB_ComboBox_LowerCase)
  SplitterGadget(3, 10, 10, 490, #height, 1, 2, #PB_Splitter_Vertical|#PB_Splitter_Separator)
  
  ; for showing the resizing problem clearly.
  old = SetWindowLongPtr_(GadgetID(2), #GWL_WNDPROC, @wndproc())
  
  ; same result
  ;hwnd = GetComboBoxEditHandle(GadgetID(2))
  ;old = SetWindowLongPtr_(hwnd, #GWL_WNDPROC, @wndproc())
  
  For i = 0 To 10
    AddGadgetItem(2, -1, "aaaaaaaaaaaaaaaabbbbbbbccc")
  Next
  SetGadgetState(2, 0)
  
  SetGadgetText(1, "abcdefg")
  SetActiveGadget(1)
  
  Repeat
    Event = WaitWindowEvent()
    Select Event
      Case #PB_Event_CloseWindow
        Break
    EndSelect
  ForEver
EndIf


