Releases: fluxxcode/egui-file-dialog
v0.8.0 - egui update, custom right panel and more
✨ 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
✨ 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
andFileDialog::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 equivalentpick_*
methods #207
🐛 Bug Fixes
- Fixed heading
Places
not being able to be updated withFileDialogLabels
#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
v0.7.0 - egui update and QoL changes
🚨 Breaking Changes
- Updated
egui
from version0.28.0
to version0.29.1
#155 and #157 (thanks @crumblingstatue!)
🔧 Changes
v0.6.1 - Bug Fixes
v0.6.0 - Keyboard navigation, multi selection, pinable folders and more
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
- Updated
egui
from version0.27.1
to version0.28.0
#133 (thanks @crumblingstatue!) - Added
DialogMode::SelectMultiple
andDialogState::SelectedMultiple
#127 - Added new labels to
FileDialogLabels
#100, #111, #127 - Added new configuration values to
FileDialogConfig
#100, #104, #106, #110, #111, #118
✨ 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
andFileDialog::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 inDialogMode::SaveFile
mode #106 - Implemented customizable keyboard navigation using
FileDialogKeybindings
andFileDialog::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 usingFileDialog::modal_overlay_color
. #118 - Added
FileDialog::add_file_filter
andFileDialog::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
andFileDialog::take_selected_multiple
#127
☢️ Deprecated
- Deprecated
FileDialog::overwrite_config
. UseFileDialog::with_config
andFileDialog::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 new1.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
🚨 Breaking Changes
- Updated
egui
from version0.26.0
to version0.27.1
#97
✨ Features
- Added
FileDialog::add_quick_access
andFileDialogConfig::add_quick_access
to add your own quick access sections to the left sidebar #95
🔧 Changes
- Automatically edit filter string when user is typing #93 (thanks @crumblingstatue and @aymey!)
v0.4.0 - Customization
This version is all about customizing the file dialog. The release implements the core customization features and serves as the foundation for additional customization features in the future!
✨ Some of the highlights included in this release:
- Customize which areas and functions of the dialog are visible
- Customize the text labels used by the dialog (This enables the use of the dialog in applications with multilingual support!)
- Customize the Unicode icons of specific files or directories
- Text edit the current path
Release stats: 26 changed files with 1,786 additions and 468 deletions
🖥 UI
- Changed default file icon from
🖹 (document with text U+1F5B9)
to🗋 (empty document U+1F5CB)
#74
- You can now text edit the path using the new edit button next to the current path 🖊 #85
✨ Features
- Added
FileDialog::take_selected
as an alternative toFileDialog::selected
#52 - Added
FileDialogConfig
,FileDialog::with_config
,FileDialog::overwrite_config
andFileDialog::config_mut
to set and override the configuration of a file dialog. This is useful if you want to configure multipleFileDialog
objects with the same options. #58, #67 and #79 - Added
FileDialogLabels
,FileDialog::labels
andFileDialog::labels_mut
to customize the labels used by the dialog and enable multilingual support #69 and #79 - Added
FileDialog::directory_separator
to overwrite the directory separator that is used when displaying the current path #68 - Added
FileDialog::err_icon
,FileDialog::default_folder_icon
andFileDialog::default_file_icon
to customize the respective icons #72 Renamed with #74 - Added
FileDialog::set_file_icon
andFileDialogConfig::set_file_icon
to customize the icon for different types of files and directories #74 - Added
FileDialog::device_icon
andFileDialog::removable_device_icon
to overwrite the icon that is used to display devices in the left panel. #75 - Added
FileDialog::canonicalize_paths
to set if the paths in the file dialog should be canonicalized before use #77
Methods for showing or hiding certain dialog areas and functions
- Added
FileDialog::show_top_panel
to show or hide the top panel #60 - Added
FileDialog::show_parent_button
,FileDialog::show_back_button
andFileDialog::show_forward_button
to show or hide the individual navigation buttons in the top panel. #61 - Added
FileDialog::show_new_folder_button
to show or hide the button to create a new folder #62 - Added
FileDialog::show_current_path
to show or hide the current path in the top panel #63 - Added
FileDialog::show_path_edit_button
to show or hide the button to text edit the current path #85 - Added
FileDialog::show_reload_button
to show or hide the reload button in the top panel #64 - Added
FileDialog::show_search
to show or hide the search in the top panel #65 - Added
FileDialog::show_left_panel
to show or hide the left panel #54 - Added
FileDialog::show_places
,FileDialog::show_devices
andFileDialog::show_removable_devices
to show or hide individual section of the left panel #57
🐛 Bug Fixes
- Fixed not every path being canonicalized #76
🔧 Changes
- Cleanup and restructure
FileDialog
UI methods #56 - Changed so the window title is evaluated when updating the dialog #80
- Added Rust cache to CI and updated CI to also check the examples #84
- Search input is now reset when a new directory is opened #88 (thanks @aymey!)
📚 Documentation
- Added downloads and total lines badge to
README.md
#71 - Updated project description, features and planned features in
README.md
#78 - Added customization example to
README.md
andlib.rs
#83 - Added multilingual example to
README.md
,lib.rs
and an interactive example inexamples/
#81 - Updated demo and example screenshots to include new path edit button #86
v0.3.1 - Bug fixes
v0.3.0 - UI Improvements
🖥 UI
- Updated bottom panel so that the dialog can also be resized in
DialogMode::SaveFile
or when selecting a file or directory with a long name #32 - The default minimum window size has been further reduced to
(340.0, 170.0)
#32 - Added an error icon to the error message when creating a new folder #32
- Removable devices are now listed in a separate devices section #34
- Added mount point to the disk names on Windows #38
🔧 Changes
- Restructure
file_dialog.rs
#36
📚 Documentation
- Fix typos in the documentation #29
- Fix eframe version in the example in
README.md
#30 - Added "Planned features” section to
README.md
and minor improvements #31 (Renamed with #35) - Updated example screenshot in
README.md
to include new "Removable Devices" section #34 - Moved media files from
doc/img/
tomedia/
#37
v0.2.0 - API improvements
🚨 Breaking Changes
- Rename
FileDialog::default_window_size
toFileDialog::default_size
#14 - Added attribute
operation_id
toFileDialog::open
#25
✨ Features
- Implemented
operation_id
so the dialog can be used for multiple different actions in a single view #25 - Added
FileDialog::anchor
to overwrite the window anchor #11 - Added
FileDialog::title
to overwrite the window title #12 - Added
FileDialog::resizable
to set if the window is resizable #15 - Added
FileDialog::movable
to set if the window is movable #15 - Added
FileDialog::id
to set the ID of the window #16 - Added
FileDialog::fixed_pos
andFileDialog::default_pos
to set the position of the window #17 - Added
FileDialog::min_size
andFileDialog::max_size
to set the minimum and maximum size of the window #21 - Added
FileDialog::title_bar
to enable or disable the title bar of the window #23
🐛 Bug Fixes
- Fixed issue where no error message was displayed when creating a folder #18
- Fixed an issue where the same disk can be loaded multiple times in a row on Windows #26
🔧 Changes
- Removed the version of
egui-file-dialog
in the examples #8 - Use
ui.add_enabled
instead of customui.rs
module #22
Dependency updates:
- Updated egui to version
0.26.0
#24
📚 Documentation
v0.1.0
Initial release of the file dialog.
The following features are included in this release:
- Select a file or a directory
- Save a file (Prompt user for a destination path)
- Create a new folder
- Navigation buttons to open the parent or previous directories
- Search for items in a directory
- Shortcut for user directories (Home, Documents, ...) and system disks
- Resizable window
See README.md for more information.