summaryrefslogtreecommitdiff
path: root/src/direct/DirectPhotoPage.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/direct/DirectPhotoPage.vala')
-rw-r--r--src/direct/DirectPhotoPage.vala11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/direct/DirectPhotoPage.vala b/src/direct/DirectPhotoPage.vala
index b2e130d..4dfd520 100644
--- a/src/direct/DirectPhotoPage.vala
+++ b/src/direct/DirectPhotoPage.vala
@@ -559,8 +559,15 @@ public class DirectPhotoPage : EditingHostPage {
}
private void on_dphoto_can_rotate_changed(bool should_allow_rotation) {
- enable_rotate(should_allow_rotation);
- }
+ // since this signal handler can be called from a background thread (gah, don't get me
+ // started...), chain to the "enable-rotate" signal in the foreground thread, as it's
+ // tied to UI elements
+ Idle.add(() => {
+ enable_rotate(should_allow_rotation);
+
+ return false;
+ });
+ }
protected override DataView create_photo_view(DataSource source) {
return new DirectView((DirectPhoto) source);