Фоновая картинка.
-
Идея про одно "приложение-рабочий стол" достаточно интригующа.Из хаоса в космос
Да-да. Здравствуй милый сердцу Проводник.
Не так плоха была идея, как реализация, особенно в первых версиях всем знакомой ОС. Есть идеи лучше я не против, лишь понравилось как Серж расписал.
Из хаоса в космос
В режиме 640*480 24 на qemu обнаружил вот такое (см. рисунок). Не уверен что виновата именно фоновая картинка. Ядро последнее версии 2477.
- Attachments
-
-
gl_12_03_19.png (62.69 KiB)Viewed 7443 times
-
Что прямо так само появилось? Скачал чистый образ 2477, закинул в директорию Qemu и запустил выбрав режим 640*480 24? И совершенно ничего дополнительного не делал?
Mario, баг подтверждаю
Использую стандартный VGA BIOS из поставки Qemu, с биосом VMWare такого нет. С тем же БИОС и большими разрешениями проблем не отмечаю.
Использую стандартный VGA BIOS из поставки Qemu, с биосом VMWare такого нет. С тем же БИОС и большими разрешениями проблем не отмечаю.
Баг проявляется с победоносной ревизии #2447.
Хм... у меня прописано:
Qemu старый версии 0.12.2 будут пытаться воспроизвести.-vga vmware
подтверждаю наличие бага на всех версиях qemu с 0.14, в том числе на сегодняшней сборке из гита
Да, воспроизвел я уже. Сейчас буду, методом исключения, выяснять чему в стандартном Qemu помешала замечательная ревизия 2446.
Нашел:
Мне сразу вспомнилось:
Spoiler:
Spoiler:
Исправлено в SVN r. 2480
Кстати, следует признать - я ошибался. Ядро таки восстанавливает не весь фон, а только тот кусок который нужно.art_zh wrote:Mario
А пошто токмо -1 ?
Есть еще функции свертки и перемещеня окна, там тоже фон перерисовывать надо.
Вот этот кусок тому подтвержение:
Spoiler:
Code: Select all
no_set_bgr_event:
cmp byte[REDRAW_BACKGROUND], 0 ; background update ?
jz nobackgr
cmp [background_defined], 0
jz nobackgr
; mov [draw_data+32 + RECT.left],dword 0
; mov [draw_data+32 + RECT.top],dword 0
; mov eax,[Screen_Max_X]
; mov ebx,[Screen_Max_Y]
; mov [draw_data+32 + RECT.right],eax
; mov [draw_data+32 + RECT.bottom],ebx
@@:
call drawbackground
xor eax, eax
xchg al, [REDRAW_BACKGROUND]
test al, al ; got new update request?
jnz @b
mov [draw_data+32 + RECT.left], eax
mov [draw_data+32 + RECT.top], eax
mov [draw_data+32 + RECT.right], eax
mov [draw_data+32 + RECT.bottom], eax
mov [MOUSE_BACKGROUND], byte 0
nobackgr:
З.Ы. Оказывается фон изменяется не совсем эффективно - восстанавливается разница межу крайними положениями перетаскиваемого окна. Т.е. если окно будет в левом верхнем углу до упора, а мы его перетащим в правый нижний угол до упора, то перерисуется весь фон.
SVN r. 2514 теперь фон при перемещении окна восстанавливается только по старой позиции, где было окно. Соответственно из "зоны поражения" ушли все окна которые раньше были вынуждены перерисовываться, так как обновлялся больший кусок фона.
Ночная сборка не собралась, и выдалась ошибка:
Ночная сборка не собралась, и выдалась ошибка:
Post commit hook failed (exit code 2) with output:
svn: E000028: Can't write to file '/home/autobuild/localcopy/.svn/tmp/nnN2VM': No space left on device
Failed to update repository copy
Я почистила место и перезапустила скрипт автосборки руками, ошибок при сборке не было.
Сделаем мир лучше!
Who is online
Users browsing this forum: No registered users and 0 guests