Nowe posty

Autor Wątek: Rozmiar okienek na netbooku z LCD 1024x600  (Przeczytany 5232 razy)

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« dnia: 2009-01-02, 23:19:29 »
Witam
Moze ten problem juz kiedys byl, ale nie potrafie go inaczej nazwac. Z reguly nie przepadam za Xwindows i nie tykam dopoki nie musze ich uzywac. Zainstalowalem sobie je na netbooku (MSI Wind) z matryca o wzglednie malej rozdzielczosci. Niby wszystko jest ok, ale czasem napotykam programy ktorych okienka sa zbyt wysokie. Przyklad to Firefox (3.0.5). Zainstalowalem skorke LittleFox i wiekszosc elementow GUI juz sie miesci. Wyjatkiem jest np okno Preferencji albo okno automatycznego instalowania wtyczek. Probowalem wymusic ekran wirtualny ale chyba nadal i810 nie wspiera takiej opcji. Czy istnieje jakas mozliwosc wymuszenia przeskalowania okna lub przeskalowanie calego interfejsu GUI?

Offline arctgx

  • Users
  • Guru
  • *****
  • Wiadomości: 2753
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« Odpowiedź #1 dnia: 2009-01-03, 01:10:33 »
Nie wiem czy opcja Virtual byłaby poręczna. Możesz np. podać wysokość 800, ale część ekranu będzie poza monitorem i żeby dojechać , będziesz musiał zjechać wskaźnikiem myszy na krawędź od strny tej części.

Jednym ze sposobów na za duże okienka jest przytrzymać Alt, kliknąć w dowolne miejsce okna i przeciągnąć. Nie działa to na ogół z oknami zmaksymalizowanymi.

Zobacz man xorg.conf lub przykłady w sieci.
Użytkownik: Ib5sXfcCkvYR
Hasło: adam

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« Odpowiedź #2 dnia: 2009-01-03, 02:08:30 »
Cytat: arctgx
Nie wiem czy opcja Virtual byłaby poręczna. Możesz np. podać wysokość 800, ale część ekranu będzie poza monitorem i żeby dojechać , będziesz musiał zjechać wskaźnikiem myszy na krawędź od strny tej części.
Tyle że pasek menadżera zapewne też domyślnie wyląduje w tym niewidzialnym kawałku.

Cytat: arctgx
Jednym ze sposobów na za duże okienka jest przytrzymać Alt, kliknąć w dowolne miejsce okna i przeciągnąć. Nie działa to na ogół z oknami zmaksymalizowanymi.
To już jest jakieś rozwiązanie.

Cytat: arctgx
Zobacz man xorg.conf lub przykłady w sieci.
Próbowałem na kilka sposobów przekazać sterownikowi i810 ustawienia rozmiaru monitora. Wygląda na to że zawsze on konfiguruje wyjście VGA, mimo że podaje mu że opis ekranu dotyczy wyjścia LVDS.

Section "Module"
    Load        "dbe"   # Double buffer extension
    SubSection  "extmod"
      Option    "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection
# This loads the font modules
#    Load        "type1"
    Load        "freetype"
#    Load        "xtt"
# This loads the GLX module
    Load       "glx"
# This loads the DRI module
#    Load       "dri"
EndSection

Section "Files"
    FontPath   "/usr/share/fonts/TTF"
    FontPath   "/usr/share/fonts/OTF"
    FontPath   "/usr/share/fonts/Type1"
    FontPath   "/usr/share/fonts/misc"
    FontPath   "/usr/share/fonts/75dpi/:unscaled"
#    FontPath   "/usr/lib/X11/fonts/local/"
    FontPath   "/usr/lib/X11/fonts/misc/"
    FontPath   "/usr/lib/X11/fonts/75dpi/:unscaled"
    FontPath   "/usr/lib/X11/fonts/100dpi/:unscaled"
    FontPath   "/usr/lib/X11/fonts/Speedo/"
    FontPath   "/usr/lib/X11/fonts/Type1/"
    FontPath   "/usr/lib/X11/fonts/TTF/"
    FontPath   "/usr/lib/X11/fonts/OTF/"
    FontPath   "/usr/lib/X11/fonts/cyrillic/"
    FontPath   "/usr/lib/X11/fonts/75dpi/"
    FontPath   "/usr/lib/X11/fonts/100dpi/"
EndSection

Section "ServerFlags"
EndSection

Section "InputDevice"
    Identifier "Keyboard1"
    Driver "kbd"
    Option "AutoRepeat" "500 30"
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc101"
    Option "XkbLayout" "us"
EndSection

Section "InputDevice"
    Identifier "Mouse1"
    Driver "mouse"
    Option "Protocol"    "MouseSystems" # Mouse Systems (3-button protocol)
    Option "Device"      "/dev/gpmdata"
    Option "ZAxisMapping"   "4 5 6 7"
EndSection

Section "Monitor"
    Identifier  "LcdMonitor"
    DisplaySize 224 135
    Option "DMPS"
    Option "PrereferedMode" "1024x768"
EndSection

Section "Device"
    Identifier  "intel845"
    Driver      "i810"
    BusID "PCI:00:02:00"
    Option "monitor-LVDS" "ScreenLCD"
EndSection

Section "Screen"
    Identifier  "ScreenLCD"
    Device      "intel845"
    Monitor     "LcdMonitor"
    DefaultDepth 24

    Subsection "Display"
        Depth       24
        Modes       "800x600"
        ViewPort    0 0
        Virtual     1024 768
    EndSubsection
EndSection

Section "ServerLayout"
    Identifier  "Simple Layout"
    Screen "ScreenLCD"
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection

#Section "DRI"
#    Mode 0666
#EndSection
Kompletnego loga xorg mogę podesłać, ale chyba w tym temacie ten fragment jest najważniejszy
(**) intel(0): Depth 24, (--) framebuffer bpp 32
(==) intel(0): RGB weight 888
(==) intel(0): Default visual is TrueColor
(II) intel(0): Integrated Graphics Chipset: Intel(R) 945GME
(--) intel(0): Chipset: "945GME"
(--) intel(0): Linear framebuffer at 0xC0000000
(--) intel(0): IO registers at addr 0xDFE80000
(WW) System lacks support for changing MTRRs
(II) intel(0): 2 display pipes available.
(==) intel(0): Using EXA for acceleration
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Reloading /usr/lib/xorg/modules//libint10.so
(II) intel(0): initializing int10
(WW) intel(0): Bad V_BIOS checksum
(II) intel(0): Primary V_BIOS segment is: 0xc000
(II) intel(0): VESA BIOS detected
(II) intel(0): VESA VBE Version 3.0
(II) intel(0): VESA VBE Total Mem: 7872 kB
(II) intel(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) intel(0): VESA VBE OEM Software Rev: 1.0
(II) intel(0): VESA VBE OEM Vendor: Intel Corporation
(II) intel(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) intel(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"(II) Module "ddc" already built-in
(II) Loading sub module "i2c"
(II) LoadModule: "i2c"(II) Module "i2c" already built-in
(II) intel(0): Output VGA using monitor section LcdMonitor
(II) intel(0): I2C bus "CRTDDC_A" initialized.
(II) intel(0): Output LVDS has no monitor section
(II) intel(0): I2C bus "LVDSDDC_C" initialized.
(II) intel(0): Attempting to determine panel fixed mode.
(II) intel(0): I2C device "LVDSDDC_C:ddc2" registered at address 0xA0.
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) intel(0): Output VGA disconnected
(II) intel(0): Output LVDS connected
(II) intel(0): Output LVDS using initial mode 1024x600
(II) intel(0): Monitoring connected displays enabled
(II) intel(0): detected 256 kB GTT.
(II) intel(0): detected 7932 kB stolen memory.
(==) intel(0): video overlay key set to 0x101fe
(==) intel(0): Will not try to enable page flipping
(==) intel(0): Triple buffering disabled
(==) intel(0): Intel XvMC decoder disabled
(==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
(**) intel(0): Display dimensions: (224, 135) mm
(**) intel(0): DPI set to (116, 144)

Offline arctgx

  • Users
  • Guru
  • *****
  • Wiadomości: 2753
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« Odpowiedź #3 dnia: 2009-01-03, 02:48:55 »
Patrzę na stronę http://intellinuxgraphics.org/dualhead.html Czyżby opcja "monitor-LVDS" powinna wskazywać na identyfikator jednej z sekcji Monitor, a nie (jak u Ciebie) Screen? Nie wiem nawet jednak, do czego ta opcja służy, więc nie utrzymuję że tak ma być, a gdzie dopiero że zadziała :)

Nie rozumiem po tym poście, jaką fizyczną rozdzielczość chcesz dostać na monitorze, skoro masz wysokość 768 px w xorg.conf w PreferredMode i nie tylko. Nie wiem czy odczyt 1024x600 z pamięci EDID jest prawidłowy.

Jeśli wirtualny ekran jest większy od fizycznej rozdzielczości, to zawsze coś wyląduje poza i trzeba będzie pchać wskaźnikiem krawędź. Spróbuj choćby dla samego doświadczenia jak to działa.

Kiedy zdarzało mi się pracować przy rozdzielczości 800x600, przydawało się autoukrywanie paska zadań w menedżerze okien :)
Użytkownik: Ib5sXfcCkvYR
Hasło: adam

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« Odpowiedź #4 dnia: 2009-01-03, 22:41:40 »
Cytat: arctgx
Patrzę na stronę http://intellinuxgraphics.org/dualhead.html Czyżby opcja "monitor-LVDS" powinna wskazywać na identyfikator jednej z sekcji Monitor, a nie (jak u Ciebie) Screen? Nie wiem nawet jednak, do czego ta opcja służy, więc nie utrzymuję że tak ma być, a gdzie dopiero że zadziała
Ok, to rozwiazalo problem, teraz do wejscia LVDS zostaje przypisany monitor. Moj blad, dzieki za wytkniecie. W mojej konfiguracji testowej probuje wymusic rozdzielczosc 800x600 po to zeby sprawdzic czy sterownik umozliwia wymuszenie rozdzielczosci. Niestety mimo przypisania w liscie trybow ekranu w sekcji Screen kilku innych niz domyslne 1024x600 (bez podawania 1024x600), zawsze xorg startuje z rozdzielczoscia 1024x600.


Cytat: arctgx
Nie rozumiem po tym poście, jaką fizyczną rozdzielczość chcesz dostać na monitorze, skoro masz wysokość 768 px w xorg.conf w PreferredMode i nie tylko. Nie wiem czy odczyt 1024x600 z pamięci EDID jest prawidłowy.
Jeśli wirtualny ekran jest większy od fizycznej rozdzielczości, to zawsze coś wyląduje poza i trzeba będzie pchać wskaźnikiem krawędź. Spróbuj choćby dla samego doświadczenia jak to działa.
To jest prawidlowy odczyt, taka jest rozdzielczosc natywna tej matrycy. Rozdzielczosc 1024x768 to jest taka jaka probuje wymusic przy zastosowaniu ekranu wirtualnego.

Offline arctgx

  • Users
  • Guru
  • *****
  • Wiadomości: 2753
    • Zobacz profil
Rozmiar okienek na netbooku z LCD 1024x600
« Odpowiedź #5 dnia: 2009-01-03, 23:54:12 »
Cytat: elektryk321
W mojej konfiguracji testowej probuje wymusic rozdzielczosc 800x600 po to zeby sprawdzic czy sterownik umozliwia wymuszenie rozdzielczosci. Niestety mimo przypisania w liscie trybow ekranu w sekcji Screen kilku innych niz domyslne 1024x600 (bez podawania 1024x600), zawsze xorg startuje z rozdzielczoscia 1024x600.
Tak nie zawsze wymusisz tryb. Jeśli w Modes podajesz "800x600", to serwer Xorg próbuje znaleźć tryb o takiej nazwie wśród odczytanych z EDID i zdefiniowanych w konfigu. Być może odnotował to gdzieś w logu, że nie znalazł trybu o nazwie "800x600". Zerknij na mój kawałek konfigu:
Section "Modes"
Identifier "tryby"
ModeLine "1024x768_85.00"  94.50 1024 1096 1192 1376  768 769 772 808 +hsync +vsync
Modeline "1280x1024_85.00"  157.50  1280 1344 1504 1728  1024 1025 1028 1072 +hsync +vsync
EndSection

Section "Monitor"
Identifier "SyncMaster"
DisplaySize 312 234
[b]UseModes[/b] "tryby"
Option "PreferredMode" "1024x768_85.00"
EndSection

Section "Screen"
Identifier "Default Screen"
Device "ATI Technologies, Inc. Radeon RV250 If [Radeon 9000]"
Monitor "SyncMaster"
DefaultDepth 24
EndSection
W wersji starszej niż 1.5 serwera Xorg definicja trybów może wyglądać nieco inaczej. Trzeba czytać man xorg.conf z używanej bieżąco paczki. W "1024x768" wziętego z EDID ekran miałem z jakiegoś powodu przesunięty i musiałem dodać własny tryb.

Zainteresuj się może kalkulatorem gtf i poleceniem xrandr (w nim teoretycznie możesz dodać i użyć tryb bez restartu Xorg).

Nie wiem na ile takie wymuszanie jest bezpieczne dla monitora.
Użytkownik: Ib5sXfcCkvYR
Hasło: adam