diff options
author | Jaakko Keränen <jaakko.keranen@iki.fi> | 2021-06-09 19:01:15 +0300 |
---|---|---|
committer | Jaakko Keränen <jaakko.keranen@iki.fi> | 2021-06-09 19:01:15 +0300 |
commit | f63ed76597b462c60b3a6ad89f8c165ffb87d00c (patch) | |
tree | 2aca3537930bce28acff14c0cee0a11fa1988661 /src/ui/mobile.c | |
parent | 5f9685010addd4a0f04c13f889856084381dd1c6 (diff) | |
parent | ee17ef3d0135027fbc4ff816dd9e793b4bb0b883 (diff) |
Merge branch 'dev' into work/typesetter
# Conflicts:
# src/gmdocument.c
# src/ui/documentwidget.c
# src/ui/inputwidget.h
Diffstat (limited to 'src/ui/mobile.c')
-rw-r--r-- | src/ui/mobile.c | 53 |
1 files changed, 34 insertions, 19 deletions
diff --git a/src/ui/mobile.c b/src/ui/mobile.c index 6c3a0b32..263fc141 100644 --- a/src/ui/mobile.c +++ b/src/ui/mobile.c | |||
@@ -381,22 +381,22 @@ void finalizeSheet_Mobile(iWidget *sheet) { | |||
381 | } | 381 | } |
382 | /* TODO: In portrait, top panel and detail stack are all stacked together. | 382 | /* TODO: In portrait, top panel and detail stack are all stacked together. |
383 | 383 | ||
384 | Landscape Layout Portrait Layout | 384 | Landscape Layout Portrait Layout |
385 | 385 | ||
386 | ┌─────────┬──────Detail─Stack─────┐ ┌─────────┬ ─ ─ ─ ─ ┐ | 386 | ┌─────────┬──────Detail─Stack─────┐ ┌─────────┬ ─ ─ ─ ─ ┐ |
387 | │ │┌───────────────────┐ │ │ │Detail | 387 | │ │┌───────────────────┐ │ │ │Detail |
388 | │ ││┌──────────────────┴┐ │ │ │Stack │ | 388 | │ ││┌──────────────────┴┐ │ │ │Stack │ |
389 | │ │││┌──────────────────┴┐│ │ │┌──────┐ | 389 | │ │││┌──────────────────┴┐│ │ │┌──────┐ |
390 | │ ││││ ││ │ ││┌─────┴┐│ | 390 | │ ││││ ││ │ ││┌─────┴┐│ |
391 | │ ││││ ││ │ │││ │ | 391 | │ ││││ ││ │ │││ │ |
392 | │Top Panel││││ ││ │Top Panel│││ ││ | 392 | │Top Panel││││ ││ │Top Panel│││ ││ |
393 | │ ││││ Panels ││ │ │││Panels│ | 393 | │ ││││ Panels ││ │ │││Panels│ |
394 | │ ││││ ││ │ │││ ││ | 394 | │ ││││ ││ │ │││ ││ |
395 | │ │└┤│ ││ │ │││ │ | 395 | │ │└┤│ ││ │ │││ │ |
396 | │ │ └┤ ││ │ │└┤ ││ | 396 | │ │ └┤ ││ │ │└┤ ││ |
397 | │ │ └───────────────────┘│ │ │ └──────┘ | 397 | │ │ └───────────────────┘│ │ │ └──────┘ |
398 | └─────────┴───────────────────────┘ └─────────┴ ─ ─ ─ ─ ┘ | 398 | └─────────┴───────────────────────┘ └─────────┴ ─ ─ ─ ─ ┘ |
399 | offscreen | 399 | offscreen |
400 | */ | 400 | */ |
401 | /* Modify the top sheet to act as a fullscreen background. */ | 401 | /* Modify the top sheet to act as a fullscreen background. */ |
402 | setPadding1_Widget(sheet, 0); | 402 | setPadding1_Widget(sheet, 0); |
@@ -759,6 +759,9 @@ void finalizeSheet_Mobile(iWidget *sheet) { | |||
759 | else { | 759 | else { |
760 | arrange_Widget(sheet); | 760 | arrange_Widget(sheet); |
761 | } | 761 | } |
762 | if (!useMobileSheetLayout_()) { | ||
763 | setupSheetTransition_Mobile(sheet, iTrue); | ||
764 | } | ||
762 | postRefresh_App(); | 765 | postRefresh_App(); |
763 | } | 766 | } |
764 | 767 | ||
@@ -784,16 +787,28 @@ void setupMenuTransition_Mobile(iWidget *sheet, iBool isIncoming) { | |||
784 | } | 787 | } |
785 | 788 | ||
786 | void setupSheetTransition_Mobile(iWidget *sheet, iBool isIncoming) { | 789 | void setupSheetTransition_Mobile(iWidget *sheet, iBool isIncoming) { |
787 | if (isSideBySideLayout_()) { | 790 | if (!useMobileSheetLayout_()) { |
791 | if (prefs_App()->uiAnimations) { | ||
792 | setFlags_Widget(sheet, horizontalOffset_WidgetFlag, iFalse); | ||
793 | if (isIncoming) { | ||
794 | setVisualOffset_Widget(sheet, -height_Widget(sheet), 0, 0); | ||
795 | setVisualOffset_Widget(sheet, 0, 200, easeOut_AnimFlag | softer_AnimFlag); | ||
796 | } | ||
797 | else { | ||
798 | setVisualOffset_Widget(sheet, -height_Widget(sheet), 200, easeIn_AnimFlag); | ||
799 | } | ||
800 | } | ||
801 | return; | ||
802 | } | ||
803 | if(isSideBySideLayout_()) { | ||
788 | return; | 804 | return; |
789 | } | 805 | } |
806 | setFlags_Widget(sheet, horizontalOffset_WidgetFlag, iTrue); | ||
790 | if (isIncoming) { | 807 | if (isIncoming) { |
791 | setFlags_Widget(sheet, horizontalOffset_WidgetFlag, iTrue); | ||
792 | setVisualOffset_Widget(sheet, size_Root(sheet->root).x, 0, 0); | 808 | setVisualOffset_Widget(sheet, size_Root(sheet->root).x, 0, 0); |
793 | setVisualOffset_Widget(sheet, 0, 200, easeOut_AnimFlag); | 809 | setVisualOffset_Widget(sheet, 0, 200, easeOut_AnimFlag); |
794 | } | 810 | } |
795 | else { | 811 | else { |
796 | setFlags_Widget(sheet, horizontalOffset_WidgetFlag, iTrue); | ||
797 | const iBool wasDragged = iAbs(value_Anim(&sheet->visualOffset)) > 0; | 812 | const iBool wasDragged = iAbs(value_Anim(&sheet->visualOffset)) > 0; |
798 | setVisualOffset_Widget(sheet, size_Root(sheet->root).x, wasDragged ? 100 : 200, | 813 | setVisualOffset_Widget(sheet, size_Root(sheet->root).x, wasDragged ? 100 : 200, |
799 | wasDragged ? 0 : easeIn_AnimFlag); | 814 | wasDragged ? 0 : easeIn_AnimFlag); |