-
> расширения тормозят.
Да я бы не сказал. Не без глюков мелких конечно, но работает нормально.
-
>[20] DVM © (2008-08-08 16:17:00) а я не только сказал, но и вижу. тормозит неимоверно. а опера — нет.
--- Do what thou wilt shall be the whole of the Law.
-
> ketmar © (08.08.08 16:19) [21]
> а я не только сказал, но и вижу.
А я думаешь это придумал?
-
>[22] DVM © (2008-08-08 16:30:00) отойди от своего гигагерцового покемона и поставь оперу на pIII/600. и тормозиллу туда же. увидишь.
--- Understanding is not required. Only obedience.
-
> ketmar © (08.08.08 16:36) [23]
то же самое тебе могу посоветовать поставить на 386DX40. Ну или на P100.
-
> отойди от своего гигагерцового покемона и поставь оперу > на pIII/600.
Мыши плакали, кололись, но продолжали есть кактусы.
-
>[25] DVM © (2008-08-08 16:41:00) если у меня весь нормальный софт работает быстро — не вижу причины покупать покемона. ненормальный софт просто сношу.
--- Do what thou wilt shall be the whole of the Law.
-
-
Ну вот, так и знал, что это не баг, и особая микрософтовская фича :(
-
> ketmar © (08.08.08 16:50) [26] > > >[25] DVM © (2008-08-08 16:41:00) > если у меня весь нормальный софт работает быстро — не вижу > причины покупать покемона. ненормальный софт просто сношу.
Небось Gentoo свою неделю компилируешь и до ума доводишь. А я свою FreeBSD (+ПО) за несколько часов с нуля из исходников собираю на 2,8 "гигагерцовом покемоне".
-
Gecko хорош тем, что он есть и под *nix. Если пишется кроссплатформенное и нужен движок браузера - удобно.
-
> Пробегал2.... (09.08.08 11:08) [30] > > Gecko хорош тем, что он есть и под *nix. Если пишется кроссплатформенное > и нужен движок браузера - удобно.
У Гекко почти нет документации (или она скудная) но есть исходники в которых комментарии выступают за документацию.
У Trident(IE) есть документация, но она верна всего на 80%, остальное нужно домысливать и проверять экспериментами. В общем работает не по стандарту, а как Биллу схотелось. Ну а исходники, думаю, я даже не хотел бы их видеть, если бы они были в открытом доступе.
IE хорошо - кинул компоненту на форму, прикрутил 5 кнопок и гордишься своим собственным браузером.
С Gecko немного сложнее, но изменить можно все, хоть броузер в 3D сделать можно.
-
> Gecko
а у меня почему-то другие ассоциации вызывает Fallout...
-
Городской Шаман (09.08.08 16:24) [31]
не понимаю зачем ты выделил мою цитату. Обычно цитируют, когда отвечают на нее... Твой пост вполне автономный ;)
-
> Пробегал2.... (09.08.08 11:08) [30] > > Gecko хорош тем, что он есть и под *nix. Если пишется кроссплатформенное > и нужен движок браузера - удобно.
Н, да. Сейчас собираю Eclipse 3.2.2 из порта под FreeBSD. В зависимостях оказался xulrunner-1.8.0.4. Появилось окошко конфигурации, где была опция "Enable JAVA xpcom". Посчитал ненужной... http://www.mozilla.org/projects/blackwood/overview.html
-
> Пробегал2.... (09.08.08 22:54) [33] > > Городской Шаман (09.08.08 16:24) [31] > > не понимаю зачем ты выделил мою цитату. Обычно цитируют, > когда отвечают на нее... Твой пост вполне автономный ;)
Я к тому что Gecko хорошо, когда ты не знаешь на какой машине будет работать твоё приложение, а поведение встроенного броузера должно быть чётко детерминированным, а не хитрофичным как IE. Так что использование Gecko выгодно не только в случае кросплатформенных приложений, а когда есть желание перестать винить компилятор и систему в глюках твоей программы.
-
не знаю, сколько не использовал компонент TWebBrowser - все четко. Еще четче в компоненте TEmbeddedWB. А если туда прикрутить модуль от Nikkie, то все вообще шоколадно ;)
Если же ты говоришь с точки зрения именно разработчиков таких компонент, что их сложно писать - ну может быть, не знаю.
Хотя скажу, что у MS очень четко документация совпадает с практикой. Если ты реально нашел расхождение документации MS с поведением программ - пиши, я уверен все быстро поправят, или функционал, или документацию. Другое дело, что не всегда по стандартам внешним они работают, но это уже другое. Такой монстр работая не по стандарту может легко нечаянно создать другой стандарт и тогда уже вроде получается, как все хорошо ;)
-
> Пробегал2.... (10.08.08 00:24) [36]
Например эту проблему не решил http://pda.delphimaster.net/?id=1218208042&n=5Ну и остальные есть сложности, например если раз использовать компонент TwebBrowser в своем приложении то после его уничтожения память не освобождается (библиотеки не выгружаются). А мне всего лишь для снапшотов и содержимого сайтов. Так как идёт чтение многих сайтов то мигающий курсор может раздражать пользователя. Если создавать как CoInternenExplorer.Create, то невозможно извлечь у документа рендер или IViewObject. HWND, возвращаемый IWebBrowser2 этим IE тоже какой-то левый.
-
Городской Шаман (10.08.08 1:11) [37] Например эту проблему не решил [TWebBrowser отключить смену курсора вне окна компонента.]
ну это говорит только о том, что ты ее не решил ;) Например, в Maxhton очевидно решили. Там пока грузится сайт тоже курсор становится песочными часами. Но стоит двинуть мышку - курсор сразу становится обычным...
Пробовал опять же менять Screen.Cursor после начала навигации?
Городской Шаман (10.08.08 1:11) [37] Ну и остальные есть сложности, например если раз использовать компонент TwebBrowser в своем приложении то после его уничтожения память не освобождается (библиотеки не выгружаются).
ээээ... А с каких пор вообще библиотеки прилинкованные статично выгружаются?
-
> Пробегал2.... (10.08.08 01:43) [38] > > Городской Шаман (10.08.08 1:11) [37] > Например эту проблему не решил > [TWebBrowser отключить смену курсора вне окна компонента. > ] > > ну это говорит только о том, что ты ее не решил ;) > Например, в Maxhton очевидно решили. Там пока грузится сайт > тоже курсор становится песочными часами. Но стоит двинуть > мышку - курсор сразу становится обычным...
Так и я могу ловить событие на загрузку, но это особая городская магия, мне бы хотелось стандартное решение. То же окно nsIBaseWindow отображает курсор загрузки только в своей области и не лезет на уровень приложения - задавать там свои права. А какого типа решения в EWB можно осознать по этому избранному коду
procedure TEmbeddedWB.Hook;
begin
if not bHook and not (csDesigning in ComponentState) then
begin
FParentForm := TForm(Owner);
if (FParentForm <> nil) and (FParentForm.HandleAllocated) then
begin
FOldWindowProc := FParentForm.WindowProc;
FParentForm.WindowProc := FormWndProc;
bHook := True;
end;
end;
end;
procedure TEmbeddedWB.UnHook;
begin
if bHook and not (csDesigning in ComponentState) then
begin
if (FParentForm <> nil) and (FParentForm.HandleAllocated) then
FParentForm.WindowProc := FOldWindowProc;
FParentForm := nil;
bHook := False;
end;
end;
procedure SetUserAgent(var UserAgent: string);
var
reg: TRegistry;
begin
Reg := TRegistry.Create;
if UserAgent <> EWB_INFO then
UserAgent := UserAgent + EWB_INFO;
with Reg do
begin
RootKey := HKEY_CURRENT_USER;
try
if OpenKey('\Software\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Post Platform', True) then
WriteString(UserAgent, '');
finally
CloseKey;
Free;
end;
end;
end;
Вот так попользуешься и будешь удивляться откуда там чудеса и леший бродит...
|