[Player-dev] CR/CN-Client: Finished Media Library Category List / Focus & Default Glade Change / Fixed Context Menu Crash
Daniel Yek dyek at real.comModified by: dyek at real.com Date: 9/3/2008 Project: RealPlayer for Netbook Synopsis: Finished Media Library Category List / Focus & Default Glade Change / Fixed Context Menu Crash Overview: The old Main Window is now not playing the clip supplied on the command line, to make it easier to test playback in the new Main Window. Media Library Category List: ---------------------------- This change adds Media Library category list on the left-hand column and makes it functional. I chose to use GtkTreeView/GtkListStore to create the icon and text list. This list can also be implemented using a simple list of buttons with images, but the buttons would have to behave like toggle buttons (specifically, hold its activate state), synchronized across the group/button box. After implementing this, I still won't say if one way is better than the other; I think it is highly situational which is better. netbook.glade Change: --------------------- In the netbook.glade change, I went through all widgets and attempt to set the focus and default related properties correctly. That should ensure that keyboard and mouse interaction is more transparent and intuitive to users. A scrolled window is added for the playlist. Added Window Role "realplay". Changed all scrolled windows to use automatic vertical scrollbars and no horizontal scrollbar, except that the playlist scrolled window uses both horizontal and vertical automatic scrollbars. Main Window Size: ----------------- The new Main Window is now set to the default size of 700 x 515 in netbook.glade. However, this is not yet apparent, because the old video content ideal size resize algoritm is still taking control of the Main Window size. This will be changed when I work on the resize algorithm. Fixed a crash in the Context Menu: ---------------------------------- contextmenu.cpp is changed to use: window->controls_hbox window->menu_bar window->status_hbox directly, instead of trying to query (glade_xml_get_widget()) for the widgets using either libgladeemu or the system libglade API. It is best not to have HXContextMenu makes any assumption about the API it should be using to query for Main Window's widgets to minimize the impact of change. This should fix the crash on my Ubuntu system -- which didn't repro. on my Fedora box. Files Added: player/netbook/chrome/graphics/common/icon_music.png player/netbook/chrome/graphics/common/icon_video.png player/netbook/chrome/graphics/common/icon_photo_temp.png player/netbook/chrome/graphics/common/gotostart_temp.png player/netbook/chrome/graphics/common/gotoend_temp.png player/netbook/chrome/graphics/common/rotate_left_temp.png player/netbook/chrome/graphics/common/rotate_right_temp.png player/netbook/chrome/graphics/common/mute_temp.png Files Modified: player/app/gtk/mainapp.cpp player/app/gtk/mainapp-private.h player/app/gtk/contextmenu.cpp player/app/gtk/commonapp.cpp player/netbook/chrome/netbook.glade player/common/gtk/hxutil.cpp player/common/gtk/pub/hxutil.h player/installer/archive/make_tempdir Image Size and Heap Use impact (Client -Only): None. Platforms and Profiles Affected: Linux Distribution Libraries Affected: None. Distribution library impact and planned action: None. Platforms and Profiles Build Verified: Profile: helix_client_all_define Platform: Fedora Platforms and Profiles Functionality verified: Profile: helix_client_all_define Platform: Fedora Branch: 310Atlas Copyright assignment: I am a RealNetworks employee. -- Daniel Yek. -------------- next part -------------- A non-text attachment was scrubbed... Name: player[1].diff Type: text/x-patch Size: 35837 bytes Desc: not available Url : http://lists.helixcommunity.org/pipermail/player-dev/attachments/20080903/6d565bb8/player1-0001.bin