comparison src/browser.c @ 2827:51999a36c0b1

[gaim-migrate @ 2840] heh. committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Sun, 02 Dec 2001 00:35:34 +0000
parents c172128500ec
children 06539a384d6b
comparison
equal deleted inserted replaced
2826:d00066b2f71a 2827:51999a36c0b1
565 { 565 {
566 566
567 if (web_browser == BROWSER_NETSCAPE) { 567 if (web_browser == BROWSER_NETSCAPE) {
568 char *command = g_malloc(1024); 568 char *command = g_malloc(1024);
569 569
570 g_snprintf(command, 1024, "OpenURL(%s)", url); 570 if (misc_options & OPT_MISC_BROWSER_POPUP)
571 g_snprintf(command, 1024, "OpenURL(%s, new-window)", url);
572 else
573 g_snprintf(command, 1024, "OpenURL(%s)", url);
571 574
572 netscape_command(command); 575 netscape_command(command);
573 g_free(command); 576 g_free(command);
574 } else if (web_browser == BROWSER_KFM) { 577 #ifdef USE_GNOME
578 } else if (web_browser == BROWSER_GNOME) {
579 gnome_url_show(url);
580 #endif /* USE_GNOME */
581 } else {
575 pid_t pid; 582 pid_t pid;
576 583
577 pid = fork(); 584 pid = fork();
578 585
579 if (pid == 0) { 586 if (pid == 0) {
580 char *args[4]; 587 char *args[4];
581 588 char command[1024];
582 args[0] = g_strdup("kfmclient"); 589
583 args[1] = g_strdup("openURL"); 590 if (web_browser == BROWSER_OPERA) {
584 args[2] = url; 591 args[0] = g_strdup("opera");
585 args[3] = NULL; 592 args[1] = g_strdup("-newwindow");
593 args[2] = url;
594 args[3] = NULL;
595 } else if (web_browser == BROWSER_KFM) {
596 args[0] = g_strdup("kfmclient");
597 args[1] = g_strdup("openURL");
598 args[2] = url;
599 args[3] = NULL;
600 } else if (web_browser == BROWSER_GALEON) {
601 args[0] = g_strdup("galeon");
602 args[1] = url;
603 args[2] = NULL;
604 } else if (web_browser == BROWSER_MANUAL) {
605 g_snprintf(command, sizeof(command), web_command, url);
606
607 args[0] = "sh";
608 args[1] = "-c";
609 args[2] = command;
610 args[3] = NULL;
611 }
586 612
587 execvp(args[0], args); 613 execvp(args[0], args);
588 _exit(0); 614 _exit(0);
589 } else { 615 } else {
590 gtk_timeout_add(1000, (GtkFunction)clean_pid, NULL); 616 gtk_timeout_add(1000, (GtkFunction)clean_pid, NULL);
591 } 617 }
592 } else if (web_browser == BROWSER_OPERA) {
593 pid_t pid;
594
595 pid = fork();
596
597 if (pid == 0) {
598 char *args[4];
599 args[0] = g_strdup("opera");
600 args[1] = g_strdup("-newwindow");
601 args[2] = url;
602 args[3] = NULL;
603
604 execvp(args[0], args);
605 _exit(0);
606 } else {
607 gtk_timeout_add(1000, (GtkFunction)clean_pid, NULL);
608 }
609 #ifdef USE_GNOME
610 } else if (web_browser == BROWSER_GNOME) {
611 gnome_url_show(url);
612 #endif /* USE_GNOME */
613 } else if (web_browser == BROWSER_MANUAL) {
614 pid_t pid;
615
616 pid = fork();
617
618 if (pid == 0) {
619 char *args[4];
620
621 char command[1024];
622
623 g_snprintf(command, sizeof(command), web_command, url);
624
625 args[0] = "sh";
626 args[1] = "-c";
627 args[2] = command;
628 args[3] = NULL;
629
630 execvp(args[0], args);
631
632 _exit(0);
633 } else {
634 gtk_timeout_add(1000, (GtkFunction)clean_pid, NULL);
635 }
636 } 618 }
637 } 619 }
638 620
639 void add_bookmark(GtkWidget *w, char *url) 621 void add_bookmark(GtkWidget *w, char *url)
640 { 622 {
646 netscape_command(command); 628 netscape_command(command);
647 g_free(command); 629 g_free(command);
648 } 630 }
649 } 631 }
650 632
633 #else
634
635 /* Sooner or later, I shall support Windows clicking! */
636
637 void add_bookmark(GtkWidget *w, char *url)
638 {
639 }
651 void open_url_nw(GtkWidget *w, char *url) 640 void open_url_nw(GtkWidget *w, char *url)
652 { 641 {
653 if (web_browser == BROWSER_NETSCAPE) {
654 char *command = g_malloc(1024);
655
656 g_snprintf(command, 1024, "OpenURL(%s, new-window)", url);
657
658 netscape_command(command);
659 g_free(command);
660 } else {
661 open_url(w, url);
662 }
663 }
664
665 #else
666
667 /* Sooner or later, I shall support Windows clicking! */
668
669 void add_bookmark(GtkWidget *w, char *url)
670 {
671 }
672 void open_url_nw(GtkWidget *w, char *url)
673 {
674 }
675 void open_url(GtkWidget *w, char *url)
676 {
677 } 642 }
678 643
679 644
680 #endif /* _WIN32 */ 645 #endif /* _WIN32 */