WebView: Text-based Browser

...
  • SoUrcerer wrote:А я говорю, что работа ведется и уже почти закончена.
    Хорошо, тогда подождём. Я стал очень недоверчив после разговора с HEX, который когда-то говорил, что пишет бразер. Я ему писал раза 4, на все вопросы он отвечал: "Почти готов, выложить не могу, т.к. ещё не до конца", ну и где его браузер?..
    Из хаоса в космос
  • В ЛС смотри.
  • Обнаружил два бага:
    1) В последней версии не прокрутка скроллом почти перестала работать, в основном только боковые кнопки реагируют. С клавиатуры пролистывается нормально.
    2) В адресной строке показывается мусор.
    Spoiler:
    htmlv.png
    htmlv.png (8.47 KiB)
    Viewed 3916 times
    В то время как, например, в Opera показывается только:
    Spoiler:search.php?search_id=active_topics
    Есть подозрение, что мусор влияет на загрузку более длинных страниц. Возможно я ошибаюсь насчет влияния на загрузку, но то что он не должен показываться полностью это точно - я с SoUrcerer проконсультировался предварительно.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:2) В адресной строке показывается мусор.
    Собственно sid показываться не должен, но поскольку поддержки "печенюшек" (кукисов) нет, то почему бы не передавать их через GET?), за отсутствием лучшего. Хоть какая то передача данных сессии.
  • Mario_r4 wrote:Обнаружил два бага:
    1) В последней версии не прокрутка скроллом почти перестала работать, в основном только боковые кнопки реагируют. С клавиатуры пролистывается нормально.
    Исправлено r3477
    Mario_r4 wrote:2) В адресной строке показывается мусор.
    Это не мусор. Такие ссылки на странице выдаёт сервер для QEMU. Думаю, разница в том, что в Опере ты залогинен, а в HTMLv нет и этот ?sid=* что-то вроде id сессии.
    Spoiler:
    fdgfe.png
    fdgfe.png (22.69 KiB)
    Viewed 3848 times
    Из хаоса в космос
  • Leency, take a look at "&" - that's the reason of some broken links. There should be just "&"
  • Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • SoUrcerer wrote:Leency, take a look at "&" - that's the reason of some broken links. There should be just "&"
    Нет никакой разницы между & и & за тем исключением что именно "&" соответствует стандарту и проходит валидацию. Если использовать &, то валидатор как бы намекает что это не соответствует стандарту и требует поправить!
    по стандарту, набор символов в купе с впереди идущим "&" - это html-сущность(  или > "мнемоники").
    Чтоб таким не занимался валидатор(браузеры, кстати, тоже такое делают, правда, в отличии от валидатора, если не получилось найти эквивалент в списке замены, они так и оставят просто "&") надо просто воспользоваться сущностью "&", которая означает тот же символ "&".
    И подставляет ID сессии как раз таки браузер к ссылке, а сам ID берет из кукисов.
  • Теперь понял насчёт &. Нужно писать функцию, которая заменяет одну строку на другую; кто подскажет как она называется? Вроде string_replace.

    Ещё один момент: мальчик из группы вконтакте 99 года рождения натолкнул меня на интересную мысть по поводу таблиц. Теперь я знаю как в текущей реализации их сделать (должно быть несложно... не сложнее чем копирование папок) и очень хочу попробовать эту идую, вот только не знаю когда это будет. Завтра у меня начинается испытательный срок в моей первой IT компании - я буду тестировщиком.
    Из хаоса в космос
  • Leency wrote:Теперь понял насчёт &. Нужно писать функцию, которая заменяет одну строку на другую; кто подскажет как она называется? Вроде string_replace.

    Ещё один момент: мальчик из группы вконтакте 99 года рождения натолкнул меня на интересную мысть по поводу таблиц. Теперь я знаю как в текущей реализации их сделать (должно быть несложно... не сложнее чем копирование папок) и очень хочу попробовать эту идую, вот только не знаю когда это будет. Завтра у меня начинается испытательный срок в моей первой IT компании - я буду тестировщиком.
    Отлично! Поддержка таблиц - это гуд!
    Spoiler:

    Code: Select all

    ;----------------------------------------------------- 
    ; Функция замены подстроки в строке 
    ;----------------------------------------------------- 
    ; lpSrc - указатель на исходную строку 
    ; lpDst - указатель на буфер для полученной строки 
    ; lpPattern - указатель на заменяемую подстроку 
    ; lpReplace - указатель на строку для замены 
    ; dNum - количество замен (0 - заменить все) 
    ;----------------------------------------------------- 
    proc    _replace lpSrc:DWORD, lpPattern:DWORD, lpReplace:DWORD,\ 
                     lpDst:DWORD, dNum:DWORD 
      
            pusha 
      
            ; Указатель на буфер-приемник 
            mov     edx,[lpDst] 
      
            ; Счетчик замен 
            xor     ebx,ebx 
      
            ; Исходная строка не пустая? 
            mov     ecx,[lpSrc] 
            cmp     byte [ecx],0 
            jz      .loc_ret 
      
            ; Заменяемая строка не пустая? 
            mov     eax,[lpPattern] 
            cmp     byte [eax],0 
            jz      .loc_copy_all 
      
    .loc_scan: 
            mov     esi,ecx 
            mov     edi,[lpPattern] 
      
            ; Исходная строка закончилась? 
            cmp     byte [esi],0 
            je      .loc_end_replace 
    @@: 
            ; Строки совпали с паттерном? 
            cmp     byte [edi],0 
            je      .loc_move_replace 
      
            ; Символ совпадает с 
            lodsb 
      
            ; Заменять все вхождения? 
            cmp     [dNum],0 
            je      .loc_skip_counter 
      
            ; Уже заменили нужное количество? 
            cmp     ebx,[dNum] 
            je      .loc_move_one_char 
    .loc_skip_counter: 
            cmp     al,byte [edi] 
            jne     .loc_move_one_char 
      
            inc     edi 
            jmp     @b 
      
    .loc_move_replace: 
            ; Увеличить счетчик замен 
            inc     ebx 
      
            mov     ecx,esi 
      
            ; Записать заменяющую строку 
            mov     esi,[lpReplace] 
            mov     edi,edx 
    @@: 
            lodsb 
            or      al,al 
            jz      .loc_scan 
            stosb 
            inc     edx 
            jmp     @b 
      
    .loc_move_one_char: 
            ; Скопировать один символ 
            mov     al,byte [ecx] 
            mov     byte [edx],al 
            inc     edx 
            inc     ecx 
            jmp     .loc_scan 
      
    .loc_end_replace: 
            ; Записать финальный 0 в строку 
            mov     byte [edx],0 
      
            jmp     .loc_ret 
    .loc_copy_all: 
            ; Просто скопировать исходную строку 
            mov     esi,[lpSrc] 
            mov     edi,[lpDst] 
    @@: 
            lodsb 
            stosb 
            or      al,al 
            jnz     @b 
    .loc_ret: 
            popa 
            ret 
    endp
  • Мальчик - это я
    The motto of the wise is: be prepared for surprised http://vlampochke.esy.es/
  • У предложенной реализации таблиц могут быть побочные стороны. Таблицы могут включать теги <br>, <hr> и картинки, что поломает форматирование - это надо учитывать.
  • ещё есть серьёзный баг ссылки типа <a href='vk.com'> (одинарная кавычка) не поддерживается вообще во всех атрибутах может быть и ="" и ='' для примера абсолютно валидный сайт типа http://myrusakov.ru
    The motto of the wise is: be prepared for surprised http://vlampochke.esy.es/
  • Одинарные кавычки работают http://i.imgur.com/ppRSDkD.png
    Из хаоса в космос
  • Who is online

    Users browsing this forum: No registered users and 0 guests