This is an old revision of the document!
Roadmap
Stage 1
Target: Xfce 4.12, Implementation: 75%
- Support extended desktop mode for 2 monitors
- Improve minimal dialog
Stage 2
Target: , Implementation: 0%
- Replace treeview with iconview
- Support xfce4-notifyd's themes for the identity-popups
Stage 3
- Support setting the primary monitor (Related bug: 9338)
- Create “display profiles” (save setups based on EDID)
Status Quo
Minimal Dialog
The minimal dialog can be called when a new display is plugged in (given that the laptop send the appropriate signal). It should provide users quick access to four of the most-used modes:
- Only Display 1
- Extend desktop to the right
- Mirror displays
- Only Display 2
The “Advanced” button opens the normal display-dialog.
Display Settings Dialog
The main thing that changed here are the comboboxes to change the monitor position and the mirror-checkbox. (Note: the mirror-mode in the position-combobox only sets the currently selected display to mirror _one_ other display. This is mostly relevant in 2+ displays setups.) The comboboxes give the user a way of positioning always 2 displays relative to each other. In total, users can still position as many displays as they have. Four positions are available: left-of, above, right-of, below.
Identification Popups
For users to more easily know what display they're currently modifying, we decided to implement “identity-popups”. These show the name of the display (same as in the treeview) and the resolution.
Open Issues
Minimal dialog:
- Add the 10sec-reset-timeout dialog just to be sure
- Debug/fix segfault after setting Mirror, then Extend Right
4 options: Only Primary, Mirror, Extend Right, Only Secondarydraw iconsimplement in code
Hook up Advanced buttonConsider dropping “presentation mode”
Normal dialog:
- Fix xfconf channel binding warning
Add code for “identifying popups”- Use xfce4-notifyd's gtk-style
- Fix wrong position and values after a display has been disabled
Re-color the currently selected display
- Check why xrandr works better with Nvidia proprietary than our code
- Applying new positions works every second time. Debugging output about desktop dimensions only gets printed every second time (TRACE[displays.c:800] xfce_displays_helper_channel_apply(): Desktop dimensions: 3200×1200 (px), 722×271 (mm).) I would assume that the problem lies there: the desktop dimensions don't get changed in time for the first try, so the driver falls back to mirror-mode. The second time the desktop dimensions are already changed from the last try and then applying new positions works. What supports this hypothesis is that switching from right-of to left-of seems to work fine. But e.g. from right-of to below it takes 2 tries again and vice versa (because the desktop dimensions would again have to be changed). — simon 2012/10/11 10:55
- Code review
Fix rotation code with extended desktop modeChange rotation-combo-entry-name from “normal” to “none”
General:
- Fix 3 commit authors (merge locally, then rebase interactive on origin/master and set a new committer)
- Celebrate the release!