1. 13 Jun, 2016 4 commits
  2. 09 Jun, 2016 1 commit
    • Elvis Angelaccio's avatar
      Fix crash with blocking Open dialog · 0d16e7d0
      Elvis Angelaccio authored
      `QDialog::exec()` is bad and should not be used unless strictly necessary.
      The exec() call is blocking and anything can happen before it returns to the caller.
      
      The old workaround is to use a `QPointer` to guard the dialog.
      Yet there is a crash when calling `QCoreApplication::quit()` via dbus while the dialog is open.
      
      The proper fix is to call the dialog in a non-blocking way. Nowadays this is trivial thanks to C++11 lambdas.
      
      Differential Revision: D1786
      0d16e7d0
  3. 06 Jun, 2016 2 commits
  4. 05 Jun, 2016 1 commit
    • Elvis Angelaccio's avatar
      Port service menus to KFileItemAction · c369264d
      Elvis Angelaccio authored
      The Compress and Extract service menus shown in Dolphin's context menu are now
      provided by two new KFileItemAction plugins. This allows us to do a lot of
      useful checks before actually showing the actions in the context menu.
      
      We can also stop hardcoding the supported mimetypes for the Extract
      menu. This is actually required in order to support the Extract menu when more
      than one archive is selected. In this case Dolphin sends to the kfileitemaction
      plugins the
      generic 'application/octet-stream' mimetype, so we have to manually check
      anyway the mimetype of any given URL (to be sure that Ark supports it).
      
      This also paves the way to dynamically generate the service menus (e.g. based
      on some kind of user preset).
      
      BUG: 189177
      BUG: 268163
      FIXED-IN: 16.08.0
      
      CCBUG: 348582
      
      Differential Revision: D1761
      c369264d
  5. 01 Jun, 2016 1 commit
  6. 22 May, 2016 1 commit
  7. 27 Apr, 2016 1 commit
    • Elvis Angelaccio's avatar
      Drop duplicated code moved to PluginManager · 07090fcd
      Elvis Angelaccio authored
      Most of the functions is mimetypes.cpp has been refactored and simplified in the
      new PluginManager class, so we can drop them.
      CreateDialog now respects the plugin disabled in the arkrc configuration
      file.
      
      Differential Revision: D1502
      07090fcd
  8. 26 Apr, 2016 1 commit
  9. 24 Apr, 2016 1 commit
  10. 21 Apr, 2016 1 commit
  11. 17 Apr, 2016 1 commit
  12. 15 Apr, 2016 1 commit
  13. 12 Apr, 2016 1 commit
  14. 09 Apr, 2016 1 commit
    • Ragnar Thomsen's avatar
      Implement GUI to set compression level for new archives · f222a505
      Ragnar Thomsen authored
      Three new int's were added to plugin json files specifying minimum,
      maximum and default compression level for each readwrite mimetype. A new
      KCollapsibleGroupBox with a QSlider was added to CreateDialog to allow
      setting the compression level.
      
      FEATURE: 148702
      FIXED-IN: 16.08
      Differential Revision: D1364
      f222a505
  15. 06 Apr, 2016 1 commit
    • Ragnar Thomsen's avatar
      Redesign of CreateDialog · 2848dcd3
      Ragnar Thomsen authored
      CreateDialog was completely redesigned. The KFileWidget is gone and replaced by
      a KUrlRequester for the destination folder and a QLineEdit for the filename.
      The encryption options are moved to a KCollapsibleGroupBox and further options
      can be added in future KCollapsibleGroupBox's.
      
      AddDialog is also gone and CreateDialog is now used directly instead.
      2848dcd3
  16. 30 Mar, 2016 2 commits
  17. 22 Mar, 2016 1 commit
  18. 19 Mar, 2016 3 commits
  19. 16 Mar, 2016 3 commits
    • Elvis Angelaccio's avatar
      Drop RAR entry from Compress service menu · 85ccd551
      Elvis Angelaccio authored
      The rar executable (which is proprietary software) is not shipped by any major
      distribution, so most users get an error message if they try to use the
      RAR entry in the Compress service menu.
      
      Users who do have the rar executable can still choose the 'Compress to...'
      entry from the service menu, in order to create rar archives from Dolphin.
      85ccd551
    • Elvis Angelaccio's avatar
      cmake: update deprecated install-dir variables · b22fd5dc
      Elvis Angelaccio authored
      As described in the ecm documentation:
      http://api.kde.org/ecm/kde-module/KDEInstallDirs.html
      b22fd5dc
    • Ragnar Thomsen's avatar
      Improve handling of supported mimetypes · 01fd1abe
      Ragnar Thomsen authored
      Move mimetype-handling functions from archive-kerfuffle.cpp to own file
      (mimetypes.cpp).
      
      In MainWindow::openArchive() set filter using
      QFileDialog::setMimeTypeFilters() instead of using
      QFileDialog::setNameFilters(). This fixes sorting of filters in the
      "Open Archive" dialog with KF 5.20.0. Frameworkintegration 5.20.0 broke
      the old sorting with commit 415ad2ed48356c3065c937813888fa1bd2742789.
      Now we get the "All Supported Files" filter automatically.
      
      Differential Revision: D1144
      01fd1abe
  20. 14 Mar, 2016 2 commits
    • Elvis Angelaccio's avatar
      Hide status bar on idle · 0f539042
      Elvis Angelaccio authored
      The Ark status bar is useful only during jobs, when showing the job's
      progress bar. With this patch we show the status bar only during a job, saving screen
      space otherwise.
      
      This patch also removes the "Show Statusbar" checkbox from the Settings
      menu, which does not make sense anymore to have.
      
      Differential Revision: D1141
      0f539042
    • Elvis Angelaccio's avatar
      clazy: use static QFileInfo::exists() · d1847208
      Elvis Angelaccio authored
      The static function is faster.
      d1847208
  21. 11 Mar, 2016 1 commit
    • Ragnar Thomsen's avatar
      Add support for lzipped tar-archives · dea04e27
      Ragnar Thomsen authored
      Support for lzipped tar-archives was enabled in the libarchiveplugin.
      Libarchive creates tar.lz archives. However, the lzip format only has a
      mimetype for single-compressed file (application/x-lzip) and not for
      tar.lz archives. Due to this limitation, a rewrite of CreateDialog was
      needed to be able to modify mimetypes in the filter combobox.
      
      BUG: 209418
      FIXED-IN: 16.04.0
      FEATURE:
      
      Differential Revision: D1098
      dea04e27
  22. 10 Mar, 2016 1 commit
  23. 09 Mar, 2016 2 commits
    • Elvis Angelaccio's avatar
      Simplify mimetypes handling · 7595cd79
      Elvis Angelaccio authored
      Now that we have the Archive::mimeType() function, we can use it to return
      directly a QMimeType object, which simplifies a lot many places in the code.
      
      This also adds the QMimeType::comment() in the properties dialog, since it's
      more user-friendly.
      
      Differential Revision: D1096
      7595cd79
    • Ragnar Thomsen's avatar
      Add properties dialog · 5552a4c9
      Ragnar Thomsen authored
      A properties dialog was added which displays information about the
      archive. The dialog can be accessed through the Archive menu or hotkey
      CTRL+RETURN.
      
      FEATURE:
      Differential Revision: D1076
      5552a4c9
  24. 27 Feb, 2016 1 commit
  25. 24 Feb, 2016 2 commits
    • Elvis Angelaccio's avatar
      Drop statusTip from MainWindow · 6ce03e7b
      Elvis Angelaccio authored
      This was introduced by c24cbf29 back in 2007, but:
      1. It violates the current HIG [1] about the status bar.
      2. It causes an ugly visual bug when quickly hovering
         with the mouse on the entries in the Open Recent submenu.
      3. Its text is almost useless. I don't even know what it meant with 'click and hold'.
      
      [1]: https://techbase.kde.org/Projects/Usability/HIG/StatusBar
      6ce03e7b
    • Elvis Angelaccio's avatar
      Introduce new Extract actions · 2cd1d594
      Elvis Angelaccio authored
      Now that we have introduced the new Archive and File menus, it makes sense to introduce
      different Extract actions as well, one for each menu:
      
      1. The Extract action in the Archive menu, which always extracts the whole
         archive (even if the user selected some file).
      2. The Extract action in the File menu, which is only enabled if some file
         has been selected, and extracts only those files.
      
      The Extract action in the toolbar is the very same Extract
      action that Ark currently provides: it allows to extract the whole
      archive, or only the selected files (if any).
      
      Differential Revision: D795
      
      GUI:
      2cd1d594
  26. 23 Feb, 2016 1 commit
  27. 21 Feb, 2016 1 commit
  28. 11 Feb, 2016 1 commit