The path returned from the server encodes a space in the username with `+` and if the username contains a `+` sign it is encoded as `%2B` (cf. https://www.php.net/manual/function.urlencode.php).
Fix: Don't (double) decode the URL path and then replace `+` with space (introduced in issue #279 resp. commit 9ec61a84ce). Instead first replace `+` with space, then decode percent encoding.
Tested with a username containing a space, a username containing a `+`sign and a username containing just A-Za-z0-9- (with Nextcloud 16).
(fixes issue #1266)
Signed-off-by: Sven Strickroth <email@cs-ware.de>
- Text changed to "Enable..." instead of "Setup"
- The close icon follows NC style
- "end-to-end" instead of "end to end"
Signed-off-by: Ivan Čukić <ivan.cukic@kde.org>
Instead of immediately popping up the mnemonic dialogue,
only show a notification bar on the account setup page.
For the cases where the user does not want to use E2E,
this is significantly less intrusive than the old approach.
The quota retrieval process might not be finished by the time
the used space on the server (`_rSize`) is compared against
the locally available disk space which might end up in
a "There isn't enough free space in the local folder!" message
even if there is enough free space.
This patch updates the status after the quota has been retrieved.
It also initializes `_rSize` to `-1` so that errors like this
are easier to catch in the future.
Qt recommends to register a URL scheme before installing it.
I don't know the impact of the not registering before instaling but I
think the change is pretty harmles.
See:
https://doc.qt.io/qt-5/qwebengineurlscheme.html#registerScheme
Signed-off-by: Björn Bidar <theodorstormgrade@gmail.com>
This is a quick hack to make self signed certificates work.
I'm not to fond of it the real solution should be to request the url
with QNAM and then see if it fails.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
I must admit why this works is puzzling me. However if I just use a system
proxy without this it doesn't work. I suspect a Qt bug but will have to
dig deeper to find out if that is the case.
For now this little hack will have to do.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Stylesheet String was not correctly defined (missing ";" after "%2") and caused an error in logging output.
After checking the fixed Style I removed it since it does not really look good.
We should stop fetching the moment the activity stream is empty when
fetched. It doesn't matter if the current list is empty.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Fixes#788Fixes#834
If the activity app is not enabled we should not try to fetch the
activities at all.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
NOTE: The progress indicator is temporarily moved one line up to avoid
inserting it on its own line, which would cause the content pushed down
and the dialog size jump back and forth.
Remove hard-coded fixed sizes, size constraints, and other unnecessary
property assignments. This works with any dialog width, meaning that
the width can be defined in one place higher up in the widget hierachy.
SettingsDialog::accountAdded() uses the height of the toolbar to
calculate the desired default size for toolbuttons. Make sure to have
the "General" and "Network" tool buttons in place before calling
accountAdded() to avoid cramped first button.
The original non-animated slide show was running at 2500ms interval.
The new animated slide show was using the same interval, but used
1000ms to animate the slides. This left significantly less time for
the user to read the slides.
... in addition to fixing up the scheme and host.
For example, the survey app sends "/settings/admin/survey_client" as
a link. Clicking the "More information" button wouldn't lead to the
correct place if NC was running on a custom port.
For some reason, QLabel with rich text and word wrapping enabled
calculates quite a bit too large size hint. Luckily, it's rich text
that is already divided to paragraphs so that wrapping makes actually
very little visual difference. For example, on my screen, when the
settings dialog is resized horizontally to the minimum, the only word
that actually wrapped was "2017". After this patch, it naturally won't
wrap anymore, but the General Settings page also doesn't leave a large
gap at the bottom. As a result, the minimum height of the dialog went
down from 581 to 525. The exact values depend on the style and fonts.
Fixes#91.
This makes the bottom margin aligned with horizontal margins, and
eliminates a warning on startup:
[unknown QObject::connect: Cannot connect (null)::clicked() to OCC::SettingsDialog::accept()
This moves all the basic http auth over to the webflow mechanism.
This thus also makes sure that if the password changes a webflow page
pops up. And thus will directly move them over to apptokens then.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
The QWebEngine uses a different certificate store/system. So we can't
just pass wour accepted certificates in there.
As a work around we now trust the url we set by definition. As this has
to already be approved before we access this.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Note that we also needed to adjust the server url to contains the user name
in the folder wizard. (As checkPathValidityForNewFolder expect the user name)
Issue #6654
The exact string is actually "sync.*.debug=true\ngui.*.debug=true".
And this is not strictly equivalent to setting the env var, as it
calls QLoggingCategory::setFilterRules.
Over all, that's an implementation details that users do not care about.
There is no real reason to have a timeout. The connection can stay open
as long as we are not authenticated. The User can still re-open a browser
from the UI at any time.
Issue #6612
* Disentangle the previous 'qdbusWorkarounds' into three different
things
* Make not trusting tray.isVisible() a new workaround
* Introduce env vars for all workaround flags
* Use the workaround flags for OSX
* Determine workaround flags for KDE when the plasma integration plugin
is missing
This can happen when the client is started and the internet connection
was not enabled. Then we would fetch the credentials, but we would
no do the refresh token step (because network is down).
So next time we try to connect, we would also not refresh the token
because the credentials are not marked as 'ready'
Reported in
https://github.com/owncloud/client/issues/6522#issuecomment-396845167
Fixes#279
Some setups don't make Qt emit the right signals and the client would
end up in state where it could not do the initial authentications.
This is a similar hack that apparently already was is place for basic
http auth.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Fix#604
Remove the not actionable button but a direct link to the nextcloud
installation page. In this case the button is changed for a label with an
html link to the website.
- Local sync activities are now listed with the sync icon and included
in the correct list: once a file is synced, activityWidget checks for
its status to know if it is an error or if the file was successfully synced.
Signed-off-by: Camila San <hello@camila.codes>
- Fixes call for slot when date is set - it was the password
slot for that.
- Adds QProgressIndicator and function to toggle animation.
- Fixes: when date was set, the date was not being correctly set and
displayed.
- Fixes: hides and 'deletes' passsword and expire. date widgets when
the user unchecks it in the toolbox menu.
Signed-off-by: Camila San <hello@camila.codes>
- Properly checks files and folder share permissions when displaying
can edit checkbox - which can also be partially checked - and listing
permissios in the tollbutton menu.
- Fixes click on can edit checkbox - which can also change state of
permissions in the toolbutton menu.
Signed-off-by: Camila San <hello@camila.codes>
- It checks for the menu title to know where to add the apps menu instead of trying to cast
the menu pointer saved in the sender() property.
- The previous solution was not working reliably - see #523
- Adds TODO.
Signed-off-by: Camila San <hello@camila.codes>
- Also removes the signal/slot associated with it.
- Minor changes: removes white background and changes frame style to the
same used in the accountsettings for consistency.
Signed-off-by: Camila San <hello@camila.codes>
- Adds icons to Share link and to save password on share dialog.
- Changes wording of the menu options for sharing link.
- Adds functionality to the new menu (mostly permissions).
- More widget size and size policy adjustments.
Signed-off-by: Camila San <hello@camila.codes>
- First text input to search for users,then share link and then the list
of users.
- Adjusts size and scroll bar for sharees list.
- Adds option 'can share' to 3 dots menu in share user/group widget.
Signed-off-by: Camila San <hello@camila.codes>
- Adds select with permissions to share dialog on the user/group search.
- Changes order of widgets, removes excess of text and do not display empty widgets.
- Share user/group widget: replaces combo box for tool button with permissions.
- Using Fixed as size policy it gives a much smoother user experience
when windows size dinamically changes.
Signed-off-by: Camila San <hello@camila.codes>
- The crash was happening when the user could not connect and it would
crash on trying to retrieve and display the navigation apps.
- Checks AccountStatePtr earlier in the function
slotNavigationAppsFetched.
- Cast of pointer stored in QVariant to QMenu was not done correctly -
qvariant_cast works best for user type defined or QMetaType known to
QVariant.
Signed-off-by: Camila San <hello@camila.codes>