Skip to content
Commit 96164b94 authored by Michal Humpula's avatar Michal Humpula 🔥
Browse files

break down the katession.h/.cpp files

Changes:

One class per file. Code is now testable (almost) independently from
the app, so adding bunch of unit tests.

KateSession
 * simple container
 * remove read/writeConfig() in favour of config()
 * move rename method to manager
 * decouple name from filename (manager does the coupling now)
 * hide constructor in favour of factories returning KateSession::Ptr
 * not dependent on KateSessionManager anymore
 * add sorting functions
 * add timestamp (last time the session was saved)

KateSessionManager
 * add activeSession(QString, bool, bool, bool)
 * add activeAnonymousSession()
 * change internal storage from QList to QHash (faster lookups)
 * remove sorting from sessionList() to callers
 * use KDirWatch to monitor session dir (this removes the constant
   updates of m_sessions)

KateSessionsAction
 * add possibility to depency-inject the KateSessionManager
 * sort by modification time (desc)
 * limit to ten items
 * disable action, when there are no sessions

KateSessionChooser
 * guarantee that selectedSession() will be valid, when result is resultOpen or
   resultCopy. This simplifies the KateSessionManager workflow.

BUG: 139009
BUG: 319397
FIXED-IN: 5.0
parent c63530b8
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment