1. 22 Oct, 2019 1 commit
    • David Edmundson's avatar
      [ksmserver] Drop unused logout effect widget · 9b857cce
      David Edmundson authored
      Summary:
      At some point there was an effect in kwin to fade to a grey (with a
      weird vigenette effect) as one logs out.
      
      This was signalled with a fake offscreen window with a special window
      ID.
      
      The kwin effect has gone, deleted in Plasma 5.8 with
      af80a546bfe258b54468b159bb8cf78f16ca9ebf
      
      (Kwin still contains an effect called logout, but that's merely for the
      logout prompt)
      
      I intend to replace this logout effect but as I'm going to start from
      scratch we may as well communicate from ksmserver -> kwin with a new API
      that works on wayland and and solves some other issues all in one.
      
      Test Plan: Compiles
      
      Reviewers: #plasma, #kwin, apol
      
      Reviewed By: apol
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D24759
      9b857cce
  2. 04 Sep, 2019 1 commit
  3. 10 Jul, 2019 2 commits
    • Stefan Brüns's avatar
      Split ksmserver into a small application that handles startup and ksmserver · 6bab1f51
      Stefan Brüns authored
      This allows new startup procedures to use a session manager and also
      allows us to slowly replace the session manager without breaking plasma.
      
      Following on from the previous refactor, Startup and Shutdown are moved
      from kmserver and the previous calls into KSMserver are replaced with
      DBus calls.
      
      Reviewers: #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D21995
      6bab1f51
    • Stefan Brüns's avatar
      [ksmserver] Remove obsolete KDELibs4Support dependency · 7fa46fa7
      Stefan Brüns authored
      Summary:
      The inhibition was dysfunctional, as powerdevil delays the inhibition
      by 5 seconds (and is already stopped when the delay times out). Also
      powerdevil handles concurrent user session shutdowns and sleep requests
      itself, so the code is obsolete.
      
      As KDELibs4Support pulled in a number of Frameworks, we have to
      explicitly add these now.
      
      Reviewers: #plasma, broulik, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: apol, sitter, anthonyfieroni, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D22296
      7fa46fa7
  4. 21 Jan, 2019 1 commit
    • David Edmundson's avatar
      Handle ShutdowntypeDefault in KSMserver legacy code · fc2d0c4f
      David Edmundson authored
      Summary:
      In the ksmserver porting most code was moved to explicitly calling
      logout or shutdown methods rather than a random enum.
      
      A legacy code path remained for compatibility. This path is used by the
      containmentactions, in the refactor handling of
      KWorkspace::ShutdownTypeDefault was lost.
      
      BUG: 403466
      Fixed-in: 5.15.0
      
      Test Plan:
      Set different default modes
      Logged out using containment actions
      
      Reviewers: #plasma, broulik
      
      Reviewed By: #plasma, broulik
      
      Subscribers: ngraham, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D18435
      fc2d0c4f
  5. 08 Nov, 2018 1 commit
    • David Edmundson's avatar
      [ksmserver] Split xsession logout and shutdown into separate classes · 008d58cf
      David Edmundson authored
      Summary:
      This commit splits ksmserver's xsession shutdown logic from performing
      the actual shutdown and running shutdown scripts and implement proposed
      org.kde.Shutdown interface.
      
      Intended longer term target is to move this to a separate executable.
      
      KSMServer's existing logout dbus method still exists for compatibility
      forwarding to the new interface.
      
      There are 2 minor behavioural changes.
      
      The shutdownMode property (which doesn't seem to do anything and is not
      exposed in our UI) is not kept.
      
      If you shutdown /whilst/ starting up somehow, previously we delayed
      showing the logout prompt, we now delay performing the actual logout.
      
      Test Plan:
      Logged out / shut down using the old API
      Logged out / shut down using the new DBus API
      
      Reviewers: #plasma, apol, romangg
      
      Reviewed By: #plasma, apol, romangg
      
      Subscribers: romangg, apol, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D16277
      008d58cf
  6. 30 Oct, 2018 1 commit
    • David Edmundson's avatar
      [ksmserver] Launch logout greeter with DBus methods · 68538b6d
      David Edmundson authored
      Summary:
      Removing this is part of preparations for ksmserver to become just an X
      session manager. See T9779.
      
      Instead of ksmserver opening the greeter with a tonne of args and then
      having a socket to watch for changes, the new mechanism is that we fire
      and forget the prompt. Then the logout prompt calls back into ksmserver
      with the request. Simplifies code greatly allows for moving.
      
      KSMserver's shutdown DBus method remain on ksmserver for compatibility,
      but ultimately spawning the prompt will move to libkworkspace and called
      from the session directly.
      
      QML API in the logout greeter remains mostly untouched.
      
      Behavioural changes are minor:
      There was a QML property "choose" exposed to the greeter if the default
      shutdown option is set to None. Though we don't allow this in the KCM
      and our default prompt doesn't use it.
      
      We no longer block a user from saving a session whilst a logout prompt
      is active.
      
      Test Plan:
      Logged out
      Shutdown
      
      Also ran with old ksmserver, still got a prompt
      
      Reviewers: #plasma
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D16066
      68538b6d
  7. 01 Oct, 2018 2 commits
    • Nate Graham's avatar
      Replace "Shutdown" with "Shut Down" in user-facing strings · b83e5ecc
      Nate Graham authored
      Summary:
      "Shutdown" is a noun ("The nuclear reactor is experiencing a shutdown!")
      
      "Shut Down" is an imperative command with a verb ("Shut down the nuclear reactor!"), which is how everything else is phrased.
      
      Test Plan:
      - Login screen button now says "Shut Down"
      - Searching for "shut down" in KRunner brings up the appropriate option ("shutdown" still works too)
      - KRunner says, "Shut down the computer"
      
      Reviewers: #vdg, #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: davidedmundson, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D15878
      b83e5ecc
    • David Edmundson's avatar
      Fallback to in-process prompt if logout prompt fails · c2ea0afb
      David Edmundson authored
      Summary:
      KSmserver is currently very heavily tied to the shutdown prompt dialog.
      On upgrades a user ends up in a situation where they have an old
      ksmserver running but a newer shutdown dialog. This has caused issues
      repeatedly in the past.
      
      I want to make some changes to how the shutdown prompt is shown for
      5.15. First step is making the old releases more robust.
      
      Prompt looks ugly but a user will only see it at most once. Hopefully
      never.
      
      Test Plan:
      rm'd the greeter
      Got an ugly messagebox instead of nothing
      
      Reviewers: #plasma, broulik, ngraham
      
      Reviewed By: #plasma, broulik
      
      Subscribers: ngraham, broulik, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D15869
      c2ea0afb
  8. 10 Mar, 2018 1 commit
  9. 14 Feb, 2018 1 commit
  10. 14 Apr, 2017 1 commit
    • Luboš Luňák's avatar
      re-enable the 'logout cancelled by <app>' notification · 616f57ae
      Luboš Luňák authored
      81fcdb0ceef4a92b64c84e535bd852d9c5df67a2 (in kde-workspace) commented this
      out while removing other uses of KNotification, but this one is actually
      useful (especially if a app misbehaves) and certainly belong in ksmserver
      and not elsewhere.
      616f57ae
  11. 04 Oct, 2016 2 commits
  12. 15 Aug, 2016 1 commit
  13. 23 Jun, 2016 2 commits
  14. 09 Jan, 2016 1 commit
    • Andreas Hartmetz's avatar
      Remove legacy session management support. · 5f0ca130
      Andreas Hartmetz authored
      According to Git / SVN history research, it was last used by KDE in
      KDE 1. It seems like other toolkits also stopped using it 10-20 years
      ago. It should have little to no practical relevance anymore.
      I've found some documentation of legacy XSM session management from
      1992, and the first copyright year of the XSMP spec (what we're
      currently using) is 1993.
      
      Also, XSM was removed from GNOME's gnome-session in 2005, rationale
      and short discussion here:
      https://mail.gnome.org/archives/desktop-devel-list/
      2005-July/msg00527.html
      with the following objections:
      - Firefox doesn't support XSMP (long fixed)
      - CDE on Solaris doesn't support XSMP (oh well...)
      - Motif applications don't support XSMP
      
      On kde-core-devel and kwin, nobody cared too much.
      Consider XSM "accidentally" broken now ;)
      https://marc.info/?l=kde-core-devel&m=144857647812257
      https://marc.info/?l=kde-core-devel&m=144976915400658
      
      There is a utility called xsmproxy which comes from X.org.
      It talks legacy XSM to clients and XSMP to an XSMP compliant
      session manager and can therefore maybe hopefully make session
      management of dinosaur applicatons sort of work.
      It seems like that one received its last major modification
      in 2003.
      
      There is also some XSM related code in KWin that I will remove next.
      5f0ca130
  15. 01 Nov, 2015 1 commit
  16. 29 Oct, 2015 1 commit
  17. 26 May, 2015 1 commit
    • Martin Klapetek's avatar
      Switch the login sound to Phonon directly...for now · c445f993
      Martin Klapetek authored
      With its current architecture, KNotification can cause crashes on logout
      due to use of Q_GLOBAL_STATIC and threads and Phonon and cleanup by main
      thread. So this replaces the KNotification-in-a-thread with Phonon
      directly.
      
      This is exactly what KNotification would do. This is for the time being
      until the crash on logout is sorted out.
      
      Additionally, this also fixes logout sound which was missing before.
      This uses normal KNotification as at that point we don't need to be
      threading or anything, so KNotification is just safe.
      
      REVIEW: 123834
      c445f993
  18. 10 Feb, 2015 1 commit
  19. 29 Sep, 2014 4 commits
  20. 18 Sep, 2014 1 commit
  21. 19 Jun, 2014 1 commit
  22. 13 Jun, 2014 1 commit
  23. 03 Jun, 2014 1 commit
  24. 29 Apr, 2014 2 commits
  25. 30 Mar, 2014 1 commit
    • Aleix Pol Gonzalez's avatar
      Initial import from the monolithic kde-workspace. · da27b276
      Aleix Pol Gonzalez authored
      This is the beginning of revision history for this module. If you
      want to look at revision history older than this, please refer to the
      techbase wiki for how to use Git history grafting. At the time of
      writing, this wiki is located here:
      
      http://community.kde.org/Frameworks/GitOldHistory
      
      If you have already performed the grafting and you don't see any
      history beyond this commit, try running "git log" with the "--follow"
      argument.
      
      Branched from the monolithic repo kde-workspace, frameworks  branch, at commit
      049113e719dd2fc4446d054fa1a3aada330094f0
      da27b276