Merge pull request #11967 from nextcloud/fix-opening-a-section-again-in-the-files-app

Fix opening a section again in the Files app
This commit is contained in:
Morris Jobke 2018-10-23 15:29:55 +02:00 committed by GitHub
commit 9b092fd4bd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 138 additions and 19 deletions

View file

@ -94,12 +94,6 @@ $(document).ready(function() {
return OCA.Files.FileList.prototype.reloadCallback.call(this, status, result);
},
_onUrlChanged: function (e) {
if (e && _.isString(e.dir)) {
this.changeDirectory(e.dir, false, true);
}
}
});
OCA.Files.FavoritesFileList = FavoritesFileList;

View file

@ -67,6 +67,11 @@
return new OCA.Files.FavoritesFileList(
$el, {
fileActions: fileActions,
// The file list is created when a "show" event is handled,
// so it should be marked as "shown" like it would have been
// done if handling the event with the file list already
// created.
shown: true
}
);
},

View file

@ -221,6 +221,10 @@
return;
}
if (options.shown) {
this.shown = options.shown;
}
if (options.config) {
this._filesConfig = options.config;
} else if (!_.isUndefined(OCA.Files) && !_.isUndefined(OCA.Files.App)) {

View file

@ -67,6 +67,11 @@
return new OCA.Files.RecentFileList(
$el, {
fileActions: fileActions,
// The file list is created when a "show" event is handled,
// so it should be marked as "shown" like it would have been
// done if handling the event with the file list already
// created.
shown: true
}
);
},

View file

@ -34,7 +34,11 @@ OCA.Sharing.App = {
id: 'shares.self',
sharedWithUser: true,
fileActions: this._createFileActions(),
config: OCA.Files.App.getFilesConfig()
config: OCA.Files.App.getFilesConfig(),
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);
@ -56,7 +60,11 @@ OCA.Sharing.App = {
id: 'shares.others',
sharedWithUser: false,
fileActions: this._createFileActions(),
config: OCA.Files.App.getFilesConfig()
config: OCA.Files.App.getFilesConfig(),
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);
@ -78,7 +86,11 @@ OCA.Sharing.App = {
id: 'shares.link',
linksOnly: true,
fileActions: this._createFileActions(),
config: OCA.Files.App.getFilesConfig()
config: OCA.Files.App.getFilesConfig(),
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);
@ -101,7 +113,11 @@ OCA.Sharing.App = {
showDeleted: true,
sharedWithUser: true,
fileActions: this._restoreShareAction(),
config: OCA.Files.App.getFilesConfig()
config: OCA.Files.App.getFilesConfig(),
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);
@ -122,7 +138,11 @@ OCA.Sharing.App = {
{
id: 'shares.overview',
config: OCA.Files.App.getFilesConfig(),
isOverview: true
isOverview: true,
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);

View file

@ -446,12 +446,6 @@
// Sort by expected sort comparator
return files.sort(this._sortComparator);
},
_onUrlChanged: function(e) {
if (e && _.isString(e.dir)) {
this.changeDirectory(e.dir, false, true);
}
}
});
/**

View file

@ -51,7 +51,11 @@ OCA.Trashbin.App = {
iconClass: 'icon-delete',
}
],
client: this.client
client: this.client,
// The file list is created when a "show" event is handled, so
// it should be marked as "shown" like it would have been done
// if handling the event with the file list already created.
shown: true
}
);
},

View file

@ -28,7 +28,12 @@
{
id: 'systemtags',
fileActions: this._createFileActions(),
config: OCA.Files.App.getFilesConfig()
config: OCA.Files.App.getFilesConfig(),
// The file list is created when a "show" event is handled,
// so it should be marked as "shown" like it would have been
// done if handling the event with the file list already
// created.
shown: true
}
);

View file

@ -31,6 +31,78 @@ Feature: app-files
When I open the details view for "welcome.txt"
Then I see that the details view is open
Scenario: show recent files
Given I am logged in
And I create a new folder named "Folder just created"
When I open the "Recent" section
Then I see that the current section is "Recent"
Then I see that the file list contains a file named "Folder just created"
Scenario: show recent files for a second time
Given I am logged in
And I open the "Recent" section
And I see that the current section is "Recent"
And I open the "All files" section
And I see that the current section is "All files"
And I create a new folder named "Folder just created"
When I open the "Recent" section
Then I see that the current section is "Recent"
Then I see that the file list contains a file named "Folder just created"
Scenario: show favorites
Given I am logged in
And I mark "welcome.txt" as favorite
When I open the "Favorites" section
Then I see that the current section is "Favorites"
Then I see that the file list contains a file named "welcome.txt"
Scenario: show favorites for a second time
Given I am logged in
And I open the "Favorites" section
And I see that the current section is "Favorites"
And I open the "All files" section
And I see that the current section is "All files"
And I mark "welcome.txt" as favorite
When I open the "Favorites" section
Then I see that the current section is "Favorites"
Then I see that the file list contains a file named "welcome.txt"
Scenario: show shares
Given I am logged in
And I share the link for "welcome.txt"
When I open the "Shares" section
Then I see that the current section is "Shares"
Then I see that the file list contains a file named "welcome.txt"
Scenario: show shares for a second time
Given I am logged in
And I open the "Shares" section
And I see that the current section is "Shares"
And I open the "All files" section
And I see that the current section is "All files"
And I share the link for "welcome.txt"
When I open the "Shares" section
Then I see that the current section is "Shares"
Then I see that the file list contains a file named "welcome.txt"
Scenario: show deleted files
Given I am logged in
And I delete "welcome.txt"
When I open the "Deleted files" section
Then I see that the current section is "Deleted files"
Then I see that the file list contains a file named "welcome.txt"
Scenario: show deleted files for a second time
Given I am logged in
And I open the "Deleted files" section
And I see that the current section is "Deleted files"
And I open the "All files" section
And I see that the current section is "All files"
And I delete "welcome.txt"
When I open the "Deleted files" section
Then I see that the current section is "Deleted files"
Then I see that the file list contains a file named "welcome.txt"
Scenario: rename a file with the details view open
Given I am logged in
And I open the details view for "welcome.txt"

View file

@ -254,6 +254,13 @@ class FileListContext implements Context, ActorAwareInterface {
return self::fileActionsMenuItemFor("View in folder");
}
/**
* @return Locator
*/
public static function deleteMenuItem() {
return self::fileActionsMenuItemFor("Delete");
}
/**
* @Given I create a new folder named :folderName
*/
@ -322,6 +329,15 @@ class FileListContext implements Context, ActorAwareInterface {
$this->actor->find(self::viewFileInFolderMenuItem(), 2)->click();
}
/**
* @When I delete :fileName
*/
public function iDelete($fileName) {
$this->actor->find(self::fileActionsMenuButtonForFile($this->fileListAncestor, $fileName), 10)->click();
$this->actor->find(self::deleteMenuItem(), 2)->click();
}
/**
* @Then I see that the file list is eventually loaded
*/