Skip to content

Commit 23bae01

Browse files
committed
add open file intent filter
1 parent ea1900f commit 23bae01

File tree

7 files changed

+28
-10
lines changed

7 files changed

+28
-10
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ gen/
2424

2525
# Local configuration file (sdk path, etc)
2626
local.properties
27-
gradle.properties
2827
keystore.properties
2928

3029
### Mac

app/src/main/AndroidManifest.xml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,16 @@
3030
android:name=".ui.activity.CodeReadActivity"
3131
android:configChanges="keyboardHidden|orientation|screenSize"
3232
android:label="@string/title_activity_code_read"
33-
android:theme="@style/Theme.CodeReader.NoActionBar"/>
33+
android:theme="@style/Theme.CodeReader.NoActionBar">
34+
<intent-filter>
35+
<action android:name="android.intent.action.VIEW"/>
36+
<category android:name="android.intent.category.DEFAULT" />
37+
<data android:mimeType="*/*" />
38+
<data android:scheme="content" />
39+
<data android:scheme="file" />
40+
</intent-filter>
41+
42+
</activity>
3443
<activity
3544
android:name="com.loopeer.directorychooser.DirectoryFileChooserActivity"
3645
android:theme="@style/Theme.CodeReader.NoActionBar"/>

app/src/main/java/com/loopeer/codereader/model/Repo.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@ public static Repo parse(FileNod node) {
3838
return result;
3939
}
4040

41+
public Repo(String name, String absolutePath, boolean isFolder) {
42+
this.name = name;
43+
this.absolutePath = absolutePath;
44+
this.isFolder = isFolder;
45+
}
46+
4147
public DirectoryNode toDirectoryNode() {
4248
DirectoryNode node = new DirectoryNode();
4349
node.name = name;

app/src/main/java/com/loopeer/codereader/ui/activity/CodeReadActivity.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,13 @@ private void parseIntent(Bundle savedInstanceState) {
7373
}
7474
Intent intent = getIntent();
7575
Repo repo = (Repo) intent.getSerializableExtra(Navigator.EXTRA_REPO);
76+
if (repo == null) {
77+
String openFilePath = intent.getData().getPath();
78+
String[] mids = openFilePath.split("/");
79+
String name = mids[mids.length - 1];
80+
repo = new Repo(name, openFilePath, false);
81+
repo.id = String.valueOf(CoReaderDbHelper.getInstance(this).insertRepo(repo));
82+
}
7683
CoReaderDbHelper.getInstance(this).updateRepoLastModify(Long.valueOf(repo.id)
7784
, System.currentTimeMillis());
7885
mDirectoryNode = repo.toDirectoryNode();

app/src/main/java/com/loopeer/codereader/ui/fragment/CodeReadFragment.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -136,10 +136,8 @@ private void setupToolbar() {
136136
}
137137

138138
private void openFile() {
139+
if (mCodeContentLoader == null) return;
139140
mCodeContentLoader.showProgress();
140-
if (mWebCodeRead == null) {
141-
return;
142-
}
143141
mWebCodeRead.clearHistory();
144142
if (mNode == null) {
145143
if (mOpenFileAfterLoadFinish)
@@ -169,7 +167,6 @@ private void openImageFile() {
169167
public void openFile(DirectoryNode node) {
170168
mOpenFileAfterLoadFinish = true;
171169
mNode = node;
172-
if (!isVisible()) return;
173170
openFile();
174171
}
175172

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ buildscript {
66
mavenCentral()
77
}
88
dependencies {
9-
classpath 'com.android.tools.build:gradle:2.1.3'
9+
classpath 'com.android.tools.build:gradle:2.3.0-alpha1'
1010
classpath 'me.tatarka:gradle-retrolambda:3.2.5'
1111
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
1212
classpath 'com.squareup.sqldelight:gradle-plugin:0.4.4'

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
target_sdk_version=24
22
min_sdk_version=14
3-
build_tools_version=24.0.0
3+
build_tools_version=25.0.0
44
compile_sdk_version=24
5-
version_code=8
5+
version_code=9
66
version_name=1.0.2
77

8-
support_version=24.1.1
8+
support_version=25.0.1
99
butterknife_version=8.2.1
1010
markdownj=0.4
1111
retrofit=2.1.0

0 commit comments

Comments
 (0)