Skip to content

Releases: zahid4kh/deskit

1.4.0

12 Aug 21:50
Compare
Choose a tag to compare

Deskit 1.4.0

What's New

🔄 Layout View Toggle System

  • Grid and List Views: Switch between traditional list and adaptive grid layouts in all file dialogs
  • Interactive Toggle: Click the view toggle button to switch layouts with visual feedback
  • Tooltips: Contextual tooltips showing current view and switching instructions
  • Smooth Animations: Grid items feature placement animations for polished transitions

📝 Enhanced Text Handling

  • Configurable Text Wrapping: New allowSoftWrapFolderName and allowSoftWrapFileName parameters.

🛠️ Technical Updates

  • Compose 1.9.0-alpha03: Updated to latest Compose plugin version
  • Adaptive Grid: Uses GridCells.Adaptive(300.dp) for responsive animated column sizing
  • Dual Scrollbars: Separate scrollbar handling for list and grid views

Code Examples

Basic usage with new features:

FileChooserDialog(
    title = "Select Images",
    allowedExtensions = listOf("jpg", "png", "gif"),
    allowSoftWrapFileName = true, // Enable text wrapping
    onFileSelected = { file -> },
    onCancel = { }
)

Grid view benefits:

  • Better visual browsing for image files
  • More items visible at once
  • Responsive column sizing

Installation

implementation("com.github.zahid4kh:deskit:1.4.0")

Available In

  • FileChooserDialog - File selection with layout toggle
  • FileSaverDialog - File saving with grid/list views
  • FolderChooserDialog - Folder selection with view options

Full Changelog: 1.3.1...1.4.0

Deskit v1.3.1

08 Jul 17:28
Compare
Choose a tag to compare

Deskit 1.3.1 - Dialog Color Defaults System 🎨

What's New

This release introduces a comprehensive Dialog Color Defaults System that makes customizing dialog appearance much cleaner and more intuitive.

🚀 Key Features

Before (1.3.0):

FileChooserDialog(
    title = "Select File",
    folderIconColor = Color.Blue,
    fileIconColor = Color.Green,
    badgeColor = Color.Red,
    badgeContentColor = Color.White,
    scrollbarHoverColor = Color.Gray,
    // ... many more color parameters
    onFileSelected = { },
    onCancel = { }
)

After (1.3.1):

FileChooserDialog(
    title = "Select File",
    colors = FileChooserDefaults.colors(
        folderIconColor = Color.Blue,
        fileIconColor = Color.Green,
        badgeColor = Color.Red
    ),
    onFileSelected = { },
    onCancel = { }
)

🎯 Benefits

  • Cleaner API: No more cluttered constructors with dozens of parameters
  • Selective Customization: Only specify the colors you want to change
  • Material3 Integration: Automatic theme color defaults
  • Better Maintainability: Centralized color management

📦 Supported Dialogs

All dialogs now have their own Defaults object:

  • FileChooserDefaults.colors() - File selection dialogs
  • FileSaverDefaults.colors() - File saving dialogs
  • FolderChooserDefaults.colors() - Folder selection dialogs
  • ConfirmationDialogDefaults.colors() - Confirmation dialogs
  • InfoDialogDefaults.colors() - Information dialogs

🔧 Installation

Add to your build.gradle.kts:

implementation("com.github.zahid4kh:deskit:1.3.1")

📚 Documentation


Full Changelog: 1.3.0...1.3.1

Deskit v1.3.0

30 Jun 18:30
Compare
Choose a tag to compare

🚀 Deskit v1.3.0 - File Information & Enhanced User Experience

🆕 What's New

📋 File Information System

  • File/Folder Metadata Dialog: New comprehensive file info dialog showing size, type, extension, location, modification date, and folder statistics
  • Hover Info Buttons: Smart info icons that appear when hovering over files and folders for quick metadata access
  • Clipboard Integration: Click to copy file paths with visual feedback and success animations

🎯 Enhanced User Experience

  • Individual Hover States: Each file and folder now has its own hover state for better visual feedback
  • Resizable Info Dialogs: File information dialogs can be resized for better content viewing
  • Improved Visual Feedback: Color changes, tooltips, and smooth animations throughout the interface
  • Better Path Handling: Enhanced breadcrumb navigation with improved scrolling behavior

🔧 Technical Improvements

  • Folder Size Calculation: Recursive folder size calculation for accurate storage information
  • Better File Type Detection: Enhanced file icon system with comprehensive format support
  • Memory Efficient: Optimized file listing and metadata calculation
  • Error Handling: Robust error handling for file system operations

🛠️ API Enhancements

New Parameters

  • resizableFileInfoDialog: Boolean - Control file info dialog resizing
  • Enhanced color customization options for file and folder items
  • Improved callback system for file information display

New Components

  • FileInfoDialog - Comprehensive file metadata display
  • InfoRow - Reusable metadata row component with clipboard support
  • Enhanced file type icon system

📸 Key Features Demo

  • File Information: Hover over any file or folder and click the info icon to see detailed metadata
  • Clipboard Support: Click on file paths in the info dialog to copy them to clipboard
  • Visual Feedback: Enjoy smooth hover animations and visual state changes
  • Folder Statistics: View total file count and size for any directory

💾 Installation

implementation("com.github.zahid4kh:deskit:1.3.0")

🤝 Contributing

I welcome contributions!


Full Changelog: 1.2.1...1.3.0

Deskit v1.2.1

07 Jun 10:12
Compare
Choose a tag to compare
  • Made minor updates to text styling.
  • removed hardcoded width&height for InfoDialog and ConfirmationDialog

Full Changelog: 1.2.0...1.2.1

Deskit v1.2.0

18 May 15:00
Compare
Choose a tag to compare

Deskit 1.2.0 🚀

Enhanced Dialog Components for Compose Desktop

This version (1.2.0) brings a lot of improvements to the Deskit library, enhancing both visual appeal and usability for your Compose Desktop applications.

  • 📊 Advanced Navigation - All file dialogs now feature scrollbars and auto-scrolling breadcrumb paths
  • 🎨 Visual Enhancements - Added customizable icons to InfoDialog and ConfirmationDialog
  • 🧩 Component Refactoring - Cleaner code structure with modular, reusable components
  • 🔍 Better File Visualization - Detailed file type icons with appropriate visual cues (will add more in future updates)
  • 📱 Responsive UI - Improved layouts and spacing for a more polished experience

Detailed Improvements

File System Dialogs

  • FileChooserDialog: Added folder tooltips showing matching file counts, extensions filter badge, and scrollbars
  • FileSaverDialog: Now displays all files (dimmed) for better context, added scrollbars, and improved navigation
  • FolderChooserDialog: Now shows both files and folders with visual differentiation and warns when users attempt to select files

Information Dialogs

  • InfoDialog: Added support for custom icons with optional color filtering (tint, lighting and colorMatrix can be customized in ColorFilter)
  • ConfirmationDialog: Enhanced with custom icons, configurable button text, and flexible content placement

To get started with these improved components, update your dependency to version 1.2.0:

implementation("com.github.zahid4kh:deskit:1.2.0")

Full Changelog: 1.1.1...1.2.0

Deskit version 1.1.1

15 May 23:55
Compare
Choose a tag to compare

Deskit version 1.1.0

15 May 23:27
Compare
Choose a tag to compare

First release!!

14 May 20:47
Compare
Choose a tag to compare
First release!! Pre-release
Pre-release
  • Currently available components:
    • ConfirmationDialog
    • InfoDialog
    • FileChooserDialog
    • FolderChooserDialog
    • FileSaverDialog

Full Changelog: https://github.com/zahid4kh/deskit/commits/1.0.0