Beispiel #1
0
void Terminal::update_title() {
    find_label.set_label(vte_terminal_get_window_title((VteTerminal *)vte));
    find_window->list_box.invalidate_filter();

    auto title = std::string(vte_terminal_get_window_title((VteTerminal *)vte));
    if (notifications_enabled)
        title.append(" (notif. enabled)");
    label.set_label(title.c_str());

    get_tab_frame(this)->update_title();

    auto window = static_cast<TerminalWindow *>(get_tab_frame(this)->get_parent()->get_parent());
    window->update_title();
}
static const gchar *
gb_terminal_get_title (GbView *view)
{
  const gchar *title;
  GbTerminalView *self = (GbTerminalView *)view;

  g_assert (GB_IS_TERMINAL_VIEW (self));

  if (self->bottom_has_focus)
    title = vte_terminal_get_window_title (self->terminal_bottom);
  else
    title = vte_terminal_get_window_title (self->terminal_top);

  return title;
}
static gchar *
gb_terminal_get_title (IdeLayoutView *view)
{
  const gchar *title = NULL;
  GbTerminalView *self = (GbTerminalView *)view;

  g_assert (GB_IS_TERMINAL_VIEW (self));

  if (self->bottom_has_focus)
    title = vte_terminal_get_window_title (self->terminal_bottom);
  else
    title = vte_terminal_get_window_title (self->terminal_top);

  return g_strdup (title);
}
Beispiel #4
0
void
sig_window_title_changed(VteTerminal *term, gpointer data)
{
    GtkWidget *win = (GtkWidget *)data;

    gtk_window_set_title(GTK_WINDOW(win), vte_terminal_get_window_title(term));
}
Beispiel #5
0
void cterm_ontitlechange(VteTerminal* vte, gpointer data) {
    CTerm* term = (CTerm*) data;
    GtkWidget* child = gtk_widget_get_parent((GtkWidget*)vte);
    GtkWidget* container = gtk_notebook_get_tab_label(term->notebook, child);
    GtkWidget* label = gtk_bin_get_child((GtkBin*)container);

    gtk_label_set_label((GtkLabel*)label, vte_terminal_get_window_title(vte));
}
Beispiel #6
0
  std::string terminal::get_window_title() {
    std::string title;

    if ( m_terminal != NULL )
      title = vte_terminal_get_window_title(m_terminal);

    return(title);
  }
Beispiel #7
0
/* set the window title */
static void set_window_title(term *t){
  const char *title = vte_terminal_get_window_title(VTE_TERMINAL(t->vte));

  if (title == NULL) {
    title = "svte";
  }

  gtk_window_set_title(GTK_WINDOW(t->w->win), title);
}
Beispiel #8
0
/* set a tab title */
static void tab_title(GtkWidget *widget, term *t) {
  gtk_label_set_text(
      GTK_LABEL(t->label),
      vte_terminal_get_window_title(VTE_TERMINAL(t->vte)));

  if(t  == get_current_term(t->w)) {  
    set_window_title(t);
  }
} 
Beispiel #9
0
static void
window_title_changed(GtkWidget *widget, gpointer win)
{
	GtkWindow *window;

	g_assert(VTE_TERMINAL(widget));
	g_assert(GTK_IS_WINDOW(win));
	window = GTK_WINDOW(win);

	gtk_window_set_title(window, vte_terminal_get_window_title(VTE_TERMINAL(widget)));
}
Beispiel #10
0
void termit_on_tab_title_changed(VteTerminal *vte, gpointer user_data)
{
    if (!configs.allow_changing_title)
        return;
    gint page = gtk_notebook_get_current_page(GTK_NOTEBOOK(termit.notebook));
    TERMIT_GET_TAB_BY_INDEX(pTab, page);
    
    if (pTab->custom_tab_name)
        return;
    
    termit_tab_set_title(pTab, vte_terminal_get_window_title(VTE_TERMINAL(pTab->vte)));
}
Beispiel #11
0
void Terminal::vte_beep(VteTerminal *vte, gpointer user_data) {
    Terminal *_this = static_cast<Terminal *>(user_data);
    if (time(NULL) < last_notification_timestamp + 10)
        return;

    last_notification_timestamp = time(NULL);

    if (_this->notifications_enabled) {
        auto notification = notify_notification_new("Terminal Bell", vte_terminal_get_window_title(vte), "dialog-information");
        notify_notification_show(notification, NULL);
        g_object_unref(G_OBJECT(notification));
    }
}
Beispiel #12
0
gchar *get_window_title (GtkWidget *widget)
{
    DEBUG_FUNCTION ("get_window_title");
    DEBUG_ASSERT (widget != NULL);

    const gchar *vte_title;
    gchar *window_title;
    gchar *initial;
    gchar *title;

    vte_title = vte_terminal_get_window_title (VTE_TERMINAL (widget));
    window_title = g_strdup (vte_title);
    initial = g_strdup (config_getstr ("title"));

    /* These are not needed anywhere else. If they ever are, move them to a header file */
    enum d_set_title { NOT_DISPLAYED, AFTER_INITIAL, BEFORE_INITIAL, REPLACE_INITIAL };

    switch (config_getint ("d_set_title"))
    {
    case REPLACE_INITIAL:
        title = (window_title != NULL) ? g_strdup (window_title)
                : g_strdup (_("Untitled"));
        break;

    case BEFORE_INITIAL:
        title = (window_title != NULL) ? g_strdup_printf ("%s - %s", window_title, initial)
                : g_strdup (initial);
        break;

    case AFTER_INITIAL:
        title = (window_title != NULL) ? g_strdup_printf ("%s - %s", initial, window_title)
                : g_strdup (initial);
        break;

    case NOT_DISPLAYED:
        title = g_strdup (initial);
        break;

    default:
        g_printerr (_("Bad value for \"d_set_title\" in config file\n"));
        title = g_strdup ("");
        break;
    }

    g_free (window_title);
    g_free (initial);

    return title;
}
Beispiel #13
0
static void
window_title_changed_cb (VteTerminal     *terminal,
                         IdeTerminalPage *self)
{
  const gchar *title;

  g_assert (VTE_IS_TERMINAL (terminal));
  g_assert (IDE_IS_TERMINAL_PAGE (self));

  title = vte_terminal_get_window_title (VTE_TERMINAL (self->terminal_top));

  if (title == NULL || title[0] == '\0')
    title = _("Untitled terminal");

  ide_page_set_title (IDE_PAGE (self), title);
}
Beispiel #14
0
static void tilda_terminal_switch_page_cb (GtkNotebook *notebook,
                                           GtkWidget   *page,
                                           guint        page_num,
                                           tilda_window *tw)
{
    g_return_if_fail (page_num >= 0);
    guint counter = 0;
    tilda_term *term = NULL;
    for(GList *item=tw->terms; item != NULL; item=item->next) {
        if(counter == page_num) {
            term = (tilda_term*) item->data;
        }
        counter++;
    }
    const char* current_title = vte_terminal_get_window_title (VTE_TERMINAL (term->vte_term));
    gtk_window_set_title (GTK_WINDOW (tw->window), current_title);
}
Beispiel #15
0
/* set the window title */
static void set_window_title(term *t){
  gint number_of_pages = 0;
  const char *term_title = vte_terminal_get_window_title(VTE_TERMINAL(t->vte));

  if (term_title == NULL) {
    term_title = "svte";
  }

  number_of_pages = gtk_notebook_get_n_pages(GTK_NOTEBOOK(t->w->notebook));

  if ( number_of_pages > 1) {
    char *title = g_strdup_printf("%s (%d/%d)", term_title,
                              gtk_notebook_page_num(GTK_NOTEBOOK(t->w->notebook), t->vte) + 1,
                              number_of_pages);
    gtk_window_set_title(GTK_WINDOW(t->w->win), title);
    g_free(title);
  } else {
    gtk_window_set_title(GTK_WINDOW(t->w->win), term_title);
  }
}
Beispiel #16
0
void update_page_name_wintitle(StrAddr **page_name,
			       StrAddr **page_color,
			       struct Window *win_data,
			       struct Page *page_data)
{
#ifdef DETAIL
	g_debug("! Launch update_page_name_wintitle() with page_name = %s, page_color = %s, win_data = %p, page_data = %p",
		*page_name, *page_color, win_data, page_data);
#endif
#ifdef DEFENSIVE
	if ((page_name==NULL) || (page_color==NULL) || (win_data==NULL) || (page_data==NULL)) return;
#endif
	// g_debug("Trying to update Window Title!");
	if (win_data->page_shows_window_title && (*page_name==NULL) && (page_data->window_title_updated == 1))
	{
		*page_name = g_strdup(vte_terminal_get_window_title(VTE_TERMINAL(page_data->vte)));
		*page_color = win_data->user_page_color[0];
		page_data->window_title_updated = 0;
		// g_debug("Window title updated: *page_name = %s, color = %s", *page_name, *page_color);
		page_data->page_update_method = PAGE_METHOD_WINDOW_TITLE;
	}
}
Beispiel #17
0
void update_page_name_cmdline(StrAddr **page_name,
			      StrAddr **page_color,
			      struct Window *win_data,
			      struct Page *page_data)
{
#ifdef DETAIL
	g_debug("! Launch update_page_name_cmdline() with page_name = %s, page_color = %s, win_data = %p, page_data = %p",
		*page_name, *page_color, win_data, page_data);
#endif
#ifdef DEFENSIVE
	if ((page_name==NULL) || (page_color==NULL) || (win_data==NULL) || (page_data==NULL)) return;
#endif
	// g_debug("Trying to update Cmdline!");
	// if win_data->page_shows_current_dir = 0 && win_data->page_shows_window_title = 0
	// We need to show /bin/bash on the tab name.
	// g_debug("page_name = %p (%s)", *page_name, *page_name);
	// g_debug("win_data->page_shows_current_cmdline = %d", win_data->page_shows_current_cmdline);
	// g_debug("page_data->pid = %d, page_data->current_tpgid = %d", page_data->pid, page_data->current_tpgid);
	if ( (*page_name==NULL) && win_data->page_shows_current_cmdline &&
	    ((! (win_data->page_shows_current_dir ||
		 ( win_data->page_shows_window_title &&
		   (vte_terminal_get_window_title(VTE_TERMINAL(page_data->vte))!=NULL) &&
		   (page_data->window_title_updated != -1)))) ||
	     (page_data->pid!=page_data->current_tpgid)))
	{
		*page_name = get_tab_name_with_cmdline(page_data);
#ifdef DEFENSIVE
		if (page_name)
		{
#endif
			*page_color = win_data->user_page_color[1];
			// g_debug("Cmdline updated: *page_name = %s, color = %s", *page_name, *page_color);
			page_data->page_update_method = PAGE_METHOD_CMDLINE;
#ifdef DEFENSIVE
		}
#endif
	}
}
Beispiel #18
0
static void mainwindow_window_title_changed(VteTerminal *vteterminal,
        gpointer user_data) {
    if (vteterminal != NULL && user_data != NULL)
        gtk_label_set_label(GTK_LABEL(user_data),
                vte_terminal_get_window_title(vteterminal));
}
Beispiel #19
0
/* callback to dynamically change window title */
static void
window_title_cb(VteTerminal* vte)
{
    gtk_window_set_title(GTK_WINDOW (gtk_widget_get_toplevel(GTK_WIDGET (vte))), vte_terminal_get_window_title(vte));
}
Beispiel #20
0
static VALUE
term_get_window_title(VALUE self)
{
    return CSTR2RVAL(vte_terminal_get_window_title(RVAL2TERM(self)));
}
Beispiel #21
0
static VALUE
rg_window_title(VALUE self)
{
    return CSTR2RVAL(vte_terminal_get_window_title(_SELF(self)));
}