386
408
sendCommand(this, "quit\n");
387
pthread_mutex_lock(&read_mutex);
410
pthread_mutex_lock(&read_mutex);
389
pthread_mutex_unlock(&read_mutex);
414
pthread_mutex_unlock(&read_mutex);
390
416
pthread_mutex_unlock(&control_mutex);
391
417
pthread_cancel(player_thread);
392
418
pthread_join(player_thread, NULL);
393
419
js_state = JS_STATE_UNDEFINED;
398
423
#ifdef GTK_ENABLED
399
424
while (g_idle_remove_by_data(this)) {
889
914
"button_press_event",
890
915
G_CALLBACK(popup_handler),
891
916
GTK_OBJECT(popup_menu));
917
gtk_widget_set_size_request(GTK_WIDGET(fixed_container),
918
window_width, window_height);
919
gtk_widget_set_size_request(GTK_WIDGET(fixed_event_box),
920
window_width, window_height);
893
923
#ifdef GTK1_ENABLED
894
924
gtk_signal_connect_object(GTK_OBJECT(fixed_event_box),
895
925
"button_press_event",
896
926
GTK_SIGNAL_FUNC(popup_handler),
897
927
GTK_OBJECT(popup_menu));
928
gtk_widget_set_usize(GTK_WIDGET(fixed_container), window_width,
930
gtk_widget_set_usize(GTK_WIDGET(fixed_event_box), window_width,
899
934
gtk_container_add(GTK_CONTAINER(fixed_event_box), fixed_container);
974
1009
gtk_misc_set_alignment(GTK_MISC(status), 0, 0);
975
1010
gtk_label_set_line_wrap(status, TRUE);
1011
drawing_area = gtk_socket_new();
1012
gtk_widget_set_events(drawing_area, GDK_BUTTON_PRESS_MASK);
1013
if (mode == NP_EMBED) {
1014
gtk_fixed_put(GTK_FIXED(fixed_container), drawing_area, 0, 0);
1016
gtk_fixed_put(GTK_FIXED(fixed_container),
1017
drawing_area, 10, 100);
1019
gtk_widget_show(drawing_area);
976
1022
gtk_container_add(GTK_CONTAINER(gtkwidget), fixed_event_box);
977
1023
if (!hidestatus)
978
1024
gtk_widget_show(GTK_WIDGET(status));
1014
1059
GDK_WINDOW_XWINDOW(gtkwidget->window), window,
1016
1061
gtk_widget_map(gtkwidget);
1063
gtk_widget_show(button_window);
1064
XReparentWindow(GDK_WINDOW_XDISPLAY(button_window->window),
1065
GDK_WINDOW_XWINDOW(button_window->window),
1067
gtk_widget_map(button_window);
1020
1070
if (panel_drawn == 0 && autostart == 0 && nomediacache == 1) {
1021
1071
if (showcontrols) {
1022
1072
panel_height = window_height;
1117
1163
#ifdef GTK2_ENABLED
1118
1164
gtk_widget_set_size_request(GTK_WIDGET(status),
1119
1165
window_width - 20, window_height - 25);
1166
gtk_widget_set_size_request(GTK_WIDGET(gtkwidget),
1167
window_width, window_height);
1121
1170
#ifdef GTK1_ENABLED
1122
1171
gtk_widget_set_usize(GTK_WIDGET(status),
1123
1172
window_width - 20, window_height - 25);
1173
gtk_widget_set_usize(GTK_WIDGET(gtkwidget),
1174
window_width, window_height);
1176
if (panel_drawn == 1) {
1182
if (mmsstream == 0) {
1183
gtk_fixed_move(GTK_FIXED(fixed_container),
1184
GTK_WIDGET(rew_event_box),
1185
width * multiplier++,
1186
window_height - height);
1188
gtk_fixed_move(GTK_FIXED(fixed_container),
1189
GTK_WIDGET(play_event_box),
1190
width * multiplier++, window_height - height);
1191
gtk_fixed_move(GTK_FIXED(fixed_container),
1192
GTK_WIDGET(pause_event_box),
1193
width * multiplier++, window_height - height);
1194
gtk_fixed_move(GTK_FIXED(fixed_container),
1195
GTK_WIDGET(stop_event_box),
1196
width * multiplier++, window_height - height);
1197
if (mmsstream == 0) {
1198
gtk_fixed_move(GTK_FIXED(fixed_container),
1199
GTK_WIDGET(ff_event_box),
1200
width * multiplier++,
1201
window_height - height);
1203
if (GTK_IS_WIDGET(mediaprogress_bar)) {
1204
gtk_fixed_move(GTK_FIXED(fixed_container),
1205
GTK_WIDGET(mediaprogress_bar),
1206
(width * multiplier + 10),
1207
window_height - height + 2);
1209
gtk_widget_set_usize(GTK_WIDGET(mediaprogress_bar),
1211
(width * (multiplier + 1) + 20),
1214
gtk_fixed_move(GTK_FIXED(fixed_container),
1215
GTK_WIDGET(fs_event_box),
1216
(window_width - width), window_height - height);
1219
if (progress_bar != NULL) {
1220
gtk_fixed_move(GTK_FIXED(fixed_container),
1221
GTK_WIDGET(progress_bar),
1222
10, window_height - 50);
1224
gtk_widget_set_usize(GTK_WIDGET(progress_bar),
1225
window_width - 20, 15);
1126
1229
if (gtkwidget == NULL)
1127
1230
return NPERR_NO_ERROR;
1129
1232
if (targetplayer == 0)
1130
1233
gtk_widget_show(gtkwidget);
1132
XResizeWindow(GDK_WINDOW_XDISPLAY(gtkwidget->window),
1133
GDK_WINDOW_XWINDOW(gtkwidget->window),
1134
aWindow->width, aWindow->height);
1135
XResizeWindow(display, window, aWindow->width, aWindow->height);
1138
1236
printf("resize is complete\n");
1149
if (panel_drawn == 1 && mode == NP_FULL) {
1150
if (panel_height >= 32) {
1160
if (mmsstream == 0) {
1161
gtk_fixed_move(GTK_FIXED(fixed_container),
1162
GTK_WIDGET(rew_event_box), width * multiplier++,
1163
aWindow->height - height);
1165
gtk_fixed_move(GTK_FIXED(fixed_container),
1166
GTK_WIDGET(play_event_box), width * multiplier++,
1167
aWindow->height - height);
1168
gtk_fixed_move(GTK_FIXED(fixed_container),
1169
GTK_WIDGET(pause_event_box), width * multiplier++,
1170
aWindow->height - height);
1171
gtk_fixed_move(GTK_FIXED(fixed_container),
1172
GTK_WIDGET(stop_event_box), width * multiplier++,
1173
aWindow->height - height);
1174
if (mmsstream == 0) {
1175
gtk_fixed_move(GTK_FIXED(fixed_container),
1176
GTK_WIDGET(ff_event_box), width * multiplier++,
1177
aWindow->height - height);
1179
if (mediaprogress_bar != NULL) {
1180
gtk_fixed_move(GTK_FIXED(fixed_container),
1181
GTK_WIDGET(mediaprogress_bar),
1182
(width * multiplier + 10),
1183
aWindow->height - height + 2);
1184
gtk_widget_set_usize(GTK_WIDGET(mediaprogress_bar),
1186
(width * (multiplier + 1) + 20),
1189
gtk_fixed_move(GTK_FIXED(fixed_container),
1190
GTK_WIDGET(fs_event_box),
1191
(aWindow->width - width), aWindow->height - height);
1196
1248
if (DEBUG >= 2) {
1279
1331
if (n->fname != NULL)
1280
1332
remove(n->fname);
1283
("checking to see if we need to make a button\nn->url=%s\nurl=%s\nhref=%s\n",
1337
("checking to see if we need to make a button\nn->url=%s\nurl=%s\nhref=%s\n",
1338
n->url, url, (href == NULL) ? "(NULL)" : href);
1285
1340
if (n->url != NULL && url != NULL) {
1286
1341
if ((strncmp(n->url, url, 1024) == 0) && href != NULL) {
1287
1342
if (srcToButton(n->fname, this)) {
1296
1351
NPN_GetURL(mInstance, href, NULL);
1297
1352
return NPERR_NO_ERROR;
1354
} else if ( strstr(n->url, url) && href != NULL) {
1355
// we are in this block because the url is a relative url and so
1356
// it is a subset of the fully qualified n->url
1357
if (srcToButton(n->fname, this)) {
1359
pthread_mutex_unlock(&playlist_mutex);
1360
return NPERR_NO_ERROR;
1363
snprintf(n->url, 1024, "%s", href);
1364
addToEnd(td->list, n);
1365
pthread_mutex_unlock(&playlist_mutex);
1366
NPN_GetURL(mInstance, href, NULL);
1367
return NPERR_NO_ERROR;
1306
1376
buildPlaylist(this, n->fname, n);
1307
1377
if (mode == NP_FULL || noembed == 1) {
1308
1378
#ifdef X_ENABLED
1309
DrawUI(widget, this, "Download Complete", 0, 99);
1379
DrawUI(widget, this, _("Download Complete"), 0, 99);
1311
1381
#ifdef GTK_ENABLED
1312
1382
if (status != NULL) {
1313
gtk_label_set_text(status, "Download Complete");
1383
gtk_label_set_text(status, _("Download Complete"));
1385
g_idle_add(gtkgui_save_enable, this);
1315
1386
if (progress_bar != NULL) {
1316
1387
gtk_progress_bar_update(progress_bar, 1.0);
1317
1388
if (n->next == NULL) {
1616
1687
if (strlen(n->fname) == 0) {
1617
1688
snprintf(n->fname, 1024, "%s",
1618
1689
tempnam("/tmp", "mplayerplug-inXXXXXX"));
1690
if (strstr(mimetype, "midi") != NULL) {
1691
strlcat(n->fname, ".mid", 1024);
1693
if (strstr(mimetype, "mp3") != NULL) {
1694
strlcat(n->fname, ".mp3", 1024);
1696
if (strstr(mimetype, "audio/mpeg") != NULL) {
1697
strlcat(n->fname, ".mp3", 1024);
1620
1700
printf("WR tempname: %s\n", n->fname);
2363
2446
#ifdef GTK_ENABLED
2364
2447
int multiplier, height = 0, width;
2365
int x, y, disp_x, pos_x, disp_y, pos_y;
2448
int x, y, disp_x, pos_x, disp_y, pos_y, button_top;
2366
2449
GdkColormap *colormap;
2367
2450
GdkColor black;
2596
if (targetplayer == 0) {
2597
button_top = win_height - height;
2599
button_top = win_height;
2513
2602
multiplier = 0;
2515
2604
if (mmsstream == 0 && win_width > 126) {
2516
2605
gtk_fixed_move(GTK_FIXED(fixed_container),
2517
2606
GTK_WIDGET(rew_event_box),
2518
width * multiplier++,
2519
win_height - height);
2607
width * multiplier++, button_top);
2521
2609
gtk_fixed_move(GTK_FIXED(fixed_container),
2522
2610
GTK_WIDGET(play_event_box),
2523
width * multiplier++, win_height - height);
2611
width * multiplier++, button_top);
2524
2612
if (win_width > 126)
2525
2613
gtk_fixed_move(GTK_FIXED(fixed_container),
2526
2614
GTK_WIDGET(pause_event_box),
2527
width * multiplier++,
2528
win_height - height);
2615
width * multiplier++, button_top);
2529
2616
gtk_fixed_move(GTK_FIXED(fixed_container),
2530
2617
GTK_WIDGET(stop_event_box),
2531
width * multiplier++, win_height - height);
2618
width * multiplier++, button_top);
2532
2619
if (mmsstream == 0 && win_width > 126) {
2533
2620
gtk_fixed_move(GTK_FIXED(fixed_container),
2534
2621
GTK_WIDGET(ff_event_box),
2535
width * multiplier++,
2536
win_height - height);
2622
width * multiplier++, button_top);
2539
2625
if (mediaprogress_bar != NULL) {
2540
2626
gtk_fixed_move(GTK_FIXED(fixed_container),
2541
2627
GTK_WIDGET(mediaprogress_bar),
2542
2628
(width * multiplier + 10),
2543
win_height - height + 2);
2544
2630
gtk_widget_set_usize(GTK_WIDGET(mediaprogress_bar),
2546
2632
(width * (multiplier + 1) + 20),