Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-26692] iOS: Refactor Ti.UI.iOS.SplitWindow to use UISplitViewController

GitHub Issuen/a
TypeImprovement
PriorityHigh
StatusOpen
ResolutionUnresolved
Affected Version/sn/a
Fix Version/sn/a
ComponentsiOS
Labelsios, splitwindow
ReporterVijay Singh
AssigneeVijay Singh
Created2019-01-05T01:01:18.000+0000
Updated2021-02-24T00:37:24.000+0000

Description

From iOS 8+, Apple has given UISplitViewController for all iOS devices. Before that it was for iPad only. To support this feature in iOS 7 and below for all iOS devices, we were using custom one rather UISplitViewController. It's better to refactor Ti.UI.iOS.SplitWindow to use UISplitViewController.

Comments

  1. Vijay Singh 2020-12-02

    I spend sometime to use UISplitViewController in TiUISplitWindow . On comparing this implementation (TiUISplitWindow with UISplitViewController) and current implementation of TiUISplitWindow - 1. In current implementation for every device (iPhone and iPad) both windows can be shown side by side in portrait and landscape mode. But in implementing TiUISplitWindow with UISplitViewController, it has limitation for iPhones. 1. All iPhone and iPod touch, in portrait mode, can show only one window on screen at a time. 2. In landscape mode, only iPhone plus , iPhone 11, iPhone 11 Pro max, XS Max and XR can show two window side by side. Others can not. 3. All iPads can show two window side by side in both landscape and portrait mode. On basis of above, if we implement TiUISplitWindow using UISplitViewController, the functionality of TiUISplitWindow to show side by side window on iPhones, will break completely. Should we implement this (using UISplitViewController) under different API name (e.g. TiUISplitViewWindow) instead of TIUISplitWindow and deprecate TIUISplitWindow. So that developers can slowly move to new APIs. But what can be better API name than TiUISplitWindow?
  2. Hans Knöchel 2020-12-03

    *tl;dr*: As a developer using this in one of our projects, it's totally fine. It think it's best to move to the native API here. And 10.0.0 is the perfect time for that. Developers can actively benefit from the native view and users can benefit from the behavior they know from other apps. It may be worth a little paragraph in the release notes and docs that the behavior regarding side-by-side windows changed in the native favor, but thats basically all. *EDIT*: Support for macOS is also the big thing, especially as 90 % of the "typical" catalyst apps now use the master/detail view concept known from Finder thats possible with the UISplitViewController.
  3. Vijay Singh 2020-12-04

    Thanks for you input [~hknoechel].

JSON Source