Me_TV_Ui_Redesign

This page is different to https://wiki.ubuntu.com/Me_TV_Channel_Change as it is more a guideline, therefore no discussions here.

Stuff we already agreed on:

MeTV is at default a single window app

we should stay for plain gtk right now, but design it in a way a later migration to clutter would be very soft. the reason for this is the lack of accessibility and requirement of 3D capable video drivers. the first will probably get fixed when clutter or something like it lands into gnome.

We will add the possibility to control volume over the menu and a standard gnome volume button, but the later can downgraded to a simple mute button via the preferences for users that find a seperate volume control for apps annoying and use the gnome master volume for this.

Ideas to discuss:

the concept i will be speaking off, isn't really new as it takes the old ui, new planned features and mixes it a bit. i maybe explain even known stuff to draw a whole picture of a possible ui.

General open questions/ stuff todo:

as we include volume control, should we instead of the solution above don't downgrade the volume to mute and just change it from metv's volume to gnome's master volume? (as michael proposed) this need some discussion, as bojo42 has some concerns

how to integrate multiple tuners in the ui?

what about the recording state, should just on click stop recording or should there be always a popup what ever leads to stop recording?

discuss the navitoolbar!

Audio Menu:

clear out what about tracks and dual language? aka bojo42 doesn't understand that concept exactly

Missing Icons:

we still need icons for:

-the video / EPG toggle buttons

-volume up and down in Audio

-zoom reset in video/view

No overlays:

Things that would look good as overlays but realized in another way as we won't use clutter in 0.6. Introducing clutter later means that probably we only need to revert this.

display of volume -> statusbar icon

display of channel, current programm, time -> statusbar (info button input for this in case of an overlay)

display of play, pause and so on -> statusbar state of the buttons

an additional issue is the lirc user would love overlays to display their actions on the remote, but so far this handled the same way. so they receive gtk love for their action, just for them to remember they are watching tv on a computer Wink ;)

Multiple Tuners:

What will change when we support multiple adapters?

1. You can still watch only one channel at a time. (Therefore no simultaneous displaying of channels for now, maybe later with clutter. But this could also only happen in one video frame, depending on the numbers of tuners you have. for the future multiple tuners could also be used for multiple displays, so you can have as much seperate video windows as you have tuners)

2. But you can record more than only the current channel.

So multiple adapters don't change anything on the viewing modes like TV & playback of recordings. But they change something on the recording abilities and this should be exposed to the users in an easy way.

This could mean that the planned instant record button is only for the tuner that drives the current video screen. Other recordings can be done through the EPG and the sheduled recordings dialog.

At the best there should be an automatic usage of given adapters, so the 1. is always used for the video screen and the others are only used in case of multiple recording at the same time.

There will be no scan for the quality of the tuners and every one will be threated the same, but users can decide by the order they plug in there devices or by a simple dialog for the adapters to address them to a tuner number. The dialog will make sense for desktop system with PCI cards.

Open questions:

How can we display that MeTV is recording on different channels?

maybe in the trayicon (in the spirit of https://blueprints.launchpad.net/me-tv/+spec/notification-icon-improvements)

How can we display problems with to many sheduled recordings and too few tuners?

there could be a popup that informs about that and askes you to plug in in an additional tuner or choose the recording which should be canceled.

The layout of the main window:

no tooltips here, as nautilus only shows them in the statusbar and totem because of don't having such one don't use them at all. so names the menu should be quite clear and not confussing.

Toolbar:

icons and text

no modes here

Items:

buttons for switching the modes of the main frame like video, epg, ... buttons

fullscreen

Details:

setting sheduled recording should happen in Shedules and not via a direct button, this way you will see other shedules which may conflict as their are at the same time and you have only one tuner

"Mainframe":

Modes:

1. video

2. epg

(

3. teletext

4. recording archiv

5. maybe shedules

...

)

Input for changing between these modes:

1. Only two modes:

right click on the mouse: switches between the modes

mouse wheel on the main frame: switches between the modes

2. More than two modes

right click on the mouse: leads always to video mode

mouse wheel on the main frame: switches between the modes

On the keyboard we could use the left and right cursors for switching modes.

"Statusbar" aka Navitoolbar:

It replaces the statusbar from the 0.5 series to make more use of the space and do the navigation stuff more like a video app. It has two modes but their will only minimal changes between them for not confusing the user, this means that all buttons will always be there, but the ones not needed in the current mode will be "grey" and not chooseable so it won't get to messy.

only icons no text

Modes:

1. TV

2. Playback (for timeshifting as well as recordings, in case of the first the resync button should be inactive)

the first button in the left corner display the current mode.

when switching from TV to PB mode through the mode button, the last recording should be loaded. this also makes sense for TS, so you have the file you are recording right now. when switching through the planned "recordings libary" it's clear that the selected file will open instead of the last. When leaving PB to TV the playback will just halt, so you can go on later, for example after watching what's on live TV.

? should switching to PB also lead to play the file or just to the file loaded and you need another click on the play button ?

Items:

There could be a basic and a advanced navitoolbar pause, the first would be the default and the later optional via the preferences.

Basic: TV/PB, record, play, combobox or slider, channels up and down, volume control

Advanced: TV/PB, record, play, forward, backward, combobox or slider, channels up, and down, autosurf, zoom, volume control

This way the default wouldn't be too complex, but maybe the advanced would be also okay. Need diskussion.

Details:

2x,4x, 8x forward and backward could be integrated like pressing it again and thereby changing the buttons icon. maybe we can use just the slider and keep those buttons out?

instant recording (when TS is active this should led to the question wether it should save the current TS go on with recoring)

when leaving pause/timeshifting by resync, slider complete to right or channel cange a alert window should pop up with a short warning "You're skipping timeshifting, recorded material will be deleted"

volume control (with mouse-over-scrolling, in case of keyboard or lirc input displaying of volume), the tooltip should show the percentage of the volume

Pressing the first button on the left side aka TV mode switch results in converting the combobox to a slider and switch the last playback wether TS or RECORDINGS

Playback Sliders: for normal playback a slider is perfect, but when doing timeshifting the slider get longer and the impact of distances higher. so what about this case? ignore for the near time

the channel numbers in the combobox help to know where you are, so scrollbars aren't needed.

active/disabled states of the buttons:

while PB: channel up and down are disabled

while Recording (with only one tuner): channel up and down are active but lead like all other channel changing inputs to a popup "Do you like to stop recoding?" and "No" keeps the channel and goes on with recording, while "Yes" does the opposite.

while TV: forward and backward (if we have them) are disabled. the same for play.

while TV+recording: play is active and will start TS. in this case play will also toggle the TV/PB button.

skipping text:

-> https://blueprints.launchpad.net/me-tv/+spec/long-program-title

in both modes the text in the combobox as well as in the label above the slider the length should be automatically shortened with ... when i.e. you resize the window. in the combobox it should be skip and after this there should be the time (20:15-22:00) this function could also be useful in the egp table

https://blueprints.launchpad.net/me-tv/+spec/long-program-title fixed names should be skipped with "..." in the egp as well as in the statusbar. for the statusbar the fixed should automatically determined, depending on the window width availiable

text structure:

alignment left in the combobox: channel number_channel name_-_title{_...}_(start-end)

above the slider: recordingdate_channel name_-_title{_...} -> but this should be done by the creation of the filenames for recorded stuff, so the text over the sliders gives you just the filename. this way it's straight simple and also works for renamed or other videofiles.

when the EGP doesn't work the fallback for the title is "Unknown".

Fullscreen Mode:

The fullscreen mode is basically running the mainframe in fullscreen so all modes of it are available.

But it is different from the 0.5 series, as it won't display the main tool or the menus and just gives you the navitoolbar at the bottom when the mouse moves in video mode (should like most video players do it or when the mouse goes to bottom of the screen the mouse get visible and the toolbar pops up) or one of the info modes is active.

Maybe we can do a fullscreen button in the right upper corner like in totem, this would make sense for other modes than video where double click isn't an option for leaving fullscreen.

MeTV on Multiple Displays:

As said in the beginning MeTV is a single window app, but we will make one optional exception on this for multiple displays. This is somewhat in the way of https://blueprints.launchpad.net/me-tv/+spec/epg-docking.

Therefore the videoframe of the mainframe should be splittable into another window, while the rest mode stays in the main window. This new window can be move to another screen and go to fullscreen by the normal methods.

For the main window this have the consequences, that the mainframe it will loose one mode and the button for it. Another fact is the fullscreen for the main window is only available via F11 or the fullscreen button, as double clicking in the other modes like EGP & Co is a bit "dangerous".

In this case the tray icon should also only minimize the main window and not the extra video window. So you can simple get the main window out of your way when you're busy the first screen and your family watching the video window on the second screen won't get "interrupted" from watching TV Wink ;)

Open questions:

What will happen when you close the video window?

Automatically switching back to the single window mode isn't good, as this means you will have to go often to the preferences for re enabling it. So maybe we should integrate a button in the main window for getting the video window back. So probably closing the video window will close all of MeTV, just like closing the main window does it.

Channel editor:

the wizard should be started on the first time and is then available over the channel editor things that should be editable: channel number and channel name

other thing that should be display: signal strenght https://blueprints.launchpad.net/me-tv/+spec/channel-signal-strength (maybe it should be optional via a button, when getting it for all channels takes much time. at best it is in real time for positioning of antennas)

Preferences Window:

adding tabs to the window as more options are coming and sort it out so it will be less confussing reset to defaults (this doesn't affect the channels editor)

for https://blueprints.launchpad.net/me-tv/+spec/select-tuner & https://blueprints.launchpad.net/me-tv/+spec/mulitple-tuners this should only be visible in the preferences? i think metv should automatically grab multiple adapaters as it needs them, so when you start recording i should take the first and then when changing to another channel it should take the next one. what do you think?

other Dialogs:

for dialog_about: put the logo above the "headline"

on channel editor: the wizard should be started on the first time and is then available over the channel editor things that should be editable: channel number and channel name other thing that should be display: signal strenght (maybe optional via a button, when getting it for all channels takes much time)

Input Methods of MeTV:

We have 3 kinds of inputs for MeTV and beside a focus on the mouse all should be able to control it.

Mouse:

fullscreen on/off: double left in the videoframe

Keyboard:

-> https://blueprints.launchpad.net/me-tv/+spec/numbering-of-channel-list-for-hot-keys typing numbers leads to channel change from every place in the window, but now can we display this without overlays? -> in the navitoolbar combobox: i.e. typing 3 lead to the combobox only showing channels starting with 3 like 3,31-39,300-399 and after a time it will choose the one exactly matching (in this case channel 3) or when another number is typed immediately it will hang it on the first and sort all other channels out ... i think you got it.

volume up: volume down: mute on/off: channel up: channel down:

fullscreen on/off: F11 zoom-in: r or ctrl+r zoom-out: t or ctrl+t

show controls: strg+h

quit: ctrl+q

search in epg: ctrl+f

Lirc for remotes:

A longtime goal, for the next time we will atleast complete keyboard support so lirc users can atleast just map this on their remote

Infos on Gnome, Gtk and Glade:

for GTK/Glade http://glade.gnome.org/

http://www.kplug.org/glade_tutorial/glade2_tutorial/gtemp_1.html

http://zetcode.com/tutorials/gtktutorial

http://developer.gnome.org/projects/gup/hig/

http://developer.gnome.org/projects/gap/

Me_TV_Ui_Redesign (last edited 2008-08-06 16:22:07 by localhost)