Посещаю иногда страницы наподобие about:config или chrome://global/content/config.xul. Хотелось бы, чтобы эти посещения находили отражение в истории, и чтобы при вводе config в адресной строке эти адреса указывались бы в качестве возможных вариантов. Как можно этого добиться?
Отредактировано luitzen (28-12-2008 23:18:16)
Отсутствует
А зачем? Не совсем понятно.
"Зачем" - как раз понятно. Ну лень человеку каждый раз набивать "about:config" и т.п. А задача, скорее всего, неразрешима, и сделано это абсолютно умышленно и разумно, с тем, как я понимаю, чтобы свести к минимуму вероятность случайного захода на эти страницы. Представьте себе, например - дитё пользователя порезвилось!
"Большинство философов до сих пор придерживается весьма нефилософских воззрений на многие вопросы философии" Эдгар Аллан По
Отсутствует
luitzen
Может проще в "Закладки" их добавить?
Отредактировано Selfmademan (29-12-2008 11:00:54)
Двести лет назад историк Карамзин побывал во Франции. Русские эмигранты спросили его: "Что, в двух словах, происходит на родине?"
Карамзину и двух слов не понадобилось. "Воруют!" — ответил Карамзин…
Отсутствует
ОК, спасибо всем.
сделано это абсолютно умышленно и разумно…
Тогда такой вопрос: где конкретно это сделано?
Иначе говоря, в каком именно файле следует искать строки наподобие if(!isChromeOrAboutURL(url)){addToHistory(url);},
чтобы их оттуда выполоть?
Отредактировано luitzen (29-12-2008 11:10:38)
Отсутствует
Вот что пишут:
canAddURI()
This method checks if the given URI would be added to the history or not. Many types of URIs, such as "chrome:" URIs, are not stored when addURI is called. This function allows you to determine whether it will be or not.
You don't have to worry about calling this, addPageToSession/addURI will always check before actually adding the page.
Так что, правкой какого-нибудь JavaScript не обойтись
Отсутствует
Я так понял, что canAddURI вызывается внутри addURI, в самом же canAddURI есть такие строки:
// now check for all bad things if (scheme.EqualsLiteral("about") || scheme.EqualsLiteral("imap") || scheme.EqualsLiteral("news") || scheme.EqualsLiteral("mailbox") || scheme.EqualsLiteral("moz-anno") || scheme.EqualsLiteral("view-source") || scheme.EqualsLiteral("chrome") || scheme.EqualsLiteral("data")) { *canAdd = PR_FALSE; return NS_OK; }
Более или менее понятно, что хочется тут изменить.
Но прежде чем учиться to build Firefox from source under Windows XP, хотелось бы узнать, нет ли ещё каких подводных камней в других местах кода. Ну, к примеру, будет вылетать исключение при попытке добавить посещение в 'places.sqlite' (не хватает, мол, инфы, чтобы заполнить такой-то столбец) или ещё чего…
Если подводные камни есть, я бы заранее забросил это дело…
Отредактировано luitzen (11-01-2009 14:44:22)
Отсутствует
По моим наблюдениям, добавление в закладки полностью решает задачу в 3.0-3.1. После этого адреса прекрасно вызываются в выпадающем списке адресной строки, как и посещенные адреса.
Добавлено 12-01-2009 04:11:02
Извините, что я с грубой реальностью после ваших высших материй.
Отсутствует