Commit graph

7295 commits

Author SHA1 Message Date
Remco Burema
f1cbe1a958
... and fix typing as a result of the last commit.
CURA-8014
2021-03-24 16:29:38 +01:00
Remco Burema
f95c09db37
Type-checks, not just type comments, and static- over class-method.
CURA-8014
2021-03-24 16:18:56 +01:00
Remco Burema
5083db8d44
On new install or update, have highlights not just changelog.
Place images in resources/images/whats_new/N.format and texts in resources/texts/whats_new/N.format where N is the ordinal and format the respective allowed formats.

CURA-8014
2021-03-24 12:00:05 +01:00
fieldOfView
6367e07631 Add preference to enable loading multiple objects into a single instance 2021-03-23 22:27:10 +01:00
Ghostkeeper
93a3f15b4f
Workaround: Before closing the window, remove the global stack
There's an extensive explanation in the documentation. But truth be told, I don't know why the conversion of global stack to QObject fails after the main window is closed. This may be something in PyQt as it doesn't seem to happen for Nallath who is still on PyQt5.11, but did update Qt to 5.14. So this should be considered a workaround.

This is currently just ONE of the reasons why the application crashes on exit in PyQt5.14+. There is another, much more mysterious issue that is causing the application to segfault on exit, which is still happening. But if it didn't happen it would otherwise still crash on this, so this needs to be solved anyway.

Contributes to issue CURA-7813.
2021-03-22 15:55:37 +01:00
Jelle Spijker
387fc36dc6
Small aesthetic code changes
CURA-7180 keyring storage
2021-03-17 09:30:31 +01:00
Jelle Spijker
c462b62edc
Handle raised error when there is no keyring backend present
CURA-7180 keyring storage
2021-03-17 09:22:24 +01:00
Jelle Spijker
3fd3fd7c7d
Obfuscate sensitive preference data from the back-up
CURA-7180 keyring storage
2021-03-17 08:54:16 +01:00
Jelle Spijker
b6b9dd1864
Fixed wrong typing
CURA-7180 keyring storage
2021-03-17 07:34:28 +01:00
Jelle Spijker
f51c466155
Use a descriptor to optionally store to Keyring
CURA-7180 keyring storage
2021-03-17 06:16:01 +01:00
Jelle Spijker
d06a25595a
Use a descriptor to optionally store to Keyring
CURA-7180 keyring storage
2021-03-16 19:28:56 +01:00
Ghostkeeper
58369822fc
Clean up invalid quality changes robust to asynchronous changes
It's possible that a profile is no longer in the registry by the time it gets to that point in the list if this clean-up is triggered by the very action of deleting a profile.

Fixes Sentry issue CURA-1T5.
2021-03-16 16:36:01 +01:00
Jelle Spijker
6372fbed54
Added copyright notice
CURA-7180 keyring storage
2021-03-16 11:57:58 +01:00
Jelle Spijker
96e39810f2
Sync after log in works again
Needed to restore the access token after the
auth data was written to the preference file.

CURA-7180 keyring storage
2021-03-15 14:35:00 +01:00
Jelle Spijker
fcf698f00b
Added documentation and refactored
CURA-7180 keyring storage
2021-03-15 14:16:27 +01:00
Jelle Spijker
2796b9bef3
Store new keys to preference
CURA-7180 keyring storage
2021-03-15 13:06:42 +01:00
Jelle Spijker
b604bbd255
Store secrets as securely as possible
Use the keyring if allowed, available, otherwise use preference

CURA-7180 keyring storage
2021-03-15 11:48:42 +01:00
Jelle Spijker
47df060bee
Added fundaments of SecretStorage vault
This class will handle the storing and processing
of secrets. Such as tokens. It will try to use the system
keyring by default. Falling back to less secure methods,
if the user doesn't allow access to the keyring or if
the back-end is unsupported.

CURA-7180 keyring storage
2021-03-11 14:21:51 +01:00
Jelle Spijker
720b356221
Merge remote-tracking branch 'origin/master' into CURA-7180_keyring_storage 2021-03-08 15:23:46 +01:00
Jaime van Kessel
cc1aadde12
Set & use enabled property for saving projects when ufp/gcode is loaded
CURA-8034
2021-03-05 14:09:39 +01:00
Jaime van Kessel
ad8e78c7f8
Remove unused import 2021-03-01 14:32:42 +01:00
Jaime van Kessel
fa4d1ba1fb
Don't strip accents from job name
No idea why this was there in the first place. Our archeology attempts couldn't
find out as to why it was introduced. We suspect an issue with other Qt versions.

At least now ロボット.stl will not be mangled into ロホット.gcode upon saving (and
german bears into bars)
2021-02-26 14:56:27 +01:00
Jelle Spijker
30293fb3b4
Merge remote-tracking branch 'origin/master' into libArachne_rebased 2021-02-15 11:54:31 +01:00
Ghostkeeper
0c9175d7f7
Lower camera default position by 70mm
The previous default position was aimed at 100mm above the build plate. This is taller than most models that people load into Cura. It's now aimed at 30mm. Models up to 50mm are way more common to print, so this brings it right in the butter zone for most people, hopefully.

Fixes #9251.
2021-02-15 11:31:28 +01:00
Ghostkeeper
c781391b9b
Merge branch 'master' into libArachne_rebased
To my surprise, it seems fdmprinter has merged perfectly. Nice.

Conflicts:
	resources/setting_visibility/advanced.cfg -> Settings moved to a different category while we added new settings in the same place.
2021-02-10 11:55:37 +01:00
Ghostkeeper
ec986990a2
Merge branch 'master' into CURA-7996_Fix_trying_to_open_deleted_files_from_the_recent_files_list 2021-02-09 14:20:53 +01:00
Ghostkeeper
c89a397e59
Merge branch 'master' into CURA-7615_store_metadata 2021-02-08 16:27:38 +01:00
Kostas Karmas
7be67f43f8 Let the FileNotFound error be handled later in the read file process
An error will pop up by the ReadFileJob if the file cannot be found. If we also handle the File
NotFound error in the checkIsValidProjectFile, then two error message will pop up in the user's
screen, which is not desired. So, let only the ReadFileJob show it's error instead.

CURA-7996
2021-02-08 11:59:32 +01:00
Kostas Karmas
56b3cc5fe5 Don't stop the readLocalFile process if there is no workspace reader
Or else the non-project files, which do not get a workspace reader by definition, won't be opened
in Cura.

CURA-7996
2021-02-08 11:58:12 +01:00
Kostas Karmas
f8a9e7f2d2 Pass the "add to recent" as an input var to dialogs that open projects
This way it is clear before to the dialog whether it should add the file to the recent files list,
before the dialog opens.

CURA-7996
2021-02-08 11:55:28 +01:00
Ghostkeeper
b54f792561
More appropriate error message
Project files can't be a directory.

Contributes to issue CURA-7996.
2021-02-05 15:29:56 +01:00
Kostas Karmas
e2699a5ab8 Display the correct message when opening deleted files from Recent
If a file that existed in the Recent Files list was deleted, Cura was still trying to open the file
on user's request without properly displaying an error if the file was not found.

This is now fixed by popping up a message to indicate that the file doesn't exist.

CURA-7996
2021-02-05 12:10:23 +01:00
Jelle Spijker
55e3b858d6
Merge remote-tracking branch 'origin/master' into libArachne_rebased 2021-02-05 08:48:57 +01:00
Ghostkeeper
ba5b033499
Don't crash when not able to read maximum file name length
Just use a safe-ish maximum then.

Fixes Sentry issue CURA-1QY.
2021-02-04 17:10:03 +01:00
Remco Burema
06666bddca
Fix recent files hint when file opens via dialoges. 2021-01-29 14:49:32 +01:00
Jaime van Kessel
f85cad37cf
Expand the logging for the auth data a bit more
We're getting some reports that people are suddenly logged out. The working
theory is that they are mixing staging & production builds. This logging
should tell us enough to find out if that is the case!
2021-01-28 10:31:47 +01:00
Remco Burema
9197a1ca51
Fix crash on open project from term or by file.
Opening a .3mf file or other project would cause a crash if the preference for always opening as a project (as opposed to importing models or 'always ask') was set. Traced back to a typo.

CURA-7987
2021-01-23 12:02:57 +01:00
Remco Burema
e681a6d32d
Fix camera not found on pre-slice snapshot/thumbnail. 2021-01-22 18:07:59 +01:00
Ghostkeeper
4380cdbd86
Don't crash on malformed JSON structures
JSON dictionaries need to have a certain structure such as strings as keys. If that's not correct it gives a TypeError. Don't crash on those; give a similar error message as when the values in the JSON are invalid.
2021-01-19 16:31:31 +01:00
Ghostkeeper
1b8463ba30
Catch TypeError when parsing setting version
Someone had a list in the setting version, which then crashed Cura.
2021-01-19 14:09:46 +01:00
Ghostkeeper
640e038ce7
Catch OSError when authorizing connection
Fixes Sentry issue CURA-1GW.
2021-01-19 11:05:55 +01:00
Jaime van Kessel
5d9affc690
Drop objects to buildplate that have been scaled
Otherwise they could be floating very high above the buildplate.

CURA-7855
2021-01-15 15:21:57 +01:00
Konstantinos Karmas
0edd6278f8
Merge pull request #9089 from Ultimaker/CURA-7864_open_remote_files_mvp
Open remote files MVP
2021-01-12 11:04:29 +01:00
Jelle Spijker
d16c5f1991
Merge pull request #9012 from Ultimaker/CURA-7868_Introduce_file_provider_plugin_type
CURA-7868: Introduce the file provider plugin type
2021-01-11 18:24:18 +01:00
Kostas Karmas
3282ad7a41 Don't add temporary files in the recent files list if F5 is pressed
CURA-7864
2021-01-11 12:52:23 +01:00
Konstantinos Karmas
9562dc01f4
Merge pull request #8718 from Ultimaker/speed_up_container_tree
Simplify and speed up the extending of the qualities list
2021-01-08 16:00:52 +01:00
Remco Burema
13d45e3a55
Typing typo.
CURA-7864
2021-01-08 13:51:03 +01:00
Remco Burema
aa0a08500e
Temproray files shouldn't be in recent file list.
CURA-7864
2021-01-08 13:44:23 +01:00
Ghostkeeper
0788df4797
Add log entry upon exporting container
Quite a salient moment in the log. According to our log levels definitions this must be info since it's the direct result of a user interaction.
2021-01-06 14:11:15 +01:00
Remco Burema
793430fa7a
Add documentation. What is an 'alternate version'? 2021-01-06 12:16:08 +01:00