When the checkbox was moved to where the favourite icon was shown before
the layout of the file list was modified. The checkbox is no longer a
descendant of the ".filename" element, so it is no longer removed by the
"External storages" file list.
However, even before the checkbox was moved, explicitly removing it was
not the best approach, as file list rows could still be selected using
"Ctrl/Shift+click". This did not provide much value, as the selection
header has no actions; it simply states the number of selected elements.
The proper way to disable the selection is by setting "_allowSelection"
to false in the file list instead.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When the checkbox was moved to where the favourite icon was shown before
the layout of the file list was modified. The first column is no longer
the file name, so neither the thumbnail nor the name link were found.
Due to this the thumbnail was not set to the appropriate icon, and the
dummy event handler was not removed from the name link, so clicks on the
name were basically ignored. Now the selectors are based on the
".filename" CSS class instead of relying on the column position.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When an empty area of a file row was clicked and the "Details" action
was executed "fileActions.currentFile" was not guaranteed to be set to
the appropriate object (it depended on the previous actions of the
user), so when it was used by "getCurrentMimeType()" and other
FileActions functions they may not work as expected. Now it is
explicitly set to the appropriate value before its use.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When clicking on "Share link" in the "Sharing" tab of the Files app an
input field with the link appears. That input field already exists in
the DOM, although empty, before clicking on "Share link", and when that
is done the proper value is set and then the input field is shown.
In the acceptance tests "getValue()" can return the value of hidden
elements too, so as long as an element exists its value is returned
without waiting for the field to be visible. Due to this if the test
code runs too fast the "I write down the shared link" step could be
executed before the proper value was set, so the shared link got in that
case would be an empty value, and this would lead to failures when the
following steps were executed.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The share menu toggle and some share menu items included an 'href="#"'
attribute, so they were handled as internal links by the browser, which
changed the current anchor when they were clicked. However, there was no
real need to change the anchor in those cases, and it could interfere
with other apps (for example, the PDF viewer sets the current anchor to
"#pdfviewer" when it is shown and it hides itself when that anchor is
modified). According to the HTML 5 spec the "href" attribute is not
mandatory for "a" elements, so they were removed.
Other options would have been to change the elements from "a" to "div"
or something like that, but that would have required changes to the CSS
rules too, or to prevent the default event handling for those elements
through JavaScript, which would have been a workaround instead of the
proper solution.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When a "mouseup" event was triggered on any element except on the share
menu or its descendants the share menu was closed. The share menu toggle
is not a descendant of the share menu, so clicking on it when the share
menu was shown closed it by removing its "open" CSS class. However, once
that happened the click event was then handled by the share menu toggle,
which toggled the "open" CSS class in the share menu and thus added it
again. So, from the user point of view, nothing happened when clicking
on the share menu toggle if the share menu was open.
Now a "mouseup" event on the share menu toggle no longer closes the
share menu, and thus toggling the "open" CSS class when handling the
"click" event works as expected.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Clicking on an empty space in a file row causes the details view to be
shown. As it is a user initiated action on the file list now it is done
by triggering the Details action instead of directly calling
"_updateDetailsView"; the result is the same in both cases, but using
the action is more consistent (clicking on the file name triggers the
default action, and clicking on the inline actions triggers those
actions) and also makes possible to use the "beforeTriggerAction" and
"afterTriggerAction" listeners.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
* unify shadow blur from 3px to 10px
* remove opacity of background of app labels
* for IE: use box-shadow as fallback (because the filter: drop-shadow is not supported)
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
With the new avatar endpoint there is no difference between unknown
users and errors when generating the placeholder avatar. Therefore the
avatar function will now show the old placeholder if both a user and
displayname was given as parameters.
In case there is no displayname provided we cannot build the proper
placeholder so the unknown user placeholder is shown.
The displayname is not required for the avatar anymore, so we can
get rid of the old code path for placeholders.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
The js and php code differ ever so slightly. So having the placeholder
for a second and then the image is just weird.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
In the same way that other elements can know when a FileAction is
registered or a default action is set this commit makes possible to be
notified before and after a FileAction is executed.
This is achieved by wrapping the registered action handler in a custom
function that notifies the listeners before and after executing the
handler itself. Due to this approach only FileActions registered through
"registerAction" trigger the events, although that is not a problem as
this is how the actions should be added to the FileActions anyway.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Fixes#7574
During some refactoring the event linked to password reset got removed.
This ment that we just submitted a normal POST but without the CSRF
token. And none of the js magic to redirect afterwards.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
".popovermenu" elements are visible or not depending on whether they
also have the "open" CSS class or not. "#header .menu" elements were
always hidden, so when both rules applied to the same element, like in
the menu of a Share page, the element was always hidden due to
"#header .menu" being more specific than ".popovermenu" and thus
overriding its rules. Now, "#header .menu" elements are hidden only if
they are not a ".popovermenu" too.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>