Commit Graph

62 Commits

Author SHA1 Message Date
Adriaan de Groot
5e7746668e Merge branch 'calamares' into refactor-translation 2021-09-06 15:38:42 +02:00
Adriaan de Groot
ad76a2cbe8 [welcome] [welcomeq] Move requirements to Config
The Config object can hold all of the configuration information,
including also the requirements-checking parts. Move requirements-
checking configuration there, so it is shared and consistent
across welcome and welcomeq, regardless.

This repairs the test that expects the Config object to handle
**all** of the configuration, too.
2021-08-26 16:39:55 +02:00
Adriaan de Groot
bc9d8fb13a [libcalamares] Rename files Label -> Translation 2021-07-28 14:22:28 +02:00
Adriaan de Groot
03e621f4a2 Modules: clean up linking
- do not link (explicitly) to Calamares libraries, the CMake
  functions do that automatically.
- while here, tidy and remove commented-out-bits
- while here, remove unneeded includes
2021-07-26 15:04:43 +02:00
Adriaan de Groot
a2180936ef CI: apply coding style across the entire codebase again 2020-08-26 02:28:43 +02:00
Adriaan de Groot
1cd9b93a22 REUSE: Giant boilerplate cleanup
- point to main Calamares site in the 'part of' headers instead
  of to github (this is the "this file is part of Calamares"
  opening line for most files).
- remove boilerplate from all source files, CMake modules and completions,
  this is the 3-paragraph summary of the GPL-3.0-or-later, which has
  a meaning entirely covered by the SPDX tag.
2020-08-26 02:28:38 +02:00
Adriaan de Groot
30a85668b7 REUSE: (GPL-3.0-or-later) C++ modules 2020-08-26 02:22:49 +02:00
Adriaan de Groot
1b23520f20 REUSE: (CC0-1.0) module descriptors and configuration files
In spite of there being considerable documentation sometimes in the
config file, we go with CC0 because we don't want the notion of
'derived work' of a config file.

The example `settings.conf` is also CC0. Add some docs to
it while we're at it.
2020-08-26 02:22:49 +02:00
Adriaan de Groot
95ceb1e8c7 REUSE: (BSD-2-Clause) all CMakeLists
The build instructions are not that interesting, it's a toss-up
between CC0 and BSD-2, but because other CMake bits are BSD-2-Clause,
apply that to more CMakeLists. The copyright date isn't all that
accurate, but these are just inconsequential files.

While here, tidy up and get rid of some useless intermediates.
2020-08-26 02:05:46 +02:00
demmm
e2a5eb6840 [welcomeq] language bar icon configurable
similar functionality as in welcome module, set in welcomeq.conf
2020-08-07 12:44:07 +02:00
demmm
a617dba85e [welcomeq]re-add the donate button example to welcomeq.conf 2020-06-09 13:34:16 +02:00
Adriaan de Groot
d22178ca5e [welcomeq] Show filtered list of requirements
- only the unsatisfied ones are shown; no need to filter and
  fiddle about in QML
2020-06-09 12:13:44 +02:00
Adriaan de Groot
d1165bea56 [welcomeq] Use just one component to display requirements
- Do all the status indication in one component, but vary
  the top-level message based on whether the mandatory
  requirements are satisfied.
- Vary color and icon based on each requirement's *mandatory* setting.
2020-06-08 10:22:03 -04:00
Adriaan de Groot
8255bc3fc1 [welcome] Sanitize example configurations
- remove all duplicated documentation from ; it's the same as
  `welcome.conf` in all respects except for *qmlSearch*.
2020-06-08 08:33:48 -04:00
demmm
73eb718c08 adding needed geoip section to welcomeq.conf
see https://github.com/calamares/calamares/issues/1427#issuecomment-640531710
2020-06-08 13:25:47 +02:00
demmm
e2c99eeb5e [welcomeq] adjust spacing
make sure the listviews fit in the default window size without overlapping
the language bar
2020-05-17 12:37:01 +02:00
demmm
153d605bb6 [welcomeq] use negatedText for better text on missing 2020-05-14 23:11:05 +02:00
demmm
a85ff30ad4 [welcomeq] smaller font size
correct color order Requirements.qml
2020-05-14 20:01:50 +02:00
demmm
fed89badd4 [welcomeq] connected to RequirementsModel
clean up obsolete lines in welcomeq.qml
add requirement section from welcome.conf to welcomeq.conf
data shows correctly in Recommended.qml, fails to show any in Requirements.qml if run without admin rights
2020-05-14 19:00:02 +02:00
Adriaan de Groot
47979555fe CMake: optionally disable QML
This makes it possible to remove QML from Calamares, possibly yielding
a smaller, lighter installer; it takes with it the nice slideshow,
modern configurable navigation and the QML UIs built for various modules.

By default, WITH_QML is on and the "normal" feature set is retained.

- look for Qml modules only when WITH_QML is on (the default)
- look for Network, since that's pulled in only implicitly
- disable the QML Calamares models (modules/*q) if no QML is
  enabled; longer-term plan is to merge the **pages** back to
  the "upstream" modules, and have things be run-time switchable,
  but that's not here yet. Also disable the notesqml module when
  QML is off.
2020-05-14 16:31:39 +02:00
Adriaan de Groot
3f9878afc1 [welcomeq] Use the model properties to show recommendations and requirements 2020-05-12 17:07:50 +02:00
Adriaan de Groot
1a1fde1885 [welcome] [welcomeq] Chase API change for requirements progress 2020-05-12 17:07:15 +02:00
Adriaan de Groot
e930c74e85 [welcomeq] Coding style
- Apply coding style tool
- Remove commented-out cruft
- Drop TODO's that don't apply anymore
2020-05-12 14:47:31 +02:00
Adriaan de Groot
8306de731a [welcome] Setting requirements from own reqs is totally wrong
- The requirements are collected by ModuleManager, checked
  by an internal RequirementsChecker and changes to the
  requirements state are all signalled from ModuleManager.

By connecting the requirements in the welcome modules' Config
only to their own configs -- and immediately checking them,
which is bad on its own -- we end up with a disconnect between
what the ModuleManager says about requirements, and what
the welcome modules report on.
2020-05-11 16:30:26 +02:00
demmm
1ece171597 start of adding requirements to welcomeq
just QML, no real connections yet
hardcoded to not visible
not clear if requirementsModel is available to welcomeq
2020-05-08 13:37:50 +02:00
Adriaan de Groot
713132d4af [welcome] Move GeoIP loading into Config
- The Config object can handle GeoIP loading on its own. Both
  View steps that used this had a derpy view->setCountry() that
  didn't really do anything with the view anymore.
2020-05-06 15:46:23 +02:00
Adriaan de Groot
6434374bf3 [welcome] Move languageIcon loading into the Config object
- The QML module had an additional check that the normal one
  did not; add it in the merged code.
2020-05-06 15:24:08 +02:00
Adriaan de Groot
120a2b0f03 [welcome] Move get-the-show*Url code into Config
- Since this is configuration-loading, put it in the Config
  class; reduces code duplication between welcome and welcomeq.
2020-05-06 15:08:31 +02:00
Adriaan de Groot
70054e5db4 [welcome] Chase Branding API change 2020-05-04 12:52:14 +02:00
Adriaan de Groot
156a473565 [welcomeq] Hook the translations up to the language combobox 2020-04-30 18:04:14 +02:00
demmm
828448b2ff [welcomeq] make release notes part of welcome window
use Loader option for those notes too, commented out file shows it is possible to load from anywhere
2020-04-20 16:47:12 +02:00
demmm
249150dd1b [welcomeq] add language bar
reads data from languagesModel correctly, debug added to see index changes
code cleanup
button layout improved
install info text added, better spacing of text
about button no longer commented out, 3 reasons:
- info provided by any about is standard, will be odd if it can't be found
- about.qml is a seperate file, can be completely adjusted
- not showing it takes away the options for new QML cala users to see what is possible with Loader, thus stopping new possible contributors
2020-04-20 15:00:04 +02:00
demmm
34292618d8 welcomeq buttons connecting
minor spelling corrections
2020-04-02 20:16:05 +02:00
demmm
2c2bba5525 actually set About button to false... 2020-04-01 16:21:43 +02:00
demmm
b3f59cee25 filling About in QML, button still disabled
using Loader, can be reused for other widgets conversion
leave onClick example with full path, commneted out
title text for About is hardcoded, discuss option to make this configurable in welcome.conf
background color hardcoded, tested to work well in dark themes too
2020-04-01 16:19:00 +02:00
demmm
c10ef9e3bc [welcome] Improve welcomeq visuals
- set image to fill
 - keep aspect ratio
 - don't hardcode text color
 - variation in icons used
 - expand header text to check fit
2020-03-31 16:08:24 +02:00
Camilo Higuita
2d09557297 update wlecome to latest 2020-03-24 09:26:24 -05:00
Adriaan de Groot
489fd0b272 [welcomeq] Fix QML import
- Now using the properly-namespaced QML import for Calamares things
2020-03-18 11:12:15 +01:00
Adriaan de Groot
cd7884a0e5 [welcomeq] Fix build with clang
- can't convert lambda-with-captures to a function pointer (Clang 9)
- instead, use a context property .. QmlViewStep already sets a
  "config" property with the Config object, but WelcomeQ wants it
  as another name as well.
- this avoids registering the Welcome object across all QML pages,
  as well.

NOTE: needs to have the QML adjusted for this change.
2020-03-18 11:02:35 +01:00
Adriaan de Groot
28c2da12ae [libcalamaresui] Register in io.calamares namespace
- Register both Branding and ViewManager for QML
- Note that this changes the name of Branding
- Add code-docs about object ownership
2020-03-11 17:40:03 +01:00
Adriaan de Groot
7d99ad3177 [welcomeq] Adjust to Config-API that QmlViewStep expects 2020-03-11 16:49:07 +01:00
Adriaan de Groot
862b05221d [libcalamaresui] Drop 'name' parameter in QmlViewStep
- The name is just the module identifier, and now we
  search for *m@i* and also *m* from that identifier,
  the name becomes much less important -- and it
  can be set from the config key *qmlFilename* as well.
2020-03-11 15:57:08 +01:00
Adriaan de Groot
165bcfd75d [libcalamaresui] "namespace" QML settings
- To avoid name-collisions in otherwise well-behaved
  modules and configurations, make the QML settings
  more specific:
    search -> qmlSearch
    filename -> qmlFilename
2020-03-11 15:36:42 +01:00
Adriaan de Groot
0f50dc8d33 [welcomeq] Include the QML search mode 2020-03-11 15:23:37 +01:00
Adriaan de Groot
8302f2182b [welcomeq] The QML file name still has a q 2020-03-11 15:21:46 +01:00
Camilo Higuita
d26fa63ccd [welcomeq] initial work for welcomeview in qml 2020-03-11 14:48:14 +01:00
Camilo Higuita
d7f7c16958 [welcome] using config for both qcc2 or qwidgets 2020-03-11 14:48:06 +01:00
Adriaan de Groot
bff07ded25 Merge remote-tracking branch 'origin/welcome-q'
- Updates QmlViewStep with slightly neater API
- Introduces Config object for QML pages
- Updates notesqml and welcomeq to use that API
2020-02-19 12:56:04 +01:00
Adriaan de Groot
b044549013 [libcalamares] Merge PluginDllMacro.h into DllMacro.h
- Let's just have one header definining export- and visibility-
   macros for Calamares. They are still selected based on the
   export flags (*_PRO), just defined in one header instead of two.
2020-02-17 11:37:35 +01:00
Adriaan de Groot
aa0a799492 [welcomeq] QML warnings--
The config bits are all constant, so avoid NOTIFY warnings.
2020-02-12 22:47:11 +01:00