1. 24 Mar, 2019 1 commit
    • Lionel Chauvin's avatar
      [Yakuake] Improve customization · 1f8e9fbc
      Lionel Chauvin authored
      This patch increases Yakuake customization possibilities without break existing skins.
      The new features are:
      - new tab button can be positionned at the end of tabs
      - selected tab text can be not bold
      - titlebar's title can be centered
      - titlebar's icons can be anchored at left
      - a compact mode that superposes title and tabbar
      Here examples of what can be achieved with these changes:
      Test Plan:
      Install skins:
      Reviewers: hein, #yakuake
      Reviewed By: hein
      Tags: #yakuake
      Differential Revision: https://phabricator.kde.org/D19835
  2. 18 Mar, 2019 1 commit
  3. 10 Mar, 2019 1 commit
    • Lionel Chauvin's avatar
      Fix Skin validation when installed from KNS · d9537fcb
      Lionel Chauvin authored
      When a Skin is downloaded from KNS, Yakuake fails to validate the presence of title.skin and tabs.skin files.
      The skin is then uninstalled even if these files exist.
      This is due to this optimization of KNS: https://phabricator.kde.org/D6104
      Files are not listed anymore by entry.installedFiles().
      They are replaced by paths that end with /*
      In order to fix this bug I changed the validateSkin method so that it checks the presence of files in the filesystem instead of in a list of entries returned by KNS.
      BUG: 395012
      Test Plan:
      Download a Skin from KNS:  It should not complain about missing files.
      Install a correct skin from local: it should not  complain about missing files;
      Install a wrong skin from local: it should  complain about missing files;
      Install a correct skin already installed from local: it should ask for overwrite existing skin.
      Reviewers: hein, apol, #yakuake
      Reviewed By: hein
      Subscribers: Zren, hein, apol, chauvin
      Tags: #yakuake
      Differential Revision: https://phabricator.kde.org/D13335
  4. 25 Feb, 2019 2 commits
  5. 15 Feb, 2019 1 commit
  6. 10 Feb, 2019 1 commit
  7. 04 Feb, 2019 1 commit
  8. 24 Jan, 2019 1 commit
    • Maximilian Schiller's avatar
      Add shortcuts as default shortcuts · fb5a395b
      Maximilian Schiller authored
      Add the shortcuts a the default shortcuts to the actionCollection()
      When resetting to the default shortcuts this no longers clears them.
      BUG: 401244
      Test Plan: Open yakuake and confige shortcuts. Hit the "Defaults" button. The shortcuts should no longer be cleared.
      Reviewers: hein
      Reviewed By: hein
      Differential Revision: https://phabricator.kde.org/D18500
  9. 06 Jan, 2019 1 commit
  10. 30 Dec, 2018 1 commit
  11. 28 Dec, 2018 1 commit
  12. 24 Dec, 2018 1 commit
  13. 09 Dec, 2018 1 commit
  14. 30 Oct, 2018 1 commit
    • Kai Uwe Broulik's avatar
      Fix KIcon -> QIcon porting bug · 3219dc4c
      Kai Uwe Broulik authored
      Use QIcon::fromTheme (which loads named icons from icon theme) rather than
      QIcon constructor (which loads an icon from a given path).
      Fixes missing icons in e.g. tab bar context menu, first run wizard, and others
      Reviewed By: hein
  15. 22 Oct, 2018 1 commit
    • Maximilian Schiller's avatar
      Use KMainWindow instead of QMainWindow · 0c0eb086
      Maximilian Schiller authored
      MainWindow should inherit from KMainWindow and not from QMainWindow
      because QMainWindow does not call the queryClose function upon closing.
      This disabled the "really quit?" dialog which should come up if more than one session
      is currently open.
      Furthermore makes Yakuake properly quit when requested via the "Quit" action or the dialog by
      making the QApplication quit if the last Window Closes.
      BUG:  398425
      Test Plan:
      1. open yakuake
      2. press ctrl + shift + q
      without the patch yakuake just hides again (press F12 to confirm) with the patch it properly quits.
      1. open yakuake
      2. open multiple (>1) sessions (bottom left "+" symbol)
      3. press ctrl + shift + q
      without the patch yakuake just hides with the patch a dialog comes up and asks "really quit?"
      on pressing "quit" yakuake properly quits.
      Reviewers: hein, alexeymin, #kde_applications
      Reviewed By: hein
      Subscribers: tcanabrava
      Differential Revision: https://phabricator.kde.org/D15535
  16. 10 Oct, 2018 2 commits
  17. 26 Sep, 2018 1 commit
  18. 15 Sep, 2018 1 commit
  19. 24 Aug, 2018 1 commit
  20. 29 Apr, 2018 1 commit
  21. 28 Mar, 2018 4 commits
  22. 25 Feb, 2018 1 commit
  23. 12 Feb, 2018 1 commit
  24. 22 Dec, 2017 1 commit
  25. 20 Dec, 2017 1 commit
  26. 04 Dec, 2017 1 commit
  27. 29 Nov, 2017 2 commits
  28. 20 Nov, 2017 1 commit
  29. 24 Oct, 2017 1 commit
    • Eike Hein's avatar
      Suppress yakuake "Unregister input type" warning when using qdbus · ca460bf5
      Eike Hein authored
      When using the qdbus interface of yakuake, the following warning is constantly printed in the terminal:
      `Skipped method "addSession" : Unregistered input type in parameter list: Session::SessionType`
      That's because the `enum Session::SessionType` is the type of parameter that is accepted by the `addSession` function that is exposed through the dbus interface, and this `enum` hasn't been registered (with a `Q_DECLARE_METATYPE`?).
      As I see, registering a new metatype can be a bit tricky, and I guess this might be one reason why the additional functions `addSessionTwoHorizontal()`, `addSessionTwoVertical()` and `addSessionQuad()` exist: simplified code. After all, these functions are just one-line-code wrappers of the existing `addSession()` function (they call the addSession() with different session type parameter).
      This patch renames the existing `int SessionStack::addSession(Session::SessionType type)` function to `SessionStack::addSessionImpl(Session::SessionType type)`, and creates a yet-another-wrapper function `int SessionStack::addSession()` without any parameters to make it available through the QDBus interface in order to suppress these warnings without breaking the DBus API. The newly added `addSession()` behaves exactly as the old addSession() behaved; just creates a new `Session::Single` type session.
      Test Plan:
      Start yakuake from a shell, and:
      1) (optional) If your system supports auto completion, type the following in a second shell:
      `qdbus org.kde.yakuake /` <- start pressing the tab key here to see the available functions.
      2) Execute the command `qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession`
      Both for 1 and 2 check the shell that you started yakuake from, and you should see `Skipped method "addSession" : Unregistered input type in parameter list: Session::SessionType` messages appearing each time you press the tab key or calling the function `org.kde.yakuake.addSession`.
      Reviewers: hein, #kde_applications, alexeymin
      Reviewed By: alexeymin
      Subscribers: alexeymin
      Differential Revision: https://phabricator.kde.org/D7813
  30. 12 Oct, 2017 1 commit
  31. 16 Sep, 2017 1 commit
    • Vangelis Tasoulas's avatar
      Fixes a yakuake "index out of range" crash produced by QDBus exposed function... · 09abe657
      Vangelis Tasoulas authored
      Fixes a yakuake "index out of range" crash produced by QDBus exposed function TabBar::sessionAtTab(int)
      The function `TabBar::sessionAtTab(int index)` is exposed through QDBus and if a user/script passes a negative number, yakuake crashes with `index out of range`.
      This patch fixes that behaviour with a sanity check. If the user passes a negative number, return -1.
      Test Plan:
      Run the command `qdbus org.kde.yakuake /yakuake/tabs org.kde.yakuake.sessionAtTab -1`
      Yakuake will crash.
      Apply the patch and re-run the above `qdbus` command. It shouldn't be crashing now.
      Reviewers: #kde_applications, hein, alexeymin
      Reviewed By: #kde_applications, hein, alexeymin
      Subscribers: alexeymin
      Differential Revision: https://phabricator.kde.org/D7812
  32. 10 Sep, 2017 1 commit
  33. 06 Sep, 2017 1 commit
    • Martin Flöser's avatar
      Make Yakuake work on Wayland with Qt 5.9 · 7534df21
      Martin Flöser authored
      Yakuake is also affected by the common problem that the integration
      breaks once a window gets hidden, which is a very common feature of
      This change tracks the PlasmaShellSurface, destroys it on hide and
      recreates on show. Thus it's alwyas positioned as expected.
      Test Plan:
      This commit was created using a yakuake which is positioned
      correctly, although I pressed F12 a few times.
      Differential Revision: https://phabricator.kde.org/D7709
  34. 03 Sep, 2017 1 commit