Repository navigation
New
- Built-in icon set,
IconManager.get_builtin_icon(),render(),register_icon()andbuiltin_names() - Themes:
theme=argument,set_theme(),Palette,LIGHT,DARK,apply_app_theme()andapply_fonts() close_button_style="button"with close and lock glyphs on tabsget_tab_index(),enable_dpi_awareness(), theflextabs-democommand and type information (py.typed)
Changed (check these when upgrading)
- Python 3.15 or newer is required
- The default look is now the flat
"auto"theme; passtheme=Nonefor the previous plain ttk look - Tabs without an icon no longer get a fallback icon by default (
use_fallback_iconsanduse_notebook_fallback_iconsare now False); fallback icons map to built-in icon names, andIconManager.get_fallback_text()returns an icon name - Icons are classified as image files by path separator or image extension rather than by length
- Tabs that are not closable no longer get a
•prefix or grey styling - Sidebar: default width is 180 (was 150) and the title is shown at the top
- Themed opener buttons use the ttk
selectedstate for the selected tab andalternatefor open tabs; the plain look still marks open tabs withselected get_current_tab()reads the notebook's live selection- Destroying the manager runs every open tab's
cleanup()and does not call theon_tab_*callbacks - Errors are logged with
logginginstead of printed ToastNotification.COLORSonly lists the status accent colours; toasts take their colours from the paletteTooltipWidgetusesTkDefaultFontand wraps at 280 pixels by default
Fixed
- Shortcuts no longer replace your app's bindings or each other, and removed tabs lose theirs
- Selecting tabs after they were reordered, image icons with more than one Tk root, menus with dict icons, the menu opener leaving menus behind, callback errors failing
open_tab()/close_tab(), and several smaller issues
Install: pip install flextabs==0.3.0 (requires Python 3.15+)
Full documentation: https://ms-32154.github.io/flextabs/