Your comments

Это самое что ни на есть решение проблемы. Вопрос стоит закрыть

Для меня это весьма критичная фича

Идея наипростейшая, реализация -- не такая уж простая, но функция просто необходимая!