Drag & Scroll
CommunityHorizontal table scrolling in Filament can be frustrating, especially for users with basic mice that lack a horizontal scroll wheel, trackball users, or anyone working with accessibility needs. This package solves that problem by letting users hold **Shift** and drag to scroll tables horizontally with ease.
filament/
namespace. Review the source and install at your own risk. Found
malware or an unresolved security issue the author won't
address?
Report it
.
Author:
Zoltán Török
Documentation
- Features
- Requirements
- Installation
- Usage
- How It Works
- Translations
- Publishing Assets
- Contributing
- Credits
- License
Horizontal table scrolling in Filament can be frustrating, especially for users with basic mice that lack a horizontal scroll wheel, trackball users, or anyone working with accessibility needs. This package solves that problem by letting users hold Shift and drag to scroll tables horizontally with ease.
#Features
- Shift + Drag to scroll - Hold Shift and drag any table to scroll horizontally
- Per-panel configuration - Enable for specific Filament panels using a simple method call
- Visual feedback - Tooltip and cursor changes guide the user
- 13 languages included - Automatic translation based on your app locale
- Zero configuration - Install, enable, and it just works
#Requirements
- PHP ^8.1
- Laravel ^11.0
- Filament ^5.0
#Installation
composer require zoltantorok/filament-drag-and-scroll
#Usage
Add ->dragAndScroll() to your panel provider:
use Filament\Panel;
use Filament\PanelProvider;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
->default()
->id('admin')
->path('admin')
->login()
->dragAndScroll();
}
}
That's it. Your users can now hold Shift and drag to scroll any table horizontally.
#Disabling
->dragAndScroll(false)
Or simply don't call the method on panels where you don't need it.
#How It Works
- User holds Shift - the cursor changes and a tooltip appears
- User clicks and drags on a table - the table scrolls horizontally
- User releases Shift - drag mode deactivates
The interaction is designed to stay out of the way. It doesn't interfere with normal table usage, text selection, or other Filament features.
#Translations
The package uses Laravel's translation system and automatically detects your app locale. No configuration required.
#Supported Languages
| Language | Code |
|---|---|
| English | en |
| Spanish | es |
| French | fr |
| German | de |
| Italian | it |
| Portuguese | pt |
| Dutch | nl |
| Russian | ru |
| Chinese | zh |
| Japanese | ja |
| Korean | ko |
| Hungarian | hu |
| Romanian | ro |
#Customizing Translations
Publish the translation files to override them:
php artisan vendor:publish --tag="filament-drag-and-scroll-views"
Or create your own in resources/lang/vendor/filament-drag-and-scroll/{locale}/messages.php:
<?php
return [
'dragToScrollHorizontally' => 'Your custom message',
'releaseShiftToExit' => 'Your custom exit message',
];
#Publishing Assets
Assets are registered automatically. If you need to publish them manually:
php artisan vendor:publish --tag="filament-drag-and-scroll-assets" --force
#Contributing
Contributions are welcome! Feel free to submit a pull request.
#Credits
#License
The MIT License (MIT). Please see LICENSE for more information.
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Advanced Tables (formerly Filter Sets)
Supercharge your tables with powerful features like user-customizable views, quick filters, multi-column sorting, advanced table searching, convenient view management, and more. Compatible with Resource Panel Tables, Relation Managers, Table Widgets, and Table Builder!
Kenneth Sese
Spotlight Pro
Browse your Filament Panel with ease. Filament Spotlight Pro adds a Spotlight/Raycast like Command Palette to your Filament Panel.
Dennis Koch