1. 11 Oct, 2016 7 commits
  2. 10 Oct, 2016 4 commits
  3. 09 Oct, 2016 5 commits
    • Ragnar Thomsen's avatar
      Unittest detection of compression method · ea2e4d46
      Ragnar Thomsen authored
      Unittests for cli7z and clirar were modified to also test correct
      detection of compression method.
      ea2e4d46
    • Ragnar Thomsen's avatar
      clirar: Emit compressionMethodFound signal for unrar 3/4 · 5f79138b
      Ragnar Thomsen authored
      We should also detect compression method when using the older unrar
      versions.
      5f79138b
    • Ragnar Thomsen's avatar
      Detect compression method · 50a9f590
      Ragnar Thomsen authored
      A new property was added to Archive to store detected compression
      method(s). Currently, it's only displayed in PropertiesDialog, but the
      plan is to also use it to select a sane default compression method when
      adding files to an existing archive. Code was added to all plugins for
      detecting the compression method(s) when opening an archive and a signal
      added to ReadOnlyArchiveInterface to set the property.
      
      Many archive types support multiple compression methods in same archive,
      so the property is a QStringList.
      
      Differential Revision: D2987
      50a9f590
    • Ragnar Thomsen's avatar
      clirar: Detect error when unrar version is too old · a3921c6c
      Ragnar Thomsen authored
      Unrar 3 and 4 cannot open RAR5 archives. Currently, when opening a RAR5
      archive with these old versions there is an uncaught error message which
      ends up in the comment widget.
      
      This commit adds a check for these error messages in clirar and emits an
      error signal with a proper message.
      
      CliInterface was changed so that handleLine() passes on the boolean
      return value of readListLine() to readStdOut(). This way, we can stop
      readStdOut() from handling further lines when readListLine() returns
      false. This was needed to avoid multiple error signals being emitted.
      Previously, the return value of readListLine() was unused.
      
      Unittests were added for both unrar 3 and 4.
      
      Differential Revision: D2993
      a3921c6c
    • Elvis Angelaccio's avatar
      GIT_SILENT Fix coding style · e399dc70
      Elvis Angelaccio authored
      e399dc70
  4. 08 Oct, 2016 5 commits
  5. 07 Oct, 2016 3 commits
  6. 06 Oct, 2016 2 commits
    • Albert Astals Cid's avatar
    • Ragnar Thomsen's avatar
      Process entries while listing archives · 491f1f78
      Ragnar Thomsen authored
      When listing archives Ark currently waits until the LoadJob is done to
      process the entries. This causes a lag (>7 seconds for large archives on
      fast systems) after the LoadJob has completed until the ArchiveView is
      ready.
      
      This diff causes ArchiveModel to start processing entries while the
      LoadJob is running. This results in the view being ready <1 second after
      LoadJob completes.
      
      Differential Revision: D2948
      491f1f78
  7. 05 Oct, 2016 5 commits
  8. 04 Oct, 2016 1 commit
    • Ragnar Thomsen's avatar
      Enable support for application/x-archive · c3111575
      Ragnar Thomsen authored
      Read-only support for application/x-archive (AR archives) which is
      mostly used for static libraries (*.a) was enabled in libarchiveplugin.
      
      Due to static libraries containing the two entries "/" and "//", code
      was added to skip these entries to avoid the "absolute path" error. This
      enables extraction of this archive type.
      
      FEATURE:
      Differential Revision: D2904
      c3111575
  9. 02 Oct, 2016 3 commits
    • Ragnar Thomsen's avatar
      Remove Comment property from Archive::Entry · 7bba06c6
      Ragnar Thomsen authored
      This property was meant for storing file-specific comments as supported
      by e.g. the zip format. However, it was not used by any of the plugins.
      7bba06c6
    • Ragnar Thomsen's avatar
      Cleanup and optimization in ArchiveModel and Archive::Entry · 4d9be9fd
      Ragnar Thomsen authored
      Syntax and comment cleanup.
      
      Optimize Archive::Entry: Remove one unneeded QString member variable.
      Saves a few megabytes of memory when opening large archives.
      4d9be9fd
    • Elvis Angelaccio's avatar
      Refactor archive loading · 88acd303
      Elvis Angelaccio authored
      Ark currently loads an archive by using `Archive *Archive::create()` first
      and then `ListJob *archive->list()`. If an archive property is read
      *before* list() is called, the archive is listed in the background with
      listIfNotListed().
      This design is responsible for a lot or problems (see T1877, T3296 and T330).
      
      This commit refactors ListJob in a new LoadJob class. Is not possible
      anymore to create an archive and then list() it. Instead, a LoadJob is
      started first and then the archive can be retrieved at the end of the
      job.
      
      Differential Revision: D2811
      88acd303
  10. 01 Oct, 2016 5 commits
    • Ragnar Thomsen's avatar
      Merge branch 'Applications/16.08' · 8cb2ca5f
      Ragnar Thomsen authored
      8cb2ca5f
    • Ragnar Thomsen's avatar
      Fix extraction of selected entries from AppImage · e67866a5
      Ragnar Thomsen authored
      Extraction of selected entries from AppImages was curently broken. This
      was because when libarchive lists the AppImage all entries are
      prepended with "./", which results in entry paths not matching those
      in ArchiveModel.
      
      This commit removes the "./" in LibarchivePlugin::extractFiles().
      
      Differential Revision: D2905
      e67866a5
    • Ragnar Thomsen's avatar
      Fix drag-and-drop extraction of parentless files · bb9ede75
      Ragnar Thomsen authored
      In some archives parent folders of some files might not be part of the
      archive themselves, i.e. the archive does not contain separate entries
      for them. In this case ArchiveModel creates ArchiveDirNodes for the
      folders. However, the FileName and InternalID properties of these
      folders do not get a trailing slash. This results in faulty root nodes
      leading to e.g. broken drag-n-drop extraction of files within these
      folders.
      
      This diff simply appends a traling slash to the properties in
      ArchiveModel::parentFor().
      
      BUG: 367549
      FIXED-IN: 16.08.2
      Differential Revision: D2909
      bb9ede75
    • Ragnar Thomsen's avatar
      Fix drag-and-drop extraction of entries from certain archive formats · 593568d0
      Ragnar Thomsen authored
      When listing certain archive formats e.g. AppImage and RPM,
      libarchiveplugin outputs no trailing slash for folders. This diff adds a
      trailing slash to folders that miss one. The code is added in
      ArchiveModel::newEntry() so it's applied for all plugins.
      
      Differential Revision: D2908
      593568d0
    • Ragnar Thomsen's avatar
      Merge branch 'Applications/16.08' · 99b42b95
      Ragnar Thomsen authored
      99b42b95