Paste should be insensitive when unavailable

Paul Smith <[email protected]> Tue, 6 Jan 2004 14:18:50 +0000 (GMT)
Newsgroups gmane.editors.conglomerate.general
Message-ID <[email protected]>
I remember why I stopped working on this patch now - there was too much
missing from it that I didn't know how to fix without some discussion,
so here it goes:

1)  When should Paste be available?

Under what conditions should paste be available?  Or, if it's easier to
implement, when should it not be available?  I'm thinking of things
like current cursor position being valid, something actually being in
the clipboard to paste, things like that.

2)  When should the Paste sensitivity change?

Very much related to the above, we should check to see whether paste is
still available in response to certain signals, but I can't figure
which of the following should be connected to, or indeed if a new
signal is needed.  (I dimly remember Dave saying something about a
signal coming from X when the clipboard contents change, any ideas
where I can get more info?) 

The current signals I can see are:

cong-command-history.c:	"changed"
cong-document.c:	"begin_edit"
cong-document.c:	"end_edit"
cong-document.c:	"node_make_orphan"
cong-document.c:	"node_add_after"
cong-document.c:	"node_add_before"
cong-document.c:	"node_set_parent"
cong-document.c:	"node_set_text"
cong-document.c:	"node_set_attribute"
cong-document.c:	"node_remove_attribute"
cong-document.c:	"selection_change"
cong-document.c:	"cursor_change"
cong-document.c:	"set_dtd_ptr"
cong-document-traversal.c:	"traversal_node_added"
cong-document-traversal.c:	"traversal_node_removed"
cong-editor-area.c:	"button_press_event"
cong-editor-area.c:	"enter_notify_event"
cong-editor-area.c:	"leave_notify_event"
cong-editor-area.c:	"motion_notify_event"
cong-editor-area.c:	"key_press_event"
cong-editor-area.c:	"flush_requisition_cache"
cong-editor-area.c:	"state_changed"
cong-editor-area-container.c:	"children_changed"
cong-editor-area-expander.c:	"expansion_changed"
cong-editor-node.c:	"line_regeneration_required"
cong-editor-node.c:	"is_selected_changed"
cong-xpath-expression.c:	"string_result_changed",
plugin-lists-node-element-listitem.c:	"label_changed"

The patch I have merely sets up a call in various places to a
cong_document_can_paste(CongDocument*) function that only returns true,
should I attach this to Bugzilla anyway?

Paul

 --- [email protected] wrote: > Please do not reply to
this email- if you want to comment on the bug,
> go to the
> URL shown below and enter your comments there.
> 
> http://bugzilla.gnome.org/show_bug.cgi?id=126089
> 
> Changed by [email protected].
> 
> --- shadow/126089	Mon Nov  3 05:16:02 2003
> +++ shadow/126089.tmp.2459	Mon Jan  5 21:16:19 2004
> @@ -1,12 +1,12 @@
>  Bug#: 126089
>  Product: conglomerate
>  Version: cvs
>  OS: Linux
>  OS Details: 
> -Status: NEW   
> +Status: NEEDINFO   
>  Resolution: 
>  Severity: normal
>  Priority: Normal
>  Component: Code
>  AssignedTo: [email protected]                     
>       
>  ReportedBy: [email protected]               
> @@ -18,6 +18,11 @@
>  pasting is not possible.  I have a patch which does some of the
> work, and
>  I'm waiting for Anon CVS to catch up before submitting it.
>  
>  However, the conditions for pasting to be possible are not complete,
> and
>  should be recalculated when clipboard contents change (this one
> requires a
>  new signal somewhere)
> +
> +------- Additional Comments From [email protected] 
> 2004-01-05 21:16 -------
> +Do you still have that patch?  I suspect that it might no longer be
> +directly applicable as I did a big rewrite of the clipboard handling
> +for 0.7.9  But it'd be worth seeing in any case.
> 
> _______________________________________________
> Conglomerate-auto mailing list
> [email protected]
> http://lists.copyleft.no/mailman/listinfo/conglomerate-auto 

=====
-----------------------------------------------------
Paul Smith
Postgraduate Student
Department of Mathematics
School of Engineering, Computer Science,
                            and Mathematics
University of Exeter

________________________________________________________________________
Yahoo! Messenger - Communicate instantly..."Ping" 
your friends today! Download Messenger Now 
http://uk.messenger.yahoo.com/download/index.html