Revision f4e5d7e...

Go back to digest for 15th September 2013

Optimization in KDE Base

Emmanuel Pescosta committed changes in [kde-baseapps/emmanuelp/tabhandling] /src:

Move the tab-handling away from DolpinMainWindow (Patch-Series)

Benefits:
* Much smaller DolphinMainWindow -> easier maintenance
* Encapsulate the functionality into different classes like DolphinRecentTabsMenu,
DolphinTabPage (Split View handling) and DolphinTabWidget (Tab handling)
* Port away from KTabBar to QTabBar and QTabWidget instead of hiding/showing DolphinViews in a vertical layout
(Brings some other benefits like smooth tab changing - fading, keep settings for every tab page like splitter size, ...)
* Make it easier for other developers to read the code or to change something in the tab/split view handling of Dolphin
* Make it possible to fix some bugs very easily, which are hard to fix with the old code

New classes:
* DolphinTabPage - handles the two views, splitter and the layout
* DolphinTabWidget - based on QTabWidget, does the tab handling (create tabs, remove tabs, update tab title/icon, ...)

The DolphinTabWidget is the new central widget for DolphinMainWindow.

File Changes

Added 4 files
  • /src
  •   dolphin/dolphintabpage.cpp
  •   dolphin/dolphintabpage.h
  •   dolphin/dolphintabwidget.cpp
  •   dolphin/dolphintabwidget.h
Modified 3 files
  • /src
  •   dolphin/CMakeLists.txt
  •   dolphin/dolphinmainwindow.cpp
  •   dolphin/dolphinmainwindow.h
7 files changed in total