Beispiel #1
0
void loadEveBrowser()
{
    int argc = 0;
    printf("%s:%d\n", __func__, __LINE__);
    gtk_init_check(&argc, NULL);
    if (!g_thread_supported ())
        g_thread_init (NULL);
    
    printf("%s:%d\n", __func__, __LINE__);

    GtkWidget* fixed = gtk_fixed_new();
    g_vbox = gtk_vbox_new (FALSE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), create_toolbar (), FALSE, FALSE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), GTK_WIDGET (create_browser ()), TRUE, TRUE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), create_statusbar (), FALSE, FALSE, 0);
    
    g_window = create_window ();
    
    gtk_fixed_put(GTK_FIXED(fixed), g_vbox, 0, 0);
    gtk_widget_set_size_request(g_vbox, g_framebuffer_width, g_framebuffer_height);
    
    GtkWidget* statusLabel = gtk_label_new ("Status");
    gtk_fixed_put(GTK_FIXED(fixed), statusLabel, g_framebuffer_width - 200, 0);
    gtk_widget_set_size_request(statusLabel, 200, 100);
    
    gtk_container_add (GTK_CONTAINER (g_window), fixed);
}
Beispiel #2
0
GList *
get_all_widgets (void)
{
  GList *retval = NULL;

  retval = g_list_append (retval, create_browser ());
  retval = g_list_append (retval, create_button ());
  retval = g_list_append (retval, create_chain_button ());
  retval = g_list_append (retval, create_color_area ());
  retval = g_list_append (retval, create_color_button ());
  retval = g_list_append (retval, create_color_hex_entry ());
  retval = g_list_append (retval, create_color_profile_combo_box ());
  retval = g_list_append (retval, create_color_scale ());
  retval = g_list_append (retval, create_color_selection ());
  retval = g_list_append (retval, create_dialog ());
  retval = g_list_append (retval, create_enum_combo_box ());
  retval = g_list_append (retval, create_enum_label ());
  retval = g_list_append (retval, create_file_entry ());
  retval = g_list_append (retval, create_frame ());
  retval = g_list_append (retval, create_hint_box ());
  retval = g_list_append (retval, create_int_combo_box ());
  retval = g_list_append (retval, create_memsize_entry ());
  retval = g_list_append (retval, create_number_pair_entry ());
  retval = g_list_append (retval, create_offset_area ());
  retval = g_list_append (retval, create_page_selector ());
  retval = g_list_append (retval, create_path_editor ());
  retval = g_list_append (retval, create_pick_button ());
  retval = g_list_append (retval, create_preview_area ());
  retval = g_list_append (retval, create_string_combo_box ());
  retval = g_list_append (retval, create_unit_menu ());

  return retval;
}
/*
* Name:                 run_url_browser
* Input arguments:      'nTabIndex': URL-RENDERING tab index
* Output arguments:     void
* Function:             This function will make a URL-RENDRERING tab Note.
*                       You need to use below functions to handle tab event. 
*                       1. process_all_gtk_events();
*                       2. process_single_gtk_event();
*                       3. render_web_page_in_tab(uri, b_window);
*                       For more details please Appendix B.
*/
int run_url_browser(int nTabIndex)	
{
	browser_window * b_window = NULL;
	int bytesRead = 0;
	char uri [512];
	// Launch a url rendering browser
	create_browser(URL_RENDERING_TAB, nTabIndex, G_CALLBACK(new_tab_created_cb), G_CALLBACK(uri_entered_cb), &b_window, comm[nTabIndex]);
	// Check for instructions sent from the router or gtk events
	child_req_to_parent req;
	while (1) 
	{
		usleep(1000);
		if((bytesRead = read(comm[nTabIndex].parent_to_child_fd[0], &req, sizeof(child_req_to_parent))) == -1){ 
			if(errno == EAGAIN)			// if nothing to be read yet, process browser events and wait for another round
				process_single_gtk_event();
			else
				perror("run_url_browser@134: Url browser reads from pipe");
		}
		else{							// perform instructions
			switch(req.type){	
				case NEW_URI_ENTERED:	// render the given uri
				    strcpy(uri,req.req.uri_req.uri);
					render_web_page_in_tab(uri, b_window);
					break;
				case TAB_KILLED:		// process gtk events and terminate this process with exit success
					process_single_gtk_event();
					exit(EXIT_SUCCESS);
				default: 				// invalid request type
					fprintf(stderr, "run_url_browser@149: Invalid request for url rendering browser\n");
					break;
			}
		}
	}
	return 0;
}
/*
 * Name:                run_control
 * Input arguments:     void
 * Output arguments:    void
 * Function:            This function will make a CONTROLLER window and be blocked until the program terminate.
 */
int run_control(void)
{
	browser_window * b_window = NULL;
	create_browser(CONTROLLER_TAB, 0, G_CALLBACK(new_tab_created_cb), G_CALLBACK(uri_entered_cb), &b_window, comm[0]);
	show_browser();
	return 0;
}
Beispiel #5
0
/*
 * Name:                run_control
 * Input arguments:     'comm_channel': Includes pipes to communctaion with Router process
 * Output arguments:    void
 * Function:            This function will make a CONTROLLER window and be blocked until the program terminate.
 */
int run_control(comm_channel comm)
{
	browser_window * b_window = NULL;

	//Create controler process
	create_browser(CONTROLLER_TAB, 0, G_CALLBACK(new_tab_created_cb), G_CALLBACK(uri_entered_cb), &b_window, comm);

	//go into infinite loop.
	show_browser();
	return 0;
}
Beispiel #6
0
int run_url_browser(int nTabIndex, comm_channel comm)
{
	browser_window * b_window = NULL;
	
	// Create controler window
	create_browser(URL_RENDERING_TAB, nTabIndex, G_CALLBACK(new_tab_created_cb), G_CALLBACK(uri_entered_cb), &b_window, comm);

	child_req_to_parent request;
	char uri_req[512];	
	int r;

	while (1) // Need to communicate with Router process here. Will receieve requests for processing.
	{
		process_single_gtk_event();
		usleep(1000);
		
		// Insert code here!!
		
		// 1. process_all_gtk_events();
		// 2. process_single_gtk_event();
        	// 3. render_web_page_in_tab(uri, b_window);

		// Read the request from the comm_channel

		r = read(comm.parent_to_child_fd[0], &request, sizeof(child_req_to_parent));
		
	    /*
	     * Handle each type of message (few mentioned below)
	     */
		
		if(r == -1)
		{
			//do nothing
		}
		else
		{
			if(request.type == NEW_URI_ENTERED) //  NEW_URI_ENTERED: render_web_page_in_tab(uri, b_window);
			{
				strcpy(uri_req, request.req.uri_req.uri);
				render_web_page_in_tab(uri_req, b_window);
			}
			//  TAB_KILLED: process all gtk events();
			if(request.type == TAB_KILLED)
			{
				process_all_gtk_events();
				break;
			}
		}
	}

	return 0;
}
Beispiel #7
0
void *GtkMain(void * argument)
{
    printf("%s:%d\n", __func__, __LINE__);

    int argc = 0;
    char**argv = NULL;

    unsigned char haveUrl = 0;
    int argCount = 0;

    gtk_init (&argc, &argv);
    if (!g_thread_supported ())
        g_thread_init (NULL);

    GtkWidget* fixed = gtk_fixed_new();
    //screen_changed(fixed, NULL, NULL);
    g_vbox = gtk_vbox_new (FALSE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), create_toolbar (), FALSE, FALSE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), GTK_WIDGET (create_browser ()), TRUE, TRUE, 0);
    gtk_box_pack_start (GTK_BOX (g_vbox), create_statusbar (), FALSE, FALSE, 0);

    g_window = create_window ();

    gtk_fixed_put(GTK_FIXED(fixed), g_vbox, 0, 0);
    gtk_widget_set_size_request(g_vbox, g_framebuffer_width, g_framebuffer_height);

    GtkWidget* statusLabel = gtk_label_new ("Status");
    gtk_fixed_put(GTK_FIXED(fixed), statusLabel, g_framebuffer_width - 200, 0);
    gtk_widget_set_size_request(statusLabel, 200, 100);

    gtk_container_add (GTK_CONTAINER (g_window), fixed);

    webkit_web_view_load_uri (g_web_view, g_url);

    gtk_widget_grab_focus (GTK_WIDGET (g_web_view));
    gtk_widget_show_all (g_window);

    toogleMode();

    g_default_scale = g_framebuffer_width / 1280.0f;
    handleZoomLock(0);

    g_Callback(1);

    gtk_main ();
    return NULL;
}
dlder::dlder()
{
	dlder_manganame       = "";
	dlder_mg_location     = "";
	dlder_external_dl_mgr = "";
	dlder_start           = "";
	dlder_end             = "";
	dlder_referer         = "";
	dlder_img             = "000";
	dlder_nb_of_chapter   = 0;
	dlder_current_chapter = 1;
	dlder_nb_of_pages     = 0;
	dlder_current_page    = 1;
	dlder_paused_flag     = false;
	dlder_stop_flag       = false;
	create_browser();
}
Beispiel #9
0
int main(int argc, char* argv[]) {
    printf("START PROCESS");
    gtk_init(&argc, &argv);

    GtkWidget* box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
    gtk_box_pack_start(GTK_BOX(box), create_browser(), TRUE, TRUE, 0);

    GtkWidget* _main_window;
    _main_window = create_window();
    gtk_container_add(GTK_CONTAINER(_main_window),box);

    webkit_web_view_load_uri(web_view, "http://www.google.com/");

    gtk_widget_grab_focus(GTK_WIDGET(web_view));
    gtk_widget_show_all(_main_window);
    gtk_main();

    return 0;
}
///=================================================================================///
dlder::dlder(
		std::string manganame, std::string mg_location,
		std::string external_dl_mgr,std::string start, std::string end)
{
	dlder_manganame       = manganame;
	dlder_mg_location     = mg_location;
	dlder_external_dl_mgr = external_dl_mgr;
	dlder_start           = start;
	dlder_end             = end;
	dlder_img             = "000";
	dlder_referer         = "";
	dlder_nb_of_chapter   = 0;
	dlder_current_chapter = atoi(start.c_str());
	dlder_nb_of_pages     = 0;
	dlder_current_page    = 1;
	dlder_paused_flag     = false;
	dlder_stop_flag       = false;
	create_browser();
}
int main (int argc, char* argv[])
{
 gtk_init (&argc, &argv);

 GtkWidget* vbox = gtk_vbox_new (FALSE, 0);
 gtk_box_pack_start(GTK_BOX (vbox), create_toolbar (), FALSE, FALSE, 0);
 gtk_box_pack_start(GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0);
 gtk_box_pack_start(GTK_BOX (vbox), create_statusbar (), FALSE, FALSE, 0);

 main_window = create_window();
 gtk_container_add(GTK_CONTAINER (main_window), vbox);

 gchar* uri = (gchar*) (argc > 1 ? argv[1] : "https://github.com/CoolerVoid/");
 webkit_web_view_open(web_view, uri);

 gtk_widget_grab_focus(GTK_WIDGET(web_view));
 gtk_widget_show_all(main_window);
 gtk_main();

 return 0;
}
Beispiel #12
0
/**
 *
 * init_web_browser
 *
 * Initialise the webkit browser
 *
 * @parent: Widget to house the browser
 */
WebBrowser *init_web_browser(GtkWidget *parent) {
    browser = g_new0(WebBrowser, 1);

    create_menubar();
    create_toolbar();
    create_browser();
    create_statusbar();

    GtkWidget* vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
    gtk_box_pack_start(GTK_BOX (vbox), browser->menubar, FALSE, FALSE, 0);
    gtk_box_pack_start(GTK_BOX (vbox), browser->toolbar, FALSE, FALSE, 0);
    gtk_box_pack_start(GTK_BOX (vbox), browser->browser_window, TRUE, TRUE, 0);
    gtk_box_pack_start(GTK_BOX (vbox), GTK_WIDGET(browser->statusbar), FALSE, FALSE, 0);

    if (GTK_IS_SCROLLED_WINDOW(parent))
        gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(parent), vbox);
    else
        gtk_container_add(GTK_CONTAINER (parent), vbox);

    return browser;
}
Beispiel #13
0
int
main (int argc, char* argv[])
{
    gtk_init (&argc, &argv);
    if (!g_thread_supported ())
        g_thread_init (NULL);

    GtkWidget* vbox = gtk_vbox_new (FALSE, 0);
    gtk_box_pack_start (GTK_BOX (vbox), create_toolbar (), FALSE, FALSE, 0);
    gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0);
    gtk_box_pack_start (GTK_BOX (vbox), create_statusbar (), FALSE, FALSE, 0);

    main_window = create_window ();
    gtk_container_add (GTK_CONTAINER (main_window), vbox);

    gchar* uri = (gchar*) (argc > 1 ? argv[1] : "http://www.google.com/");
    webkit_web_view_load_uri (web_view, uri);

    gtk_widget_grab_focus (GTK_WIDGET (web_view));
    gtk_widget_show_all (main_window);
    gtk_main ();

    return 0;
}
Beispiel #14
0
int
main (int argc, char* argv[]) {
    gtk_init (&argc, &argv);
    if (!g_thread_supported ())
        g_thread_init (NULL);

    printf("Uzbl start location: %s\n", argv[0]);
    strcpy(executable_path,argv[0]);

    strcat ((char *) XDG_CONFIG_HOME_default, getenv ("HOME"));
    strcat ((char *) XDG_CONFIG_HOME_default, "/.config");

    GError *error = NULL;
    GOptionContext* context = g_option_context_new ("- some stuff here maybe someday");
    g_option_context_add_main_entries (context, entries, NULL);
    g_option_context_add_group (context, gtk_get_option_group (TRUE));
    g_option_context_parse (context, &argc, &argv, &error);
    /* initialize hash table */
    bindings = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, free_action);
	
	soup_session = webkit_get_default_session();
    keycmd = g_string_new("");

    settings_init ();
    commands_hash ();

    if (always_insert_mode)
        insert_mode = TRUE;

    GtkWidget* vbox = gtk_vbox_new (FALSE, 0);
    if (status_top)
        gtk_box_pack_start (GTK_BOX (vbox), create_mainbar (), FALSE, TRUE, 0);
    gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0);
    if (!status_top)
        gtk_box_pack_start (GTK_BOX (vbox), create_mainbar (), FALSE, TRUE, 0);

    main_window = create_window ();
    gtk_container_add (GTK_CONTAINER (main_window), vbox);

    load_uri (web_view, uri);

    gtk_widget_grab_focus (GTK_WIDGET (web_view));
    gtk_widget_show_all (main_window);
    xwin = GDK_WINDOW_XID (GTK_WIDGET (main_window)->window);
    printf("window_id %i\n",(int) xwin);
    printf("pid %i\n", getpid ());
    printf("name: %s\n", instance_name);

    scbar_v = (GtkScrollbar*) gtk_vscrollbar_new (NULL);
    bar_v = gtk_range_get_adjustment((GtkRange*) scbar_v);
    scbar_h = (GtkScrollbar*) gtk_hscrollbar_new (NULL);
    bar_h = gtk_range_get_adjustment((GtkRange*) scbar_h);
    gtk_widget_set_scroll_adjustments ((GtkWidget*) web_view, bar_h, bar_v);

    if (!show_status)
        gtk_widget_hide(mainbar);

    if (fifo_dir)
        create_fifo ();
    if (socket_dir)
        create_socket();

    gtk_main ();

    g_string_free(keycmd, TRUE);

    if (fifo_dir)
        unlink (fifo_path);
    if (socket_dir)
        unlink (socket_path);

    g_hash_table_destroy(bindings);
    g_hash_table_destroy(commands);
    return 0;
}