Browse Source

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

Fix opening a section again in the Files app
tags/v15.0.0beta1
Morris Jobke 5 years ago
parent
commit
9b092fd4bd
No account linked to committer's email address

+ 0
- 6
apps/files/js/favoritesfilelist.js 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;

+ 5
- 0
apps/files/js/favoritesplugin.js 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
}
);
},

+ 4
- 0
apps/files/js/filelist.js 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)) {

+ 5
- 0
apps/files/js/recentplugin.js 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
}
);
},

+ 25
- 5
apps/files_sharing/js/app.js 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
}
);


+ 0
- 6
apps/files_sharing/js/sharedfilelist.js 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);
}
}
});

/**

+ 5
- 1
apps/files_trashbin/js/app.js 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
}
);
},

+ 6
- 1
apps/systemtags/js/app.js 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
}
);


+ 72
- 0
tests/acceptance/features/app-files.feature 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"

+ 16
- 0
tests/acceptance/features/bootstrap/FileListContext.php 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
*/

Loading…
Cancel
Save