Commit Graph

467 Commits

Author SHA1 Message Date
Adriaan de Groot
8a7f32d3aa [libcalamaresui] Polish ImageRegistry
- do static initialization more carefully
 - float -> qreal (double) because that's what the Qt API expects,
   to reduce type-conversion warnings
 - apply current coding style
2019-08-09 16:52:54 +02:00
Adriaan de Groot
ec08a293b2 [libcalamaresui] Reduce compile warnings
- "this" isn't used in the lambda; in future it might be if the
   lambda needs to get the configuration from settings.
2019-08-09 16:43:50 +02:00
Adriaan de Groot
91d327b224 [libcalamaresui] Paste TCP port is quint16
- no sense in feeding in an int (and getting a compiler warning
   for narrowing) into something that by spec is a 16-bit value.
2019-08-09 16:41:59 +02:00
Adriaan de Groot
739363cecd [libcalamaresui] Fix initialization order (reduce warnings) 2019-08-09 16:28:29 +02:00
Adriaan de Groot
e31a498c9b [calamares] Move DebugWindow
- This is a fairly specialized class, for use only in the
   whole-application where it ties in with the module system.
   Move it to the application directory and slim down the UI library.
 - Include it from the new location.
 - Add UIC to Calamares (the application) because there's now
   a designer-based widget in it.
2019-08-09 06:54:31 -04:00
Adriaan de Groot
85d28af1e2 [libcalamaresui] Don't include QJsonModel 2019-08-09 06:34:38 -04:00
Adriaan de Groot
695e16bb87 [libcalamaresui] Drop QJsonModel from the library 2019-08-09 06:21:07 -04:00
Adriaan de Groot
c83e95e66a [libcalamaresui] Chase 3rdparty move
- Widgets need to #include from different path
2019-08-08 12:42:02 -04:00
Adriaan de Groot
2166eb4511 [libcalamares] [libcalamaresui] Adjust for moved sources 2019-08-08 10:47:14 -04:00
Adriaan de Groot
937ff608eb [libcalamaresui] Move spinner widget to 3rd party 2019-08-08 10:27:52 -04:00
Adriaan de Groot
47dbf9ab0c [libcalamares] Move 3rd party code to separate dir 2019-08-08 10:23:36 -04:00
Adriaan de Groot
beeda24423 [libcalamaresui] Fix build of the PythonQt bindings
- Change to std::chrono::seconds wasn't tried against the (optional)
   PythonQt bindings, leading to build failure. Reported by Phil (Manjaro).

FIXES #1210
2019-08-04 08:52:33 -04:00
Adriaan de Groot
e2504627aa [libcalamaresui] Chase timeout-type into the UI library
(TODO: move ProcessJobModule to libcalamares, it has no UI dependency)
2019-08-01 22:51:52 +02:00
Adriaan de Groot
20cf0c8f3d [libcalamaresui] Remove unused code
- This operator is declared, yet never defined or used. The definition
   was removed in fb44fb97b6.
2019-08-01 11:32:32 +02:00
Adriaan de Groot
566be48f16 libcalamaresui: rename and document pastebin method 2019-07-30 15:47:44 +02:00
Adriaan de Groot
2aae30f517 libcalamaresui: don't rely on translations to interpret button
- Keep the debug-failure-call in the code, but commented out
 - Check ButtonRole, rather than the button's text, to see
   which one it is.
2019-07-30 15:43:20 +02:00
Adriaan de Groot
675a35bb2e libcalamaresui: when displaying pasted URL, don't be fancy
- Just call the static method and then quit, rather
   than being careful about allocations.
2019-07-30 15:28:17 +02:00
Adriaan de Groot
fac9ccde88 libcalamaresui: document magic constants in question() 2019-07-30 15:15:41 +02:00
Adriaan de Groot
630694b242 libcalamaresui: apply coding style to viewmanager 2019-07-30 15:12:05 +02:00
Adriaan de Groot
d49ddf6463 libcalamaresui: factor out the pastebin functionality
- While called from the ViewManager (to post the debug log)
   this isn't really part of the ViewManager itself, so factor
   out the pasting code into its own file.
2019-07-30 15:09:25 +02:00
Adriaan de Groot
8f7d183a0c libcalamaresui: don't always fail
- The paste-branch was merged too soon. Now undoing the damage.
2019-07-30 14:41:42 +02:00
Adriaan de Groot
edd2cc7244
Merge pull request #1186 from bill-auger/master
implement post log to paste server (needs some cleanup)
2019-07-29 13:26:13 +02:00
Adriaan de Groot
e2028cf85b [libcalamaresui] Warnings--, no copy constructor for CDebug 2019-07-04 16:20:26 +02:00
bill-auger
c90d3b2016 squashme WIP upload log to paste server - more error checks and validations 2019-06-30 09:52:31 -04:00
bill-auger
e096631c54 squashme WIP upload log to paste server - refactor error checking 2019-06-30 09:52:29 -04:00
bill-auger
e7960474d4 implement post log to paste server 2019-06-30 09:50:24 -04:00
Adriaan de Groot
18bf925a11 [libcalamaresui] Name pending requirements checks
- Give each check a name (based on the module it runs for, so
   there might be overlaps when there are multiple module instances).
 - Log the remaining checks each time the timeout fires, to help
   figure out which one is hanging.
2019-06-27 15:30:32 +02:00
Adriaan de Groot
0bd2bfa708 CI: apply coding style to libcalamaresui/modulesystem 2019-06-27 15:15:47 +02:00
Adriaan de Groot
08b24b9ea2 [libcalamaresui] Fix Doxygen comments 2019-06-26 12:12:17 +02:00
Adriaan de Groot
79dc9e3463 [libcalamares] Update button icons as we go along
- Adapt the button icons (previous, next, do-install, all-done)
   to the state of the buttons and the corresponding text.
2019-06-18 22:54:41 +02:00
Adriaan de Groot
b3d9af4cae [libcalamaresui] Apply correct button labels
- updateButtonLabels() knows all the special cases for
   buttons, so use it when the language changes instead
   of setting up some possibly-wrong values.
 - One edge case that this fixes is: have **just** the welcome
   page before the first exec section in sequence. Then the
   *next* button label was *next* instead of *install*.
2019-06-18 22:45:49 +02:00
Adriaan de Groot
780fe125f7 [libcalamaresui] Give the buttons icons
- Next, Back, Cancel/Quit have somewhat-appropriate icons.
2019-06-18 16:18:18 +02:00
Adriaan de Groot
34b1a250ba [libcalamares] Improve warnings when module descriptor files are bad 2019-06-18 12:06:13 +02:00
Adriaan de Groot
5fdaeaa899 [libcalamaresui] Improve wording when module is missing configuration 2019-06-18 11:58:03 +02:00
Adriaan de Groot
c7d09f06c5 [libcalamaresui] QML Retranslation since Qt 5.10 2019-06-17 12:23:31 +02:00
Adriaan de Groot
58f6635ca0 [libcalamaresui] Force retranslation on language change 2019-06-17 11:52:20 +02:00
Adriaan de Groot
f9bd0fba10 [libcalamares] Handle async QML loading
- The component isn't ready immediately, so instatiate
   once it is fully loaded and ready
 - Edge case if the execution view step is already visible, then
   start the show (because a previous call to onActivate() will
   have missed it).
2019-06-17 11:47:25 +02:00
Adriaan de Groot
193bcbde71 [libcalamaresui] Use setSource() for API version 1
- Just avoid all the componentized loading and do the
   synchronous load-compile-setContent thing.
2019-06-17 11:17:06 +02:00
Adriaan de Groot
15ab98cb26 [libcalamaresui] Use API version to load slideshow differently 2019-06-17 11:05:56 +02:00
Adriaan de Groot
148b829591 [libcalamares] Introduce slideshowAPI setting 2019-06-17 10:58:14 +02:00
Adriaan de Groot
075f0787f9 Merge branch 'master' into issue-1152 2019-06-16 13:11:03 +02:00
Adriaan de Groot
71209b323a [libcalamaresui] Call QML methods on start and stop
- Use onActivate() and onLeave() in QML as well, to start and stop
   the slideshow.
2019-06-16 13:06:34 +02:00
Adriaan de Groot
68e6bd676e [libcalamaresui] Instantiate QML at load time
- By instantiating only on activation, an ugly "white" gap
   appears where there is no widget at all. So instantiate
   earlier so that the widget already exists and is painting
   by the time the slideshow part is visible.
 - This makes the net effect of this branch so far zero:
   the slideshow is still loaded and started when Calamares starts.
2019-06-16 12:15:41 +02:00
Adriaan de Groot
c233bbb23d [libcalamaresui] Handle no-finished-page scenarios
- From an exec section, next() is called automatically when
   all the jobs in that section are done.
 - If there **is** no next section (e.g. there's no finished
   page to show after the exec), then m_steps.at() would assert
   on an out-of-range index.
 - Introdcuce a helper predicate isAtVeryEnd() which handles both
   out-of-range and normal at-the-end scenarios.
 - If there's no page following the exec section, stay with the
   slideshow but update buttons to match the normal last-page
   behavior, and don't ask about cancel (since we're done).
2019-06-07 21:54:07 +02:00
Adriaan de Groot
2b5cf9e613 [libcalamaresui] There is code in Qt for setting up QML widgets
- The not-publicly documented setContent() method does all the
   parenting and resizing needed; some of this isn't available
   from outside of the widget either.

The QML slideshow now sizes and re-sizes correctly.
2019-06-03 10:38:29 +02:00
Adriaan de Groot
f52d62034b [libcalamaresui] Manual QML loading trickery
- The slideshow item needs a parent to be visible,
 - QML gets size 0,0 unless explicitly sized to the surrounding widget.
2019-06-03 10:18:24 +02:00
Adriaan de Groot
103decab68 [libcalamaresui] Create the slideshow on activation
- Load QML on startup, compile async
 - Create QML component when the page is reached.
 - On leave, stop the slideshow (otherwise, e.g. timers will keep running)

This should move some of the delay from loading a large
slideshow forward as the engine is already initialized when
we reach the install / slideshow page.
2019-06-03 10:16:52 +02:00
Adriaan de Groot
ff03235e33 [libcalamaresui] Load QML on startup 2019-06-02 13:19:16 +02:00
Adriaan de Groot
5973dbf74c [libcalamaresui] Shuffle code for QML slideshow
- Create widgets earlier
 - Group layouting code
 - Add retranslator only once, not on every activate
 - Load QML only once, preferably at activation
2019-06-01 23:39:39 +02:00
Adriaan de Groot
cbe14bbf03 [libcalamaresui] Rename m_slideShow -> m_qmlShow
- It could be any QML, so it's not a slideshow per se.
 - Minor prep-work for fixing up loading times.
2019-06-01 23:26:08 +02:00