# Craft Order List

## [v1.4.0](https://github.com/nate8282/CraftOrderList/tree/v1.4.0) (2026-03-02)
[Full Changelog](https://github.com/nate8282/CraftOrderList/compare/v1.3.0...v1.4.0) [Previous Releases](https://github.com/nate8282/CraftOrderList/releases)

- v1.4.0 - Get Materials button, auto-open/dock, auto-close with recipe windows  
    - Add Get Materials button to bottom bar (loads recipe from active crafting window)  
    - Fix autoOpenOnRecipe: WoW 12.0 passes plain RecipeInfo table (.recipeID field,  
      not :GetRecipeID() mixin); fix all four call sites; enable by default  
    - Add auto-dock to ProfessionsFrame and ProfessionsCustomerOrdersFrame when  
      autoOpenOnRecipe is active  
    - Fix GetCurrentRecipeID: guard IsShown() on both windows so stale transactions  
      on hidden frames never return the wrong recipe  
    - Hook ProfessionsCustomerOrdersFrame for auto-open on Order window reopen  
    - Add autoCloseOnRecipe setting (default off): hides COL when recipe window closes  
    - Add escape-chaining: closing a recipe window registers COL in UISpecialFrames  
      so the next Escape press closes it without the mouse  
    - Defer ProfessionsCustomerOrdersFrame OnHide via C\_Timer.After(0) so escape  
      registration fires after the current Escape event finishes, preventing both  
      windows from closing on a single Escape press  
    - Reorder bottom buttons: Get Materials, Search Next, Clear, Reset, Copy, Export, Import  
    - Auto-size all buttons to label width + 16px padding (SizeBtn helper); Clear  
      button resizes dynamically when showing Confirm? prompt  
    - Widen main frame 400 -> 540px to accommodate seven buttons  
    - Update hint text when list is empty  
    - Add fourth settings checkbox: Close with recipe window  
