Commit Graph

77 Commits

Author SHA1 Message Date
Hector Martin
15027f40b2 Make HiDPI SVG rendering work on Wayland
Branding SVGs were rendering at 1x on Wayland and then scaling up to the
display DPI, which looks ugly. To get this to work properly we need to
explicitly multiply the devicePixelRatio into the dimensions that
QPixmaps render at, since QPixmap is DPI-unaware.

This probably only takes care of a subset of the problem codepaths, but
at least it makes the sidebar logo and welcome screen work properly.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-09-04 14:35:14 +09:00
Adriaan de Groot
1c7c0b9af8 CI: apply coding style (clang-format 13) 2022-06-27 00:37:15 +02:00
Adriaan de Groot
dc699db5f5 [libcalamaresui] Document style-string mapping
- while here, the static array of names doesn't need to be
  a class member, it is entirely internal.
- document how names are mapped to branding keys.
2022-06-03 11:20:59 +02:00
Adriaan de Groot
a7d3630e42 [libcalamaresui] Improve naming, resolve TODO 2022-05-04 00:51:50 +02:00
Adriaan de Groot
87c8c3e6ee [libcalamaresui] Convenience for 'give-me-one-of-these-icons' 2022-03-15 12:44:19 +01:00
Adriaan de Groot
b07c9bb4af [libcalamaresui] Use meaningful type for Upload info
- use a struct with named fields instead of a tuple
- offer an operator bool() for the logic of does-it-make-sense-to-upload
2021-12-07 12:53:43 +01:00
Anubhav Choudhary
c1aa0b581e [logUpload] suggestionsAndFixes-part3
- Resolved the problem of incomplete log upload
- sizeLimit = 0 fixed (turns off paste functionality)
- Documentation update
- sizeLimit < 0 now needs no hardcoded upper limit
- Calamares::Branding::uploadServerFromMap() serves sizeLimit in bytes
2021-04-01 00:25:37 -06:00
Anubhav Choudhary
6726a926a4 [logUpload] Configurable upload size limit
A key 'sizeLimit' added to uploadServer field in branding.desc to limit the size of logFile to upload.
2021-03-29 12:44:34 -06:00
Adriaan de Groot
efec12d001 [libcalamares] Read structured upload-server info
- Use just type and url, since port can be specified in
  a URL. Note that we only use host and port, not the
  scheme (or the path, for that matter).
- Factor out understanding the *uploadServer* key to a function.
2021-03-09 15:24:02 +01:00
Adriaan de Groot
3c6683bd98 [libcalamaresui] Rip out untyped data about upload server
This doesn't compile, but indicates the **type** information
desired about the (a) upload server.
2021-03-09 14:51:59 +01:00
Anubhav Choudhary
9738851261 YAML list for uploadServer key 2021-02-15 20:51:41 +05:30
Anubhav Choudhary
7057081bdf QUrl for serverURL + renames 2021-02-10 14:38:26 +05:30
Anubhav Choudhary
b4078f3634 Changed branding keynames + minor fixes 2021-01-25 01:09:20 +05:30
Anubhav Choudhary
a2c930a714 Code-formatted and Copyright-text added 2021-01-23 21:16:32 +05:30
Anubhav Choudhary
ff66e4b3d5 Redirecting logUpload vars to pasteUtility 2021-01-23 20:47:33 +05:30
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
3480988f53 REUSE: SPDX tagging of application library and main
- CC0-1.0 for the uninteresting version-headers
- GPL-3.0-or-later for the services

- add SPDX identifiers to Calamares C++ libraries and application sources
- add SPDX identifiers to Calamares QML (panels and slideshow)
- the `qmldir` is a list of names of things in the directory,
  so CC0-1.0 it as "uninteresting"
- QRC files are lists of names of things in the directory,
  so CC0-1.0 them as well
2020-08-26 02:05:46 +02:00
Adriaan de Groot
2b2a69631f [libcalamaresui] Suggestions for better naming of enum values 2020-07-07 15:29:13 +02:00
Adriaan de Groot
022045ae05 [libcalamaresui] Refactor loading slideshow
- split into a separate method
- when QML is disabled, warn about QML settings
2020-05-14 17:04:35 +02:00
Adriaan de Groot
c83e5c57a4 [libcalamaresui] When QML is off, there is no Qml panel flavor 2020-05-14 16:57:14 +02:00
Adriaan de Groot
5aafa0f4c4 [libcalamaresui] Expose slideshow image names for API -1
- Branding shows the slide pathnames or the slide QML, depending
  on selected API (which depends on the config-file).
- Use one slideshow or the other.
2020-05-13 17:19:46 +02:00
Adriaan de Groot
bb2b5fd982 [libcalamaresui] No reason for bail() to be a method 2020-05-07 20:41:40 +02:00
Adriaan de Groot
526716556c [libcalamaresui] Store the slideshow-from-images data
- This code has existed for a long time but never stored anything
  to the Branding object, and the most literal slideshow (just some
  images) was not implemented.
2020-05-07 19:02:38 +02:00
Adriaan de Groot
a7a6c937ea [libcalamaresui] Add needed includes
- Return type QPixmap means we should definitely #include it
2020-05-06 15:23:27 +02:00
Adriaan de Groot
cd44f548f5 [libcalamaresui] Add donateUrl to the branding settings
SEE #1384
2020-05-06 14:34:37 +02:00
Adriaan de Groot
62696a3a48 [libcalamaresui] Remove the special * operator for string-enums in branding
- This is a good example of being overly clever in C++
- the whole API with an enum requesting a specific string is a bit weird,
  although it makes sense from the 'might need more strings specified'
  point of view.
2020-05-04 12:52:05 +02:00
Adriaan de Groot
ddde817abf [libcalamaresui] Apply coding style 2020-04-30 12:10:09 +02:00
bill-auger
7bce58f6f2 [welcome] add optional branding banner to welcome page 2020-04-19 04:01:22 -04:00
Adriaan de Groot
e15e7d1dc5 [libcalamaresui] Load panel-side settings
- Introduce an enum for panel-side
- Expose this to QML -- I can imagine that QML panels need to know
  which side of the Calamares window they're on.
- Refactor loading the setting into a method that handles both
  flavor and side
2020-04-03 11:05:37 +02:00
Adriaan de Groot
57e6864902 [libcalamaresui] Add panel flavor
- rename enum to more general PanelFlavor
- introduce branding settings for navigation (e.g. for switching
  the navigation buttons off, or using QML)
2020-04-01 11:13:41 +02:00
Adriaan de Groot
e9965d37e3 [calamares] Don't create sidebar if we don't want it 2020-03-10 18:05:24 -05:00
Adriaan de Groot
80f49bed1d [libcalamaresui] Add a sidebar flavor setting 2020-03-10 17:59:06 -05: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
94f5b13db0 [libcalamaresui] Restore previous DLLEXPORT names
- Different libraries should have different EXPORTs, so that
   you can IMPORT one while building the other. Reported (and
   kindly explained) by Kevin Kofler.
 - Stick to one header file, though.

While here, update copyright on file.
2020-02-17 16:55:17 +01:00
Adriaan de Groot
aaa6f6bd55 [libcalamaresui] Drop UiDllMacro.h
- The scattering of DLL export macro's is kind of useless;
   there are several headers, and then the export macro isn't
   even applied consistently. Just drop the one for UI exports,
   which was only used in libcalamaresui.
2020-02-17 11:32:28 +01:00
Adriaan de Groot
18942f835f [libcalamares] Remove confusing name-qualifiers
- Using Branding::ImageEntry, when ImageEntry is an enum class
   defined *in* Branding, is superfluous, and it also confuses
   moc; the enum type isn't recognized from QML.
2020-02-12 15:35:11 +01:00
Camilo Higuita
15d8503726 [libcalamaresui] Expose the branding strings & urls to qml 2020-02-12 15:18:24 +01:00
Camilo Higuita
1f2f1a657e [libcalamaresui] Expose Branding strings to QML 2020-02-12 13:57:26 +01:00
Adriaan de Groot
17d09342e9 [libcalamaresui] Add a setting for window placement 2020-01-07 00:27:11 +01:00
Adriaan de Groot
e7dedbbfe0 [libcalamaresui] Apply coding style to remainder 2019-08-13 21:07:46 +02:00
Adriaan de Groot
148b829591 [libcalamares] Introduce slideshowAPI setting 2019-06-17 10:58:14 +02:00
Adriaan de Groot
75ce391e7e [libcalamaresui] Add branding-aware function for loading image by name 2019-05-31 17:27:11 +02:00
Adriaan de Groot
ac941e6756 [libcalamares] Implement reload-stylesheet
- From the debug-window, clicking *reload stylesheet* does just
   that, and applies the new stylesheet to the Calamares window.
 - Remove stylesheet caching from the Branding class; we only
   need the sheet once (on Calamares startup) or when updating
   the stylesheet, which is seldom-enough that we don't need
   to keep an extra copy around.
 - To use, start Calamares, open the debug window, open stylesheet.qss
   in an editor. Make changes, save, then click *reload stylesheet*.

SEE #1149
2019-05-21 13:21:47 +02:00
Adriaan de Groot
9331a25905 [libcalamares] Remove Typedefs.h
- This small header file contained a few unrelated typedefs.
   Move those typedefs to the classes they relate to. This
   **does** mean that some consumers need to #include something
   else instead.
 - Use type names more consistently.

Editorial: why are **pages** responsible for creating the jobs?
2019-05-07 09:51:23 -04:00
Adriaan de Groot
08e4090354 Merge remote-tracking branch 'origin/raurodse-branding'
FIXES #961
2019-04-23 16:41:22 -04:00
Adriaan de Groot
5a95bf507f [libcalamaresui] Improve WindowDimensions class
- Make sure the class knows its own suffixes
2019-04-11 15:14:31 +02:00
Adriaan de Groot
8dd22dcbbf [libcalamaresui] bail() is a [[noreturn]] function 2019-04-11 15:14:31 +02:00
Adriaan de Groot
ef94b1f689 [calamares] Support noexpand
- When in noexpand mode, just don't grow the window, and assume
   widgets elsewhere will get scrollbars automatically.
2019-01-14 14:25:01 +01:00
Adriaan de Groot
866797a6c9 [calamares] Support starting fullscreen 2019-01-14 14:17:39 +01:00
Adriaan de Groot
32ab377e43 [libcalamaresui] Record branding window-size 2019-01-14 12:06:04 +01:00