Commit Graph

1410 Commits

Author SHA1 Message Date
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
Teo Mrnjavac
1ad6c7e8ac Use new Labels view. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
eed8d3b83b Split out Labels view from Bars view.
Both are QAbstractItemViews and can be used on top of a PartitionModel,
together or separately.
2015-12-30 17:27:13 +01:00
Teo Mrnjavac
b65fe87503 PartitionPreview is now PartitionBarsView. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
3beebf4137 String improvement. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
37af36499c Layout fix. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
78808251b9 Fix sizeHint calculation, useless padding is useless. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
ccc93d2c64 Better partition label square size. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
25e388aa29 Add CalamaresUtils::defaultFont() 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
93c515ccef Add documentation for partition table types. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
83cbe16918 Fixup preview height. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
84c254ced2 Use DeviceInfoWidget in ChoicePage. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
17f1f5f61f Load those icons. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d4117b333c New icons for DeviceInfoWidget. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
9d9de792e5 New DeviceInfoWidget to educate the user. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
4c90a68241 Make choice text refer to the currently selected device. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
b31ac92d7e And make it build. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
3bf1fe716f Yank out compact mode, refactor layout, fix strings. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
c6a7c54904 Preview widget height. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
c717a08d6d Unbreak 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
abfc009872 Actually apply changes. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
2320ce9c04 Layout fixes. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
47b5c6eeb4 Use ReplaceWidget in ChoicePage. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
26ac809d6e Don't instantiate ReplacePage in PVS any more. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
46fcca63c3 Refactor ReplacePage into new ReplaceWidget. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
351c69c300 Remove obsolete code.
CAL-340 #close
2015-12-30 17:27:02 +01:00
Teo Mrnjavac
742b2013f9 Sleep for 3, not 30s. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
0fa19cca68 Fix the last page fix. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
51d0d9f9b4 Disable next on last page. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
22470ba4af Disallow next if the root password is not reused or provided.
CAL-344 #close
2015-12-30 17:27:02 +01:00
Teo Mrnjavac
8a6dcfbe2f Move ReplacePartition operation to PartitionActions. 2015-12-30 17:27:02 +01:00
demmm
f267410dbb different names 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
a79575afe8 Create erase button in a separate method. 2015-12-30 17:27:02 +01:00
demmm
c89bd1db23 implement https://calamares.io/bugs/browse/CAL-341 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
e0b1290b8c Update the bootloader picker when the chosen device changes. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
a65be8bfda Add the expanded signal to ExpandableRadioButton. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
526180dde2 Use ExpandableRadioButton in ChoicePage for Erase on MBR. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
02c345e3be Use QGridLayout in ExpandableRadioButton to align widget with label. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
40ee57bed1 Useless margin is useless. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
94eda832f6 Build it. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
32e97c6ef2 Initial commit for ExpandableRadioButton.
ExpandableRadioButton extends PrettyRadioButton with an optional
user-provided QWidget at the bottom, which only shows up when the
button is checked.
2015-12-30 17:27:02 +01:00
Teo Mrnjavac
e83fdfbd13 Make PrettyRadioButton inheritable. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
368d3fe747 Apply partitioning action choice separately from preview, and update. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
e59418e880 Add crash utility to CalamaresUtils. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
391b52427a Properly handle the edge case of a PCM::revert and null deviceModel. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
9b2f04daf6 Add reverted signal to PCM. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
36aa8f736a Wrap choice items in a ScrollArea. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
0a72f22a34 WIP: go to next page on next if erase selected. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
32fd12d501 Add label to PCM state preview. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
65fd43729c Use PartitionActions in ChoicePage for Erase.
Document ChoicePage because it's quite long and confusing.
Add PCM state preview and update it when a choice is selected.
Smaller icons.
Update strings.
2015-12-30 17:27:02 +01:00
Teo Mrnjavac
2e9e1782cf Remove EraseDiskPage from PartitionViewStep. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
9167a34f2e Kill EraseDiskPage, add PartitionActions. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
6de8158bec It is a good idea to initialize pointer members in the ctor. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
eeceed91eb Refactor ChoicePage workflow, use rescanned state for Preview widget. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
d9421f586f Sync layout with PartitionPage. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
c031ed677f String fix. 2015-12-30 17:27:02 +01:00