summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMax Eliaser <[email protected]>2018-12-30 14:20:02 -0800
committerlukefromdc <[email protected]>2019-01-03 20:29:22 +0000
commit9991fb1762bd44762c4ee43b2484f30114a307d4 (patch)
tree245286d4ab0336ecd6753bb61746f1f91731b933 /src
parente51b16d36919d1f075804cffcb9739c2ce761028 (diff)
downloadcaja-9991fb1762bd44762c4ee43b2484f30114a307d4.tar.bz2
caja-9991fb1762bd44762c4ee43b2484f30114a307d4.tar.xz
[libcaja-private] Re-check file MIME type before picking an application.
An example of when the MIME type might change: a file is initially created with 0 bytes of content, but more data is added later. Empty files are always detected as plain text, but the file might not be empty anymore when the user opens it. This commit affects the behavior when double-clicking a file and when right- clicking on it too.
Diffstat (limited to 'src')
-rw-r--r--src/file-manager/fm-directory-view.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c
index dcf96b2a..7105036a 100644
--- a/src/file-manager/fm-directory-view.c
+++ b/src/file-manager/fm-directory-view.c
@@ -8813,6 +8813,13 @@ real_update_menus (FMDirectoryView *view)
file = CAJA_FILE (l->data);
+ /* Double-check if the files' MIME types have changed before we
+ commit to a choice of applications for them. This can happen
+ if, for instance, a file was originally created with 0 bytes
+ and then content was added to it later-- it will change from
+ plaintext to something else. */
+ caja_file_refresh_info (file);
+
if (!caja_mime_file_opens_in_external_app (file)) {
show_app = FALSE;
}