Commit graph

7139 commits

Author SHA1 Message Date
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
Remco Burema
a25a51eddb
Windows workaround for OAuth data removal from config.
Windows won't allow long keys in the backend the keyring python package uses as a backend. This means the access_token part can't be stored in the obvious way. Timeboxed some attempts at working around this limitation, but couldn't make it work within the time set. As this is mostly an extra precaustion protecting users that share config folders around against themselves (in other words, if this goes wrong it's not unreasonable to blame the user) it's not top critical, and the important part of that (the refresh_token) can proceed, giving any potential attacker only a 10 minute window from the moment any user shares their %appdata%/cura files (again, this is not how we intent for users to behave, but they can and will do it this way).

CURA-7180
2020-12-24 14:39:22 +01:00
Kostas Karmas
71994eaaf9 Change the Open File(s) option according to the file providers count
When there is only one file provider (i.e. the local file provider), the Open File(s) will be a
simple item in the File menu.
When there are more than one file providers, the Open File(s) will become a submenu in the File
menu, which will contain all the file providers as submenu items.

CURA-7868
2020-12-23 17:13:14 +01:00
Jaime van Kessel
7f27ff5432
Reset scene metadata if the buildplate was cleared
CURA-7615
2020-12-23 14:08:59 +01:00
Jaime van Kessel
bff3ba577b
Store auth & refresh key in keyring instead of in preferences
People tend to share configuration folders, which just isn't secure.

CURA-7180
2020-12-21 14:02:45 +01:00
Remco Burema
0fdcd208ee
Possible alternate non-numbered versions.
CURA-7932
2020-12-20 21:55:13 +01:00
Kostas Karmas
43615a57b6 Change client scope in the Account
CURA-7868
2020-12-18 14:34:29 +01:00