This commit is contained in:
ろむねこ 2024-01-22 19:28:42 +09:00
parent bc304f8535
commit fe4999384a
No known key found for this signature in database
GPG Key ID: FA1F39A1BA37D168
2 changed files with 14 additions and 8 deletions

View File

@ -115,7 +115,8 @@ public class LibraryPageFragment extends Fragment {
Toast.makeText(getContext(), "Folder selected! folderId: " + folderId + ", folderName: " + folderName, Toast.LENGTH_SHORT).show();
FragmentNavigation fragmentNavigation = (FragmentNavigation) getActivity();
assert fragmentNavigation != null;
fragmentNavigation.navigateToFragment(LibraryPageFragment.newInstance(folderId, folderName, new PublicPath().parse(publicPath).resolve(folderName).getStringPath()));
logger.debug("LibraryTopFragment", "publicPath: " + publicPath);
fragmentNavigation.navigateToFragment(LibraryPageFragment.newInstance(folderId, folderName, publicPath == null ? new PublicPath().parse("/").resolve(folderName).getStringPath() : new PublicPath().parse(publicPath).resolve(folderName).getStringPath()));
}
@Override

View File

@ -39,14 +39,19 @@ public class PublicPath {
}
public PublicPath parse(String path) {
if (path.startsWith("/")) {
if (path == null) {
this.path.clear();
path = path.substring(1);
}
String[] pathArray = path.split("/");
for (String p : pathArray) {
Log.d("PublicPath", "parse: " + p);
resolveInternal(p);
this.path.add("/");
} else {
if (path.startsWith("/")) {
this.path.clear();
path = path.substring(1);
}
String[] pathArray = path.split("/");
for (String p : pathArray) {
Log.d("PublicPath", "parse: " + p);
resolveInternal(p);
}
}
return this;
}