Skip to content

Releases: jannistpl/egui-file-dialog

v0.13.0 - egui update and QoL changes

27 Mar 19:43
956ee8d

Choose a tag to compare

🚨 Breaking Changes

  • Update egui from version 0.33 to version 0.34 #314 (thanks @crumblingstatue!)
  • Add select_all to FileDialogLabels #304
  • Add show_select_all_button and show_all_files_filter to FileDialogConfig #304, #306
  • Replaced the Arc inside FileDialog::add_file_filter, FileDialogConfig::add_file_filter, FileDialog::set_file_icon and FileDialogConfig::set_file_icon with a custom Filter struct.
    For migration replace Arc::new(|p| ...) with egui_file_dialog::Filter::new(|p: &Path| ...) #308
  • Add max_selections to FileDialogConfig #312

✨ Features

  • Allow to customize more icons: parent directory, back, forward, new folder, menu #294 (thanks @Jupeyy!)
  • Allow to customize search_icon and path_edit_icon #296 (thanks @mq1!)
  • Add "Select All" option to hamburger menu #304
  • Add option FileDialogConfig::show_all_files_filter, which allows the default filter "All Files" to be hidden #306
  • Add FileDialog::set_open_directory_filter and FileDialog::clear_open_directory_filter to skip navigating into matching directories #308 (thanks @monoclecat!)
  • Implement FileDialog::max_selections and FileDialogConfig::max_selections to limit how many items the user can select in PickMultiple mode #312 (thanks @hallyhaa!)

🔧 Changes

  • Remove unnecessary clone #297
  • Improve format of imports using rusfmt nightly #300
  • Fix new clippy lint added in recent rust updates #301
  • Update sysinfo from version 0.37 to version 0.38 #303

🐛 Bug Fixes

  • Fix compilation on i686-pc-windows-msvc and i686-win7-windows-msvc #293 (thanks @mq1!)
  • Fix incorrect row height of items inside the central panel, causing red boxes when scrolling in debug mode in egui version 0.34 #317

📚 Documentation

  • Improve README.md #302
  • Update license year to 2026 #307

v0.12.0 - egui update and QoL changes

10 Oct 18:09
493f4ef

Choose a tag to compare

🚨 Breaking Changes

  • Updated egui from version 0.32 to version 0.33 #289
  • Updated FileDialog::state to borrow the file dialog's state instead of cloning it #282
  • Prevent user data from being cleared when the file dialog is reset #285

🔧 Changes

  • Updated sysinfo from version 0.36 to version 0.37 #290

v0.11.0 - egui update and QoL changes

10 Jul 20:07
a39753a

Choose a tag to compare

🚨 Breaking Changes

🐛 Bug Fixes

  • Fix create directory dialog uses incorrect file system #272 (thanks @cadyn!)

🔧 Changes

  • Updated sysinfo from v0.35 to v0.36 #277

📚 Documentation

  • Use Display trait to print paths in examples, to satisfy clippy lint #270 (thanks @crumblingstatue!)

v0.10.0 - File extension filter for save dialog and QoL changes

12 May 20:52
cf63919

Choose a tag to compare

✨ Some of the highlights included in this release:

  • File extension filter for the save file dialog
  • Ability to change the display name of pinned folders
  • Shortcut to open the current working directory

Release stats: 24 changed files with 1.076 additions and 468 deletions.

🚨 Breaking Changes

  • Moved FileDialogStorage out of FileDialogConfig #259

Breaking changes due to new features and updated configuration

  • Added save_extensions and default_save_extension to FileDialogConfig #248
  • Added save_extension_any to FileDialogLabels #248
  • Added rename_pinned_folder to FileDialogLabels #258
  • Changed FileDialogStorage::pinned_folders from Vec<DirectoryEntry> to Vec<PinnedFolder> #258

✨ Features

  • Added shortcut to open current working directory to hamburger menu #246
  • Added file extensions and filters when saving a file using FileDialog::add_save_extension, FileDialogConfig::add_save_extension and FileDialog::default_save_extension #248
  • Added ability to open path context menu from a segment inside the navigation bar #253
  • Added FileDialog::set_operation_id to set the ID of the operation for which the dialog is currently being used after opening it #257
  • Added ability to rename a pinnend folder via its context menu #258
  • Added shortcut methods FileDialog::add_file_filter_extensions and FileDialogConfig::add_file_filter_extensions which allow adding a filter matching specific file extensions #263

☢️ Deprecated

  • Deprecate FileDialog::open. Use FileDialog::pick_file / FileDialog::pick_directory / FileDialog::pick_multiple in combination with FileDialog::set_operation_id instead #257

🔧 Changes

  • Excluded media files from package to reduce size #244
  • Fixed triggering branches in CI #247
  • Changed default file name from an empty string to Untitled #248
  • Fixed new clippy errors added in the latest rust version #262
  • Updated sysinfo from version 0.33 to version 0.35 #265, #266

📚 Documentation

  • Fixed preview of readme images on crates.io #254
  • Updated license copyright year and copyright holder #255
  • Cleanup package documentation and documentation files #256

v0.9.0 - egui update, virtual file system and more

04 Feb 21:51
830723b

Choose a tag to compare

✨ Some of the highlights included in this release:

  • Virtual file system support
  • Last changes to consistent API naming

Release stats: 34 changed files with 762 additions and 448 deletions.

🚨 Breaking Changes

  • Updated egui to version 0.31 #240
  • Removed deprecated methods FileDialog::select_directory, FileDialog::select_file, FileDialog::select_multiple, FileDialog::overwrite_config, FileDialog::selected, FileDialog::take_selected, FileDialog::take_selected_multiple #229
  • Renamed DialogMode's: SelectFile -> PickFile, SelectDirectory -> PickDirectory, SelectMultiple -> PickMultiple #229
  • Renamed DialogState's: Selected -> Picked, SelectedMultiple -> PickedMultiple #229
  • Renamed active_entry -> selected_entry #229
  • Renamed active_selected_entries -> selected_entries #229
  • Removed result from FileDialog::open #242

Breaking changes due to new features and updated configuration

  • Added file_system to FileDialogConfig #227
  • Added file_system parameter to DirectoryEntry::from_path #227
  • Added opening_mode to FileDialogConfig #239
  • Added last_visited_dir and last_picked_dir to FileDialogStorage #239

✨ Features

  • Implement file system abstraction so that the file dialog can be used with virtual file systems #227 (thanks @Masterchef365!)
  • Added new configuration option FileDialog::opening_mode which allows to further specify which directory is loaded when the file dialog is opened #239

🐛 Bug Fixes

  • Fixed canonicalization flag not used during object creation #237

🔧 Changes

  • Set up git-lfs to track PNG files and improve repository performance #218
  • Fixed new Clippy errors added in the latest rust version #234
  • Updated directories dependency from v0.5.0 to v0.6.0 #233

v0.8.0 - egui update, custom right panel and more

17 Dec 20:48
866bac6

Choose a tag to compare

✨ Some of the highlights included in this release:

  • Right panel to show custom UI inside the file dialog
  • Optional information UI for the right panel to display information about a file or show (image) previews

Release stats: 51 changed files with 2,119 additions and 702 deletions

🚨 Breaking Changes

  • Updated egui from version 0.29.1 to version 0.30.0 #221 (thanks @bircni!)

✨ Features

  • Added FileDialog::update_with_right_panel_ui to add a custom right panel to the file dialog #170 (thanks @crumblingstatue!)
  • Added FileDialog::active_selected_entries and FileDialog::active_entry to get information about the current active item/s #170 (thanks @crumblingstatue!)
  • Added new InformationPanel to optionally display file information and image previews in the right panel #184 (thanks @hacknus and @bircni!)
  • Added option to show system files in the hamburger menu #173 (thanks @crumblingstatue!)
  • Support mapped network devices on Windows #189
  • Added the ability to drag and drop files and folders to open their respective path #192 (thanks @hacknus!)
  • Support network drives on MacOS #194 (thanks @hacknus!)
  • Files and folders are now truncated in the middle and no longer divided onto separate lines. This can be disabled using FileDialog::truncate_filenames #203 (thanks @hacknus!)

☢️ Deprecated

  • Deprecated all select_* methods and added new equivalent pick_* methods #207

🐛 Bug Fixes

  • Fixed heading Places not being able to be updated with FileDialogLabels #180
  • Fix display errors with path prefix on Windows #182
  • Fix Macintosh HD drive appearing twice on MacOS #204 (thanks @hacknus!)

🔧 Changes

  • Use path edit as file to save #160
  • Updated sysinfo to version 0.33 #220
  • Made default egui fonts an optional feature default_fonts #163 (thanks @StarStarJ!)
  • Filter directory when loading to improve performance #169
  • Implement non blocking directory loading #177
  • Only update visible items in the central panel if the search value is empty and the create directory dialog is currently closed #181
  • Improve CI #186 (thanks @bircni!)
  • Use cmd for keybindings on MacOS #205 (thanks @hacknus!)
  • Cleanup examples #213 (thanks @bircni!)

📚 Documentation

  • Updated README.md to include latest features #176
  • Updated README.md to use new pick_* methods #214

v0.7.0 - egui update and QoL changes

01 Oct 18:09
4e152c8

Choose a tag to compare

🚨 Breaking Changes

🔧 Changes

  • Path edit is now selected as the desired file if the path entered is an existing file and the dialog is in DialogMode::SelectFile mode #151
  • Implemented Debug trait for FileDialog #152
  • Added several lints and general code cleanup #153 (thanks @bircni!)

v0.6.1 - Bug Fixes

10 Sep 20:32
31b4c21

Choose a tag to compare

🐛 Bug Fixes

  • Fixed that the select_all keybinding can also be used in DialogMode's in which only one item can be selected #142
  • Fixed the file dialog window resizing endlessly if the name of the selected file filter is larger than the dropdown menu itself #147

🔧 Changes

  • Updated sysinfo from version 0.30.5 to 0.31 #140
  • Made file dialog modals require Send #144 (thanks @MiniaczQ!)
  • Increased size of path segment buttons and search icon #148

v0.6.0 - Keyboard navigation, multi selection, pinable folders and more

03 Jul 21:29
2bb654c

Choose a tag to compare

This version implements all important features that were still open and described as planned in the readme.

✨ Some of the highlights included in this release:

  • Keyboard navigation
  • Selection of multiple directory items at once (ctrl/shift + click)
  • Pinnable folders for quick access
  • Hidden files and folders option
  • Custom file filters the user can select from a drop-down menu

Release stats: 33 changed files with 2,606 additions and 570 deletions

🚨 Breaking Changes

✨ Features

  • Added the ability to pin folders to the left sidebar and enable or disable the feature with FileDialog::show_pinned_folders #100
  • Added FileDialogConfig::storage, FileDialog::storage and FileDialog::storage_mut to be able to save and load persistent data #104 and #105
  • Added new modal and option FileDialog::allow_file_overwrite to allow overwriting an already existing file when the dialog is in DialogMode::SaveFile mode #106
  • Implemented customizable keyboard navigation using FileDialogKeybindings and FileDialog::keybindings #110
  • Implemented show hidden files and folders option #111
  • The dialog is now displayed as a modal window by default. This can be disabled with FileDialog::as_modal. The color of the modal overlay can be adjusted using FileDialog::modal_overlay_color. #118
  • Added FileDialog::add_file_filter and FileDialog::default_file_filter to add file filters that can be selected by the user from a drop-down menu at the bottom #124
  • Implemented selection of multiple files and folders at once, using FileDialog::select_multiple, FileDialog::selected_multiple and FileDialog::take_selected_multiple #127

☢️ Deprecated

  • Deprecated FileDialog::overwrite_config. Use FileDialog::with_config and FileDialog::config_mut instead #103

🐛 Bug Fixes

  • Fixed the size of the path edit input box and fixed an issue where the path edit would not close when clicking the apply button #102

🔧 Changes

  • Restructured config module and fixed new 1.78 clippy warnings #109
  • The reload button has been changed to a menu button. This menu contains the reload button and the “Show hidden" option #111
  • Minor navigation improvements #113
  • Made DirectoryEntry public reachable #119 (thanks @crumblingstatue!)
  • Improved handling of internal IDs #128
  • Made file dialog Send #131 (thanks @nat3!)

📚 Documentation

  • Added persistence example showing how to save the persistent data of the file dialog #107
  • Reworked README.md #108
  • Added multi_selection example showing how to select multiple files and folders at once #129
  • Updated crate documentation in lib.rs #135
  • Use workspace dependencies in examples #133 (thanks @crumblingstatue!)

v0.5.0 - egui update and QoL changes

30 Mar 11:37
6b2f284

Choose a tag to compare

🚨 Breaking Changes

  • Updated egui from version 0.26.0 to version 0.27.1 #97

✨ Features

  • Added FileDialog::add_quick_access and FileDialogConfig::add_quick_access to add your own quick access sections to the left sidebar #95

🔧 Changes