jmuehlner commented on a change in pull request #373:
URL: https://github.com/apache/guacamole-server/pull/373#discussion_r816289994
##########
File path: src/terminal/terminal/terminal.h
##########
@@ -915,6 +492,82 @@ void guac_terminal_scroll_handler(guac_terminal_scrollbar*
scrollbar, int value)
void guac_terminal_dup(guac_terminal* term, guac_user* user,
guac_socket* socket);
+/**
+ * Returns the number of rows within the buffer of the given terminal which are
+ * not currently displayed on screen. Adjustments to the desired scrollback
+ * size are taken into account, and rows which are within the buffer but
+ * unavailable due to being outside the desired scrollback range are ignored.
+ *
+ * @param term
+ * The terminal whose off-screen row count should be determined.
+ *
+ * @return
+ * The number of rows within the buffer which are not currently displayed
+ * on screen.
+ */
+int guac_terminal_get_available_scroll(guac_terminal* term);
+
+/**
+ * Returns the height of the given terminal, in characters.
+ *
+ * @param term
+ * The terminal whose height should be determined.
+ *
+ * @return
+ * The height of the terminal, in characters.
+ */
+int guac_terminal_get_rows(guac_terminal* term);
+
+/**
+ * Returns the width of the given terminal, in characters.
+ *
+ * @param term
+ * The terminal whose width should be determined.
+ *
+ * @return
+ * The width of the terminal, in characters.
+ */
+int guac_terminal_get_columns(guac_terminal* term);
+
+/**
+ * Clears the clipboard contents for a given terminal, and assigns a new
+ * mimetype for future data.
+ *
+ * @param terminal
+ * The terminal whose clipboard is being reset.
+ * @param mimetype
+ * The mimetype of future data.
+ */
+void guac_terminal_clipboard_reset(guac_terminal* terminal,
+ const char* mimetype);
+
+/**
+ * Appends the given data to the contents of the clipboard for the given
+ * terminal. The data must match the mimetype chosen for the clipboard data by
+ * guac_terminal_clipboard_reset().
+ *
+ * @param terminal
+ * The terminal whose clipboard is being appended to.
+ * @param data
+ * The data to append.
+ * @param length
+ * The number of bytes to append from the data given.
+ */
+void guac_terminal_clipboard_append(guac_terminal* terminal,
+ const char* data, int length);
+
+/**
+ * Removes the given user from any user-specific resources internal to the
+ * given terminal. This function must be called whenever a user leaves a
+ * terminal connection.
+ *
+ * @param terminal
+ * The terminal that the given user is leaving.
+ * @param user
+ * The user who is disconnecting.
+ */
+void guac_terminal_remove_user(guac_terminal* terminal, guac_user* user);
+
/* INTERNAL FUNCTIONS */
Review comment:
Ok, more stuff that should be non-public moved out of `terminal.h`. I
think this should be everything!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]