summaryrefslogtreecommitdiffstats
path: root/displayconfig-TODO
diff options
context:
space:
mode:
Diffstat (limited to 'displayconfig-TODO')
-rw-r--r--displayconfig-TODO135
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