From: <ale...@us...> - 2003-10-19 11:05:19
|
Update of /cvsroot/morphix/partitionmorpher In directory sc8-pr-cvs1:/tmp/cvs-serv6654 Modified Files: ChangeLog TODO partitionmorpher.glade translation Log Message: Merged with elijah-2-branch Index: ChangeLog =================================================================== RCS file: /cvsroot/morphix/partitionmorpher/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ChangeLog 12 Oct 2003 02:01:47 -0000 1.3 --- ChangeLog 19 Oct 2003 00:18:57 -0000 1.4 *************** *** 3,6 **** --- 3,156 ---- See 1st law of WAL + 2003-09-15 Elijah Newren <ne...@ma...> + + * partitionmorpher.glade: + * src/interface.c: Make CreateWindow, ResizeWindow, DeleteWindow, + ConvertWindow, and MoveWindow modal so that the user can't launch + multiple of these windows at a time (could cause nasty problems if + the user had a window open for resizing a partition and also + converting the same partition). This should also probably be done + for the ApplyWindow, RevertWindow, DialogWindow, and perhaps + TableWindow. + + * src/callbacks.c: Make the MainWindow also show the busy cursor + whenever sub-windows do (since one probably should not be able to + interact with the main window when the others are busy doing disk + operations...). + + 2003-09-14 Elijah Newren <ne...@ma...> + + * src/callbacks.c: + * src/main.c: Enable startup notification to work properly. + + Note that startup notification requires both a launcher and a + launchee, so in order to test this from the command line, one + needs to run the test-launcher program (which is part of the + desktop-notification tarball found on www.freedesktop.org) with + partitionmorpher as the program to launch. [Adding + partitionmorpher to the gnome-panel menu would be an alternate way + to test, but if one isn't logged in as root in a gnome session + (which is hopefully the case), then one would also have to do + whatever trickery is required to make partionmorpher be able to + run as root when launched] + + The changes made here may be unnecessary in the future; + startup-notification launchers are the ones required by the spec + to do most of the work and they are required to be pretty smart. + The only reason additional code is needed at all inside + PartitionMorpher at this time is that we start displaying the main + window a couple seconds before we are actually finished starting + up. + + 2003-09-13 Elijah Newren <ne...@ma...> + + * src/callbacks.c: + * src/pm_libparted.c: Added a busy cursor when performing + operations that take longer than a second. Currently only added + for Create & Delete windows. Make the app seem much more + responsive, though (in the Delete Window, the operation would + always take about two seconds, but the user wasn't given any + notification that the program was acting on their input) + + * TODO: Updated with some more bugs and stuff + + 2003-09-12 Elijah Newren <ne...@ma...> + + * TODO: Updated (I'm really starting to think I should break out + the known bugs into a separate file...) + + 2003-09-12 Elijah Newren <ne...@ma...> + + * src/pm_libparted.[ch]: + * src/callbacks.c: Only display debugging info if + PRINT_DEBUGGING_INFO is defined (currently located in + pm_libparted.h). The debugging info is still potentially useful, + but sometimes I don't want to see it. Also, adding this flag + means that it will be easier to clean out all these messages when + PartitionMorpher is ready to ship to everyone. I've probably + missed marking numerous debugging messages, but I'll add them as I + find them. + + 2003-09-12 Elijah Newren <ne...@ma...> + + * partitionmorpher.glade: + * translation: + * src/callbacks.[ch]: + * src/interface.c: Since extended partitions can't have a + filesystem, inactive the filesystem selector in the CreateWindow + whenever the Extended partition radiobutton is active. Also, + update the tooltips for the Extended and Logical partition types. + + * TODO: Updated, specifically with info about how + on_CreateTypeRadiobutton_clicked is called twice for every click. + (I don't understand why it does this, but it doesn't hurt + anything) + + 2003-09-12 Elijah Newren <ne...@ma...> + + * partitionmorpher.glade: + * src/interface.c: Closing certain windows with the X button + (located in the upper right corner of each window) was causing + PartitionMorpher to either segfault, hang, or not respond when + attempting to show the window again. I tested and fixed this for + these windows: + CreateWindow + ResizeWindow + HelpWindow + DeleteWindow + ConvertWindow + MoveWindow + ErrorWindow + ProgressWindow + The fix was to set the signal handler for the delete_event to + gtk_widget_hide (all but one case) or gtk_true (in the case of the + ProgressWindow, which should not be able to be hidden by the + user). Other windows (Apply/Revert/Dialog/Table) may still need + this fix. + + 2003-09-08 Elijah Newren <ne...@ma...> + + * TODO: Updated + + 2003-09-08 Elijah Newren <ne...@ma...> + + * partitionmorpher.glade: + * translation: + * src/callbacks.c: + * src/interface.[ch]: + * src/main.c + * src/pm_libparted.c: Add a progress bar to provide visual + feedback during long operations. Currently, this has only been + tested and worked in with creating partitions, but it shouldn't + require many changes for other operations. However, if we + implement NTFS creation/resize (and perhaps other operations) via + external tools, we will need to change the display from a + percentage progress bar to an indeterminate moving back and forth + bar. + + 2003-09-08 Elijah Newren <ne...@ma...> + + * src/pm_libparted.c : Small change to make MIN_FREESPACE = 1024 + k, not 1000 k. This is an issue because users are only allowed to + select partition sizes in terms of MBs (which, perhaps more + appropriately would be labelled MiBs). Thus, on one partition on + my laptop, which is 1913.99 MB (isn't it nice to have a + pathological laptop that provides nice corner cases?), I can only + choose to create a partition of size 1913 MB. The MIN_FREESPACE + corresponds to about .98 MB, and thus my partition was left with + an empty space at the end of almost 1 MB in size. This would mean + that although I thought I had used all the space on my disk, a + view of the sectors would show that I had left gaps. + + Note: This is not an issue for Parted or QTParted (both of which + use 1000 k for this parameter) because they both require/allow the + user to specify to higher precision the size of their partition. + We only allow integer sizes in the interface. + + 2003-09-08 Elijah Newren <ne...@ma...> + + * src/callbacks.c: + * src/pm_libparted.[ch]: Remove duplicate (unused) code + 2003-09-05 Elijah Newren <ne...@ma...> Index: TODO =================================================================== RCS file: /cvsroot/morphix/partitionmorpher/TODO,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TODO 12 Oct 2003 02:01:47 -0000 1.4 --- TODO 19 Oct 2003 00:18:57 -0000 1.5 *************** *** 19,23 **** Make a reasonable README, not that thing I threw together in 10 seconds. Add some stuff to NEWS ! Actually use the ChangeLog Lots of testing --- 19,72 ---- Make a reasonable README, not that thing I threw together in 10 seconds. Add some stuff to NEWS ! Should I add my notes-on-qtparted.txt to CVS? ! The Help window needs to have some real help. ! Make a list of known bugs, e.g.: ! The CreatePartition window has an invisible FsType GtkOpenMenu AND ! a visible FilesystemType GtkOptionMenu--why? Is the FsType ! supposed to be the newbie friendly version? [If so, does that ! mean that we can't dynamically change these menus and we really ! do need two?] ! Clicking on X in ProgressDialog window de-focuses window--should it? ! Apply/Revert/Dialog/Table Windows may need delete_event->gtk_widget_hide ! Every time a partition type radiobutton in the Create Partition ! window is clicked on, the on_CreateTypeRadiobutton_clicked ! callback is called twice. No harm done, but it really should ! only call it once. ! The Partition Flags may not work right: ! I don't even have any clue what an LBA parition is supposed to be ! Isn't there only supposed to be one partition marked as bootable? ! I'm not familiar with marking things as the root partition--and ! the tooltip itself says it should possibly be thrown out. ! Do all of these apply for primary, extended, and logical partitions? ! There's probably still some debugging info that doesn't need to be shown ! If stdout is redirected at the command line, the progress dialog ! doesn't work (apparently Parted required stdout to not be ! redirected). We should be able to work around this by ! redirecting stdout to stderr. Note that everything still works ! (error dialog, progress dialog, etc.) if stderr is redirected. ! Errors printed by Parted when setting up Partition table aren't ! shown to user, except in a terminal; either show them to the ! user, or remove them from the terminal as well. ! The revert button is non-functional (and always disabled) since we ! don't queue commands. This should be removed until that is ! added (and at that time, we need an apply button as well. ! The cursor for the main window is not the busy cursor when it is ! for sub-menus. This is probably a bug, but I'm not sure if this ! is expected behavior or not. If it is a bug, it's probably a ! simple change to callbacks.c:show_busy_cursor. ! The sub-windows don't disable the main window. This means that ! the user can highlight /dev/hda2 and click on delete, leave the ! DeletePartition window open, and then higlight some freespace ! and click on create to also have the CreatePartition window ! showing at the same time. I don't know if this should be ! allowed--but if it is, then more than one CreatePartition window ! should be allowed (currently, if a user does the same basic ! thing to try to get to CreatePartition windows, then the first ! window will merely change so that it is relevant for the second ! partition and only one window will be open). Update: This is ! BAD. I can have a Delete, Move, Convert, and Resize window all ! open on /dev/hda2. That's just asking for problems... ! ! Lots of testing *************** *** 29,34 **** but that could have been a simple mistake. (not 100% sure...) ! Check that changes to do_mkpart function are valid (note that either ! way, the old version was definitely wrong) (validated, was correct) Parted Problems --- 78,88 ---- but that could have been a simple mistake. (not 100% sure...) ! My changes to do_mkpart don't allow for the recovery of accidentally ! deleted partitions (see documentation in Parted for do_mkpart, and ! note that the filesystem is passed so that it can be recovered but ! not created). However: (1) It is doubtful that such a task should ! be provided by PartitionMorpher, and (2) The way it was written, ! "None" could not be selected as a partition type when creating a ! partition. Parted Problems *************** *** 39,57 **** Find out why FAT16 and NTFS file creation aren't working ! NTFS -- something about can't satisfy constraints (can we create ntfs partitions?) ! FAT16 -- solution_check_distant failure UI Issues (Problems as well as my biases) Main screen The graphical partition layout (i.e. the stuff just above the full ! tables) needs word labels and actual colors or something (done) Creating a partition ! The filesystem type & flags should be inactive/hidden if Extended is selected (done) Extended should not be an option if an extended partition already exists (I think) (done) Most filesystem types & all flags should be hidden behind an advanced tab s/Partition Path/Current Partition Path/ or /Partition Path/d ! The partition size widget needs a text field for manually entering the size ! (sliders just don't cut it--see the control center stuff for example) Partition Position seems somewhat lame. A Partition offset (i.e. amount of free space to leave before the partition) seems --- 93,126 ---- Find out why FAT16 and NTFS file creation aren't working ! ! Reasons why FAT16 and NTFS file creation weren't working ! NTFS -- apparently, "can't satisfy constraints" means "I don't ! know how to make an NTFS filesystem. Pretty stupid and ! misleading error from Parted if you ask me... ! FAT16 -- "solution_check_distant failure". Basically, a partition ! of size 1 Gb could be created, but one of size 1913 MB ! could not. QTParted solved this by simply breaking the ! freespace partition into two--formatting one of them (of ! size 1Gb) as a FAT16 partition, and leaving the other as ! freespace. Now, the question is, do I like that solution? UI Issues (Problems as well as my biases) Main screen The graphical partition layout (i.e. the stuff just above the full ! ! tables) needs word labels and actual colors or something--this ! may simply be a problem of the GTK2-H2O theme I use. However, ! I'm sure it could be improved either way (QTParted packs these ! nicely with lots of info, but in clear and intuitive way) Creating a partition ! Extended should not be an option if an extended partition already exists (I think) (done) Most filesystem types & all flags should be hidden behind an advanced tab s/Partition Path/Current Partition Path/ or /Partition Path/d ! The partition size widget needs a text field for manually entering ! the size (sliders just don't cut it--see the ! gnome-control-center stuff for keyboard repeat rate (possibly ! only on the accessibility side of things) for an example) Partition Position seems somewhat lame. A Partition offset (i.e. amount of free space to leave before the partition) seems Index: partitionmorpher.glade =================================================================== RCS file: /cvsroot/morphix/partitionmorpher/partitionmorpher.glade,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** partitionmorpher.glade 12 Oct 2003 02:01:47 -0000 1.6 --- partitionmorpher.glade 19 Oct 2003 00:18:57 -0000 1.7 *************** *** 399,407 **** <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <signal name="show" handler="on_CreateWindow_show" last_modification_time="Sat, 11 Oct 2003 23:02:01 GMT"/> <child internal-child="vbox"> --- 399,408 ---- <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">True</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <signal name="show" handler="on_CreateWindow_show" last_modification_time="Sat, 11 Oct 2003 23:02:01 GMT"/> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:06:57 GMT"/> <child internal-child="vbox"> *************** *** 1179,1182 **** --- 1180,1184 ---- <property name="draw_indicator">True</property> <signal name="toggled" handler="on_CreatePrimaryRadiobutton_toggled" last_modification_time="Sun, 12 Oct 2003 01:16:33 GMT"/> + <signal name="clicked" handler="on_CreateTypeRadiobutton_clicked" last_modification_time="Fri, 12 Sep 2003 18:22:21 GMT"/> </widget> <packing> *************** *** 1190,1193 **** --- 1192,1196 ---- <widget class="GtkRadioButton" id="CreateExtendedRadiobutton"> <property name="visible">True</property> + <property name="tooltip" translatable="yes">An Extended partition merely holds Logical partitions.</property> <property name="can_focus">True</property> <property name="label" translatable="yes">Extended</property> *************** *** 1199,1202 **** --- 1202,1206 ---- <property name="group">CreatePrimaryRadiobutton</property> <signal name="toggled" handler="on_CreateExtendedRadiobutton_toggled" last_modification_time="Sun, 12 Oct 2003 01:16:48 GMT"/> + <signal name="clicked" handler="on_CreateTypeRadiobutton_clicked" last_modification_time="Fri, 12 Sep 2003 18:09:20 GMT"/> </widget> <packing> *************** *** 1210,1213 **** --- 1214,1218 ---- <widget class="GtkRadioButton" id="CreateLogicalRadiobutton"> <property name="visible">True</property> + <property name="tooltip" translatable="yes">You can have any number of Logical partions inside an Extended partition.</property> <property name="can_focus">True</property> <property name="label" translatable="yes">Logical</property> *************** *** 1219,1222 **** --- 1224,1228 ---- <property name="group">CreatePrimaryRadiobutton</property> <signal name="toggled" handler="on_CreateLogicalRadiobutton_toggled" last_modification_time="Sun, 12 Oct 2003 01:16:52 GMT"/> + <signal name="clicked" handler="on_CreateTypeRadiobutton_clicked" last_modification_time="Fri, 12 Sep 2003 18:22:43 GMT"/> </widget> <packing> *************** *** 1260,1267 **** <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <child internal-child="vbox"> --- 1266,1274 ---- <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">True</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:08:55 GMT"/> <child internal-child="vbox"> *************** *** 1971,1974 **** --- 1978,1982 ---- <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:14:02 GMT"/> <child internal-child="vbox"> *************** *** 2047,2054 **** <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <child internal-child="vbox"> --- 2055,2063 ---- <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">True</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:10:48 GMT"/> <child internal-child="vbox"> *************** *** 2331,2338 **** <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <child internal-child="vbox"> --- 2340,2348 ---- <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">True</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:13:02 GMT"/> <child internal-child="vbox"> *************** *** 2694,2701 **** <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> <child internal-child="vbox"> --- 2704,2712 ---- <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_CENTER</property> ! <property name="modal">True</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="has_separator">True</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:11:58 GMT"/> <child internal-child="vbox"> *************** *** 3347,3350 **** --- 3358,3362 ---- <property name="destroy_with_parent">False</property> <property name="has_separator">False</property> + <signal name="delete_event" handler="gtk_widget_hide" last_modification_time="Fri, 12 Sep 2003 14:17:15 GMT"/> <child internal-child="vbox"> *************** *** 3487,3490 **** --- 3499,3584 ---- </packing> </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + </widget> + </child> + </widget> + + <widget class="GtkDialog" id="ProgressWindow"> + <property name="border_width">12</property> + <property name="visible">True</property> + <property name="title" translatable="yes">Progress</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_CENTER</property> + <property name="modal">True</property> + <property name="resizable">True</property> + <property name="destroy_with_parent">False</property> + <property name="has_separator">False</property> + <signal name="delete_event" handler="gtk_true" last_modification_time="Fri, 12 Sep 2003 14:26:04 GMT"/> + + <child internal-child="vbox"> + <widget class="GtkVBox" id="dialog-vbox13"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child internal-child="action_area"> + <widget class="GtkHButtonBox" id="dialog-action_area13"> + <property name="visible">True</property> + <property name="layout_style">GTK_BUTTONBOX_END</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">GTK_PACK_END</property> + </packing> + </child> + + <child> + <widget class="GtkVBox" id="vbox15"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">12</property> + + <child> + <widget class="GtkProgressBar" id="ProgressBar"> + <property name="visible">True</property> + <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property> + <property name="fraction">0</property> + <property name="pulse_step">0.1</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="ProgressLabel"> + <property name="visible">True</property> + <property name="label" translatable="yes"></property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> </widget> <packing> Index: translation =================================================================== RCS file: /cvsroot/morphix/partitionmorpher/translation,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** translation 12 Oct 2003 02:01:47 -0000 1.5 --- translation 19 Oct 2003 00:18:57 -0000 1.6 *************** *** 68,72 **** --- 68,74 ---- gchar *s = N_("LBA Partition"); gchar *s = N_("Primary"); + gchar *s = N_("An Extended partition merely holds Logical partitions."); gchar *s = N_("Extended"); + gchar *s = N_("You can have any number of Logical partions inside an Extended partition."); gchar *s = N_("Logical"); gchar *s = N_("Resize Partition"); *************** *** 156,157 **** --- 158,160 ---- "Partition Morpher received the following error from Parted:"); gchar *s = N_("As a results of this error, the operation has been cancelled and no changes have been made."); + gchar *s = N_("Progress"); |