diff options
Diffstat (limited to 'src/ui/window.c')
-rw-r--r-- | src/ui/window.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/ui/window.c b/src/ui/window.c index d64e7ebf..75dffb56 100644 --- a/src/ui/window.c +++ b/src/ui/window.c | |||
@@ -45,6 +45,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ | |||
45 | #if defined (iPlatformAppleDesktop) | 45 | #if defined (iPlatformAppleDesktop) |
46 | # include "macos.h" | 46 | # include "macos.h" |
47 | #endif | 47 | #endif |
48 | #if defined (iPlatformAppleMobile) | ||
49 | # include "ios.h" | ||
50 | #endif | ||
48 | 51 | ||
49 | #include <the_Foundation/file.h> | 52 | #include <the_Foundation/file.h> |
50 | #include <the_Foundation/path.h> | 53 | #include <the_Foundation/path.h> |
@@ -562,6 +565,11 @@ static void setupUserInterface_Window(iWindow *d) { | |||
562 | iWidget *div = makeVDiv_Widget(); | 565 | iWidget *div = makeVDiv_Widget(); |
563 | setId_Widget(div, "navdiv"); | 566 | setId_Widget(div, "navdiv"); |
564 | addChild_Widget(d->root, iClob(div)); | 567 | addChild_Widget(d->root, iClob(div)); |
568 | |||
569 | #if defined (iPlatformAppleMobile) | ||
570 | /* System status bar needs space. */ | ||
571 | setPadding_Widget(div, 0, 4 * gap_UI, 0, 0); | ||
572 | #endif | ||
565 | 573 | ||
566 | #if defined (LAGRANGE_CUSTOM_FRAME) | 574 | #if defined (LAGRANGE_CUSTOM_FRAME) |
567 | /* Window title bar. */ | 575 | /* Window title bar. */ |
@@ -650,7 +658,7 @@ static void setupUserInterface_Window(iWindow *d) { | |||
650 | setNotifyEdits_InputWidget(url, iTrue); | 658 | setNotifyEdits_InputWidget(url, iTrue); |
651 | setTextCStr_InputWidget(url, "gemini://"); | 659 | setTextCStr_InputWidget(url, "gemini://"); |
652 | addChildFlags_Widget(navBar, iClob(url), expand_WidgetFlag); | 660 | addChildFlags_Widget(navBar, iClob(url), expand_WidgetFlag); |
653 | setPadding_Widget(as_Widget(url),0, 0, gap_UI * 1, 0); | 661 | setPadding_Widget(as_Widget(url), 0, 0, gap_UI * 1, 0); |
654 | /* Feeds refresh indicator is inside the input field. */ { | 662 | /* Feeds refresh indicator is inside the input field. */ { |
655 | iLabelWidget *fprog = new_LabelWidget(uiTextCaution_ColorEscape | 663 | iLabelWidget *fprog = new_LabelWidget(uiTextCaution_ColorEscape |
656 | "\u2605 Refreshing Feeds...", NULL); | 664 | "\u2605 Refreshing Feeds...", NULL); |
@@ -980,6 +988,9 @@ void init_Window(iWindow *d, iRect rect) { | |||
980 | SDL_FreeSurface(surf); | 988 | SDL_FreeSurface(surf); |
981 | } | 989 | } |
982 | #endif | 990 | #endif |
991 | #if defined (iPlatformAppleMobile) | ||
992 | setupWindow_iOS(d); | ||
993 | #endif | ||
983 | d->root = new_Widget(); | 994 | d->root = new_Widget(); |
984 | setFlags_Widget(d->root, focusRoot_WidgetFlag, iTrue); | 995 | setFlags_Widget(d->root, focusRoot_WidgetFlag, iTrue); |
985 | d->presentTime = 0.0; | 996 | d->presentTime = 0.0; |
@@ -1175,7 +1186,6 @@ static iBool handleWindowEvent_Window_(iWindow *d, const SDL_WindowEvent *ev) { | |||
1175 | //updateRootSize_Window_(d, iTrue); | 1186 | //updateRootSize_Window_(d, iTrue); |
1176 | invalidate_Window_(d); | 1187 | invalidate_Window_(d); |
1177 | d->isMinimized = iFalse; | 1188 | d->isMinimized = iFalse; |
1178 | printf("restored %d\n", snap_Window(d)); fflush(stdout); | ||
1179 | return iTrue; | 1189 | return iTrue; |
1180 | case SDL_WINDOWEVENT_MINIMIZED: | 1190 | case SDL_WINDOWEVENT_MINIMIZED: |
1181 | d->isMinimized = iTrue; | 1191 | d->isMinimized = iTrue; |
@@ -1316,10 +1326,14 @@ void draw_Window(iWindow *d) { | |||
1316 | const iBool gotFocus = (winFlags & SDL_WINDOW_INPUT_FOCUS) != 0; | 1326 | const iBool gotFocus = (winFlags & SDL_WINDOW_INPUT_FOCUS) != 0; |
1317 | /* Clear the window. The clear color is visible as a border around the window | 1327 | /* Clear the window. The clear color is visible as a border around the window |
1318 | when the custom frame is being used. */ { | 1328 | when the custom frame is being used. */ { |
1329 | #if defined (iPlatformAppleMobile) | ||
1330 | const iColor back = get_Color(uiBackground_ColorId); | ||
1331 | #else | ||
1319 | const iColor back = get_Color(gotFocus && d->place.snap != maximized_WindowSnap && | 1332 | const iColor back = get_Color(gotFocus && d->place.snap != maximized_WindowSnap && |
1320 | ~winFlags & SDL_WINDOW_FULLSCREEN_DESKTOP | 1333 | ~winFlags & SDL_WINDOW_FULLSCREEN_DESKTOP |
1321 | ? uiAnnotation_ColorId | 1334 | ? uiAnnotation_ColorId |
1322 | : uiSeparator_ColorId); | 1335 | : uiSeparator_ColorId); |
1336 | #endif | ||
1323 | SDL_SetRenderDrawColor(d->render, back.r, back.g, back.b, 255); | 1337 | SDL_SetRenderDrawColor(d->render, back.r, back.g, back.b, 255); |
1324 | SDL_RenderClear(d->render); | 1338 | SDL_RenderClear(d->render); |
1325 | } | 1339 | } |