Commit Graph

1648 Commits

Author SHA1 Message Date
Adriaan de Groot
c7645af358 [partition] Translate swap-choice-strings to enum
- Handle legacy and modern config, mixed-configs,
 - Translate strings to enum values,
 - Default and warn as appropriate.
 - Doesn't **do** anything with the config, though.
2018-10-11 06:27:39 -04:00
Adriaan de Groot
f7cc571635 Merge branch 'fix-swap-ui' of github.com:calamares/calamares into fix-swap-ui 2018-10-08 16:49:18 -04:00
Adriaan de Groot
3d543e9063 [partition] Refactor to use current config-reading methods 2018-10-09 05:46:12 -04:00
Adriaan de Groot
caa4b8ab53 [partition] Document intention of new-style swap config 2018-10-09 05:30:14 -04:00
Adriaan de Groot
2a61116b3c [partition] Disable swap choice for replace & alongside 2018-10-08 15:32:02 -04:00
Adriaan de Groot
779542a5d1 Merge branch 'master' into fix-swap-ui 2018-10-08 13:56:28 -04:00
Adriaan de Groot
bb586de056 [partition] Remove some slowdown methods when debugging is off
- Running lsblk and mount for debugging purposes can be
   skipped when the debugging is going to be suppressed anyway.
   This will speed things up just a little for regular users.
2018-10-05 09:41:37 -04:00
Adriaan de Groot
74ab06e20a [partition] Drop redundant logging 2018-10-05 09:41:37 -04:00
Adriaan de Groot
02a6b7dd12 [partition] Log the newly-created partition table
- Log individual partitions instead of printing QObject(<ptr>)
2018-10-05 09:41:37 -04:00
Adriaan de Groot
4757496c3d [partition] Improve partition-UUID logging. 2018-10-05 09:41:37 -04:00
Adriaan de Groot
7515386cf8 CMake: clean up test setup
- Remove redundant searches for ECM and Qt::Test, move
   them to top-level.
2018-10-05 09:41:37 -04:00
Adriaan de Groot
a33b0c4f24 [partition] Log the flags that are used to create a partition 2018-10-05 07:45:05 -04:00
Adriaan de Groot
292bc57523 [partition] Fix build with suitable operator << 2018-10-03 13:49:52 -04:00
Adriaan de Groot
b38316365e [partition] Be more verbose about why UI buttons appear 2018-10-03 13:58:50 +02:00
Adriaan de Groot
800f9d34f9 [partition] In logging, distinguish more cases
- While winnowing devices, the zram and nullptr cases
   were mixed together; split them, for the sake of
   logging more accurately.
 - While here, fix up some coding-style issues.
2018-10-03 13:46:08 +02:00
Adriaan de Groot
29bae61610 Merge branch 'master' into fix-swap-ui 2018-10-01 03:21:06 -04:00
Adriaan de Groot
869357a89c Merge branch 'master' into oem-resizer 2018-09-27 20:47:17 +02:00
Adriaan de Groot
35ca813064 [partition] Use "" for including from current directory 2018-09-25 06:34:03 -04:00
Adriaan de Groot
88c973f7cc [partition] Simplify space calculations
- Q_ASSERT doesn't work in constexpr functions because it's not
 - May as well calculate bytes at compile-time, no need to give
   the runaround via number-of-MiB
2018-09-24 13:50:19 +02:00
Adriaan de Groot
e3bf9fc220 [partition] Fix build with KPMCore <= 3.3.0
- Reported by Philip Mueller
2018-09-21 16:19:05 -04:00
Adriaan de Groot
d2f4079a18 [partition] Move partitioning options into a class
- As (auto) partitioning grows more options, the parameter
   list becomes more unwieldy. Add some structure to it.
2018-09-17 06:42:14 -04:00
Adriaan de Groot
3f09857cb7
Merge pull request #1013 from cjlcarvalho/master
Some RAID fixes
2018-09-17 12:25:24 +02:00
Adriaan de Groot
5136021416 [partition] Move SwapChoice to another namespace
- The choice of swap needs to be handled in more places,
   so make the enum available in the partition module core instead
   of just inside the choice page.
2018-09-13 06:29:59 -04:00
Adriaan de Groot
846e496d76 [partition] Tidy includes 2018-09-13 05:50:46 -04:00
Adriaan de Groot
8c79c981b1 [partition] Simplify space calculations
- Q_ASSERT doesn't work in constexpr functions because it's not
 - May as well calculate bytes at compile-time, no need to give
   the runaround via number-of-MiB
2018-09-13 05:33:39 -04:00
Adriaan de Groot
959cd7b224 [partition] Simplify creation of comboboxes for swap choices 2018-09-13 04:45:36 -04:00
Adriaan de Groot
cfa940b35c [partition] Support translations of swap choices
- Introduce enum to indicate what is selected
 - Support translations
 - Fill selections for erase
2018-09-12 11:18:17 -04:00
Adriaan de Groot
7d0451fe69 [partition] Rename Choice -> InstallChoice
- There are more choices to be made (or to come) when partitioning,
   so don't take the most generic term for one enum.
2018-09-12 10:16:48 -04:00
Adriaan de Groot
10f7bac2df [partition] Reorder initialization 2018-09-12 10:05:14 -04:00
Adriaan de Groot
c3f3276188 [partition] Improve presentation of swap options 2018-09-12 09:20:44 -04:00
Adriaan de Groot
dc492b301c [partition] Drop label on swap-options box 2018-09-12 08:42:21 -04:00
Adriaan de Groot
a791818a65 [partition] Add swap drop-down
- This is WIP; the drop-down contents should be customised,
   depending on configuration and the state of the device being
   installed-to.
2018-09-12 08:18:45 -04:00
Adriaan de Groot
c813375908 [partition] Prepare for swap options
- Extend PrettyRadioButton with options (combo-boxes which may
   be added later).
2018-09-12 08:09:01 -04:00
Adriaan de Groot
e0cd90cab1 Update the documentation and implementation of swap calculation.
Make the ramps consistent between suspend-to-disk and not,
and don't do the weird drop from 8GiB swap down to 4GiB for
large-memory systems.
2018-09-11 11:30:01 -04:00
Adriaan de Groot
c104d14086 [partition] Call the helpers in the right order.
This fixes the crash by calling the model-reset first, then
refreshing. Previously, the destructors that do the work
were still being called in the wrong order.

FIXES #1019
2018-09-03 15:21:30 -04:00
Adriaan de Groot
fe662345bd [partition] Extra helper classes for doing reset and refresh
- The ResetHelper only finalized changes to the module on
   destruction, but calls to refresh() assumed it was already
   done. This leads to crashes when refresh() uses an intermediate
   state of the model.

Introduce extra helpers, and rename refresh() to avoid calling the
old implementation from any code. The new helper just creates and
destroys a ResetHelper, before creating and destroying an object
that calls the new refreshAfterModelChange().

FIXES #1019
2018-09-03 10:57:20 -04:00
Adriaan de Groot
42d606171d
Merge pull request #1020 from apachelogger/esp-eq-boot
do not set boot flag on ESP (thanks @philmmanjaro for testing)
2018-09-03 10:28:59 +02:00
Harald Sitter
84ad2852bf do not set boot flag on ESP
ESP == boot. at best this is duplicated information, at worst kpmcore may
implode if you try to set a boot flag since that is technically an MBR
type flag and means nothing within the context of GPT where ESP is the flag
to set.
2018-08-22 10:14:49 +02:00
Harald Sitter
81cab43701 do not set active flags on the to-be ESP
having ESP as active flag AND then trying to set ESP means nothing is
set since kpmcore will think ESP is already set (it is listed as active
after all). this ultimately meant that nothing was set since there was
no delta between the requested flags and the already active flags.
2018-08-22 10:12:36 +02:00
Adriaan de Groot
08d41f745b [partition] Remove superfluous null check
delete is specified to handle nullptr gracefully.

FIXES #1012
2018-08-20 06:09:30 -04:00
Caio Carvalho
01a972c6ea [partition] Fixing LVM LV name line edit visibility. 2018-08-13 13:05:41 -03:00
Caio Carvalho
b5a2a5bbdd [partition] Don't show erase button for inactive RAID. 2018-08-13 12:26:00 -03:00
Caio Carvalho
7fd0ad5795 [partition] Disabling partition buttons for inactive RAID. 2018-08-13 09:51:35 -03:00
Andrius Štikonas
22aa6dc132 [partition] fix build with latest kpmcore. 2018-08-12 14:26:43 +01:00
Simon Quigley
5c50587f89
Fix LUKS deployment link. 2018-08-10 13:23:31 -05:00
Adriaan de Groot
bf40f3bd23 Merge branch 'master' into requirements-checking 2018-08-10 12:02:57 -04:00
Adriaan de Groot
3b82e655d7 Merge remote-tracking branch 'origin/update-lvm-support' 2018-08-08 15:28:11 -04:00
Adriaan de Groot
238a1e812f [partition] Reduce the fudge-factor for swap size
- Reported by Bill Auger (I think), a 15GiB disk wouldn't hold
   a 8.9GiB root plus 4GiB swap -- due to 10% overprovisioning
   of swap, plus the 2.1GiB fudge factor.
2018-08-08 05:58:41 -04:00
Adriaan de Groot
f10bab8a3a [partition] Minor code-styling 2018-08-08 05:29:19 -04:00
Adriaan de Groot
8ed26e537f [partition] Fix swap maximum size
- The existing calculation comment says "maximum 10% of disk"
   but the calculation itself uses 110%.
2018-08-08 05:26:55 -04:00
Adriaan de Groot
59fea041b6 [partition] Fix up calculations of sectors in auto-partition
- Calculating first free sector had an off-by-one so that
   partitioning would start at 2049.
 - EFI boot partition grew 1 sector larger than desired.
 - While here, align everything to 1MiB boundaries as well.

FIXES #1008
2018-08-08 05:19:09 -04:00
Adriaan de Groot
1cbfa9d693 [partition] Simplify code for sizing 2018-08-08 04:49:13 -04:00
Adriaan de Groot
5d5feeb0ab Merge branch 'master' of https://github.com/cjlcarvalho/calamares into lvm-update 2018-06-28 23:48:13 +02:00
Caio Carvalho
589628bb9a [partition] Removing unnecessary horizontal spacer on Partition Page. 2018-06-26 01:44:35 -03:00
Caio Carvalho
67d9ebbfc0 [partition] Setting revertButton enabled after deactivating VG. 2018-06-26 01:29:57 -03:00
Caio Carvalho
295e14530e [partition] Adding resizing, deactivating and removing procedures for LVM VGs. 2018-06-26 00:38:52 -03:00
Adriaan de Groot
9d17e7210a [partition] Change shortcut for "Create" to 'a'
Untangle the shortcuts; Create and Cancel had an overlap.
Skip 'r' (Revert all changes) and 'e' (Edit) and settle on
'a' (which might also mean "Add").

FIXES #977
2018-06-18 13:28:35 +02:00
Adriaan de Groot
5643ee4b8f Merge branch 'master' into secureboot 2018-06-15 13:14:58 -04:00
Adriaan de Groot
fa08e0ad73 Copyright: fix bad email address 2018-06-15 06:15:43 -04:00
Adriaan de Groot
dd8e53dc22 Copyright: update copyright lines on files touched in 2018
Contributions from:
  Adriaan de Groot <groot@kde.org>
  Gabriel Craciunescu <crazy@frugalware.org>
  AlmAck <gluca86@gmail.com>
  Andrius Štikonas <andrius@stikonas.eu>
  Caio Carvalho <caiojcarvalho@gmail.com>
  Raul Rodrigo Segura <raurodse@gmail.com>
2018-06-15 05:59:11 -04:00
Caio Carvalho
98a158c6e5 [partition] kpmcore latest release doesn't support FileSystem::Type::Luks2 2018-06-14 15:37:00 -03:00
Caio Carvalho
3b6c764f75 [partition] Fixing revert device loop error in PartitionCoreModule::revertAllDevices. 2018-06-11 18:38:57 -03:00
Caio
0465cc4214 [partition] Including revert on creation of LVM VGs. 2018-06-08 20:20:05 -03:00
Caio
f8897e0e0b [partition] Including new LVM PVs in LVM VG creation GUI. 2018-06-08 18:52:53 -03:00
Caio
e5351cdf3c [partition] Don't show capacity of new LVM VGs in DeviceModel. 2018-06-07 17:49:25 -03:00
Caio
208d58bcd9 [partition] Including CreateVolumeGroupDialog and fixing some of its GUI issues. 2018-06-07 17:22:22 -03:00
Caio
d15ce56c97 [partition] Initial implementation of VolumeGroupBaseDialog. 2018-06-04 16:31:58 -03:00
Adriaan de Groot
cbd62fbeb1 Merge branch 'master' into secureboot 2018-05-28 05:04:03 -04:00
Adriaan de Groot
47805209c6 Merge branch 'branding' of https://github.com/raurodse/calamares into raurodse-branding 2018-05-21 11:02:08 -04:00
Adriaan de Groot
5bcd6eaef8 [partition] Reduce warnings by removing unused code 2018-05-21 06:30:54 -04:00
Raul Rodrigo Segura
1636f665c3 Set Object name to graphical elements to thematize by qss 2018-05-20 16:29:38 +02:00
Raul Rodrigo Segura
4c6f42ecfa Set Object name to graphical elements to thematize by qss 2018-05-20 16:28:31 +02:00
Adriaan de Groot
90a2e482be [partition] Check for available partition type before creating
- Avoid situation where you make 5 or more primaries in an
   MSDOS partition table.

FIXES #953
2018-05-16 10:56:06 -04:00
Adriaan de Groot
bd57f1f2f1 [partition] Fix re-editing a newly created partition
- If there is a partition already (newly) created, then pass that
   to the dialog so that it can use the setings previously applied
   (e.g. mount point and flags).
 - This avoids the case where you create or format a partition,
   then click on it again to edit it and the previous settings are lost.
2018-05-16 09:14:50 -04:00
Adriaan de Groot
ca03dad67b [partition] Refactor setting the flags UI
- Setup the lsit of flags consistently, by providing the available
   and to-be-checked flags.
 - In CreatePartitionDialog, assume that ~0 is all the flags.
2018-05-16 09:07:45 -04:00
Adriaan de Groot
4f451eece5 [partition] Refactor getting the checked flags 2018-05-16 08:41:47 -04:00
Adriaan de Groot
950cc9070d [partition] Rename MountPoints to PartitionDialogHelpers
This file is full of helper functions for the partition-editing
dialogs. At first it was just mount-point helper functions,
but there is other functionality that can be refactored.
2018-05-16 08:34:33 -04:00
Adriaan de Groot
336b8c758a [partition] Consider the future flags when checking EFI bootability
- If we're changing the flags to enable EFI boot, then that's
   enough to satisfy the (future) EFI bootability check.
   This is for issue #622 as well. Fixes #884.
2018-05-16 07:33:04 -04:00
Adriaan de Groot
0df304b206 [partition] Preserve desired partition flags
- Use the desired (future) flags, if set, to initialize the
   flags checkboxes. If there are no future flags set, this
   returns active flags as before.
 - This fixes the situation where editing a partition, changing
   flags, then editing it *again* re-starts with the original
   flags instead of the modified flags.
2018-05-16 07:19:34 -04:00
Adriaan de Groot
6739b81c2a [partition] Tell PartitionInfo about desired flags
- When creating a partition, or changing flags, tell
   the PartitionInfo about those desired flags.
2018-05-16 07:13:35 -04:00
Adriaan de Groot
7df143f64a [partition] Add flags to PartitionInfo
- PartitionInfo maintains information on "what is desired" for
   a given Partition. Now we can set desired flags, alongside
   the flags already supported by Partition (where activeFlags()
   gives you the flags currently set on that partition).
2018-05-16 06:53:35 -04:00
Adriaan de Groot
5b4668822d [partition] Also update combo box index when setting up
- Avoids case where you edit a partition with a mountpoint
   set; previously, calling setText() would update the text
   but leave the selected index unchanged (usually 0), so that
   later calling selectedMountPoint() would return empty.
2018-05-16 06:15:33 -04:00
Adriaan de Groot
323d20d1a5 [partition] Avoid sneaking an empty string into the mount points combo 2018-05-15 08:26:01 -04:00
Adriaan de Groot
255a99d714 [partition] Drop now-unneeded debugging 2018-05-15 08:13:15 -04:00
Adriaan de Groot
310555f16b [partition] Add /srv to standard mount-points list. 2018-05-15 08:06:45 -04:00
Adriaan de Groot
4402198b37 [partition] Centralize setting-of-mountpoint
- map empty to the 0'th index
 - add new entries as needed

This avoids having selected index 0, but a different text.
2018-05-15 08:01:18 -04:00
Adriaan de Groot
a49c39bb53 [partition] Unmap mount-point special strings
- Reverse "(no mount point)" to the empty string
 - Provide convenience pointer-taking function
2018-05-15 06:30:18 -04:00
Adriaan de Groot
a4997c4be8 [partition] Convenience for selecting default mount point
- map blank to the "(no mount point)" string for UI purposes
2018-05-15 06:13:19 -04:00
Adriaan de Groot
fda2e54e0f [partition] Refactor filling combobox with moint points
- Move to one place which handles the standard mount points
 - While here, introduce explicit "(no mount point)" string
   into the combo box. This is prep-work for issue #951.
2018-05-15 05:40:52 -04:00
Caio Carvalho
f72f7bd8fe [partition] Only bootloader model should ignore devices that are not of Disk_Device type. 2018-05-10 18:37:37 -03:00
Caio Carvalho
77d2667b53 [partition] Checking if there is LUKS creation support and if partition is not Extended before enabling encryption in CreatePartitionDialog. 2018-05-08 01:30:41 -03:00
Caio Carvalho
f561f04591 [partition] Changing PartUtils::getDevices to ignore devices that aren't of Disk_Device type. 2018-05-03 14:50:13 -03:00
Caio Carvalho
8726b70574 [partition] Ignoring LVM devices in PartUtils::getDevices to prevent installing bootloader in LVM VG. 2018-04-30 00:40:54 -03:00
Andrius Štikonas
1b21668bff [partition] Switch to scoped Device enums. 2018-04-18 23:59:15 +03:00
Adriaan de Groot
6bb72d173d [libcalamares] Drop generic cLog()
- Use cWarning or cError() for errors
 - Use cDebug(level) for other uses (but there aren't any)
2018-03-28 09:31:45 -04:00
Adriaan de Groot
c7629182e4 Merge branch 'master' into requirements-checking 2018-03-06 17:06:35 +01:00
Adriaan de Groot
a72bdfac52 Merge branch 'master' into requirements-checking 2018-03-06 14:57:17 +01:00
Adriaan de Groot
092529da45 [partition] WIP: EFI partition search
- Add some logging (not even sure it compiles) because
   my openSUSE Krypton Secureboot-enabled VM says
   "no EFI system partitions found".
2018-02-19 10:25:00 -05:00
Adriaan de Groot
3ae126f589 [modules] Use cError() as well
- Switch KPMHelpers to using Calamares logging instead of qDebug()
2018-02-13 11:59:38 +01:00
Adriaan de Groot
3315df5df1 [modules] Use new convenience logging methods across the board 2018-02-13 11:07:12 +01:00
Adriaan de Groot
0b03d56a40 i18n: Massage code to help lupdate understand 2018-02-07 17:43:26 +01:00
Adriaan de Groot
58252fc16d [partition] Handle missing requirements by disabling the module 2018-01-10 09:05:15 -05:00
Adriaan de Groot
e3b7a2884b [partition] Relax check with UI-level warning message, too 2018-01-09 11:15:30 -05:00
Adriaan de Groot
637d6ad752 [partition] Find Esp partition with modern flags. 2018-01-09 11:12:13 -05:00
Adriaan de Groot
94b6c95c44 [partition] Introduce function for checking various flag-combinations for ESP boot. 2018-01-09 10:53:33 -05:00
Adriaan de Groot
05967311de [partition] Be defensive against no device-device-available.
Scenario is this: you have no suitable installation devices on
your system (everything is mounted, or HDD has died), click through
to partition page, where you have all the buttons available, but no
devices in the list. The following actions then cause a crash:

 - clicking "back"
 - clicking any button

Prevent that:
 - you can click "back", but if there is no device selected
   nothing happens to the device state (no nullptr deref,
   and no crash)
 - button code is now more resilient to this scenario
 - buttons are hidden until a device is available, so you
   can't even click on them to trigger the code.
2018-01-09 06:58:46 -05:00
Adriaan de Groot
1a42b8af41 Merge branch 'kpmcore-3.2'
- Bumps requireed KPMCore to 3.3 (in spite of the branch name)
 - Cleans up some dependencies

Thanks to Andrius Stikonas.
2018-01-02 13:25:11 +01:00
Andrius Štikonas
2027a5538e Fix propagation of new partition table to global storage. 2017-12-27 14:11:11 +00:00
Philip
1cffa9fafc [partition] Rename slots, to avoid recursion
- see also https://github.com/calamares/calamares/issues/880
- missed within 7ce52ecda7
2017-12-25 15:50:37 -05:00
Philip
8f32aad3fa [partition] Rename slots, to avoid recursion
- see also https://github.com/calamares/calamares/issues/880
- missed within 7ce52ecda7
2017-12-25 15:48:55 -05:00
Adriaan de Groot
dc255e161e [partition] Rename slots, to avoid recursion 2017-12-24 03:34:34 -05:00
Andrius Štikonas
806b84973a Convert CreatePartitionTableJob to KPMcore operation. 2017-12-22 15:25:39 +00:00
Andrius Štikonas
1b3ce39ffb Convert FormatPartitionJob to KPMcore's CreateFileSystemOperation. 2017-12-22 15:25:39 +00:00
Andrius Štikonas
638117efa0 Cleanup unnecessary kpmcore includes. 2017-12-22 15:25:39 +00:00
Adriaan de Groot
7ce52ecda7 [partition] Rename slots, to avoid recursion 2017-12-22 16:20:35 +01:00
Adriaan de Groot
762ad54344 Documentation: change http links to GitHub to https 2017-12-20 08:39:09 -05:00
Adriaan de Groot
cc15dd9ec7 Merge branch 'master' into kpmcore-3.2
- Pull in Master, merge README, to simplify merging this
   branch into master (soon-ish, once kpmcore 3.3 becomes available
   in builders)
2017-12-15 07:18:05 -05:00
Andrius Štikonas
a2e3af2b3d Require KPMcore 3.3 2017-12-15 11:38:38 +00:00
Adriaan de Groot
55ed2ba4c0 [partition] Introduce convenience translation for progress. 2017-12-14 16:11:46 -05:00
Adriaan de Groot
5c4286eebf [partition] Switch to convenience function for MiB 2017-12-14 16:11:46 -05:00
Adriaan de Groot
38688bab47 [partition] code style (minor followup to #872) 2017-12-14 15:55:23 -05:00
Adriaan de Groot
0729bdd0be
Merge pull request #872 from stikonas/3.1.x-stable
Use KPMcore SetPartFlags operation.
2017-12-14 15:53:35 -05:00
Adriaan de Groot
29e532a790 [partition] Insert annoying 3-sec delay
This is intended for testing -- it helps debug where a slow
requirement check blocks the UI.
2017-12-12 07:17:16 -05:00
Andrius Štikonas
139f5a9e86 Use KPMcore SetPartFlags operation. 2017-12-06 14:51:54 +00:00
Adriaan de Groot
4566e53d01 [partition] Delay requirements checking until pmcore is initialized 2017-12-02 12:11:56 -05:00
Adriaan de Groot
ba21a221df [partition] C++ style 2017-12-02 11:43:20 -05:00
Adriaan de Groot
16fbe4dc8c [partition] Sample of requirement checking
- There should be at least device to select, overwise we can't continue.
   The check currently **always** fails, so it blocks installation.
2017-12-02 11:42:56 -05:00
Chantara Tith
2a785bdf89 Disable newPartitionTableButton for LVM device. 2017-11-11 21:47:30 +00:00
Andrius Štikonas
652ffaedd5 Remove unnecessary kpmcore includes. 2017-11-11 21:34:10 +00:00
Andrius Štikonas
1620f6a668 Merge branch 'master' into lvm2 2017-11-11 21:30:49 +00:00
Adriaan de Groot
105e06798e CMake: look for ECM at top-level, add to search path if found. 2017-11-01 05:50:04 -04:00
Adriaan de Groot
b303acf12a Merge branch '3.1.x-stable'
- KPMCore code moved
 - Small fixes
2017-10-31 06:44:14 -04:00
Adriaan de Groot
5474dc6d2b [partition] allow KPMcore 3.0.2 (with warning) 2017-10-30 11:43:37 -04:00
Andrius Štikonas
fb1522f6ca Use KPMcore Resize Operation. 2017-10-27 14:00:32 +01:00
Andrius Štikonas
274025d04e Fix reported partition size. 2017-10-27 02:51:44 +01:00
Adriaan de Groot
5e101bcbf9 Document KPMCore versions that make sense
- KPMCore 3.0.2 works, but contains specific bugs
2017-10-24 12:53:55 -04:00
Adriaan de Groot
e7c51aa00b Document defaultFileSystemType
- this applies to new partitions; existing documentation erroneously
   said this happens with Replace as well,
 - follow up on Andrius manual-partition PR with documentation that
   manual mode doesn't switch to this FS when editing existing partitions.
2017-10-23 06:23:19 -04:00
Andrius Štikonas
38c3f8bb52 Clarify defaultFileSystem documentation. 2017-10-20 20:18:52 +01:00
Andrius Štikonas
ceba157459 Use KPMcore DeleteOperation to delete partitions. 2017-10-12 19:33:34 +01:00
Andrius Štikonas
70573543f2 Use KPMcore NewOperation to create partitions. 2017-10-12 19:33:19 +01:00
Andrius Štikonas
4912d8a6c2 Fix create partition job to work with LVM devices. 2017-10-09 17:31:22 +01:00
Adriaan de Groot
3f739563ef Drop KService requirements (it's still there in InteractiveTerminal) 2017-10-04 08:46:12 -04:00
Andrius Štikonas
68e940f0bf Remove unnecessary KIO and KIconThemes dependencies. 2017-09-30 18:18:25 +01:00
Andrius Štikonas
9f05c236d8 KPMcore: Pass QStringList to fs->name() instead of QString. 2017-09-30 16:27:13 +01:00
Adriaan de Groot
ff2947060d KPMCore: use the translation system for filesystem names from KPMCore 2017-09-30 17:04:35 +02:00
Adriaan de Groot
96c3f7def3 KPMCore: drop conditional code 2017-09-30 16:50:02 +02:00
Adriaan de Groot
ca037af6ca KPMCore: update required version to 3.2
- drop extra checks for blkid and atasmart, those are kpmcore's
   concern, not ours (and it might have other backends, anyway)
2017-09-30 16:48:37 +02:00
Adriaan de Groot
d2cce926de Merge pull request #821 from calamares/luks-colors
Use the LUKS filesystem's outer UUID for the color index.
2017-09-26 17:40:36 +02:00
Adriaan de Groot
e3e519c06f Clang: reduce warnings, nullptr, unused parameters 2017-09-21 04:04:01 -04:00
Adriaan de Groot
337903db09 Clang: reduce warnings about overriden destructors 2017-09-20 09:11:18 -04:00
Adriaan de Groot
9693d7a5bd Memory: clean up interface used to get memory (RAM) size 2017-09-20 09:11:02 -04:00
Adriaan de Groot
d23818b27c Fix code using re-imported spinner 2017-09-19 16:26:26 +02:00
Adriaan de Groot
13807ceabf Licensing: add self
- to all the files I've touched recently
 - to (very incomplete) AUTHORS list

Licensing: add license info to top-level CMakeLists.txt
2017-09-19 15:57:25 +02:00
Adriaan de Groot
ca60a7fc16 Clang: warnings-- 2017-09-14 07:02:24 -04:00
Adriaan de Groot
342b819a1d Fix build (warnings--, but breakage++ is not good) 2017-09-14 06:59:34 -04:00
Adriaan de Groot
c6297f1db5 Clang: warnings-- 2017-09-14 06:34:31 -04:00
Adriaan de Groot
9f1cca5ec7 FS: use untranslated name to identify filesystem
Resolves issue where 'linuxswap' is translated to 'Linux-Swap',
for instance. FileSystem::name() provides a translated name,
not an untranslated one.

This should move to KPMCore.

FIXES #797
2017-09-14 06:34:18 -04:00
Adriaan de Groot
ec86922839 Find KPMCore 3.2 quietly, less frightening 2017-09-13 07:01:19 -04:00
Adriaan de Groot
9116718448 Clang: warnings-reduction 2017-09-10 15:19:36 -04:00
Adriaan de Groot
0b39e50cdc Clang: explicit char-initialization of ByteArray 2017-09-10 13:22:54 -04:00
Adriaan de Groot
bd3786ebeb Clang: reduce warnings in various places 2017-09-10 13:22:32 -04:00
Adriaan de Groot
a06911e9aa Clang: refactor units-converters, reduce warnings 2017-09-10 13:22:32 -04:00
Adriaan de Groot
31fa9e4251 Clang: fix warnings on partition splitter
- initialize all the fields
 - member-initialization order
 - silence warnings about double<->int
 - drop unused parameter to setSplitPartition
2017-09-10 06:17:28 -04:00
Adriaan de Groot
3e5916157f A mounted partition cannot be resized or replaced
- add check for isMounted()
 - a device with a mounted partition cannot be (entirely) erased

FIXES #639
2017-09-07 04:55:44 -04:00
Adriaan de Groot
851379628c Reduce Qt runtime warnings.
- deleteLater() doesn't like nullptr (produces a warning, but is harmless)
 - reparenting across threads doesn't work, comment on that but leave
   it in, since this may be relevant for memory management.
2017-09-07 04:24:08 -04:00
Andrius Štikonas
252006ea25 kpmcore now requires passing sector size to FileSystem. 2017-09-06 12:24:51 +01:00
Adriaan de Groot
360a114ed4 Be more explicit on why a device is winnowed from the list 2017-09-05 06:09:50 -04:00
Adriaan de Groot
0e96621b94 Don't leak memory when winnowing disk devices
- Improve logging a little
 - Don't leak Device*, but delete the raw pointer when erasing
 - Document that DeviceInfo takes ownership and doesn't leak
2017-08-31 04:14:52 -04:00
Adriaan de Groot
d5dca07e22 Fix uninitialized values (valgrind report) 2017-08-31 04:13:18 -04:00
Adriaan de Groot
1ea79efce8 Uninitialized value 2017-08-29 14:00:48 -04:00
Adriaan de Groot
c5abfd6371 Having a mounted partition should not disqualify the entire device.
FIXES #780
(should reopen #639 for double-checking)
2017-08-28 06:01:11 -04:00
Adriaan de Groot
85595b4e04 #780: check for isMounted(), not for where-would-it-be-mounted 2017-08-28 05:54:04 -04:00
Adriaan de Groot
7791c3cb19 DeviceInfo: refactor translation of DeviceInfoPage
- For Boot and Device info widgets, add a retranslateUi() method,
   since the labels change not only in response to translation
   events but also UI events.

FIXES #779
2017-08-28 05:44:43 -04:00
Adriaan de Groot
7e66499f36 Refactor check for EFI system.
The TODO stands, to delegate this to KPMCore.
2017-08-28 05:36:45 -04:00
Adriaan de Groot
2fdccdf090 Merge branch 'simplify-module-desc' 2017-08-02 11:29:58 -04:00
Adriaan de Groot
196b1567db Modules: remove boilerplate module.desc 2017-08-02 11:05:32 -04:00
Andrius Štikonas
1131fdce4c Port away from deprecated qSort. 2017-07-17 22:53:09 +01:00
Adriaan de Groot
3cd18fd285 Partitions: extend getDevices() with minimum size.
This is preparatory work for making the available-space check consistent with
what the partition module will allow for installation. Right now, the check
for available space will allow a mounted drive, even /, to satisfy the check.
2017-07-12 06:40:54 -04:00
Adriaan de Groot
18a1f459db Partition: reduce code duplications 2017-07-12 05:54:22 -04:00
Adriaan de Groot
7d49255a78 Partitions: use an enum with clear semantics instead of bool 2017-07-12 05:41:29 -04:00
Adriaan de Groot
730e0d885f Partitions: use KPMCore-defined default backend 2017-07-12 05:17:34 -04:00
Adriaan de Groot
55c6cfa1ca Partitions: improve wording of debug messages 2017-07-12 04:57:22 -04:00
Adriaan de Groot
102bed1805 Partitions: split device-listing (and winnowing) into separate source file.
The grab-list-of-writable-devices code is usable for the partition module, but
also useful for welcome module, so reduce its footprint.
2017-07-12 04:52:52 -04:00
Adriaan de Groot
33bca6d71d Merge commit 'partitions' 2017-07-11 17:46:47 -04:00
Adriaan de Groot
5bf03cc515 Partitions: shuffle some device-detection code off to PartUtils.cpp 2017-07-11 06:27:19 -04:00
Adriaan de Groot
aeb0cd0d3f Partitions: drop devices with mounted partitions.
FIXES #639
2017-07-11 06:27:19 -04:00
Adriaan de Groot
cc7631dd99 Partitions: code-formatting 2017-07-11 06:27:19 -04:00
Adriaan de Groot
c66807282b CMake: remove editorializing from CMakeLists.txt 2017-07-11 06:26:56 -04:00
Lisa Vitolo
9be15e68b6 Change both size box suffices to MiB. 2017-07-09 18:20:00 +01:00
Lisa Vitolo
925d3a61a7 Add "MB" suffix to the "edit partition" size box.
Makes it easier to know which unit Calamares is using when
resizing a partition. The "Create partition" dialog has
it already.
2017-07-09 10:10:04 -04:00
Adriaan de Groot
3c3c0f99f8 C++ trickery, part two: shorten code 2017-07-04 08:42:14 -04:00
Adriaan de Groot
232bbe18bc Be more verbose while scanning devices 2017-07-04 05:32:05 -04:00
Adriaan de Groot
ee4e4dfccc C++ trickery to make the code shorter to read. 2017-07-03 18:07:18 -04:00
Adriaan de Groot
79595eb532 Coverity: explicitly initialize 2017-07-03 09:21:05 -04:00
Adriaan de Groot
c0b3f3fe9d Clang: reduce warnings; make enum-switch explicit 2017-06-28 05:49:53 -04:00
Adriaan de Groot
8ea14d7957 Release: add copyright to files I've touched 2017-06-21 08:27:10 -04:00
Adriaan de Groot
6616315269 Partitionmanager: minor docs edit 2017-06-20 10:03:44 -04:00
Adriaan de Groot
8708260689 Partitionmanager: fix PM-tests build 2017-06-20 09:45:32 -04:00
Adriaan de Groot
7ebbcc33b2 Partitionmanager: remove unused code files 2017-06-20 07:23:04 -04:00
Adriaan de Groot
ea44021cb4 Partitionmanager: partly fix PM-tests build 2017-06-20 07:10:29 -04:00
Adriaan de Groot
46a2503c87 PartitionModule: skip nullptr devices, and report count
FIXES #686
2017-06-14 12:24:32 -04:00
Adriaan de Groot
92a2c7aa70 PartitionModule: avoid nullptr crashes
Fix up iterator code so that it handles nullptr better.
This avoids part of #686.
2017-06-14 12:24:32 -04:00
Adriaan de Groot
3677708d3e PartitionModule: look for atasmart and blkid, to avoid link-time failure.
This just puts a warning in the cmake log, but will help diagnose
situations where libatasmart.so.4 is installed, but libatasmart.so
is not -- in which case -latasmart fails.
2017-06-14 12:23:33 -04:00
Adriaan de Groot
e92d82c5db Cleanup: add copyright lines 2017-06-12 09:59:04 -04:00
Adriaan de Groot
fc5522741a Bump required KPMCore to 3.0.3
The newer release resolves (upstream) a problem with NVMe encryption.

FIXES #697
2017-06-12 12:36:45 +02:00
Adriaan de Groot
aea73b982e Cleanup: require ECM 5.10 or later (released 2015) 2017-06-12 05:14:27 -04:00
Adriaan de Groot
5382a510a9 Cleanup: switch to C++11 user-defined literals 2017-06-12 04:51:55 -04:00
Adriaan de Groot
4fab3c93c2 Docs: document effect of ensureSuspendToisk more thoroughly 2017-06-12 04:19:31 -04:00
Adriaan de Groot
829f72363e Cleanup: remove duplicate #define 2017-06-12 03:32:22 -04:00
Rohan Garg
bba2f65079
Add additional variables to help improve readability 2017-04-20 01:38:30 +02:00
Teo Mrnjavac
6545443b24 Documentation++ 2017-03-03 12:32:44 +01:00
Teo Mrnjavac
80beb87ae9 Documentation++ 2017-03-03 12:32:44 +01:00
Teo Mrnjavac
6c7cdb5f50 Documentation++ 2017-03-01 13:35:06 +01:00
Teo Mrnjavac
3aebb79d30 Add optional config value neverCreateSwap in partition module.
CAL-458 #close The feature has landed in master, please test.
2017-02-09 18:08:47 +01:00
Ramon Buldó
f0b4a21b2d partition: use always double click to activate a partition tree view item
Using activated signal may use single or double click depending on environment settings
2017-02-07 17:58:56 +01:00
Teo Mrnjavac
06b1d4abd2 Don't hardcode /dev/sd* as device path. 2017-02-02 16:59:17 +01:00
Teo Mrnjavac
f4732de975 Always write bootloader path. 2017-01-18 19:38:12 +01:00
Teo Mrnjavac
45adde11e1 Do not write bootloader install path if the system is EFI. 2017-01-18 12:11:25 +01:00
Teo Mrnjavac
4f1317d1b7 Force the correct flags for EFI system partition. 2017-01-12 16:52:22 +01:00
Teo Mrnjavac
a59a79a816 bootloaderInstallPath only applies if !isEfi. 2017-01-12 13:28:34 +01:00
Teo Mrnjavac
3285ebae67 Bump KPMcore dependency to 3.0.2. 2017-01-11 12:25:49 +01:00
Teo Mrnjavac
f3848cd428 The sender QObject should be in scope so the bootloader path is written.
CAL-388
CAL-417
CAL-441
2017-01-10 14:46:07 +01:00
Teo Mrnjavac
c158893b22 Style + translation. 2017-01-04 15:28:09 +01:00
Teo Mrnjavac
2aeadf9682 Better to keep font style manipulation to a minimum. 2017-01-04 15:28:09 +01:00
Teo Mrnjavac
e9f113a6a8 Translate user-visible strings! 2017-01-04 15:28:09 +01:00
Teo Mrnjavac
028f56d94a Better to keep font style manipulation to a minimum. 2017-01-04 15:28:09 +01:00
Teo Mrnjavac
3ec7c6f881 Style. 2017-01-04 15:28:09 +01:00
Lisa
02abc0d0a7 Merge pull request #276 from shainer/mountpoint
Disallow assigning the same mountpoint to two partitions
2016-12-31 18:49:05 +01:00
Teo Mrnjavac
40eba50821 Improve debug output. 2016-12-23 14:17:57 +01:00
Teo Mrnjavac
244b4dff83 Improve debug output. 2016-12-23 14:03:47 +01:00
Teo Mrnjavac
457172df66 Do not dereference nullptr. 2016-12-13 12:17:07 +01:00
Teo Mrnjavac
e2b2d761c2 Do not LINK_PUBLIC by default. 2016-12-07 16:37:29 +01:00
Teo Mrnjavac
45315e6ae9 Improve debug output for bootloader code path. 2016-12-02 18:36:02 +01:00
Teo Mrnjavac
e10034c670 Bump KPMcore requirement. 2016-12-01 19:15:11 +01:00
Teo Mrnjavac
2230cd6941 Use the LUKS filesystem's outer UUID for the color index. 2016-11-30 17:26:49 +01:00
Teo Mrnjavac
0ad819e301 Make sure we write the inner fs type to globalstorage. 2016-11-25 16:21:25 +01:00
shainer
2759529841 Remove current partition's mountpoint from used list.
This means that when we edit a partition, we don't consider
its current mountpoint invalid because it is already in-use.

We need to do this for both "edit existing partition" and
"edit a partition that we are still creating".
2016-11-20 23:19:33 +00:00
shainer
349470ae71 Check mountpoints when editing a partition too. 2016-11-20 23:06:03 +00:00
shainer
8c1199df2d Check first selection of mountpoint too.
When opening the dialog.
2016-11-20 23:05:44 +00:00
shainer
f51b05e8aa Get the mountpoint from PartitionInfo.
The Partition object includes the root mountpoint in
the partition mountpoint, which is not what we want.
2016-11-20 22:46:28 +00:00
shainer
c8dbeb5341 Avoid creating a new partition with a used mountpoint.
We get the mountpoints already used by other partitions, and
disable the Ok button in the "Create new partition" dialog if
the user selects/writes a mountpoint which is already used.

We are going to do the same in the Edit partition dialog
after testing.
2016-11-20 22:05:55 +00:00
Teo Mrnjavac
83b51a5867 Show warning. 2016-11-17 19:03:24 +01:00
Teo Mrnjavac
17fe2d82f4 Oops. 2016-11-17 18:28:58 +01:00
Teo Mrnjavac
a55bef5d2d Warn user about encrypted root with unencrypted /boot. 2016-11-17 18:15:37 +01:00
Philip
e8f694fe02 [partition] Bump kpmcore requirements 2016-11-09 08:47:27 +01:00
Kevin Kofler
1548fe4810 [partition] Use FlagEsp instead of sgdisk to scan for ESPs.
Address an old FIXME in
PartitionCoreModule::scanForEfiSystemPartitions(): Check the FlagEsp on
the Partition object (that KPMcore has been supporting since 2.1.0)
instead of running sgdisk.
2016-10-29 01:09:14 +02:00
Kevin Kofler
5377003f89 Set the ESP flag in partition rather than bootloader.
The manual partitioning setup was already requiring the user to check
the ESP flag for the EFI System Partition. Now the autopartitioning also
sets it directly (a one-line change). The sgdisk call in the bootloader
module is thus no longer necessary (it was only a workaround because
kpmcore < 2.1.0 did not support FlagEsp), so remove that snippet.

This fixes configurations such as NVME disks where splitting boot_device
into boot_device[-1:] and boot_device[:-1] is not the correct split
(because the partition gets a 2-letter suffix) (reported by demmm on
IRC).
2016-10-29 00:52:38 +02:00
Teo Mrnjavac
fbe72b3663 Improve user-visible strings in SetPartFlagsJob. 2016-10-28 09:24:00 +02:00
Teo Mrnjavac
6e7dc0b437 Use the target system's boot name in partitioning summary widget. 2016-10-14 15:27:24 +02:00
Teo Mrnjavac
5796b05fda Allow disabling automated LUKS modes. 2016-09-26 13:14:54 +02:00
Chantara Tith
64db6d5ba1 Use device's immutable copy instead of rescanning. 2016-09-11 16:20:50 +07:00
Teo Mrnjavac
c316d22b08 Keep an immutable copy for every scanned Device* to avoid rescans. 2016-09-09 11:28:39 +02:00
Teo Mrnjavac
464336d609 Assert on nullptr Device*. 2016-09-09 11:28:39 +02:00
Chantara Tith
23026252a8 Update to KPMcore LUKS' API changes 2016-09-09 11:28:39 +02:00
Chantara Tith
aa10fe982a API Changes, logicalSectorSize -> logicalSize, totalSectors -> totalLogical. 2016-09-09 11:28:39 +02:00
Teo Mrnjavac
cbb2162ee9 Merge pull request #255 from stikonas/master
Port away from most cases of Q_FOREACH to C++11 ranged for loop.
2016-09-02 15:14:25 +02:00
Teo Mrnjavac
6c928e0404 Exclude ISO9660 volumes. 2016-09-02 15:12:48 +02:00
Teo Mrnjavac
ad219e1b8e Exclude loop devices with mounted children from devices list. 2016-09-02 12:08:00 +02:00
Andrius Štikonas
9f0ca042fe Port away from most cases of Q_FOREACH to C++11 ranged for loop.
In order to avoid deep copies, Qt containers over which we iterate must be const
The remaining unported cases require qAsConst (Qt 5.7) or std::as_const (C++17)
2016-09-01 16:46:14 +01:00
Teo Mrnjavac
849137c20b Use UUIDs instead of paths to match osprober entries with partitions. 2016-07-28 17:53:54 +02:00
Teo Mrnjavac
811261258b Try to load filesystem UUIDs into the OsproberEntryList structure. 2016-07-28 17:53:54 +02:00
Teo Mrnjavac
f13f6a1faf Add filesystem UUID to OsproberEntry structure. 2016-07-28 17:53:54 +02:00
Teo Mrnjavac
18b6e56271 nullptr safety. 2016-07-28 17:53:54 +02:00
Teo Mrnjavac
754cfc78b3 Make che color cache indexed by UUID instead of by path. 2016-07-28 17:53:54 +02:00
Teo Mrnjavac
003456594e Try with new enumeration but no cache reset. 2016-07-27 16:55:22 +02:00
Teo Mrnjavac
1da4360ed6 Go on with colors enumeration even when there's a new partition. 2016-07-27 16:53:17 +02:00
Teo Mrnjavac
c08eecbbaf Invalidate colors cache on delete. 2016-07-27 16:49:53 +02:00
Teo Mrnjavac
9f1f3a8f54 Add invalidateCache to ColorUtils. 2016-07-27 16:49:13 +02:00
Teo Mrnjavac
e9da3acd95 Fix EncryptWidget height. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
04ab71bad9 Fix default new partition text. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
9c90a2a500 Useless margins are useless. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
edeee85cd3 Write reuse Home check box string. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
e6f9714f84 Avoid homePartitionPath going out of scope. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
90bb64fb17 Pass current index by value. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
aaf85407fb Only look for a separate /home partition if a partition was found. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
6c6e4a1f88 Write reuseHome to GlobalStorage. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
8b0b4c73de Add Q_UNUSED where relevant. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
d44a3d831b Warning fixes: avoid C-style casts. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
30ff216dea Warning fix: implicit cast. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
90c06bd733 Warning fixage (init list order, lossy cast, Q_UNUSED). 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
c1e535a8e8 Hide reuse checkbox on action selection change. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
a17f369cee React to reuse home checkbox by setting /home mount point.
Rearranged Replace workflow a bit: onPartitionReplaceSelected is now
the on choice slot, which in turn calls doReplaceSelectedPartition.
onHomeCheckBoxStateChanged also calls doReplaceSelectedPartition if we
need to redo the Replace task with/without a separate home to keep.
m_reuseHomeCheckBox is hidden by default.
2016-07-22 16:36:26 +02:00
Teo Mrnjavac
bc345b3ddc Add "reuse home" check box to .ui. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
45ed210192 Add OsproberHomePartitionPathRole to PartitionModel. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
be3070ca48 Populate /home partition path, if any. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
1443b335d3 OsproberEntry.cpp be gone! 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
edecccfa46 Build it. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
5fe5b8a4f3 Add some guesswork to acquire a part node from a fstab entry for /home. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
f2f5a18984 Reading a system's fstab lines into the osprober entries list. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
098aa5546c Add struct FstabEntry to OsproberEntry.h. 2016-07-22 16:36:26 +02:00
Teo Mrnjavac
2951c88990 Init filesystems asynchronously. 2016-07-20 13:02:04 +02:00
Teo Mrnjavac
45f6e6c55b Rearrange asynchronous scan in PartitionCoreModule a bit. 2016-07-19 13:04:00 +02:00
Teo Mrnjavac
2c68802446 Reapply the action choice instead. 2016-06-29 18:46:02 +02:00
Teo Mrnjavac
b2b202d190 Do a full revert. 2016-06-29 18:34:02 +02:00
Teo Mrnjavac
f1a29033a2 Revert PCM before applying Alongside operation. 2016-06-29 18:21:38 +02:00
Teo Mrnjavac
9d4a636a16 Revert "Improve debug output in PartitionBarsView."
This reverts commit 9e186190fc.
2016-06-24 17:38:52 +02:00
Teo Mrnjavac
59f0e9cc2d Revert "Improve debug output."
This reverts commit 3d5ccb2712.
2016-06-24 17:38:45 +02:00
Teo Mrnjavac
e96c7f95ef Improve debug output. 2016-06-24 17:15:26 +02:00
Teo Mrnjavac
9888a4e5d3 Only make it dirty if something changes. 2016-06-24 17:06:39 +02:00
Teo Mrnjavac
a96b7c1596 Reset previous spinBox value on resizer widget reset. 2016-06-24 17:00:55 +02:00
Teo Mrnjavac
1f664f1eec Keep track of previous spinbox value. 2016-06-24 16:58:23 +02:00
Teo Mrnjavac
cd94768850 Revert "Try to work around spinbox dirty status change on apply issue."
This reverts commit 9c90d54eda.
2016-06-24 16:46:56 +02:00
Teo Mrnjavac
9c90d54eda Try to work around spinbox dirty status change on apply issue. 2016-06-24 16:28:17 +02:00
Teo Mrnjavac
5450a18c85 Copyright. 2016-06-24 16:05:33 +02:00
Teo Mrnjavac
2e173c183f Do not align partition boundaries unless explicitly requested. 2016-06-24 16:04:48 +02:00
Teo Mrnjavac
9d995f3625 Use length instead of calculating sectors count. 2016-06-24 15:10:20 +02:00
Teo Mrnjavac
4f41cf54a9 Hook up PartitionLabelsView to model. 2016-06-23 10:01:13 +02:00
Teo Mrnjavac
3940e2b09d Add config option for always showing partition labels. 2016-06-23 10:00:55 +02:00
Teo Mrnjavac
5520972e5a Add labels view to manual partitioning page. 2016-06-23 10:00:00 +02:00
Teo Mrnjavac
3d5ccb2712 Improve debug output. 2016-06-23 09:48:03 +02:00
Teo Mrnjavac
9e186190fc Improve debug output in PartitionBarsView. 2016-06-22 18:18:53 +02:00
Teo Mrnjavac
d6676b2245 Retry mke2fs before giving up. 2016-06-21 17:20:45 +02:00
Teo Mrnjavac
ce8ffb8e52 Bump KPMcore. 2016-06-17 15:24:14 +02:00
Teo Mrnjavac
49cb6d304d Add a controlled number of retries to fsck, 2sec apart. 2016-06-17 13:55:37 +02:00
Teo Mrnjavac
e7c5a2b1a5 Try running fsck twice before giving up. 2016-06-17 12:07:57 +02:00
Teo Mrnjavac
bea6b5f17e Stupid compilers are stupid. 2016-06-13 15:13:26 +02:00
Teo Mrnjavac
8ff943e5b5 Improve check for encryption status. 2016-06-10 17:52:54 +02:00
Teo Mrnjavac
7a03dc102d Update fields when the default filesystem is chosen. 2016-06-10 16:05:34 +02:00
Teo Mrnjavac
fe107ac762 Obey default FS type setting in EditExistingPartitionDialog. 2016-06-10 15:41:53 +02:00
Teo Mrnjavac
395fb340b7 Make the Create Partition dialog obey the default FS type setting. 2016-06-10 15:37:11 +02:00
Teo Mrnjavac
a00ebc01e7 Use EncryptWidget for relevant partition types in CreatePartitionDialog. 2016-06-10 15:22:40 +02:00
Teo Mrnjavac
d75d5c76fe Add EncryptWidget to CreatePartitionDialog.ui. 2016-06-10 15:22:40 +02:00
Teo Mrnjavac
99e719882f Add setText/reset to EncryptWidget, and fix tooltip string. 2016-06-10 15:22:40 +02:00
Teo Mrnjavac
18742d2afd Ignore encrypt widget if the choice is Manual. 2016-06-10 15:22:40 +02:00
Teo Mrnjavac
f5ff716369 Make everything obey the default filesystem type setting. 2016-06-10 15:22:21 +02:00
Teo Mrnjavac
6fa467715c Add default value to partition.conf. 2016-06-10 15:08:37 +02:00
Teo Mrnjavac
498af8deef Add defaultFileSystemType to settings. 2016-06-10 15:08:24 +02:00
Teo Mrnjavac
936e7fab7c Initial support for Alongside install with LUKS. 2016-06-07 17:35:39 +02:00
Teo Mrnjavac
fd2d24d650 Always show encrypt widget for Replace. 2016-06-03 17:56:31 +02:00
Teo Mrnjavac
4113207e00 Fix next status handling in alongside and replace. 2016-06-03 17:55:14 +02:00
Teo Mrnjavac
e84108e234 Add encryption support in PartitionActions::doReplacePartition. 2016-06-03 16:39:28 +02:00
Teo Mrnjavac
6cd1bf6b3d Initial work on having the Replace feature obey the encryption setting. 2016-06-02 18:29:17 +02:00
Teo Mrnjavac
c9fac9bc5c Manage PCM loading with QtConcurrent. 2016-05-26 15:35:24 +02:00
Teo Mrnjavac
0666fb4977 Defer PartitionCoreModule initialization so it doesn't block startup. 2016-05-26 15:08:37 +02:00
Teo Mrnjavac
a4ab8dad46 Hide encryption widget if not Erase. 2016-05-18 07:22:13 +02:00
Teo Mrnjavac
60dcba8735 Update next state slightly later. 2016-05-17 11:34:30 +02:00
Chantara Tith
a25a0ffa2c Update PartitionPage.cpp
increase readability.
2016-05-14 02:29:56 +07:00
Teo Mrnjavac
2050ce97d7 Merge pull request #241 from tctara/master
Disk selections in partitioner are not sticky[CAL-361]
2016-05-13 19:44:33 +02:00
Teo Mrnjavac
4c2a327d21 Close crypto devices in ClearMountsJob. 2016-05-13 17:11:13 +02:00
Chantara Tith
625bbb6a4b Disk selections in partitioner are not sticky 2016-05-13 19:26:03 +07:00
Teo Mrnjavac
a252f7ff32 Debug output. 2016-05-12 14:01:38 +02:00
Teo Mrnjavac
167b4fc0a2 Exclude zram from devices list. 2016-05-09 16:18:03 +02:00
Teo Mrnjavac
31106629cb Passphrase in storage. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
43ae4eac80 Get the mapper name, not the whole path. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
beb16a77f0 use actual mapperName, not suggestedMapperName. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
0b9c9022dd Yeah, partition["isLuks"], how about no. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
c83e67b421 Always declare whether a partition is LUKS in the map. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
cd304b7a6f Get luksUuid instead of innerFs UUID. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
b792ea0216 Rebuild autopartition proposal when encryption choice changes. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
126ad300ae Write mapperName for LUKS volumes in GlobalStorage. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
759ccae9f6 Tentative LUKS support for EraseAutopartition.
Partitioning only, install doesn't work yet.
2016-05-06 18:59:51 +02:00
Teo Mrnjavac
0cc9560a99 Hook up EncryptWidget in ChoicePage, plus improve next status handling. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
0dfe627d52 Add KPMHelpers::createNewEncryptedPartition. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
6e92a04320 Say hello to EncryptWidget. 2016-05-06 18:59:51 +02:00
Teo Mrnjavac
e122600689 Make sure to add KPMcore to include directories. 2016-05-05 07:57:56 +02:00
Teo Mrnjavac
dacb8f2a94 Make sure we don't hide actions based on osprober. 2016-03-18 12:28:54 +01:00
Chantara Tith
fd8c131b26 implement free-space partition replace install 2016-03-18 17:09:50 +07:00
Teo Mrnjavac
4f5230fc63 Revert "Temporarily allow read-only devices."
This reverts commit fc4a8b8628.
2016-03-15 18:07:45 +01:00
Teo Mrnjavac
fc4a8b8628 Temporarily allow read-only devices.
This way the KPMcore libpartedbackend scanner won't filter out Parted
devices of type UNKNOWN.
CAL-349
2016-03-15 16:45:48 +01:00
Teo Mrnjavac
8e5eb02d7d Bump dependency. 2016-03-11 13:36:54 +01:00
Teo Mrnjavac
83d440f37e Add note. 2016-03-10 13:16:18 +01:00
Teo Mrnjavac
a0055534a1 Disallow replace/resize on free space.
CAL-359 #close
2016-03-10 12:58:10 +01:00
Teo Mrnjavac
7d5795a6fd Empty path should yield nullptr Partition. 2016-03-10 12:43:00 +01:00
Teo Mrnjavac
24c1bf429e Don't fail when trying to replace unallocated space. 2016-03-10 12:33:19 +01:00
Teo Mrnjavac
055ff5533e Fixup strings. 2016-03-09 13:34:27 +01:00
Teo Mrnjavac
fb5b48528b Move ESP check to onLeave(). 2016-03-09 13:21:07 +01:00
Teo Mrnjavac
0c7b7ed089 Warn the user if going ahead from manual partitioning without ESP. 2016-03-09 12:54:59 +01:00
Teo Mrnjavac
49eea234ed Hide bootloader chooser on EFI. 2016-03-09 12:54:16 +01:00
Teo Mrnjavac
be9ec27350 Make findPartitionByMountPoint public. 2016-03-09 12:52:43 +01:00
Teo Mrnjavac
182ff03e04 Update createPartition call. 2016-03-08 16:26:20 +01:00
Teo Mrnjavac
e9d2312002 PCM::createPartition now includes SetPartFlagsJob.
Also remove outstanding SetPartFlagsJobs when deleting a new partition.
2016-03-08 16:25:43 +01:00
Teo Mrnjavac
3fa7318a37 Do set flags after showing dialog. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
5a134eb708 Copyright headers. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
ada0a080fc Add flags setting support when creating a partition. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
b83e91b951 Add flags ui to edit partition dialog. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
97108d0beb No implementation in header. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
cb9a984b11 setPartitionFlags in PartitionCoreModule. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
c233fb3b2d Allow setting flags when creating a partition. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
4b185ddb16 New SetPartFlagsJob. 2016-03-08 12:50:45 +01:00
Teo Mrnjavac
7d8b8eb7a6 Improve debug output for device detection. 2016-03-01 18:20:11 +01:00
Teo Mrnjavac
06ebf69afe Initialize all members (fix Coverity defect 98200). 2016-02-26 14:02:22 +01:00
Teo Mrnjavac
7e89e67059 Initialize all members (fix Coverity defect 98206). 2016-02-26 13:39:41 +01:00
Teo Mrnjavac
749a740ffa Ensure the resizing items aren't null (fix Coverity defect 121862). 2016-02-26 13:13:01 +01:00
Teo Mrnjavac
a0ac9d9f07 Don't dereference nullptr (fix Coverity defect 121863). 2016-02-26 13:00:58 +01:00
Teo Mrnjavac
53741f0d36 Initialize all members in ctor (fix Coverity defect 122658). 2016-02-26 13:00:58 +01:00
Teo Mrnjavac
1e3e1d22bb Fix build. 2016-02-23 14:43:12 +01:00
Teo Mrnjavac
3c8aee7b5e Add resizing state flag to Splitter items.
New iterator for Splitter items.
Use std::function instead of templates for type safety.
2016-02-23 10:50:48 +01:00
Teo Mrnjavac
bafaa6a225 Keep Splitter items on the stack. 2016-02-22 18:51:44 +01:00
Teo Mrnjavac
7bf0fa2575 Get better debug information. 2016-02-22 16:39:06 +01:00
Teo Mrnjavac
d6de5be8d0 Don't segfault on free space in Splitter widget. 2016-02-22 15:51:50 +01:00
Teo Mrnjavac
64498ea71b Keep the EFI system partitions model up to date with reverts. 2016-02-19 17:04:16 +01:00
Teo Mrnjavac
e91d213872 Improve setting ESP. 2016-02-19 16:57:49 +01:00
Teo Mrnjavac
e27b9fc295 Handle ESP selector visibility. 2016-02-19 16:51:24 +01:00
Teo Mrnjavac
a4831085fb Only override BIOS bootloader install path if there's no UI. 2016-02-19 16:42:51 +01:00
Teo Mrnjavac
7a89b53538 Refactor leave event of ChoicePage, add ESP mount point support.
PVS now calls ChoicePage::onLeave, which in turn runs ChoicePage::
doAlongsideApply and/or sets up the ESP mount point based on the UI
state if it's running in EFI mode and the action is Alongside or
Replace.
If setting up under BIOS, Alongside and Replace always install
the bootloader in the MBR of the current device.
2016-02-19 16:33:19 +01:00
Teo Mrnjavac
569f2d9d50 Use iterators instead. 2016-02-17 17:17:50 +01:00
Teo Mrnjavac
dc038dfe1e Useless code is useless. 2016-02-17 16:52:21 +01:00
Teo Mrnjavac
4781bc0f7a Use a QVector. 2016-02-17 16:46:51 +01:00
Teo Mrnjavac
c1b4320f5c Correctly handle free space in Splitter widget. 2016-02-17 16:41:05 +01:00
Teo Mrnjavac
7f6199ad37 Remember to update total. 2016-02-17 16:36:13 +01:00
Teo Mrnjavac
7bf918bfee Compensate for small partition visibility in Splitter widget. 2016-02-17 16:25:01 +01:00
Teo Mrnjavac
ea7b95e474 Maybe don't crash. 2016-02-16 14:50:01 +01:00
Teo Mrnjavac
9ecd23dfc7 In the labels view too. 2016-02-16 14:45:50 +01:00
Teo Mrnjavac
db69a860b0 Try to make it more responsive. 2016-02-16 14:27:54 +01:00
Teo Mrnjavac
9757de0d2c Restore the cursor. 2016-02-16 14:21:38 +01:00
Teo Mrnjavac
adbf0c7276 Try another approach. 2016-02-16 14:19:22 +01:00
Teo Mrnjavac
2c5d33839b Maybe we're restoring too much. 2016-02-16 14:14:35 +01:00
Teo Mrnjavac
eac6b4f983 Set an override cursor for the whole application. 2016-02-16 14:09:44 +01:00
Teo Mrnjavac
25a61d07a5 Don't uncolor partition. 2016-02-16 14:06:28 +01:00
Teo Mrnjavac
1aa8279cf8 Try the forbidden cursor when hovering an unselectable partition. 2016-02-16 13:56:07 +01:00
Teo Mrnjavac
5372245aed Copyright statements. 2016-02-12 17:19:30 +01:00
Teo Mrnjavac
485176d70d And always do that, please. 2016-02-12 16:48:29 +01:00
Teo Mrnjavac
12ec3bb74b Iterate over all partitions for canBeResized check, not just osprober. 2016-02-12 16:45:52 +01:00
Teo Mrnjavac
a9c6b47e5e Check whether a new primary partition can be created in canBeResized. 2016-02-12 16:36:50 +01:00
Teo Mrnjavac
c3404769dc Use new check as selection filter in view. 2016-02-12 15:02:49 +01:00
Teo Mrnjavac
935c4816d3 New partition replace check. 2016-02-12 15:02:49 +01:00
Teo Mrnjavac
ffe419751c Use the new canBeResized in ChoicePage. 2016-02-11 17:04:36 +01:00
Teo Mrnjavac
01eede3f6e Split out a canBeResized overload that takes a Partition*. 2016-02-11 16:52:21 +01:00
Teo Mrnjavac
984bc7ac08 Use it in summary. 2016-02-11 16:00:49 +01:00
Teo Mrnjavac
56e6509341 Use it in ChoicePage. 2016-02-11 16:00:36 +01:00
Teo Mrnjavac
b374404c6f Allow hiding extended partition in Labels view. 2016-02-11 16:00:07 +01:00
Teo Mrnjavac
61685cec86 Remove old count. 2016-02-10 17:39:42 +01:00
Teo Mrnjavac
fb4c22c274 Use correct count. 2016-02-10 17:31:00 +01:00
Teo Mrnjavac
0f756c7167 Use it in ChoicePage. 2016-02-10 17:02:42 +01:00
Teo Mrnjavac
65f5da5a8d Draw nested partition enable/disable support in Splitter widget. 2016-02-10 17:02:10 +01:00
Teo Mrnjavac
aaeb28e45e Don't round size estimate down to an int. 2016-02-10 16:00:24 +01:00
Teo Mrnjavac
5f3e5bf372 Consistent config item naming. 2016-02-10 15:41:32 +01:00
Teo Mrnjavac
56c340a607 Update default config file. 2016-02-10 15:39:52 +01:00
Teo Mrnjavac
3d5753e97c Better way to compute items in nested/non-nested partitions mode. 2016-02-10 15:33:31 +01:00
Teo Mrnjavac
d2600bc5dc Set the nested partitions mode in PartitionPage. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
7bb76c70ba Set the nested partitions mode in ChoicePage. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
1ed1841e89 Read the setting from partitions.conf and apply it in PVS. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
266f4fe8e3 nestedPartitions setting. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
086634ae7b Nested partitions mode support in PartitionBarsView. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
1d533fa2f3 Don't build Alongside page. 2016-02-10 15:00:02 +01:00
Teo Mrnjavac
b17b7a9c89 Asynchronous rescan on device change. 2016-02-09 13:23:23 +01:00
Teo Mrnjavac
877fa98ea6 Revert all devices if core dirty on device choice. 2016-02-09 13:03:14 +01:00
Teo Mrnjavac
ec5a464eda Make sure a default bootloader location is set. 2016-01-29 17:43:55 +01:00
Teo Mrnjavac
7f235525f2 Try slightly smaller action icons. 2016-01-29 17:10:28 +01:00
Teo Mrnjavac
30c38c4f4d Safer pointer. 2016-01-29 17:07:08 +01:00
Teo Mrnjavac
1bc6556b65 We don't need this any more... 2016-01-29 16:49:39 +01:00
Kevin Kofler
4322bf949e src/modules/partition/CMakeLists.txt: Remove obsolete TODO.
The minimum version was added in commit
8af91a519f.
2016-01-28 20:11:18 +01:00
Teo Mrnjavac
8af91a519f Require KPMcore 2.0. 2016-01-28 18:56:35 +01:00
Teo Mrnjavac
bef7444f47 ExpandableRadioButton is no more. 2016-01-28 18:44:27 +01:00
Teo Mrnjavac
5ccfc20258 Refactor bootloader picker into the bottom layout. 2016-01-28 18:43:35 +01:00
Teo Mrnjavac
e1a6085a1b Try different layout for first row in ChoicePage. 2016-01-28 13:04:44 +01:00
Teo Mrnjavac
619e82e5d3 Fixup string. 2016-01-28 13:03:22 +01:00
Teo Mrnjavac
2f9a45b3a7 Fixup strings. 2016-01-28 13:01:50 +01:00
Teo Mrnjavac
30351d125a Reduce spacing. 2016-01-28 12:53:54 +01:00
Teo Mrnjavac
1a11d8589a Fix layout. 2016-01-27 18:27:03 +01:00
Teo Mrnjavac
b6218272f3 Add BootInfoWidget to ChoicePage. 2016-01-27 18:23:56 +01:00
Teo Mrnjavac
6af0022e81 Yank boot stuff out from DeviceInfoWidget. 2016-01-27 17:55:38 +01:00
Teo Mrnjavac
fdc9d6fd0c Build it kthxbi. 2016-01-27 17:55:15 +01:00
Teo Mrnjavac
4223e22f5b New BootInfoWidget. 2016-01-27 17:54:58 +01:00
Teo Mrnjavac
9dbdeb932d Improve strings in DeviceInfoWidget. 2016-01-27 16:46:47 +01:00
Teo Mrnjavac
b811f9e261 Fixup strings. 2016-01-25 16:59:05 +01:00
Teo Mrnjavac
051282d9bf Do the same in PartitionBarsView. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
69f488f07b Override mousePressEvent to correctly handle selection filter. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
16da0bd8d8 I guess this is a better spot. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
7c7c635d87 Set filter on both views. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
ba01022d42 Set the filter function in Labels view. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
65230c7954 Add a SelectionFilter lambda for Alongside. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
ddf4878ec7 Apply SelectionFilter in Partition{Labels,Bars}View. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
f7f19eb617 SelectionFilter function type. 2016-01-15 18:40:59 +01:00
Teo Mrnjavac
f958f69218 Fix weird issue with alongside failing to create new partition. 2016-01-14 18:47:02 +01:00
Teo Mrnjavac
423d2dfc5c Make sure we update the splitter widget after a rescan. 2016-01-14 16:14:57 +01:00
Teo Mrnjavac
c0d06c3169 Fix labeling. 2016-01-13 18:48:30 +01:00
Teo Mrnjavac
601d67988d Fix shrink size computation.
I don't get how this could possibly ever have worked.
2016-01-13 18:23:50 +01:00
Teo Mrnjavac
983c16d991 Fix up views in summary. 2016-01-13 18:09:20 +01:00
Teo Mrnjavac
26c89e6806 Make sure Alongside operation is applied. 2016-01-13 18:02:03 +01:00
Teo Mrnjavac
8525cefb6b Fix next status handling. 2016-01-13 17:55:51 +01:00
Teo Mrnjavac
b5882a75d1 AlongsidePage is not used any more. 2016-01-13 17:50:05 +01:00
Teo Mrnjavac
5242536b2a Make doAlongsideApply public in ChoicePage. 2016-01-13 17:49:36 +01:00
Teo Mrnjavac
27d69502a3 Alongside apply slot. 2016-01-13 17:43:59 +01:00
Teo Mrnjavac
9a127f582f Update documentation. 2016-01-13 17:38:48 +01:00
Teo Mrnjavac
3f9aae9af6 Fix splitter handle placement on child partitions. 2016-01-13 16:23:12 +01:00
Teo Mrnjavac
9682520c61 Draw the handle when it matters. 2016-01-13 16:17:38 +01:00
Teo Mrnjavac
3238498e48 Don't crash. 2016-01-13 16:15:19 +01:00
Teo Mrnjavac
491e046824 Robust means not broken, please. 2016-01-13 16:12:51 +01:00
Teo Mrnjavac
5eb6f6799e Try to make it more robust. 2016-01-13 16:12:08 +01:00
Teo Mrnjavac
10c51528a9 Repaint viewport on selection change. 2016-01-13 15:16:01 +01:00
Teo Mrnjavac
ef0d46dd93 Years in header. 2016-01-13 15:16:01 +01:00
Teo Mrnjavac
110344e548 Actually set the selection model on the superclass. 2016-01-13 15:16:01 +01:00
Teo Mrnjavac
55c52e654a Try to force a repaint on selection changed. 2016-01-13 15:16:01 +01:00
Teo Mrnjavac
cb63d7d302 Draw the partitions in the alongside view even when not resizing. 2016-01-12 14:04:44 +01:00
Teo Mrnjavac
cad8845f12 Better name for alongside slot. 2016-01-12 14:04:25 +01:00
Teo Mrnjavac
b665b7192e Always repaint labels view on selection change, not just when hovering. 2016-01-12 13:45:32 +01:00
Teo Mrnjavac
1a48524a9a Repaint viewport on selection changed.
This issue wasn't noticeable earlier because every selection change
implied additional operations (in Replace) which used to trigger a
repaint at the right time for free. With this we make sure we get a
repaint.
2016-01-12 13:44:18 +01:00
Teo Mrnjavac
f2add6f2c2 Remove leftover return that was wrecking havoc. 2016-01-12 13:18:26 +01:00
Teo Mrnjavac
1bc0c41f02 Restore sizes. 2016-01-12 13:05:11 +01:00
Teo Mrnjavac
430a4feea9 Allow changing the to be resized partition without a reinit. 2016-01-12 12:48:39 +01:00
Teo Mrnjavac
4537103a43 Set up split widget when a partition is selected. 2016-01-12 11:43:02 +01:00
Teo Mrnjavac
d85bf01107 Initialized view is the best kind of view. 2016-01-11 19:26:14 +01:00
Teo Mrnjavac
37df381404 Proper parenting. 2016-01-11 19:07:48 +01:00
Teo Mrnjavac
80018e1d5b Signal-slot plumbing and splitter setup for Alongside. 2016-01-11 19:02:34 +01:00
Teo Mrnjavac
46ea8a484e Update year. 2016-01-11 17:30:33 +01:00
Teo Mrnjavac
92127e1abe Unbreak build. 2016-01-11 15:57:57 +01:00
Teo Mrnjavac
56292974a4 Bring PartitionSplitterWidget layout up to PartitionBarsView level. 2016-01-11 15:54:10 +01:00
Teo Mrnjavac
6a93f34c15 Move init logic into PartitionSplitterWidget. 2016-01-11 15:14:47 +01:00
Teo Mrnjavac
80d908e75b Document properly. 2016-01-08 18:09:19 +01:00
Teo Mrnjavac
08f9753aa2 Experimental: try to enforce a minimum partition size.
This breaks any hope of inline-resizing small partitions.
2016-01-08 17:55:04 +01:00
Teo Mrnjavac
b3f86925a8 Fix m_choice state. 2016-01-08 16:51:25 +01:00
Teo Mrnjavac
b422f646a6 Make sure the checked state change can happen. 2016-01-08 16:43:58 +01:00
Teo Mrnjavac
bc9ec8e5ba Fix build. 2016-01-08 16:37:45 +01:00
Teo Mrnjavac
3869338c39 Make the QButtonGroup a member in ChoicePage. 2016-01-08 16:35:50 +01:00
Teo Mrnjavac
85a6f2068a Refactor action choice handling with QButtonGroup.
This should improve the situation when unselecting an action without
selecting another one. Unselection can only happen when switching from
a device that supports the currently chosen action to a device that
doesn't support it, so the action gets hidden and unselected.
2016-01-08 15:38:01 +01:00
Teo Mrnjavac
53c27208f1 Also uncheck if hidden. 2016-01-08 14:50:09 +01:00
Teo Mrnjavac
f71ce22f3b Make sure to show all the relevant partitioning actions. 2016-01-08 14:45:58 +01:00
Teo Mrnjavac
0c05812c68 Update bootloader combobox when the selected device changes. 2016-01-07 17:24:01 +01:00
Teo Mrnjavac
64d296aa06 Sensible default to current device in bootloader picker. 2016-01-05 18:45:59 +01:00
Teo Mrnjavac
0cff1cd7ec Add deviceReverted signal to PCM and emit it. 2016-01-05 18:45:59 +01:00
Teo Mrnjavac
eb485f55c0 Make sure the Extended partition role doesn't carry over on replace. 2015-12-31 17:33:13 +01:00
Teo Mrnjavac
6ce932870f Clear selection on action change no matter what. 2015-12-31 16:58:50 +01:00
Teo Mrnjavac
74ba1df25f Try to manage preview visibility. 2015-12-31 16:55:18 +01:00
Teo Mrnjavac
38b90560cf Remove debug spam. 2015-12-31 16:36:24 +01:00
Teo Mrnjavac
22459c8fb8 Debug output. 2015-12-31 16:35:01 +01:00
Teo Mrnjavac
6dd639fd3c Try with rows. 2015-12-31 16:29:45 +01:00
Teo Mrnjavac
afef78d1af Don't enable next for replace by default. 2015-12-31 16:27:10 +01:00
Teo Mrnjavac
736d35840d Rely on item selection. 2015-12-31 16:24:46 +01:00
Teo Mrnjavac
59ec549617 Manage next button status. 2015-12-31 16:21:50 +01:00
Teo Mrnjavac
08d1c89f21 Don't forget to perform the autopartition operation when not resetting. 2015-12-31 16:12:52 +01:00
Teo Mrnjavac
73be443e22 And use it. 2015-12-31 15:39:32 +01:00
Teo Mrnjavac
5df78cc513 Add callback support to ScanningDialog statics. 2015-12-31 15:38:50 +01:00
Teo Mrnjavac
50ef1f1b70 Make sure we autopartition after the revert is over. 2015-12-31 15:18:34 +01:00
Teo Mrnjavac
f589e33fa5 Runtime signals, runtime errors. 2015-12-31 15:14:42 +01:00
Teo Mrnjavac
296bb412a8 Revert to runtime singal-slot syntax for easy disconnects. 2015-12-31 15:12:40 +01:00
Teo Mrnjavac
3cb293aa75 Avoid unnecessary casts. 2015-12-31 15:02:46 +01:00
Teo Mrnjavac
f01d802d40 No point in trying to reset and replace if nothing is selected. 2015-12-31 14:50:43 +01:00
Teo Mrnjavac
7e43c66661 Better order, probably. 2015-12-31 14:45:43 +01:00
Teo Mrnjavac
7dd669d997 Clear selection in before view. 2015-12-31 14:43:57 +01:00
Teo Mrnjavac
fbb92646d8 Asynchronous revert for Erase operation. 2015-12-31 14:40:40 +01:00
Teo Mrnjavac
5c0627a9d3 Remove debug spam. 2015-12-31 14:40:04 +01:00
Teo Mrnjavac
64655d92a1 Try to ensure the connection for the replace operation is unique. 2015-12-31 14:38:28 +01:00
Teo Mrnjavac
d6e773e220 Debug output. 2015-12-31 14:26:31 +01:00
Teo Mrnjavac
e061385f4b Avoid multiple connects. 2015-12-31 14:17:36 +01:00
Teo Mrnjavac
db36f18399 Don't overcomplicate. 2015-12-31 14:16:33 +01:00
Teo Mrnjavac
4039d8d4db Make on-action-select rescan also async. 2015-12-31 14:14:47 +01:00
Teo Mrnjavac
44bc06eb4c Use it in manual partitioning. 2015-12-31 14:14:25 +01:00
Teo Mrnjavac
427b930531 Add convenience overload for ScanningDialog::run 2015-12-31 14:13:43 +01:00
Teo Mrnjavac
2b862bf431 And in manual partitioning. 2015-12-31 13:56:19 +01:00
Teo Mrnjavac
093c7b042d Use it in ChoicePage. 2015-12-31 13:56:11 +01:00
Teo Mrnjavac
e1140b6fa8 Add static concurrent support to ScanningDialog. 2015-12-31 13:55:33 +01:00
Teo Mrnjavac
d28946040f Use ScanningDialog in replace operation. 2015-12-31 13:19:50 +01:00
Philip
91e1e4af6b [partition-module] fix 'QString::arg: Argument missing' issue 2015-12-31 00:56:46 +01:00
Teo Mrnjavac
c7ae18df4d Keep selection in sync between tree and bars view in manual partitioning 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
523c25f1e2 Make rescan asynchronous in manual partitioning, and use ScanningDialog 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
a1e4667ebe New revertAllDevices operation in PCM. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
90e028a2b0 New ScanningDialog with a spinner. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
86399ece26 Trigger core reset when advancing to manual partitioning. 2015-12-30 17:27:13 +01:00
Vedant Agarwala
66d378d338 Showing a tooltip on hover in Partition Labels
Tooltip has partition path, file system type, size of partition
2015-12-30 17:27:13 +01:00
Teo Mrnjavac
f31a45e53a Clean up a bit. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
6db6dc0e08 Debug output. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
4f12aa8dd1 Critical to always have a fresh device. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
14f4335420 Lock the whole replace operation in a mutex. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
9847b8efa9 Try to invalidate whole PartitionModel on replace. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
2a61114d9e Make after partition views members in ChoicePage. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
8a44ffe462 Either revert or clear jobs, not both. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fbb293c15a Back to QFutureWatcher, but we allocate/destroy it ourselves.
This reverts commit c64eef54f6584b26f14933f0c8e600d5ad2dacbb.
2015-12-30 17:27:13 +01:00
demmm
496d917d94 add strong in selectLabel 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d635709833 Maybe a plain QTimer is enough. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
cd8b7619d0 Use asynchronous device revert. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
dbef198bac Add asynchronous device revert. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
019faf730c Revert "Test out a way to make the rescan asynchronous."
This reverts commit e3f28189ced7aa22b3b7a6dc1506a17cbc1325b5.
2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d742431ee9 Revert "Force a device state preview update after async rescan."
This reverts commit 717a3d47ca572c28f67757ddf96b63af66d97e14.
2015-12-30 17:27:13 +01:00
Teo Mrnjavac
95239af830 Force a device state preview update after async rescan. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
5f282d50dc Test out a way to make the rescan asynchronous. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
16d10afcde Revert "Trying out something really horrible."
This reverts commit 10d622b0339697c57d4072b34052e657136145a5.
2015-12-30 17:27:13 +01:00
Teo Mrnjavac
bd573233ec Trying out something really horrible. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
ace0d30eb4 PCM::createImmutableDeviceCopy can be static. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
1a882758ca Revert Replace button to PrettyRadioButton. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
43c67310db Hide from labels view short instances of free space. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
3732f3e5b2 Trim /dev/ from visible partition paths. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
18755314fd Fix strings and use status text label. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
3009eee622 Add hline and status text label. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
ef411757af Improved string for Erase. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
c41820c000 Improved string for Replace. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
bf5d0d8862 Strings: s/volume/partition/ 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
071c02086a Update last page status. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
dcd48badae Try with a full revert. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
157a3f8ed2 devicePath != partitionPath. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
a8f06d00d0 Debug info. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
e2f9a5b93c Maybe not. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
6c614b946b A full view delete/recreate on partition selection :( 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
8e8fcf936c Debug info. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
65278605fe clearJobs is enough on replace partition selection. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
ad2ce6b6d4 Refresh model on forgetChanges. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
15e409a107 Don't reparent model managed by PCM. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
275b68cf5c The PartitionModel should be owned by the PCM. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
4859431fe9 Maybe the deviceNode check isn't necessary. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
015aeb6b07 Debug output. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
423c9ccfb7 Reset the partition model before swapping the new Device into the DM. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
dfededc4b4 Use revertDevice in ChoicePage, and always use a fresh Device*. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0a0a0d58e0 PartitionCoreModule::revertDevice. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fe5ab75e82 Whitespace. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0bf2389b1a Add swapDevice to DeviceModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
1d553407b9 And remove swapDevice from BootLoaderModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
cbbaa8b592 swapDevice in BootLoaderModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
b767f0b18f Select partition to replace from the current DeviceModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
5655b4f1da Add PartitionPathRole to PartitionModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
2258c806ae Make the bars/labels views members in ChoicePage. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
b663ce5f74 Add PartitionPtrRole to PartitionModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
1a4b6b1c9c Isolate painter in selection square. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d164ec4d91 Remove ReplaceWidget. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d0ee43172c Handle selection behavior on current state preview views. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
7102596729 Add Q_OBJECT macros. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0c9d64878a Only enable selection when it makes sense 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
1c279dac24 Make bars and labels share the selection model. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
f2093be353 Full selection and hover support in labels view. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fd33eb71ba Add some more string guesswork to labels view, with FS pretty names. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
df13b3ba08 Add separate FileSystemTypeRole to PM, and output FS PrettyNames. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
2986625cfd PrettyName generator for FileSystem::Type. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
6af901a675 Use BootloaderEntryName from Branding for target root partition id. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0c840abdc5 Allow setting a custom new root name in Labels view. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
e277467ed4 Run osprober after we have a working DeviceModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fc54b9bf40 Debug spam. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
87a31a0514 Tweak labels view margin. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
f736ace996 Update Erase disk string. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
cda99a2a65 New Alongside strings. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
37634e1e5a New Replace strings. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d27ac4c041 New Erase disk strings. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
48d0de2e08 Let's try with no main message. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
326e566927 String changes. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fe4cf3c4ec Add some spacing between label view item rows. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0af434bfc1 Factor out text building for label view items for proper sizeHint. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0be736acf7 Improve information in labels view. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
a75c69805f Add IsPartitionNewRole to PartitionModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
c765de654c Add filesystem label role. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
0224811bf6 Move Osprober to PCM and add Osprober roles to PartitionModel. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
7b66514bf5 Clean up debug spam. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
333214f7ca Finally fix selection. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
f154a135d8 Test out awful hack to try to make selection work properly. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
3fc354284a Improve debug output. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
8acb70de5c Use currentIndex instead of selection. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
99a5ac8e4d Debug output. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
7fce08459b Don't skip extended partition. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
f64d210496 Enable selection behavior and add debug output to Labels view. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
fecb50779a Only paint selection and hover if selectionMode is not NoSelection. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
2f35aa1258 And selectionModel() better exist... 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
584ca6da18 Rely on selectionModel() instead of currentIndex(). 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
517f958616 Magic numbers for view height. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
df9cec14f7 More arbitrary magic to try to fix all the pixels properly. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
9b60040bab Magic numbers. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
a27a5496b7 Try a statically calculated selection margin. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
798a491296 Adjust padding. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
5aa8cd4a9b Use semitransparent overlay rounded rect for PBV selection. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
7c80f846f1 Add debug output. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
c2cb367753 Remember QPersistentModelIndex rather than row for hover effect. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
36f30b1ede Support selection and better hover. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
cc5520edda Add hover and click support to PartitionBarsView. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
a9e241d288 Fix strings. 2015-12-30 17:27:13 +01:00