diff options
Diffstat (limited to 'displayconfig-TODO')
-rw-r--r-- | displayconfig-TODO | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/displayconfig-TODO b/displayconfig-TODO deleted file mode 100644 index 926f7d9..0000000 --- a/displayconfig-TODO +++ /dev/null @@ -1,135 +0,0 @@ -* How many cards do we have? autodetection? -* Is our card a dualhead card? -* How many monitors are connected? - -* difference between one and two card is different device sections -* twinview has one device, one screen, one serverlayout -* xinerama has two devices, two screens, two monitors - -twinview <> xinerama: - all sections double - -one or two cards: - different device sections - -one or two monitors - ?? one or two cards - ?? twinview or xinerama (driver? different resolutions?) - - -class XSetup(Object): - Screens[] getScreens() - bool maySetDualhead() - getUseDualhead() - setUseDualhead(bool) - (xoff,yoff) getDualheadPosition() # offset from screen 1 top left corner. - setDualheadOrientation(xoff,yoff) - - bool is3DAccelerated() - - GFXCard[] getGFXCards() - - -class Screen(Object): - maySetResolution() - Resolution[] getAvailableResolutions() - getResolution() - setResolution(Resolution) - - maySetRefresh() - int getRefreshRate() - setRefreshRate(int) - - maySetRotation() - getRotation() - getAvailableRotations() - setRotation() - - bool isAvailableMirrorHorizontal() - getMirrorHorizontal() - setMirrorHorizontal() - bool isAvailableMirrorVertical() - getMirrorVertical() - setMirrorVertical() - -class Resolution(Object): - int getWidth() - int getHeight() - int[] getRefreshRates(): - - - -* What is the current setup? (Xinerama? Singlehead? Twinview?) - -- Warning: Xinerama vs. DRI - * "unlinking" the sliders will yield a warning "Using different - resolutions on the screens will disable 3D hardware acceleration on - the second head", which is a Xinerama deficiency). - - Note: Probably only Ati and nvidia do support mergedFB properly, other - drivers might lose xinerama features like placement and maximize - -- Drag and drop widget - * The fun part: implementing a Drag and Drop widget where the (resizing) - screens can be dragged into their respective relative position, - "snapping" in the more obvious ones, i.e. plain "left of" and "right - of", "above" and "under" (without offset). - - -- displayconfig.MonitorPreview: - Singleheadpreview: Monitor keeps size - DualheadPreview: like now, monitor resizes to show relative screen size - -Displayconfig; Notes abstractielaag -------------------------------------- -* een XSetup heeft N gfxcards. -* een GfxCard heeft N Monitors -* XSetup is een container voor alle objecten uit de abstractielaag. -* XSetup.addMonitor(monitor,gfxcard) waarbij gfxcard al in XSetup zit en een - referentie naar de kaart vormt waarop monitor is aangesloten. -* Een Adaptor heeft een 1:1 relatie met een monitor, en is 'onderdeel' van - een "Screen" (in de zin van Screen section uit xorg.conf) -* Controls zoals resize en de rotatie / mirroring widgets manipuleren een - Adaptor, die intern de Screen manipuleert -* Singlehead resolutie verandert via xrandr en slaat settings op via - displayconfig-restore.py -* Dualhead resolutie aanpassen pakt intern een passende metamode (bij twinview) - en checkt of alle zinvolle metamodes beschikbaar zijn, anders wordt de user - gewaarschuwd dat dit eerst moet gebeuren. -* Adaptor in dualhead / twinview modus worden dus naar een screen vertaald - metamodes heeft. -* Screen moet dan nog support voor metamodes krijgen. - - - -displayconfig: -=============== -* Current resolution doesn't get recognized if current != highest resolution -* new tab display powermanagement, just like the existing tab, we need to be - able to at least replace existing functionality - - -New Widgets: -------------- -* DualheadPreview -* RadioButtons instead of dropdown for Positioning - -* Detect if we're already running on dualhead, (en|dis)able widgets accordingly -* Nvidia MergedFB - - Make preview of dualhead more clear (only xinerama or also mergedFB?) - - Generate list of Metamodes from resolutions available - - write dualhead settings to xorg.conf -* Compare dualhead with different drivers WRT xorg.conf - - generic Xinerama (Matrox, others?) - - dualhead for fglrx, SiS ... - - MergedFB as special case for nvidia (sis?) -* Preview should be rotatable (and|or) resizable (and|or) DualHeadpreview? -* Add missing elements to DualHeadTab - - [ ] Use MergedFB (binds two resolution sliders) - - label with warning "You can only use DRI on one head with different resolutions blahblah" -FIXME: enabling Dualhead should: - - Update resolutions with "metamodes" - - disable Rotation/mirroring stuff - - Add ServerLayout to xorg.conf - - Add second Screen to xorg.conf - - Alternatively (if both resolutions are the same enable MergedFB |